Как настроить опрос прибора по modbus через nodejs

есть ТРМ10 c modbusRTU, она соединена с преобразователем интерфейсов rs485 в ehernet. Не могу ее опросить через nodejs. пробовал библиотеки jsmodbus и modbus-serial. Пример кода

//const ModbusRTU = require("../index");
const client = new ModbusRTU();
client.connectTcpRTUBuffered("10.16.20.195", { port: 502 })
    .then(setClient)
    .then(function() {
        console.log("Connected");
    })
    .catch(function(e) {
        console.log(e.message);
    });

function setClient() {
    client.setID(16);
    client.setTimeout(3000);
    run();
}

function run() {
    console.log(client)
    client.readHoldingRegisters(1281, 1)
        .then(function(d) {
            console.log("Receive:", d);
        })
        .catch(function(e) {
            console.log('err->',e.message);
        })
        .then(close);
}
function close() {
    console.log('close')
    client.close();
}

Соединение доходит до преобразователя, но после него опросить прибор не получается. Преобразователь настроен как tcp server. Проблема в том, что при аналогичных настройках, MasterOPC Universal Modbus Server опрашивает без проблем прибор. Может кто сталкивался?


Ответы (0 шт):