多重背景数据块的使用_第1页
多重背景数据块的使用_第2页
多重背景数据块的使用_第3页
多重背景数据块的使用_第4页
多重背景数据块的使用_第5页
已阅读5页,还剩5页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、多重背景数据块的使用当功能块FB1在组织块中被调用时, 使用了与FB1相关联的背景数据块。 这样FB1有几 次调用,就必须配套相应数量的背景数据块。当FB1的调用次数较多时,就会占用更多的数据块。使用多重背景数据块可以有效地减少数据块的数量,其编程思路是创建一个比FB1级别更高的功能块,如 FB10,对于FB1的每一次调用,都将数据存储在FB10的背景数据块中。这样就不需要为 FB1分配任何背景数据块。下面以发动机组控制系统为例,介绍如何编辑和使用多重背景数据块。例发动机组控制系统设计一一使用多重背景设某发动机组由1台汽油发动机和1台柴油发动机组成,现要求用 PLC控制发动机组, 使各台发动机

2、的转速稳定在设定的速度上,并控制散热风扇的启动和延时关闭。 每台发动机均设置一个启动按钮和一个停止按钮。项目的编程步骤如下:(1)创建S7项目。使用菜单“文件”“新建工程”向导创建发动机组控制系统的S7项目,并命名为“多重背景” 。CPU选择CPU315-2DP,项目包含组织块 0B1。(2)硬件配置。在“多重背景”项目内打开“ SIMATIC 300( 1)”文件夹,打开硬 件配置窗口,并按图 1完成硬件配置。(3)编辑如图2所示的符号表。*I () VRu複按.订貨号固件HFI地址I地址0地址|连釋n 1FS 307 5XBEST 30fT-lEQ图1硬件配置状态符号数倨类型1Aut om

3、atic ModeQ4. 2BOOL齬模式2Aut omatic OrI0. 5BOOL自动运行檯式控制按昭3DE Actual SpeedW4WORD柴油发动机的实际转逮4DE FailureIL GBOOL柴袖发动机故障5Q56BOOL启动柴油发动机风扁命夺6DE Follow 0nT2TIHEK柴油复动机风扇的堆续运行时闾7DE OnQ5.4BOOL柴;由岌珮T的启动鎭LSDE Preset SpeedQ5. 5BOOL显示1已达到柴油发劫机的预设鞘密9Eng ineFBIFB1发动机控制10Engine Data皿IQDB10FB10的实洌数据歼11EnginesFB10FB10书重实

4、例的上屛功能块12FaitFC1FC1凤扇控制13MainPrograin.OB1OB1此块包琶用户程序11Manual 0nI0. 6EOOL手动运行模式控制按钮15PE Actual 3peedW2WRD汽湎夏动机的实际转速16PE FailureII. 2BOOL汽油笈动机故障17PE F9n 0nQ5. 2BOOL闻S岌珮凤扇的启动儒令18PE Fallow On T1汽油发动机凤扇的继续运行的时间19FE OnQ5, 0BOOL汽油发动机的启动命令20PEPreset-SpagdQ5. 1EOOL显示“已达到汽油发飄的预设转速”21S D at a.DB3DB3共章数据块22Swit

5、ch Off DET1. SBOOL知柴油笈动机厂笳Svitck OFEI1. 1EOOL笑闭汽油叢动机24Switch On DEIL4EOOL启动柴油发动机25Switch OrPEI1. QEOOL启动汽油笈动机图2符号表(4)规划程序结构。程序结构规划如图 3所示。FB10为上层功能块,它把 FB1作为其“局部实例”,通过二次调用本地实例,分别实现对汽油机和柴油机的控 制。这种调用不占用数据块 DB1和DB2它将每次调用(对于每个调用实例) 的数据存储到体系的上层功能块FB10的背景数据块 DB10中。臊作系诜图3程序结构(5)编辑功能(FC)。FC1用来实现发动机(汽油机或柴油机)的

6、风扇控制,按照控制要求,当发动机启动时,风扇应立即启动;当发动机停止后,风扇应延 时关闭。因此FC1需要一个发动机启动信号、一个风扇控制信号和一个延时 定时器。1)定义局部变量声明表。局部变量声明表如表 1所示,表中包含3个变量,两个IN变量,1个OUT变量。表1 变量声明表接口类型变量名数据类型注释INEngine_O nBOOL发动机的启动信号INTimer_Of fTimer用于关闭延迟的定时器功能OUTFan OnBOOL启动风扇信号2)编辑FC1的控制程序。FC1所实现的控制要求:发动机启动时风扇启动,当发动机再次关闭后,风扇继续运行4s,然后停止。定时器采用断电延时定时器,控制程序

7、如图 4所示。#Fan On-()IFC1 :标题:瞬删:控制閱厨S OFFDTSQTVBIRBCD#Timex OffS6TS4S-图4 FC1控制程序(6)编辑共享数据块。共享数据块DB3可为FB1O保存发动机(汽油机和柴油机)的实际转速,当发动机转速都达到预设速度时,还可以保存该状态的标志数 据。DB3的数据如图5所示。地址老稼注释L m乜。STRUCTPE_Actual_Speednrr0汽油发动机的实际转逋+2.DIWT0柴油岌訪机的实际转潼+4.0Prc3ctSpced RcachedEQLFALSE两个坯机都已经列ii预苴的转逋=.0END HWCT图5共享数据块DB3(7)编辑

8、功能块(FB)。在该系统的程序结构内,有2个功能块:FB1和FB10b FB1为底层功能块,所以应首先创建并编辑;FB1O为上层功能块,可以调用FB1。1)编辑底层功能块FB1。在项目内创建FB1,符号名“ Engine ”。定义功能 块FB1的变量声明表如表 2所示。表2 FB1的变量声明表接口 类型变量名数据类型地址初始值扩展地址结束地址注释Switch O nBOOL0.0FALSE一一启动发动机INSwithc OffBOOL0.1FALSE一一关闭发动机FailureBOOL0.2FALSE发动机故障,导 致发动机关闭Actual_SpeedINT2.00一一发动机的实际转速OUTE

9、ngine OnBOOL4.0FALSE一一发动机已开启Preset_SpeedReachedBOOL4.1FALSE达到预置的转速STAT :Preset SpeedINT6.01500一一要求的发动机转速FB1主要实现发动机的启停控制及速度监视功能,其控制程序如图6所示。FBI :发动机控审助能块茹启动发动机.倍号取反Q4.2”新模式#Switch_OffAutomatic #Engine_0n #Switcli_OrL川 deFailure程序段2 :监观转速CMP =1#Actual_Speed -IN11SP工巳吕E*Speed LN2#Pieset._Specd_ReaGhedf图

10、6 FBI程序2)编辑上层功能块 FB10。在项目内创建 FB10,符号名“ Engines ”。在FB10的属性对话框内激活“多情景标题”选项,如图7所示。馬性-功能块图7将FB10设置成使用多重背景的功能块要将FB1作为FB10的一个“局部背景”调用,需要在FB10的变量声明表中为 FB1的调 用声明不同名称的静态变量,数据类型为FB1 (或使用符号名“ Engine ”),如表3所示。表3 FB10的变量声明表接口类 型变量名数据类型地址初始值注释OUTPreset_Speed ReachedBOOL0.0FALSE两个发动机都已到达预置的转速STATPetrol E ngineFB12

11、.0一FB1 “ Engine ”的第一个局部实例Diesel E ngineFB110.0一FB1 “ Engine ”的第二个局部实例TEMPPE_Preset_Spee d ReachedBOOL0.0FALSE达到预置的转速(汽油发动机)DE_Preset_Spee d ReachedBOOL0.1FALSE达到预置的转速(柴油发动机)在变量声明表内完成 FB1类型的局部实例:“Petrol_Engine ”和“ Diesel_Engine ”的 声明以后,在程序元素目录的“多重实例”目录中就会出现所声明的多重实例, 1 口图8所示。 接下来可在FB10的代码区,调用 FB1的“局部实

12、例”。iLWSTL/FBD - FEIO - Eri_nes- SIHTIC ?O0U)XCF1 3J5-ZJF. - -.冃X口文件心術笹誉3SAd)Fir词住QI视国仗衙口如科朗堪序眷冷能 Q 气亡虫H - -. 1 . -IIT苗鬲阳眉硏 也鬼 拥俑fiBBqs决也怏块买 弹谴狡禅洞鹑聂点动ffdz玄时建减拱卡 新庇尿转计加統華殍悠堤常农定宇JBK幽ST姜 ;E-ffiffiBe-.囱B-E-S-E1-e-E-卧:画:B-ffl-E-曰FE10 ;爭重背累sayn 定甫汽油笈动机口 Di.cl_Iagirieni n?T q5FAT耄址册蛤1QFeUQl.Ent.neELjjj:ia2,

13、 0辺 Iicadl_En3.nEncinoID. D口 -声明FBi的2个“扃部丈例”* 些 Piftrol_Er?GirPi i Diesel Erseirx + 倚 TFTiJP#tro-lEngineEUSvitchOEkSvitch_ oeeEjigiziaDn.Preset_S?esd_ Mt? ctlz?d诚用“同郎去例”称局那实例”山现在编程元素目录中凤)世悸盘屢调.用坯枸a|HK 1:绪茂 / 2-. /昌毎x1:哋址信且TA 5:a 砒逡斷TV. f茲P F1叫期帝羽”图8调用局部实例编写功能块FB1O的控制程序如图9所示。调用FB1局部实例时,不再使用独立的背景 数据块,

14、FB1的实例数据位于FB1O的实例数据块 DB1O中。发动机的实际转速可直接从共享 数据块中得到,如 DB3.DW0(符号地址为“ S Data” PE Actual Speed )。tPc-troL Ejigin4!Die3el_E 丸 iue*KirpmF7Fian11.011.4启止汽泊发Q5-0由b貽由支Q5.4Switch.對启吐鱼季Si(ch_旳闌命*_时-Switclv-?E_0nJOn_Df Sn it ch_0mErifi nj&h11.1IL 5WE_首比汽石空PtesetPteset动机SpEedSpeedSpaed_5p Be dSvitchuSwitchUta.匚 h

15、rd-ReachedSwitch_Sn-tcLRe亦 hud-RsacbedOff_FE* -Off处5_Off11.2I1.fi克由豆朿机mFailure* _FaiiuttFiilLns-Fiilui:&Aftual_Ar tual_和ndCD3.DT2 -3padt程吊国S :新範UPreelSc&ed.F 17115 J冊 fL#TiE_Pxeset_氏年時J3 口 盟 L5w&LPeach-dRtacli-sd图9 FB10的控制程序(8)生成多重背景数据块 DB1C。在项目内创建一个与FB10相关联的多重背景数据块DB10,符号名“ Engine_Data ”。如图10所示。凰酊

16、参St - PBio 爭至背J3kSiiATrc soaujvcpu n-mE)皿黔F抉宥辑(Q FH妁调试砂吾看叩 rOrti帝衍毎) x/环H畐 $ 邑!| &血“盘地川声釜里J- 丄1MMoutTe住二虽亡計d-R冬aekedBOOL?ALSE1ALSL叶卜占由咋记趙戍押壬的转連Z2.0stat sin?et rl Engiri#. Swi chCnBOOLFALSEF1L5E总邛去討q32. 1it 3t:inPetiuUntLiie. SwitcJcCffBOOLALOErALjn犬他*妙机42. 2駅 it irk:. ” :.- .?ot r&l_Eni?Lrifl B F ai

17、lu?腹ECOLFALSEFALSE铀机K.辱曲朗保闭&1.0ct. at e inPel r & L Enj Lri# A rtiial Sj fiht3a更期机豹实Fi牺湮55.0St t : outPel roKFiLC LiiFBEjie in應 0rEOOLAT5F?&. 1m :outPct r & L_Enc uric Pstgh ot_Sp o s d_Ro a?h S-wit oh._C*ffEWLFALSEFALSE关用罢酣IIIm 2st at: inHi 甕 Hl Fn( i m F h 1 u.BOOLFALSEFALSE歩动帆蜩*异窥曲机关闭12必0st at LA

18、Diesel nrujc2krtu&lSpcedIHT0c冲对机的耳H轩僅14,0巩 3t : out2itrfrl ExiC irii Engin-MCTiBOOLFALSEFJILSS戏初机已讦启1414 1st at : outDhz LbhEr(. tnv Prvsci 辛 dj* bMdBOO匚7AI.SEFALSE15IS. J乳stBiseL Eixrwc.Prcfct.SpacdIUTJ0i 茗诜图10 DB10的数据结构(9)在0B1中调用功能(FC)及上层功能块(FB)OB1控制程序如图11所示,“程 序段4”中调用了 FB10。QB1 :主储茹程序自功世i j理尹%恥討Eutonatic丄tTI手动运斤構式拧刑

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论