三菱Fx系列PLC串口通信解析

三菱PLC编程口通信协议,也可用于RS-232C串口

【例1】 读取PLC的D10、D11数据。D10实际值为ABCD,D11实际值为EF89。 发送读指令的获取过程如下: 开始字符STX:02H 命令码CMD(读):0(其ASCII码为30H) 起始地址:10×2=20,转换成十六进制数为14H,则 ADDR = 1000H + 14H = 1014H(其ASCII码为31H 30H 31H 34H) 字节数NUM:4(其ASCII码为30H 34H) 结束字符EXT:03H 累加和SUM:30H+31H+30H+31H+34H+30H+34H+03H=15DH 累加和超过两位数时,取它的低两位,即SUM为5DH,5DH的ASCII码为35H 44H。 对应的读命令帧格式:02 30 31 30 31 34 30 34 03 35 44 PLC接收到此命令,如未正确执行,则返回NAK码(15H);如正确执行,则返回应答帧为02 43 44 41 42 38 39 45 46 03 46 44 D10实际值为ABCD,用ASCII码表示为41 42 43 44,在返回的应答帧中低字节在前,高字节 在后,即43 44 41 42;D11实际值为EF89,用ASCII码表示为45 46 38 39,在返回的应答帧 中低字节在前,高字节在后,即38 39 45 46(因为NUM=04H,所以返回2个数据。02H表示往 1个寄存器发送数值,04H表示往2个寄存器发送数值,依此类推)。

【例2】 从PLC的D123开始读取2字节数据。D123中的数据为3584。 发送读指令的获取过程如下: 开始字符STX:02H 命令码CMD(读):0(其ASCII码为30H) 起始地址:123×2=246,转换成十六进制数为F6H,则 ADDR = 1000H + F6H = 10F6H(其ASCII码为31H 30H 46H 36H) 字节数NUM:2(其ASCII码为30H、32H) 结束字符EXT:03H 累加和SUM:30H+31H+30H+46H+36H+30H+32H+03H=172H 累加和超过两位数时,取它的低两位,即SUM为72H,72H的ASCII码为37H 32H。 对应的读命令帧格式:02 30 31 30 46 36 30 32 03 37 32 PLC接收到此命令,如未正确执行,则返回NAK码(15H);如正确执行,则返回应答帧为02 38 34 33 35 03 44 36。 D123中的数据为3584,用ASCII码表示为33 35 38 34,在返回的应答帧中低字节在前,高字 节在后,即38 34 33 35(因为NUM=02H,所以返回1个数据)。

【例3】 向PLC的D0、D1写4字节数据。要求写给D0的数据为1234,写给D1的数据为5678。 发送写指令的获取过程如下: 开始字符STX:02H 命令码CMD(写):1(其ASCII码为31H) 起始地址:ADDR=1000H + 0×2 = 1000H(其ASCII码为31H 30H 30H 30H) 字节数NUM:4(其ASCII码为30H 34H) 数据DATA(低字节在前,高字节在后):写给D0的数据为3(33H)4(34H)1(31H)2(32H );写给D1的数据为7(37H)8(38H)5(35H)6(36H)。 结束字符EXT:03H 累加和SUM࿱

评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值