论文部分内容阅读
可编程逻辑控制器(Programmable Logic Controller, PLC)被广泛用于解决复杂的工业控制问题,LD梯形图是其编程语言之一。高速高精度一直是PLC的性能追求,但由于PLC使用微控制器作为核心,遵循冯诺依曼体系,所以要提高响应速度就必须降低扫描周期,选择使用更高主频的CPU是一种直接方法,但是这样仅将问题转移到了CPU的瓶颈上。借鉴GPU的思想,对控制程序的执行结构作分析改进,将程序串行执行体系提升为并行执行的体系,选择具有程序并发执行特性的VHDL语言,开发纯硬件hardware PLC是一种可行方法。通过研读国内外研究学者有关PLC并行编译、LD/Petri网向逻辑电路转换等论文,参考部分理论基础,该课题提出一种指令并行化执行的PLC实现方案,初步设计了系统的硬件结构组织形式并着力于其核心控制器的实现。具体设计内容包含如下:(1)提出LD向VHDL转换的总体思路,如构建同比于三段式扫描机制的VHDL控制程序框架;将LD抽象为逻辑表达式集合,每个表达式对应一个单输出梯级,设计算法实现逻辑表达式集合向VHDL代码的转换。(2)对LD整体进行分析。讨论其存在的依赖关系及分解方法,从而建立LD并发执行模型,为并行PLC奠定基础。(3)对LD局部进行分析。参考有向图理论,将每个梯级抽象为AOV图,设计专用算法实现AOV图到布尔逻辑表达式的转换,得到每个梯级的初步逻辑表达式,所有梯级的逻辑表达式及其位置信息共同构成LD的完整逻辑表达。(4)在hardware PLC上实现LD的指令集。将LD的指令集按照执行机制的差异划分为以下四大类:流程控制指令(跳转指令等)、基本指令(置位/复位指令等),常用指令(定时器、计数器等)、功能指令(传送指令、算术/逻辑运算指令等),并说明各类指令的不同VHDL设计实现方法。(5)建立LD到VHDL转化的语法规则库、词法规则库。以上5个部分相结合可得到LD对应的VHDL控制程序,将程序下载至FPGA等芯片上,即可实现纯硬件逻辑的hardwarePLC。对于LD的并行编译及硬件逻辑实现问题,国内外还没有成熟的设计方案。指令并行执行的PLC系统,仍处于初级探索阶段,离商业化应用还有较大距离。该课题提出一种基于VHDL语言的、指令并行的hardware PLC的实现方法,希望对此领域的进一步研究具有一定的参考价值。