人物如何操作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信号板的接线
在CPU机本体上安装CB1241 RS485信号板,其订货号为:6ES7241-1CH30-1XB0。具体连接方式如下:
3号针脚--RS485信号B(+);
8号针脚--RS485信号A(-);
5号针脚--接屏蔽等电位点。
三、软件教程
一开始,我们要建立一个西门子S7-1200通讯项目工程。在PLC属性中选中常规->系统和时间存储器,使能特殊状态位。
然后,我们创建一些PLC变量。在程序块中添加新的数据块,用以编码器通讯全局变量,并且取消“优化的块访问”。
接着,在程序块中设置梯形图程序:
创建梯形图程序
a) 初始化RS45通讯:使用MB_COMM_LOAD指令来组态端口,以Modbus RTU协议进行通信。配置波特率19200bps,无校验。
b) 读取编码器数据:从40003开始连续读取三个寄存器中的数据,这三个寄存器分别对应于多圈值、单圈值及转速值。
c) 设置编码器零点:将M2.0引脚导通时,将当前位置写入40008寄存格作为零点记录。
d) 设置指定圈数:当M2.1导通时,将当前位置写入40009寄存格,以避免零点位置波动。
e) 修改旋转方向:通过向40007寄存格写入数字来修改旋转方向,其中数字为0表示顺时针旋转,为正则逆时针旋转。
f) 合成总位置脉冲计数:计算总脉冲数 = 多圈 * 8192 + 单圈,即可得出绝对距离值。
最后,对拉线长度进行换算:
拉线盒行程为每米200mm,
换算关系: 编码器每做一次完整循环就是8192个脉冲, 对应拉线长度200mm,
因此,实际长度= (总脉冲 / 8192 ) * 每次循环长度 + 偏移量,
这里要注意消除因初次启动或其他原因导致的一些跳动偏差问题。