一句话概括:
市场上采购各种RS485数据采集模块,很多这种模块多对外提供modbus tcp(502)的读取接口和sdk,我们只需要熟悉模块厂商的模块SDK来开发PC端的客户端软件即可。
客户端软件功能:显示各种仪表的读数,对各种结果后续处理等等。
1、熟悉模拟量,开关量概念
2、熟悉modbus ascii,rtu,tcp模式,重点在于modbus tcp协议分析(包含传输协议头和数据协议)
2.1 modbus 传输协议头:用于tcp传输7个字节,|传输标志2字节|协议号2字节|协议数据长度2字节(包含设备号1字节)|设备号(单元标记)2字节|modbus data|
2.2 modbus数据协议:设备号后面就是modbus数据协议了/*参考modbus tcp规范,里面的功能码*/
参考:modbus tcp协议中文版.pdf
3、真正具体碰到实际开发时,市面上有很多厂家生产了所谓的数据采集模块(下面简称模块)。这些厂商也提供了数据采集模块的SDK开发包,来开发client与数据采集模块通讯。
数据采集卡的功能:用来采集嵌入式仪表的:电流,电压等等模拟量信号,需要自己写客户端(基于sdk)来将从模块读取的模拟量转换成数字量。就可以输出仪表上的读数。
4.实际开发时模块大多支持modbus tcp
开发流程:
1.熟悉modbus tcp协议(重点)
2.熟悉项目中采用的模块的sdk(重要)
3.熟悉智能仪器,仪表,传感器等设备的硬件参数(不重要),除非需要深层次的开发,很大的工作SDK帮我们做了,只要调用sdk 的api能完成我们大部分的工作。
注意:
当然modbus只是其中一种总线标准。
还有空调方面用:BACnet相关协议,其他有需要补充的欢迎网友回帖,一起增强行业知识,为后来者参考,您引导一批人,减少不必要的他人时间浪费。