人物使用RS485拉线编码器与西门子PLC连接传感器生产商的设备
一、工具准备:
我们首先需要上海了淼的RS485接口多圈编码器,型号为GME-58-MR-13/8-0.5-10/30-RS10-65-B,具备256圈和8192分辨率。
接下来,我们安装博途软件的TIA Portal V15版本在电脑上。
西门子PLC S7-1200系列CPU 1212C DC/DC/RLY,以及24V电源,都已经准备好了。
CB1241 RS485通信板也已订购,订货号为6ES7241-1CH30-1XB0。
二、电气接线
上海了淼RS485接口多圈编码器的连接
通讯协议采用ModbusRTU;
波特率设定为19200bps,无校验;
数据位宽度为8位;
出厂默认站号设置为32(十六进制表示:0x20)。
CB1241 RS485信号板的接线
3号针脚用于RS485信号B(+);
8号针脚用于RS485信号A(-);
5号针脚用作屏蔽等电位点。
三、软件教程
建立西门子S7-1200通讯项目工程
在PLC属性中选中常规->系统和时间存储器,使能特殊状态位。
创建PLC变量
在程序块中添加新的数据块,为全局变量做准备。在属性中取消“优化的块访问”。
创建PLC梯形图程序
a) 初始化RS45通讯
使用MB_COMM_LOAD指令,以Modbus RTU协议进行通信。波特率设定为19200bps,无校验。
b) 读取编码器数据
从40003开始连续三个寄存器读取编码器数据,其中包括多圈值、单圈值及转速值。
c) 设置编码器零点
将M2.0接通时,将写入寄存器40008中的值设置为当前位置,即零点位置(即第一个脉冲对应于第一圈)。
d) 设置编码器指定圈数
当M2.1导通时,将写入当前位置作为指定的一个圈数,从而避免由于M2引起的位置波动问题。
e) 修改编码器旋转方向
写入寄存器40007中的值以改变旋转方向:将其置零则顺时针旋转;置一则逆时针旋转。
f) 合成编码总位置脉冲
编解代码总计行程 = 多圆数 * 单圆分辨率 + 单圆数
g) 计算拉线长度
拉线行程计算公式如下:
行程 = (总计行程 / 单圆分辨率 * 每圓長度 ) – 偏移長度
这样可以消除因初始化或其他原因导致的一些跳动偏差。