西门子PLC程序中的数据类型
时间:2015-12-31 11:52 来源:未知 作者:admin 点击:次
在西门子plc程序中,为了进行数学运算、设定定时器时间、设定计数器计数值等,需要使用各种数据。 程序中的各种数据(如常数、十六进制数、浮点数、时间、数组等)都必须是PLC所允许的类型与可识别的格式,即:PLC对数据有“类型”与“格式”两方面的要求。 西门子S7系列PLC根据数据的字长,允许使用的类型有基本数据、复合数据、参数三大类。 1.基本数据 基本数据是指字长在2个字(32位)以下的数据,包括二进制位( bit)、字节(Byte)、字(Word)、双字( Double Word),ASCII字符、整数(Integer)、双字长整数(Double Integer)等,这些数据符合IEC 1131-3的规定。 基本数据在PLC存储器中有固定的长度。如:二进制位为l位,字节为8位,字为16位,双字为32位等。 当PLC使用符号地址时,在符号表或地址声明表的“类型(Type)”栏必须填写数据的“类型代号”,以明确所使用数据的格式与所占的字长。 在S7系列PLC中,基本数据的数据类型代号与输入范围如表8-5.1所示。 表中所说的ASCII(American Strand Code for Information Interchange,美国标准信息交换编码)是利用7位二进制(00~7F)来代表1个字符的最普遍的编码方式,常用于串行通信。7位二进制(00~7F)与字符的对应关系见表8-5.2。S7可以使用的代码范围为31~7E,“DEL”(代码7F)不可以使用。 2.复合数据 复合数据是指字长大于2个字(32位)的数据,数据可以通过基本数据组合而成。S7可以使用的复合数据包括以下几类: ①数组:所谓数组(类型代号ARRAY),是将同类型的基本数据进行组合而形成的单元数据,如表格数据等。 ②结构:所谓结构( STRUCT),是将不同类型的基本数据进行组合而形成的单元数据。 ③字符串:所谓字符串(STRING),是多个相同或不同字符(如ASCII码)的组合。字符串的默认长度为256字节,其中2字节用于存放字头,实际字符最大可以到254个。 ④日期与时间:日期与时间( DATE-AND-TIME)用于存储实时时间,格式为年.月,日一时一分.秒:占用4个字长(8个字节),使用BCD码。其中,年、月、日、时、分、秒各为2位(占1个字节):毫秒为3位(占1.5个字节)。 例如,2006年11月15日8点30分58秒的存储格式为:06-11-15-08: 30: 58.000。 ⑤用户定义数据:编程人员可以将S7的以上各种数据类型进行重新组合,生成新的数据类型,这一数据类型称为“用户定义数据( User Defined Data Types)”,数据类型代号为UDT。 3.参数 在SIEMENS公司的S7系列PLC中,在逻辑块之间进行相互传递的数据称为参数。S7的参数分为“形式参数”与“实际参数”两类。 在结构化编程时,为了使得某功能块能够成为可以在同- PLC循环内多次调用的通用功能块,功能块中所使用的信号与数据不可以是“绝对地址”或“绝对数值”,它们只能以“符号地址”或“符号数据”的形式出现。调用通用功能块时,可以通过对这些“符号地址”或“符号数据”的不同赋值,在每次调用同一功能块时,得到不同的结果。 被调用的功能块中所使用的“符号”称为形式参数(Format Parameter),而在调用块中对“符号”所赋予的实际地址或实际数值称为实际参数(Actual Parameter)。 如图8-5.1所示,图中的start、stop、run为形式参数,而IO.1、I0.2、QO.1则为实际参数。 在每次调用功能块前,必须用实际参数对块中所使用的形式参数赋值。实际参数与形式参数的数据类型必须一致,例如,当功能块中的形式参数定义的数据类型为“字( Word)”时,则赋值的实际参数必须为字格式,如MWO、IWO、QWO等,而不能用MO.1、IO.1、QO.1或MBO、IBO、QBO等进行赋值。 S7中可以使用的参数类型有表8-5.3所示的几种。 (责任编辑:admin) |