《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于DSP的自動代碼生成及應用
基于DSP的自動代碼生成及應用
電子市場
摘要: 由MathWorks公司和TI公司聯合開發的MATLAB L ink for CCS DevelopmentToo l(CCSlink)是MATLAB6. 5版本中增加的一個全新的工具箱, 它提供了MATLAB、CCS和DSP目標板的接口, 利用此工具可以像操作MATLAB 變量一樣來操作DSP器件的寄存器和存儲器, 極大的提高了DSP應用系統的開發進展。
Abstract:
Key words :

     1  引  言

  Matlab" title="Matlab">Matlab具有強大的分析、計算和可視化功能, 利用MATLAB 提供的專業工具箱, 可以方便、靈活地實現對自動控制、信號處理、通信系統等算法的分析和仿真, 是算法設計人員和工程技術人員不可缺少的軟件工具。

  數字信號處理器( DSP" title="DSP">DSP)作為一種可編程專用芯片, 是數字信號處理理論實用化的重要工具, 在自動控制、語言處理、圖像處理等技術領域得到了廣泛應用。但對于算法設計人員來講, 利用匯編語言和C語言進行功能開發, 具有周期長、效率低的缺點, 不利于算法驗證和產品的快速開發。

  由MathWorks公司和TI公司聯合開發的MATLAB L ink for CCS" title="CCS">CCS DevelopmentToo l(CCSlink)是MATLAB6. 5版本中增加的一個全新的工具箱, 它提供了MATLAB、CCS和DSP目標板的接口, 利用此工具可以像操作MATLAB 變量一樣來操作DSP器件的寄存器和存儲器, 極大的提高了DSP應用系統的開發進展。

  2  M atlab與CCS及目標板間的連接

  Matlab可通過3種方式與CCS、目標DSP進行連接、數據交換。CCSL ink 向用戶提供了3 種連接對象, 如圖1所示。

  CCS IDE的連接對象: 該對象支持TI的C2000 /5000 /6000系列DSP, 利用此對象可創建CCS IDE和M atlab的連接。用戶可以編寫用于DSP程序的Ma tlab語言批處理腳本, 從Matlab 的命令窗中直接運行CCS IDE中的應用程序, 向硬件DSP的存儲器或寄存器發送或取出數據, 檢查DSP的狀態, 停止或啟動程序在DSP中的運行。

  與RTDX(實時數據交換)的連接對象: 該對象提供Matlab和硬件DSP之間的實時通信通道。它允許用戶在主機和目標板之間進行實時的數據交換而不用考慮目標板程序的運行。RTDX連接對象實際上是CCS連接對象的一個子類, 在創建CCS連接對象的同時創建RTDX 連接對象, 它們不能分別創建。

CCSL ink的三種接口

圖1  CCSL ink的三種接口

  嵌入式對象: 在Matlab 環境中創建, 該對象可以代表嵌入在目標C 程序中的變量, 由其直接對嵌入在目標DSP存儲器/寄存器中的變量進行操作。

  3  ETT IC2000環境

  由以上所述可知, CCSLink為T IDSP實時應用開發的調試和測試提供了強大的支持, 而ETT IC2000則為T IC2000 DSP實時應用開發的整個過程(概念設計、算法仿真、原代碼編寫、目標代碼生成、調試和測試)都提供了支持。利用ETTIC2000能夠從S imulink模型自動生成T I C2000 DSP的可執行代碼, 從而在Simu link統一環境下就可以實現整個硬件的在線仿真。

  應用ETTIC2000開發實時DSP處理的過程如下:

  ( 1)概念構思和DSP處理算法設計;( 2)在S imulink環境下, 利用DSP BLOCKSET,FIXED_POINT BLOCKSET, C2000 DSPLIB 和Simulink等庫中模塊構建算法模型, 并在S imulink環境下運行仿真;( 3)如果仿真效果滿意, 就可以在模型中加入所需的C2800 DSP Ch ip Support中的模塊。

  ( 4)設置REAL - T IME WORKSHOP中編譯連接( BU ILD)選項。

  ( 5)利用CCS中的調試工具、CCSLink或RTDX來調試目標DSP中的程序。

  4  仿真系統的建立及代碼生成

  4. 1  ADC 轉換及F IR濾波器處理程序設計

  用Embedded target for T I C2000 工具包設計ADC 轉換及F IR 濾波。在新建的S imulink文件中,放入C2000 Target Preference中的F2812 eZdsp, 并對其中參數進行設置。

  實現A /D 轉換的功能模塊是C28x ADC, A /D轉換模塊可以選擇模塊A、B 中的任意六個通道, 這里要注意數據格式的轉化。

  FIR 濾波器設計有很多種, 利用M atlab 中的FDATooo l( F ilter Desiign&Analysis Too l)來設計是經常使用的一種。FDATooo l是通過指定濾波器的性能指標來快速設計F IR 或者IIR 濾波器, 它是一種圖形設計界面, 如圖2所示。

  指定FIR濾波器為低通濾波器( Low pass) , 指定采樣頻率為6kH z, 低通頻率為1kH z, 截止頻率為2kHz, 菜單Analysis用來選擇不同的分析顯示方式,如幅度響應、相位響應、脈沖響應、階躍響應、濾波系數等。指定完成設計參數后單擊Overw rite generated   filter b lock, 完成濾波器的設計。

數字濾波器設置對話框

圖2  數字濾波器設置對話框

  4. 2  擴展卡爾曼濾波器的設計

  擴展卡爾曼濾波器是通過內嵌S 函數完成的。

  在RTW 中一般可以直接應用非內嵌C MEX S 函數, 但是在實時情況下對時間要求比較嚴格, 而非內嵌S函數的S imstruct數據結構需要大量的存儲計算資源, 運行時調用S函數需要很大的系統開支, 此時就需利用TLC 技術將S 函數內嵌。TLC 是RTW的一個內部組成部分, 利用它可以自定義從S imulink模型生成的C 代碼, 并為S imulink模型圖生成優化的內嵌程序代碼。通過自定義, 可以將自定義算法和現存的例程結合起來形成一個整體式的程序, 提高代碼質量, 減少代碼體積。

  內嵌S函數的實現是通過生成一個TLC 文件mymode.l t lc完成的。當TLC 在閱讀mymode.l rtw時, 如果發現有S函數block, 并且在TLC 文件的搜索路徑中有相應的TLC 文件, 則S函數被內嵌。

  4. 3  代碼生成

  以上完成了仿真模型各個模塊的建立, 如圖3所示。

 仿真系統圖

圖3  仿真系統圖

  其中, 電壓和電流的C larke Transformation 模塊和C28x To Memory 模塊是C28x DMC Library 和C2800 DSP Core Support中自帶的模型, 在使用時只需要拖入仿真系統即可。

  進入Simulink 的Conf iguration Parameters 對話框, 對Real- T im eW orkshop進行設置完成后, 點擊Bu ild即可生成對應的DSP工程文件, 并且DDSL ink自動打開CCS, 進行編譯調試, 如圖4所示。

CCSL ink自動調試DSP代碼

圖4  CCSL ink自動調試DSP代碼

  由Mat lab自動生成的DSP代碼能夠實現AD轉換、數字濾波及卡爾曼濾波計算, 但是由于程序中使用了很多缺省設置, 在運行中還有一些問題, 如中斷處理程序只對定時器中斷進行處理, 無法用圖形方式觀測變量值等, 需要進一步完善。

  5  試驗結果及分析

  把修改完善后的代碼加載到DSP實驗板上, 對電機的電壓和電流進行采樣, 通過圖5可以驗證濾波器的效果。

電流采樣對比圖

  在利用擴展卡爾曼濾波進行速度估算時, 以異步電機在兩相靜止坐標系下的電流Ia、Iβ、轉子磁鏈Φa、Φβ、以及轉速n 為狀態變量, 進行一系列計算,這樣就可以很方便的觀測到磁鏈圓如圖6( a)和估算的速度曲線如圖6( b)。在計算過程中, 由于采樣噪聲、系統噪聲、電機參數隨溫度變化等原因, 造成估算值在一定范圍內浮動, 但是基本穩定。

轉子磁鏈和轉速試驗結果

  通過EKF完成了異步電機的速度在線辨識, 為以后建立異步電機無速度傳感器矢量控制系統奠定了基礎。

  6  結束語

  試驗證明, 應用Matlab對DSP進行實時調試和代碼生成, 有效地改變了傳統的設計方法。用M atlab快速建立T IDSP模型及直接生成C 語言程序的方法, 簡化了DSP 軟件的開發。在Embeddedtarget for TI C2000 工具箱中還包含其他工具, 如PWM 控制、CAN 總線控制及通用I /O 控制等。利用這些工具與Simu link中的其他工具相結合, 能夠完成復雜功能的DSP程序設計, 并且只需要進行少量修改, 就可以實現功能正確的C 語言程序設計,大大提高了程序開發效率。

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 欧美成人极品怡红院tv | 天堂一区二区在线观看 | www.日本高清 | 久草热草| 韩国免费一级成人毛片 | 亚洲精品自拍视频 | 欧美人在线一区二区三区 | 国产一区二区精品久久91 | 欧美大片欧美毛片大片 | 精品一区二区三区的国产在线观看 | 免费特黄一级欧美大片在线看 | 日韩大片高清播放器大全 | 国产成人高清一区二区私人 | 欧美性三级 | 久久久久久青草大香综合精品 | 久久99精品视频 | 国产午夜在线观看视频播放 | 特黄日韩免费一区二区三区 | 男女国产视频 | 日本亲子乱子伦视频 | 国产综合在线播放 | 久久久久久久久久久久久久久久久 | 欧美一级专区免费大片俄罗斯 | 成年人精品视频 | 国产一级做a爰片久久毛片男 | 特级片在线观看 | 99re6热视频精品免费观看 | 国产人成午夜免视频网站 | 久草资源在线视频 | 国产国产人免费人成成免视频 | 久久视频免费观看 | 国产成人亚洲精品久久 | 日本乱人伦片中文字幕三区 | 久草在线影 | 精品成人一区二区三区免费视频 | 400部大量精品情侣网站 | 久草中文在线观看 | 日本美女一区二区三区 | 女同日韩互慰互摸在线观看 | 综合亚洲精品一区二区三区 | 草草视频在线免费观看 |