新聞中心

        EEPW首頁 > 電源與新能源 > 設計應用 > 一種基于ARM 單片機與CPLD的數字軸角轉換方法

        一種基于ARM 單片機與CPLD的數字軸角轉換方法

        作者: 時間:2013-09-15 來源:網絡 收藏
        的頻率為20kHz,占空比在10%~90%范圍內調節.

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

        為了使輸出信號平滑連續,在全橋電路輸出后需接LC選頻電路.通過配置LC電路的電感和電容值,可達到增強基波分量.抑制諧波分量.改進輸出精度的作用.基波頻率為50Hz,根據要求及相關實驗,可知取電感L=700μH,電容C = 25 μF, 截止頻率為:

        一種基于ARM 單片機與CPLD的數字軸角轉換方法

        此時可取得較好輸出效果.3 軟件設計

        系統主要分為軸角粗精角度分離取整.占空比計算以及PWM 信號生成三部分.系統工作流程如圖3所示.

        3.1 軸角粗精分離設粗精同步機系統表示的軸角為θ,根據粗精傳動比例k將其分為精確同步機軸角度θ精和概略同步機軸角度θ粗,這一過程稱為軸角粗精角度分離.實際中,概略同步機軸角度θ粗=θ,精同步機的軸角度計算公式為:

        3.2 查表法計算占空比根據公式(1),以正弦調制波為例,其輸出式子為:

        URS = KRUmsinωtsinθ,PWM 波形頻率為f1 =20kHz,DSC角度更新速率為f2 =50Hz,因此在每個調制波周期內有N1 =f1/f2=400個PWM信號.采用時鐘計數.采用時鐘計數方法產生不同占空比的PWM 信號,由于的時鐘頻率為f3 =32.768 MHz,因此產生20kHz的PWM 信號時,最大計數值為N2 =f3/f1=1638,以中間數值為零值點,即為Z0 =819.

        為了減小計算量及加快反應速度,需建立sinωt 值對應占空比的表格,表中

        間正整數.同時,將sinθ值存于另一表,表中

        間正整數,表示0~6000mil間的正弦值對應的占空比值,在粗精分離后,將粗精角度取整后即可通過查此表得到對應θ的正弦值.

        由以上兩表值,可得調制波URS的對應占空比計算公式為;

        3.3 PWM 信號生成

        STM32F4通過總線方式向CPLD發送占空比及選通通道信息,其總線寫操作時序如圖4所示.

        根據寫時序,在整個寫時序中,地址信號常有效,數據信號出現在R/W#信號拉低后,因此可用此信號作為CPLD程序中時鐘計數開始標志位,通過對地址譯碼,進行通道選擇.

        在QuartusⅡ中利用VHDL語言編寫CPLD程序,在R/W#的下降沿讀取地址,在R/W#的上升沿讀取數據,而后進行時鐘脈沖計數以得到對應占空 比的PWM 信號.程序仿真結果如圖5所示,由圖中可以看出,對應不同地址和占空比,不同通道輸出相應的PWM 信號 .

        4 誤差分析及測試

        4.1 響應實時性分析

        PWM 信號頻率為20kHz,步長為50μs,因此,系統響應總時延必須遠小于50μs.系統總時延主要包括三個部分:

        MCU內部運算時延.總線數據發送時延以及CPLD邏輯電路產生PWM 信號時延.全橋電路中MOS管開斷時延非常小,基本可忽略,此處不予考慮.

        圖6 (a)為STM32F4做20萬次乘法運算所用時間,經測算時間



        關鍵詞: ARM 單片機 CPLD

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 高青县| 宝坻区| 宁城县| 汤阴县| 新野县| 中宁县| 卓资县| 同江市| 茂名市| 叶城县| 双柏县| 石楼县| 张家港市| 营山县| 色达县| 澄迈县| 永新县| 翁牛特旗| 沽源县| 会东县| 武功县| 政和县| 呼伦贝尔市| 绿春县| 钦州市| 乌拉特中旗| 宁城县| 巴东县| 吴忠市| 武乡县| 舞阳县| 类乌齐县| 宁化县| 华宁县| 临西县| 四子王旗| 安乡县| 天柱县| 阿坝县| 邻水| 三门峡市|