【技术班长专栏】三菱PLC的无协议通讯

您所在的位置:网站首页 三菱plc的rs2指令 【技术班长专栏】三菱PLC的无协议通讯

【技术班长专栏】三菱PLC的无协议通讯

2023-08-13 22:57| 来源: 网络整理| 查看: 265

点上方蓝字“工控维修在线”免费快速关注

概述

以三菱FX3U系列PLC,富士温控表为例,通过RS485通讯串口讲述三菱PLC与温控表之间的通讯建立,通过PLC读取温控表的当前温度及改变温控表的设定温度。

FX3U系列PLC的无协议通讯

FX3U的无协议通讯指令是RS2,图1是RS2指令的数据格式,D100是发送数据的起始软元件,D0是发送的字节数(D100占2个字节),D200是接收数据的起始软元件,D1是接受的字节数,K1指的是通讯通道。

图1.RS2指令的数据格式

图2和图3是RS2指令的发送数据和接受数据的顺序,它们都是低字节在前高字节在后。注意RS2指令不支持8位设定模式,即每个字必须写满2个字节。根据要连接目标的协议不同报头、报尾、求和数据、CRLF可以不用发送。

图2. RS2指令发送数据的顺序

图3.RS2指令接受数据的顺序

FX3U系列PLC要实现通讯,还需要在PLC设置里面进行设置,选择通道、通讯协议(无协议)、数据长度、奇偶校验、停止位(无校验时停止位是2)、波特率、通讯类型。

图4.PLC的无协议通讯设置

编写PLC发送程序如下:首先写RS2指令,在X0导通的过程中,向软元件中写入数据,最后置位M8402发送请求,注意:在置位发送请求后不要改变发送数据,发送请求数据在发送完成后自动复位。

图5.PLC的程序示例

富士温控表的通讯说明

富士温控表采用Modbus通讯协议,通讯帧的格式如下:

图6.温控表通讯帧的格式

首先是站号(1个字节)、第二是功能码(1个字节,控制读还是写),第三个是读写数据(2到125个字节),包括起始地址和读写的个数、最后一个是CRC校验码,都是16进制的。

图7为读取温控表当前温度帧的格式。温控表接受的帧:站号是01、功能吗是04(只读)、起始地址是03E8、读出个数是0001(一个字)、CRC校验码是B1BA。温控表响应帧的数据是:站号01、功能码04、读出的字节数02、读出的数据014F、CRC校验码3832。注意:温控表帧的格式是高字节在前低字节在后。

图7.读取当前温度帧的格式

图8为向温控表写入控制温度的帧的格式。

温控表接受的帧:站号01、功能码06、写入地址03EA、写入的数据**、CRC校验码**。

温控表响应的帧:站号01、功能码06、写入地址03EA、写入的数据**、CRC校验码**。

图8.写入控制温度贞的格式

温控表与PLC的通讯示例

读温控表当前值

温控表需要接收的数据是 01 04 03 E8 00 01 CRC校验码,由于发送接受的高低位不同,PLC软元件中的数据是 H401、H0E803、H100、CRC指令计算校验码。

温控表响应的数据是:01 04 02 01 4F 38 32

PLC得到的数据是:D1050-H401、D1051-H102 、D1052-H384F、D1053-H**32。

此时读出温度的高字节在D1051的高字节中,低字节在D1052的低字节中,因此需要将这两个字进行处理。将D1151和H0FF00相与,高字节被保存到D1251中,D1152和H0FF相与,低字节被保存到D1252中,再将D1251和D1252相或,高低字节被合并到D1253中,即可现实当前温度。

写入温控表控制温度

温控表需要接收的数据是:01 06 03 EA 设定温度(例如0304) CRC校验码

PLC发出的数据是:H601、H0EA03、H0403、CRC指令计算校验码。此时需要注意,触摸屏上设定的温度不会将温度的高低字节调换,因此需要增加程序,将设定的温度高低位调换过来,用循环左移指令。

工控维修在线-工控服务行业领导者!

集聚全国的工控服务商,提供本地化维保服务!

全国布局服务团队,配件共享商城,实训培训中心!

网址:www.gkwxzx.com

工控维修在线推荐:

南京港拓电气,专修发那科和西门子数控系统,伺服驱动器及电机!

联系人:王工,15195813566 



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3