simulink中的while循環(huán)模塊_第1頁
simulink中的while循環(huán)模塊_第2頁
simulink中的while循環(huán)模塊_第3頁
simulink中的while循環(huán)模塊_第4頁
免費(fèi)預(yù)覽已結(jié)束,剩余1頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、之前在湖里發(fā)問如何使用 simulink中的while模塊,可能研究的人少, 沒什么回應(yīng),自己研究了幾天,得出一些結(jié)果,在這里跟大家分享一下, 還望高手繼續(xù)指教!1. 首先找到 while 模塊, 其位置在Simulink->Port&Subsystems->While Iterator Subsystems如下圖所示:.ibrsrie-5-J 'ft SimijlinkComniGnly Us片;! Slks " Continuous =CiscDntinuit=£ I IDisc rate!LogK: and B4 Operations j-

2、Lookup TabbedI- Math OperationaVerificawn Hcmel-Wide UtrfitiesParts & Subsystems FSijnfllAttribjtesH Signal Routing 5j- Sinksi i- Sc urcfisj- ll&cr-Defiied Funutian :+ -Additional Math & D慮crteArflspace Blaekaet CommuniGfltiQns B lockset CoDtroi SysLemToo bnx Dais AcquiErticn 丁00lbc»

3、;r EDA .inutator Link Embedded IDE Link Fuzzy Logic Toolbax Ganges BlccksetImage Aoflu initio n Tqq It g?; Instrument Control To-ofo.Library; Simulink/Ports S SdbsysternsSearch Resuirs' fnonc) Mt :義 1 ) Out1SuEx9rnpl&Switdii Case Ad- io-n Subs/stEmTng-gsf*cSutKjtamsystfrinEnibi«Enable?

4、snd iggt re-d Su bey .Functior-BllGEEp3tar通 >|n1Tfigga下圖為help文檔里面的實(shí)例在這個(gè)模塊中,while模塊首先判斷2處IC輸入是 否為真,若為真就開始第一次執(zhí)行內(nèi)部的運(yùn)算。標(biāo)注4這個(gè)地方輸出的結(jié)果是運(yùn)行的次數(shù),而不 是運(yùn)行的結(jié)果。標(biāo)注3處的Memory模塊為數(shù)據(jù)暫存模塊,這里需 要設(shè)置一個(gè)初值,因?yàn)榈谝淮芜\(yùn)行時(shí)并沒有數(shù)據(jù)暫存。接著就把次數(shù)與暫存模塊的數(shù)值相加后跟 6處的ln1(也即1處的ln1,其值為100 )相比較,如果小于等 于ln1則cond處值為1 ,就可以進(jìn)行下一次的循環(huán)。 這個(gè)while模塊的輸出值是循環(huán)次數(shù),利用循環(huán)

5、次數(shù) 來實(shí)現(xiàn)自加運(yùn)算。剛開始以為其是輸出值,后來挨個(gè)加to workspace 模塊挨個(gè)看其輸出值才發(fā)現(xiàn)自己理解的FfrlAtiDHAlF面是我按照自己的需求搭建的一個(gè)模塊!里面加的很多To Workspace 模塊,是為了看清楚各個(gè)部分?jǐn)?shù)據(jù)的輸出,可以刪去。下圖為while模塊首先判斷5>2是否為真,當(dāng)然為真,所以開始執(zhí)行 while模塊。下圖為將A模塊展開后的內(nèi)容To W&rksps o&4DisiplayOmi> am 曲Con-btantConstantZReJsrtinnmlOperBtnfCopfa nt1DisplsylTo-P?#1W*llle 13

6、 rathIn whil« . .。黨i ICWiM It&fHtsTrIn :data5 ICTo Woac&4In_d3te1每次Enabled Subsystem的輸出值都要跟圖 A中的while模塊的ln1塊,這里其輸入的為 while模塊的運(yùn)行次數(shù),第一次輸入為 1 ,第二次 為2,都是真,所以就開始執(zhí)行 Enabled Subsystem 模塊, 這里給Enabled Subsystem模塊有一個(gè)固定值輸入。下圖為將B模塊展開ToWortspsDe 1回EnableGens is ntEnabled Subsystem模塊中是一個(gè)簡單的加法運(yùn)算,這里使用M

7、emory模塊的用意是實(shí)現(xiàn)輸入變量的增加,要不然會(huì)進(jìn)入死循環(huán)。另一個(gè)避免死循環(huán)的方法是設(shè)置 while模塊的最大循環(huán)次數(shù)。如在B中,ln1的輸入為2, memory模塊的初始值為0,第一次運(yùn)算Enabled Subsystem模塊輸出為 2+3+0=5 第二次時(shí)memory 值就為2,止匕時(shí)Enabled Subsystem 輸出為2+2+3=7;第三次時(shí)memory 值就為4,止匕時(shí)Enabled Subsystem 輸出為2+4+3=9,依次循環(huán)。比較,若小于等于就進(jìn)行下一次循環(huán),反之就推出循環(huán)。這里我將while模塊的輸出做了改變,不在輸出其循環(huán)次數(shù),而是輸出 運(yùn)算結(jié)果。在輸出前加buffer模塊的目的是輸出最后一個(gè)值,要不然會(huì)輸出一個(gè) 數(shù)組,即要是循環(huán)7次退出,那么其輸出就是 7個(gè)數(shù),加上buffer后就輸出 最后一次產(chǎn)生的數(shù)據(jù)。在這里我本來的用意是想Enabled Subsystem 模塊 的輸入由外部導(dǎo)入,即用From , Go模塊,但是發(fā)現(xiàn) 不行,不知道是否有其它方

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論