300基本数据类型
- 格式:doc
- 大小:44.50 KB
- 文档页数:6
课后题:第一章:1.什么是可编程控制器?答:可编程序控制器(Programmable Controller):可通过编程或软件配置改变控制对策的控制器。
是一台专业环境应用而设计制造的计算机。
它具有丰富的输入输出接口,并且具有较强的驱动能力。
2.可编程控制器是如何分类的?简述其特点。
答:一体化紧凑型PLC:电源,CPU中央处理系统,I/O接口都集成在一个机壳内。
标准模块式结构化PLC:各种模块相互独立,并安装在固定的机架上,构成一个完整的PLC应用系统。
3.简述可编程控制器的工作原理,如何理解PLC的循环扫描工作过程?答:当PLC投入运行后,其工作过程一般分为三个阶段,即输入采样、用户程序执行和输出刷新三个阶段。
完成上述三个阶段称作一个扫描周期。
在整个运行期间,PLC的CPU以一定的扫描速度重复执行上述三个阶段。
PLC采用循环扫描的工作方式,对输入信号进行的是一次性“采样”。
采用这种工作方式,在一个PLC 程序循环周期内,即使实际输入信号状态发生变化,也不会影响到PLC程序的正确执行,从而提高了程序执行的可靠性。
用户程序通过编程器或其他输入设备存放在PLC的用户存储器中。
当PLC开始运行时,CPU根据系统监控程序的规定顺序,通过扫描,可完成各输入点状态采集或输入数据采集,用户程序的执行,各输出点状态的更新,编程器键入响应和显示器更新及CPU自检等功能。
PLC的扫描可按固定顺序进行,也可按用户程序规定的顺序执行。
4.简述PLC与继电接触器控制在工作方式上各有什么特点。
在继电器控制电路中,当电源接通时,电路中所有继电器都处于受制约状态,即该吸合的继电器都同时吸合,不该吸合的继电器受某种条件限制而不能吸合,这种工作方式称为并行工作方式。
而PLC的用户程序是按一定顺序循环执行,所以各软继电器都处于周期性循环扫描接通中,受同一条件制约的各个继电器的动作次序决定于程序扫描顺序,同他们在梯形图中的位置有关,这种工作方式称为串行工作方式。
S7-300PLC数据及软件安装⽅法⼀、S7-300PLC基本数据类型1、位(bit)位数据的数据类型为BOOL型,其值为1或0。
例如I0.0这⼀位的值要么为0,要么为1。
2、字节(byte)8位⼆进制数组成⼀个字节。
例如MB0。
3、字(Word)相邻⼆个字节组成⼀个字,字只能表⽰⽆符号数。
例如MW0是由MB0和MB1⼆个字节组成。
注意⼆点:1)⽤组成字最⼩的字节MB0的编号作为字MW0的编号。
2)组成字的编号最⼩的字节MB0为字的⾼位字节,编号最⼤的字节MB1为低位字节。
字的取值范围为W#16#0000~W#16#FFFF4、双字(Double Word)⼆个字(或四个字节)组成⼀个双字,双字也只能表⽰⽆符号数。
双字MD0由MB0~MB3组成,D表⽰双字,0为双字的起始字节MB0 的编号,MB0是双字的最⾼位,MB3是双字的最低位。
双字的取值范围为DW#16#0000_0000~DW#16#FFFF FFFF5、16位整数(INT, Integer)整数是有符号数,最⾼位为符号位,最⾼位为0时为正数,为1时为负数。
16位整数的取值范围为-32768~+32767,整数⽤补码表⽰。
6、32 位整数(DINT , Doubel Integer)和16位整数⼀样,最⾼位也为符号位32位整数的取值范围为-2147483648~+214748364Z7、32位浮点数实数(REAL)⼜称为浮点数。
8、常数的表⽰⽅法1)B#16#、W#16#、D#16#分别⽤来表⽰⼗六进制字节、字和双字常数。
2)2#⽤来表⽰⼆进制常数,例如2#1001_ 00103)L#表⽰32位双整数常数,例如L#+128⼆、S7-300PLC的系统存储器1、过程映像输⼊输出(I\O)I和Q均可按位、字节、字和双字访问,例如I0.0、IB0、IW0、ID0。
2、位存储器(M)M可按位、字节、字和双字访问,例如M0.0、MB0、MW0、MD0。
一、基本数据类型
基本数据类型的长度不超过32位。
位(BOOL),字节(BYTE),字(WORD),双字(DOUBLE WORD),整数(INT),
双整数(DOUBLE INT),浮点数(REAL),S5TIME(SIMATIC时间),IEC时间(TIME),IEC日期(date),日计时(TIME_OF_DAY),字符(CHAR),
重点:S5TIME和IEC时间数据类型结构,二者区别
二、复杂数据类型
复杂数据类型是由其他基本数据类型组合而成的,长度超过32位的数据类型。
1.日期时间数据类型(Data_And_Time ):
2.字符串类型(String):
3.数组类型Array
4.结构(STRUCT):
5.用户定义类型(UDT):
三、参数数据类型
用于功能FC或功能块FB的数据类型
1. Pointe指针类型,6字节指针类型,传递数据块号和数据地址
2. Any指针类型,10字节指针类型,传递数据块号、数据地址、数据数量以及数据类型
艾驰商城是国内最专业的MRO工业品网购平台,正品现货、优势价格、迅捷配送,是一站式采购的工业品商城!具有10年工业用品电子商务领域研究,以强大的信息通道建设的优势,以及依托线下贸易交易市场在工业用品行业上游供应链的整合能力,为广大的用户提供了传感器、图尔克传感器、变频器、断路器、继电器、PLC、工控机、仪器仪表、气缸、五金工具、伺服电机、劳保
用品等一系列自动化的工控产品。
如需进一步了解台达PLC、西门子PLC、施耐德plc、欧姆龙PLC的选型,报价,采购,参数,图片,批发等信息,请关注艾驰商城/。
STEP7中的基本数据类型⑴位(BOOL)位数据的数据类型为BOOL(布尔)型,在软件编程中BOOL变量的值1和0常用英语单词TURE(真)和FALSE(假)来表示,对应二进制数中的“1”和“0”,常用于开关量的逻辑运算,存储空间为1位。
⑵字节(BYTE)字节数据长度为8位,数据格式为B#16#,B代表BYTE,表示数据长度为一个字节(8位),#16#表示十六进制,取值范围为B#16#0~B#16#FF。
⑶字(WORD)字数据长度为16位,这种数据可采用4种方法进行描述。
二进制:二进制的格式为2#,如2#101,取值范围为2#0~2#1111_1111_1111_1111,书写时每4位可用下划线隔开,也可直接表示为2#111111111111。
十六进制:十六进制的格式为W#16#,W代表WORD,表示数据长度为16位,#16#表示十六进制,数据取值范围为W#16#0~W #16#FFFF。
BCD码:BCD码的格式为C#,取值范围为C#0~C#999。
BCD 码是用4位二进制表示1位十进制数,4位二进制中的0000~1001组合分别表示十进制中的0~9,4位二进制中的1010~1111组合放弃不用。
BCD码的最高4位用来表示符号,十六位BCD码的取值范围为-999~+999。
在STEP7的数据格式中,BCD码的取值只取正值,与最高4位的符号无关。
无符号十进制数:无符号十进制数的格式为B#(×,×),取值范围为B#(0,0)~B#(255,255),无符号十进制数是用十进制的0~255对应二进制数中的0000_0000~1111_1111(8位),16位二进制数就需要两个0~255的数来表示,例如:B#(12,254)=2#0000_1100_1111_111012 254上面4种数据都是描述一个长度位16位的二进制数,无论你使用哪种方式都可以。
例如,如果想得到二进制数0000100110000111,可以使用2#0000_1001_1000_0111,也可以使用W#16#987,还可以使用C #987或者B#(9,135)。
第三章西门子PLC的指令系统3.1 S7-300/400的编程语言3.1.1 PLC编程语言的国际标准IEC 61131是PLC的国际标准,1992~1995年发布了IEC 61131标准中的1~4部分,我国在1995年11月发布了GB/T 15969-1/2/3/4(等同于IEC 61131-1/2/3/4)。
IEC 61131-3广泛地应用PLC、DCS和工控机、―软件PLC‖、数控系统、RTU等产品。
定义了5种编程语言1) 指令表IL(Instruction list):西门子称为语句表STL。
2) 结构文本ST(Structured text):西门子称为结构化控制语言(SCL)。
3) 梯形图LD(Ladder diagram):西门子简称为LAD。
4) 功能块图FBD (Function block diagram):标准中称为功能方框图语言。
5) 顺序功能图SFC(Sequential function chart):对应于西门子的S7 Graph。
3.1.2 STEP 7中的编程语言梯形图、语句表和功能块图是3种基本编程语言,可以相互转换。
1.顺序功能图(SFC) :STEP 7中的S7 Graph2.梯形图(LAD):直观易懂,适合于数字量逻辑控制。
―能流‖(Power flow)与程序执行的方向。
3. 语句表(STL):功能比梯形图或功能块图强。
4.功能块图(FBD):―LOGO!‖系列微型PLC使用功能块图编程。
5.结构文本(ST):STEP 7的S7 SCL(结构化控制语言)符合EN 61131-3标准。
SCL适合于复杂的公式计算、复杂的计算任务和最优化算法,或管理大量的数据等。
6.S7 HiGraph 编程语言图形编程语言S7 HiGraph 属于可选软件包,它用状态图(state graphs)来描述异步、非顺序过程的编程语言。
7.S7 CFC 编程语言可选软件包CFC(Continuous Function Chart,连续功能图)用图形方式连接程序库中以块的形式提供的各种功能。
STEP7中的基本数据类型
⑴位(BOOL)
位数据的数据类型为BOOL(布尔)型,在软件编程中BOOL变量的值1和0常用英语单词TURE(真)和FALSE (假)来表示,对应二进制数中的“1”和“0”,常用于开关量的逻辑运算,存储空间为1位。
⑵字节(BYTE)
字节数据长度为8位,数据格式为B#16#,B代表BYTE,表示数据长度为一个字节(8位),#16#表示十六进制,取值范围为B#16#0~B#16#FF。
⑶字(WORD)
字数据长度为16位,这种数据可采用4种方法进行描述。
二进制:二进制的格式为2#,如2#101,取值范围为2#0~2#1111_1111_1111_1111,书写时每4位可用下划线隔开,也可直接表示为2#111111111111。
十六进制:十六进制的格式为W#16#,W代表WORD,表示数据长度为16位,#16#表示十六进制,数据取值范围为W#16#0~W#16#FFFF。
BCD码:BCD码的格式为C#,取值范围为C#0~C #999。
BCD码是用4位二进制表示1位十进制数,4位二进制中的0000~1001组合分别表示十进制中的0~9,4位二进制中的1010~1111组合放弃不用。
BCD码的最高4位用来
表示符号,十六位BCD码的取值范围为-999~+999。
在STEP7的数据格式中,BCD码的取值只取正值,与最高4位的符号无关。
无符号十进制数:无符号十进制数的格式为B#(×,×),取值范围为B#(0,0)~B#(255,255),无符号十进制数是用十进制的0~255对应二进制数中的
0000_0000~1111_1111(8位),16位二进制数就需要两个0~255的数来表示,例如:
B#(12,254)=2#0000_1100_1111_1110
12254
上面4种数据都是描述一个长度位16位的二进制数,无论你使用哪种方式都可以。
例如,如果想得到二进制数0000100110000111,可以使用2#0000_1001_1000_0111,也可以使用W#16#987,还可以使用C#987或者B#(9,135)。
在STEP7中,比较常用的是十六进制,即W#16#这种格式。
⑷双字(DOUBLE WORD)
数据长度为32位,双字的数据格式与字的数据格式相同,也有4种方式,分别为:
二进制:取值范围为2#0~2#
1111_1111_1111_1111_1111_1111_1111_1111。
十六进制:取值范围为DW#16#0~DW#16#
FFFF_FFFF。
BCD码:取值范围为C#0~C#9999999。
无符号十进制数:取值范围为B#(0,0,0,0)~B#(255,255,255,255)。
⑸整数(INT)
整数数据类型长度为16位,数据格式为带符号十进制数,16位中最高为符号位。
正整数是以原码格式进行存储的,如+786,对应的二进制码为2#0000_0011_0001_0010,而负整数则表示为正整数的二进制补码,即对应正整数的二进制码取反后加1,例如负整数-786,对应的二进制码为2#1111_1100_1110_1110。
将负零(1000_0000_0000_0000)定义为-32768因此取值范围为-32768~32767。
0表示正,1表示负。
⑹双整数(DOUBLE INT)
双整数的数据类型长度为32位,数据格式为带符号十进制数,用L#表示双整数。
双整数的二进制码与整数的换算方式一致,其取值范围为L#-2147483648~L#2147483647。
⑺实数(REAL也叫浮点数Float)
实数的数据类型长度为32位,是以IEEE浮点数格式转换为二进制数存储的,其取值范围为±3.402823e+38~±1.1755494e-38。
实数用1.m×2E例如123.4可表示为1.234×102。
式中:指数E=e-127(1≤e≤254)为8位整数
符号位(S):S=0为正值S=1为负值
S5TIME时间数据类型长度为16位,包括时基和时间常数两部分,时间常数采用BCD码(二~十进制格式)。
S5TIME 时间数据类型结构如下图所示:
(9)IEC时间(TIME)
IEC时间数据长度为32位,时基为固定值1ms,数据类型为双整数,所表示的时间值为整数值乘以时基。
格式为:
T#aaD_bbH_ccM_ddS_eeeMS
其中aa=天数,bb=小时数,cc=分钟,dd=秒,eee=毫秒。
根据双整数的最大值为2147483647,乘以时基1ms,可以算出,IEC时间的最大值为T#24D_20H_31M_23S_648Ms。
使用IEC时间时,时基保持不变,且精度较高,为1ms。
(10)IEC日期(DATE)
IEC日期数据长度为16位,数据类型为整数,以1日为单位,日期从1990年1月1日开始,1990年1月1日对应的整数为0,日期每增加一天,对应的整数值加1,如23,对应1990年1月22日。
IEC日期格式为D#_年_月_日,例如D#1992_12_2。
取值范围为D#1990_1_1~D#2163_12_31。
(11)日计时(TIME_OF_DAY)
日计时是表示一天中的24小时,数据长度为32位,数据类型为双整数,以1ms为时基,取值范围为TOD#0∶0∶0∶0~TOD#23∶59∶59.999。
(12)字符(CHAR)
字符数据的长度为8位,字符采用ASCII码的存储方式。