您好!欢迎光临工博士商城

北京众平科技股份有限公司

产品:1237    

咨询热线:13693103194

QQ QQ
您当前的位置:首页 » 新闻中心 » 西门子PLC的局部变量如何使用
产品分类
新闻中心
西门子PLC的局部变量如何使用
发布时间:2022-05-25        浏览次数:124        返回列表
  临时变量是临时存储在本地数据区的变量。只有在执行POU时,才使用定义的临时变量,而在执行POU后,不再使用临时变量的值。在主程序或中断程序中,局部变量表只包含TEMP变量。子程序的局部变量表中也有三个变量:输入变量、输出变量和输入输出变量。
 
  在局部变量表中赋值时,只需要指定声明的局部变量的类型(TEMP、in、IN_OUT或OUT)和数据类型(参见SIMATIC和IEC1131-3数据类型),但不需要指定内存地址。程序编辑器自动为L存储区中的所有局部变量指定存储位置。起始地址为LO,每字节8位,可就地访问。字节、字和双字在本地内存中按字节顺序分配,如LBx、LWx或LDx。
 
  当局部变量作为参数传递给子例程时,子例程的局部变量表中指定的数据类型必须与调用POU中的数据类型值匹配。比如在主程序OB1中调用子程序SBR0,使用全局符号INPUT1作为子程序的输入参数。在SBR0的局部变量表中,已经定义了一个名为FIRST的局部变量作为输入参数。OB1调用SBRO时,INPUT1的值传入FIRST,INPUT1和FIRST的数据类型必须匹配。
 
  在程序中使用符号名时,程序编辑器首先检查关于POU的局部变量表,然后检查符号表/全局变量表。如果符号名称在两个地方都没有定义,程序编辑器会将其视为全局符号。程序编辑器指定一条绿色波浪下划线,并用双引号将名称括起来,例如“UndefinedLocalVar”(未定义的局部变量)。如果符号名稍后被赋值,程序编辑器将不会再次自动读取局部变量表并对其进行修改。为了将符号名用作局部变量,您必须手动删除程序代码中的引号,并在符号名前面插入#符号,例如,将其更改为#UndefinedLocalVar。
 
  每个子程序***多可以调用16个输入/输出参数。如果超过16个,将返回一个错误。选择所需变量类型所在的行,并在名称字段中键入变量名,在数据类型字段中键入数据类型。在局部变量表中无需在变量名前加#号,程序代码中只在局部变量名前加#号。  局部变量名可以包含数字、字母、下划线(_)或扩展字符(ASCII128——255)。***个字符必须是字母或扩展字符,关键字不能用作符号名称。
 
  本地变量表中的变量名下载存储在CPU内存中,使用较长的变量名会占用更多的存储空间。



 

联系热线:13693103194   联系人:孙晨玥 联系地址:北京市朝阳区东土城路4号3幢4层

技术和报价服务:星期一至星期六8:00-22:00 北京众平科技股份有限公司