PLC的软件分为两大部分:系统软件与用户程序。系统软件由PLC制造商固化在机内,用以控制PLC本身的运行:用户程序由PLC的使用者编写并输入,用于控制外部对象的运行。
1)系统软件
系统软件又可分为系统管理程序、用户指令解释程序及标准程序模块和系统调用。
(1)系统管理程序是系统软件中重要的部分,主管控制 PLC的运作。其作用包括3个方面:一是运行管理,对控制PLC何时输入、何时输出、何时计算、何时自检、何时通信等做时间上的分配管理。二是存储空间管理,即生成用户环境,由它规定各种参数、程序的存放地址。将用户使用的数据参数、存储地址转化为实际的数据格式及物理存放地址,将有限的资源变为用户可很方便地直接使用的元件。例如,它可将有限个数的扩展为上百个用户时钟和计数器。通过这部分程序,用户看到的就不是实际机器存储地址和的地址了,而是按照用户数据结构排列的元件空间和程序存储空间。三是系统自检程序,它包括各种系统出错检验、用户程序语法检验、句法检验、警戒时钟运行等。
PLC正是在系统管理程序的控制下,按部就班地工作的。
(2)用户指令解释程序众所周知,任何计算机终都是执行机器语言指令的。但用机器语言编程却是非常复杂的事情。PLC可用梯形图语言编程,把使用者直观易懂的梯形图变成机器懂得的机器语言,这就是解释程序的任务。解释程序将梯形图逐条解释,翻译成相应的机器语言指令,由CPU执行这些指令。
(3)标准程序模块和系统调用这部分由许多独立的程序块组成,各程序块完成不同的功能,有些完成I/O处理,有些完成特殊运算等。PLC的各种具体工作都是由这部分程序来完成的,这部分程序的多少决定了PLC性能的强弱。
整个系统软件是一个整体,其质量的好坏很大程度上影响PLC的性能。很多情况下,通过进系统软件就可在不增加任何设备的条件下大大改善PLC的性能,因此,PLC的生产厂家对PLC的系统软件都非常重视,例如,S7-200系列 PLC在推出后,西门子公司不断地将其系统软件进行进完善,使其功能越来越强。
2)用户程序
用户程序是PLC的使用者针对具体控制对象编制的程序。因此,它需要一个编程环境、一个程序结构和一个编程方法。
用户环境也是由系统监控程序生成的。主要包括:用户数据结构、用户元件区、用户数据和程序存储区、用户参数区、文件存储区等。
(1)用户数据结构:
①类为位数据:这是一类逻辑量(1位二进制数),其值为“0或1”,它表示触点的通、断。触点接通状态为ON,触点断开状态为OFF。
②二类为字节数据:其位长为8位,其数制形式有多种形式。1个字节可以表示8位二进制数、2位十六进制数、2位十进制数。
③三类为字数据:其数制、位长、形式都有很多形式。1个字可以表示16位二进制数、4位十六进制数、4位十进制数。十进制数据通常都用BCD码表示,书写时冠以K字符,如K789。十六进制数据,书写时冠以H字符,如H78F。二进制数,书写时冠以B字符,如B0111-1000-111l。实际处理时还可选用八进制、AscII的形式。由于对控制精度的要求越来越高,不少PLC开始采用浮点数,它大地提高了数据运算的精度。
④四类为混合型数据:即同一个元件有位数据又有字数据。例如,T(定时器)和C(计数器),它们的触点只有ON和OFF两种状态,是位数据,而它们的设定值和当前值寄存器又为字数据。
(2)用户数据存储区:
①用户使用的每个I/O端,以及内部的每一个存储单元都称为元件。各种元件都有其固定的存储区(如I/O映像区),即存储地址。给 PLC 中的I/O元件赋予地址的过程叫编址,不同的 PLCI/O的编址方法不完全相同。
②PLC的内部资源,如内部继电器、定时器、计数器和数据区,各个不同的PLC之间也有一些差异。这些内部资源都按一定的数据结构存放在用户数据存储区,正确使用用户数据存储区的资源才能编写好用户程序。
用户程序结构大致可以分为3种:一是线性程序,这种结构是把一个工程分为多个小的程序块,这些程序块被依次排放在一个主程序中;二是分块程序,这种结构把一个工程中的各个程序块独立于主程序之外,工作时要由主程序一个个有序地去调用;三是结构化程序,这种结构是把一个工程中的具有相同功能的程序写成通用功能程序块,工程中的各个程序块都可以随时调用这些通用功能程序块。
可编程控制器与继电器控制的区别
在PLC的编程语言中,梯形图是为广泛使用的语言,通过PLC的指令系统将梯形图变成PLC能接受程序,由编程器键入到PLC用户存储区去。而梯形图与继电器控制原理图十分相似,主要原因是PLC梯形图的发明大致上沿用户继电器控制电路的元件符号,仅个别处有些不同。
PLC与继电器控制的主要区别有以下几点:
(1)组成器件不同
继电器控制线路是由许多真正的硬件继电器组成的。而PLC是由许多“软继电器”组成的,这些“继电器”实际上是存储器中的触发器,可以置“0”或置“1”。
(2)触点的数量不同
硬继电器的触点数有限,一般只有4至8对;而“软继电器”可供编程的触点数有无限对,因为触发器状态可取用任意次。
(3)控制方法不同
继电器控制是通过元件之间的硬接线来实现的,因此其控制功能就固定在线路中了,因此功能专一,不灵活;而PLC控制是通过软件编程来解决的,只要程序改变,功能可跟着改变,控制很灵活。又因PLC是通过循环扫描工作的,不存在继电器控制线路中的联锁与互锁电路,控制设计大大简化了。
(4)工作方式不同
在继电器控制线路中,当电源接通时,线路中各继电器都处于受制约状态,该合的合,该断的断。而在PLC的梯形图中,各“软继电器”都处于周期性循环扫描接通中,从客观上看,每个“软继电器”受条件制约,接通时间是短暂的。也就是说继电器在控制的工作方式是并行的,而PLC的工作方式是串行的。
根据硬件结构的不同,可以将PLC分为整体式、模块式和混合式。
1.整体式PLC
整体式又叫做单元式或机箱式,它的体积小、价格低,对箱体式PLC,有一块CPU板、I/O板、显示面板、内存块、电源等,当然按CPU性能分成若干型号,并按I/O点数又有若干规格。对模块式PLC,有CPU模块、I/O模块、内存、电源模块、底板或机架。无任哪种结构类型的PLC,都属于总线式开放型结构,其I/O能力可按用户需要进行扩展与组合。
2.模块式PLC
大、中型PLC一般采用模块式结构,它由机架和模块组成,模块插在模块插座上,后者焊接在机架中的总线连接板上,有不同槽数的机架供用户选用,如果一个机架容纳不下选用的模块,可以增设一个或数个扩展机架,各机架之间用接口模块和电缆相连。
用户可以选用不同档次的CPU模块、品种繁多的I/O模块和特殊功能块,对硬件配置的选择余地较大,维修时换模块也很方便。
3.CPU模块中的存储器
存储器分为系统程序存储器和用户程序存储器,系统程序相当于个人计算机中的操作系统,它使PLC具有基本的智能,能完成PLC设计者的规定的各种工作。系统程序由PLC的生厂家设计并固定化在ROM(只读存储器)中,用户不能读取。用户程序由用户设计,它使PLC能完成用户要球的特定功能,用户程序存储器的容量以字节(B)为单位。
(1).随机存取存储器(RAM)
用户可以用编程装置读出RAM中的内容,也可以将用户程序写入RAM,因此RAM又叫读/写存储器。RAM的工作速度高、价格便宜、改写方便。
(2).只读存储器(ROM)
ROM的内容只能读出,不能写入。
(3).可以电檫出可编程的只读存储器(EEPROM)
S7-200用EEPROM来存储用户程序和长期保存的重要数据。
4.I/O模块
各I/O点的通/断状态用发光二管(LED)显示,PLC与外部接线的连接一般用接线端子,某些模块使用可以拆卸的插座型端子板,不需断开端子板上的连接线,就可以迅速的换模块。
输入模块:PLC通过输入模块来接收和采集输入信号,通过输出模块控制接触器、电磁阀、电磁铁、调速装置等执行器,PLC控制的另一类外部负载是指示灯、数字显示装置和报置等。输入电路中设有RC滤波电路,以防止由于输入触点抖动或外部干扰脉冲引起的错误输入信号。
输出模块:输出模块的率放大元件有大功率晶体管和场效应管(驱动直流负载)、双向可控硅(驱动交流负载)和小型继电器,继电器可以驱动交流负载或直流负载。输出电流的典型值为0.5—2A,负载电源由外部现场提供。
6ES72111BE400XB0 | CPU 1211C AC/DC/Rly,6输入/4输出,集成2AI |
6ES72111AE400XB0 | CPU 1211C DC/DC/DC,6输入/4输出,集成2AI |
6ES72111HE400XB0 | CPU 1211C DC/DC/Rly,6输入/4输出,集成2AI |
6ES72121BE400XB0 | CPU 1212C AC/DC/Rly,8输入/6输出,集成2AI |
6ES72121AE400XB0 | CPU 1212C DC/DC/DC,8输入/6输出,集成2AI |
6ES72121HE400XB0 | CPU 1212C DC/DC/Rly,8输入/6输出,集成2AI |
6ES72141BG400XB0 | CPU 1214C AC/DC/Rly,14输入/10输出,集成2AI |
6ES72141AG400XB0 | CPU 1214C DC/DC/DC,14输入/10输出,集成2AI |
6ES72141HG400XB0 | CPU 1214C DC/DC/Rly,14输入/10输出,集成2AI |
6ES72151BG400XB0 | CPU 1215C AC/DC/Rly,14输入/10输出,集成2AI/2AO |
6ES72151AG400XB0 | CPU 1215C DC/DC/DC,14输入/10输出,集成2AI/2AO |
6ES72151HG400XB0 | CPU 1215C DC/DC/Rly,14输入/10输出,集成2AI/2AO |
6ES72171AG400XB0 | CPU 1217C DC/DC/DC,14输入/10输出,集成2AI/2AO |