新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于NiosⅡ的直流電機PID調速控制系統

        基于NiosⅡ的直流電機PID調速控制系統

        作者: 時間:2010-11-01 來源:網絡 收藏

        圖2中:clk為時鐘信號端;sta用來控制直流電機正反轉;conword為占空比信號;PWM_A表示直流電機處于正轉狀態時的占空比輸出;PWM_B表示直流電機處于反轉時的占空比輸出。
        PWM模塊的原理如下:將時鐘源50 MHz的基頻信號64分頻,作為PWM模塊的基頻信號,以256個該基頻脈沖信號作為PWM輸出的一個周期,由NiosⅡ處理器給出的conword的值指定一個PWM周期內高電平持續時間,改變conword的值即刻改變占空比輸出的值。
        1.3 測速模塊
        系統中的測速模塊生成方式如PWM模塊,它在整個系統中的作用如下:主要是利用基頻的周期來計算光柵信號的周期,算出直流電機的轉速,其生成的模塊如圖3所示。
        圖3中:clk為時鐘信號端;en為使能信號,即表示光柵有效;dout表示光櫥有效時間。
        測速模塊的原理如下:給出已知頻率的基頻,用光柵作為門限,測基頻脈沖的個數,由基頻的周期來計算光柵信號的周期,再算出轉速,電機控制算法即根據測速模塊測出的速度進行算法調整,達到閉環控制的效果。

        2 系統軟件設計
        本次設計的軟件主要分為兩部分:
        (1)利用QuartusⅡ7.2完成NiosⅡ系統的構建:利用SOPC Builder構建NiosⅡCPU;使用VHDL編寫各控制模塊。
        (2)利用NiosⅡIDE完成系統控制與控制算法編寫,主要使用C語言進行控制與算法編寫;對直流電機進行成功控制后,在NiosⅡIDE上采集輸出轉速的實測數據,將其導入Matlab畫出控制效果圖,整體軟件框圖如圖4所示。

        本文引用地址:http://www.104case.com/article/151391.htm


        本次設計使用SOPC Builder組建的NiosⅡ嵌入式系統,如圖5所示。該系統除了配置NiosⅡ最小系統的CPU核NiosII CPU,Avalon總線,使用FPGA資源例化的存儲器之外,還有以下外接設備的控制單元:
        (1)SDRAM Controller;
        (2)Common Flash Interface;
        (3)JTAG UART;
        (4)鎖相環PLL;
        (5)Interval Timer;
        (6)通用I/O接口,包括PWM模塊接口conw,msta和測速模塊接口speed,按鈕接口button。
        對于SOPC Builder組建的NiosⅡ系統,可以在QuartusⅡ軟件方便地調用,在QuartusⅡ中Block Diagram設計調用NiosⅡ系統的框圖如圖6所示。給該系統配備工作時鐘,并分配FPGA的I/O管腳,程序經綜合,布局,仿真之后,就可將配置文件通過各種配置方法下載到FPGA上。本文使用JTAG+AS方式配置,通過USB Blaster下載電纜線將計算機USB接口與FPGA的JTAG口相連,把配置文件從計算機下載到FPGA中,這樣就完成了系統的軟件設計。



        關鍵詞: 功率模塊

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 冀州市| 长治市| 五常市| 金溪县| 诸暨市| 大丰市| 紫阳县| 新晃| 高安市| 广汉市| 精河县| 丰镇市| 祁门县| 德保县| 筠连县| 罗甸县| 平利县| 曲靖市| 潮安县| 宝鸡市| 自贡市| 淄博市| 磐安县| 定兴县| 太白县| 班戈县| 雅安市| 定远县| 云南省| 宣威市| 海安县| 长顺县| 富阳市| 桃园市| 乐昌市| 若尔盖县| 屏东县| 望奎县| 禹州市| 扎囊县| 怀安县|