Есть LM2... есть ОПС на базе Болидовского Ориона. Есть у Болида такой приборчик - С2000ПП. Приборчик этот занимается преобразованием сообщений в протоколе орион в регистры modbus.
Подключил порт rs485 на LM к с2000пп.
Пытаюсь прочитать 16-битный регистр.
Код
if not mb then
require('luamodbus')
mb = luamodbus.rtu()
mb:open('/dev/ttyS2', 19200, 'E', 8, 1, 'H')
mb:connect()
end
mb:setslave(4)
r1, err = mb:readregisters(46152)
if r1 then
alert(r1)
else
alert(err)
end
mb:close()
require('luamodbus')
mb = luamodbus.rtu()
mb:open('/dev/ttyS2', 19200, 'E', 8, 1, 'H')
mb:connect()
end
mb:setslave(4)
r1, err = mb:readregisters(46152)
if r1 then
alert(r1)
else
alert(err)
end
mb:close()
В ответ на первый запрос получаю значение (корректное), а вот на все последующие запросы - ответ один:
Код
err = "Method called on invalid context"
Вопрос - что делаю не так?