摘要:但是我对此协议并不熟悉,本文便以测试为目的基于西门子模块主站,采用通讯协议与温湿度传感器从站通讯获取数据。
最近作者在了解工业边缘计算的时候发现,Modbus通讯(ModbusRTU&ModbusTCP)应用的很多,而且是现场网关(Gateway)的一种常用基础协议。
但是我对此协议并不熟悉,本文便以测试为目的基于西门子RS485模块CM1241(主站),采用ModbusRTU通讯协议与温湿度传感器(从站)通讯获取数据。
关键词:ModbusRTU、西门子自动化、TIA Portal、温湿度传感器、OPCUA
为了能够测试ModbusRTU通讯,购买物料并搭建实验架,总架构如下:
关于远程链接如何搭建,请参考文章:
在现场的Simatic S7-1200站点的网络构架详情如下:
ModbusRTU主站选用的是西门子CM1241 RS422/485模块,订货号为6ES7 241-1CH32-0XB0,建议官方渠道购买。
温湿度传感器用的是性价比较高的妙昕TH10S-B,京东购买链接为:
其中,CM1241的DB9接头的引脚含义如下:
妙昕TH10S-B的接线方式如下:
按照西门子官方手册和妙昕传感器所提供手册,完成接线和连接操作,上电后利用TIA Portal V17编写通讯程序。
建议在正式编写TIA Portal程序之前,先用Modbus RTU通讯测试工具测试,保证可读取性。测试工具为RS485转USB线缆,所用工具的购买链接为:
所用的测试软件为:JCBustszs串口调试助手。
该温湿度传感器的读操作指令为:
01 03 00 00 00 02 C4 0B (地址为1,读温度湿度值)
结果返回为:
01 03 04 00 B8 03 3F 3A F6 (对应温度:18.4℃,湿度83.1%)
测试过程截图如下:
参考西门子手册以及妙昕传感器所提供手册,结合上述内容,调用Modbus_Comm_Load的TIA Portal关键程序如下:
读写完成后利用TIA Portal的Trace内容查看如下(用手握测试):
温湿度的分辨率分别为0.1℃和0.1RH,数据刷新频率可自定义,还可以。
我认为该信号的获取有两个关键作用:
1.为后续工厂关键设备(如变频器)的监控提供思路;
2.为现场级通讯和现场与云交互通讯提供参考。
西门子1200PLC从Firmware V4.4之后开始支持OPC UA通讯,这为我们提供了与上位机交互的思路:利用OPC UA实现跨平台的通讯传输(如将这些信号传输至Linux下的HDFS集群进行存储或传输至基于Linux编写的UI画面进行实时呈现等),开放接口如下:
PLC1200开放OPC UA接口操作参考资料:
UA_Serverhttp://www.ad.siemens.com.cn/productportal/Prods/S7-1200_PLC_EASY_PLUS/11-Comm/05-OPC/05-OPC_UA/02-UA_Server.html最终该站点更新为如下的网络架构:
该update将在后续文章中陆续更新,敬请期待。
随着“工业4.0”的演变,工业数据、工厂数据的价值会更加凸显。那么数据的获取、存档、分析就至关重要。本文以目前工业边缘网关中使用较多的ModbusRTU为例,阐述了如何测试链接、如何验证通讯结果,希望能够以此为例,帮助大家解决类似通讯问题。
Last but not least,只是完成工业现场级的通讯是远远不够的,还需要与尚未系统进一步通讯产生数据交互,以进行存储和呈现,本文以OPC UA为例解释了一种可能性,update将在后续文章中更新。
如上为本人的第二篇CSDN文章,如有侵权将及时删除,如有数字化相关的问题可随时邮件或私信交流,邮件地址为:aolus1992@163.com。
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/125581.html
摘要:为了可靠工作,在总线状态切换时需要做适当延时,再进行数据收发。 一、实现效果 基于ucosii实时操作系统的RS485通信,采用USART + DMA进行收发, 二、开发环境 开发工具:KEIL V5开发板: STM32f107RC采用方式:USART + DMA使用系统:...
摘要:灰度传感器利用不同颜色的检测面对光的反射程度不同的原理进行颜色深浅检测。这就是我们用的数字量灰度传感器。数字量的灰度传感器如果加入的是单片机处理数据,那么可以把得到的原始数据加入滤波算法数据混合算法得到一个波动小适应环境强的数字传感器。 文章目录 引言 1.寻迹传感器工作原理介绍 2.使用方...
摘要:一说明本库基于编译,其他的内核也支持,采用串口和模组通信。使用时添加文件到工程中,头文件引用即可。此外,需要外部实现模组的复位操作,一般是对管脚拉高一段时间,复位函数需要指定函数为。四实例以下为使用的库,实现对接自建。 一、说明 本lib库基于STM32F407编译,其他的cortexM4内...
阅读 3733·2023-01-11 11:02
阅读 4243·2023-01-11 11:02
阅读 3049·2023-01-11 11:02
阅读 5179·2023-01-11 11:02
阅读 4733·2023-01-11 11:02
阅读 5532·2023-01-11 11:02
阅读 5312·2023-01-11 11:02
阅读 3985·2023-01-11 11:02