资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,S7-300 PLC,编程与应用,从入门到提高,主讲:阳胜峰,【,例,5-8-1】,发动机组控制系统设计,使用多重背景。,设某发动机组由,1,台汽油发动机和,1,台柴油发动机组成,现要求用,PLC,控制发动机组,使各台发动机的转速稳定在设定的速度上,并控制散热风扇的起动和延时关闭。每台发动,机均设置一个起动按钮和一个停止按钮。,第,23,讲,多重背景数据块的使用,1.,创建,S7,项目,使用菜单,【File】【“New Project”Wizard】,创建发动机组控制系统的,S7,项目,并命名为“,多重背景,”。,CPU,选择,CPU 315-2DP,,项目包含组织块,OB1,。,2.,硬件配置,在“多重背景”项目内打开“,SIMATIC 300 Station”,文件夹,打开硬件配置窗口,并按下图所示完成硬件配置。,3.,编辑符号表,4.,规划程序结构,FB10,为上层功能块,它把,FB1,作为其“局部实例”,通过二次调用本地实例,分别实现对汽油机和柴油机的控制。这种调用不占用数据块,DB1,和,DB2,,它将每次调用(对于每个调用实例)的数据存储到体系的上层功能块,FB10,的背景数据块,DB10,中。,5.,编辑功能(,FC,),(1),定义局部变量声明表,FC1,用来实现发动机(汽油机或柴油机)的风扇控制,按照控制要求,当发动机起动时,风扇应立即起动;当发动机停机后,风扇应延时关闭。因此,FC1,需要一个发动机起动,信号、一个风扇控制信号和一个延时定时器。,(2),编辑,FC1,的控制程序,FC1,所实现的控制要求:发动机起动时风扇起动,当发动机再次关闭后,风扇继续运行,4s,,然后停止。定时器采用,断电延时定时器,控制程序如下图所示。,6.,编辑共享数据块,共享数据块,DB3,可为,FB10,保存发动机(汽油机和柴油机)的实际转速,当发动机转速都达到预设速度时,还可以,保存该状态的标志数据。,7.,编辑功能块(,FB,),在该系统的程序结构内,有,2,个功能块:,FB1,和,FB10,。,FB1,为底层功能块,所以应首先创建并编辑;,FB10,为上层功,能块,可以调用,FB1,。,编辑底层功能块,FB1,编辑上层功能块,FB10,(1),编辑底层功能块,FB1,在“多重背景”项目内创建,FB1,,符号名,“,Engine”,。,定义功能块,FB1,的变量声明表,编写功能块,FB1,的控制程序,FB1,主要实现发动机的起停控制及速度监视功能,其控制程序如下图所示。,(2),编辑上层功能块,FB10,在“多重背景”项目内创建,FB10,,符号名“,Engines”,。在,FB10,的属性对话框内激活“,Multi-instance capable”,选项。,定义功能块,FB10,的变量声明表,要将,FB1,作为,FB10,的一个“局部背景”调用,需要在,FB10,的变量声明表中为,FB1,的调用声明不同名称的静态变量,数据类型为,FB1,(或使用符号名“,Engine”,)。,编写功能块,FB10,的控制程序,在变量声明表内完成,FB1,类型的局部实例:“,Petrol_Engine”,和“,Diesel_Engine”,的声明以后,在程序元素目录的“,Multiple Instances”,目录中就会出现所声明的多重实例,如图所示。接,下来可在,FB10,的代码区,调用,FB1,的“局部,实例”。,编写功能块,FB10,的控制程序,调用,FB1,局部实例时,不再使用独立的背景数据块,,FB1,的实例数据位于,FB10,的实例数据块,DB10,中。发动机的实际转速可直接从共享数据块中得到,如,DB3.DBW2,(符号地址为,,S_Data.PE_Actual_Speed,)。,8.,生成多重背景数据块,DB10,在“多重背景”项目内创建一个与,FB10,相关联的多重背,景数据块,DB10,,符号名“,Engine_Data”,。,9.,在,OB1,中调用功能,(FC),及上层功能块,(FB),END,
展开阅读全文