Не нашел темы по Распбери.
Пытаюсь с датчика температуры типа
РТ100 снять информацию на распбери.
Датчик присоединён вот к
такой платке для получения сигнала в виде RS485. От платки два провода кидаю на
переходник USB. А тот уже воткнут в Распбери.
Выглядит это так:
Сразу скажу: пробовал разные датчики (два трехпроводных, один двухпроводной), вместо платки пытался ставить блок ОВЕН МВ110-224.8А
На самом Распбери поставил minimalmodbus и скопировал прогу на питоне
отсюда. Распбери видит само подключение ttyUSB0 - проверено в командной строке. При запуске программы нормально проходит код
- Код:
import minimalmodbus
import time
import serial
minimalmodbus.BAUDRATE = 9600
instrument = minimalmodbus.Instrument('/dev/ttyUSB0', 1)
то есть на эти вещи не ругается, а спотыкается на чтении регистра:
- Код:
temperature = instrument.read_register(289, 1)
то есть наскольк я могу понять, он не получает информацию. В документации по
minimalmodbus стр.14 указан номер регистра 289, но я на всякий случай прогонял код до 5000 (в докумнетации на стр.22 сказано, что регистр может иметь значение до 65535 - не стал прогонять настолько - долго и боюсь, что проблема не в этом) Проверял через прерывание:
- Код:
import minimalmodbus
import time
import serial
minimalmodbus.BAUDRATE = 9600
j=0
instrument = minimalmodbus.Instrument('/dev/ttyUSB0', 1)
for i in range(65535):
try:
temperature = instrument.read_register(i, 1)
print ("i =========", i, end="; ")
except:
j=j+1
if j%500 == 0:
print (j)
Есть опасение, что мог неправильно выставить конфигурацию портов serial. Пробовал разные варианты. Последний:
В общем, кто чего посоветует? В чем может быть засада? Почему регистр не читает?