- 1、本文档共12页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Matlab中simulink 与S-function 的使用(53版)()
在Matlab 5.3中使用
simulink與s-function
2003/1/20晃昌
目錄:
簡介
使用simulink 建立模型
1 simulink 使用以及基本參數設定
2 利用 subsystem簡化模型
3 在mask 外設定subsystem的參數
使用s-function 建立新的元件
1 s-function 執行流程
2 以FIR濾波器範例說明s-function 中變數與函式功能
在Matlab 中 以C語言撰寫s-function
簡介
在matlab中,提供了一個simulink的程式模擬工具箱。可以將模型直接以塊圖的方式表現,能讓建立模型以外的人也能很快了解系統所包含的內容。Simulink提供了大量的元件,加速了模型的建立。但我們還是可能會找不到現成的元件,這時可以使用一些基本功能的元件組合起來,建立一個次系統(subsystem),再加上mesk成為一個自訂功能的元件。這種多層的架構可以讓我們使用少數的基本元件建立複雜的模型。但是在simulink中,每一個元件都是由一個個別的程式寫成的,而在模擬中的每次取樣時間,模型中的每個元件都會被執行一次,於是各個元件對應的程式都被執行了一次。所以模型中使用的元件越多,每次取樣時間所須執行的程式數目就越大,模擬就跑得越慢。所以我們必須學會使用程式建立自訂功能的元件,也就是s-function。直接使用s-function來建立元件,可以節省模擬的時間,並且自訂參數,增加模型的彈性。S-function可以使用matlab自訂的程式語言撰寫,存成m-file,或是使用c語言編寫,可以增快執行的速度。本文的主要目的在使讀者能了解如何使用s-function建立自己的元件。將會先簡略的說明次系統(subsystem)的建立方法以及mesk的使用,接著介紹m-file的s-function格式,最後再說明c語言的s-function格式。
使用simulink 建立模型
1.1 simulink 使用以及基本參數設定
這節將介紹simulink的基本使用方法,以及模擬參數設定。我們將以一個FIR濾波器作為說明的範例。
首先要開啟simulink工具箱,可以在matlab的command 視窗下鍵入”simulink”,或是直接點選工具列上的圖示。接著在工具箱上選取開啟新的檔案,將檔名存為FIR_1。這時應該可以在螢幕上看到圖一的畫面:
圖一
接著我們可以開始建立自己的FIR濾波器模型。FIR濾波器可以用delay,gain,sum這些元件構成。要搜尋這些元件,可以在工具箱上的望遠鏡後面打上想找的元件名稱,然後按”Enter”。工具箱中可能會有許多名稱類似的元件,不停的按”Enter”可以找下一個,直到找到合用的,然後將它拖曳到FIR_1檔案視窗中。如圖二。
圖二
以滑鼠右鍵雙擊元件可以改變內部的參數。將sum的List of signals改為”++++”,Icon shap改為”rectangular”; 用Ctrl+滑鼠拖曳複製三個unit delay,四個Gain。接著用Ctrl+R旋轉元件,在元件間以滑鼠直接拉線連接。然後我們以兩個step 加上一個sum 組成一個脈衝信號,再分別用scope 觀察輸入和輸出的波形。這時建立的模型應該如圖三,是一個四接的FIR濾波器,weight coefficient (Gain中的值)分別是1,2,3,4。
圖三
模型中各個元件的參數設定如下:
第一個Step的step time=1,initial value=0,final value=1,sample time=0;
第二個Step的step time=2,initial value=0,final value=-1,sample time=0;
所有的Unit Delay 的sample time 都是 1,initial value 都是0。
要設定模擬的時間,點選檔案工具列上的 Simulation - Parameters,可以設定Start time 和Stop time。分別設為0和10。
接著按下,模擬就開始執行了。執行完成後,點選scope,可以看到如圖四的波形。
圖四
1.2 利用 subsystem簡化模型
我們現在已經可以使用元件建立簡單的模型了。當模型很大時,例如包含了許多個FIR濾波器,這時模型的方塊圖會變得很凌亂不易觀察。我們可以將幾個相連的元件簡化成一個方塊,就是建立subsystem。像是在FIR_1中,我們可以選取組成濾波器的元件(unit delay,gain,4-input sum),然後在工具列中點選Edit - Create Subsystem,可以把模型轉換成圖五的樣子。點選其中
您可能关注的文档
最近下载
- 采购合同结清证明模板.doc VIP
- 对乡镇领导班子干部成员的批评意见范文.pdf VIP
- 各类骨折病人的体位护理.pptx VIP
- 机动车检测人员试题库(附答案).pdf VIP
- 2025年安徽工业经济职业技术学院单招职业技能测试题库带答案(综合题).docx VIP
- 工学院机械电子工程专业留学生培养方案.docx VIP
- 2025年湖南高速铁路职业技术学院单招职业适应性测试题库及一套完整答案.docx VIP
- 2023年蚌埠市从优秀村(社区)干部中考试录用乡镇机关公务员加分考试真题及答案.pdf VIP
- 【教学创新大赛】《数字信号处理》教学创新成果报告.docx
- 学习领会二十届中央纪委四次全会上重要讲话心得体会.docx VIP
文档评论(0)