用户登陆 用户注册
您的位置:首页> 技术文章>内容正文
嵌入式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为扫描结

 2.3内存管理 esayv1.00的运行数据空间包括64k外部ram+256字节cpuram,将其分解为系统占用区、plc style="color: blue; text-decoration: underline" href="http://www.cechinamag.com/word/71317.aspx">plc资源区、用户嵌入数据区三部分。
 (1)系统占用区 系统占用区是easyv1.00运行时,进行数据缓存、状态保持、系 统堆栈等不对plc专题">plc及用户开设的域区。
这部分数据区的初始化运行中的监视都由实时os管理,plc及用户嵌入程序不得非法侵入。
 (2)plc专题">plc资源区 梯形图语言管理的数据区包括位区、字区两部分。
通常以元件形式体现。
 ?输入继电器x:x0-x177128点位型 ?输出继电器y:y0-y177128点位型 ?中间继电器m:m0-m15351536点位型 ?专用中间继电器m8000-m8255256点位型 ?状态继电器s:s0-s9991000点位型 ?时间继电器t:t0-t255256点位型+字型 ?计数器c:c0-c255256点位型+字型 ?通用数据寄存器d:d0-d79998000个字型 ?专用数据寄存器d:d8000-d8255256个字节 所有plc专题">plc资源是梯形图运行时进行数据存取的区域,是终端应用层可视化区域,用户嵌入的驱动程序,可使用对应元件的绝对地址进行存取,实现了嵌入程序与plc梯形图之间的数据交换。
 (3)用户嵌入数据区 当用户以easyv1.00内核设计各种嵌入系统时,需针对具体硬件做必要的驱动程序,该部分程序的私有数据存放于用户嵌入数据区,公有数据存放于plc专题">plc的资源区,用户嵌入数据区分配如下: cpu内部:位区(bitram):20h-23h4bytes 字节区(dram):58h-67h16bytes 外部数据存取器:字节区(xram):3600h-3fffh2560bytes 2.4梯形图语言 easyv1.00梯形图语言是一种解释性语言,每一条梯形图语句对应一个固定的函数调用,逐句扫描直至end为一个扫描周期,easyv1.00支持86条梯形图指令。
 (1)基本指令(27条) 助记符名称助记符名称 ld读取常开点ldf读取下降沿 ldi读取常闭点andp串接上升沿 and串入常开点andf串接下降沿 andi串入常闭点orp并接上升沿 or并入常开点orf并接下降沿 ori并入常闭点inv运算触点取反 anb电路块串联mps运算触点压栈 orb电路块并联mrd读出压栈触点 out线圈输出mpp弹出压栈触点 set线圈输出保持mc主控 rst清除线圈输出mcr主控结束 pls上升沿输出脉冲nop空操作 plf下降沿输出脉冲end程序结束 ldp读取上升沿 (2)步进顺控指令(2条) 助记符名称助记符名称 stl步进梯形图开始


网站首页培训课程维修指南
技术文章家电专栏供应信息
求购信息培训资讯展会信息
电脑专栏教程下载资料下载
常用软件PLC教程PLC资料
变频伺服低压电器维修资料
人机界面自控仪表工控机类
文章标题:搜文章
中国工控资源网手机版 2012
电话:010-67577139 13811659603
培训咨询QQ:657167934 471895637 销售咨询QQ:623769457
联系邮箱:zggkzyw@163.com
 京ICP备11002135号
报时(2026-04-02 20:52:21) 流量统计