Программа считывает данные с устройства ОВЕН МВ110-224.8А
Использую модуль
python minimalmodbus, класс Instrument
По таймеру регулярно хочу проверять подключено ли устройство, если что-то произошло и связь пропала, программа сообщает об этом.
Вопрос, как правильно это делать.
У класса Instrument есть объект Serial (из библиотеки pyserial). При попытки использовать функцию
Код:
if myserial.serial.isOpen() is True
не удается отследить ситуацию, так как если вытащить шнур из USB, то все равно возвращается True.
Поэтом сейчас сделала так:
Код:
def isWork(self):
if hasattr(self, "myserial"):
try:
self.myserial.read_register(1)
return True
except:
return False
else:
return False
То есть просто пытаюсь что-то прочитать в первом регистре и если ошибка, значит устройство отключилось по какой-то причине.
И все вроде бы работает, но вот иногда вдруг начинает мигать мой красные индикатор, то есть данные из регистра прочитать не удается, а устройство не отключилось. Через секунду все снова в порядке. Может кто подскажет, почему такое может происходить и как правильно контролировать работу ?