人物使用RS485拉线编码器与西门子PLC连接传感器

  • 综合资讯
  • 2025年04月26日
  • 一、工具准备: 我们首先准备了一台上海了淼的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拉线编码器与西门子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。注意: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寄存注册为零度,即每次M2开启时将当前位置设定为第一圈(即从第一个脉冲开始计数)。

d) 设置指定圈数:当M2导通时,将当前位置写入到某个固定圈数避免重复计算同一位置的问题。例如,如果需要保持在第一圈,则写入40009至40101之间任何有效地址。

e) 修改旋转方向:通过向40007寄存器写入数字来改变旋转方向。例如,为顺时针旋转填充“000”或逆时针旋转填充“001”。

f) 合成总位置脉冲数量计算拉线长度(如拉线盒行程为200mm):

脉冲数量 = 多圈值 * 8192 + 单circle_value

线长 = (脉冲数量 / 8192 *200 - 偏移值)

计算公式考虑去除初始偏差并且可以精确地获取实际移动距离信息。如果需要,可以根据实际情况调整偏移值以消除跳动问题。此外,还要注意考虑是否存在其他因素影响精度,如温度变化等。