fuyeheng123
级别: *
精华主题: * 篇
发帖数量: * 个
工控威望: * 点
下载积分: * 分
在线时间: (小时)
注册时间: *
最后登录: *
查看fuyeheng123的 主题 / 回贴
楼主  发表于: 2011-05-07 12:21
:: 可编程控制器的工作原理



一、问题提出
可编程控制器的工作原理建立在计算机基础上,故其 CPU 以分时操作方式来处理各项任务,即串行工作方式,通过对可编程控制器的工作方式和工作过程的说明,让学生理解可编程控制器的工作原理。
二、可编程控制器的工作方式与运行框图
众所周知,继电器控制系统是一种“硬件逻辑系统”,如图 1 ( a )所示,它的三条支路是并行工作的,当按下按钮 SB1 ,接触器 KM1 得电, KM1 的一个触点闭合并自锁,接触器 KM2 ,时间继电器 KT 的线圈同时得电动作。所以继电器控制系统采用的是并行工作方式。

图 1 ( a ) 继电器控制系统简图
可编程控制器是一种工业控制计算机,故它的工作原理是建立在计算机工作原理基础上的,即是通过执行反映控制要求的用户程序来实现的。但是 CPU 是以分时操作方式来处理各项任务的,计算机在每一瞬间只能做一件事,所以程序的执行是按程序顺序依次完成相应各电器的动作,便成为时间上的串行。由于运算速度极高,各电器的动作似乎是同时完成的,但实际输入 / 输出的响应是有滞后的。如图 1 ( b )所示。

图 1 ( b ) 用 PLC 实现控制功能的接线示意图
概括而言, PLC 的工作方式是一个不断循环的顺序扫描工作方式。每一次扫描所用的时间称为扫描周期或工作周期。 CPU 从第一条指令开始,按顺序逐条地执行用户程序直到用户程序结束,然后返回第一条指令开始新的一轮扫描。 PLC 就是这样周而复始地重复上述循环扫描的。
执行用户程序时,需要各种现场信息,这些现场信息已接到 PLC 的输入端口。 PLC 采集现场信息即采集输入信号有两种方式:第一种,采样输入方式。一般在扫描周期的开始或结束将所有输入信号(输入元件的通 / 断状态)采集并存放到输入映像寄存器( PII )中。执行用户程序所需输入状态均在输入映像寄存器中取用,而不直接到输入端或输入模块去取用。第二种,立即输入方式。随着程序的执行需要那一个输入信号就直接从输入端或输入模块取用这个输入状态,如“立即输入指令”就是这样,此时输入映像寄存器的内容不变,到下一次集中采样输入时才变化。
同样, PLC 对外部的输出控制也有集中输出和立即输出两种方式。
集中输出方式在执行用户程序时不是得到一个输出结果就向外输出一个,而是把执行用户程序所得的所有输出结果,先后全部存放在输出映像寄存器( PIQ )中,执行完用户程序后所有输出结果一次性向输出端口或输出模块输出,使输出设备部件动作。立即输出方式是在执行用户程序时将该输出结果立即向输出端口或输出模块输出,如“立即输出指令”就是这样,此时输出映像寄存器的内容也更新。
PLC 对输入输出信号的传送还有其他方式。如有的 PLC 采用输入,输出刷新指令。在需要的地方设置这类指令,可对此电源 ON 的全部或部分输入点信号读入上电一次,以刷新输入映像寄存器内容;或将此时的输出结果立即向输出端口或输出模块输出。又如有的 PLC 上有输入、输出的禁止功能,实际上是关闭了输入、输出传送服务,这意味着此时的输入信号不读入、输出信号也不输出。
PLC 工作的全过程可用图 5 所示的运行框图来表示。

图 5 可编程控制器运行框图
可编程控制器整个运行可分为三部分:
第一部分是上电处理。可编程控制器上电后对 PLC 系统进行一次初始化工作,包括硬件初始化, I/O 模块配置运行方式检查,停电保持范围设定及其他初始化处理等。
第二部分是扫描过程。可编程控制器上电处理完成以后进入扫描工作过程。先完成输入处理,其次完成与其他外设的通信处理,再次进行时钟、特殊寄存器更新。当 CPU 处于 STOP 方式时,转入执行自诊断检查。当 CPU 处于 RUN 方式时,还要完成用户程序的执行和输出处理,再转入执行自诊断检查。
第三部分是出错处理。 PLC 每扫描一次,执行一次自诊断检查,确定 PLC 自身的动作是否正常,如 CPU 、电池电压、程序存储器、 I/O 、通信等是否异常或出错,如检查出异常时, CPU 面板上的 LED 及异常继电器会接通,在特殊寄存器中会存入出错代码。当出现致命错误时, CPU 被强制为 STOP 方式,所有的扫描停止。
PLC 运行正常时,扫描周期的长短与 CPU 的运算速度有关,与 I/O 点的情况有关,与用户应用程序的长短及编程情况等均有关。通常用 PLC 执行 1K 指令所需时间来说明其扫描速度 ( 一般 1~10ms/K) 。值得注意的是,不同指令其执行是不同的,从零点几微秒到上百微秒不等,故选用不同指令所用的扫描时间将会不同。若用于高速系统要缩短扫描周期时,可从软硬件上考虑。
三、可编程控制器的工作过程
上面已经说明,可编程控制器是按图 5 所示的运行框图进行工作的,当 PLC 处于正常运行时,它将不断重复图中的扫描过程,不断循环扫描地工作下去。分析上述扫描过程,如果我们对远程 I/O 特殊模块和其他通信服务暂不考虑,这样扫描过程就只剩下“输入采样”,“程序执行”,“输出刷新”三个阶段了。下面就对这三个阶段进行详细的分析,并形象地用图 6 表示(此处 I/O 采用集中输入,集中输出方式)。

图 6 PLC 扫描工作过程
1 .输入采样阶段。 PLC 在输入采样阶段,首先扫描所有输入端子,并将各输入状态存入内存中各对应的输入映像寄存器中。此时,输入映像寄存器被刷新。接着,进入程序执行阶段,在程序执行阶段和输出刷新阶段,输入影响寄存器与外界隔离,无论输入信号如何变化,其内容保持不变,直到下一个扫描周期的输入采样阶段,才重新写入输入端的新内容。
2 .程序执行阶段。根据 PLC 梯形图程序扫描原则, PLC 按先左后右,先上后下的步序语句逐句扫描。但遇到程序跳转指令,则根据跳转条件是否满足来决定程序的跳转地址。当指令中涉及输入、输出状态时, PLC 就从输入映像寄存器“读入”上一阶段采入的对应输入端子状态,从元件映像寄存器“读入”对应元件 ( “软继电器” ) 的当前状态。然后,进行相应的运算,运算结果再存入元件映像寄存器中。对元件映像寄存器来说,每一个元件 ( “软继电器” ) 的状态会随着程序执行过程而变化。
3 .输出刷新阶段。在所有指令执行完毕后,元件映像寄存器中所有输出继电器的状态(接通 / 断开)在输出刷新阶段转存到输出锁存器中,通过一定方式输出,驱动外部负载。
四、可编程控制器的中断处理
根据以上所述,外部信号的输入总是通过可编程控制器扫描由“输入传送”来完成,这就不可避免地带来了“逻辑滞后”。 PLC 能不能像计算机那样采用中断输入的方法,即当有中断申请信号输入后,系统会中断正在执行的程序而转去执行相关的中断子程序;系统若有多个中断源时,它们之间按重要性是否有一个先后顺序的排队;系统能否由程序设定允许中断或禁止中断等等。 PLC 关于中断的概念及处理思路与一般微机系统基本是一样的,但也有特殊之处。
1 .响应问题
一般微机系统的 CPU ,在执行每一条指令结束时去查询有无中断申请。而 PLC 对中断的响应则是在相关的程序块结束后查询有无中断申请和在执行用户程序时查询有无中断申请,如有中断申请,则转入执行中断服务程序。如果用户程序以块式结构组成,则在每块结束或实行块调用时处理中断。
2 .中断源先后顺序及中断嵌套问题
在 PLC 中,中断源的信息是通过输入点而进入系统的, PLC 扫描输入点是按输入点编号的先后顺序进行的,因此中断源的先后顺序只要按输入点编号的顺序排列即可。系统接到中断申请后,顺序扫描中断源,它可能只有一个中断源申请中断,也可能同时有多个中断源申请中断。系统在扫描中断源的过程中,就在存储器的一个特定区建立起“中断处理表”,按顺序存放中断信息,中断源被扫描过后,中断处理表亦已建立完毕,系统就按该表顺序先后转至相应的中断子程序入口地址去工作。
必须说明的是,多中断源可以有优先顺序,但无嵌套关系。即中断程序执行中,若有新的中断放生,不论新中断的优先顺序如何,都要等执行中的中断处理结束后,再进行新的中断处理。所以在 PLC 系统工作中,当转入下一个中断服务子程序时,并不自动关闭中断,所以也没有必要去开启中断。
3 .中断服务程序执行结果信息输出问题
PLC 按巡回扫描方式工作,正常的输入 / 输出在扫描周期的一定阶段进行,这给外设希望及时响应带来了困难。采用中断输入,解决了对输入信号的高速响应。当中断申请被响应,在执行中断子程序后有关信息应当尽早送到相关外设,而不希望等到扫描周期的输出传送阶段,就是说对部分信息的输入或输出要与系统 CPU 的周期扫描脱离,可利用专门的硬件模块(如快速响应 I/O 模块)或通过软件利用专门指令使某些 I/O 立即执行来解决。



附件: 可编程控制器的工作原理.doc (44 K) 下载次数:4
网站提示: 请不要用迅雷下载附件,容易出错