《SIMATICS7培训教材-13.结构化编程(功能和功能块).ppt》由会员分享,可在线阅读,更多相关《SIMATICS7培训教材-13.结构化编程(功能和功能块).ppt(35页珍藏版)》请在三一办公上搜索。
1、结构化编程,IEC 1131 标准,第一部分:主要信息定义 PLC 的术语 PLC 的主要功能特点第二部分:设备要求电气,机械和功能上的要求制造商需提供的信息符合标准的规则(一致性)第三部分:编程语言梯形图,功能方框图,语句表,顺序功能图和结构化文本第四部分:用户指南系统分析和描述PLC的选择和应用安全和保护,安装和维护第五部分:通讯模式,通讯块,与ISO协议的对应关系,Modul:IEC_T1D.,IEC1131 内容-第三部分,编译为标准代码的规则 软件模型,通讯模型,编程模型 可编程逻辑控制语言中的通用元件数据类型和变量功能和功能块程序和任务 指令表(IL)(=语句表(STL)结构化文本
2、(ST)(=结构化控制语言(SCL)梯形图(LD)(=LAD)功能方框图(FBD)顺序功能图(SFC)(=S7-GRAPH)附加的语法规则和编程示例,Modul:IEC_T1D.,SIMATIC 管理器下的项目结构,项目,S7/M7 程序(未分配给硬件的),用 S7 块组成的用户程序,OBs,FBs,FCs,DBs,等,STL 用户程序源文件,S7-300 可编程的 CPU,S7/M7 程序(分配给硬件的),用户程序,硬件站,STL 源文件,STEP7的块,块的组成部分,变量声明表,代码部分,块的首部(36字节),块体 变量声明部分 和 程序部分 或 数据,压缩的接口描述,块的结构,结构化编程
3、,OB 1,利用局部数据进行控制,FC1(数学功能),OB1,FC1,Input1,Input2,Input3,Output_A,FC1,Input1,Input2,Input3,Output_A,MW5,3369,MW10,QW12,QW20,MW2,6869,MW16,I0.5,I0.5,(),M5.1,O,#TEMP1#INPUT3,#Output_A,0.0,2.0,4.0,6.0,8.0,in,in,in,out,temp,int,int,int,int,int,sample measure 1,constant,offset,result,intermediate,局部变量,临时变
4、量,局部数据堆栈的大小,对于 S7-300:,局部堆栈大小,优先级,256 bytes,1,27,总容量:1.5 Kbyte(CPU 313.316),启动程序(只执行一次),循环扫描程序,块所需要的局部数据区的长度,rechts,程序所占用的局部数据区的总长度,练习1.1:使用临时变量,QW6,示例:故障信息指示,Disturbance,LED,Acknowledge,Report Memory,要求,Disturb_input,Report_ memory,Acknowledge,Edge_ mem_bit,Display,Flash_freq,FC 20,调用,可以分配参数的块,Ai1.
5、2Rm40.0Ai1.3Fpm40.1Sm 40.0Am40.0Am10.3OAnm40.0Ai1.3=Q4.3,不可以分配参数的块,M 40.0,M 40.1,I 1.3,I 1.2,Q 4.3,M 10.3,实际参数,A#AcknowledgeR#Report memoryA#Disturb_inputFP#Edge_mem_bitS#Report_memoryA#Report_memoryA#Flash_freq OAN#Report_memoryA#Disturb_input=#Display,可以分配参数的块,程序,定义形式参数,使用方法,图形显示,只能读,在块的左侧,只能写,在块的
6、右侧,参数类型,输入参数,输出参数,输入/输出 参数,定义,in,out,In_out,可读/可写,在块的左侧,形式参数,FC 20 的变量声明表,编辑一个可分配参数的块,对于无参数分配的块,此处可能是:绝对地址:I1.3 符号地址:“End_left”,Disturb_input,Acknowledge,Flash_freq,Edge_mem_bit,Display,ENO,EN,FC20,调用一个分配了参数的块,Network 3:First Call,Network 4:Second Call,M40.1,“Position error”,“End left”,.,“Acknow.but
7、ton”,M10.3,M40.0,“End right”,Q4.1,“Acknow.button”,M10.3,M40.2,符号的,寻址方式,符号,局部符号-形式参数,M40.3,Q5.4,Report_memory,LAD/FBD,STL,在块调用时使用EN/ENO参数,CALLFC1 NOP 0,FC 1,EN,ENO,?.?,无条件调用,FC 20 的变量声明表,练习1.2:生成一个分配了参数的FC块,1.,练习1.3:调用一个分配了参数的FC块,Disturb_input,Report_memory,Acknowledge,Edge_mem_bit,Display,Flash_freq
8、,第一次调用FC20时的参数分配,M 40.0,M 40.1,I 1.3,I 1.2,Q 5.3,M 10.3,FC 20,Disturb_input,Report_memory,Acknowledge,Edge_mem_bit,Display,Flash_freq,M 40.2,M 40.3,I 1.4,I 1.2,Q 5.4,M 10.3,FC 20,第二次调用FC20时的参数分配,FB块,FB 2ENDisturb.inputAcknowledgeDisplayFlash freq.ENO,DB 2,OB 1,FB块的变量声明表,用FB实现的故障信息显示,FB的声明表,生成背景数据块,1
9、.在FB调用时生成背景数据块,多重背景模型,DB10,普通背景模型,FB20,OB 1,Call FB20,DB10Disturb._Input:=Acknowledge:=Flash_Freq:=Display:=,Parameters andstatic variablesof the 2nd.call of FB20,Call Dist_2Disturb._Input:=Acknowledge:=Flash_Freq:=Display:=,Parameters andstatic variablesof the 1st.call of FB20,Call Dist_1Disturb._I
10、nput:=Acknowledge:=Flash_Freq:=Display:=,练习1.4:编写一个FB块,FB 20 的变量声明表,1.,练习1.5:调用FB并调试,插入/删除块的参数可能遇到的问题,Save,调用被修改过的块时应做的更正,当调用块被打开时:,单击鼠标右键,练习1.6:多台设备的风扇监控功能,A,B,C,=1,S_ODT,TIME,ACKN,SIG,&,A,B,C,R,S,Q,=1,FLT,FC101,REPORT,A,B,C,ACKN,TIME,TV,FLT,SIG,功能,符号,练习1.7:风扇监控功能的扩展,A,B,C,=1,S_ODT,TIME,ACKN,SIG,&,A,B,C,R,S,Q,=1,FLT,FC101,REPORT,A,B,C,ACKN,TIME,TV,FLT,SIG,功能,符号,ENAB,&,ENAB,ENAB,练习1.8:识别变量的类型,TYPE OF VARIABLE,总结:块的调用,CALL FC1 UC FC1 CC FC1,STL,LAD,FBD,FC1,FB,无参数,无背景数据块,UC FB1 CC FB1,CALL,无参数,语言,FC,FC1,