基于DSP的伺服運動(dòng)控制器研究
1 引 言
本文引用地址:http://dyxdggzs.com/article/103982.htm運動(dòng)控制器是數控機床、機器人等一類(lèi)機電一體化設備中常用的核心運動(dòng)控制部件?,F代數控技術(shù)對運動(dòng)控制系統的開(kāi)放性、實(shí)時(shí)性、加工速度和精確度等性能指標提出了越來(lái)越高的要求。隨著(zhù)集成電路技術(shù)、微電子技術(shù)、計算機技術(shù)不斷發(fā)展,運動(dòng)控制器已經(jīng)從以單片機、微處理器和專(zhuān)用芯片作為核心的運動(dòng)控制器發(fā)展到基于PC機平臺的以數字信號處理器(DSP)和復雜可編程邏輯器件(CPLD)作為核心處理器的協(xié)處理架構的開(kāi)放式運動(dòng)控制器。這種將P C機的信息處理能力和開(kāi)放式的特點(diǎn)與運動(dòng)控制器很強的運動(dòng)軌跡控制能力有機地結合在一起,具有信息處理能力強、開(kāi)放程度高、運動(dòng)軌跡控制準確和通用性好的特點(diǎn)。這種模式在一個(gè)統一的人機對話(huà)平臺上,通過(guò)DSP算法和CPLD配置進(jìn)行適當的調整來(lái)實(shí)現不同的硬件功能模塊,可以方便地和多種類(lèi)型的驅動(dòng)器進(jìn)行連接。因此現在基于PC的新一代運動(dòng)控制器成為控制系統的主流和發(fā)展方向。
本文開(kāi)發(fā)的開(kāi)放式運動(dòng)控制器以PC機為平臺,完成坐標變換、軌跡規劃、粗插補運算等控制指令的設置和發(fā)送,同時(shí)可以實(shí)時(shí)顯示當前伺服系統的運動(dòng)位置、速度和電機狀態(tài)等參數。運動(dòng)控制器以DSP芯片作為核心處理器,完成數據處理和控制算法、進(jìn)行保護中斷的處理,通過(guò)PCI或USB總線(xiàn)與PC機實(shí)時(shí)通訊。CPLD芯片作為協(xié)處理器完成編碼信號的采集,鑒相處理,對脈沖和模擬量進(jìn)行配置和輸出,把DSP處理過(guò)的控制數據經(jīng)過(guò)內部轉換送到外部設備,并管理DSP和各種外部設備的接口。該運動(dòng)控制器可以完成非勻速比同步運動(dòng)控制,支持NURBS插補,并提供了豐富的動(dòng)態(tài)鏈接庫函數。
2 運動(dòng)控制器工作原理和硬件構成
該控制器可實(shí)現四路編碼器反饋和電機控制,其核心是TI公司的TMS320LF2407數字信號處理芯片和ALTERA 公司的MAX 7000S系列CPLD器件EPM7128SLC84??刂破鞯挠布Y構如圖1所示。DSP完成與上位機的實(shí)時(shí)通訊,對伺服電機速度和位置的精確控制,電機狀態(tài)監測和外部信號檢測等功能。雙口SRAM(DUAL-PORT STATIC RAM)不僅提供控制器與上位機的通訊接口,而且還為運動(dòng)軌跡控制提供了足夠的緩沖區。由于一片DSP只提供兩組正交編碼脈沖(QEP)電路,對于多于兩個(gè)電機的控制器,若用多片DSP不僅會(huì )造成DSP資源的浪費,而且還會(huì )增加由于協(xié)調DSP之間的工作而產(chǎn)生的難度,因此這里我們用CPLD來(lái)提供另外兩組正交編碼脈沖電路,對速度、位置進(jìn)行采樣,同時(shí)用CPLD提供高速穩定的其它邏輯控制電路。

圖1 運動(dòng)控制器的硬件結構
運動(dòng)控制器由基板和接口卡組成,集成了DSP核心電路,通信電路,CPLD譯碼、中斷、正交編碼處理電路,編碼器信號處理電路,電壓轉換電路,光電隔離電路等。運行過(guò)程中,PC機把粗插補的數據通過(guò)ISP-1581芯片傳遞給DSP進(jìn)行時(shí)間分割精插補。在每一個(gè)伺服周期中,CPLD器件和DSP各處理兩路反饋的正交編碼信號進(jìn)而獲取實(shí)時(shí)位置和速度,DSP計算出理論插補位置與實(shí)際位置的偏差,基于速度和加速度前饋進(jìn)行PID調節,計算獲得速度控制量,產(chǎn)生的輸出信號經(jīng)DAC7625進(jìn)行數模轉換及放大電路放大后將模擬電壓發(fā)送至伺服驅動(dòng)器以控制電機。
DSP兩個(gè)事件管理模塊中的正交編碼脈沖(QEP)電路可以實(shí)現對兩對正交編碼信號的四倍頻和方向檢測,其定時(shí)器工作在增減計數模式,依據電機運行情況進(jìn)行計數。根據不同伺服周期定時(shí)器內數值的變化,可以計算獲得電機的實(shí)際位置,由M/T測速法可求得其運行速度。另外兩個(gè)電機的反饋信號由EPM7128進(jìn)行處理,DSP與之通訊以獲取電機運行信息。擴展4個(gè)32位寄存器用來(lái)存儲電機當前位置,通過(guò)實(shí)時(shí)從計數器讀取每個(gè)伺服周期走過(guò)的脈沖數與之累加實(shí)現。每隔一定的伺服周期,將4個(gè)16位的計數器賦初值32000使之重新計數。
2.1 CPLD處理電路
CPLD主要包括正交編碼檢測邏輯電路,DSP地址譯碼電路和計數器及中斷邏輯四個(gè)部分,它對兩個(gè)正交編碼輸入四倍頻后進(jìn)行計數,反饋給DSP。正交編碼脈沖電路的方向檢測邏輯決定了輸入序列中的哪一個(gè)是先導序列,接著(zhù)就產(chǎn)生方向信號作為計數器的計數方向輸入。如果QEP1是先導序列,則所選的定時(shí)器增計數;如果QEP2是先導序列,則所選的計數器減計數。正交編碼脈沖電路對輸入的兩列脈沖的兩個(gè)邊沿都進(jìn)行計數,因此,由它所產(chǎn)生的時(shí)鐘頻率是每個(gè)輸入脈沖序列頻率的四倍。中斷邏輯,限位和報警等信號產(chǎn)生時(shí)向DSP申請中斷。每個(gè)軸的正負限位信號、歸零信號和報警信號,四個(gè)軸共計16個(gè)信號,這些信號相或,只要有一個(gè)信號產(chǎn)生時(shí)就產(chǎn)生一個(gè)上升沿信號,此上升沿觸發(fā)DSP中斷,DSP以查詢(xún)方式判斷是哪個(gè)信號產(chǎn)生的中斷。
2.2 控制卡通訊及接口
早期PC機通過(guò)ISA總線(xiàn)實(shí)現對電機的控制,但響應速度慢,實(shí)時(shí)性差,后來(lái)的PCI局部總線(xiàn),解決了ISA的傳輸速度慢等問(wèn)題。近幾年通用串行總線(xiàn)USB(Universal Serial Bus)以其較快的傳輸速率和支持熱插拔等諸多優(yōu)點(diǎn)而受到用戶(hù)的廣泛受青睞。得到了許多硬件和軟件廠(chǎng)商的支持。USB 2.0接口的最高傳輸速率由12Mb/s提高到了480Mb/s,能夠更好地支持數據實(shí)時(shí)傳輸。把USB引入運動(dòng)控制器,實(shí)現了運動(dòng)控制器的熱插拔,解決了計算機接口資源有限等問(wèn)題,滿(mǎn)足了多軸運動(dòng)控制卡對數據實(shí)時(shí)通訊的需要。為提高運動(dòng)控制器硬件上的開(kāi)放性,開(kāi)發(fā)了通用的接口卡,輔助完成基板與外部的通訊。除了進(jìn)行反饋信號等的必要傳輸外,還提供了電機的限位、回零、報警、伺服使能等信號和通用I/O各8路。為防止外界信號干擾,保證控制器的可靠性和安全性,輸入輸出信號都經(jīng)由TLP521進(jìn)行光電隔離。
3 速度、加速度前饋PID控制算法
本控制器采用典型的三環(huán)調節,其中速度調節器和電流調節器的功能由伺服電機驅動(dòng)器完成,電流環(huán)用來(lái)提高系統的動(dòng)態(tài)響應指標,增強系統抗干擾能力;速度環(huán)用于調節伺服電機的轉速。位置閉環(huán)調節原理框圖如圖2所示,它包括位置PID調節和速度、加速度前饋,由運動(dòng)控制器底層程序完成,用于實(shí)現精確定位、回零等,輸出飽和控制可保證輸出電壓不會(huì )超過(guò)設定范圍。

圖2 伺服電機位置環(huán)系統結構圖
位置環(huán)的計算公式為:

其中En為第n個(gè)采樣時(shí)刻的位置誤差;Ptarget

4 Matlab仿真及結果分析
基于KLD-200二維數控平臺進(jìn)行仿真。平臺由兩個(gè)Panasonic公司的MSMA012A 1E伺服電機及配套的MSDA013A1A驅動(dòng)器進(jìn)行控制。電機最高轉速為3000RPM,功率1 00W,增量式編碼器,2500P/r,絲杠導程為4mm/r。取Kp=100、Ki=12、Kd=2進(jìn)行仿真。Y軸電機速度曲線(xiàn)與余弦曲線(xiàn)類(lèi)似,跟隨誤差曲線(xiàn)如圖3所示。無(wú)前饋情況下電機跟隨誤差從開(kāi)始的63個(gè)脈沖在0.137秒后上升到114個(gè)脈沖,隨后作類(lèi)似余弦曲線(xiàn)的變化。引入前饋后,跟隨誤差從開(kāi)始的63個(gè)脈沖迅速上升到109個(gè)脈沖,然后逐漸下降,在大約0.2秒后穩定在±2個(gè)脈沖之間??梢?jiàn),速度和加速度前饋大大減小了系統的跟隨誤差。利用自己開(kāi)發(fā)的運動(dòng)控制器對數控平臺反復進(jìn)行控制實(shí)驗,效果良好。梯形曲線(xiàn)控制實(shí)驗中,設定加速度為10rev/s2,目標速度300RPM,位移120mm。到達目標速度后,驅動(dòng)器顯示的電機速度波動(dòng)范圍在±2RPM之間。利用VC的OnTimer()函數實(shí)時(shí)獲取位置信息并進(jìn)行顯示,可以看出,到位后的最大超調量約為5~10個(gè)脈沖,穩態(tài)誤差在±2個(gè)脈沖之內,小于1mm。

圖3 跟隨誤差比較
5 結束語(yǔ)
本運動(dòng)控制采用基于DSP和CPLD的硬件方案充分發(fā)揮了DSP芯片實(shí)時(shí)高效的處理能力,系統設計合理,可以實(shí)現變傳動(dòng)比的電子齒輪和多軸插補功能??刂破鞑捎昧嘶谒俣群图铀俣惹梆伒腜ID調節和NURBS插補等先進(jìn)理論,實(shí)驗和仿真結果表明,該運動(dòng)控制器實(shí)時(shí)性好,控制精確度高,跟隨誤差小,理論跟隨誤差小于2個(gè)脈沖,位置控制誤差小于1mm,可以滿(mǎn)足高速高精度加工的要求。
伺服電機相關(guān)文章:伺服電機工作原理
pid控制器相關(guān)文章:pid控制器原理
評論