PLC的工作过程有两个显著特点:一个是周期性顺序扫描,另一个是集中批处理。
周期性顺序扫描是可编程控制器特有的工作方式,PLC在运行过程中,总是处在不断循环的顺序扫描过程中。由于PLC的I/O点数较多,采用集中批处理的方法,可以简化操作过程,便于控制,提高系统的可靠性,因此可编程控制器的另一个主要特点就是对输入采样、执行用户程序、输出刷新实施集中批处理,这同样是为了提高系统的可靠性。
当PLC启动后,先进行初始化操作,包括对工作内存的初始化、复位所有的定时器、将输入/输出继电器清零,检查I/O单元连接是否完好,如有异常则发出报警信号。初始化后,PLC就进入周期扫描过程。小型PLC的工作流程如图3-6所示。
图3-6 小型PLC的工作流程
根据图3-4,可将PLC的工作过程(周期性扫描过程)分为4个阶段。
1.公共处理
公共处理包括PLC自检、执行来自外设命令、对警戒时钟[又称监视定时器或看门狗定时器WDT(Watch Dog Timer)]清零等。
PLC自检就是CPU检测PLC各器件的状态,如出现异常再进行诊断,并给出故障信号,或自行进行相应处理,这将有助于及时发现或提前预报系统的故障,提高系统的可靠性。
在CPU对PLC自检结束后,就检查是否有外设请求,如是否需要进入编程状态,是否需要通信服务,是否需要启动磁带机或打印机等。
采用WDT技术也是提高系统可靠性的一个有效措施,它是在PLC内部设置一个监视定时器。这是一个硬件时钟,是为了监视PLC的每次扫描时间而设置的,对它预先设定好规定时间,每个扫描周期都要监视扫描时间是否超过规定值。如果程序运行正常,则在每次扫描周期的公共处理阶段对WDT进行清零(复位),避免由于PLC在执行程序的过程中进入死循环,或者由于PLC执行非预定的程序而造成系统故障,从而导致系统瘫痪。如果程序运行失常进入死循环,则WDT得不到按时清零而造成超时溢出,将给出报警信号或停止PLC工作。
2.输入采样(https://www.xing528.com)
这是第一个集中批处理过程。在这个阶段中,PLC按顺序逐个采集所有输入端子上的信号,不论输入端子上是否接线,CPU顺序读取全部输入端,将所有采集到的一批输入信号写入输入映像寄存器中。在当前的扫描周期内,用户程序依据的输入信号的状态(ON或OFF),均从输入映像寄存器中去读取,而不管此时外部输入信号的状态是否变化。即使此时外部输入信号的状态发生了变化,也只能在下一个扫描周期的输入采样扫描阶段去读取,对于这种采集输入信号的批处理,虽然严格上说每个信号被采集的时间有先有后,但由于PLC的扫描周期很短,这个差异对一般工程应用可忽略,所以可认为这些采集到的输入信息是同时的。
3.用户程序执行
这是第二个集中批处理过程。在执行用户程序阶段,CPU对用户程序按顺序进行扫描。如果程序用梯形图表示,则总是按先上后下,从左至右的顺序进行扫描。每扫描到一条指令,所需要输入信息的状态均从输入映像寄存器中去读取,而不是直接使用现场的立即输入信号。对其他信息,则是从PLC的元件映像寄存器中读取。在执行用户程序过程中,每一次运算的中间结果都立即写入元件映像寄存器,这样该元件的状态立即就可以被后面将要扫描到的指令所利用。对输出继电器的扫描结果,也不是立即去驱动外部负载,而是将其结果写入元件映像寄存器中的输出映像寄存器中,待输出刷新阶段集中进行批处理,所以执行用户程序阶段也是集中批处理过程。
在这个阶段,除了输入映像寄存器外,各个元件映像寄存器的内容是随着程序的执行而不断变化的。
4.输出刷新
这是第三个集中批处理过程。当CPU对全部用户程序扫描结束后,将元件映像寄存器中各输出继电器的状态同时送到输出锁存器中,再由输出锁存器经输出端子去驱动各输出继电器所带的负载。
在输出刷新阶段结束后,CPU进入下一个扫描周期。
上述的三个批处理过程如图3-7所示。
图3-7 小型PLC的三个批处理过程
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。
