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

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

3天内不再提示

西门子SCL逻辑块中声明的变量或参数类型

机器人及PLC自动化应用 来源:机器人及PLC自动化应用 作者:机器人及PLC自动化 2021-08-25 18:07 次阅读

每类本地变量或参数,都有用各自关键字对标识的自己的声明子域。每个子域包含允许的详细的声明子域,子域可按任何顺序定位。

下表显示能够在各种逻辑块中声明的变量或参数类型。

变量作为:

静态变量VAR

...

END_VAR

临时变量VAR_TEMP

...

END_VAR

块参数作为:

输入参数VAR_INPUT

...

END_VAR

输出参数VAR_OUTPUT

...

END_VAR

输入/输出参数VAR_IN_OUT

...

END_VAR

静态变量

静态变量是本地变量,块运行时其值被保留。用来保存功能块的值,并包含在相应实例数据块中。

句法(Syntax)

静态变量在VAR / END_VAR声明区内声明。该声明子域是FB声明部分的一部分。编译之后,该子域和块参数子域决定了指定的实例数据块的结构。

在该子域能够:

建立变量,指定变量的数据类型和初始化变量。

如果要在当前FB中作为本地实例调(其他的)FB,则将一个被调用的FB声明为静态变量。

例子(Example)

VAR

RUN :INT;

MEASARR :ARRAY [1..10] OF REAL;

SWITCH :BOOL;

MOTOR_1,MOTOR_2 :FB100; // 实例声明

END_VAR

存取(Access)

从如下代码部分存取变量:

块内存取(Access within the block):在功能块的代码部分能够存取在声明部分声明的变量。详细的解释在标题为“赋值语句(Value Assignment)”节。

用实例DB进行外部存取(External access using the instance DB): 用索引存取能够从其他块存取变量,如DBx.变量。

临时变量

Temporary Variables

临时变量在本地属于逻辑块,不产生静态内存区域,他们位于CPU的堆栈里。本块正在运行时,其值才被保留。临时变量不能从声明它的块外存取。一个OB、FB或FC首次执行前,临时变量的值是不确定的。也不能被初始化。

如果只要求在OB、FB或者FC执行时记录中间结果,可以声明临时数据。

句法(Syntax)

临时变量在VAR_TEMP / END_VAR声明部分里声明。该声明部分是FB、FC或OB的一部分。通过变量声明以声明变量名和数据类型。

例子(Example)

VAR_TEMP

BUFFER 1 : ARRAY [1..10] OF INT ;

AUX1, AUX2 : REAL ;

END_VAR

存取(Access)

变量总是从逻辑块的代码部分存取,变量是在声明部分声明的(内部存取)。参见题为“赋值语句(Value Assignment)”节。

块参数

Block Parameters

参数是占位符,块被实际地调用时才指定一个值。在块里声明的占位符认为是指派了作为实际参数的值的形式变量。且参数提供了一个块间交换信息的机制。

块参数的类型(Types of Block Parameters)

被实际参数指定的形式输入参数(数据流入块)。

形式输出参数用来传递输出参数(数据 从块流出)。

有输入和输出参数功能的形式输入/输出参数。

句法(Syntax)

在功能块或函数的声明部分制作形式参数的声明,根据在三种声明子域内的参数类型组合参数。在变量声明中,指定参数名和数据类型。初始化只可能对一个FB的输入和输出参数。

声明形式参数时,不仅只能用基本的、复杂的和用户定义数据类型,也可用参数数据类型。

例子(Example)

VAR_INPUT // 输入参数

MY_DB : BLOCK_DB ;

CONTROLLER : DWORD ;

TIMEOFDAY : TIME_OF_DAY ;

END_VAR

VAR_OUTPUT // 输出参数

SETPOINTS: ARRAY [1..10] of INT ;

END_VAR

VAR_IN_OUT // 输入/输出参数

SETTING : INT ;

END_VAR

存取(Access)

块参数可从逻辑块的代码部分进行存取如下:

内部存取: 从在其声明部分已经声明该参数的逻辑块的代码部分存取。在题为“赋值语句(Value Assignment)”和“表达式、操作和地址(Expressions, Operations and Addresses)”节有解释。

用实例数据块外部存取: 用特定的DB能够存取功能块的块参数。

责任编辑:haq

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

    关注

    94

    文章

    3039

    浏览量

    115854
  • 变量
    +关注

    关注

    0

    文章

    613

    浏览量

    28366

原文标题:西门子SCL-声明子域概述

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

收藏 人收藏

    评论

    相关推荐

    西门子流量累计FB介绍

    西门子流量累计FB(Function Block)是一种专门为处理和计算流量数据而设计的功能,它通常在博途(TIA Portal)软件中被创建和使用。该功能的意义在于将复杂的流量
    的头像 发表于 12-19 10:28 140次阅读
    <b class='flag-5'>西门子</b>流量累计FB<b class='flag-5'>块</b>介绍

    西门子中继器怎么连接plc

    和PLC 西门子中继器 :通常用于接收PLC的控制信号,然后驱动较大的负载,如接触器、电机启动器等。 PLC :是工业自动化的核心控制设备,用于执行逻辑控制、数据处理和通信。 2. 确定信号
    的头像 发表于 09-05 09:56 441次阅读

    西门子中继器的作用与原理

    西门子中继器是西门子公司生产的一种通信设备,它在工业自动化和通信系统扮演着重要的角色。中继器的主要作用是放大和转发信号,以确保信号在长距离传输过程不会因为衰减而丢失
    的头像 发表于 09-05 09:47 561次阅读

    西门子PLC的复位操作

    西门子PLC(Programmable Logic Controller,可编程逻辑控制器)是一种广泛应用于工业自动化领域的控制设备。在实际应用过程,有时需要对PLC进行复位操作,以解决一些程序
    的头像 发表于 08-16 17:46 3177次阅读

    西门子总线协议有哪些

    西门子(Siemens)作为工业自动化领域的领先企业,其总线协议在自动化系统中发挥着重要作用。西门子总线协议主要包括了多种类型,这些协议支持不同的应用场景和通信需求。
    的头像 发表于 08-05 16:09 1043次阅读

    西门子plc参数丢失怎么解决

    西门子PLC(Programmable Logic Controller,可编程逻辑控制器)广泛应用于工业自动化领域,其参数设置对系统的正常运行至关重要。当参数丢失时,可能会导致系统无
    的头像 发表于 07-25 10:09 2222次阅读

    西门子PLCOB的功能详解

    西门子PLC(Programmable Logic Controller)作为工业自动化领域的核心设备,其内部功能强大、应用广泛。在西门子PLC,OB(Organization B
    的头像 发表于 06-15 11:27 4691次阅读

    西门子PLC的作用和工作原理

    在工业自动化领域中,可编程逻辑控制器(Programmable Logic Controller,简称PLC)扮演着至关重要的角色。西门子PLC,作为PLC市场的佼佼者,凭借其卓越的性能、稳定性
    的头像 发表于 06-15 11:26 2227次阅读

    西门子PLC的发展历史

    西门子,作为全球知名的工业自动化和数字化企业,其PLC(可编程逻辑控制器)产品的发展历程是工业自动化领域的重要篇章。从早期的二进制控制器到如今的智能化、网络化控制系统,西门子PLC的发展历程充满了
    的头像 发表于 06-15 11:26 1934次阅读

    西门子PLC总线故障怎么解决

    在工业自动化领域,西门子PLC(Programmable Logic Controller,可编程逻辑控制器)以其高可靠性、强稳定性和丰富的功能而备受青睐。然而,在实际应用,PLC总线故障时有发生
    的头像 发表于 06-13 18:18 2364次阅读

    西门子模块型号都代表什么意思

    西门子(Siemens)是一家德国跨国公司,其产品涵盖了工业自动化、能源、医疗、交通等多个领域。在工业自动化领域,西门子提供了各种模块化产品,包括PLC(可编程逻辑控制器)、HMI(人机界面
    的头像 发表于 06-11 16:20 4898次阅读

    西门子plc模块型号详解

    西门子PLC(Programmable Logic Controller,可编程逻辑控制器)是工业自动化领域中非常重要的一种设备,其模块化的设计使得其应用范围非常广泛。本文将详细介绍西门子PLC
    的头像 发表于 06-11 16:18 5972次阅读

    西门子变频器故障代码 西门子变频器参数说明

    使用过程西门子变频器也可能出现故障。本文将详细介绍西门子变频器的常见故障代码,并且给出相应的参数说明。 一、常见的西门子变频器故障代码包
    的头像 发表于 02-14 17:38 1.9w次阅读

    西门子PLC和施耐德PLC区别

    西门子PLC系统的设计、建造工作量小,维护方便,容易改造,西门子PLC用存储逻辑代替接线逻辑,大大减少了控制设备外部的接线,使控制系统设计及建造的周期大为缩短,同时维护也变得容易起来。
    发表于 01-17 10:14 2100次阅读

    西门子博图SCL练习1:使用FC计算平均值

    西门子博图SCL练习1:使用FC计算平均值
    的头像 发表于 01-02 10:25 2794次阅读
    <b class='flag-5'>西门子</b>博图<b class='flag-5'>SCL</b>练习1:使用FC计算平均值