资源描述
,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,可编程控制器,自动化学院,孙蓉 13613609856,31#312室 82519403,2.1 S7-200/300编程语言和存储区,PLC编程语言的国际标准,1,S7-200的编程语言,2,S7-300的编程语言,3,S7-200/300的CPU存储区,4,5,S7-200/300的寻址方式,第2章 S7-200/300编程语言与常用指令,2.1.0 PLC编程语言的国际标准,IEC 61131是PLC的国际标准,19921995年发布了IEC 61131标准,IEC 61131-3规定了PLC编程语言的语法和语义,标准中有下述5种编程语言:,2.1.0 PLC编程语言的国际标准,1)指令表IL(Instruction list):语言语义的定义,这里只定义了20种基本操作。,2)结构文本ST(Structured text):西门子称为结构化控制语言(SCL)。,3)梯形图LD(fLadderdiagram):西门子简称为LAD。,4)功能块图FBD(Function block diagram):标准中称为功能方框图语言。,5)顺序功能图SFC(Sequential function chart):对应于西门子的S7 Graph。,2.1.1 S7-200的编程语言,(1),语句表(STL);,(2)梯形图(LAD);,(3)功能块图(FBD),;,2.1.1 S7-200的编程语言,2.1.2 S7-300的编程语言,(1)梯形图(LAD),OB1:主程序,Network1:起保停电路,可以想象在梯形图的左右两侧垂直“电源线”之间有一个左正右负的直流电源电压,能流只能从左向右流动。,如果没有跳转指令,在网络中,程序中的逻辑运算按从左往右的方向执行,与能流的方向一致。网络之间按从上到下的顺序执行,执行完所有的网络后,下一次循环返回最上面的网络(网络1)重新开始执行。,(1)梯形图(LAD),2.1.2 S7-300的编程语言,2.1.2 S7-300的编程语言,(2)语句表(STL),OB1:主程序,Network1:起保停电路,A(,O I 4.0,O Q 16.4,),AN I 4.1,=Q 16.4,2.1.2 S7-300的编程语言,(2)语句表(STL),OB1:主程序,Network 1:起保停电路,A(,O I 4.0,O Q 16.4,),AN I 4.1,=Q 16.4,Network n:,BEU,2.1.2 S7-300的编程语言,(3)功能块图(FBD),用语句表编写的程序不一定能转换为梯形图,不能转换的网络仍然保留语句表的形式,但是并不表示该网络有错误。,1,),语句表可供习惯用汇编语言编程的经验丰富的程序员使用;,2,),梯形图与继电器电路图的表达方式极为相似,适合于熟悉继电器电路的用户使用;,3,),功能块图适合于熟悉数字电路的用户使用。,(8)编程语言的相互转换与选用,2.1.2 S7-300的编程语言,2.1.3 S7-300/400的CPU存储区,(1)数制,1),二进制数;,2)十六进制数;,3)BCD码;,2.1.3 S7-300/400的CPU存储区,(2)基本数据类型,1),基本数据类型;,2)用户通过组合基本数据类型生成的复合数据类型;,3)用来定义FB(功能块)和FC(功能)参数的参数类型;,2.1.3 S7-300/400的CPU存储区,1)基本数据类型,1、,位;,2、字节;,3、字;,4、双字;,5、16位整数;,6、32位整数;,7、32位浮点数;,8、常数;,2.1.3 S7-300/400的CPU存储区,(4,)复合数据类型与参数类型,1、,复合数据类型,2、参数类型,数组;,结构;,字符串;,日期和时间;,用户定义的数据类型;,TIMER(定时器);,BLOCK(块);,POINTER(指针);,ANY;,2.1.3 S7-300/400的CPU存储区,(5)CPU的存储区分布,1),装载存储器;,2)工作存储器;,3)系统存储器;,4)外设I/O存储区;,2.1.3 S7-300/400的CPU存储区,(5)CPU的存储区分布,装载存储器,动态装载存储器RAM;,可保持装载存储器FEPROM;,过程映像I/O表;,位存储器、定时器、计数器;,局域数据堆栈、块堆栈;,中断堆栈、中断缓存区;,系统存储器,工作存储器:,用户程序、如逻辑块、数据块;,2.1.3 S7-300/400的CPU存储区,1)装载存储器,下载程序时,用户程序(逻辑块和数据块)被下载到CPU的装载存储器,CPU把可执行部分复制到工作存储器,符号表和注释保存在编程设备中。,2.1.3 S7-300/400的CPU存储区,2)工作存储器,它是集成的高速存取的RAM存储器,用于存储CPU运行时的用户程序和数据,例如组织块、功能块、功能和数据块。为了保证程序执行的快速性和不过多地占用工作存储器,只有与程序执行有关的块被装入工作存储器。,2.1.3 S7-300/400的CPU存储区,3)系统存储器,系统存储器为不能扩展的RAM,用于存放用户程序的操作数据,例如过程映像输入,过程映像输出,位存储器,定时器和计数器,块堆栈(B堆栈),中断堆栈(I堆栈)和诊断缓冲区等。,2.1.3 S7-300/400的CPU存储区,地址区域,描述,过程映像输入表I,循环扫描周期开始时,CPU从输入模块读输入值并记录到该区域,过程映像输出表Q,在循环扫描周期中,程序计算输出值并记录到该区域。循环扫描周期结束时,CPU将计算结果写入相应的输出模块,位存储器M,该区域用于存储程序的中间计算结果,定时器T,该区域提供定时器的存储,计数器C,该区域提供计数器的存储,数据块D,数据块中包含了程序的信息。可以定义为所有逻辑块共享 或指定给一个特定的 FB或 SFB 做背景数据块,局部数据L,该区域包含块执行时该块的临时数据。L堆栈还提供用于传递块参数及记录梯形逻辑网络中间结果的存储器,外设地址输入PI,主站及分布式从站(DP)外设输入输出区域允许直接存取,外设地址输出PQ,2.1.3 S7-300/400的CPU存储区,过程映像输入/输出(I/Q)表,在扫描循环开始时,CPU读取数字量输入模块的输入信号的状态,并将它们存入过程映像输入表中。,用户程序访问PLC的输入(I)和输出(Q)地址区时,不是去读写数字信号模块中的信号状态,而是访问CPU中的过程映像区。,与直接访问I/O模块相比,访问过程映像表可以保证在整个程序周期内,过程映像的状态始终一致。由于过程映像保存在CPU的系统存储器中,访问速度比直接访问信号模块快得多。,2.1.3 S7-300/400的CPU存储区,4)外设I/O存储区,通过外设I/O存储区(PI和PQ),用户可以不经过过程映像输入和过程映像输出,直接访问输入模块和输出模块。不能以位(bit)为单位访问外设I/O存储区,只能以字节、字和双字为单位访问。,2.1.3 S7-300/400的CPU存储区,(6)寻址方式,1),立即寻址;,2)直接寻址;,3)存储器间接寻址;,4)寄存器间接寻址;,
展开阅读全文