网站定制开发公司推荐为什么不用wordpress
news/
2025/10/4 7:12:52/
文章来源:
网站定制开发公司推荐,为什么不用wordpress,咸阳商城网站开发设计,网站的修改建设文字nodejs中使用modbus-serial库创建Modbus TCP读取设备的数据在nodejs中安装modbus-serial库本人使用的开发环境是Windows10下的VSCode#xff0c;安装并配置好了npm、node、cnpm等工具#xff0c;使用cnpm安装了modbus-serial库#xff0c;可以在npm中搜到modbus-serial包以及…nodejs中使用modbus-serial库创建Modbus TCP读取设备的数据在nodejs中安装modbus-serial库本人使用的开发环境是Windows10下的VSCode安装并配置好了npm、node、cnpm等工具使用cnpm安装了modbus-serial库可以在npm中搜到modbus-serial包以及它的介绍在对应的VSCode终端下使用cnpm install modbus-serial -g安装modbus-serial库cnpm install modbus-serial -g本来想使用libmodbus的javascript库的不过在npm官网搜到对应的libmodbus 3.1.4的javascript库有如下声明This is binding to native library libmodbus (http://libmodbus.org/).Now working only in *nix system.Module have native function and framework.说是modbus目前只支持类nix系统比如Linux、Unix系统。所以我选择了modbus-serial库当然如果使用C和C的话直接使用libmodbus库的C语言版本,官网是https://libmodbus.org,Github地址是https://github.com/stephane/libmodbusLinux下编译libmodbus源代码很简单Windows下配置相对麻烦点。非甲烷总烃设备的Modbus寄存器地址定义表例如要读取非甲烷总烃设备的总烃、甲烷CH4、NMHC非甲烷总烃对应的浓度相关监测因子参数的Modbus寄存器定义如下名称数据地址系数值系统参数仪器状态110系统参数运行状态211系统参数控制指令318采样时间年1012019采样时间月11111采样时间日12114采样时间时13114采样时间分14126采样时间秒15122TVOC状态2010TOVC峰面积210.011908总烃浓度220.01254CH4状态2310CH4峰面积240.011729CH4浓度250.01200NMHC状态2610NMHC峰面积270.010NMHC浓度280.0157苯状态2918苯峰面积300.010苯浓度310.010甲苯状态3218甲苯峰面积330.010甲苯浓度340.010乙苯状态3518乙苯峰面积360.010乙苯浓度370.010间二甲苯状态3818间二甲苯峰面积390.010间二甲苯浓度400.010对二甲苯状态4118对二甲苯峰面积420.010对二甲苯浓度430.010间-对二甲苯状态4418间-对二甲苯峰面积450.010间-对二甲苯浓度460.010苯乙烯状态4718苯乙烯峰面积480.010苯乙烯浓度490.010邻二甲苯状态5018邻二甲苯峰面积510.010邻二甲苯浓度520.010非甲烷总烃分析仪有三个关键参数即总烃、CH4、NMHC的浓度对应Modbus寄存器地址分别为22,25,28获取对应寄存器数据后还需要乘以0.01使用modbus-serial库使用Modbus TCP协议读取对应寄存器中的数据相关nodejs代码如下var moment require(moment)// create an empty modbus clientvar ModbusRTU require(modbus-serial)var client new ModbusRTU();// open connection to a tcp line// 创建Modbus TCP连接IP是15.18.200.23,端口502client.connectTCP(15.18.200.23, { port: 502 });// 读取非甲烷总烃的关于总烃、甲烷、NMHC这3个寄存器(寄存器地址分别为22,25,28)中的浓度// 每隔5秒钟读取保持寄存器的值从寄存器地址22开始读取读10个寄存器到data数组中setInterval(function(){client.readHoldingRegisters(22, 10, function(err, data){// 获取当前时间//moment.locale(zh-cn);console.log(----------------------------------------------------------------------);console.log(数据时间是 moment().format(YYYY年MM月DD日 HH时mm分ss秒));console.log(总烃的浓度是: data.data[0] * 0.01 ppmV);// 总烃浓度对应的寄存器地址为22console.log(CH4的浓度是: data.data[3] * 0.01 ppmV); // CH4浓度对应的寄存器地址为25console.log(NHMC的浓度是: data.data[6] * 0.01 ppmV); // NHMC浓度对应的寄存器地址为28console.log(----------------------------------------------------------------------);//console.log(data.data);});}, 5000);上述代码使用了JavaScript 日期处理类库Moment.js对当前日期进行格式化相关介绍见Moment.js-JavaScript 日期处理类库使用很简单比如项要获取当前的时间按照2019年12月9日 16时07分23秒这种格式输出代码如下var moment require(moment);var currentTime moment().format(YYYY年MM月DD日 HH时mm分ss秒);console.log(当前时间为: currentTime);nodejs中安装moment库也很简单一条命令搞定如下cnpm install moment -g相关代码测试输出如下----------------------------------------------------------------------数据时间是2019年12月11号 16时07分56秒总烃的浓度是:2.78ppmVCH4的浓度是:2.07ppmVNHMC的浓度是:0.70ppmV--------------------------------------------------------------------------------------------------------------------------------------------数据时间是2019年12月11号 16时08分01秒总烃的浓度是:2.78ppmVCH4的浓度是:2.07ppmVNHMC的浓度是:0.70pmV--------------------------------------------------------------------------------------------------------------------------------------------数据时间是2019年12月11号 16时08分06秒总烃的浓度是:2.78ppmVCH4的浓度是:2.07ppmVNHMC的浓度是:0.70ppmV----------------------------------------------------------------------本文同步分享在 博客“雪域迷影”(CSDN)。如有侵权请联系 supportoschina.cn 删除。本文参与“OSC源创计划”欢迎正在阅读的你也加入一起分享。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/926790.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!