镜像寄存器是PLC最不为人所熟知的部分之一。镜像寄存器也被称作镜像表,是PLC中用来追踪每一个输入和输出状态的一块专用存储区。镜像寄存器有1bit宽,图5-26表示了一个镜像寄存器。从图中可以发现,PLC的每一个输入和输出在内存中都有相应的位,处理器在相应位上置0或1来表明对应输入或输出的激活或非激活状态。处理器监测每个开关是否激活来确定每个程序扫描周期内所有输入的状态。如果开关被激活,输入模块便向处理器发送信号,处理器在镜像寄存器的相应位上置二进制1来表明输入状态;如果开关未被激活,则将相应位置0。这就意味着在程序扫描的读阶段,镜像寄存器为实际的所有输入状态做了一份复制记录。
在PLC扫描的第二阶段,处理器用镜像寄存器内的值来解决特殊的梯级逻辑问题。例如,如果输入1和输入2相“与”后,来激活输出12,处理器查询对应输入1和输入2的镜像寄存器地址并做“与”逻辑运算。如果所有的开关都是高电位(导通),则镜像寄存器内相应位置1,处理器做逻辑运算后将相应的输出12激活。
在处理器做完逻辑运算并确定要激活的输出后,处理器进入扫描循环的第三阶段,即向输出12在镜像寄存器内相应的地址位写入1,这被称作处理器扫描过程中的写周期。当输出12的镜像寄存器地址接收到1信号时,其立即向对应的输出模块地址发送信号。这样就激活了输出模块的电子电路,从而使与之相连的设备如电动机起动线圈和励磁线圈通电。
有必要了解的是,PLC处理器每个读周期都更新一遍镜像寄存器的所有地址,即使只有一两个地址位被程序调用。当处理器处于逻辑运算阶段时,它对程序的每一梯级按从左至右的顺序进行逻辑求解。也就是说,如果一行逻辑有几个相“与”的触点和几个相“或”的触点,每一个逻辑功能的运算顺序是自左而右的。同时,处理器按照从上到下的顺序进行每行逻辑的运算。因为处理器以大约20~40ms的时间周期执行扫描,所以各行逻辑运算看起来好像是同时执行的。
图5-26 PLC镜像寄存器,每一个输入和输出在内存中都有相应的位,0或1来表明对应输入或输出的激活或非激活状态(www.xing528.com)
当第一(梯)级中的控制继电器的触点被用来激活第二(梯)级的输出时,逻辑运算顺序就显得尤为重要。这种情况下,处理器要用两个完整的扫描周期来读取第一级的输入并将输出写入第二级。在第一次扫描中,处理器读取镜像寄存器并判断相应的起动按钮是否被按下。当第一级的逻辑运算完成后,控制继电器被通电。直到第二次扫描处理器才检测控制继电器触点的改变,此时处理器再一次读取镜像寄存器,并在第二次扫描的写周期中最终激活第二级的输出,与输出地址相对应的电动机起动线圈通电。同样需要指出,即使程序只用到一两个输出,处理器在每次扫描的写周期也要重新写入每个输出的状态。
镜像寄存器对故障诊断人员也非常有用,因为寄存器内所有地址的内容都可以在屏幕上显示出来。技术人员可以将镜像寄存器内的状态与输入、输出模块以及与之相连的实际开关和线圈的状态进行对比。
处理器中的镜像寄存器对应于程序中的控制继电器。控制继电器是仅存在于PLC内部的继电器,在某些系统中这些继电器被称作记忆线圈或内部线圈。控制继电器有一个线圈和一组或几组常开或常闭触点,当控制继电器的线圈被激活时,所有的继电触点转换状态。因为控制继电器仅存在于PLC程序内部,并不采用硬件实现,所以它们并不会产生所谓的接触不良或线圈开路等问题。也就是说,如果一个控制继电器的触点状态没有从断开状态向闭合状态转化,此时不必怀疑线圈会发生误动,相反应该检查一下程序中为继电器线圈供电的控制触点:它们可能有一两个开路,从而导致线圈未被通电。
当处理器处于运行模式时,在每次扫描的写阶段处理器都对输入、输出和控制继电器的相应镜像寄存器进行更新。由于镜像寄存器以20~40ms的周期进行持续更新,所以可在任意时刻将寄存器内容通过打印机或彩印终端输出来反映运行过程中重要开关的状态,这使得技术人员在问题出现时的诊断工作量大大减少。例如,如果一个正在检查风力机运行情况或做预防性维护工作的技术人员通过PLC程序发现一个问题时,他可以进行自行检修而不必花费更大代价去请专业的故障诊断师。那些妨碍风力机起动和正常运行的状况被作为故障输入到PLC程序中,这些故障可以在彩色显示屏显示和被监测。例如,在大型系统中只需要机舱的舱口或舱门处于半开状态,则技术人员就可以在监视器上观测到故障情况。这样,PLC不仅可以控制机器的运行也可以应用于故障诊断中。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。