原创 梯形图与指令表程序的相互转换

2010-7-13 23:20 7785 16 17 分类: MCU/ 嵌入式

 梯形图与指令表程序的相互转换


  1 梯形图转换成指令表


  梯形图转换成指令表是以梯级为单位进行的。


  对于没有并联支路的梯级,只要根据梯形图元素在梯级中的位置和元素的类型,即可将梯形图转换为指令表。对于包含有并联支路的梯级,可以按照遍历梯形图的方法,一边遍历一边转换。在转换过程中,首先设定1个全局变量nDepth(梯级深度),以确定梯级的深度,然后判断1个梯级是否包含并联支路。如果包含则调用包含有并联支路的转换程序,然后顺序读入当前梯级深度层次上的梯形图元素;如没有发现并联支路,则调用不含并联支路的转换程序依次转换。在转换过程中。每转换完1条支路就要添加1个ORB支路并联指令。


  在对整个梯形图程序进行转换时,首先生成nLine(行号)和nDepth 2个全局变量,然后从头开始进行转换,转换完1个梯级后。下1个梯级从第nLine(nLine=nLine+nDepth+1)行开始,直到梯形图文件结束为止。


  2 指令表转换成梯形图


  指令表转换成梯形图的过程就是根据PLC指令语句生成相应的梯形图元素链表的过程。因为梯形图和指令表程序是一一对应的关系,可按照语句对应生成相应的梯形图元素,利用在梯形图向语言表转换文件中已设计好的位图资源,建立标志符和位图之间的相应关系。转换时,将语句表以文件流的方式存入文本文件中,逐行分析,通过适当的算法处理,在视窗中画出对应的梯形图符号,直到文件结束。此外,在转换过程中,需要将程序划分为若干小节,每节对应梯形图中的1个梯级。在指令表中,梯级的划分可根据OUT指令来进行。串并联模块的划分可根据ANB和ORB指令进行。


 

文章评论1条评论)

登录后参与讨论

用户377235 2013-12-10 17:17

dfadsdssdsdfsddsdsdfdfdsfsdsdsddffssddfsdssddds
相关推荐阅读
用户816647 2013-04-15 08:43
PIC16F877A I2C 24C02 24C01 模拟端口
  #include <16F877A.h> #device adc=8   #FUSES NOWDT                    //No Watch Do...
用户816647 2011-11-14 10:35
三菱FX系列PLC手册
工控下载 - 首页 http://down.ymmfa.com/?type=fx 资料名称及链接 所需积分 ...
用户816647 2011-06-25 11:25
六个元件取3V---50V
其中你想要多少电压,D3  D4  选用相应的稳压二极管就可以。...
用户816647 2011-06-17 17:11
成功开发EMC扫频仪
扫频范围  2G  ...
用户816647 2011-04-24 22:01
网友的 USB 开发相关资料
PIC USB 相关网站 主要是mcuee网友收集的。 http://forum.microchip.com/tm.aspx?m=123533 PIC USB related web sites 转贴...
用户816647 2011-04-22 10:05
关于 CHM 文件不能打开或打开后没有索引列表的解决方法
总结方法可以尝试 regsvr32 hhctrl.ocx regsvr32 itss.dll regsvr32 itircl.dll      //  这个很重要,是关于全文搜索的...
我要评论
1
16
关闭 站长推荐上一条 /2 下一条