基于Matlab的隨動系統(tǒng)半實物仿真平臺設計_第1頁
基于Matlab的隨動系統(tǒng)半實物仿真平臺設計_第2頁
基于Matlab的隨動系統(tǒng)半實物仿真平臺設計_第3頁
基于Matlab的隨動系統(tǒng)半實物仿真平臺設計_第4頁
基于Matlab的隨動系統(tǒng)半實物仿真平臺設計_第5頁
已閱讀5頁,還剩5頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、第27卷第6期2006年12月Dec.2006文章編號:167226987(20060620540203基于Matlab 的隨動系統(tǒng)半實物仿真平臺設計隋樹林,于鐳,邵巍(青島科技大學自動化與電子工程學院,山東青島,266042摘要:設計了一種基于Matlab 與DSP 的隨動系統(tǒng)仿真平臺。系統(tǒng)利用Matlab 對DSP 端口進行訪問,并對實時數據進行分析、處理和顯示。軟件部分采用Matlab 進行程序編寫,發(fā)揮了Matlab 強大的數據處理功能,克服了VC 與Matlab 混合編程工作量大,結構復雜的缺點,又彌補了單獨用VC 編程處理數據能力弱的不足,較好的實現了對隨動系統(tǒng)的半實物仿真和校驗。

2、關鍵詞:Matlab ;DSP ;隨動系統(tǒng);半實物仿真中圖分類號:TP 211文獻標識碼:ADesign of T racking System H ardw are 2in 2loopSimulation Platform B ased on MatlabSUI Shu 2lin ,YU Lei ,SHAO Wei(College of Automation and Electronic Engineering ,Qingdao University ofScience and Technology ,Qingdao 266042,China Abstract :The design of

3、a t racking system simulation platform based on Matlab and DSP is p resented in t his paper.In t he system ,Matlab is used to access DSP port ,analyze and p rocess t he real 2time data as well as show t he result s.In order to overcome t he shortcoming of complex st ruct ure and make up t he weaknes

4、s on processing data using VC language only ,t he software of t he system is programmed wit h Matlab t hat has pow 2erf ul f unction to process data.This system has been tested using hardware 2in 2loop sim 2ulation and a good result has been achieved.K ey w ords :Matlab ;DSP ;tracking system ;hardwa

5、re 2in 2loopsimulation 半實物仿真是計算機在進行仿真時引入部分硬件實物進行軟硬結合的仿真,是對各種復雜控制系統(tǒng)進行初步測試的常用方法。本工作將Matlab 引入到隨動系統(tǒng)仿真回路中進行半實物仿真,并對控制參數進行在線調整,改善系統(tǒng)的性能,為系統(tǒng)的開發(fā)和校驗提供了一個良好的平臺。1系統(tǒng)結構基于Matlab 串口操作的實時PID 參數調節(jié)隨動系統(tǒng)的結構見圖1。圖1系統(tǒng)結構圖Fig.1System structure操作指令、PID 參數、采樣頻率、點數以及運動模式等參數由Matlab 的交互式界面通過串口傳入DSP ,DSP 結合主動、從動電機經過位置編收稿日期:200521

6、2202作者簡介:隋樹林(1958,男,教授.第6期隋樹林等:基于Matlab的隨動系統(tǒng)半實物仿真平臺設計碼器傳來的數據進行處理計算,得到PWM模塊的輸出信號,再經驅動電路放大后,驅動電機運動,在進行閉環(huán)控制的同時,Matalb也將位置信息實時的顯示出來。2Matlab編程2.1界面設計與編程Matlab的強項是矩陣和數值的計算,且提供了大量的實用工具箱,界面設計并不是它的強項。不過隨著Matlab版本的提高,對界面設計的支持也越來越好。最新的Matlab7.0的GU ID E新增加了對用戶界面面板和ActiveX控件的支持,其界面美化程度完全可以和VB相媲美1,2。可用兩種簡單的方法進行控件

7、回調m函數的創(chuàng)建。一種是在GU I的工具菜單里的GU I2Options選項里選擇Generate FIG2file and M file單選項,然后在生成的m文件對應的控件回調函數里編寫響應事件的程序;另一種是在該控件的call2 back屬性里設置callback函數名,然后在Matlab 工作路徑里建立同名的m函數。也可以通過編寫M EX程序,對硬件進行相應的操作。若用Simulink進行軟件設計則需要建立相應的s函數3。2.2與DSP通信用作主機和從機的兩臺目標機可以安裝串口卡或者以太網卡,通過RS232或TCP/IP協議進行通信,也可通過U SB進行通信4,特殊情況下也可以通過并口連

8、接5。本系統(tǒng)采用了串口通信,Matlab支持面向對象技術,用一個對象將計算機串口封裝起來,只要創(chuàng)建串口對象,對串口對象操作就是對串口操作。以下是“開始”按鈕回調程序對串口進行的操作:f unction buttonstartfcn(global b p i d p2i2d2time2count2s data; %聲明用到的全局變量p2=round(get(findobj(0,tag,sliderp,Value;%得到控制P參數的滑動鍵的值%得到其他參數的值s=serial(COM1;%產生串口對象s,并且與串口COM1關聯set(s,BaudRate,19200;%設置s的波特率為19200s

9、et(findobj(0,tag,buttonstart,ena2 ble,off;%使開始按鈕無效,以防兩次打開該串口set(s,Outp utBufferSize,4096;%設置發(fā)送緩沖區(qū)的大小set(s,Inp utBufferSize,20000;%設置接受緩沖區(qū)的大小set(s,BytesAvailableFcnMode,byte;s.BytesAvailableFcnCount=16;s.BytesAvailableFcn=pidcallback;%接收16個字節(jié)響應接收回調函數pidcallback s.RecordName=myrecord.t xt;s.RecordMode

10、=index;s.RecordDetail=verbo se;%生成接收數據的文本記錄文件s.Timeout=10;%設置10秒內沒有接收滿數據,則進行超時處理fopen(s;%連接s和DSPfwrite(s,8p2a p2b i2a i2b d2a d2b time2,uint8;%向DSP傳輸控制指令和參數end回調函數pidcallback(里主要是調用f read (函數讀取接收緩沖區(qū)里由DSP通過串口發(fā)過來的數據,并進行實時畫圖操作。2.3曲線實時顯示Matlab沒有提供現成的函數來繪制實時的圖形,但是可以用Matlab中的drawnow函數來實現實時可視化過程。它可將用戶最后的設置

11、補充到圖形窗口中,用drawnow命令將最新的設置寫入圖形句柄所對應的圖形中,這樣,循環(huán)修改坐標的值就可以得到實時的動態(tài)圖像。2.4智能化過程的實現對于采集到的數據,可以利用Matlab強大的數據處理功能進行模型建立,參數優(yōu)化,智能控制等操作627。如果只利用Matlab本身函數庫中所帶的或自我編寫的m文件、s文件進行處理運算,速度較慢,很可能滿足不了實時處理的要求,將m 文件或s文件編譯為帶有dll擴展名的M EX文145青島科技大學學報第27卷件后,可以大大提高程序的運行速度。3DSP 編程該系統(tǒng)采用的DSP 芯片是Motorola 公司的56807型號8。它是Motorola 公司的16

12、位DSP ,運行速度可以達到每秒4×107條指令,它的PWM 模塊可以方便的對輸出電壓的脈寬進行改變,經放大后可以對直流伺服電機的轉速進行調節(jié)。圖2是DSP 程序的流程圖。 圖2DSP 程序流程圖Fig.2The flow chart of DSPDSP 用read 函數從上位機讀取8個字節(jié)的指令到數組RX_DA TA ,分別用來接收開始結束命令,PID 參數,采樣周期,采樣點數等。read (SCI0,&RX_DA TA ,sizeof (RX_DA 2TA ;DSP 每次向串口發(fā)送16個字節(jié),用來傳輸兩個電機的位置參數:X_DA TA0=P_L SB &0x00F

13、F ;TX_DA TA 1=(P _L SB >>8&0x00FF ;write (SCI0,&TX_DA TA ,sizeof (TX_DA 2TA ;4程序運行結果圖3為采用PID 控制的電機運動的測量實例。根據繪制的采樣圖,可以方便觀察和記錄主動和隨動電機位置的變化,調節(jié)PID 參數。這個系統(tǒng)只是一個基于Matlab 的比較簡單的串口實時操作實例,在此基礎上做進一步的工作,可以通過分析階躍響應函數曲線來確定各項性能,并與期望性能指標比較,得出理想參數,如能進一步結合Simulink 或SISO 設計工具,則系統(tǒng)的智能化程度將大大提高。圖3程序運行結果Fig.3

14、The result of t he program running5結語該系統(tǒng)充分利用了Matlab 與硬件連接的能力,結合Matlab 自身的優(yōu)勢搭建智能化平臺,具有擴展程度高,應用靈活性強的特點,對于隨動系統(tǒng)的系統(tǒng)設計,參數調節(jié)等都具有一定的實際意義。參考文獻1吳越華,馮昊.基于Matlab 圖形用戶界面的對話框設計的應用J .福建電腦,2003(9:502542楊東勇,張容,陳敏智.圖形交互式離散控制系統(tǒng)教學環(huán)境的開發(fā)J .浙江工業(yè)大學學報,2000,28(2:12521293王萬里,張文杰,王燕.在Windows 2000平臺下實現Matlab對硬件的訪問J .計算機仿真,2004(5:23522384夏文芳,吳鴻修,李享元.基于U SB 的實時數據采集系統(tǒng)及其在Matlab 中的應用J .電子技術應用,20

溫馨提示

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

評論

0/150

提交評論