西门子6ES7341-1BH01-0AE0技术参数
通用型PLC的硬件基本结构如图1所示,它是一种通用的可编程控制器,主要由中央处理单元CPU、存储器、输入/输出(I/O)模块及电源组成。
图1 通用型PLC的硬件基本结构
主机内各部分之间均通过总线连接。总线分为电源总线、控制总线、地址总线和数据总线。各部件的作用如下:
(1)中央处理单元CPU
PLC的CPU与通用微机的CPU一样,是PLC的核心部分,它按PLC中系统程序赋予的功能,接收并存储从编程器键入的用户程序和数据;用扫描方式查询现场输入装置的各种信号状态或数据,并存入输入过程状态寄存器或数据寄存器中;诊断电源及PLC内部电路工作状态和编程过程中的语法错误等;在PLC进入运行状态后,从存储器逐条读取用户程序,经过命令解释后,按指令规定的任务产生相应的控制信号,去启闭有关的控制电路;分时、分渠道地去执行数据的存取、传送、组合、比较和变换等动作,完成用户程序中规定的逻辑运算或算术运算等任务;根据运算结果,更新有关标志位的状态和输出状态寄存器的内容,再由输出状态寄存器的位状态或数据寄存器的有关内容实现输出控制、制表打印、数据通信等功能。以上这些都是在CPU的控制下完成的。PLC常用的CPU主要采用通用微处理器、单片机或双极型位片式微处理器。
(2)存储器
存储器(简称内存),用来存储数据或程序。它包括随机存取存储器(RAM)和只读存储器(ROM)。
PLC配有系统程序存储器和用户程序存储器,分别用以存储系统程序和用户程序。系统程序存储器用来存储监控程序、模块化应用功能子程序和各种系统参数等,一般使用EPROM;用户程序存储器用作存放用户编制的梯形图等程序,一般使用RAM,若程序不经常修改,也可写入到EPROM中;存储器的容量以字节为单位。系统程序存储器的内容不能由用户直接存取。因此一般在产品样本中所列的存储器型号和容量,均是指用户程序存储器。
(3)输入/输出(I/O)模块
I/O模块是CPU与现场I/O设备或其他外部设备之间的连接部件。PLC提供了各种操作电平和输出驱动能力的I/O模块供用户选用。I/O模块要求具有抗干扰性能,并与外界绝缘因此,多数都采用光电隔离回路、消抖动回路、多级滤波等措施。I/O模块可以制成各种标准模块,根据输入、输出点数来增减和组合。I/O模块还配有各种发光二极管来指示各种运行状态。
(4)电源
PLC配有开关式稳压电源的电源模块,用来对PLC的内部电路供电。
(5)编程器
编程器用作用户程序的编制、编辑、调试和监视,还可以通过其键盘去调用和显示PLC的一些内部状态和系统参数。它经过接口与CPU联系,完成人机对话。
编程器分简易型和智能型两种。简易型编程器只能在线编程,它通过一个专用接口与PLC连接。智能型编程器即可在线编程又可离线编程,还以远离PLC插到现场控制站的相应接口进行编程。智能型编程器有许多不同的应用程序软件包,功能齐全,适应的编程语言和方法也较多。
为了满足工业逻辑控制的要求,同时结合计算机控制的特点,PLC的工作方式采用不断循环的顺序扫描工作方式。每一次扫描所用的时间称为扫描周期或工作周期。CPU从条指令执行开始,按顺序逐条地执行用户程序直到用户程序结束,然后返回条指令开始新的一轮扫描。PLC就是这样周而复始地重复上述循环扫描的。PLC工作的全过程可用图1所示的运行框图来表示。整个过程可分为以下几个部分:
部分是上电处理。PLC上电后对系统进行一次初始化,包括硬件初始化和软件初始化,停电保持范围设定及其他初始化处理等。
第二部分是自诊断处理。PLC每扫描一次,执行—次自诊断检查,确定PLC自身的动作是否正常。如CPU、电池电压、程序存储器、I/O和通讯等是否异常或出错,如检查出异常时,CPU面板上的LED及异常继电器会接通,在特殊寄存器中会存入出错代码。当出现致命错误时,CPU被强制为STOP方式,所有的扫描便停止。
图1 PLC运行框图
第三部分是通讯服务。PLC自诊断处理完成以后进入通讯服务过程。首先检查有无通讯任务,如有则调用相应进程,完成与其他设备的通讯处理,并对通讯数据作相应处理;然后进行时钟、特殊寄存器更新处理等工作。
第四部分是程序扫描过程。PLC在上电处理、自诊断和通讯服务完成以后,如果工作选择开关在RUN位置,则进人程序扫描工作阶段。先完成输入处理,即把输入端子的状态读入输入映像寄存器中,然后执行用户程序,后把输出处理结果刷新到输出锁存器中。
在上述几个部分中,通讯服务和程序扫描过程是PLC工作的主要部分,其工作周期称为扫描周期。可以看出扫描周期直接影响控制信号的实时性和正确性,为了确保控制能正确实时地进行,在每个扫描周期中,通讯任务的作业时间必须被控制在一定范围内。PLC运行正常时,程序扫描周期的长短与CPU的运算速度、与I/O点的情况、与用户应用程序的长短及编程情况等有关。通常用PLC执行l KB指令所需时间来说明其扫描速度,一般为零点几ms到上百ms。值得注意的是,不同指令其执行时间是不同的,从零点几μs到上百μs不等,故选用不同指令所用的扫描时间将会不同。而对于一些需要高速处理的信号,则需要特殊的软、硬件措施来处理。
下面用一个简单的例子来进一步说明PLC的扫描工作过程。图1-6给出了PLC的外部接线图和梯形图,起动按钮SB1停止按钮SB2和热继电器FR的常开触点分别接在编号为X0~X2的PLC的输入端,交流接触器KM的线圈接在编号为Y0的PLC的输出端。图1-6b是这4个输入/输出变量对应的I/O映像寄存器,图l-6c是PLC的梯形图,它与图1-3所示的继电器电路的功能相同。但是应注意,梯形图是一种软件,是PLC图形化的程序。图中的X0等是梯形图中的编程元件,X0~-X2是输入继电器,Y0是输出继电器。梯形图中的编程元件X0与接在输入端子X0的SBl的常开触点和输入映像寄存器X0相对应,编程元件Y0与输出映像寄存器Y0和接在输出端子Y0的PLC内部的输出电路相对应。
梯形图以指令的形式储存在PLC的用户程序存储器中,图l-6中的梯形图与下面的5条指令相对应,“;”之后是该指令的注释。
LD X0 :接在左侧母线上的X0的常开触点
OR Y0 ;与X0的常开触点并联的Y0的常开触点
ANI X1 ;与并联电路串联的X1的常闭触点
ANI X2 ;串联的X2的常闭触点
OUT Y0 ;Y0的线圈
图1-6中的梯形图完成的逻辑运算为
Y0=(X0+Y0)·X1·X2
在输入处理阶段,CPU将SBl,SB2和FR的常开触点的状态读入相应的输入映像寄存器,外部触点接通时存入寄存器的是二进制数l,反之存入0。
执行第l条指令时,从X0对应的输入映像寄存器中取出二进制数并保存起来。执行第2条指令时,取出Y0对应的输出映像寄存器中的二进制数,与X0对应的二进制数相“或”(电路的并联对应“或”运算)。
执行第3条或第4条指令时,分别取出xl或X2对应的输入映像寄存器中的二进制数,因为是常闭触点,取反后与前面的运算结果相“与”(电路的串联对应“与”运算),然后存入运算结果寄存器。
执行第5条指令时,将运算结果寄存器中的二进制数送入Y0对应的输出映像寄存器。 在输出处理阶段,CPU将各输出映像寄存器中的二进制数传送给输出模块并锁存起来,如果Y0对应的输出映像寄存器存放的是二进制数1,外接的KM的线圈将通电,反之将断电。
如果读入输入映像寄存器X0~X2的均为二进制数0,在程序执行阶段,经过上述逻辑运算过程之后,运算结果仍为Y0=0,所以KM的线圈处于断电状态。按下起动按钮SBl,X0变为l状态,经逻辑运算后Y0变为1状态,在输出处理阶段,将Y0对应的输出映像寄存器中的1送到输出模块,PLC内Y0对应的物理继电器的常开触点接通,接触器KM的线圈通电.