《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 可編程邏輯 > 業(yè)界動(dòng)態(tài) > 基于USB2.0總線的新型舵機(jī)控制器的設(shè)計(jì)與實(shí)現(xiàn)

基于USB2.0總線的新型舵機(jī)控制器的設(shè)計(jì)與實(shí)現(xiàn)

2008-04-11
作者:侯偉波1, 盛 英1, 林曉春2

  摘 要: 設(shè)計(jì)了一種基于CPU+FPGA的新型舵機(jī)控制器。該控制器考慮了諧波傳動(dòng)的隨速度波動(dòng)和低阻尼特點(diǎn),以提高舵機(jī)系統(tǒng)控制品質(zhì)為目標(biāo),采用增量式分段PID算法產(chǎn)生PWM信號(hào),對(duì)舵機(jī)隨動(dòng)系統(tǒng)進(jìn)行實(shí)時(shí)精準(zhǔn)控制,并通過USB2.0總線接口實(shí)現(xiàn)了微型計(jì)算機(jī)與CPU之間的實(shí)時(shí)變量傳送,方便了程序的調(diào)試。測試結(jié)果表明,該控制系統(tǒng)具有抗干擾性能好、控制品質(zhì)優(yōu)等特點(diǎn)。
  關(guān)鍵詞: 舵機(jī)控制器 PID算法 調(diào)寬斬波輸出 USB2.0


  舵機(jī)是控制飛行器運(yùn)動(dòng)方向的關(guān)鍵部件。隨著航空航天事業(yè)的高速發(fā)展,提高舵機(jī)伺服系統(tǒng)的性能成為當(dāng)前的迫切需要。為此,設(shè)計(jì)者在考慮到諧波傳動(dòng)的隨速度波動(dòng)和低阻尼特點(diǎn)的基礎(chǔ)上,以提高舵機(jī)系統(tǒng)控制品質(zhì)為目標(biāo),提出了一種新型舵機(jī)控制系統(tǒng)。該硬件系統(tǒng)以CYPRESS公司的CY7C68013處理器為核心,結(jié)合使用現(xiàn)場可編程門陣列(FPGA)和高性能的模/數(shù)轉(zhuǎn)換器(ADC),并通過USB2.0總線接口實(shí)現(xiàn)了PC機(jī)與CY7C68013處理器之間的參數(shù)傳送。
  由于舵機(jī)系統(tǒng)對(duì)定位精度、頻率響應(yīng)特性、階躍響應(yīng)特性和震蕩次數(shù)等因素有著非常高的要求,因此其測試數(shù)據(jù)、分析曲線和指示結(jié)果是分析、判定系統(tǒng)性能和工作狀態(tài)的重要依據(jù)和手段。本文所涉及的控制器具有USB2.0總線接口,它負(fù)責(zé)與PC機(jī)通信,這使得控制器在運(yùn)行中產(chǎn)生的各種參數(shù)和變量能夠?qū)崟r(shí)地傳送并在CRT上顯示,極大地方便了對(duì)參數(shù)變化趨勢(shì)的觀察和控制過程的判斷分析,為加快參數(shù)的整定奠定了基礎(chǔ)。
1 系統(tǒng)的構(gòu)成與工作原理
1.1 系統(tǒng)的構(gòu)成
  如圖1所示,系統(tǒng)由主控板卡、電機(jī)驅(qū)動(dòng)" title="電機(jī)驅(qū)動(dòng)">電機(jī)驅(qū)動(dòng)板卡、微型計(jì)算機(jī)以及包括力矩伺服電機(jī)、諧波減速器及其位置電位計(jì)的舵機(jī)組成。其中,主控板卡為該系統(tǒng)的核心組成部分,運(yùn)算處理器采用CYPRESS公司的CY7C68013芯片。


1.2 系統(tǒng)的工作原理
  本系統(tǒng)由上位微機(jī)發(fā)送控制指令,經(jīng)由USB2.0總線傳送至主控板卡。主控板卡將采集到的舵機(jī)實(shí)時(shí)位置數(shù)據(jù)與上位機(jī)" title="上位機(jī)">上位機(jī)傳來的位置指令數(shù)據(jù)代入到增量式分段離散PID控制算法" title="控制算法">控制算法中進(jìn)行運(yùn)算。處理后得到的PWM調(diào)制波形作為電機(jī)驅(qū)動(dòng)板卡的輸入信號(hào),通過電機(jī)驅(qū)動(dòng)板卡上的H橋電路對(duì)電機(jī)進(jìn)行驅(qū)動(dòng),進(jìn)而完成對(duì)電機(jī)的控制。另外,主控板卡還將舵機(jī)運(yùn)行狀態(tài)數(shù)據(jù)經(jīng)由USB2.0總線上行傳送至上位微機(jī),由PC機(jī)測控應(yīng)用程序" title="應(yīng)用程序">應(yīng)用程序對(duì)其進(jìn)行后期分析處理。
2 系統(tǒng)的硬件電路描述
2.1主控板卡部分
2.1.1主控板卡的構(gòu)成

  在整個(gè)硬件系統(tǒng)中,主控板是核心的部分。該板卡的原理框圖如圖2所示。此板卡的主控芯片為CY7C68013處理器,其內(nèi)部嵌有USB2.0總線控制器,用戶可通過USB串行總線與計(jì)算機(jī)進(jìn)行高速實(shí)時(shí)通信。FPGA采用的是ALTERA公司的EP1C3T144C8,由Flash 存儲(chǔ)器EPCS1對(duì)其進(jìn)行上電初始化配置。主控板卡的舵機(jī)位置反饋給A/D轉(zhuǎn)換電路,這里采用的是ADI公司的AD9241模/數(shù)轉(zhuǎn)換器及與其匹配的電壓基準(zhǔn)源REF192,對(duì)反饋的舵偏角度模擬信號(hào)進(jìn)行數(shù)字轉(zhuǎn)換。在舵機(jī)電位器產(chǎn)生的表征角度值的反饋電壓信號(hào)送至ADC以前,為了排除高頻干擾,加入了一個(gè)以O(shè)P77運(yùn)算放大器為核心的二階壓控低通濾波環(huán)節(jié)。


2.1.2 主控板卡的功能
  主控板卡不但承擔(dān)著執(zhí)行來自上位機(jī)的控制指令并將指令執(zhí)行的實(shí)時(shí)狀態(tài)上行送至上位機(jī)的任務(wù),而且還要將經(jīng)過處理器運(yùn)算產(chǎn)生的相應(yīng)占空比" title="占空比">占空比的PWM信號(hào)送至電機(jī)驅(qū)動(dòng)板卡,實(shí)現(xiàn)對(duì)電機(jī)的精準(zhǔn)控制。
  板卡中各部分的具體職能如下:
  (a)CY7C68013接收來自計(jì)算機(jī)的控制命令,并連同實(shí)時(shí)角度反饋數(shù)據(jù)一起代入到增量式分段離散PID算法中運(yùn)算,生成11位占空比數(shù)據(jù)送至FPGA以生成PWM信號(hào);另外,CPU還要將實(shí)時(shí)反饋數(shù)據(jù)值以相應(yīng)的通信協(xié)議送至計(jì)算機(jī),以便上位機(jī)測控應(yīng)用程序做進(jìn)一步處理。
  (b)FPGA內(nèi)部的功能模塊由硬件描述語言Verilog編寫,如圖3所示,主要有四項(xiàng)功能,分別是:
  ·接收CPU發(fā)送來的占空比數(shù)據(jù),通過內(nèi)部的PWM生成模塊產(chǎn)生相應(yīng)的脈寬調(diào)制信號(hào),并輸出到驅(qū)動(dòng)電機(jī)驅(qū)動(dòng)板卡,進(jìn)而拖動(dòng)電機(jī)。
  ·通過時(shí)序狀態(tài)機(jī)為本系統(tǒng)提供主時(shí)鐘,使整個(gè)控制系統(tǒng)以同一步調(diào)協(xié)調(diào)運(yùn)行,這樣就有效地避免了各部分之間的競爭與冒險(xiǎn)。
  ·為ADC傳送來的數(shù)字信號(hào)進(jìn)行均值濾波,減小測量誤差。
  ·指標(biāo)測試模塊將測試結(jié)果輸出到FPGA的相應(yīng)引腳,可由示波器直觀檢測到測試結(jié)果。
  (c)二階壓控濾波模塊通帶截止頻率為1kHz,品質(zhì)因數(shù)Q值為1,可有效地濾除反饋信號(hào)的高頻干擾。
  (d)模/數(shù)轉(zhuǎn)換器AD9241的采樣率為1.25MHz,14位精度,可以滿足系統(tǒng)指標(biāo)的要求,實(shí)時(shí)給FPGA提供精準(zhǔn)的位置反饋信息。


2.2 電機(jī)驅(qū)動(dòng)板卡部分
  該電路采用可逆H型雙極式PWM開關(guān)功率放大器作為主回路驅(qū)動(dòng)電機(jī)。它主要是由大功率晶體管D1047和達(dá)林頓管TIP122組合而成的復(fù)合管,以及續(xù)流二極管1N5408組成的橋式電路。PWM信號(hào)經(jīng)高速光耦隔離器件6N137將信號(hào)隔離,這樣就很好地避免了電機(jī)驅(qū)動(dòng)板卡對(duì)主控板卡的干擾。隔離后的脈寬調(diào)制信號(hào)由三極管3DG6構(gòu)成的放大電路放大,送給末級(jí)電路,控制H橋復(fù)合管的開關(guān)。電機(jī)驅(qū)動(dòng)板卡原理框圖如圖4所示。


3 軟件程序設(shè)計(jì)及其算法描述
3.1 CY7C68013處理器固件主程序設(shè)計(jì)
  CY7C68013的主程序負(fù)責(zé)完成對(duì)CPU的初始化并對(duì)數(shù)據(jù)進(jìn)行相應(yīng)處理。初始化包括對(duì)I/O、寄存器、處理器工作狀態(tài)以及內(nèi)部USB2.0控制模塊等的初始化。在初始化過程完成后,進(jìn)入數(shù)據(jù)處理的運(yùn)算子程序。該子程序具體工作流程如圖5所示。


3.2 CPU與上位機(jī)的通信
  CY7C68013與上位機(jī)的USB2.0串行通信采用批量傳輸模式,一次傳輸包括令牌包、數(shù)據(jù)包和握手包三部分。令牌包與握手包為USB控制器自行生成,數(shù)據(jù)包由用戶指令填充。因此,這里提出形如XX XX XX H的3字節(jié)傳輸通信方案作為USB2.0傳送的數(shù)據(jù)包進(jìn)行發(fā)送。其中,第一字節(jié)為指令標(biāo)識(shí)字節(jié),第二字節(jié)為16位指令目標(biāo)值的高字節(jié),第三字節(jié)為16位指令目標(biāo)值的低字節(jié)。在該系統(tǒng)的硬件板卡和上位微機(jī)的上行和下行通信中,均采用上述通信方案進(jìn)行控制命令的發(fā)送和舵機(jī)工作狀態(tài)的監(jiān)測。
3.3 上位機(jī)測控應(yīng)用程序設(shè)計(jì)
  為便于舵機(jī)的控制和系統(tǒng)指標(biāo)的測試,編制了基于Windows操作系統(tǒng)環(huán)境的底層驅(qū)動(dòng)函數(shù)C++應(yīng)用程序,即測控應(yīng)用程序軟件包。該測控應(yīng)用程序的用戶界面分為實(shí)時(shí)顯示區(qū)、目標(biāo)位置控制區(qū)、指標(biāo)測試區(qū)等幾大模塊,可以對(duì)電機(jī)的目標(biāo)位置進(jìn)行設(shè)定,對(duì)系統(tǒng)指標(biāo)進(jìn)行測試,并實(shí)時(shí)地將PWM占空比數(shù)據(jù)、目標(biāo)值數(shù)據(jù)以及反饋值數(shù)據(jù)以趨勢(shì)圖的形式直觀地顯示出來,易于進(jìn)行在線分析處理和評(píng)估。

?


3.4 增量式分段離散PID控制算法描述
  舵機(jī)控制器系統(tǒng)的控制算法分為兩段進(jìn)行:
  
  式中,V為 PWM最大輸出常量, f(PID)為線性PID算法,Emax為偏差的設(shè)定閾值,U為控制算法輸出值,表征PWM信號(hào)的占空比。在偏差E很大時(shí)(E>Emax),系統(tǒng)快速性是控制的關(guān)鍵指標(biāo),系統(tǒng)開環(huán)運(yùn)行V,使得偏差能夠盡快縮??;在較小偏差下(E≤Emax),系統(tǒng)的定位精度成為關(guān)鍵指標(biāo),此時(shí)采樣值在設(shè)定值附近,按優(yōu)化的增量PID控制算法運(yùn)行。
4 系統(tǒng)測試結(jié)果分析
  舵機(jī)系統(tǒng)在2kgm的額定負(fù)載力矩的測試條件下,聯(lián)調(diào)試驗(yàn)結(jié)果表明:本系統(tǒng)可以達(dá)到250°/s的舵軸最大輸出轉(zhuǎn)速;系統(tǒng)頻帶寬度>20Hz(1.5°正弦信號(hào)檢測,幅值下降不大于3dB,相位滯后不大于90°),如圖6所示。舵機(jī)從0°轉(zhuǎn)到25°含純延時(shí)的時(shí)間不大于110ms,響應(yīng)曲線如圖7所示,超調(diào)量小于5%;舵面角定位精度±0.08°,舵機(jī)軸受控偏轉(zhuǎn)線性度誤差小于1%,系統(tǒng)電路工作穩(wěn)定。
參考文獻(xiàn)
1 劉延杰,孫立寧.諧波驅(qū)動(dòng)并聯(lián)機(jī)器人的加速度反饋抑振控制.哈爾濱工業(yè)大學(xué)學(xué)報(bào),2004;36(3):281~285
2過潤秋,林曉春.基于模糊控制的自動(dòng)回轉(zhuǎn)系統(tǒng)[J].西安電子科技大學(xué)學(xué)報(bào)(自然科學(xué)版), 1999
3 閻 力,段寶巖.非線性變結(jié)構(gòu)不確定連續(xù)系統(tǒng)的反饋控制.西安電子科技大學(xué)學(xué)報(bào)(自然科學(xué)版),2004;31(1)
4 過潤秋,王小紅.基于免疫反饋機(jī)理的溫度自動(dòng)控制研究.西安電子科技大學(xué)學(xué)報(bào)(自然科學(xué)版),2003;30(6)
5 任愛峰,孫肖子. 基于FPGA的嵌入式系統(tǒng)設(shè)計(jì). 西安:西安電子科技大學(xué)出版社,2004
6 Ciletti, M D著,張亞琦等譯. Verilog HDL高級(jí)數(shù)字設(shè)計(jì).北京:電子工業(yè)出版社,2005

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請(qǐng)及時(shí)通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。