西门子用户自定义数据类型“UDT”

一、什么是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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值