0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

用户定义数据类型的结构

机器人及PLC自动化应用 来源:机器人及PLC自动化应用 作者:机器人及PLC自动化 2022-08-19 10:06 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

用户定义数据类型的结构

Structure of a User-defined Data Type

用户定义数据类型(UDTs)是你自己创建的特殊数据结构。因用户数据类型指派了名字,他们可以用很多次。一旦他们被定义,就可在CPU程序的任意点使用;换句话说,他们是共享数据类型,而且他们能够用在:

在块中用同样的方法,作为基本的或复杂的数据类型,或

作为模板建立同样数据结构的数据块。

当使用用户定义数据类型时,记住在S7-SCL源文件中他们应在使用他们的块之前。

27e638a8-1efe-11ed-ba43-dac502259ad0.png

UDT标识符(UDT Identifier)

在关键字TYPE后,键入关键字UDT,后面跟一个数字或简明的UDT符号名。块号是0到65533之间的一个数值。

例子(Examples:)

TYPE UDT10
TYPE SUPPLYBLOCK

指定数据类型(Specifying the Data Type)

数据类型总是用STRUCT数据类型清单来说明。数据类型UDT能够用在逻辑块或数据块或的声明子区或指派数据块。

UDT定义的例子(Example of a UDT Definition)

TYPE MEASVALUES
STRUCT
// 带符号标识答的UDT定义
BIPOL_1 : INT := 5;
BIPOL_2 : WORD := W#16#FFAA ;
BIPOL_3 : BYTE := B#16#F1 ;
BIPOL_4 : WORD := B#(25,25) ;
MEASURE : STRUCT
BIPOLAR_10V : REAL ;
UNIPOLAR_4_20MA : REAL ;
END_STRUCT ;
END_STRUCT ;
END_TYPE

// 在FB中UDT的使用
FUNCTION_BLOCK FB10
VAR
MEAS_RANGE : MEASVALUES;
END_VAR
BEGIN
// . . .
MEAS_RANGE.BIPOL_1 := -4 ;
MMEAS_RANGE.MEASURE.UNIPOLAR_4_20MA := 2.7 ;
// . . .
END_FUNCTION_BLOCK

审核编辑 :李倩

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 模板
    +关注

    关注

    0

    文章

    110

    浏览量

    21025
  • 数据类型
    +关注

    关注

    0

    文章

    237

    浏览量

    14108

原文标题:Structure of a User-defined Data Type

文章出处:【微信号:gh_a8b121171b08,微信公众号:机器人及PLC自动化应用】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    枚举类型的讲解

    枚举是一个基本的数据类型,它可以让数据更简洁。 如果写一个判断星期的文章,我们当然可以使用宏定义来使代码更加易懂,不过: #define MON 1 #define TUE 2
    发表于 12-08 08:14

    typedef结构体使用

    虽然结构体的出现能够让我们有一个更科学的数据结构来管理数据,但是每次使用结构体都需要struct...,未免显得有些冗长和麻烦。有了typedef的助攻,我们就可以很轻松地给
    发表于 12-08 07:04

    电能质量在线监测装置支持的数据推送频率是多少?

    电能质量在线监测装置的数据推送频率 可灵活配置 ,根据数据类型(稳态 / 暂态 / 事件)和应用场景(电网关口 / 工业用户 / 新能源并网)的不同, 覆盖从毫秒级到小时级的广泛范围 ,主流装置支持
    的头像 发表于 12-05 15:07 106次阅读
    电能质量在线监测装置支持的<b class='flag-5'>数据</b>推送频率是多少?

    C语言程序的结构

    定时器可用来进行时间片的轮询。基于以上的想法,构造了下述数据类型。   typedef unsigned char uInt8   typedef struct {   void (*proc
    发表于 11-26 08:12

    C语言自动类型转换

    是通过定义类型转换运算来实现的。其一般形式为: (数据类型) (表达式) 其作用是把表达式的运算结果强制转换成类型说明符所表示的类型
    发表于 11-25 08:04

    C语言强制类型转换

    强制类型转换是通过定义类型转换运算来实现的。其一般形式为: (数据类型) (表达式) 其作用是把表达式的运算结果强制转换成类型说明符所表
    发表于 11-24 06:32

    C语言结构体使用

    有时候需要将不同类型数据组合为一个整体,以便于引用。例如,一名学生有学号、姓名、性别、年龄等属性,如果针对每个属性都单独定义一个变量,那么当有多名学生时变量就难以分清。结构体就是用来
    发表于 11-12 08:30

    SQL 通用数据类型

    SQL 通用数据类型 数据库表中的每个列都要求有名称和数据类型。Each column in a database table is required to have a name and a
    的头像 发表于 08-18 09:46 576次阅读

    定义IO初始化结构

    由上述IOPORT相关功能的枚举类型我们可以知道,在对IOPORT模块进行初始化时需要根据情况配置它们。因此我们定义一个IOPORT初始化的结构类型IOPORT_Init_t,它的成
    的头像 发表于 07-16 16:26 1115次阅读

    IEC101协议可以传输什么类型数据

    维度展开说明: 一、IEC101协议支持的核心数据类型 协议通过 应用服务数据单元(ASDU) 定义数据格式,覆盖电力系统关键信息,具体分类如下:
    的头像 发表于 05-21 11:37 705次阅读

    详解Prometheus的数据类型

    对于 Prometheus 生态的监控系统,PromQL 是必备技能,本文着重点讲解这个查询语言,掺杂一些生产实践场景,希望对你有所帮助。
    的头像 发表于 05-13 09:50 1256次阅读
    详解Prometheus的<b class='flag-5'>数据类型</b>

    别再说你的单片机RAM不够用了,来看看这个吧(可下载)

    数据类型-结构类型,对代码中出现的变量进行类别的划分,用构造的结构类型定义
    发表于 03-28 14:12 0次下载

    labview数据类型与PLC 数据类型之间的转换(来自于写入浮点数到汇川 PLC中的数据转换关键的修改)

    为32位无符号整型U32 2、将U32拆分为两个U16,分高低位写入PLC 3、在PLC中,将低位寄存器设置为浮点数数据类型 4、结果:PLC中一直无法正确转换。 原因及解决方法: 1、labview
    发表于 02-24 19:01

    SIM卡座按结构类型可划分成哪些

    在探讨SIM卡座按结构分类的不同类型时,我们首先需要了解SIM卡座的基本定义和功能。SIM卡座是手机或其他电子设备中用于放置SIM卡的卡槽,通过卡座上的弹簧片与SIM卡接触,提供手机与SIM卡之间
    的头像 发表于 01-13 18:22 2430次阅读
    SIM卡座按<b class='flag-5'>结构</b><b class='flag-5'>类型</b>可划分成哪些

    请问ADS1299使用Test Signals ,获取到的数据类型是什么?

    请问ADS1299使用Test Signals ,获取到的数据类型是什么?使用什么公式可以还原?据了解,外部信号转换完成后是浮点型的,但是没有看到这块的说明。
    发表于 01-06 07:14