#npm 包 node-red-contrib-b3ts-bms 使用教程
##介绍
node-red-contrib-b3ts-bms 是一个 Node-RED 的扩展包。它提供了一些方便的节点来帮助读取和控制电动车电池管理系统 (BMS) 的数据。它包含以下节点:
- B3TS BMS 输入 (B3TS BMS Input): 读取 BMS 状态和数据,并将它们发送至 Node-RED 流程中。
- B3TS BMS 输出 (B3TS BMS Output): 向 BMS 发送控制命令,例如启动/停止充电等。
- B3TS BMS 配置 (B3TS BMS Configuration): 设定 BMS 的参数,例如电池容量、充放电限制等。
##使用步骤
安装 Node-RED: 请前往官网下载对应平台的 Node-RED,并按照说明进行安装。
安装 node-red-contrib-b3ts-bms 包: 在 Node-RED 的命令行界面中输入以下命令安装该包。
npm install node-red-contrib-b3ts-bms
启动 Node-RED: 在命令行界面中输入以下命令启动 Node-RED。
node-red
添加 B3TS BMS 节点: 在 Node-RED 的左侧工具栏中找到 B3TS BMS 输入/输出/配置的节点,并将它们拖拽到右侧的流程区域中。
设置节点属性: 每个节点都有它自己的属性,这些属性决定了节点的行为。需要根据实际需求对节点属性进行设置。可以通过双击节点打开其属性编辑器或单击节点上的齿轮按钮进行设置。
连接节点: 将节点进行连接以构建流程。将输出节点的输出端口连接到输入节点的输入端口,并将输入节点的输出端口连接到下一个节点的输入端口。
部署流程: 在 Node-RED 的右上角点击部署按钮,将流程部署到 Node.js 运行环境中。
运行: Node-RED 会一直运行,可以在浏览器中通过访问 http://localhost:1880/ 来查看已经构建的流程并实时进行在线调试。
##示例代码
以下是一个简单的 Node-RED 流程,用于读取并显示电动车电池组的信息。
[{"id":"39bea8c2.eb1a7a","type":"b3ts-bms-input","z":"87e56b97.0e468","name":"","serialport":"/dev/ttyS0","baudrate":"9600","parity":"none","databits":"8","stopbits":"1","command1":"CSB?","command2":"CVE?","command3":"CT1?","repeatCommand1":true,"repeatCommand2":true,"repeatCommand3":true,"commandInterval":"2000","x":230,"y":220,"wires":[["9621efea.12d608"]]},{"id":"9621efea.12d608","type":"function","z":"87e56b97.0e468","name":"Parse Response","func":"msg.payload = msg.payload.replace(/\\n/g,\" \");\nvar regex = /\\d?\\.\\d{3}/;\n\nvar m = regex.exec(msg.payload);\nif (m != null) {\n var data = {\n 'CSB': parseFloat(m[0])\n };\n msg.payload = data;\n return msg;\n}","outputs":1,"noerr":0,"initialize":"","finalize":"","x":470,"y":180,"wires":[["ced2b85c.38d6"]]},{"id":"ced2b85c.38d6","type":"ui_chart","z":"87e56b97.0e468","name":"电池容量","group":"90872bbf.ceac2","order":0,"width":0,"height":0,"label":"电池容量","chartType":"line","legend":"false","xformat":"HH:mm:ss","interpolate":"linear","nodata":"","dot":false,"ymin":"0","ymax":"100","removeOlder":1,"removeOlderPoints":"50","","x":670,"y":180,"wires":[[],[]]},{"id":"90872bbf.ceac2","type":"ui_group","name":"电动车 BMS","tab":"818774cc.7ea2d","order":1,"disp":true,"width":"6","collapse":false},{"id":"818774cc.7ea2d","type":"ui_tab","name":"BMS 监控","icon":"dashboard","order":3}]
这个流程包含了一个 B3TS BMS 输入节点、一个 Function 节点和一个 UI Chart 节点。它会以 2 秒的间隔读取电池容量并将其绘制在图表中。
##总结
node-red-contrib-b3ts-bms 是一款非常便捷的 Node-RED 扩展,它可以很方便地实现对电动车电池管理系统的监控和控制。上述教程提供了该扩展包的安装和使用过程,同时提供了一个简单的示例流程以帮助读者更好地了解该包。如果您想深入了解该扩展,可以进一步查阅其文档和源代码。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6005672881e8991b448e3a72