一、什么是UDT

  用户数据类型(User Data Type)是一种由多个不同数据类型元素组成的数据结构(Struct),元素可以是基本数据类型,也可以是Struct、数组等复杂数据类型以及其它UDT等。

什么是Struct
结构体(Struct)是由一系列具有相同类型或不同类型的数据构成的数据集合也叫结构

UDT的特点:
在这里插入图片描述

二、UDT的使用

a、定义为UDT类型的变量在程序中可作为一个变量整体使用,也可单独使用组成该变量的元素。

b2、对于某个程序功能的多次调用,且程序内部由多个相同或不同的数据类型来组成,我们均可以使用UDT的形式来进行结构化的编程,如对10台电机进行控制、PN通讯时的数据交互处理等等

1、如何建立UDT

方法一(推荐)

①、新建用户数据类型(UDT),然后全局DB数据块中调用

在这里插入图片描述

表格中可填写多个不同的数据类型

②新建一个DB块,内部创建一个数据,数据类型是上面自己创建的UDT类型的 “电气控制” 类型
在这里插入图片描述
在这里插入图片描述

方法二

①、新建用户数据类型(UDT),然后全局DB数据块中调用

在这里插入图片描述

表格中可填写多个不同的数据类型

②新建一个DB块,数据类型选择上面创建的“电气控制”UDT类型
在这里插入图片描述
在这里插入图片描述
与方法一相比有弊端,推荐使用方法一;

三、案例

案例:建立一个简单的电机标准控制块多次调用,并使用UDT数据类型提升编程效率(在博途中演示)
控制电机启动停止,启动计数;

1、步骤一

新建一个FB类型的电机标准块
在这里插入图片描述
在这里插入图片描述
创建新的数据类型:
在这里插入图片描述

创建一个全局DB块存放数据:

DB块中创建一个包含10个电机控制数据类型的数组数据,建立了10组,如下图:
在这里插入图片描述

再创建一个名为电机FB2块,并在其中调用电机标准块FB1
在这里插入图片描述
多重实例调用,且调用多次:
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在主程序中调用调用多重实例的FB2块
在这里插入图片描述

下载运行,启动停止电机,可以看到不同的电机运行的次数不同:
在这里插入图片描述

对于重复性比较多的情形,可以考虑使用UDT

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐