新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于VisSim/ECD的直流電機控制系統設計

        基于VisSim/ECD的直流電機控制系統設計

        ——
        作者:電子科技大學 謝文濤,童玲,王毅 時間:2007-01-26 來源:《單片機與嵌入式系統應用》 收藏

        ti c2000系列dsp是用于電機控制的專用芯片,對于此類芯片控制算法的設計開發,往往需要花費大量的時間和精力在代碼的編寫和后期的調試上,而vissim/ecd的出現大大縮短了控制器的開發周期。vissim/ecd強大的仿真引擎和豐富的模型庫,為dsp控制系統的設計帶來了極大的便利。

        1 vissim/ecd簡介

        vissim/ecd(vissim/embedded controls developer)是一套集成型軟件,可快速完成ti公司生產的ti c2000系列的dsp控制系統原型機的開發測試工作,可為控制算法及指定的片內外設生成標準ansic定點代碼,并進行仿真;支持tif243,lf2407,f2808,f2812以及msp430微控制器的評估板(evms/ezdsps)。

        vissim/ecd提供特定的目標模塊來生成片上設備的代碼。這些模塊包括模擬與數字輸入、簡易pwm輸出、事件捕捉、i/o端口的讀寫、正交編碼器輸入、六通道帶死區的矢量pwm輸出及can2.0總線等。

        vissim/ecd可將控制算法自動生成高質量的定點代碼并編譯鏈接成.out文件,通過jtag接口下載到目標dsp中,目標dsp和vissim/ecd之間的實時通信是通過jtag接口來實現的,當改變控制器增益和顯示dsp控制器圖形響應時,vissim/ecd的用戶圖形界面將被保留。

        2 直流電機閉環控制系統的設計

        2.1 控制系統結構

        完整的控制系統結構如圖1所示,該系統的控制變量是塑料板旋轉的角度,塑料板是通過一個可旋轉的軸固定在一個箱體上,其角度的變化是依據電機轉速的改變帶動氣流來控制的,dsp控制器在vissim/ecd開發環境中設計完成,輸出脈寬可調的電壓給晶體管驅動電路,從而控制電機的電樞電壓達到預定的控制效果,編碼器作為角度傳感器將實際的角度信號反饋到dsp控制器,預期角度可在vissim/ecd中實時設定,并通過vissim/ecd的plot窗口實時查看輸出波形。

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

        2.2 dsp控制器的設計
        2.2.1 直流電機的控制原理
        根據電機學的相關知識,可以得到電動機轉速的表達式:

        式中:ua為電樞電壓,ia為電樞電流,ra為電樞電路總電阻,la為電樞電路總電感,ke為感應電動勢計算常數,φ為每極磁通,n為電動機轉速。

        由(1)式可知,在保持勵磁磁通不變的情況下,通過調整電樞電壓可以實現對電機的調速,因此使用脈寬調制(pwm)控制電動機的電樞電壓,實現調速。

        2.2.2 模擬pi控制算法

        在電動機的閉環控制系統中,速度調節一般采用pi算法,即比例積分調節方法。其時域的表達式為:

        式中:kp為比例增益,ki為積分增益,e(t)為給定值與實際輸出值構成的控制偏差。通過拉普拉斯變換,可以得到相應的傳遞函數:


        因為tms320lf2407是定點dsp,因此必須將該算法離散化,這就需要用到vissim/fixed point模塊。

        2.2.3 定點dsp的q格式表示方法及vissim/fixed point模塊

        如果一個16位數被規格化為qk格式,則其一般表達式為:


        從表達式不難看出,不同的q所表示的數不盡范圍不同,而且精度也不相同,q越大,數值范圍越小,精度越高,相反,q越小,數值范圍越大,精度就越低。

        在vissim/fixed point模型庫中的模塊都是通過這種q格式來表示不同范圍和精度的小數的。它設定了兩個數字,前一個數表示二進制小數點的位置,后一個數表示字長(對于本文所用的dsp,此處為16),q值為后面的數減去前面的數。(詳見圖2和圖3所示的模塊)

        在仿真過程中若出現溢出現象,則此類定點模塊能夠自動調節小數點的位置,以確保獲得最大的動態顯示范圍,并以高亮度顯示溢出警示。

        2.2.4 基于vissim/ecd的定點pi控制算法設計

        根據公式(3)設計的定點pi控制算法如圖2所示,圖中比例增益和積分增益均為局部變量。convert是數據類型轉換模塊,將浮點數轉換為定點模塊能夠接收的scaled int數據類型。定點積分模塊和限制模塊是層次結構模塊。定點積分模塊為離散化的1/s,其展開如圖3所示,限制模塊是用來限制輸出的上下限的,保證pwm占空比在大于0的q15范圍內(tipwm的接口模塊為q15格式)。


        2.3 增量式編碼器原理及接口電路設計

        2.3.1 增量式編碼器與dsp的連接

        tms320lf2407a dsp提供了增量式編碼器的接口電路,用定時器2作為可逆計數器計算編碼脈沖的個數。編碼脈沖通過2個引腳qep1/cap1和qep2/cap2輸入到芯片內部。因為這兩個引腳是捕捉單元1、2復用引腳,所以這里要禁用其捕捉功能。考慮到選用的tms320lf2407 evm板給編碼器輸出引腳已經提供了上拉電阻,故選擇集電極開路輸出方式的兩相編碼器即可(因為測量角度范圍在360°以內,所以無需零位脈沖引腳)。這里選用的是測量精度為360ppr(每轉輸出脈沖數)的小型增量式光電編碼器。

        當引腳qep1輸入的編碼脈沖超前qep2引腳輸入的編碼脈沖90°相位時,定時器2增計數;反之,定時器2減計數。另外,編碼器接口電路利用輸入編碼脈沖的4個邊沿加工成4倍頻的計數脈沖信號和計數方向信號,這樣就使編碼器的分辨率提高了4倍,因此該增量式編碼器的角度分辨率為0.25°,完全可以滿足此系統的精度要求。

        2.3.2 vissim/ecd的編碼器接口模塊設置

        前面提到的vissim/ecd可提供特定的目標模塊來生成片上設備的代碼。編碼器接口模塊就是其中之一,模塊的連接如圖4所示,圖中編碼器模塊有3個輸出接口。其中t2cnt為定時器2的增減計數的輸出,再通過一個計數值和角度轉換模塊,則可實時地輸出當前塑料板旋轉的角度,并作為反饋信號傳給pi控制器。

        另外,晶體管的飽和狀態和截止狀態使其擁有了開關特性,比較適合做電機的驅動電路,這里選用tip122達靈頓管,基極偏置電阻取500歐姆,電機選取額定電壓為5v,轉速為5400r/min的高速直流電機。
        2.4 生成控制器及接口模塊定點c代碼、編譯、鏈接并仿真
        在vissim/ecd操作界面中,將定點pi控制算法模塊、編碼器接口模塊以及t1pwm接口模塊打包生成一個compound block,選擇代碼生成命令創建相應的定點c代碼。然后調用ccs對其編譯并鏈接,生成可下載到dsp中的.out文件,通過spectrumdigital的并口仿真器將執行代碼下載到dsp的ram中進行實物仿真并調試,當各項性能指標符合設計要求后,則可將代碼燒寫至flash中完全dsp的開發工作,仿真結果如圖5所示。

        該系統pi控制器的比例增益和積分增益分別設定為0.4和0.8,圖5中,"×"代替實時設定的角度,"o"代表塑料板實際的角度,其閉環控制效果很好地達到了要求;但由于外界的干擾因數以及塑料板所在軸和箱體之間的摩擦力,會導致系統短時間的輕微振蕩和精度的缺失。

        結語

        由直流電機閉環控制系統的設計可看出,在vissim/ecd環境中運用模塊的搭建及少量參數的設定就能開發出功能完整的dsp控制系統原型機,并完成相關的測試工作,這樣可以縮短系統的開發周期,贏得寶貴的時間。



        關鍵詞:

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 东乡| 靖江市| 申扎县| 砀山县| 攀枝花市| 仪征市| 合水县| 崇明县| 钦州市| 乌鲁木齐市| 靖西县| 临桂县| 腾冲县| 汉阴县| 聂拉木县| 灵丘县| 屏东县| 刚察县| 广州市| 清丰县| 额济纳旗| 台东县| 喜德县| 长兴县| 洛宁县| 化隆| 太康县| 陵水| 宜宾县| 嫩江县| 广安市| 尼勒克县| 潼关县| 吴桥县| 合川市| 久治县| 准格尔旗| 开化县| 定南县| 聊城市| 资中县|