首页 理论教育 复杂数据类型详解

复杂数据类型详解

时间:2023-07-01 理论教育 版权反馈
【摘要】:复杂数据类型是基本数据类型的组合。S7-1200CPU支持以下复杂数据类型:字符串;日期时间;结构;数组。表4-4 DTL结构DTL类型的数据范围为:DTL#1970-01-01-00∶00∶00.0~DTL#2262-04-11-23∶47∶16.854775807,可以在DB块、OB/FC/FB接口区、PLC数据类型处定义,定义DTL时起始值必须包含年、月、日、时、分、秒,TIA博途软件会根据年、月、日自行计算星期的值。图4-6 STRUCT的定义4.数组ARRAY类型是由数目固定且数据类型相同的元素组成的数据结构。

复杂数据类型详解

复杂数据类型是基本数据类型的组合。S7-1200CPU支持以下复杂数据类型:

字符串;

•日期时间(DTL);

•结构(STRUCT);

数组(ARRAY)。

1.字符串

S7-1200CPU包括两种字符串,STRING和WSTRING均是由字符串最大长度、字符串实际长度以及字符组成,如图4-2所示。

978-7-111-58391-2-Chapter04-6.jpg

图4-2 字符串的组成

字符串可以在DB、OB/FC/FB接口区、PLC数据类型处定义,定义时可以定义字符串的最大长度,也可以使用默认最大长度,如图4-3所示。

字符串可以以符号寻址的方式整体使用,也可以只使用字符串的某一个字符,例如变量名[2],即为字符串的第2个字符,如图4-4所示。

978-7-111-58391-2-Chapter04-7.jpg

图4-3 字符串的定义

978-7-111-58391-2-Chapter04-8.jpg

图4-4 字符串的使用

字符串的使用步骤如下:

①字符串整体使用,将字符串常数‘abcd’移动到字符串类型的变量。

②从字符串“西门子”中取第二个字符“门”,移动到字符类型的变量。

2.日期时间(DTL)

DTL用于表示完整的日期时间,有固定的结构,见表4-4。

4-4 DTL结构

978-7-111-58391-2-Chapter04-9.jpg

DTL类型的数据范围为:DTL#1970-01-01-00∶00∶00.0~DTL#2262-04-11-23∶47∶16.854775807,可以在DB块、OB/FC/FB接口区、PLC数据类型处定义,定义DTL时起始值必须包含年、月、日、时、分、秒,TIA博途软件会根据年、月、日自行计算星期的值。

使用DTL时可以使用整个DTL变量,也可以单独使用其中一个组件。如变量名.YEAR、变量名.MINUTE等,如图4-5所示。

978-7-111-58391-2-Chapter04-10.jpg(www.xing528.com)

图4-5 DTL数据类型及其单一组件的使用

3.结构(STRUCT)

STRUCT类型是一种由多个不同数据类型元素组成的数据结构,元素可以是基本数据类型,也可以是STRUCT、数组等复杂数据类型以及PLC数据类型等,如图4-6所示。STRUCT类型嵌套STRUCT类型的深度限制为8级。

STRUCT类型的变量在程序中可作为一个变量整体,也可单独使用组成该STRUCT的元素。

STRUCT类型可以在DB、OB/FC/FB接口区、PLC数据类型处定义使用。

978-7-111-58391-2-Chapter04-11.jpg

图4-6 STRUCT的定义

4.数组(ARRAY)

ARRAY类型是由数目固定且数据类型相同的元素组成的数据结构。

ARRAY类型的定义和使用需要注意以下几点:

•ARRAY类型可以在DB、OB/FC/FB接口区、PLC数据类型处定义;

•数组定义:名称[维度1下限..维度1上限,维度2下限..维度2上限,...]of<数据类型>;

•数组元素的数据类型包括:除数组类型、VARIANT类型以外的所有类型;

•数组下标的数据类型为双整数,下限值必须小于或等于上限值,上下限的限值为-2147483648~2147483647;

•一个数组最多可包含6个维度;

•可以使用局部常量或全局常量定义上下限值;

•使用时,数组元素通过下标进行寻址。下标可以是常数、常量、变量,可以是混合使用(多维数组),不可以是表达式,因此使用数组的变量下标,可以在程序中很容易地实现间接寻址,示例见第4.6章节常见问题5;

•FC的INPUT/INOUT以及FB的INOUT可以定义形如ARRAY[∗]这种变长数组,示例见第5.1.11章节常见问题6;

•数组可以降维使用。

例如:定义全局常量aaa=3,变量bbb为int类型,变量ccc为int类型;数组定义如图4-7所示,数组使用见表4-5。

978-7-111-58391-2-Chapter04-12.jpg

图4-7 数组的定义

4-5 数组的使用

978-7-111-58391-2-Chapter04-13.jpg

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈