论文部分内容阅读
梯形图(LD)拥有直观形象、简单易用、易于掌握等特点,是可编程控制器(PLC,Programable Logic Controller)上控制算法实现的主要方式。它在控制器上的执行采用“从上到下,从左至右”的周期扫描机制,扫描周期的长短是衡量性能的主要指标,而它主要取决于软件开发平台编译出的代码质量。代码中存在的许多无效指令造成了处理器资源的浪费,降低了系统的响应速度。国内外主要通过提高处理器的处理速度来解决这一问题,但这势必会增加成本。而对开发平台的编译算法优化以减少处理器对无效指令的执行,这种方法不仅可以有效避免这一问题,而且具有很强的普适性。论文通过对CASS-ePLC控制算法生成平台的编译算法进行优化,有效的减少了处理器对无效指令的执行,缩短了ePLC的扫描周期,提高了ePLC的性能。论文对ePLC的控制算法代码编译成IL指令的过程及其无效指令的优化方法作了较为深入的研究,主要完成了以下工作:(1)研究了国内外控制器性能优化相关文献以及IEC61131-3标准中梯形图相关的描述,提出了ePLC的控制算法代码优化的算法框架。(2)提出了一种将控制算法中抽象出的AOV图(Activity on Vertex)结构转化成逻辑表达式的方法以及AOV图的层次分析算法。通过对AOV图中的结点进行串并规约的操作,得到AOV图对应的逻辑表达式。通过遍历逻辑表达式,得出AOV图的层次关系。(3)基于AOV图层次关系的交换性质和结合性质,提出了单个AOV图的自重构算法和多个AOV图的合并重构算法。自重构算法通过从逻辑表达式得出的层次关系对单个AOV图的结点重新排序或重组,使AOV图的逻辑更加清晰。合并重构算法通过分析多个AOV图间的流依赖关系,对不存在流依赖关系的AOV图进行合并,减少AOV图的数量。(4)分析AOV图编译产生无效指令的原因,提出了一种通过改变ePLC程序控制流程减少无效指令执行的优化方法。将原来的顺序执行流程改成最优跳转执行流程,减少了无效指令的执行,使得IL指令的扫描周期更短,运行效率高。论文最后对多轴全自动绕线机、间歇式发泡机等控制系统的控制算法代码进行了优化实验,实验结果表明,论文提出的优化方法明显缩短了PLC的扫描周期,提高了系统的响应速度。