
s7-200smartplc编程说明资料.pdf
18页数据类型 数据类型 S 7 - 2 0 0 S M A R T 的数据主要分为: l与实际输入/ 输出信号相关的输入/ 输出映象区: ¡II :数字量输入(D I ) ¡ :数字量输出(D O ) ¡A IA I :模拟量输入 ¡A QA Q :模拟量输出 l内部数据存储区 ¡VV :变量存储区,可以按位、字节、字或双字来存取V 区数据 ¡MM :位存储区,可以按位、字节、字或双字来存取M 区数据 ¡TT :定时器存储区,用于时间累计 ¡CC :计数器存储区,用于累计其输入端脉冲电平由低到高的次数 ¡H CH C :高速计数器,独立于 C P U 的扫描周期对高速事件进行计数,高速计数器的当前值是只读 值,仅可作为双字(3 2 位)来寻址 ¡A CA C :累加器,可以像存储器一样使用的读/ 写器件,可以按位、字节、字或双字访问累加器中的 数据 ¡S MS M :特殊存储器,提供了在 C P U 和用户程序之间传递信息的一种方法 可以使用这些位来选 择和控制 C P U 的某些特殊功能, 可以按位、字节、字或双字访问 S M 位 ¡LL :局部存储区,用于向子例程传递形式参数 ¡SS :顺序控制继电器,用于将机器或步骤组织到等效的程序段中,实现控制程序的逻辑分段。
可以按位、字节、字或双字访问 S 存储器 存储器范围及特性 存储器范围及特性 表1 . 存储器范围 数据寻址 S7-200 SMART 系统中的数据及其格式 S7-200 SMART 系统中的数据及其格式 说明 C P U S R 2 0 C P U S R 4 0 , C P U S T 4 0 C P U C R 4 0 C P U S R 6 0 ,C P U S T 6 0 用户程序大小 1 2 2 8 8 字节 2 4 5 7 6 字节 1 2 2 8 8 字节 3 0 2 7 0 字节 用户数据大小 8 1 9 2 字节 1 6 3 8 4 字节 8 1 9 2 字节 2 0 4 8 0 字节 过程映象输入寄存器 I 0 . 0 到I 3 1 . 7 I 0 . 0 到I 3 1 . 7 I 0 . 0 到I 3 1 . 7 I 0 . 0 到I 3 1 . 7 过程映象输出寄存器 Q 0 . 0 到Q 3 1 . 7 Q 0 . 0 到Q 3 1 . 7 Q 0 . 0 到Q 3 1 . 7 Q 0 . 0 到Q 3 1 . 7 模拟量输入(只读) A I W 0 到A I W 1 1 0 A I W 0 到A I W 1 1 0 - - - - - - A I W 0 到A I W 1 1 0 模拟量输出(只写) A Q W 0 到A Q W 1 1 0 A Q W 0 到A Q W 1 1 0 - - - - - - A Q W 0 到A Q W 1 1 0 变量存储器(V ) V B 0 到V B 8 1 9 1 V B 0 到V B 1 6 3 8 3 V B 0 到V B 8 1 9 1 V B 0 到V B 2 0 4 7 9 局部存储器(L ) L B 0 到L B 6 3 L B 0 到L B 6 3 L B 0 到L B 6 3 L B 0 到L B 6 3 位存储器(M ) M 0 . 0 到M 3 1 . 7 M 0 . 0 到M 3 1 . 7 M 0 . 0 到M 3 1 . 7 M 0 . 0 到M 3 1 . 7 特殊存储器(S M ) S M 0 . 0 到S M 1 5 3 5 . 7 S M 0 . 0 到S M 2 9 . 7 S M 1 0 0 0 . 0 到 S M 1 5 3 5 . 7 S M 0 . 0 到S M 1 5 3 5 . 7 S M 0 . 0 到S M 2 9 . 7 S M 1 0 0 0 . 0 到 S M 1 5 3 5 . 7 S M 0 . 0 到S M 1 5 3 5 . 7 S M 0 . 0 到S M 2 9 . 7 S M 1 0 0 0 . 0 到 S M 1 5 3 5 . 7 S M 0 . 0 到S M 1 5 3 5 . 7 S M 0 . 0 到S M 2 9 . 7 S M 1 0 0 0 . 0 到 S M 1 5 3 5 . 7 Page 1 of 18数据类型 2012-12-22file://D:\TEMP\~hh42CE.htm www.PLC www.PLC S 7 - 2 0 0 S M A R T C P U 收集操作指令、现场状况等信息,把这些信息按照用户程序指定的规律进行运算、处 理,然后输出控制、显示等信号。
所有这些信息都表示为不同格式的数据,作为数据来处理各种指令对 数据格式都有一定要求,指令与数据之间的格式要一致才能正常工作例如,为一个整数数据使用实数 (浮点数)运算指令,显然会得到不正确的结果 数据有不同的长度(以二进制表示它们时,占据的位数不同),也就决定了数值的大小范围模拟量信号 在进行模/ 数(A / D )和数/ 模(D / A )转换时,一定会存在误差;代表模拟量信号的数据,只能以一定的精 度表示模拟量信号 l所有的数据在P L C 中都是以二进制形式表示的 l数据都有其特定的长度和表示方式,称为格式 l数据的格式与用于运算、处理它的指令相关 l以不同的格式查看一个数据,或是使用不同格式的指令处理它,会得到不同的效果 二进制、十六进制和十进制 二进制和二进制数 二进制、十六进制和十进制 二进制和二进制数: 所有通过S 7 - 2 0 0 S M A R T P L C 处理的数据(数值、字符等等)都以二进制形式表示 十六进制和十六进制数十六进制和十六进制数:在二进制数中,每4 个二进制位可以分为一组;这组二进制数值的不同变化可以表 示1 6 个状态,正好是1 6 进制数每一位数字的变化范围。
因此,可以用十六进制数值方便地表示二进制数 例如,二进制数1 0 0 0 _ 1 1 1 1 b 分为两组来看,分别是1 0 0 0 b 和1 1 1 1 b ,正好可以表示1 6 进制数字8 h 和F h (0 0 0 0 b 对应于0 h ,. . . ,1 1 1 1 b 对应于F h );那么这个二进制数就可以表示为8 F h 十进制和十进制数十进制和十进制数:十进制是S 7 - 2 0 0 S M A R T 的数学计算的基础,一般都使用十进制的体系,除了时间 (1 2 / 2 4 或6 0 进制)等特殊数据外 二进制数用于在P L C 中表示十进制数值、或者其他(如字符等)数据,而1 6 进制用来比较简单地描述二进 制数 二进制位逻辑(b i t ) 二进制位逻辑(b i t ) P L C 中以二进制“位”的数据形式来表示逻辑“1 ”、“0 ”(或者“开”、“关”)位是最基本的数据单 位 在数据字节(B y t e )中,二进制逻辑只用一个位(b i t )来表示每个字节由8 个位组成 整数、无符号整数和有符号整数 整数、无符号整数和有符号整数 字节、字、双字都可以用来表示十进制整数,显然它们的数据长度不同,能够表示的数的大小范围也不 同。
无符号整数只有0 和正整数;有符号整数可以有正数和负数 有符号整数采用二进制补码的形式来表示负数 实数(浮点数) 实数(浮点数) 实数(或浮点数)以 3 2 位单精度数表示,其格式为 A N S I / I E E E 7 5 4 - 1 9 8 5 标准中所描述的形式实数按 双字长度访问 注意:浮点数精确到小数点后第 6 位 因此输入浮点常数时,最多只能指定 6 位小数计算涉及到包 含非常大和非常小数字的一长串数值时,计算结果可能不准确 A S C I I 字符和S t r i n g (字符串) A S C I I 字符和S t r i n g (字符串) 在S 7 - 2 0 0 S M A R T 中,A S C I I 字符是由表示字母、数字和一些特殊符号的A S C I I 编码组成的二进制数据字节, 一个字节存储一个字符 Page 2 of 18数据类型 2012-12-22file://D:\TEMP\~hh42CE.htm www.PLC www.PLC A S C I I (美国信息交换标准码)是一种字符编码格式,在一个字节长度中不同的二进制数值代表不同的字 符。
如字母A 为4 1 h (十六进制数值),以十进制看就是6 5 ;而数字5 的A S C I I 值为3 5 h ,十进制值为5 3 字符串是一个字符序列,其中的每个字符都以字节的形式存储 字符串的第一个字节定义字符串的长 度,即字符数 字符串的长度可以是 0 到 2 5 4 个字符,再加上长度字节,因此字符串的最大长度为 2 5 5 个字节 字符串常数限制为1 2 6 个字节 字符串中也能包括汉字编码,每个汉字占用两个字节) 这是S 7 - 2 0 0 S M A R T 内部对A S C I I 字符串的格式定义,所有与字符串有关的指令都遵照这个格式 l在编程软件中,用单字节(英文)的单引号(' )将作为字符的内容括起来可以在数据块和状态图中 输入A S C I I 数据字节 l在单字节的双引号(“ )中间输入文本内容可以输入字符串 l按上述方法输入的字符串会自动按字符串格式排列(在起始地址中放入字符个数) l使用程序,或人为组合成的A S C I I 字符串,使用A S C I I 字符串指令时,必须注意是否符合格式 例如: 图1 . 在数据块中输入A S C I I 数据和字符串 下载项目到S 7 - 2 0 0 S M A R T C P U ,使用状态图监控可以看到: Page 3 of 18数据类型 2012-12-22file://D:\TEMP\~hh42CE.htm www.PLC www.PLC 图2 . 状态图 注意A S C I I 字节和字符串的区别。
D 6 D 0 h 是汉字“中”的编码 S7-200 SMART 数据寻址 S7-200 SMART 数据寻址 l如何调用开关量或模拟量信号? l怎样读取数据? l怎么使用输入信号? l如何输出控制? l⋯⋯ 上述问题都是关于如何访问、使用数据的问题,也就是所谓“寻址寻址” 访问S 7 - 2 0 0 S M A R T 中的数据 访问S 7 - 2 0 0 S M A R T 中的数据 S 7 - 2 0 0 S M A R T 从外部接收信号输入(输入数据),在内部按照用户程序运算、处理后,再输出进行各种控 制、显示 C P U 将信息存储在不同存储单元,每个位置均具有唯一的地址寻址时,数据地址以代表存储区类型的字 母开始,随后是表示数据长度的标记,然后是存储单元编号;对于二进制位寻址,还需要在一个小数点分 隔符后指定位编号 位寻址的举例如下图所示: Page 4 of 18数据类型 2012-12-22file://D:\TEMP\~hh42CE.htm www.PLC www.PLC 图1 . 位寻址举例 其中,存储区和字节地址(“M 3 ”)代表 M 存储器的第 3 个字节,用句点(“. ”)与位地址(位 4 )分 开。
字节寻址的举例如下图所示: 图2 . 字节寻址举例 可以看出,V W 1 0 0 包括V B 1 0 0 和V B 1 0 1 ;V D 1 0 0 包括V W 1 0 0 和V W 1 0 2 ,即V B 1 0 0 ,V B 1 0 1 ,V B 1 0 2 ,V B 1 0 3 这4 个字 节这些地址是互相交叠的 当涉及到多字节组合寻址时,遵循“高地址,低字节”的规律 下表给出了不同数据长度可表示的整数值范围 表1 . 不同数据长度表示的十进制和十六进制数范围 表示。
