STEP 7 Struct是什么数据类型
刘玉蓉
发布于2014-11-03 17:17
1
0
标签:
请问 STEP 7 Struct是什么数据类型
在什么样的情况下需要用到 Struct 数据类型!!
佳答案
Struct(结构性类型)是由不同数据类型组成的、属于复合型数据类型,它是用来定义一组相关的数据,其长度由用户定义,它与数组(Array)类型相反(ARRAY是由相同类型的数据组成的数组)。
许多关于结构类型的书籍中提到的关于电机控制系统中,把一个电机所有控制元素,如运行速度、额度电流、起动电流和运行方向等作为参数或逻辑块的局部变量,并且在全局数据块中声明,这样利用它可以结构化大量的数据并且可以用符号进行处理,由于访问结构的元素包含结构的名称,使程序更容易读,指令编写更清晰。
如电机的一组不同类型的数据(称为元素)组成的结构命名为Motor_Data,并且放在共享数据块DB1中,为了用符号访问结构中的一个元素,需要给数据块分配一个符号名,如Drive_1. 结构的关键字是“STRUCT“,结构的结束用END_STRUCT. 这样在打开数据块DB1(符号名Drive_1),可以看到上面变量声明表为:
Address(地址) Name(名称) Type(类型) Initial Value(初始值)
0.0 Struct
0.0 Motor_Data(电机数据) Struct
0.0 Operating_speed(运行速度) INT
2.0 Rated_current(额定电流) REAL
6.0 Start_current (起动电流) REAL
10.0 Max_temperature (大温度)REAL
14.0 Turning_direction (转动方向)BOOL
=16.0 END_STRUCT
=16.0 END_STRUCT
如果访问上述结构中的某个元素,如Rated_current(额度电流),可以直接用下列指令:
L “Drive_1”.Motor_data.Rated_current
其中,“Drive_1”是数据块的符号名,该数据块包含结构、结构名称(用点分割)在数据块的后面。结构的元素名(用点分割)跟在结构名的后面。