1 编程语言SCL中ANY数据类型-德赢Vwin官网 网
0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

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

3天内不再提示

编程语言SCL中ANY数据类型

机器人及PLC自动化应用 来源:机器人及PLC自动化应用 作者:机器人及PLC自动化 2021-05-25 11:02 次阅读

ANY数据类型

编程语言 SCL 和 STL 中,如果在块参数中设定了一个 ANY 指针,则任意类型的存储器都可以在块调用时传递。

但是,ANY 指针不能存储有关存储器结构的任何信息。例如,ANY 指针不能保存指向 PLC数据类型变量的信息。ANY 指针将其作为 BYTE 类型的 ARRAY。

ANY 数据类型的参数可以被传递到系统函数块 (SFB) 或系统函数 (SFC)。

下图给出了 ANY 指针的结构:

4d18cad2-bc3f-11eb-bf61-12bb97331649.png

在SCL中,能够声明ANY数据类型的变量如下:

作为块的形式参数;当块被调用时,这些参数能用任意数据类型的实际参数提供。

作为临时变量;能够指定任意数据类型的值给这些变量。

能够用下列数据作为实际参数或作为赋值语句的右边部分:

本地和共享变量

在DB中的变量(绝对地址或称号地址)

在本地实例中的变量(绝对地址或称号地址)

NIL常量

指定一个空指针。

ANY数据类型

定时器、计数器和块

指定标识符(如:T1, C20或FB6)。

限制(Restrictions)

ANY数据类型允许用作FB和FC的形式输入参数、输入/输出参数,及FC的输出参数。常量不允许用作其实际参数或用在其赋值语句的右边,除NIL常量外。

当调用FB或FC时,如果将临时变量用作ANY类型的形式参数,不能传递参数到远程块,传递他们时临时变量将失效。

这种类型变量不能用作结构类型的组件类型或作为数组的元素类型。

当调用FC或FB时,如果形式参数作为输入参数声明,只能指定过程输入(%PEW)给ANY类型的形式参数。

当调用FB时,如果形式参数作为输出参数声明,只能指定过程输出(%PAW)给ANY类型的形式参数。

B#16#80 P I/O

B#16#81 I 输入存储区

B#16#82 Q 输出存储区

B#16#83 M 位存储的存储区

B#16#84 DBX 数据块

B#16#85 DIX 背景数据块

B#16#86 L 本地数据

B#16#87 V 先前的本地数据

ANY数据类型举例

Example of the ANY Data Type

VAR_INPUT

iANY : ANY;

END_VAR

VAR_TEMP

pANY : ANY;

END_VAR

CASE ii OF

1:

pANY := MW4; // pANY包含MW4的地址

3..5:

pANY := aINT[ii]; // pANY包含aINT中的第ii个元素的地址;

100:

pANY := iANY; // pANY contains the value of the iANY input variable

ELSE

pANY := NIL; // pANY包含NIL指针的值

END_CASE;

SFCxxx(IN := pANY);

在VASS标准中的应用:

AnyRob_A :ANY;// ANY变量获得机器的发出给PLC的输出地址

pRob_A AT AnyRob_A: STRUCT 扩展分解建立结构体

SyntaxId :BYTE; // Byte 0

DataType :BYTE; // Byte 1 数据/参数类型

DataCount:WORD; // Byte 2+3 变量长度

DBNR :WORD; // Byte 4+5 数据库编号

BZ :DWORD; // Byte 6 bis 10 区域指针

END_STRUCT;

原文标题:西门子SCL -ANY数据类型

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

责任编辑:haq

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

    关注

    8

    文章

    7002

    浏览量

    88937
  • 西门子
    +关注

    关注

    94

    文章

    3034

    浏览量

    115777
  • SCL
    SCL
    +关注

    关注

    1

    文章

    239

    浏览量

    17057

原文标题:西门子SCL -ANY数据类型

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

收藏 人收藏

    评论

    相关推荐

    编程语言的误区与常见问题

    误区一:编程语言的选择 常见问题: 初学者在选择编程语言时,往往会被市场上的热门语言所吸引,而忽视了自己的实际需求和兴趣。 一些开发者认为某
    的头像 发表于 11-15 09:35 267次阅读

    FPGA编程语言的入门教程

    编程基础 基本结构 Verilog程序的基本结构包括模块(module)和端口(port)定义。每个模块都有输入(input)、输出(output)和可能的双向(inout)端口。 数据类型
    的头像 发表于 10-25 09:21 235次阅读

    AIC23采集到的数据是应该用什么数据类型来接收?int还是unsigned int?

    AIC23采集到的数据是应该用什么数据类型来接收,int还是unsigned int? 这个采集到的数字是什么含义呢?代表的是声音信号的幅值? while(!MCBSP_rrdy(hMcbsp
    发表于 10-18 06:56

    labview数据类型的取值范围是多少

    LabVIEW的数据类型丰富多样,涵盖了整数、小数(浮点数)、复数等多种类型,每种类型都有其特定的取值范围。以下是对LabVIEW中常见数据类型取值范围的说明: 整数
    的头像 发表于 09-04 17:33 993次阅读

    常见的遥感数据类型有哪些

    遥感技术是一种通过遥感器在远离目标的位置获取目标地物的电磁波信息,并进行分析的技术。遥感数据类型繁多,涵盖了从可见光到红外、微波等多个波段,以及不同的数据格式和分辨率。 光学遥感数据 : 全色影像
    的头像 发表于 09-04 14:30 1463次阅读

    plc编程st语言怎么编

    PLC(可编程逻辑控制器)编程的ST(Structured Text)语言是一种高级编程语言
    的头像 发表于 08-25 10:05 1116次阅读

    鸿蒙原生应用元服务开发-初识仓颉开发语言

    式和面向对象等多范式编程,融合了高阶函数、代数数据类型、模式匹配、泛型等函数式语言的先进特性,还有封装、接口、继承、子类型多态等支持模块化开发的面向对象
    发表于 08-15 10:00

    鸿蒙原生应用元服务开发-初识仓颉开发语言

    式和面向对象等多范式编程,融合了高阶函数、代数数据类型、模式匹配、泛型等函数式语言的先进特性,还有封装、接口、继承、子类型多态等支持模块化开发的面向对象
    发表于 07-30 17:49

    技术干货驿站 ▏深入理解C语言:基本数据类型和变量

    在C语言中,数据类型和变量是编程的基础,也是理解更复杂概念的关键。数据类型决定了变量的内存分配、存储范围和操作方式,而变量则是存储数据的容器
    的头像 发表于 07-26 17:53 2088次阅读
    技术干货驿站 ▏深入理解C<b class='flag-5'>语言</b>:基本<b class='flag-5'>数据类型</b>和变量

    ESP32-S3是否支持修改控制端点数据类型

    ESP32-S3是否支持修改控制端点数据类型(如标准类型,自定义类型); 我需要在控制传输数据阶段的DATA0包改为我的USB设备规定的8个字节的
    发表于 06-07 06:00

    嵌入式C语言结构体基本实现

    C语言中的数组只能允许程序员定义存储相同类型数据。但是结构是C语言编程中允许您存储不同数据类型
    的头像 发表于 05-11 08:49 1011次阅读
    嵌入式<b class='flag-5'>中</b>C<b class='flag-5'>语言</b>结构体基本实现

    C语言数据类型有哪些

    在 C 语言中,数据类型指的是用于声明不同类型的变量或函数的一个广泛的系统。变量的类型决定了变量存储占用的空间,以及如何解释存储的位模式。
    发表于 03-20 10:56 468次阅读
    C<b class='flag-5'>语言</b><b class='flag-5'>数据类型</b>有哪些

    嵌入式系统C语言结构体的基础实现与应用

    C语言中的数组只能允许程序员定义存储相同类型数据。但是结构是C语言编程中允许您存储不同数据类型
    发表于 03-12 14:29 494次阅读
    嵌入式系统<b class='flag-5'>中</b>C<b class='flag-5'>语言</b>结构体的基础实现与应用

    C语言如何掌握强制类型转换的精髓

    强制类型转换是把变量从一种类型转换为另一种数据类型。例如,如果您想存储一个 long 类型的值到一个简单的整型,您需要把 long
    的头像 发表于 02-26 11:00 515次阅读
    C<b class='flag-5'>语言</b>如何掌握强制<b class='flag-5'>类型</b>转换的精髓

    西门子SCL PLC高级编程教程

    借助SCL,可以简化控制技术领域复杂的计算、算法、数据管理和数据组织等编程工作。
    发表于 01-22 10:27 708次阅读
    西门子<b class='flag-5'>SCL</b> PLC高级<b class='flag-5'>编程</b>教程