摘要:數(shù)字信號處理器具有高效的數(shù)值運算能力,并能提供良好的開發(fā)環(huán)境,而可編程邏輯器件具有高度靈活的可配置性。本文描述了通過采用tms320c32浮點dsp和可編程邏輯器件(fpga)的組合運用來構(gòu)成高速高速高精運動控制器,該系統(tǒng)通過b樣條插值算法對運動曲線進行平滑處理以及運用離散pid算法對運動過程加以控制。
關鍵詞:運動控制;dsp;fpga;b樣條插值;pid
applicationofmovement-controlsystembasedondspandfpga
zhuxian-xin,huangtao,dengqi-hui,luluo-xian
(wuhanuniversityoftechnology,instituteofintellegentinformationsystem,wuhan,430070,china)
abstract:digitalsignalsprocessorcanprocessnumericalsimulationreliability,providesfavorableenvironmentfordelevlopment,andfpga(fieldprogrammablegatearray)cancollocatedflexible.thispaperdescribesmovement-controlsystembasedontms320c32andfpga.itsmoothesmotionalcurvethroughalgorithmofb-splineinterpolationandcontrolsmotionalprocessbymeansofpid.
keywords:movement-control;dsp;fpga;b-spline;pid
基金項目:863科技攻關項目,高速、高精運動控制器技術研究(2001aa423170)
運動控制卡已經(jīng)在數(shù)控機床、工業(yè)機器人、醫(yī)用設備、繪圖儀、ic電路制造設備、ic封裝等領域得到了廣泛運用,取得了良好的效果。目前運動控制卡大部分采用8051系列的8位單片機,雖然節(jié)省了開發(fā)周期但缺乏靈活性,難以勝任高要求運作環(huán)境,而且運算能力有限。
dsp的數(shù)據(jù)運算處理功能強大,即使在很復雜的控制中,采樣周期也可以取得很小,控制效果更接近于連續(xù)系統(tǒng)。把dsp與pc的各自優(yōu)勢結(jié)合將是高性能數(shù)控系統(tǒng)的發(fā)展趨勢。本運動控制器采用ti公司的高性能浮點dsp作為主控芯片,通過isa接口與pc協(xié)調(diào)并進行數(shù)據(jù)交換,以pc計算機作為基本平臺,以dsp高速運動控制卡作細插補、伺服控制的核心,對直線電機的運動進行控制,取得了良好的實際應用效果。
1.高速高精運動控制卡的主要硬件構(gòu)成
本運動控制系統(tǒng)的任務是控制直線電機的運動,要求4軸輸入和4軸輸出,采用光柵尺對輸入記數(shù),16位并行高速da輸出,運動定位精度要求達到10nm,響應時間<100ns。
高速直線電機是本系統(tǒng)的控制對象,它具有加速快(a>10g),運動速度高(v>300mm/s)的特點。要求控制系統(tǒng)有足夠短的響應時間(<100ns)和足夠高的定位精度(10nm級),因而系統(tǒng)的核心cpu的處理能力及運算能力必須滿足高速要求;此外,直線電機運動定位的核心是高精度的反饋控制裝置。直線電機的反饋控制裝置是光柵尺和高精度脈沖計數(shù)器,光柵尺發(fā)出與運動距離成線性關系的脈沖數(shù),脈沖計數(shù)器的計數(shù)值表示直線電機當前的運動位置。經(jīng)計算,計數(shù)長度為28位的計數(shù)器才能滿足定位的精度要求,同時計數(shù)頻率很高。一般的通用計數(shù)器參數(shù)無法達到,所以設計一個特殊計數(shù)器是必要的。為了方便設置目標點的運動參數(shù),使運動控制卡具有比較好的人機交互功能,系統(tǒng)必須具有與pc機通信的功能。
綜合考慮上述要求,系統(tǒng)的設計采用dspfpga的形式,由dsp主控芯片作為中央處理模塊,fpga作為反饋計數(shù)模塊且負責板上的部分邏輯譯碼工作,pc通信接口模塊采用雙口ram,輸出模塊用d/a轉(zhuǎn)換器實現(xiàn),如圖1所示。
1.1dsp模塊
基于dsp的運動控制系統(tǒng)一般采用ti公司的tms320c24x系列芯片,但24x系列是16位定點處理器,運算能力有限。不能滿足本系統(tǒng)規(guī)劃的高速高精要求,為此,我們選用了ti公司的tms320c32dsp作為主控芯片。
tms320c3x系列芯片是美國ti公司推出的第一代浮點dsp芯片,具有豐富的指令集、很高的運算速度、較大的錄址空間和較高的性價比,在各領域得到了廣泛的應用。tms320c32是tms320系列浮點數(shù)字信號處理器的新產(chǎn)品,在tms320c30和tms320c31的基礎上進行了簡化和改進。在結(jié)構(gòu)上的改進主要包括可變寬度的存儲器接口、更快速的指令周期時間、可設置優(yōu)先級的雙通道dma處理器、靈活的引導程序裝入方式、可重新定位的中斷向量表以及可選的邊緣/電平觸發(fā)中斷方式等。
對tms320c32的開發(fā)可以用匯編語言,也可以用c語言。使用匯編語言的優(yōu)點在于運行速度快、可以充分利用芯片的硬件特性,但開發(fā)速度較慢,程序的可讀性差;而c語言的優(yōu)勢在于編程容易、調(diào)試快速、可讀性好,可以大大縮短開發(fā)周期,但c語言對于其片內(nèi)的沒有映射地址的特殊功能寄存器不能操作,如if和ie,ar0~ar7等。
1.2fpga模塊
該部分主要功能為一個4通道的針對光柵尺的脈沖計數(shù)器,此外,還承擔部分地址譯碼的工作。但由于脈沖計數(shù)頻率高,計數(shù)量大,所以必須選擇高容量、高性能的可編程邏輯器件。
alteraflex(flexibllogicelementmatrix)10