Hier möchte ich kurz beschreiben, wie man das Labornetzteil HM305P mit Python fernbedienen kann.
Das Labornetzteil verfügt über eine USB Schnittstelle und ein Modbus RTU Protokoll. Zuerst müsst ihr über pip die Lib minimalmodbus installieren (https://pypi.org/project/minimalmodbus/).
z.b. also: pip3 install minimalmodbus
Als nächstes gibt es ein paar Register zu wissen die man lesen und/oder beschreiben kann:
Hier ein Code Beispiel:
import minimalmodbus
instrument = minimalmodbus.Instrument('/dev/ttyUSB_Labornetzteil', 1)
instrument.serial.baudrate = 9600
instrument.serial.timeout = 1 # Wichtig damit kein Fehler auftritt bei der verringerten Baudrate
def read_out_voltage():
try:
val = instrument.read_register(16, 1) / 10
val = round(val, 2)
#print(val)
except:
val = 0
return val
def write_out_voltage(value):
try:
instrument.write_register(1, 0, 1) # SWITCH OUTPUT OFF FIRST !!!
value = int(value * 10)
instrument.write_register(48, value, 1)
print("Setting Output Voltage to: " + str(value))
except:
print("Error setting Voltage")
# Beispiel lesen:
print(read_out_voltage())
# Beispiel schreiben
write_out_voltage(5.00)