linux-serial-modbus-master.py
Configures a Linux serial port for Modbus RTU communication on the integrated COM ports.
Uses 'pyserial' and 'minimalmodbus' libraries. The physical RS232/422/485 ports are exposed in Linux as /dev/ttyS0 to /dev/ttyS3. Check port access permissions (/dev/ttyS1). This script assumes None parity, 8 data bits, 1 stop bit.
linux-serial-modbus-master.py
import serial
import minimalmodbus
# Configuration du port série pour le port COM2 (RS485)
# Baudrate 9600, Parité 'N', Bits de données 8, Bits d'arrêt 1
instrument = minimalmodbus.Instrument('/dev/ttyS1', 1) # 1 est l'adresse slave
instrument.serial.port = '/dev/ttyS1'
instrument.serial.baudrate = 9600
instrument.serial.bytesize = 8
instrument.serial.parity = serial.PARITY_NONE
instrument.serial.stopbits = 1
instrument.serial.timeout = 1
try:
# Lire une valeur de registre (ex: température)
temperature = instrument.read_register(0, 1) # Adresse 0, décimales 1
print(f"Température lue : {temperature} °C")
except minimalmodbus.ModbusException as e:
print(f"Erreur Modbus : {e}")