Минимальное переподключение Modbus

Работаем на малине с Arduino, подключенной через USB. Общение через python с библиотекой minimalmodbus Попытка переподключения, когда Arduino на некоторое время был отключен от сети. Пробовал еще раз повторить код подключения при ошибке, не помогло. Есть ли какая-либо функция для повторного подключения при потере последовательного соединения?

minimalmodbus.baudrate = 9600
instr = minimalmodbus.Instrument('COM5', 1)
instr.serial.baudrate=9600
instr.debug=False

person Георгий Ларионенко    schedule 20.05.2020    source источник


Ответы (1)


Вы можете столкнуться с этой проблемой, потому что вы не закрываете COM-порт. Поэтому вы можете попробовать сначала закрыть это, используя следующую команду:

instrument.close_port_after_each_call= True

Ваш код должен выглядеть так:

try:
    minimalmodbus.baudrate = 9600
    instr = minimalmodbus.Instrument('COM5', 1)
    instr.serial.baudrate=9600
    instr.debug=False
    instr.close_port_after_each_call= True 
except:
    print('please check your connection')

Подробнее здесь

person Sanket Jagani    schedule 28.02.2021