开放式PLC的概念及设计
目前,国内用户选用的可编程控制器(PLC)仍以国外产品为主,造成这种局面的一个重要原因是欧、美、日等发达工业了PLC的核心技术,其硬技术对应用者来说完全是封闭的,使用者只能从应用的角度学习PLC,而不能参与PLC的[1-2]。近年来,IEC61131-3的颁布和实施为各PLC生产厂家提供了统一的准则,开放的单片机技术的发展,为硬件提供了有效的基础[3]。在这样的背景下,研制开放的PLC无论对于科学研究还是促进PLC行业的发展都有积极的现实意义。
PLC是一种于工业控制的计算机,其硬件主要由处理器、存储器、输入/输出接口等组成[4],其硬件结构如图1所示。
1 开放式可编程控制器
开放式PLC硬件结构采用CPU+模块+接口构成,各个接口都按设计,大大了PLC的开放性,使其能方便地与大连接。编程语言遵循IEC61131-3,并将基于PC的编程作为PLC编程工具。硬件部分采用51内核处理器STC89C51,其为模块化设计,采用滤波、隔离电路,以成本。主要电路有:微控制器STC89C51RC、开关量输入电路、继电器输出电路、晶体管输出电路、RS232通信接口电路、电源电路、时钟复位电路和U通信接口电路等,PLC硬件框图如图2所示,采用Borland公司集成C++ Builder,通过集成平台对51内核处理器指令集进行解释、编译,使梯形图语言转换为能被51内核处理器识别的代码。
2 硬件设计
可编程控制器单片机部分电路图如图3所示。
U通信部分选择Philips公司的PDIUD12[5]芯片作为的U接口器件,片内集成了U接口电路、SIE、FIFO存储器、收发器以及电压器等,可与任何外部控制器或微处理器实现高速并行通信,其速率为2 Mb/s,完够设计所要求的数据传输速度。U通信接口模块电路如图4所示。
3 设计
结构如图5所示。图中,编辑模块为用户提供编辑,接收用户的梯形图程序输入,并将其存储为相应的文件。梯形图语言为一种图形语言,要直接对其进行编译十分困难,因此并不是直接对梯形图程序进行编译,而是先将其翻译成指令语言的文本形式,再对指令语言进行编译。图形语言编译问题的解决,了代码的利用率[6-7]。通过提取数据结构中的数据,形成C语言程序文件,经过C51编译器、连接器、转换器的编译、连接、转换,生成能够在PLC硬件上运行的可执行文件。
3.1 用户界面
PLC用户界面是实现可编程人机交互的重要部分,它以梯形图语言的形式录入用户控制程序,以二进制形式通过串口下载到PLC硬件,其梯形图表示的用户编程区如图6所示。
PLC在进行逻辑运算之前,对外部进行采样[8],若要实现指令的功能,要设置外部I/O在梯形图中的地址,才能够对用户程序中所使用的I/O地址与单片机的引脚地址相匹配。本设计在I/O设置对话框底层设计了如表1所示的数据处理函数。
3.2 U通信
PDIUD12的固件设计成完全的中断驱动,当CPU处理前台任务时,U的传输可在后台进行;后台中断服务程序和前台主程序循环之间的数据交换可以通过事件标志和数据缓冲区来实现。当PDIUD12从U收到一个数据包,即对CPU产生一个中断请求,CPU立刻响应中断。在中断服务程序中,固件将数据包从PDIUD12内部缓冲区移到循环数据缓冲区,并将PDIUD12的内部缓冲区清零,以便接收新的数据包,使CPU可以继续执行当前的前台任务直到完成。本文利用PDIUD12的端点1进行命令的传输和应答,端点1每次接收计算机发送过来的8 B指令,其指令格式如表2所示。例如,接收到十六进制码52 01 00 03 00 07 00 50,表示读24C01器件从03字节开始的7个字节的数据。52H为R的ASCII码,57H为W的ASCII码。端点2用于数据的传输。
本文在了解PLC国内外研究状况以及其市场需求的基础上,提出了研发开放式PLC的概念,完成了PLC集成的C51模块实现方案的设计,将U通信引入PLC领域,所设计的梯形图编辑器提供了梯形图编辑平台,实现了PLC的基本逻辑指令,完成计算机与控制器的U通信
- 山东泰安西门子PLC模块授权代理商 2024-11-21
- 山东济宁西门子PLC模块授权代理商 2024-11-21
- 山东潍坊西门子PLC模块授权代理商 2024-11-21
- 山东烟台西门子PLC模块授权代理商 2024-11-21
- 山东东营西门子PLC模块授权代理商 2024-11-21
- 山东枣庄西门子PLC模块授权代理商 2024-11-21
- 山东淄博西门子PLC模块授权代理商 2024-11-21
- 山东青岛西门子PLC模块授权代理商 2024-11-21
- 山东济南西门子PLC模块授权代理商 2024-11-21
- 辽宁葫芦岛西门子PLC模块授权总代理商 2024-11-21