本文为了更清晰展现,RS485(MODBUS RTU)协议工业高频RFID读写器与西门子PLC S7-1200握手联机与应用操作,特使用了工业RFID读写器CK-LR08-A01作为案例工具。
一、工具准备
1、软件:博图v14
2、PLC:西门子S7-1200
3、读写设备:CK-LR08-A01(RS485(MODBUS RTU)协议)
二、我们先了解工业总线型CK-LR08-A01读写器的接线线序定义与通讯格式
1、CK-LR08-A01线序定义
线序 | Pin1 | Pin2 | Pin3 | Pin4 | Pin5 |
485版本 | 电源24V+ | 485-A | 电源- | 485-B | 地 |
CK-LR08-B01接线说明 | ||
读卡器端口 | 读卡器端定义 | PLC端 |
PIN1 | 电源24V+ | 24V+ |
PIN2 | 485-A | 485DB9的1号A+针脚 |
PIN3 | 电源- | COM |
PIN4 | 485-B | 485DB9的2号B-针脚 |
2、CK-LR08-A01通信格式
通信接口:RS485
数据位:8个
奇偶校验位:无
停止位:1个
波特率:9600
输出编码格式:ModbusRTU
三、创建工程、开始组网与配置
1、打开软件->创建工程->添加新设备(PLC)->设备和网络管理->点击PLC->看到硬件目录选择通信板->点到点->CB1241(RS485)->看到6ES7241-1CH30-1XB0选择添加,如图
去程序块添加需要的模块和数据块好可以编程了
增加新块,如图
*编程时,与到不懂的模块。可以按F1帮助,可以更加了解自己使用的模块。
2、执行Modbus_Comm_Load以对ModbusRTU协议的端口进行组态。
4、MB_COMM_LOAD解释如下
PORT:269是表示CB1241(RS485)硬件标识符,要对应自己用的PLC
BAUD:波特率对应自己使用的
MB_BD:调用数据块用的
DONE:0:事务未完成
1:事务完成,且无任何错误
ERROR:0–未检测到错误
1-表示检测到错误在参数STATUS中输出错误代码
STATUS:端口组态错误代码可查看下面代码
5、读模式MODE=0时读模式
MB_MASTER_DB:进行读写操作MODE=0时读模式,=1时写模式
*MB_MASTER模块的解释如下
MB_ADDR:表示站号的数值
MODE:0时读模式,=1时写模式
DATA_ADDR:表示从站中的起始地址:指定Modbus从站中将供访问的数据的起始地址,可在Modbus功能表中找到有效地址。
DATA_LEN:表示数据长度:指定要在该请求中访问的位数或字数。可在Modbus功能表中找到有效长度。(字节长度)
DATA_PTR:表示指向CPU的数据块或位存储器地址,从该位置读取数据或向其写入数据。(存储地址)
DONE:0:事务未完成
1:事务完成,且无任何错误
BUSY:0:当前没有“MB_MASTER”事务正在处理中
1:“MB_MASTER”事务正在处理中
ERROR:0–未检测到错误
1-表示检测到错误在参数STATUS中输出错误代码
STATUS:端口组态错误代码可查看下面代码看
6、写模式MODE=1时写模式
7、数据存储的地方
8、看数据
更多关于西门子PLC S7-1200与RS485(MODBUS RTU)协议工业高频RFID读写器握手联机与应用操作说明,华翔天诚科技欢迎您的交流与咨询。