1、数据块(数据块(DB)中的数据存储)中的数据存储位存储器位存储器PIQPII数据存储区数据存储区数据块数据块DBxDByDBz.I/O 区区L 堆栈堆栈数据块数据块(DB)功能功能FC10功能功能FC20功能块功能块FB1OB1全局数据全局数据 DB20 所有块可以访问所有块可以访问背景数据背景数据 DB5 FB1的背景的背景DBSTEP 7数据类型概述数据类型概述基本数据类型(到32 位)复杂数据类型(长于32位)用户定义数据类型(长于 32 位)位数据类型位数据类型(BOOL,BYTE,WORD,DWORD,CHAR)数学数据类型数学数据类型(INT,DINT,REAL)定时器类型定时器类
2、型(S5TIME,TIME,DATE,TIME_OF_DAY)时间时间(DATE_AND_TIME)矩阵矩阵(ARRAY)结构结构(STRUCT)字符串字符串(STRING)数据类型数据类型 UDT(用户定义数据类型)STEP 7基本数据类型基本数据类型BOOL1True 或 False(1 或0)BYTE8B#16#A9WORD16W#16#12AFDWORD32DW#16#ADAC1EF5CHAR8 w S5TIME16S5T#5s_200msINT16123DINT32L#65539REAL321.2 或 34.5E-12TIME32T#2D_1H_3M_45S_12MSDATE16D#
3、1993-01-20TIME_OF_DAY32TOD#12:23:45.12关键字关键字长度长度(位位)该类型的常数举例该类型的常数举例复杂数据类型复杂数据类型关键字关键字长度长度(位位)举例举例DATE_AND_TIME64DT#97-09-24-12:14:55.0STRING8*(字符个数+2)This is a string(最多254个字符的字符串)SIEMENS ARRAY用户定义 测量值:ARRAY1.20(相同数据类型的元素组)INT STRUCT 用户定义 Motor:STRUCT(不同数据类型的元素组)Speed :INTCurrent:REALEND_STRUCTUDTU
4、DT as block UDT as array element(用户定义数据类型=用户定义 基本或复杂数据类型组成的 STRUCT Drive:ARRAY1.4模板)Speed:INT UDT1 Current:REAL END_STRUCT 结构举例结构举例程序编辑器中的显示程序编辑器中的显示(数据块数据块 DB 1):Operating Speed,data type IntegerRated Current,data type RealStartup Current,data type RealTurning Direction,data type Bool带有名字“Motor_dat
5、a”的结构(不同数据类型的几个元素)Motor_data矩阵举例矩阵举例1.Measuring_point,data type Real2.Measuring_point,data type Real3.Measuring_point,data type Real10.Measuring_point,data type Real带有名字“Measuring_point”的矩阵(相同数据类型的几个元素)程序编辑器中的显示程序编辑器中的显示(数据块数据块 DB 2):Measuring_point建立新数据块建立新数据块输入、保存、下载和监视数据块输入、保存、下载和监视数据块寻址数据单元寻址数据单
6、元078 位数据字节 0 DBB 0数据字节 1 DBW 0数据字节 8191DBD 8188DBW 8190DBB 8191数据字节 2 DBD 0数据字节 3 DBX 4.1访问数据单元访问数据单元0123456789DB 19(符号名:Values)带有元素名字“Start”的 数据位 0.0或 A DB19.DBX0.0或A“Values”.Start或L DB19.DBW2或 L“Values”.Number或L DB19.DBB5或L“Values”.Loop传统访问方法符号寻址完全表示访问1)OPN DB19L DBW2NumberOPN DB19A DBX 0.01)OPN D
7、B19L DBB5Loop绝对寻址全局全局 DB(例如例如)UDT 块作为模板块作为模板用户定义数据类型用户定义数据类型(UDT)FlourMilkEggsYeastSugar配方2FlourMilkEggsYeastSugar配方3FlourMilkEggsYeastSugarFlourMilkEggsYeastSugar根据根据UDT建立的建立的 DB配方1FlourMilkEggsYeastSugar带有三个UDT类型的元素输入输入UDT块块根据数据类型建立数据块根据数据类型建立数据块举例:举例:UDT中矩阵中矩阵声明查看声明查看数据查看数据查看练习练习1:数据块和数据格式数据块和数据格
8、式 IB1 DB10.DBW2 DB11.DBW8 BIN BCD QW6 DB11.DBW10 BIN BCD QW6 IB2MW2 BCD BINMW4 IB3MW6 BCD BINMW8 I0.7=“0”:BEC :BE(1)建立一个新块)建立一个新块FC33,并按下列要求编写程序。,并按下列要求编写程序。(2)把)把IB1与数据块与数据块DB10中的中的DBW2相加,其和存储相加,其和存储到到DB11中的中的DBW8里。里。(3)将)将IB2和和IB3的数值相加,结果存在的数值相加,结果存在DB11的的DBW10中。中。(4)I0.7=0时,在时,在QW6上显示上显示(2)的计算结果。的计算结果。I0.7=1时,在时,在QW6上显示上显示(3)的计算结果。的计算结果。提示:提示:IB2和和IB3输入的是输入的是BCD码十进制数,在运算之前码十进制数,在运算之前必须转换为二进制数。在转换之前必须把两位组成的必须转换为二进制数。在转换之前必须把两位组成的BCD数(数(IB2)扩展为四位)扩展为四位BCD数。数。练习:练习:20axbxc21,242bbacxa