PLC编程基础–第4部分

2024-07-13 | no responses | 97

在我们正在进行的PLC技术人员实践系列的这一部分中,我们将扩展我们对已经熟悉的真实世界现场设备的虚拟对应的知识PLC技术人员今天在工业界工作。我们要检查的最后一个物理设备是计数器。我们将简要了解在对现代PLC进行编程以执行工业控制应用时,该器件的虚拟版本是如何实现的。我们还将说明技术人员如何熟悉与AB SLC 500系列控制器一起使用的各种附加指令。

CTU和CTD计数器指令之间有什么区别?

在编程PLC时,我们会遇到两种基本类型的计数器,一种是上行计数器或CTU指令,另一种是下行计数器或CTD指令。您可能已经凭直觉知道,CTU计数器指令从用户定义的值(存储在指令的ACC或accumulated字段中)开始,并且每当指令所在的梯级上发生“假到真的转换”时,递增计数或增加值。每当该指令所在的梯级呈现“假到真”的转变时,CTD指令用于递减用户定义的(同样是存储在指令的ACC字段中的值)值。在这两种情况下,专用传感器、物理棒或近程探测器等现场设备都会导致输入架位置改变状态。与这些计数器指令相关的信息存储在C5(计数器)数据文件位置。除了单独的计数器类型(递增或递减计数器),还可以组合这些指令来创建计数器双向计数器或“计数器对”。

如何创建一个上行/下行计数器对?

除了前面提到的预设值和累计值字段,这两种计数器类型还可以共享状态位和计数器参考。C5文件的内存位置结构为用户定义的值和状态位提供了存储,这一点我们在数据文件类型和结构.

 

Counter Ladder Logic Circuit
 

在上图中,CTU指令和CTD指令的“计数器”字段引用同一个内存存储位置C5:1(也显示在图中)。该文件中的每个存储器位置存储CU(递增计数使能)、CD(递减计数使能)、DN(完成)、OV(上溢)、UN(下溢)状态位以及共享C5参考的计数器的预置值和累计值。在本例中,预设值设置为100。请注意,值是共享的,并显示为两个计数器的预设值。当前累计值为10,它也在每个指令中共享和显示。当I:1/1触点闭合时,CTU计数器被触发。这将增加存储在C5:1存储位置的累计值,修改后的值将显示在两条指令中。当I:1/2触点闭合时,累计值将减少,并返回到值10。每个现有的计数器都能够修改这个累加值。它们还共享bit状态。这样,运行计数可以通过现场事件(梯级上的触点所引用的I:1输入模块的状态转换)来递增或递减。

下面的视频展示了用于保持运行计数值的递增/递减计数器对的行为,该计数器可根据需要递增或递减。该视频概述了使用运行计数来跟踪电梯轿厢位置的电梯提升程序。

多条指令共享一个数据文件存储地址是一件常见的事情吗?

还有其他指令能够使用共享存储器位置引用。采用这种引用共享技术的另一种常见指令是SQO序列器输出指令。这些定序器指令中的几个可能共享相同的R6控制数据文件存储器位置,同时引用不同的源文件位置。这种情况下的目标是共享POS(位置)值。这将使每个引用的源文件中的文件指针彼此同步移动。技术人员将使用该工具创建虚拟序列表,并将部分表数据发送到不同的输出或指令字段位置。序列表可以存储交通灯应用中的灯的输出模式。

单独的序列表可以存储光序列中每一步的定时信息。随着指针一起移动,每个输出光模式(被发送到控制光的输出位置)被步进,每个步骤的相应持续时间可以被发送到定时器指令的预设字段。

你如何研究SLC 500系列控制器的各种指令的行为?

基本扩展指令集在供应商处有详细说明用户指令集参考手册。该指南列出了可用的指令,并描述了与每个指令相关的操作和数据。由于说明太多,无法以这种格式详细阐述,因此熟悉这一资源非常重要。

在我们的下一期文章中,我们将列出一些与我们在本博客系列中讨论的指令相关的最常见的编程错误,以及如何避免它们。

Related Post

Leave a Reply

Your email address will not be published. Required fields are marked *