机器自动化控制器原理与应用
上QQ阅读APP看书,第一时间看更新

3.3 变量

在NJ系列控制器中,变量用来与外部设备交换I/O信息,完成数据计算和其他过程。

变量存储与外部设备交换的I/O数据,或存储内部POU处理时的临时数据。换句话说,变量是一个数据的容器,有名字、数据类型和其他属性。

不需要为变量分配一个内存地址。然而,需要时可以分配一个特定的内存地址,例如,NJ系列CPU单元自动为变量在内存区分配地址。

3.3.1 变量类型

变量一般分为下面三种类型。

1.用户定义变量

用户定义一个用户变量的所有的属性。

2.半用户定义变量

这些变量用来访问特定的设备和数据。有两种类型的半用户定义的变量:设备变量和凸轮数据变量。

3.系统定义变量

在NJ系列CPU单元里,系统定义的变量预先提供。名称和所有的属性都由系统定义,它们有特定的功能。每一种功能模块都要使用系统定义的变量。

3.3.2 应用于POU的用户定义变量的类型

在POU中应用的用户定义的变量类型如下。

1.本地变量

本地变量定义在一个POU(程序、功能或功能块)中,它只能在该POU中被读或写。如果POU是一个程序,本地变量就是内部变量。如果POU是一个功能块或功能,本地变量就是内部变量、输入变量、输出变量、输入-输出变量和外部变量的统称。

(1)内部变量

内部变量只用在一个POU中,一个内部变量在POU的本地变量表中声明,不能从POU外访问内部变量的值。在不同的POU中可以声明同一名称的内部变量,这些变量的每一个都分配不同的内存地址。

(2)输入变量

当POU被调用时,从调用的POU为输入变量分配输入参数的值。输入变量在POU的本地变量表中声明。

(3)输出变量

在一个POU的处理完成之前,将返回到调用的POU中的输出参数分配给输出变量。输出变量在POU的本地变量表中声明。

(4)输入-输出变量

当POU被调用时,从调用的POU为输入-输出变量分配输入-输出参数的值。如果改变一个POU中输入-输出变量的值,输入-输出参数的值随之改变。输入-输出变量在POU的本地变量表中声明。

2.外部变量

外部变量用来访问POU外部的数据。可以从POU中访问全局变量。

3.全局变量

全局变量在全局变量表中声明。

从系统配置和从单元配置中自动产生的设备变量,以及从轴设置表中产生的轴/轴组变量,自动登记为全局变量。

3.3.3 变量的属性

变量的属性见表3-12。

3-12 变量的属性

978-7-111-44136-6-Chapter03-80.jpg

注意,并非所有的变量都支持表3-12中的变量属性,这取决于变量的类型,例如,程序中的内部变量不支持网络公开属性和边缘属性,仅全局变量支持网络公开属性,边缘属性仅用于功能块的输入变量。