行业动态

当前位置:三菱PLC > 新闻资讯 > 行业动态

三菱PLC中LRC校验码程序编写方法图解

点击:14853 日期:2019-01-22 选择字号:

三菱中的LRC校验码程序的编写,在PLC与设备进行通讯时采用MODBUS协议时,一般会有两种数据模式,1RTU模式,2ASCII码模式。RTU的数据传输采用CRC校验,而ASCII码则采用LRC校验值。LRC值校验涵盖从从机地址到数据的信息部分,校验和等于所有参与校验数据的字符和的补码。


我们先说下具体的校验码怎么计算,然后说三菱plcLRC校验码程序的编写。


例子1

采用ASCII码模式控制变频器指令:01 03 21 00 00 01,这条指令中01一般是站号,03是读取命令,2100是参数地址(例如运行频率)00 01代表数据的个数。那么它的LRC校验码怎么计算:指令的数据是16进制的,和为:0x01+0x03+0x21+0x01=0x26,0x252的补码就是DA,具体计算就是取反加1,如:0x26=B0010,0110,取反后得到B1101,1001,加1得到B11011010=0xDA,那么LRC校验码就是DA


例子2

同样的控制变频器指令:03 06 00 03 27 10, 和为0x43,取反加10xBDLRC校验值就是BD。明白了它的计算过程接下来我们在PLC编写它的算法,我们知道在PLC的运算中都是十进制的,为了方便转换和计算,可采取另外一种方法(原理一样),我们知道ASCII码是2位的16进制数,取反过程可看做0xFF减去检验总和如上述的0x260x43,加1就变成0x100减去检验总和,转换成10进制的就是256(D)-(D),再经过ASCI指令转换成ACIIS码就可以了。以下面梯形图进行说明:


三菱PLC程序


使用RS指令向变频器发送命令,01 03 33 03 00 01,转换成16进制01 03 21 03 00 01这是一个读取频率的指令,LRC校验码的运算梯形图:


三菱PLC程序编写


使用一个变址寄存器Z0对数据D201D206进行累加求和D40,最后用K256减去41就是LRC校验码215,通过ASCI指令转换成ASCII码,通过查看扩展ASCII码表:


三菱PLC程序编写


21516进制为D7,与01+03 +21+ 03+ 00 +01=0x29=B00101001,取反加1得到11010111=0x(D7),结果一致。


上述就是关于三菱PLC中LRC校验码程序编写方法图解的全部内容了,更多三菱PLC程序编写请到海蓝机电网站阅读。海蓝机电三菱特级分销商,提供三菱PLC三菱变频器三菱触摸屏三菱伺服电机等自动化产品的销售,并为产品提供技术服务支持、机器人视觉、上位机软件、自动化开发、机电设备维修等服务。


海蓝机电为你提供机器人视觉、上位机软件、自动化开发、机电设备维修等技术服务

 

深圳市海蓝机电设备有限公司www.szhailan.com)专业经营:三菱PLC三菱伺服电机三菱变频器三菱触摸屏等工控自动化产品的批发和代理工作。

电话:0755-88356296(10线) 吴经理:13823726967 

 

本文原创自:深圳海蓝机电设备有限公司,转载请注明出处:http://www.szhailan.com/article/832.html.

评论信息

暂无留言!
发表评论
姓名:
内容:
验证码: 点击换一个 看不清?

1.尊重网上道德,遵守中华人民共和国的各项有关法律法规,不发表攻击性言论。
2.承担一切因您的行为而直接或间接导致的民事或刑事法律责任。
3.产品留言板管理人员有权保留或删除其管辖留言中的任意内容。
4.不支持HTML代码且留言要通过审核后才会显示,请勿恶意留言。