探索Modbus Stream:Node.js下的工业通信新纪元
// 引入Node.js的串口通信模块
const SerialPort = require('serialport');
// 引入Modbus工具库
const Modbus = require('js-modbus-slave');
// 打开串口
const port = new SerialPort('/dev/ttyUSB0', { baudRate: 9600 });
// 创建Modbus从机
const modbusServer = new Modbus.server.Server(port);
// 设置寄存器和线圈数据
const coils = new Modbus.datastores.ArrayDataStore(10000); // 线圈数据
const registers = new Modbus.datastores.ArrayDataStore(10000); // 寄存器数据
// 设置从机ID
modbusServer.setServerID(1);
// 设置数据存储
modbusServer.addDataStore(coils);
modbusServer.addDataStore(registers);
// 监听客户端请求
modbusServer.on('error', (err) => {
console.error('Modbus server error:', err);
});
modbusServer.on('data', (data) => {
console.log('Modbus server received data:', data);
});
// 启动Modbus服务器
modbusServer.listen();
// 现在,Modbus从机正在运行,等待客户端请求...
这段代码展示了如何在Node.js环境中使用serialport
和js-modbus-slave
库来创建一个简单的Modbus从机。它设置了串口和从机ID,并为线圈和寄存器数据设置了数据存储。最后,它启动了Modbus服务器并监听事件。这为开发者提供了一个清晰的例子,展示了如何在工业通信中使用Node.js和Modbus协议。
评论已关闭