用户登陆 用户注册
您的位置:首页>
技术文章>内容正文
嵌入式PLC——Embedded Type PLC
[正文]:able>互连、表达、算法等方面优势明显,单片机系统在成本控制上更加灵活。
ipc由于加载了操作系统(如nt)其实时性、稳定性难以满足连续控制的苛刻要求,通常用于监控。
低层通常用plc。
单片机系统将硬件管理和用户工艺流程控制混在一起,制约了它的标准化,并最终失去成本竞争优势。
嵌入式plc专题">plc正是面向ipc和单片机系统开发的,它保留了plc(借助梯形图语言)硬件管理和工艺控制分离的优势,结合ipc和单片机提供的更个性化、差异化的设计方法,形成一种新的控制器设计理念。
当我们在ipc中嵌入plc的功能时,我们称之为基于pcbase的嵌入式plc,当我们在单片机中嵌入plc功能时,我们称它为基于allonone的嵌入式plc(片级嵌入plc)。
未特别说明时,嵌入式plc指片级嵌入式plc,也就是本文提出的嵌入式plc。
以下描述以8位单片机c8051f040为硬件的以科威公司easyv1.00版嵌入式plc软件架构。
目前,关于专用plc专题">plc有软plc和客制式plc两种。
软plc指高端嵌入的含通用实时操作系统的plc软件,客制式plc是指根据用户需求定向设计的plc。
相关技术在德国、台湾、南韩均有突破,属于嵌入式plc的范畴。
2嵌入式plc专题">plc软件架构 2.1总体结构 easyv1.00嵌入式plc专题">plc是一种实时性很强的操作系统软件,总体结构包括三个层面,如图1所示。
(1)嵌入式plc专题">plc内核它完成实时任务调度,梯形图语言解释、执行、通讯等基本功能,并提供二次开发驱动接口; (2)二次开发程序通过内核提供的外挂任务,使用内核开发各种面向具体对象个性化差异化的驱动程序; (3)终端应用程序指面向工艺流程控制的梯形图语言编程; 对于二次开发人员开发面向个性化对象的驱动程序,必须了解嵌入式plc专题">plc内核结构,尤其是驱动接口设计方法,下面分块介绍内核的各块功能。
2.2实时os 面向小型单片机,一般的实时操作系统无法加载,os/ⅱ占用了过多的资源,easyv1.00内核根据任务的类别、实时要求、定制了一款专用实时os,它无文件系统和内存管理两部分。
(1)硬实时状态下的抢占式并发任务管理 easyv1.00内核提供2.5ms基准时基,它作为一种不可剥夺的任务循环执行用于各类任务的监控管理。
对于工控应用中的异步事件采用并发式任务管理,通过各类中断抢占任务的挂起、执行,每类异步任务执行前,在2.5ms任务中注册,执行后注销,通过2.5ms时基监控并发任务的流量及阻塞状况并报字到上一级任务调度。
(2)easyv1.00中异步任务 ?通信数据链络层的字节流 ?梯形图语言中的定时器 ?二次开发驱动程序中的实时异步任务 并发任务管理是easyv1.00中最低层的任务管理,达到ms级实时效果,单位时间内(1ms)占用cpu机时峰值为: t并= ni——1ms内任务的最大执行次数,ti——任务的一次执行最大时间。
easyv1.00并发任务实时数据见表1、表2。
表1easyv1.00并发任务实时数据 任务类别不可剥夺任务通信字节流任务梯形图定时器驱动并发任务 2.5ms时基串口0串口1can 执行次数(n1)11111nd 执行时间(t)10μs+δt25μs25μs50μs40μstd 表2easyv1.00并发任务实时数据 任务类别梯形图通讯函数调用用户软中断 任务个数131m4 任务时间1-20μs1-10μs1-5μst4 t片=3-45μs+t4 t4为用户软中断任务占用时间和。
“扫描周期”指解释、执行所有梯形图指令并执行扫描结束处理所占用的时间,由于这期间有并发任务产生,“扫描周期”应包括并发任务占用时间。
并发任务占用比: x=t并/1ms=(150μs+δt+)/1000μs=15%-100% 设用户梯形图含m条指令 t扫=(m?t片+δtend)/x δtend为扫描结