7
西门子模块6ES7315-2AH14-0AB0功能介绍
PLC和DCS在有些方面是相同的,但是区别还是很明显的,只要表现在以下的几个方面。
1.DCS是一种“分散式控制系统”,而PLC(可编程控制器)只是一种控制“装置”,两者是“系统”与“装置”的区别。系统可以实现任何装置的功能与协调,PLC装置只实现本单元所具备的功能。
2.在网络方面,DCS网络是整个系统的神经,它是双冗余的高速通讯网络,系统的拓展性与开放性好。而PLC因为基本上都为个体工作,其在与别的PLC或上位机进行通讯时,所采用的网络形式基本都是单网结构,网络协议也经常与标准不符。在网络上,PLC没有很好的保护措施。我们采用电源,CPU,网络双冗余。
3.DCS整体考虑方案,操作员站都具备工程师站功能,站与站之间在运行方案程序下装后是一种紧密联合的关系,任何站、任何功能、任何被控装置间都是相互连锁控制,协调控制;而单用PLC互相连接构成的系统,其站与站(PLC与PLC)之间的联系则是一种松散连接方式,是做不出协调控制的功能。
4.DCS在整个设计上就留有大量的可扩展性接口,外接系统或扩展系统都十分方便,PLC所搭接的整个系统完成后,想随意的增加或减少操作员站都是很难实现的。
5.DCS性:为保证DCS控制的设备的,DCS采用了双冗余的控制单元,当重要控制单元出现故障时,都会有相关的冗余单元实时无扰的切换为工作单元,保证整个系统的。
PLC所搭接的系统基本没有冗余的概念,就谈不上冗余控制策略。特别是当其某个PLC单元发生故障时,不得不将整个系统停下来,才能进行换维护并需重新编程。所以DCS系统要比其性上高一个等级。
6.系统软件,对各种工艺控制方案新是DCS的一项基本的功能,当某个方案发生变化后,工程师只需要在工程师站上将改过的方案编译后,执行下装命令就可以了,下装过程是由系统自动完成的,不影响原控制方案运行。系统各种控制软件与算法可以将工艺要求控制对象控制精度提高。
而对于PLC构成的系统来说,工作量其庞大,需要确定所要编辑新的是哪个PLC,然后要用与之对应的编译器进行程序编译,后再用的机器(读写器)专门一对一的将程序传送给这个PLC,在系统调试期间,大量增加调试时间和调试成本,而且其不利于日后的维护。在控制精度上相差甚远。这就决定了为什么在大中型控制项目中(500点以上),基本不采用全部由PLC所连接而成的系统的原因。
7.模块:DCS系统所有I/O模块都带有CPU,可以实现对采集及输出信号品质判断与标量变换,故障带电插拔,随机换。而PLC模块只是简单电气转换单元,没有智能芯片,故障后相应单元全部瘫痪。
8.现在的PLC与DCS的功能已经差不多,DCS对网络和分布式数据库还要定时扫描有较强的功能,同时对运算和模拟量的处量比较拿手。
9.PLC还分大、中、小、微PLC,其中的只卖几百块到2000块,点数也好少,大型的可以带数千点,运算能力与DCS差不多,但对多机联网功能较弱。现在两个技术平台都差不多,只是不一样。
PLC在生产中具有很重要的很重要的用途,主要有CPU,I/O模块,编程器,存储器,电源等几部分组成,下面就介绍一下它各个部分的作用。
1.CPU——是PLC的部分
与通用微机CPU一样,CPU在PC系统中的作用类似于人体的神经。其功能:
(1)用扫描方式(后面介绍)接收现场输入装置的状态或数据,并存入输入映象寄存器或数据寄存器;
(2)接收并存储从编程器输入的用户程序和数据;
(3)诊断电源和PC内部电路的工作状态及编程过程中的语法错误;
(4)在PC进入运行状态后:
a)执行用户程序——产生相应的控制信号(从用户程序存储器中逐条读取指令,经命令解释后,按指令规定的任务产生相应的控制信号,去启闭有关的控制电路)
b)进行数据处理——分时、分渠道地执行数据存取、传送、组合、比较、变换等动作,完成用户程序中规定的逻辑或算术运算任务
c)新输出状态——输出实施控制(根据运算结果,新有关标志位的状态和输出映象寄存器的内容,再由输入映象寄存器或数据寄存器的内容,实现输出控制、制表、打印、数据通讯等)
2.存储器
系统程序存储器——存放系统工作程序(监控程序)、模块化应用功能子程序、命令
解释、功能子程序的调用管理程序和系统参数
*不能由用户直接存取
用户存储器用户程序存储器——存放用户程序。即用户通过编程器输入的用户程序。
功能存储器(数据区)——存放用户数据
PC的用户存储器通常以字(16位/字)为单位来表示存储容量。
注意:系统程序直接关系到PC的性能,不能由用户直接存取,所以,通常PC产品资料中所指的存储器形式或存储方式及容量,是指用户程序存储器而言。
3.I/O(输入/输出部件)
CPU与现场I/O装置或其他外部设备之间的连接部件。PLC提供了各种操作电平与驱动能力的I/O模块,以及各种用途的I/O组件供用户选用:
输入/输出电平转换
电气隔离
串/并行转换
数据传送
A/D、D/A转换
误码校验
其他功能模块
I/O模块可与CPU放在一起,也可远程放置。通常,I/O模块上还具有状态显示和I/O接线端子排。
4.编程器等外部设备
编程器——PLC开发应用、监测运行、检查维护不可缺少的工具
作用:用于用户程序的编制、编辑、调试、检查和监视
通过键盘和显示器去检测PLC内部状态和参数
通过通讯端口与CPU联系,实现与PLC的人机对话
分类:简单型——只能联机编程;只能用指令清单编程
智能型——既可联机(Online),也可脱机(Offline)编程;可以采用指令清单(语句表)、梯形图等语言编程。常可直接以电脑作为编程器,安装相关的编程软件编程
注意:编程器不直接加入现场控制运行。一台编程器可开发、监护许多台PLC的工作。
其他外设:磁盘、光盘、EPROM写入器(用于固化用户程序)、打印机、图形监视系统或上位计算机等等。
5.电源
内部——开关稳压电源,供内部电路使用;大多数机型还可以向外提供DC24V稳压电源,为现场的开关信号、外部传感器供电。
外部——可用一般工业电源,并备有锂电池(备用电池),使外部电源故障时内部重要数据不致丢失。
在现代化的工业生产设备中,有大量的数字量及模拟量的控制装置,例如电机的起停,电磁阀的开闭,产品的计数,温度、压力、流量的设定与控制等,工业现场中的这些自动控制问题,若采用可编程序控制器(PLC)来解决自动控制问题已成为有效的工具之一,本文叙述PLC控制系统设计时应该注意的问题。
该文指出PLC控制系统设计,硬件要确定PLC单机还是PLC网络,80点以内的系统选用不须扩展模块的PLC单机,PLC输入输出点数要留有10%余量,存储容量和指令执行速度是重要指标,手持编程器易于现场调试,选用大公司的PLC产品;输入回路中电源为AC85—240V、DC24V时,应加装电源净化元件,PLC内、外接DC24V“一”端和“COM”端不共接;输出回路中输出方式:继电器输出适用于不同公共点间带不同交、直流负载,电流达2A/点;晶体管输出适宜高频动作,响应时间0.2ms。每个“COM”点加一熔丝。用手持编程器编程先画梯形图再编程。
硬件选购目前市场上的PLC产品众多,除国产外,国外有:日本的OMRON、MITSUBISHI、FUJJ、anasonic,德国的SIEMENS,韩国的LG等。近几年,PLC产品的价格有较大的下降,其性价比越来越高,这是众多技术人员选用PLC的重要原因。那么,如何选购PLC产品呢?
1.系统规模应确定系统用PLC单机控制,还是用PLC形成网络,由此计算PLC输入、输出点。数,并且在选购PLC时要在实际需要点数的基础上留有一定余量(10%)。
2.确定负载类型根据PLC输出端所带的负载是直流型还是交流型,是大电流还是小电流,以及PLC输出点动作的频率等,从而确定输出端采用继电器输出,还是晶体管输出,或品闸管输出。不同的负载选用不同的输出方式,对系统的稳定运行是很重要的。
3.存储容量与速度尽管国外各厂家的PLC产品大体相同,但也有一定的区别。目前还未发现各公司之间兼容的产品。各个公司的开发软件都不相同,而用户程序的存储容量和指令的执行速度是两个重要指标。一般存储容量越大、速度越快的PLC价格就越高,但应该根据系统的大小合理选用PLC产品。
4.编程器的选购PLC编程可采用三种方式:
一是用一般的手持编程器编程,它只能用商家规定语句表中的语句编程。这种方式效率低,但对于系统容量小,用量小的产品比较适宜,并且体积小,易于现场调试,造价也较低。
二是用图形编程器编程,该编程器采用梯形图编程,方便直观,一般的电气人员短期内就可应用自如,但该编程器价格较高。
三是用IBM个人计算机加PLC软件包编程,这种方式是效率的一种方式,但大部分公司的PLC开发软件包价格昂贵,并且该方式不易于现场调试。
因此,应根据系统的大小与难易,开发周期的长短以及资金的情况合理选购PLC产品。
5.尽量选用大公司的产品其质量,且技术支持好,一般售后服务也较好,还有利于你的产品扩展与软件升级。
输入回路的设计
1.电源回路PLC供电电源一般为AC85—240V(也有DC24V),适应电源范围较宽,但为了抗干扰,应加装电源净化元件(如电源滤波器、1:1隔离变压器等)。
2.PLc上DC24V电源的使用各公司PLC产品上一般都有DC24V电源,但该电源容量小,为几十毫安至几百毫安,用其带负载时要注意容量,同时作好防短路措施(因为该电源的过载或短路都将影响PLC的运行)。
3.外部DC24V电源若输入回路有DC24V供电的接近开关、光电开关等,而PLC上DC24V电源容量不够时,要从外部提供DC24V电源;但该电源的“—”端不要与PLC的DC24V的“—”端以及“COM”端相连,否则会影响PLC的运行。
4.输入的灵敏度各厂家对PLC的输人端电压和电流都有规定,如日本三菱公司F7n系列PLc的输入值为:DC24V、7mA,启动电流为4.5mA,关断电流小于1.5mA,因此,当输入回路串有二管或电阻(不能启动),或者有并联电阻或有漏电流时(不能切断),就会有误动作,灵敏度下降,对此应采取措施。另一方面,当输入器件的输入电流大于PLC的大输入电流时,也会引起误动作,应采用弱电流的输入器件,并且选用输人为共漏型输入的PLC,Bp输入元件的公共点电位相对为负,电流是流出PLC的输入端。
输出回路的设计
1.各种输出方式之间的比较
(1)继电器输出:优点是不同公共点之间可带不同的交、直流负载,且电压也可不同,带负载电流可达2A/点;但继电器输出方式不适用于高频动作的负载,这是由继电器的寿命决定的。其寿命随带负载电流的增加而减少,一般在几十万次至Jl百万次之间,有的公司产品可达1000万次以上,响应时间为10ms
(2)晶闸管输出:带负载能力为0.2A/点,只能带交流负载,可适应动作,响应时间为1ms.
(3)晶体管输出:大优点是适应于高频动作,响应时间短,一般为0.2ms左右,但它只能带DC5—30V的负载,大输出负载电流为0./点,但每4点不得大于0.8A。
当你的系统输出频率为每分钟6次以下时,应继电器输出,因其电路设计简单,抗干扰和带负载能力强。当频率为10次/min以下时,既可采用继电器输出方式;也可采用PLC输出驱动达林顿三管(5—10A),再驱动负载,可大大减小电流。
2.抗干扰与外部互锁当PLC输出带感性负载,负载断电时会对PLC的输出造成浪涌电流的冲击,为此,对直流感性负载应在其旁边并接续流二管,对交流感性负载应并接浪涌吸收电路,可有效保护PLC。
当两个物理量的输出在PLC内部已进行软件互锁后,在PLC的外部也应进行互锁,以加强系统的性。
3.“GOM“点的选择不同的PLC产品,其“COM”点的数量是不一样的,有的一个“COM”点带8个输出点,有的带4个输出点,也有带2个或1个输出点的。当负载的种类多,且电流大时,采用一个“COM”点带1—2个输出点的PLC产品;当负载数量多而种类少时,采用一个“COM”点带4—8个输出点的PLC产品。这样会对电路设计带来很多方便,每个“COM”点处加一熔丝,1—2个输出时加2A的熔丝,4—8点输出的加5—10A的熔丝,因PLC内部一般没有熔丝。
4.PLC外部驱动电路对于PLC输出不能直接带动负载的情况下,在外部采用驱动电路:可以用三管驱,也可以用固态继电器或晶闸管电路驱动,同时应采用保护电路和浪涌吸收电路,且每路有显示二管(LED)指示。印制板应做成插拔式,易于维修。
PLC的输入输出布线也有一定的要求,请看各公司的使用说明书。
扩展模块的选用
对于小的系统,如80点以内的系统.一般不需要扩展;当系统较大时,就要扩展。不同公司的产品,对系统总点数及扩展模块的数量都有限制,当扩展仍不能满足要求时,可采用网络结构;同时,有些厂家产品的个别指令不支持扩展模块,因此,在进行软件编制时要注意。当采用温度等模拟模块时,各厂家也有一些规定,请关的技术手册。
各公司的扩展模块种类很多,如单输入模块、单输出模块、输入输出模块、温度模块、高速输入模块等。PLC的这种模块化设计为用户的产品开发提供了方便。
PLC的网络设计
当用PLC进行网络设计时,其难度比PLC单机控制大得多。你应选用自己较熟悉的机型,对其基本指令和功能指令有较深入的了解,并且指令的执行速度和用户程序存储容量也应仔细了解。否则,不能适应你的实时要求,造成系统崩溃。另外,对通信接口、通信协议、数据传送速度等也要考虑。
后,还要向PLC的商家寻求网络设计和软件技术支持及详细的技术资料,至于选用几层工作站,依你的系统大小而定。
软件编制
在编制软件前,应熟悉所选用的PLC产品的软件说明书,待熟练后再编程。若用图形编程器或软件包编程,则可直接编程,若用手持编程器编程,应先画出梯形图,然后编程,这样可少出错,速度也快。编程结束后先空调程序,待各个动作正常后,再在设备上调试。



在过去的几十年里,可编程逻辑控制器(PLC)一直被广泛用于自动化领域,而在可预知的未来,PLC仍将长盛。面向离散控制而设计PLC的实际上已经成为工业领域一个具有伟大意义的统治性工具。
目前很多现代化的工业应用需要多的功能要求,如网络连接、设备互用、企业数据集成等,这些都远远过了传统的、基于离散-逻辑控制的PLC所能提供的功能。想要基于PLC的系统实现这些功能,用单的处理器、网关或转换器、运行于立PC的软件中间件以及企业系统级的软件进行综合系统集成。在一家PAC供应商的网站上,有这样一段描述PAC诞生背景的文字。他们认为,PAC可以同时拥有PC的功能和PLC的性,是实现复杂控制时PLC的理想替代者。
然而,随着工业用机器和工厂系统的复杂性的增加,PLC已经很难而且也不可能成为完成所有自动化任务。现在的自动化系统已经了PLC的功能范围,使得工业机器领域的工程师在自动化系统中集成多的I/O、处理和控制策略。
新的可编程自动化控制器(PAC)硬件系统就是这样一个非凡的PLC系统扩展方案,能够很容易整合到PLC系统中,给工业机器增加多的功能,并提高机器的效率。
在未来的几年,PLC仍将继续用于自动化领域。但是随着机器的改进和自动化效率提高的需求,PLC不再是的。PAC技术给PLC提供了很好的,增加了传统PLC所不能提供的I/O和处理。将PAC连接到现有PLC架构中的方法有很多,所以工程师们将能够很容易地改进其基于PLC的自动化系统。
有业内人士在谈到时表示,PAC的所有部件均按软件和硬件集成灵活、方便、成本为出发点,因此它是跨机械自动化、电气自动化、仪表自动化、计算机等的。这些特点使终用户获得以下收益:设备的生命周期成本较低,资产的率提高,资产所有者总成本下降。
其实,PAC并不是一个新鲜事物。早在20世纪90年代,PAC的概念就已经被提出,而十多年前,国内外企业就陆续推出了自己的PAC产品。
研华(中国)有限公司是较早推出PAC产品的企业,其工业自动化事业群业务总监男接受记者采访时如此解释PAC开始在工业自动化界风行的原因,“随着人们对PC的熟悉程度不断加深,加之现有的控制器已经无法满足部分系统集成商和用户的需求,PAC应用的大环境已经成熟。”
然而,在PAC刚刚开始拓展其应用面的新产品时,还不被大多数用户认识和认可。在用户和系统集成商之间,对于PAC的批评声也不绝于耳。有人说,PAC相对于PLC来说价格高、性低、可扩展能力差;还有人认为,PAC并没有真正针对某种迫切的或潜在的市场需求,因此不免曲高和寡。
分析了目前软PLC在实时性方面存在的不足;提出采用基于DSP/BIOS实时内核的嵌入式处理器的软PLC执行系统架构。,通过分析软PLC执行系统的架构及工作原理,给出了基于DSP/BIOS的任务调度方案;其次,建立PLC指令的执行函数库,确定PLC执行系统的运行流程:后,对该PLC执行系统性能进行的测试表明,基于嵌入式处理器的软PLC执行系统能有效地软PLC在实时性及稳定性方面的不足,在自动控制方面具有相当大的发展潜力。
关键词:DSP/BIOS;软PLC;执行系统;嵌入式处理器
目前工控领域中广泛使用的可编程逻辑控制器(Programmable Logic Controller)大概可以分为两类:传统PLC与软PLC。传统PLC由于自身存在一些不足,例如封闭的硬件体系结构,主要由几家厂商所,而软PLC在开放性及方面潜力,目前欧美等很多西方国家已经把软件PLC作为一个对象进行研究开发。
传统PLC具有硬实时性,正因为如此它才能提供快速、确定而可重复的响应。另一方面,由于软PLC是基于PC而建立在一定的操作系统上,例如bbbbbbs NT,而这并不是一个硬实时的操作系统,这使得以PC为基础的控制引擎实时性问题成为制约软PLC发展的主要因素之一。
针对软PLC在实时性方面的不足,本项目采用基于嵌入式处理器的控制方案,软PLC执行系统作为一个任务在控制器固件内。美国TI公司推出的C6000系列数字信号处理器(Digital Signal Processor)具有很高的处理能力,特别是为其TMS320C6000TM、TMS320C5000TM和TMS320 C28xTM系列DSP平台所设计开发的一个尺寸可裁剪的实时多任务操作系统内核DSP/BIOS,提供抢占式多线程、硬件抽象、实时分析和配置工具,可实现实时线程调度与同步、主机与目标DSP间通信或实时监测。DSP是串行控制的,运算速度快。基于DSP/BIOS实时内核的PLC执行系统,具有相当好的实时性及稳定性。下面着重介绍其设计及实现方法。
1 软PLC的设计规划
1.1 软PLC的架构分析
由PLC执行系统控制的PLC程序划分为一级程序和二级程序,它们的执行周期不一致。一级程序每8 ms执行一次,处理响应快的短脉冲信号,例如外部的操作面板信号和报警信号,在程序末尾自动给出结束标记END1。二级程序为一般的PLC指令,每8n ms执行一次,n为二级程序的分割数。在开始执行二级程序时,PLC执行系统模块会根据执行程序所需要的时间自动把二级程序分割成n块,每个8 ms只执行其中一块,并在二级程序结束时自动给出结束标记END2。
1.2 PLC执行系统的工作原理
PLC采用循环扫描方式工作,进行系统初始化,然后进入循环工作过程包括输入采样、PLC指令执行及输出刷新几个阶段,其基本流程如图1所示。
1)系统初始化:在循环执行PLC程序前,要进行执行系统的初始化,包括参数的输入及变量初值的设置;2)输入的采样:每次执行PLC程序时,要读取外部输入状态至缓冲区中,以备后面程序查询;3)执行用户PLC程序:执行用户程序,就是CPU从PLC程序的地址开始按顺序逐个执行编译后的PLC指令,过程结果暂存在相应的寄存器内;4)输出的刷新:执行完用户程序后,需要把处理后需要输出的进行外部输出。由于PLC控制的对象大都是变化缓慢的信号,而PLC每次扫描输入和逻辑运算的时间很短,本PLC执行系统设定为每执行一个循环,就进行一遍输出的刷新。
1.3 DSP/BIOS的线程调度
文中的PLC执行系统的开发均在TI公司提供的集成开发环境CCS(Code Composer Studio)中进行,CCS不仅集成了常规的开发工具,如源程序编辑器、代码生成工具及调试环境,还提供DSP/BIOS开发工具。DSP/BIOS是一个精简的实时操作系统内核,具有实时操作系统功能。它提供抢占式多线程,支持多种不同级,每种线程都有不同的执行和抢占特性,分别是硬件中断(HWI)包括时钟函数(CLK)、软件中断(SWI)包括周期函数(PRD)、任务线程()、后台线程(IDL)。线程类型的选取原则:HW1只用来处理对时间要求苛刻的关键任务;SWI用来处理相对立的函数,如果算法要求比较复杂则使用。提供了很多通信和同步的手段,并且拥有自己立的堆栈,因此比SWI灵活。IDL用于执行与时间无关的非关键任务。
在DSP/BIOS线程调度中,硬件中断与软件中断的线程可以暂停运行中的低级任务,而的任务线程用特定的API才能抢占当前运行的低级任务线程,且只有任务线程才能暂停状态。基于PLC执行是一个循环执行过程,且与其它运动线程有复杂的通讯交互,本执行系统将其建立为一任务线程,由DSP/BIOS实时操作系统进行调度。
2 PLC执行系统的具体实现
2.1 数据结构定义
1)PLC指令代码数据结构的定义。PLC用户程序在系统内部以一定的二进制格式存放,采用如下指令开辟一个a字节的内存区存放编译后的PLC指令代码,内存区大小a根据实际情况设定。
long*plc_pt;
plc_pt=(long*)malloc(a);
2)PLC执行指令结构体的定义。PLC指令代码主要包含内容为指令类型及变量地址,定义如下PLC执行指令结构体:
struct plc_code_type //PLC执行指令结构体
{
unsigned char code_type;//指令类型
unsigned short pt addr;//变量地址
};
由此,在初始化时定义一个pk_code_type类型的指针直接指向PLC指令代码区.在进行PLC指令解析时,可直接移动该指针进行指令解析并输出。
2.2 PLC指令解析
PLC执行系统的一个关键问题在于PLC指令的解析,利用DSP的C语言,建立相应的PLC指令的执行函数库。PLC用户程序可看成由多段执行块组成,每个执行块包括条件指令及执行指令。下面分为条件指令解析及执行指令解析来进行描述。
2.2.1 条件指令解析
定义一个变量来保存条件指令解析结果,以便在解析执行指令时根据此条件指令解析结果进行执行指令处理。
例如常开触点(LD)可以用如下函数实现:
void plcLD(plc_code_type&pc)
//pc表示当前指令在用户程序中的指针位置
{ if(1==pc->pt_addr)//指令的地址为1
{
plc_result&=0x01;//闭合状态置位
}
}
2.2.2 执行指令解析
执行指令则根据当前执行块条件指令结果来判断对元件地址进行相应处理。例如置位指令(SET)可以用如下函数实现:
void plcSET(plc_code_type&pc)
{ if(plc_result&1)
//判断条件指令,闭合,有输出
{
pc->pt_addr|=0xff;//对应地址置位
}
}
这样,逐个对PLC执行块进行解析,输入和输出单元的刷新同样利用函数来实现,后通过输出口送出控制量,实现对用户PLC程序的执行控制。
2.3 PLC执行系统运行流程
在DSP/BIOS配置工具下的Scheduling项目中建立一个任务线程,比如为PLC_Deal_Task,并对该任务函数的级及其它相关内容进行设置,则可直接在PLC_Deal_Task线程中进行PLC指令解析处理,并实现PLC的循环扫描功能。
总体设计思想如下:设定一级程序的执行周期为m个指令计数执行一次,m与扫描周期有关。在进入二级循环后,判断指令计数是否大于m,未到m,则进入执行二级程序。如果条件满足,跳出循环,1周期完成,
3 测试分析及应用
3.1 软PLC执行系统的测试分析
根据上述设计方法构建出PLC执行系统,设计实际应用的PLC程序并在试验机上进行测试,观察设备的逻辑动作及执行系统性能情况。C CS提供了一系列可视化工具对运行系统的性能进行测试,“CPU负荷图”用于分析CPU的利用率,“任务执行图”可以出系统是否符合实时性要求。现根据微钻刃面检测机的工艺过程设计了其PLC程序,下载到本软PLC执行系统中运行,通过CCS监测工具监测其运行性能。图3是CPU负荷图,负荷峰值在25%左右,变化平稳;图4是任务执行图,图中左边栏下面的Assertions项目用于指示某个实时性要求没有达到,或是侦测到某个无效状态,如果Assertions项目没有出现小方块则表示对应线程的调度满足实时性要求。另外,经上机调试,设备整体运行逻辑也按照程序要求运行。此实验表明,基于DSP/BIOS的软PLC执行系统能够满足实时控制的要求且工作稳定。
3.2 软PLC执行系统的应用
传统PLC的一个缺点是硬件体系结构相对封闭,并且成本高,例如日本三菱PLC FX2N系列控制器本身未集成运动轴控制功能,每增加一个运动轴的控制均需额外扩展脉冲发生器单元(Pulse Generatint Unit,PGU),如果在多轴设备上应用可能会造成成本过高并且灵活不够。本课题组开发的运动控制器IPMC8188可立控制8轴,软PLC执行系统作为一个任务运行在该控制器的固件中。对比传统PLC,有稳定强大的PLC功能的运动控制器可降低控制系统构建的复杂程度,提高控制效率及开发效率。图5所示为内嵌软PLC执行系统的IMPC8188运动控制器,目前,该型运动控制器已在全自动刃面检测机、自动贴片机及全自动微钻磨尖机等自动化设备上使用并稳定运行。
4 结束语
基于嵌入式处理器的软PLC执行系统能有效的软PLC在实时性及稳定性方面的不足,并且由于自带操作系统,有地数据存储和自恢复功能。文中论述的基于DSP/BIOS的PLC执行系统的设计,与运动控制相结合,在小中型自动化设备方面应用广泛,另外在实现大规模系统的综合性自动控制方面也有很大的发展潜力。