《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 可編程邏輯 > 設(shè)計(jì)應(yīng)用 > 基于FPGA的擺臂伺服控制系統(tǒng)設(shè)計(jì)
基于FPGA的擺臂伺服控制系統(tǒng)設(shè)計(jì)
來源:電子技術(shù)應(yīng)用2013年第11期
周麗莞1,, 周永鵬2
1. 武漢華中數(shù)控股份有限公司, 湖北 武漢 430223,; 2. 華中科技大學(xué), 湖北 武漢430074
摘要: 擺臂伺服控制系統(tǒng)是大氣紅外干涉儀的重要組成部分,,在分析干涉儀工作原理和伺服控制需求的基礎(chǔ)上,,給出了一種采用FPGA實(shí)現(xiàn)伺服控制、結(jié)合典型H型直流PWM電路,,構(gòu)成數(shù)字化擺臂伺服控制系統(tǒng)的設(shè)計(jì)方法,,仿真與實(shí)驗(yàn)結(jié)果驗(yàn)證了設(shè)計(jì)的正確性。
中圖分類號: TP273
文獻(xiàn)標(biāo)識碼:
文章編號: 0258-7998(2013)11-0078-03
Design of swinging arm servo control system based on FPGA
Zhou Liwan1, Zhou Yongpeng2
1. Wuhan Huazhong Numerical Control Co., Ltd.,,Wuhan 430223 China; 2. Huazhong University of Science and Technology, Wuhan 430074, China
Abstract: Swinging arm servo control system is a key component of the atmospheric infrared interferometer. In this paper, the working principle of that interferometer and the design requirements for the servo control are analyzed. Then, a digital servo control system is designed and constructed, which is composed of FPGA and typical H-DC PWM circuit. In addition, simulation and experimental results are provided to evaluate the performance of the design scheme.
Key words : FPGA; voice coil motor; servo control

    基于邁克遜干涉原理的紅外光譜儀可利用太陽光穿過待測大氣的入射光進(jìn)行光譜分析獲得大氣的物質(zhì)成分信息,,它主要由擺臂干涉儀、光電檢測和光干涉圖像數(shù)據(jù)采集處理幾部分組成,,如圖1所示,。

    基本工作原理為當(dāng)單色光入射至反射率和透射率各為50%的分束器上時,會形成兩束等強(qiáng)度的反射和透射光束,。這兩路光束各自通過反射鏡(角鏡,、動鏡)和固定的端鏡重新返回到分束鏡處,產(chǎn)生光干涉,,兩光束峰峰同相位時光強(qiáng)增加,、反相位時抵消。當(dāng)動鏡運(yùn)動時,,引起光通過的光程變化,,使最終形成的光干涉強(qiáng)度呈余弦變化,干涉強(qiáng)度為光程差的函數(shù),。對復(fù)合光的干涉圖進(jìn)行傅里葉逆變換即可獲得反映物質(zhì)成分的各單色光的光譜信息[1],。圖1中,入射光1以45°角射入分束器,,透射光2經(jīng)角鏡反射沿3-4-5-6-7-8-9返回分束器,;反射光9經(jīng)8-7-6-5-4-3-2返回,與透射返回光形成干涉后從10輸出,。與此同時,,作為基準(zhǔn)信號的激光也沿同光路形成干涉圖樣,利用激光探測器處理后可獲得以光程差為周期的脈沖電信號,,它的頻率變化與干涉儀光程差速度變化對應(yīng),,可將其作為實(shí)時的光程差速度反饋信號和擺臂轉(zhuǎn)角位置反饋信號,同時還被用作太陽紅外干涉圖模數(shù)采樣的觸發(fā)信號,,實(shí)現(xiàn)等光程差采樣,,以保證采集光譜的穩(wěn)定性。在光程差已知的情況下,,通過采集光源在某些點(diǎn)產(chǎn)生的干涉波形(光強(qiáng)弱變化規(guī)律)推斷出哪種波長的光線被大氣層吸收,,就可以推斷出大氣層中化學(xué)物質(zhì)的種類和含量,。
    本文系統(tǒng)擺臂采用音圈電機(jī)[2]驅(qū)動,主要控制技術(shù)要求為:擺動角度±10°,、光程差速度25.2 cm/s;調(diào)頭時間75 ms,;光程差速度穩(wěn)定性為99%。
    擺臂伺服分系統(tǒng)在整個系統(tǒng)中的作用為:根據(jù)系統(tǒng)分析光譜分辨率的要求,,控制擺臂機(jī)械部分在一定的角度循環(huán)擺動,。擺動過程中,采集激光系統(tǒng)反饋的電信號,,經(jīng)過對電信號的信息處理,,形成反饋信息,控制音圈電機(jī)帶動擺臂轉(zhuǎn)動,,在規(guī)定范圍內(nèi)實(shí)現(xiàn)使光學(xué)系統(tǒng)光路以一定的速度勻速變化;同時實(shí)現(xiàn)相關(guān)分系統(tǒng)工作狀態(tài)的監(jiān)控功能,,顯示各系統(tǒng)的工作狀態(tài),。
    由采樣定律和光譜分辨率可知,要想獲得優(yōu)質(zhì)的干涉圖樣,必需保證系統(tǒng)的采樣間隔不大于1 ?滋m且采樣點(diǎn)不少于30萬個,。在如此大量數(shù)據(jù)采集情況下,,干涉圖極易受諸多因素干擾,故其對擺臂分系統(tǒng)的運(yùn)動速度控制精度,、位移控制精度都有嚴(yán)苛的要求,。另外,擺臂系統(tǒng)還受到空間的限制,。擺臂必需在一定范圍內(nèi)完成循環(huán)擺動,,若超出最大行程則極易損壞光學(xué)器件,使整個系統(tǒng)報廢,。在滿足系統(tǒng)空間限制的情況下,,擺臂系統(tǒng)還必需保證一定的采樣時長,這就要求擺臂系統(tǒng)在有限空間內(nèi)做往返運(yùn)動時的調(diào)頭要快速,、穩(wěn)定,。


    在FPGA中,對位置指令作簡單的乘法運(yùn)算即可,。系數(shù)K一般以浮點(diǎn)的形式出現(xiàn),,例如本文輸入到速度環(huán)的前饋系數(shù)為K=1.35,運(yùn)算時需考慮小數(shù)部分的取舍問題。本設(shè)計(jì)中采用的寄存器位數(shù)足夠高,,實(shí)現(xiàn)時將乘法模塊中小數(shù)部分做移位化整進(jìn)行運(yùn)算,,然后根據(jù)小數(shù)的位數(shù)舍掉相應(yīng)的位數(shù),再在高位補(bǔ)零,。值得注意的是,,由于對原指令做乘法運(yùn)算,,故一定要擴(kuò)充存放前饋處理后指令數(shù)寄存器位數(shù),否則會產(chǎn)生溢出危險,。
    按照上面的功能要求和實(shí)現(xiàn)方法,,運(yùn)用Verilog HDL程序加以實(shí)現(xiàn),其時序仿真如圖3所示,。其中data為模擬的位置指令,,k為前饋比例系數(shù),dataout為前饋模塊輸出,。       

               
2.2 位置調(diào)節(jié)器模塊
    位置調(diào)節(jié)器模塊是將位置指令與位置反饋進(jìn)行比較,,取其差值,按預(yù)定算法運(yùn)算后為系統(tǒng)提供位置調(diào)節(jié)輸出,,需要該模塊含有偏差計(jì)算功能和比例運(yùn)算功能,。離散化后遞推公式為:
  u(k)=Kp[θr(k)-θ(k)]=Kpe(k)             (7)
       采用FPGA實(shí)現(xiàn)時將反饋量與給定量轉(zhuǎn)換為補(bǔ)碼形式參與運(yùn)算。根據(jù)二進(jìn)制數(shù)的運(yùn)算規(guī)則可知,,兩數(shù)的減法運(yùn)算可方便地由加法電路來處理,。為方便系統(tǒng)對反饋量的正負(fù)加以區(qū)分,設(shè)計(jì)中制定一位標(biāo)志位用以區(qū)分反饋方向是否與指令給定方向一致,,當(dāng)反饋量相對于給定量為正時(電機(jī)運(yùn)動方向與期望方向一致),,標(biāo)志位置為0;當(dāng)反饋量相對于給定量為負(fù)時(電機(jī)運(yùn)動方向與期望方向相反),,標(biāo)志位置為1,。標(biāo)志位為0時表明位置偏差為反饋量減給定量,反饋量做取反加一運(yùn)算后參與加法計(jì)算,;標(biāo)志位為1時表明位置偏差為給定量加反饋量,,反饋量直接參與加法計(jì)算即可。在模塊中設(shè)置兩個寄存器分別存儲給定值和反饋值的補(bǔ)碼形式,。對這兩個寄存器值做加法運(yùn)算后即得所需偏差值,。為方便后續(xù)運(yùn)算,設(shè)計(jì)中將偏差寄存器擴(kuò)充一位作為符號標(biāo)志位,,當(dāng)偏差值小于0時,,將偏差寄存器最高位置1,反之置0,。偏差值與Kp相乘即得位置調(diào)節(jié)器模塊輸出,。
    該模塊運(yùn)用Verilog HDL程序加以實(shí)現(xiàn),取Kp=150得到的時序仿真如圖4所示。

      一般采用的增量式控制算法雖然可以減少運(yùn)算量,,加快FPGA處理速度,,但其也存在一些缺陷。當(dāng)系統(tǒng)在啟動,、停止或大幅度增減設(shè)定值時,,短時間內(nèi)系統(tǒng)存在的大偏差會造成PI調(diào)節(jié)器的積分積累,致使算得的控制量超過執(zhí)行機(jī)構(gòu)可能最大動作范圍的極限控制量,,最終引起系統(tǒng)超調(diào),甚至引起系統(tǒng)振蕩,。本文采用積分分離算法來解決這一問題,。實(shí)現(xiàn)方法是在積分累加器中設(shè)定一個限幅值,當(dāng)積分累加器中的值超過此值時,,調(diào)節(jié)器將積分功能屏蔽變?yōu)镻調(diào)節(jié)器,,并將累加器中的值清零,此時系統(tǒng)的輸出只與當(dāng)前時刻輸入有關(guān)而與系統(tǒng)前期狀態(tài)無關(guān),,這樣可使系統(tǒng)狀態(tài)突變(如換向運(yùn)行)時快速響應(yīng),,避免系統(tǒng)偏差累計(jì)引起振蕩。當(dāng)累加器中的值小于限幅值時,,調(diào)節(jié)器為PI調(diào)節(jié)器,。圖5為帶限幅值的PI速度調(diào)節(jié)器時序仿真圖,其中設(shè)計(jì)取a=0.309,,b=0.009,,限幅值為512。
    從圖5可見,模塊在clk1上升沿動作,,當(dāng)偏差值preg沒有超過給定限幅值時,addreg對偏差值做累和運(yùn)算,,data為模塊比例環(huán)節(jié)輸出,,dout2為模塊比例積分調(diào)節(jié)數(shù)。系統(tǒng)速度環(huán)使用PI調(diào)節(jié)器,。而當(dāng)偏差值大于限幅值時,,addreg清零,此時積分運(yùn)算環(huán)節(jié)關(guān)閉,。當(dāng)下一時鐘上升沿來臨時計(jì)算此時偏差值,,若沒超過限幅值積分環(huán)節(jié)重新參與運(yùn)算。dout2最高位為符號位,,0表示輸出數(shù)為正數(shù),,1表示輸出數(shù)為負(fù)數(shù),如圖中10045表示速度調(diào)節(jié)環(huán)調(diào)節(jié)指令數(shù)為-45,。電流調(diào)節(jié)器設(shè)計(jì)完全相同,,參數(shù)按典型1型系統(tǒng)設(shè)計(jì)[4]選取,不再重述,。

3 實(shí)驗(yàn)結(jié)果與結(jié)論
    本文設(shè)計(jì)的圖2所示控制系統(tǒng)采用16 V直流電源通過H橋?qū)σ羧﹄姍C(jī)供電,,H橋所用場效應(yīng)管型號為IRF510;電機(jī)為BEI公司的RA-10-002A,;FPGA型號為EP2C8Q208C8N,。利用FPGA構(gòu)造位置,、速度、電流調(diào)節(jié)器與相應(yīng)反饋處理電路形成3閉環(huán)加前饋控制,,輸出PWM信號通過電平轉(zhuǎn)換完成驅(qū)動,調(diào)制頻率為40 kHz,,電流采用霍爾取樣[5]。

 


     實(shí)驗(yàn)獲得的擺臂在±10°左右范圍內(nèi)周期擺動過程中對給定的25.2 cm/s光程差速度的跟蹤特性如圖6所示,。由于速度采用PI調(diào)節(jié),,在快速調(diào)頭的起動、制動到達(dá)指定速度時均存在一定超調(diào),,幸而系統(tǒng)在此加減速階段的數(shù)據(jù)是視為無效的,,本系統(tǒng)允許的調(diào)頭無效數(shù)據(jù)時間為75 ms,實(shí)驗(yàn)結(jié)果的調(diào)頭波形到達(dá)目標(biāo)軌跡的時間小于66 ms,,平均調(diào)頭時間為65.1 ms,。在整個穩(wěn)定擺動區(qū)間,隨擺角變化,,音圈電機(jī)角速度的變化規(guī)律與式(4)描述的相一致,,電機(jī)角速度絕對值最小為0.234 55 rad/s(擺臂擺動中心位置,對應(yīng)電流過0位置附近)和0.237 15 rad/s(最大擺角處,、調(diào)頭前瞬間,、如圖中0.6 s附近位置)。音圈電機(jī)的電流如圖6(a)所示,,其中每伏對應(yīng)電流0.8 A,。由圖可見,為了克服擺臂的彈性扭矩,,電流隨擺角線性增大,,調(diào)頭時,較大的反向電流促使擺臂迅速減速調(diào)頭反向,,完成調(diào)頭后,,線性增長的電流平衡彈性扭力,保證擺臂穩(wěn)定運(yùn)行,。擺臂分系統(tǒng)的擺動運(yùn)行周期約為2.5 s,。實(shí)驗(yàn)采集獲得的速度數(shù)據(jù)分析表明,在有效數(shù)據(jù)區(qū)域,,雖然光程差速度的離散值在不停地變化,,但其速度波動范圍始終保持在0.7%范圍,滿足99%的性能指標(biāo)要求,。

    實(shí)驗(yàn)結(jié)果表明,,這種采用FPGA設(shè)計(jì)的伺服系統(tǒng)達(dá)到了預(yù)期的設(shè)計(jì)目標(biāo)。對于調(diào)頭過程中存在的超調(diào),,還可以進(jìn)一步通過調(diào)節(jié)器控制策略的改進(jìn)獲得改善,。
參考文獻(xiàn)
[1] 竇秀明,,代作曉,華建文,等. 音圈電機(jī)驅(qū)動光譜儀動鏡的數(shù)字控制[J].科學(xué)技術(shù)與工程,2007,,7(17):4292-4295.
[2] 張大衛(wèi),,馮曉梅.音圈電機(jī)的技術(shù)原理[J].中北大學(xué)學(xué)報(自然科學(xué)版),2006,27(3):224-228.
[3] 曾慶立,陳炳全.全數(shù)字直流電機(jī)PID控制器的FPGA實(shí)現(xiàn)[J].機(jī)電產(chǎn)品開發(fā)與創(chuàng)新,,2008,,21(1):145-146.
[4] 楊耕,羅應(yīng)立,等.電機(jī)與運(yùn)動控制系統(tǒng)[M].北京:清華大學(xué)出版社, 2006:128-160.
[5] 王離九.電力拖動自動控制系統(tǒng)[M].武漢:華中理工大學(xué)出版社, 1991:95-112.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載,。