第一篇:仿真復習總結
系統(tǒng)的特性:整體性、管良性、目的性、環(huán)境適應性
? ? ? ? 復習要點
系統(tǒng)仿真的概述
系統(tǒng)仿真中的隨機變量 系統(tǒng)仿真的模型
? 系統(tǒng)仿真的結果分析
? 系統(tǒng)仿真的方法
? 系統(tǒng)仿真的應用
?
一、系統(tǒng)仿真的概述 ? 為什么要進行系統(tǒng)仿真
? 因為系統(tǒng)是一個復雜的整體,系統(tǒng)模型的建立是個定量的過程,又存在著隨機性系統(tǒng),當遇到一些傳統(tǒng)計算方法無法解決的問題,以及進行計算機實驗時,就必須要進行系統(tǒng)仿真
? 系統(tǒng)仿真的定義、實質P4 定義:在就是在建立數學邏輯模型的基礎上,通過計算機試驗,對一個系統(tǒng)按照一定得決策原則或作業(yè)規(guī)則由一個狀態(tài)變換為另一個狀態(tài)的動態(tài)行為進行描述和分析。實質:模擬是一種數值技術、人工實驗手段、由于計算機可以加速模擬實驗過程和減少誤差,因此計算機模擬在整個系統(tǒng)模擬中占據著日益重要的地位。模擬是對系統(tǒng)狀態(tài)在時間序列中的動態(tài)寫照。大多數的管理系統(tǒng)模擬屬于隨機性系統(tǒng)模擬,但某些情況下可采用確定性系統(tǒng)模擬來處理所研究的問題以簡化。? 系統(tǒng)仿真的作用P5 深入了解和改進現有的實際運行系統(tǒng) 節(jié)約投資
在不同決策方案中擇優(yōu) ? 系統(tǒng)仿真的類型 P5 根據模型和實驗系統(tǒng)的性質:
物理仿真、模擬機仿真、數字仿真、數字機與模擬機混合仿真、仿真器仿真 P14:離散型模型、連續(xù)性模型、復合型模型 ?
二、系統(tǒng)仿真中的隨機變量 ? 隨機數的產生
1.(0,1)區(qū)間均勻分布 P25(是最簡單的連續(xù)分布)(基本特點:密度函數、分布函數、期望、方差)(基本性質:均勻性、獨立性)
2.(a,b)區(qū)間均勻分布
x=a+(b-a)u u為(0,1)的均勻分布隨機數
3.負指數分布
x=? ? ln ? ui
i=1
i=1
5.愛爾蘭分布
m
x= ?(-ln(ui)/ ?m)
i=1
6.正態(tài)分布
Z=? u i-6
i=1
X= ?+ ?Z
7.經驗分布
計算累積分布函數;
產生(0,1)均勻分布隨機數;
落在的區(qū)間所對應的數即為要求的隨機變量。
P33反變換法 舍選法 組合法近似法 表搜索法
?
三、系統(tǒng)仿真的名詞術語
1.實體:一個系統(tǒng)邊界內部的客觀對象,可分為永久性實體(指經常處于系統(tǒng)之內,其數量保持相對穩(wěn)定的實體)和臨時性實體(指先進入系統(tǒng)并在經過相應環(huán)節(jié)以后再離開系統(tǒng),它們在系統(tǒng)內的數量經常發(fā)生變化的實體)
2.屬性:系統(tǒng)實體的特性
3.活動:占用一定時間和資源,導致系統(tǒng)狀態(tài)發(fā)生改變的一定過程
4.系統(tǒng)狀態(tài):某時間點對系統(tǒng)的所有實體、屬性的活動的描述
5.事件:引起系統(tǒng)狀態(tài)發(fā)生瞬間變化的事實,可以是一個實體的產生或消失、系統(tǒng)實體的屬性值的改變或者一項活動的開始或結束??煞譃闀r間事件(指按系統(tǒng)的作業(yè)規(guī)則在預定的時間發(fā)生的事件)和狀態(tài)事件(當系統(tǒng)狀態(tài)符合某種條件發(fā)生的事件)。
6.時鐘:
1、仿真時,仿真時間是按照仿真時鐘來顯示的。通常仿真開始時,把仿真時鐘定為零。
2、仿真時鐘隨著仿真進程逐步增加,仿真時鐘的事數值是出自仿真運行開始以來,仿真共花去多少仿真時間。
3、主時鐘:控制整個仿真過程。
4、子時鐘:控制系統(tǒng)中的某些單個實體。
5、仿真時鐘與機器時鐘區(qū)分:仿真時鐘的示數與真實系統(tǒng)的時間基準相一致,但不一定與自然時鐘同步;而機器時鐘卻是與自然時鐘同步的。
7.因子:是系統(tǒng)的輸入變量,由數量因子(可用數量描述的因子)和質量因子(表示某種結構性假設且不能用數量表示的因子)組成P89
8.因子的水平:模擬輸入變量的可能取值或質量因子可取的方案。
9.處理: 在規(guī)定水平上的因子組合。
? 仿真的時間推進 P56下一事件步長法:仿真時間由一個生成時刻推進到下一生成時刻,而相鄰兩時刻間的時差一般是隨機的,即為一種變步長法;定步長法:仿真時間按固定步長向前推進。
? 排隊規(guī)則:指用來確定如何從等候的隊中挑選一個實體為之服務的規(guī)則。
常用的:先入先出規(guī)則FIFO、后入先出LIFO、優(yōu)先級規(guī)則Priority-Driven、最短工作優(yōu)先規(guī)則SJF、循環(huán)規(guī)則Round-Robin ? 仿真的同時事件管理:
同類同時事件管理:設優(yōu)先級
混合同時事件管理:方法1,一步法——直接確定混合同時事件所形成的結果狀態(tài) 方法2,解結法——按一定規(guī)則先選一件使之發(fā)生,然后根據新的狀態(tài)再選一件使之發(fā)生,直到所有將發(fā)生的事件都發(fā)生完畢為止。? 仿真過程中事件、活動、狀態(tài)的關系
? 仿真中的指標統(tǒng)計
?
四、系統(tǒng)仿真的結果分析(1)為什么要進行仿真結果的分析
仿真的輸出結果是分布特征未知的隨機變量,并且每次仿真的結果都是對該隨機變量所有觀察值總體的一次抽樣,所以要借助數理統(tǒng)計的方法進行結果分析。
(2)仿真輸出結果分析的主要內容是什么? 點估計(是利用隨機樣本的均值和方差對系統(tǒng)真是參數的數學期望和方差進行估價)和區(qū)間估計(P67-68)
(3)仿真輸出結果分析對仿真的要求是什么? 1.獨立的重復運行,使各次輸出結果具有統(tǒng)計上的獨立性(數理統(tǒng)計的要求)2.足夠多的獨立運行次數(結果精度的要求)(4)仿真的類別和特點
終態(tài)模擬:在規(guī)定的事件時間Te內做模擬運行,并統(tǒng)計系統(tǒng)性能測度的一種模擬方式;初始狀態(tài)的確定對結果影響很大。穩(wěn)態(tài)模擬:模擬運行時間趨于無窮時,系統(tǒng)的性能測度達到某一極限值且趨于平穩(wěn)狀態(tài)的模擬方式。初始狀態(tài)不影響結果。
(5)獨立重復仿真的特點是什么 是用相同的輸入數據,在相同的初始條件下,用不同的隨機數流進行一系列重復的模擬運行(每次重復運行新取一次種子值)(6)獨立重復仿真次數如何確定?P71 獲取規(guī)定精度的置信區(qū)間
(1)如果重復運行次數P太小,則不能滿足精度要求;(2)如果重復運行次數P太大,則浪費機時。
? 獲取規(guī)定精度的置信區(qū)間
所必需的最少重復運行次數P* tP?1,1??/2S2P
(7)多方案比較的主要目的?和可能結果是什么? 對多方案的模擬輸出做統(tǒng)計上的比較和分析,是為了鑒別不模擬運行后的不同方案或多種策略產生性能測度差異的原因,從而達到正確選優(yōu)的目的。兩方案比較:
(P74比較目的:)兩個方案的平均差別有多大、對平均差別的估計精度、兩個方案之間是否有顯著性差別
可能結果:
1、E(Y1)-E(Y2)的95%置信區(qū)間在0左側,即至少有95%的把握E(Y1)-E(Y2)<0,則方案1優(yōu)于2。
2、E(Y1)-E(Y2)的95%置信區(qū)間在0右側,即至少有95%的把握E(Y2)-E(Y1)<0,則方案2優(yōu)于1。
3、E(Y1)-E(Y2)的95%置信區(qū)間內含0,則優(yōu)劣難以判斷。
? 會計算:
? ? ? 均值、方差、置信區(qū)間
仿真次數
方案比較
?
五、系統(tǒng)仿真的方法
(1)模型的核實、致效的概念 P80-81 核實:檢查仿真程序是否能按預期的模型行為進行。
致效:檢查仿真模型是否能夠很好的描述真實系統(tǒng)
(2)仿真結果的方差縮減技術的原理、適用情況(公共隨機數、對偶變量)P84-86 采用方差縮減技術的目的就在于采取與模擬運行有關的統(tǒng)計方法,使模擬輸出的方差減小,但不影響其期望值的位置,從而達到用較少的重復運行次數,得到較小的置信區(qū)間和較高的模擬精度。
公共隨機數法:適用于不同方案的模擬;對偶變量法:適用于單一系統(tǒng)模擬的方案。
m(3)仿真實驗設計要求、2析因實驗設計的特點、基本原理 P91 P89 模擬實驗設計的基本要求:1.事先確定模擬的處理方案,用最少的模擬時間得到所需的模擬輸出結果。2.可以有目的地做模擬實驗,避免無目的地或非系統(tǒng)化地做模擬運行,以提高模擬研究的效率。3.進行輸入變量的靈敏度分析,即按需先設計的模擬方案做模擬實驗,確定哪些變量對輸出響應的影響最大。4.確定最優(yōu)的變量組合,給出系統(tǒng)的最優(yōu)響應。在m>=2個因子時,每個因子只取兩個水平的實驗設計方法。這種實驗設計方法并不著眼于對各因子所有水平作出分析,其目的僅在于了解每一因子對響應的影響及因子之間的相互影響。每個因子只取一個高水平和一個低水平
?
六、系統(tǒng)仿真的應用
結合所學專業(yè),能對某一實際系統(tǒng)運用仿真建模的原理進行系統(tǒng)分析、主要變量(隨機變量)的確定和分析、仿真的基本流程設計等。
第二篇:altera_modelsim6.1g仿真總結
軟件環(huán)境說明:quartusII 7.2 sp3+altera_modelsim6.1g
(作者:劉國華)
1,軟件的安裝
詳細請看《如何破解ModelSim-Altera 6.1g.pdf》。(一個注意的地方就是環(huán)境變量設置完后一定要重新啟動)2,軟件的設置
《如何解決在Quartus II無法使用ModelSim-Altera模擬的問題.pdf》。3,用altera_modelsim6.1g做功能仿真,設置地方有3處如下:
接著就是運行仿真軟件,進行仿真: 方法有兩種:
①編譯完后,通過自動運行
②編譯完后,手動運行,一般運行Gate Level Simulation
仿真圖如下,由于是功能仿真,所以沒有延時信息出現:
4,關于do文件的使用技巧問題:
執(zhí)行的默認腳本在:工程所在目錄simulationmodelsim下,例如我的工程:
該do文件的內容為: transcript on if {[file exists gate_work]} { #判斷庫是否存在,存在的話就先刪除
vdel-lib gate_work-all } vlib gate_work
#建立一個庫 vmap work gate_work #映射庫
vlog-vlog01compat-work work +incdir+.{counter.vo} #編譯文件 vlog-vlog01compat-work work +incdir+E:/pratice/verilog/my_counter {E:/pratice/verilog/my_counter/testbench.v}
#編譯文件 vsim-t 1ps-L cyclone_ver-L gate_work-L work top_tb #啟動仿真 add wave * #把testbench.v的頂層信號加入到波形窗口中 view structure view signals #打開信號窗口 run –all #執(zhí)行仿真、modelsim窗口指示的就是這個腳本:
如把以下的選項勾起,并指定一個do文件:
這個時候上面那個counter_run_msim_gate_verilog.do文件的腳本就會發(fā)生以下變化: transcript on if {[file exists gate_work]} { vdel-lib gate_work-all } vlib gate_work vmap work gate_work
vlog-vlog01compat-work work +incdir+.{counter.vo} vlog-vlog01compat-work work +incdir+E:/pratice/verilog/my_counter {E:/pratice/verilog/my_counter/testbench.v}
vsim-t 1ps-L cyclone_ver-L gate_work-L work top_tb #執(zhí)行自己寫的do文件,這樣的話,就可以很好的控制自己想看的信號 do E:/pratice/verilog/my_counter/simulation/modelsim/my.do my.do文件如下: view signal view wave add wave * #將設計文件的內部信號cnt以無符號十進制的形式加入到波形圖 add wave-radix unsigned /top_tb/tb_counter/cnt
run –all
5,用altera_modelsim6.1g做布局布線后的仿真(后仿真),設置地方有2處如下:
仿真圖如下,可以看到下圖明顯存在延時信息:
第三篇:仿真機總結
七月仿真機總結
這個月學習班仿真機我們練習了事故處理和冷態(tài)啟動,本次的練習總結如下:
事故處理過程中我主要是配合鍋爐輔機的調整。
一、空預器跳閘,立即關閉各風煙擋板,打掉一臺磨,調整爐膛負壓正常,視壓力快速減負荷,視排煙溫度,調整燃燒。仿真機三臺磨可以維持排煙溫度,正常運行中如果無法維持再打掉一臺磨投一層油槍,保證燃燒穩(wěn)定。
二、兩臺磨組斷煤,立即加大運行磨組出力,同時投AC層油槍,將跳閘磨冷風全開,熱風全關,防止磨出口溫度高跳閘。視壓力減負荷。調整監(jiān)視好各水位、氣溫。
三、一臺電泵跳閘,立即將另一臺電泵出力加到最大,打掉一臺磨,快速減負荷,視水位繼續(xù)減小磨出力。由于一臺電泵運行氣溫波動比較大加強調整。待水位穩(wěn)定后檢查備用泵,處理跳閘泵,盡快恢復。
四、減溫水全部中斷,立即打掉一臺磨,降低其它磨組出力,適當減負荷,同時將減溫水調整門關至百分之十左右,防止突然來水氣溫突降。
冷態(tài)啟動過程從設備的檢查恢復到點火掛閘。期間操作還算順利,但在最后掛閘后汽機開始沖轉沒能及時發(fā)現,檢查不到位,粗心大意。
本次事故過程中我負責加減負荷,但現在小網運行,加減負荷不能大幅度操作,遇到事故也不能隨便解除AGC。這也給我們敲響了警鐘,在今后遇到問題一定要多考慮,切記盲目操作。加強學習,保證機組的安全運行。
童曉霖
第四篇:仿真繪圖總結
Simulink仿真繪圖總結:建議使用方法4,方法1,2不宜使用。1.運行仿真模型,用Scope觀察結果,用ALT+PrintScreen抓取圖形,Ctrl+V粘貼到Word。
2.使用Scope打印功能,在Word中插入圖形來自文件。
3.在Scope中參數設置如下:
在MATLAB命令窗口輸入:plot(x(:,1),x(:,2:4));%%%%此處有三個輸出。在figure/Edit菜單下選擇Copy Options…,在打開得對話框中設置如下:
然后在figure/Edit菜單下選擇Copy Figure,Ctrl+V粘貼到Word。
這時還可再用繪圖命令修改完善,如下: 4.用
out模塊替代Scope模塊,仿真結束后用繪圖命令:plot(tout,yout);在figure/Edit菜單下選擇Copy Figure,Ctrl+V粘貼到Word。
5.使用plot(tout,yout);saveas(gcf,'myfigure','emf');在Word中圖片
來
自
文
件
myfigure.emf
。插入***00.511.522.533.544.5
如何編輯和保存simulink中scope顯示結果
關于scope結果的保存,論壇里的一般回答都是輸出到workspace,再plot,但是plot在一張圖里只可以有一個坐標系,在多變量情況下很不方便,不能實現scope中多axis的情況。另外若直接打印scope顯示的結果,圖形顏色無法編輯,也不能在圖上加線條或文字。可以在打開scope情況下,在matlab中輸入命令shh = get(0,'ShowHiddenHandles');set(0,'ShowHiddenHandles','On')set(gcf,'menubar','figure')set(gcf,'CloseRequestFcn','closereq')set(gcf,'DefaultLineClipping','Off')set(0,'ShowHiddenHandles',shh)這樣scope隱藏的編輯菜單就會出現,與plot中的菜單類似,可以方便的編輯scope中的圖形,并可以將圖形另存為*.fig,或者export為*.jpg,*.bmp等等。使用plot打印圖片:1.首先添加一個clock時間控件,輸出時間t到一個示波器里。修改該示波器參數,進入到datahistory,刪除limit data,勾選save data to workspace,變量名t,格式array。(或者使用to workspace這樣一個控件)2.仿照上面示波器參數設置,修改你所要顯示的示波器。設變量名為x3.在MATLAB主界面(或新建一個m文件)輸入:plot(t,x)(ps:有時候t可能不止一列,需要選擇一下,如:plot(t(:,1),x))4.整理圖像,選edit下copy figure,粘貼入word中。
simulink
在一個圖形中畫出多個示波器曲線的方法 最近碰到一個問題,就是做仿真模型的時候需要在這個模型的基礎上,改變相應的參數,畫出相應的轉矩或者角速度的圖像,這樣就能在一個圖形中畫出個曲線,可以比較不同參數下對轉矩或者角速度的影響。具體方法是,把示波器的圖像顯示在圖形中,前面的博文已經做過了解決。那就是通過設置示波器參數把示波器圖形用plot命令顯示。如:雙擊所要輸出波形的示波器,打開示波器參數選擇窗口,點擊“Data history”標簽,將第二個參數“Save data to workspace”打勾(如下圖)。可填寫變量名和選擇格式。變量名隨便,好記就行,格式選擇arry。這里順便說一句。在仿真時經常會出現仿真結束后,示波器顯示的波形只有一部分的現象,這是第一個參數“Limit data points to last”被選中的緣故。這個參數被選中,輸出點數被限制,當然波形就只能顯示一部分了,只不過這樣可以節(jié)省內存罷了。要全部顯示,只要不勾就行了。一切選擇好后,點OK退出,運行仿真。在仿真結束后,在workspace里面會出現一個和前面設定的變量名相同名字的結構體變量。該變量中主要有一個名字為signals的結構體和一個名為time的向量。在signals里面還有
values的向量。這就是繪制新圖形的數據基礎。在命令窗口輸入 plot(ScopeData.time,ScopeData.signals.values,'k')這樣就可以輸出一個坐標清楚的圖形了。但是此時的坐標沒有標注坐標所代表的量的名稱。此時輸入xlabel('time(s)'),在X坐標下就會顯示time(s)字樣,輸入ylabel('speed(m/s)'),在Y軸同樣輸出speed(m/s)字樣。改變' '內的字符串,就可以改變坐標下的名字。在命令窗口輸入axis([xmin xmax ymin ymax]),就可以限定輸出波形的上下界。輸入set(gca,'xtick',[a b c d....])可以重新標定坐標刻度,其中“a b c d...”就是重新標定后的刻度值。grid on,grid off 命令可以打開和關閉網格。經過這些命令一處理,就可以得到非常滿意的輸出圖形了。怎么在plot命令中顯示多條曲線呢,即在一組參數下仿真圖像是1,當我用另外一組參數仿真得到仿真圖像2.怎么樣才能把這兩個圖像放在一個圖中呢。通過查詢我得到了一個簡單的辦法,即,仿真1結束后,plot(y1)然后輸入 hold on 命令 然后再plot(y2)當然y1和y2是把示波器的變量重新定義了以后。也可輸入相同的plot(y)只要兩條曲線不同。方法2: 設你的波形變量保存為y1,...y5, plot([y1;y2;y3;y4;y5])把五條曲線畫到一個圖上.注意to workspace中保存類型是array.方法3:如果你要在一個坐標軸內顯示幾個曲線,那么就在用一個mux,把速度和轉矩合并一個變量,然后to workspace,然后用plot畫可以顯示出跟示波器一樣的一個圖形2個曲線。我主要用方法1,簡單明了。示波器圖形保存方法: 方法1,用Print Screen Sys Rq 抓圖,復制到畫圖版,再將圖形剪到word中; 方法簡單但效果不好,對于數據線多的顏色糟糕 方法2,改變仿真參數,選擇save....下的參數,將仿真得到結存波形 存至 workspace 只要構建變量,在工作窗口輸入以下命令:
t=ScopeData.time;y=ScopeData.signals(:,1).values;%多個窗口的多個信號的第i
個窗口
plot(t,y,'');% 多窗口推薦
subplot MATLAB中用plot命令畫出示波器的圖形總結 這兩天碰到一個問題是關于用MATLAB命令把示波器圖形畫出,經過努力總算得到解決??吹骄W上有的同行問怎么改示波器的背景,把示波器波形復制到Word中,我有兩種方法,第一種是我一個同學告訴我的,通過命令對示波器進行操作。具體如下
shh = get(0,'ShowHiddenHandles');set(0,'ShowHiddenHandles','On')set(gcf,'menubar','figure')set(gcf,'CloseRequestFcn','closereq')set(gcf,'DefaultLineClipping','Off')set(0,'ShowHiddenHandles',shh)輸入以上命令可以直接對示波器進行修改,包括背景和曲線顏色 第二種方法我以前總結過,現在詳細說明一下 用MATLAB命令將simulink示波器的圖形畫出 第一步,將你的示波器的輸出曲線以矩陣形式映射到MATLAB的工作空間內。如圖1所示,雙擊示波器后選擇parameters目錄下的Data history,將Save data to workspace勾上,Format選擇Array,Variable name即你輸入至工作空間的矩陣名稱,這里我取名aa。在這之后運行一次仿真,那么你就可以在MATLAB的工作空間里看到你示波器輸出曲線的矩陣aa。如圖2所示。
第二步,用
plot函數畫出曲線 雙擊曲線矩陣aa,將可以看到詳細情況,我這里的aa矩陣是一個1034行,3列的矩陣,觀察這個矩陣即可以發(fā)現,這個矩陣的第一列是仿真時間,而由于我仿真時示波器內輸出的是兩條曲線,所以第二列和第三列即分別代表了這2條曲線。同時大家要注意,在simulink中我們有時往往在示波器中混合輸出曲線,那么就要在示波器前加一個MUX混合模塊,因此示波器內曲線映射到的工作空間的矩陣是和你的MUX的輸入端數有關,如果你設置了3個MUX輸入端,而實際上你只使用了2個,那么曲線矩陣仍然會有4列,并且其中一列是零,而不是3列。理解曲線矩陣的原理之后,我們就可以用plot函數畫出示波器中顯示的圖形了。
curve=plot(aa(:,1),aa(:,2),aa(:,1),aa(:,3),'--r')%aa(:,1)表示取aa的第一列,仿真時間 %aa(:,2)表示取aa的第二列,示波器的輸入一 %aa(:,3)表示取aa的第三列,示波器的輸入二 %--r表示曲線2顯示的形式和顏色,這里是(red)set(curve(1),'linewidth',3)
%設置曲線1的粗細 set(curve(2),'linewidth',3)
%設置曲線2的粗細 legend('Fuzzy','PID','Location','NorthEastOutside')%曲線名稱標注 xlabel('仿真時間(s)')
%X坐標軸名稱標注 ylabel('幅值')%Y軸坐標軸標注 title('Fuzzy Control VS PID')%所畫圖的名稱 grid on %添加網格 運行上述命令后即可以看到用MATLAB命令畫出的圖形了,你可以在圖形出來之后繼續(xù)進行編輯。
將不同示波器中的曲線畫在一張圖上 如何將不同示波器中的曲線畫在一張圖上,很簡單,如下命令解釋 curve=plot(f1(:,1),f1(:,2),FP(:,1),FP(:,2),'r',FP(:,1),FP(:,3),'k')%f1為即示波器1輸出的曲線矩陣f1,FP為示波器2輸出的曲線矩陣FP 同一示波器內的仿真時間和曲線要相一致,所以f1(:,1),f1(:,2)放一起,FP(:,1),FP(:,2)放一起,不能出現f1(:,1),FP(:,2)的情況
不只是eps圖形,在word中最好的是emf和wmf等,這個有人分析對比過。word中用eps,視覺上會不清楚,但是轉換為pdf文檔后就很清楚了。eps圖形主要是被LaTeX排版系統(tǒng)直接利用生成pdf,出來的圖也是比較清楚。我們通常知道的所見即所得的畫圖軟件,例如matlab,origin,visio,smartdraw,coraldraw,得到的圖形都可以輸出(另存)為矢量圖形的,最好別選擇jpg,更不要選擇bmp。simlink仿真波形的輸出與繪制(含實例,適合新手)在做simlink仿真的過程中,一般都是用示波器看信號的波形。但是很多時候是需要波形輸出,我們知道示波器里的波形背景是黑的,而且線型線寬以及加標注都十分困難。下面分享一下我的經驗,歡迎高手拍磚!我所知道的信號輸出到工作環(huán)境的方法有2種:(1)通過out模塊:我一直使用的,也是我比較熟悉的方法。個人覺得比workspace好用多了(2)通過To Workspace模塊:只是知道可以,不過沒用過。剛才試了一下發(fā)現輸出的數據是一個結構體,雖然可以修改save famat讓它也輸出矩陣,但是我始終沒有找到仿真系統(tǒng)的時間變量在哪兒輸出。因此繪圖就會遇到麻煩(這一點煩請用過的高人,指點一二)用了out模塊后,在模型運行完畢后。數據會自動輸出到工作環(huán)境:時間默認的是tout(1維向量),信號數據默認的是yout(可能是一維向量,也可能是個矩陣)。事實證明當把workspace的save format選為Array的時候,yout==simout。在這里輸出的參數名字都用默認的,out模塊輸出的參數名字可以在Simulation-->Configuration Parameters-->Data Import/Export 里邊進行修改;To Workspace模塊雙擊就可以修改了。(1)繪制的一些技巧。
在附帶的模型里我們用mux模塊將3個信號混合到一起。模型運行完畢后就可以在工作空間繪圖了,可以繪制其中的任一信號,也可以同時繪制,還可以根據需要設置線型和顏色。
復制內容到剪貼板 代碼: clear,clc;sim('example.mdl');%要先把附件的example.mdl
存到
work的目錄里
subplot(311),plot(tout,yout);legend('輸入信號','控制輸出','基準信號',...'Location','NorthEastOutside')title('所有信號繪制到一起')
subplot(312),plot(tout,yout(:,2),'linewidth',2.5,...'color',[1 0 0])
title('
單
控
制
輸
出
繪
圖
')subplot(313),stem(tout(1:20:end),yout(1:20:end,:),'fill','-');title('離散取點繪圖')總之呢,取數據的技巧掌握了,想怎么繪制就怎么繪制了。在標注和取信號的時候要注意yout的列對應mux模塊的各個輸入,第一列對應最上邊的輸入,一次類推、、、mux有多少個輸入信號yout就有多少列,而列的長度和仿真時間設置以及數據輸出點數有關。(2)繪制出了漂亮的圖,如何貼到word里的問題。
這個問題也是以前討論較多的問題,因為通過抓屏或者抓圖工具弄的圖貼到word里都會出現變形的問題。調整大小就更容易出現了,這是因為抓的圖默認存的jpg或者bmp都是位圖。而矢量圖拉伸不會影響清晰度,這點在這個帖子里有討論,如何Word中的粘貼的圖片更清晰。這里就說說如何把繪制的圖形存為矢量圖,其實很簡單,就一個saveas指令。記住在word里要用“插入-->圖片-->來自文件”的方式。
復制內容到剪貼板
代碼:
figure(2);stem(tout(1:20:end),yout(1:20:end,:),'fill','-');saveas(gcf,'myaxes','emf')歡迎討論并提寶貴意見!
m=[0.5:0.25:2];T=[86 87.4 89 90.2 91.3 92.6 93.8];V=-(T-308)./82.3;plot(m,V)grid on set(gca,'xtick',[0.5 0.75 1 1.25 1.5 1.75 2])xlabel('鹽密/g')ylabel('輻射計輸出直流電壓/V')title('輻射計輸出直流電壓和鹽密之間的關系')%以下程序可以改變坐標軸顯示的數值
%day={'mon' 'tue' 'wen' 'thi' 'fri' 'sat' 'sun'};%set(gca,'xticklabel',day)% 【 例 10.7.2-1 】本例演示: axes 軸位框設計、rectangle 的運用、及軸外注釋。所謂軸外注釋,% 實際上是使用了兩個軸位框。一個軸位框充滿全部圖形窗,其坐標框被隱去,而只寫注釋文字。而另一個比較小的軸位框用于繪圖。% 這樣從外表看去,注釋就處于那小軸位框的外部。
clear,clc;zeta2=[0.2 0.4 0.6 0.8 1.0];n=length(zeta2);for k=1:n;Num{k,1}=1;Den{k,1}=[1 2*zeta2(k)1];end S=tf(Num,Den);% 產生單輸入多輸出系統(tǒng) t=(0:0.4:20)';% 時間采樣點
[Y,x]=step(S,t);% 單輸入多輸出系統(tǒng)的響應 tt=t*ones(size(zeta2));% 為畫彩帶圖,生成與函數值 Y 維數相同的時間矩陣。
% 產生全窗軸位框,并隱去坐標軸
clf reset,H=axes('Position', [0, 0, 1, 1], 'Visible', 'off');% 產生包含多行字符串的元胞數組 str{1}='fontname{ 隸書 } 二階系統(tǒng)階躍響應 ';%<11> str{2}='y(t)= 1zeta^{2})^{0.5}';str{6}='theta = arctg(beta/zeta)';str{7}='zeta =.2,.4,.6,.8, 1';%<15>
% 使 H 句柄軸對象成為當前軸,然后注釋多行文字。
set(gcf, 'CurrentAxes',H)%<18> text(0.01, 0.73, str, 'FontSize', 12)%<19> h1=axes('Position', [0.45, 0.45, 0.5, 0.5]);% 產生右半窗的軸位框 ribbon(tt,Y,0.4)% 在 h1 軸位框中畫彩帶圖 % 對 X 軸、Z 軸重標刻
度
值
set(h1,'XTickLabelMode','manual','XTickLabel','0|0.4|0.8|1.2');%< 23> set(h1,'ZTickLabel','0|1.0|2.0');%<24> % 低層指令標識軸名 set(get(h1,'XLabel'),'String','zeta set(get(h1,'YLabel'),'String','leftarrow
rightarrow','Rotation',17.5)t','Rotation',-25)
%<27> set(get(h1,'Zlabel'),'String','y rightarrow')h2=axes('Position',[0.03, 0.08, 0.27, 0.27]);% 在左下角,產生小的軸位框。plot(tt,Y)% 在 h2 軸對象上畫二維圖
% 在右下方畫系統(tǒng)方塊框圖 h3=axes('Position',[0.37,0.04,0.63,0.32]);% 設置畫框圖的軸位框 set(h3,'Xlim',[0,1.2],'Ylim',[0,0.5])% 設置軸的刻度范圍 set(h3,'DataAspectRatio',[1 1 1])% 設置刻度比例 set(h3,'ColorOrder',[0,0,0])% 設置繪線的首選用色 set(h3,'Visible','off')
%
隱
去
坐
標
軸
hh1=rectangle('Position',[0.5,0.2,0.4,0.2],'Curvature',[0,0]);% 畫方框
<37> hh2=rectangle('Position',[0.2,0.26,0.08,0.08],'Curvature',[1,1]);
% 畫圓框 <38>
xx1=0.05:0.01:0.2;xx2=0.28:0.02:0.5;xx3=0.9:0.02:1.1;xx4=0.24:0.02:1;yy5=0.1:0.02:0.26;yy6=0.1:0.02:0.3;yy1=0.3*ones(size(xx1));yy2=0.3*ones(size(xx2));yy3=0.3*ones(size(xx3));yy4=0.1*ones(size(xx4));xx5=0.24*ones(size(yy5));xx6=ones(size(yy6));line(xx1,yy1);line(xx2,yy2);line(xx3,yy3);line(xx4,yy4);line(xx5,yy5);line(xx6,yy6)line(0.17,0.3,'Marker','>','MarkerFaceColor','k')line(0.47,0.3,'Marker','>','MarkerFaceColor','k')line(1.1,0.3,'Marker','>','MarkerFaceColor','k')line(0.24,0.23,'Marker','^','MarkerFaceColor','k')line(0.17,0.35,'Marker','+')text(0.27,0.23,'-')text(0.05,0.35,'u(t)')text(1,0.35,'y(t)')
text(0.6,0.26,'s{^2} + 2{zeta}s');xx7=0.56:0.02:0.84;yy7=0.3*ones(size(xx7));line(xx7,yy7)text(0.68,0.35,'1')
第五篇:仿真培訓總結
仿真培訓總結
今天是我第一次學習**電廠仿真機系統(tǒng),我先從冷態(tài)啟動開始學習。首先是投入水系統(tǒng),依次投入循環(huán)水,開式水,凝輸水,汽包上水,除氧器上水,凝汽器上水,凝結水,閉式水,定冷水。水系統(tǒng)的投入,首先是對就地閥門的檢查,看開啟是否正確,然后再進行DCS的操作。凝泵啟動后要切換低加旁路為主路。開式水走旁路,閉式水開啟調壓,調溫閥,相應閉式水冷卻器用戶調自動。凝汽器,汽包,除氧器上水完成后,凝輸泵停運,開啟凝輸泵進出口門。然后是投入油系統(tǒng)包括大機潤滑油,密封油。再次就是投入盤車。再進行發(fā)電機氣體置換,汽機抽真空,投軸封。接著就是投入給水系統(tǒng),投入小機油系統(tǒng),小機進汽系統(tǒng),沖轉小機。最后切換高加旁路為主路。鍋爐起壓后,先開起主再熱蒸汽管道的輸水閥,然后開啟低,高壓旁路,控制主汽壓,再熱汽溫的變化率。等待沖轉汽輪機。
在操作中,我犯了好多錯誤,包括系統(tǒng)的啟動順序都會出錯,對系統(tǒng)不了解,找不到相應閥門的位置。我想我應該加緊努力學習這些系統(tǒng),多向師傅們學習尤其是對每個閥門都要弄清是否該起還該停。路漫漫其修遠兮,吾將上下而求索。