人物使用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通信板。 二

人物使用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接口多圈编码器的连接

编码器的RS485通讯参数是ModbusRTU协议,波特率19200bps,无校验,数据位8位,默认站号32(0x20)。

CB1241 RS485信号板的连接

信号板安装在CPU机本体上,其订货号为6ES7241-1CH30-1XB0。具体连接如下:3号针脚对应RS485信号B(+);8号针脚对应RS485信号A(-);5号针脚对应屏蔽等电位点。

三、软件教程

建立西门子S7-1200通讯项目工程

在PLC属性中选中常规->系统和时间存储器,使能特殊状态位。

创建PLC变量

在程序块中添加新的数据块,用以编码器通讯全局变量。右键单击新建数据块,在属性中取消“优化的块访问”。

创建PLC梯形图程序

① 初始化RS45通讯:使用MB_COMM_LOAD指令,以Modbus RTU协议进行通信。设置波特率19200bps,无校验。

② 读取编码器数据:从40003开始连续三个寄存器读取编码器值,即多圈值、单圈值和转速值。

③ 设置编码器零点:将M2.0接通时写入40008寄存器中的数值为“01”,实现零点设置。

④ 设置编码器指定圈数:当M2.1导通时,将当前位置设定为“01”避免位置波动产生误差。

⑤ 修改编码器旋转方向:通过写入40007寄存器中的数值来改变旋转方向,其中“00”表示顺时针,“11”表示逆时针旋转。

⑥ 合成编碼计总位置脉冲:计算公式是多圈×8192+单圈×200mm=总距离(米)

⑦ 计算拉线移动距离: 根据实际情况调整偏移值并消除跳动偏差问题。

猜你喜欢