网站大量收购独家精品文档,联系QQ:2885784924

Matlab中simulink 与S-function 的使用(53版)().DOC

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 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,可以把模型轉換成圖五的樣子。點選其中

文档评论(0)

youbika + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档