支持多种CPU构造PLC控制器的实现方法技术

技术编号:2770898 阅读:230 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种支持多种CPU构造PLC控制器的实现方法,本发明专利技术包括核心构造部分和应用设计两大部分。核心构造部分包括PLC指令框架、PLC引擎构造和CPU平台构造三部分,PLC指令框架实现PLC指令算法和汇编代码的转换,PLC引擎构造实现通用引擎的结构和框架定制,CPU构造实现各种CPU属性的定制和描述。应用设计部分包括硬件构造平台和软件设计平台两部分,硬件设计平台根据应用和核心部分的CPU构造,对各类硬件资源进行定制和描述,包括I/O、中断、定时器和可配置软元件等。软件设计平台实现IL指令编写和梯形图设计,向用户提供逻辑控制程序设计平台,用户逻辑控制程序和硬件构造平台对CPU的构造结果结合实现PLC控制器的定制开发。

Implementation method of PLC controller supporting multiple CPU construction

The invention discloses a method for realizing a PLC controller supporting a plurality of CPU structures. The invention comprises two parts: a core construction part and an application design. The core structure includes a PLC directive framework, PLC engine structure and CPU platform structure of three parts, PLC directive framework to transform the PLC algorithm and instruction assembly code, the PLC engine structure realizes the structure and framework of custom engine, CPU structure of the various CPU attributes and custom description. The application design part includes two parts of hardware platform and software platform structure design, hardware design platform based on CPU structure and application of the core part, the customization and description of all kinds of hardware resources, including I / O, interrupt, timer and configurable software components etc.. The IL instruction compilation and ladder design software design platform, provides the logic control program design platform to the user, the user logic control program and the hardware structure of CPU platform structure with the results of the custom developed PLC controller.

【技术实现步骤摘要】

本专利技术涉及PLC控制器构造技术,特别地,涉及一种支持多种CPU构造 PLC控制器的实现方法。
技术介绍
作为现代工业控制设备三大支柱之一的可编程逻辑控制器(Progmmmable Logic Controller, PLC),以其较高的性价比在工业控制中得到广泛应用。但是, 由于可编程逻辑控制器中采用嵌入式芯片,控制程序只能针对PLC采用的特定 芯片进行幵发。由于嵌入式芯片品牌和型号的多样性,使得用户程序移植困难, 在更换了嵌入式芯片后,需要重复开发控制程序,使得开发效率低。
技术实现思路
本专利技术的目的在于针对现有技术的不足,提供一种支持多种CPU构造PLC 控制器的实现方法,提高效率。本专利技术的目的是通过以下技术方案来实现的 一种支持多种CPU构造PLC 控制器的实现方法,包括以下步骤(1) 实现指令翻译框架,实现IL或梯形图向汇编指令的转换;(2) 根据通用引擎和针对CPU的引擎定制实现引擎构造;(3) 选择CPU,根据应用通过图形界面配置硬件资源;(4) 用户根据应用设计逻辑控制程序;(5) 代码框架融合用户设计的逻辑控制程序生成可执行文件。 本专利技术的有益效果是通过支持多种CPU构造PLC控制器的实现方法快速实现基于各种CPU的PLC控制器的开发,提高开发效率,方便控制程序在不同CPU平台的移植。附图说明图1是本专利技术支持多种CPU构造PLC控制器的软件实现方法结构框图2是基于支持多种CPU构造PLC控制器的软件实现方法设计流程图。具体实施例方式本专利技术为解决上述问题而提供一种支持多种CPU构造PLC控制器的软件实 现方法,分为核心部分和应用设计两大部分。核心部分实现指令框架、通用引 擎构造和CPU构造,实现硬件基础平台的构建。应用设计针对特定应用对首先 对硬件基础平台进行定制,选择需要用到的硬件资源和设置各类硬件参数,定 制部分通过条件编译技术和核心部分的硬件基础平台共同编译得到应用的代码 框架。然后用户根据实际的控制需要,通过IL或梯形图,设计逻辑控制程序, 代码框架和用户设计的逻辑控制程序编译后得到针对具体应用的PLC控制程 序,控制程序以二进制的方式通过BootLoader方式下载运行。指令框架部分实现了 PLC算法指令到不同CPU汇编指令的转变,系统提供 了指令翻译框架,用户只要根据系统要求格式提供指令翻译规则宏库,系统自 动实现PLC算法指令到各种CPU平台下汇编指令的转换。引擎构造实现通用引擎的描述,包括初始化、定时器、中断、通信等。通 用引擎包括了各类CPU共有的属性和框架,为针对特定CPU的引擎构造提供统 一的结构。CPU构造针对特定CPU平台,设置CPU的各类硬件参数,包括数据总线、 输入输出端口数量和类型、定时器、PWM路数、串口、 SPI 口、 12C等。CPU 构造信息注入通用引擎,实现针对CPU的特定引擎的构造。应用控制部分的设计平台,向用户提供IL或梯形图设计环境,用户根据具 体的控制需要设计逻辑控制程序,系统根据用户的设计结果将HL或梯形图程序 按转换成汇编指令,和核心部分及硬件构造部分生成的指令共同编译成可执行 文件。本专利技术提供一种嵌入式软件自动生成技术和方法,结构参见图l,设计流程 参见图2。首先实现指令翻译框架,实现IL或梯形图向汇编指令的转换(步骤 101),根据通用引擎和针对CPU的引擎定制实现引擎构造(步骤102);选择 CPU,根据应用通过图形界面配置硬件资源(步骤103);用户根据应用设计逻辑控制程序(步骤104);代码框架融合用户设计的逻辑控制程序生成可执行文件(步骤105)。开放式的指令翻译框架,实现各类指令向汇编指令的转换。系统提供宏框 架接口,在宏中定义了指令翻译规则,系统根据宏定义实现指令翻译,包括指令功能和参数表示规则。当更换了其他CPU后,只需替换相应的宏框架,即可 实现针对选择CPU的指令翻译。通过对CPU的硬件属性设置实现CPU的构造,包括数据总线、输入输出端 口数量和类型、定时器、PWM路数、串口、 SPI 口、 12C和外部中断个数进行 设置。数据总线设置主要设置其数据宽度,包括8位、16位和32位等。端口属 性设置端口类型、端口个数、数据输入和输出特性,端口类型包括数字型和字 符型,输入和输出特性包括1~5次型。定时器设置首先设置用到的定时器个数, 对每个定吋器设置其PWM路数和是否硬件技术。根据CPU构造信息生成引擎框架,包括各类CPU相关资源定义。主体部分 实现快速、慢速、lms定时器、10ms定时器、100ms定时器和1000ms定时器 操作。通过文件实现端口定义和端口操作两部分,根据不同CPU进行定义如下a. 真正CPU输入口数据寄存器重新映射PLCIN000—PLCIN***,如该CPU 输入口为多次型输入口 (即一次输入操作,需要对应多个寄存器),则需重新映 射所有输入数据寄存器PLCIN000R0 — PLCIN000R* , PLCIN000R0 — PLCIN* **R*;b. 真正CPU输入口输入配置寄存器重新映射(可选),PLCINCFGOOO— PLCINCFG***,如该CPU输入配置为多次型配置口 (即配置输入操作,需要对 应多个寄存器),则需重新映射所有输入配置寄存器PLCINCFGO00CO — PLCINCFGOOOC* , PLCINCFG000C0—PLCINCFG**";c. 真正CPU输出口数据寄存器重新映射PLCOUT000—PLCOUP"^,如该 CPU输出口为多次型输出口 (即一次输出操作,需要对应多个寄存器),则需重 新映射所有输出数据寄存器PLCOUT000S0—PLCOUT000S*, PLCOUTOOOSO— PLCOUT000***S*;d. 真正CPU输出口输出配置寄存器重新映射(可选),PLCOUTCFG000 —PLCOUTCFG***,如该CPU输出配置为多次型配置口 (即配置输出操作,需 要对应多个寄存器),则需重新映射所有输入配置寄存器PLCOUTCFGOOOCO— PLCOUTCFG000C*, PLCOUTCFG000C0—PLCOUTCFG000***C*;e.如是当前是编写中/大型系统引擎,则还需进行CASS端口映射工作, 中型系统,PLCMIDIN000—PLCMIDIN007映射为该端口译码值,大型系统, PLCMIDINOOO—PLCMIDIN007映射为该端口对应的地址空间。 端口操作代码分成以下几个部分a. 将整个直接CPU端口 PLCPORT配置成输入的宏定义#defme CfglnputPort(PLCPORT) ... PLCPORT为相应的输入端口配置寄存器b. 将整个直接端口 PLCPORT配置成输出Mefme CfgOutputPort(PLCPORT) ...PLCPORT为相应的输出端口配置寄存器c. 将直接CPU端口 PLCPORT第PROTNUM个管脚配置成输入 MefmeCfglnputPortBit(PLCPORT,PROTNUM) …d. 将直接端口 PLCPORT第PROTNUM个管脚配置成输出 #defme CfgOutputPortBit(PLCPORT,PROTNUM)...e. 将直接CPU端本文档来自技高网...

【技术保护点】
一种支持多种CPU构造PLC控制器的实现方法,其特征在于,包括以下步骤:    (1)实现指令翻译框架,实现IL或梯形图向汇编指令的转换。    (2)根据通用引擎和针对CPU的引擎定制实现引擎构造。    (3)选择CPU,根据应用通过图形界面配置硬件资源。    (4)用户根据应用设计逻辑控制程序。    (5)代码框架融合用户设计的逻辑控制程序生成可执行文件。

【技术特征摘要】

【专利技术属性】
技术研发人员:严义赵建勇
申请(专利权)人:杭州义益自动化有限公司
类型:发明
国别省市:86[中国|杭州]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1