人物使用RS485拉线编码器与西门子PLC连接传感器探讨常见种类
一、工具准备:
我们首先需要一台上海了淼的RS485接口多圈编码器,型号为GME-58-MR-13/8-0.5-10/30-RS10-65-B,具备256圈和8192分辨率。
接着,我们需安装博途软件的TIA PortalV15版本在电脑上。
西门子PLC S7-1200系列CPU 1212C DC/DC/RLY是我们所需的控制单元,配以24V电源供给。
最后,我们还需要CB1241 RS485通信板进行连接。
二、电气接线
上海了淼RS485接口多圈编码器的连接参数如下:通讯协议为ModbusRTU,波特率19200bps,无校验,并且数据位为8位。出厂默认站号设置为32(0x20)。
CB1241 RS485信号板(订货号6ES7241-1CH30-1XB0)的安装在CPU机本体上,其接线如图中所示。具体来说,3号针脚对应B(+)信号;8号针脚对应A(-)信号;而5号针脚则用于屏蔽等电位点。
三、软件教程
建立西门子S7-1200通讯项目工程
硬件设备组态:
在PLC属性中选中常规->系统和时间存储器,使能特殊状态位。
创建PLC变量
在程序块中添加新的数据块,以便于编码器通讯全局变量。在属性中取消“优化的块访问”。
创建PLC梯形图程序
a) 初始化RS45通讯
使用MB_COMM_LOAD指令来配置端口,以Modbus RTU协议与RS485接口多圈编码器进行通信。波特率设定为19200bps,而无校验。
b) 读取编码器数据
从40003开始连续三个寄存器读取编码器数据,这包括多圈值、单圈值以及转速值。
c) 设置编码器零点
通过将M2.0导通时,将一个写入40008寄存器中的数值设定为当前位置即可实现零点设置。
d) 设置指定环数
当M2.1导通时,将当前位置写入到寄存器40009,从而避免因零点位置波动引起的问题。
e) 修改旋转方向
通过向寄存字节40007写入数字来修改旋转方向。如果写入的是数字0,则顺时针旋转,如果是数字1,则逆时针旋转。
f) 合成总位置脉冲数值
计算总位置脉冲数,即由多圈乘以8192再加上单圈之和得到最终结果。
g) 计算拉线长度移动距离:
根据拉线盒行程每次移动两米,以及换算关系:每个循环产生200毫米行进距离,可得出实际行进距离公式:(\text{line_length} = \frac{\text{encoder_position}}{8192} * 200 - offset)。此公式可以消除由于零点跳动引起的问题偏差。