modbus-connect
Version:
Modbus RTU over Web Serial and Node.js SerialPort
38 lines (31 loc) • 1.14 kB
JavaScript
const ModbusClient = require('./client.js');
const { createTransport } = require('./transport/factory.js');
const logger = require('./logger.js');
const PollingManager = require('./polling-manager.js');
const poll = new PollingManager()
const log = logger.createLogger('main');
async function main() {
const transport = await createTransport('node', {
port: 'COM4',
baudRate: 9600,
parity: 'none',
dataBits: 8,
stopBits: 1,
// writeTimeout: 500,
// readTimeout: 500
});
const client = new ModbusClient(transport, 0, {
timeout: 1000,
crcAlgorithm: 'crc16Modbus',
retryCount: 3, // Кол-во попыток повтора запроса
retryDelay: 300, // Задержка между повторами
});
await client.connect();
await client.writeSingleRegister(2040, 0);
const regs = await client.readHoldingRegisters(2040, 1);
console.log(regs);
await client.disconnect();
}
main().catch(err => {
console.error('Fatal error in main:', err);
});