如何建立分类模型matlab,创建简单模型- MATLAB Simulink- MathWorks 中国
創(chuàng)建簡單模型
您可以使用 Simulink? 來對系統(tǒng)建模,然后仿真該系統(tǒng)的動態(tài)行為。本教程中創(chuàng)建簡單模型所使用的基本方法也適用于創(chuàng)建更復(fù)雜的模型。此示例對簡化的汽車運(yùn)動進(jìn)行仿真。當(dāng)踩下油門踏板時(shí),汽車通常處于行進(jìn)狀態(tài)。松開踏板后,汽車怠速并停下來。
Simulink 模塊是定義模塊輸入和模塊輸出之間數(shù)學(xué)關(guān)系的模型元素。要?jiǎng)?chuàng)建這個(gè)簡單模型,您需要四個(gè) Simulink 模塊。
模塊名稱模塊目的模型目的Pulse Generator為模型生成輸入信號表示加速踏板
Gain將輸入信號乘以常量值計(jì)算踩下加速踏板后如何影響汽車的加速度
Integrator, Second-Order將輸入信號積分兩次根據(jù)加速度計(jì)算汽車位置
Outport指定一個(gè)信號作為模型的輸出指定汽車位置做為模型的輸出
此模型的仿真過程是將一個(gè)簡短的脈沖信號積分兩次,形成一個(gè)斜坡。結(jié)果顯示在一個(gè)示波器窗口中。輸入脈沖表示是否踩下油門踏板 - 1 表示踩下,0 表示未踩下。輸出斜坡表示與起點(diǎn)之間的距離增加。打開新模型
使用 Simulink Editor 構(gòu)建模型。
啟動 MATLAB?。在 MATLAB 工具條上,點(diǎn)擊 Simulink 按鈕 。
點(diǎn)擊 Blank Model 模板。
Simulink Editor 打開。
從 Simulation 選項(xiàng)卡中,選擇 Save > Save as。在 File name 文本框中,輸入您的模型的名稱。例如,simple_model。點(diǎn)擊 Save。模型使用文件擴(kuò)展名 .slx 進(jìn)行保存。打開 Simulink庫瀏覽器
Simulink 在庫瀏覽器中提供了一系列按功能分類的模塊庫。下面是大多數(shù)工作流常用的一些模塊庫:
Continuous - 表示具有連續(xù)狀態(tài)的系統(tǒng)的模塊
Discrete - 表示具有離散狀態(tài)的系統(tǒng)的模塊
Math Operations - 實(shí)現(xiàn)代數(shù)和邏輯方程的模塊
Sinks - 存儲并顯示所連接信號的模塊
Sources - 生成模型的驅(qū)動信號值的模塊
在 Simulation 選項(xiàng)卡中,點(diǎn)擊 Library Browser 按鈕 。
將庫瀏覽器設(shè)置為始終在其他桌面窗口前端。在 Simulink 庫瀏覽器工具欄上,選擇 Stay on top 按鈕 。
要瀏覽模塊庫,請從左窗格中選擇一個(gè)類別,然后選擇一個(gè)功能區(qū)。要搜索所有可用的模塊庫,請輸入搜索詞。
例如,查找 Pulse Generator 模塊。在瀏覽器工具欄的搜索框中輸入 pulse,然后按 Enter。Simulink 將在模塊庫中搜索名稱或說明中包含 pulse 的模塊,然后顯示這些模塊。
獲取模塊的詳細(xì)信息。右鍵點(diǎn)擊 Pulse Generator 模塊,然后選擇 Help for the Pulse Generator block。Help 瀏覽器隨即打開并顯示該模塊的參考頁。
模塊通常有幾個(gè)參數(shù)。您可以通過雙擊該模塊來訪問所有模塊參數(shù)。將模塊添加到模型
要開始構(gòu)建模型,請瀏覽庫并添加模塊。
從 “Sources” 庫中,將 Pulse Generator 模塊拖到 Simulink Editor 中。您的模型中將出現(xiàn) Pulse Generator 模塊的副本,還有一個(gè)文本框用于輸入 Amplitude 參數(shù)的值。輸入 1。
參數(shù)值在整個(gè)仿真過程中保持不變。
使用相同的方法將以下模塊添加到模型中。
模塊庫參數(shù)Gain“Simulink/Math Operations”Gain: 2
Integrator, Second-Order“Simulink/Continuous”Initial condition: 0
Outport“Simulink/Sinks”Port number: 1
復(fù)制現(xiàn)有 Outport 模塊,然后使用鍵盤快捷方式將其粘貼到另一個(gè)點(diǎn),從而添加第二個(gè) Outport 模塊。
您的模型現(xiàn)在已經(jīng)包含您需要的模塊。
通過點(diǎn)擊并拖動每個(gè)模塊來排列模塊。要調(diào)整模塊大小,請拖動一個(gè)角。
連接模塊
通過在輸出端口和輸入端口之間創(chuàng)建線條來連接模塊。
點(diǎn)擊 Pulse
Generator 模塊右側(cè)的輸出端口。
該輸出端口和所有適合連接的輸入端口都將突出顯示。
點(diǎn)擊 Gain 模塊的輸入端口。
Simulink 用線條連接模塊,并用箭頭表示信號流的方向。
將 Gain block 的輸出端口連接到 Integrator, Second-Order 模塊的輸入端口。
將 Integrator, Second-Order 模塊的兩個(gè)輸出連接到兩個(gè) Outport 模塊。
保存模型。在 Simulation 選項(xiàng)卡中,點(diǎn)擊 Save 按鈕。
添加信號查看器
要查看仿真結(jié)果,請將第一個(gè)輸出連接到一個(gè) Signal
Viewer。
點(diǎn)擊信號。在 Simulation 選項(xiàng)卡中的 Prepare 下,點(diǎn)擊 Add Viewer。選擇 Scope。信號上會出現(xiàn)查看器圖標(biāo),并打開一個(gè)示波器窗口。
您可以隨時(shí)通過雙擊該圖標(biāo)打開示波器。運(yùn)行仿真
定義配置參數(shù)后,即可進(jìn)行模型仿真。
在 Simulation 選項(xiàng)卡中,通過更改工具欄中的值來設(shè)置仿真停止時(shí)間。
默認(rèn)停止時(shí)間 10.0 適合此模型。此時(shí)間值沒有單位。Simulink 中的時(shí)間單位取決于方程的構(gòu)造方式。此示例對簡化的汽車運(yùn)動進(jìn)行 10 秒的仿真 - 其他模型的時(shí)間單位可以是毫秒或年。
要運(yùn)行仿真,請點(diǎn)擊 Run 按鈕 。
仿真開始運(yùn)行并在查看器中生成輸出。
細(xì)化模型
此示例使用現(xiàn)有模型 moving_car.slx,并基于此運(yùn)動模型對接近傳感器建模。在這種情況下,數(shù)字傳感器用于測量汽車與 10 米(30 英尺)外的障礙物之間的距離。模型基于下列條件來輸出傳感器的測量值和汽車的位置值:
汽車在到達(dá)障礙物時(shí)會緊急剎車。
在現(xiàn)實(shí)世界中,傳感器對距離的測量不夠精確,從而導(dǎo)致隨機(jī)數(shù)值誤差。
數(shù)字傳感器以固定時(shí)間間隔運(yùn)行。更改模塊參數(shù)
要開始,請打開 moving_car 模型。在 MATLAB 命令行中,輸入:
open_system('moving_car.slx')
您首先需要對在汽車位置到達(dá) 10 時(shí)的緊急剎車進(jìn)行建模。Integrator, Second-Order 模塊有用于此目的的參數(shù)。
雙擊 Integrator, Second-Order 模塊。將出現(xiàn) Block Parameters 對話框。
選擇 Limit x,然后為 Upper limit x 輸入 10。參數(shù)的背景色發(fā)生變化以指示模型存在未應(yīng)用的修改。點(diǎn)擊 OK 應(yīng)用更改并關(guān)閉對話框。添加新模塊和連接
添加一個(gè)用來測量與障礙物之間距離的傳感器。
修改模型。根據(jù)需要展開模型窗口,以容納新模塊。
求實(shí)際距離。要想求出障礙物位置和車輛位置之間的距離,需要從 “Math Operations” 庫中添加 Subtract 模塊。還要從 “Sources” 庫中添加 Constant 模塊來為障礙物的位置設(shè)置常量值 10。
對真實(shí)傳感器中常見的不完美測量進(jìn)行建模。使用 “Sources” 庫中的 Band-Limited White Noise 模塊產(chǎn)生噪聲。將 Noise power 參數(shù)設(shè)置為 0.001。通過使用 “Math Operations” 庫中的 Add 模塊將噪聲添加到測量中。
對每 0.1 秒觸發(fā)一次的數(shù)字傳感器進(jìn)行建模。在 Simulink 中,以給定時(shí)間間隔對信號進(jìn)行采樣需要一個(gè)樣本和保持器。從 “Discrete” 庫中添加 Zero-Order
Hold 模塊。將該模塊添加到模型后,將 Sample Time 參數(shù)更改為 0.1。
添加另一個(gè) Outport,用來連接傳感器輸出。保留 Port number 參數(shù)的默認(rèn)值。
連接新模塊。Integrator,
Second-Order 模塊的輸出已連接到另一個(gè)端口。要在該信號中創(chuàng)建分支,請左鍵點(diǎn)擊該信號以突出顯示可供連接的端口,然后點(diǎn)擊適當(dāng)?shù)亩丝凇?/p>
為信號添加注釋
將信號名稱添加到模型中。
雙擊信號并鍵入信號名稱。
要完成輸入,請點(diǎn)擊文本框外部。
重復(fù)上述步驟以添加下圖中所示的名稱。
比較多個(gè)信號
將 actual distance 信號與 measured distance 信號進(jìn)行比較。
創(chuàng)建 Scope Viewer 并將其連接到 actual distance 信號。右鍵點(diǎn)擊信號并選擇 Create & Connect Viewer > Simulink > Scope。信號的名稱顯示在查看器標(biāo)題中。
將 measured distance 信號添加到同一個(gè)查看器中。右鍵點(diǎn)擊信號,然后選擇 Connect to Viewer > Scope1。確保您連接到在上一步中創(chuàng)建的查看器。
運(yùn)行模型。查看器顯示兩個(gè)信號:actual
distance(黃色)和 measured
distance(藍(lán)色)。
放大圖形以觀察噪聲和采樣的影響。點(diǎn)擊 Zoom 按鈕 。左鍵點(diǎn)擊并拖動鼠標(biāo)框住您想放大查看的區(qū)域。
您可以反復(fù)放大以觀察細(xì)節(jié)。
從圖中可以看到,測量值可偏離實(shí)際值達(dá) 0.3 米之多。此信息在設(shè)計(jì)安全功能(例如碰撞警告)時(shí)非常有用。
另請參閱
模塊
相關(guān)主題
總結(jié)
以上是生活随笔為你收集整理的如何建立分类模型matlab,创建简单模型- MATLAB Simulink- MathWorks 中国的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java佳沃维洛奇,新品速递:JAVA
- 下一篇: matlab红字怎么删除,购买方开具红字