BMXFCW303用户程序执行阶段
在用户程序执行阶段,PLC总是按由上而下的顺序依次地扫描用户程序(梯形图)。在扫描每一条梯形图时,又总是先扫描梯形图左边的由各触点构成的控制线路,并按先左后右、先上后下的顺序对由触点构成的控制线路进行逻辑运算,然后根据逻辑运算的结果,刷新该逻辑线圈在系统RAM存储区中对应位的状态;或者刷新该输出线圈在I/O映象区中对应位的状态;或者确定要执行该梯形图所规定的特殊功能指令。
即,在用户程序执行过程中,只有输入点在I/O映象区内的状态和数据不会发生变化,而其他输出点和软设备在I/O映象区或系统RAM存储区内的状态和数据都有可能发生变化,而且排在上面的梯形图,其程序执行结果会对排在下面的凡是用到这些线圈或数据的梯形图起作用;相反,排在下面的梯形图,其被刷新的逻辑线圈的状态或数据只能到下一个扫描周期才能对排在其上面的程序起作用。
在程序执行的过程中如果使用立即I/O指令则可以直接存取I/O点。即使用I/O指令的话,输入过程影像寄存器的值不会被更新,程序直接从I/O模块取值,输出过程影像寄存器会被立即更新,这跟立即输入有些区别。
(三) 输出刷新阶段
当扫描用户程序结束后,PLC就进入输出刷新阶段。在此期间,CPU按照I/O映象区内对应的状态和数据刷新所有的输出锁存电路,再经输出电路驱动相应的外设。这时,才是PLC的真正输出。
5运作方式
虽然PLC所使用之阶梯图程式中往往使用到许多继电器、计时器与计数器等名称,但PLC内部并非实体上具有这些硬件,而是以内存与程式编程方式做逻辑控制编辑,并借由输出元件连接外部机械装置做实体控制。因此能大大减少控制器所需之硬件空间。实际上PLC执行阶梯图程式的运作方式是逐行的先将阶梯图程式码以扫描方式读入CPU 中并后执行控制运作。在整个的扫描过程包括三大步骤,“输入状态检查”、“程式执行”、“输出状态更新”说明如下:
步骤一“输入状态检查”:PLC首先检查输入端元件所连接之各点开关或传感器状态(1 或0 代表开或关),并将其状态写入内存中对应之位置Xn。步骤二“程式执行”:将阶梯图程式逐行取入CPU 中运算,若程式执行中需要输入接点状态,CPU直接自内存中查询取出。输出线圈之运算结果则存入内存中对应之位置,暂不反应至输出端Yn。步骤三“输出状态更新”:将步骤二中之输出状态更新至PLC输出部接点,并且重回步骤一。 此三步骤称为PLC之扫描周期,而完成所需的时间称为PLC 之反应时间,PLC 输入讯号之时间若小于此反应时间,则有误读的可能性。每次程式执行后与下一次程式执行前,输出与输入状态会被更新一次,因此称此种运作方式为输出输入端“程式结束再生”。
PLC的基本工作原理简要介绍
PLC以微处理器为核心,具有微机的许多特点,但它的工作方式却与微机有很大不同。微机一般采用等待命令的工作方式工作。PLC是按集中输入、集中输出,周期性循环扫描的方式进行工作的。每一次循环扫描所用的时间称为一个扫描周期。 对每个程序,CPU从条指令开始执行,按顺序逐条地执行指令做周期性的程序循环扫描,如果无跳转指令,则从条指令开始逐条顺序执行用户程序,直至结束又返回条指令,如此周而复始不断循环。
PLC在每次扫描工作过程中除了执行用户程序外,还要完成内部处理、输入采样、通信服务、程序执行、自诊断、输出刷新等工作。PLC工作的全过程包括三个部分,即上电处理、扫描过程和出错处理。PLC工作的全过程可用图4所示的运行框图来表示。
PLC通电后,CPU在系统程序的控制下先进行内部处理,包括硬件初始化、I/O模块配置检查、停电保持范围设定及其他初始化处理等工作。
PLC有很强的自诊断功能,PLC每扫描一次执行一次自诊断检查,确定PLC自身的动作正常,如电源检测、内部硬件正常、程序语法有错等。如检查出异常时,CPU面板的LED及异常继电器会接通,在特殊寄存器中会存入出错代码;CPU能根据错误类型和程度发出信号,甚至进行相应的出错处理,使PLC停止扫描或强制变成STOP状态。