目录:
一、预备知识
1、ModBus_RTU通讯规约
2、RS232、RS485、RS422串口
二、上位机经RS485接口与PLC通信
1、概述
2、西门子触摸屏“站号”设置
3、温度读取与写入
4、电力ModBus定义
一、预备知识
1、ModBus_RTU通讯规约
分别为:ModBus_RTU通讯规约1、http://ModBus_RTU通讯规约2。
2、RS232、RS485、RS422串口
详情请移步:RS232、RS485、RS422串口。
二、上位机经RS485接口与PLC通信
1、概述
通过 RS485接口将西门子 PLC(官网)与上位机电脑连接通信,ModBus_RTU 规约。生产公司提供的软件与参数表:ModBus调试软件与PLC通讯参数表。
2、西门子触摸屏“站号”设置
通过触摸屏找到“ModBus通讯地址设定”,修改好参数,切记需要重启 PLC使设置生效。
3、温度读取与写入
1)PLC参数表的介绍
参数表中 ModBus 从 40001 开始,但实际从 40000 开始。比如读取寄存器地址为 25,实际读取的地址值为 40024。读取值/10,如下表所示。
PLC参数表续:
2)上位机指令给PLC
上位机通过“ModBus调试助手”发送指令给 PLC 如下图所示,具体含义见下面的文字描述。
(1)读取PLC设定地址中的值
发送缓冲区TX:01 03 00 19 00 01 55 CD
解析:03指令读取 01站号 PLC 的 0019H(25D)-1 = 24 即 40024地址的值,只读取 0001个数据
接收缓冲区RX:01 03 02 01 C3 F9 85
解析:03指令读取 01站号 PLC 的 40024地址中的值;02数据字节个数,占用两个字节;返回的温度值为 01C3H(451D)/10 = 45.1℃。
(2)写入PLC设定的地址
发送缓冲区TX:01 06 00 34 01 22 49 8D
解析:将 290 即 29℃ 通过 06指令写入 01站号 PLC 的 0034H(52D)-1 = 51 即 40051地址,写入数据为 0122H
接收缓冲区RX:01 06 00 34 01 22 49 8D
解析:06指令写入 01站号 PLC 的 0034H(52D)地址即 40051,写入数据为 0122H。
4、电力ModBus定义
ModScan32 用来模拟主设备。它可以发送指令到从机设备(使用 ModBus协议的终端设备)中,从机响应之后,就可以在界面上返回相应寄存器的数据。其使用方法移步:使用方法。
01 | Coil Status | 遥信 |
02 | Input Status | 遥控 |
03 | Holding Register | 遥测 |
04 | Input Register | 遥调 |
首先要有一个具体目标,那些所有你认为必须前置的知识,都可以在完成目标的过程中学到。觉得不错,动动发财的小手点个赞哦!