百度资料
Node-RED是一种基于浏览器的编程工具,用于设计流程,以进行数据的可视化和交互。它可以用于串口通信,并提供了一些可以使用的节点,如node-red-contrib-serialport。
以下是一些可能的解决方案:
解决方案1:使用node-red-contrib-serialport节点
首先,你需要安装node-red-contrib-serialport节点。在命令行中,你可以使用以下命令来安装它:
npm install node-red-contrib-serialport
然后,在Node-RED中,你可以使用inject节点来模拟串口数据的输入,使用serial port节点来连接串口设备,并使用debug节点来查看输出。
例如:
[{"id":"1","type":"inject","name":"","topic":"","payload":"Hello","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1},{"id":"2","type":"serial out","z":"7b47e49.606f1","name":"","port":"COM3","baudrate":"9600","datatype":"buffer","parity":"none","xon":false,"rtscts":false,"splitc":"disable","newline":"","topic":"","addnewline":false},{"id":"3","type":"debug","z":"","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","x":320,"y":140,"wires":[]}]
解决方案2:使用node-serialport库
如果你想在Node.js环境中使用串口通信,你可以使用node-serialport库。你可以在Node-RED的函数节点中使用这个库来连接串口设备,并发送和接收数据。
例如:
const SerialPort = require('serialport')
const port = new SerialPort('COM3', { baudRate: 9600 })
port.on('open', function() {
console.log('Port Opened')
})
port.on('data', function(data) {
console.log('Data Received: ' + data)
})
port.write('Hello', function(err) {
if (err) {
return console.log('Error on write: ', err.message)
}
console.log('message written')
})
以上两种方法都可以实现Node-RED的串口连接,你可以根据你的具体需求和环境来选择最适合的方法。
vspd虚拟串口
sscom连接串口发送数据
nodered安装串口工具(nodered必须和串口在同一个电脑上运行)
-----------------------------------------------------------
2024-11-27T02:05:23.875Z 安装 : node-red-node-serialport 2.0.3
2024-11-27T02:05:23.215Z npm install --no-audit --no-update-notifier --no-fund --save --save-prefix=~ --omit=dev --engine-strict node-red-node-serialport@2.0.3
nodered串口参数设置
连接成功后vspd 的 com8 串口显示参数和 com7 显示的参数一致 即可通讯
sscom加回车发送数据
nodered收到数据
节点功能介绍
串口工具一共是4个节点,
serial in 仅仅接收消息
serial out 仅仅发送消息
serial control 可以修改串口参数,开关串口连接
serial request 发送一条数据后 会变成waitting状态 直到接收到响应数据后结束