数据结构和数据类型的应用


本文讨论结构数据类型、结构标记以及用户定义结构的各种应用。

一种类型的数据仅存在于PLC系统的范围内。但是,将其称为单个名称下不同数据类型的集合可能更合适,所有这些都是为了执行特定功能。


结构数据类型

在PLC内部,数据标签是分隔成不同功能的地址和存储器存储位置。输入和输出通常由布尔标签组成,只能支持开、关信号。更复杂的模拟信号是浮点实十进制标签。计算和过程通常使用各种大小的整数。

除了这些基本数据标签外,处理PLC控制的过程只需要很少的其他标签。存在一些其他数据类型,但这些数据类型通常由这些已经存在的基本数据类型的分组组成。


数据结构类型的关系图。


更令人困惑的数据类型之一是“结构”类型标签。这可能会令人难以置信地混淆,因为您可以定义它是什么以及何时应该将其与其他所有数据类型一起使用。使用结构类型标签,它们在用途之间看起来完全不同,并且这些用途可以广泛变化。


结构标签的定义

结构标记是公用名下的标记集合。这些标记的类型不同,因此这些结构与数组标记不同。它们可用于 PLC 内部的相关数据集(仅限内存)或与 I/O 数据集相关的数据集。最后,它们可能是指在联网设备之间传递的信息。

这在各种标记与进程的某一部分(如计数器或计时器)相关的情况下非常有用。让我们具体研究一下计时器,无论程序中使用哪种类型的计时器,或者它的用途是什么,它总是包含最少的几个信息片段:



各种数据类型的这种组合都将被赋予相同的名称;我们可以称之为“计时器 1”。如果我们需要引用计时器结构范围内的特定数据或标签,例如指示进程结束的布尔值,我们可以将其称为 Timer 1.DN。某些 PLC 编程软件套件不允许直接访问这些标签。相反,它们要求程序员将这些内部标签链接到相同数据类型的现有标签。因此,尽管我们可能看不到此结构标签中的每个单独标签,但它们仍然存在。

其他一些常用的内置结构标签是计数器、电机驱动块、数学指令(至少包含一个输入和目标标签)和进一步的通信指令(例如以太网或 Modbus 读/写)。

结构标签的最终类型通常称为“用户定义”结构。这意味着用户有一个特定的相关信息块,这些信息块尚未在内置结构的作用域中解决。这并不总是在程序中看到,导致一些程序员完全熟悉用户定义的结构,而其他程序员以前从未见过它们。


用户定义结构的应用

在PLC程序员有合适的环境来创建他们的结构标签之后,这是完全有意义的。在那之前,想象它们是如何创建和使用的可能具有挑战性。

想象一下,一个由 10 条相同的设备线组成的流程,每条生产线可能有五个接近开关,并由联网的 VFD 驱动。您希望从所有 10 条线路中检索和存储传感器数据以及电机电流和频率,以便您可以在 HMI 上显示数据或随时对数据执行操作。

可以为电机数据创建 50 个布尔标签和 20 个整数或十进制标签。此策略的问题在于填充标签数据库的标签数量庞大,如果标签是逻辑命名的,则它们可能不会出现在标签列表中的同一字母位置。您的项目组织将是一场噩梦。

可以创建一个相对简单的用户定义结构标记,其中包含一个由 10 个布尔值和两个小数组成的数组。也许这些被称为“prox[1]”到“prox[10]”和“Motor_Amps / Hz”。现在剩下的唯一步骤是创建 10 个这样的用户定义的结构标签。

相同的标记总数仍然存在 - 您没有最小化数据量。但是,为了组织和数据操作,结构标签将使生活更轻松。这可以简化导入和导出标签列表、在 HMI 上显示数据以及将数据从一个结构标签移动(复制)到另一个结构标签等过程。如果它们属于同一类型,则这是单个移动,而不是我们在示例中需要的 12 个移动,如果它们是单独的标签。

结构类型标签当然不是最熟悉的数据类型,但它们肯定并不少见,因为它们用于构造计数器和计时器。创建唯一结构标签的能力可以减少编程的挫败感,并整合数据以使用比我们只能访问单个标签少得多的命令来执行操作。

展开阅读全文

页面更新:2024-04-17

标签:数据类型   计时器   数据结构   布尔   标记   定义   类型   结构   标签   数据   用户

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2008-2024 All Rights Reserved. Powered By bs178.com 闽ICP备11008920号-3
闽公网安备35020302034844号

Top