??? 摘 要: 多軸聯(lián)動(dòng)控制系統(tǒng)的設(shè)計(jì)是開放式數(shù)控系統(tǒng)" title="開放式數(shù)控系統(tǒng)">開放式數(shù)控系統(tǒng)研究的核心內(nèi)容之一。根據(jù)開放式數(shù)控系統(tǒng)的定義和特點(diǎn),介紹一種采用DSP和FPGA技術(shù),基于ISA總線的四軸聯(lián)動(dòng)" title="四軸聯(lián)動(dòng)">四軸聯(lián)動(dòng)運(yùn)動(dòng)控制卡" title="運(yùn)動(dòng)控制卡">運(yùn)動(dòng)控制卡的軟硬件設(shè)計(jì)與調(diào)試。該卡可以控制四個(gè)步進(jìn)電機(jī)" title="步進(jìn)電機(jī)">步進(jìn)電機(jī)、直流電機(jī)或交流電機(jī)實(shí)現(xiàn)高速、高精度運(yùn)動(dòng),且結(jié)構(gòu)簡(jiǎn)單、可靠性高。通過對(duì)BS42HB47-01型步進(jìn)電機(jī)的四軸聯(lián)動(dòng)控制測(cè)試,驗(yàn)證了該控制卡的性能。
??? 關(guān)鍵詞: 開放式數(shù)控; 運(yùn)動(dòng)控制; DSP; FPGA
?
??? 開放式數(shù)控系統(tǒng)是一個(gè)模塊化、可重構(gòu)、易擴(kuò)充的控制系統(tǒng),數(shù)控系統(tǒng)的體系結(jié)構(gòu)向開放式結(jié)構(gòu)發(fā)展已成為潮流,國內(nèi)各科研生產(chǎn)單位紛紛對(duì)其展開了研究[1]。本文根據(jù)開放式數(shù)控系統(tǒng)的定義和特點(diǎn),采用模塊化的設(shè)計(jì)思想建立了一種開放式數(shù)控系統(tǒng)的結(jié)構(gòu)模型,并對(duì)其中的關(guān)鍵模塊(軸控制單元)采用DSP(TMS320F2812)和FPGA技術(shù)進(jìn)行了詳細(xì)的設(shè)計(jì)與調(diào)試。該控制卡可以實(shí)現(xiàn)四個(gè)坐標(biāo)軸高速、高精度運(yùn)動(dòng),結(jié)構(gòu)簡(jiǎn)單,且四個(gè)控制電機(jī)可以任意選擇。標(biāo)準(zhǔn)化的設(shè)計(jì),使更多軸聯(lián)動(dòng)時(shí),可以選擇多塊控制卡,操作方便。
1 開放式數(shù)控系統(tǒng)結(jié)構(gòu)模型
??? 鑒于PC機(jī)的強(qiáng)大功能及特點(diǎn),基于PC機(jī)的開放式數(shù)控系統(tǒng)成為當(dāng)前研究的熱點(diǎn)[2-3]。這種系統(tǒng)的結(jié)構(gòu)可以分為三種類型:PC嵌入NC型、NC嵌入PC型和全軟件型。而比較經(jīng)濟(jì)、容易實(shí)現(xiàn)的開放式數(shù)控系統(tǒng)是NC嵌入PC型結(jié)構(gòu)型式。這種數(shù)控系統(tǒng)的硬件部分由開放式體系結(jié)構(gòu)的運(yùn)動(dòng)控制卡和PC機(jī)組成,即在通用PC機(jī)的擴(kuò)展槽中插入專用的CNC卡(如運(yùn)動(dòng)控制卡),機(jī)床的運(yùn)動(dòng)控制和邏輯控制功能主要由運(yùn)動(dòng)控制卡完成。因此,卡的設(shè)計(jì)成為系統(tǒng)性能實(shí)現(xiàn)的關(guān)鍵[4-5]。本系統(tǒng)采用NC嵌入PC機(jī)的結(jié)構(gòu)模型,將以往的運(yùn)動(dòng)控制卡功能進(jìn)行了分解,做了進(jìn)一步的模塊化設(shè)計(jì),并將其做成獨(dú)立的標(biāo)準(zhǔn)化單元控制模板,雖然系統(tǒng)的模塊數(shù)量有所增加,但開放性更強(qiáng)。整個(gè)系統(tǒng)的功能模塊有:軸控制模塊、伺服驅(qū)動(dòng)模塊、位置檢測(cè)反饋模塊、開關(guān)量控制及輔助功能模塊、故障檢測(cè)模塊等。各功能模塊通過總線與PC機(jī)進(jìn)行通信,由PC機(jī)來控制各實(shí)時(shí)模塊工作。系統(tǒng)的結(jié)構(gòu)模型如圖1所示。
?
??? 其中,軸控制模塊由TMS320F2812 DSP和FPGA構(gòu)成,通過ISA總線與PC機(jī)通信,實(shí)現(xiàn)不同電機(jī)(步進(jìn)電動(dòng)機(jī)、直流電動(dòng)機(jī)、交流電動(dòng)機(jī))的多軸聯(lián)動(dòng)控制。位置反饋模塊主要用于閉環(huán)和半閉環(huán)數(shù)控系統(tǒng)中,直接或間接測(cè)出機(jī)床運(yùn)動(dòng)部件的位移,經(jīng)位置反饋裝置進(jìn)行處理后通過總線送回到控制系統(tǒng)和伺服系統(tǒng)中,并與控制指令相比較后經(jīng)過控制計(jì)算,輸出控制指令,控制電機(jī)運(yùn)行。用戶可以根據(jù)自己的實(shí)際需要選擇使用或不使用該模塊,可以自行設(shè)計(jì)該模塊所要實(shí)現(xiàn)的功能,靈活組建系統(tǒng)。增加了系統(tǒng)的開放性,提高了系統(tǒng)的性價(jià)比。
2 運(yùn)動(dòng)控制卡的硬件設(shè)計(jì)
??? 軸控制模塊是系統(tǒng)的核心控制單元之一,主要由TMS320F2812 DSP和FPGA構(gòu)成[7]。TMS320F2812 DSP處理器是TI公司最新推出的32位定點(diǎn)處理器,實(shí)時(shí)控制能力很強(qiáng),處理速度達(dá)150MIPS,指令周期6.67ns,能夠在一個(gè)周期內(nèi)完成32×32位的乘法累加運(yùn)算,或兩個(gè)16×16位乘法累加運(yùn)算,能夠?qū)崟r(shí)處理許多復(fù)雜的控制算法。處理器提供了多個(gè)通用數(shù)字量I/O引腳,這些引腳絕大部分是多功能復(fù)用引腳。內(nèi)部有兩個(gè)事件管理器EVA和EVB,具有強(qiáng)大的控制功能,特別適合運(yùn)動(dòng)控制和電機(jī)控制。每個(gè)事件管理器包括通用定時(shí)器(GP)、比較器、PWM單元、捕獲單元以及正交編碼脈沖電路(QEP)。EVA和EVB兩個(gè)模塊有相同的外設(shè),可以實(shí)現(xiàn)多軸運(yùn)動(dòng)控制。TMS320F2812 DSP支持多種外設(shè)中斷, CPU能夠相當(dāng)快地響應(yīng)外設(shè)產(chǎn)生的中斷。而且DSP支持在線仿真和調(diào)試,用戶根據(jù)自己的要求,可以改寫自己的控制程序,通過JTAG接口進(jìn)行調(diào)試和仿真。采用FPGA芯片設(shè)計(jì)系統(tǒng),提高了系統(tǒng)硬件的集成度和二次開發(fā)的能力,從而增強(qiáng)了產(chǎn)品的可靠性和市場(chǎng)競(jìng)爭(zhēng)能力。本次設(shè)計(jì)采用ALTERA FLEX10K系列的FPGA,有96個(gè)I/O引腳,1 728個(gè)邏輯單元,216個(gè)邏輯陣列塊,20 000多個(gè)可用門數(shù),具有高密度和易于在設(shè)計(jì)中實(shí)現(xiàn)復(fù)雜宏函數(shù)與存儲(chǔ)器的特點(diǎn)[8]。
??? 軸控制模塊的原理圖如圖2所示。DSP完成比較復(fù)雜的插補(bǔ)" title="插補(bǔ)">插補(bǔ)和位置控制計(jì)算,通過GPIO產(chǎn)生步進(jìn)電機(jī)聯(lián)動(dòng)的控制信號(hào);通過EVA和EVB控制伺服電機(jī)的驅(qū)動(dòng)信號(hào)的產(chǎn)生。FPGA接收DSP最新脈沖寬度,產(chǎn)生PWM控制信號(hào),控制伺服電機(jī)運(yùn)動(dòng)。通過ISA總線與PC機(jī)通信。雙口RAM用于PC機(jī)與DSP交換信息,實(shí)現(xiàn)數(shù)據(jù)雙向通信。
?
3 系統(tǒng)的軟件設(shè)計(jì)
??? 軟件設(shè)計(jì)主要是實(shí)時(shí)插補(bǔ)程序設(shè)計(jì)及部分通信與管理軟件設(shè)計(jì)。選擇改進(jìn)后的DDA插補(bǔ)方法,DSP可以在單個(gè)周期內(nèi)完成取指、譯碼、執(zhí)行操作,DSP最小時(shí)鐘周期為6.67ns,完成一次四軸的插補(bǔ)運(yùn)算,大約需要75個(gè)指令周期。在插補(bǔ)控制中,對(duì)于步進(jìn)電機(jī)的控制可以直接插補(bǔ)生成步進(jìn)脈沖和轉(zhuǎn)向控制信號(hào);對(duì)于直流電機(jī)的控制,經(jīng)過插補(bǔ)計(jì)算和位置控制后,再通過PWM控制輸出信號(hào);對(duì)于交流電機(jī)的控制,經(jīng)過插補(bǔ)和位置控制后,通過SPWM或SVPWM控制輸出信號(hào)。DSP工作流程如圖3所示。
?
4 四軸聯(lián)動(dòng)仿真與調(diào)試
??? 首先,通過TDS510 JTAG Emulator和編程環(huán)境CCS2.0將編制好的控制程序和插補(bǔ)程序通過14針的接口下載到DSP中,對(duì)DSP進(jìn)行在線調(diào)試,采用示波器觀測(cè)步進(jìn)電機(jī)的控制脈沖和方向信號(hào)。然后對(duì)FPGA的邏輯、設(shè)計(jì)進(jìn)行調(diào)試,通過示波器觀看波形。調(diào)試無誤后,將程序燒寫到EPROM中。四軸聯(lián)動(dòng)插補(bǔ)仿真時(shí),設(shè)定當(dāng)前坐標(biāo)原點(diǎn)為O(0,0,0,0),終點(diǎn)為A(15,9,5,3),加工直線為OA。插補(bǔ)過程如圖4所示。deltx、delty、deltz、deltt代表x、y、z、t 四個(gè)軸溢出的脈沖,jrx、jry、jrz、jrt為余數(shù)寄存器存放的累加結(jié)果。圖4所示是經(jīng)過左移規(guī)格化、半加載后插補(bǔ)運(yùn)算的結(jié)果。
?
圖4 四軸聯(lián)動(dòng)軟件模擬
?
??? 通過仿真器下載步進(jìn)電動(dòng)機(jī)的控制程序到TMS320F2812 DSP中進(jìn)行波形檢測(cè),來驗(yàn)證控制算法和插補(bǔ)算法的正確性。
??? 圖5為檢測(cè)到的四軸聯(lián)動(dòng)步進(jìn)脈沖控制信號(hào),圖6為步進(jìn)脈沖信號(hào)和方向控制信號(hào)。聯(lián)動(dòng)脈沖信號(hào)的分布與用VC仿真的數(shù)據(jù)吻合,證明電路工作正常。
?
圖5 四軸聯(lián)動(dòng)步進(jìn)脈沖信號(hào)
?
??? 將控制卡與電機(jī)相連,調(diào)試四軸聯(lián)動(dòng)性能。步進(jìn)電機(jī)選用型號(hào)為BS42HB47-01的電機(jī),其電氣規(guī)格如表1所示。
?
??? 驅(qū)動(dòng)器選用等角度恒力矩細(xì)分型Q2HB44MA型驅(qū)動(dòng)器,驅(qū)動(dòng)電壓為直流12V~40V,內(nèi)部采用獨(dú)特的控制電路,很好地兼顧了電機(jī)的高低速性能,使電機(jī)在高速運(yùn)行時(shí),輸出力矩比采用一般驅(qū)動(dòng)器提高30%以上;低速運(yùn)行時(shí),具有良好的細(xì)分定位精度和平穩(wěn)性(最高為200細(xì)分,最高反應(yīng)頻率可達(dá)200KP/s)。
??? 實(shí)際測(cè)試時(shí),DSP TMS320F2812工作時(shí)鐘為30MHz。由于電機(jī)反應(yīng)頻率最高只能達(dá)到200KP/s,因此需在程序中加入延時(shí),調(diào)整延時(shí)時(shí)間,使DSP TMS320F2812的輸出脈沖頻率為200kHz。實(shí)測(cè)電機(jī)轉(zhuǎn)速如表2所示。
?
??? 表中電機(jī)脈沖當(dāng)量δ和電機(jī)線速度V計(jì)算如下:
??? δ=π×d/(360°/α×k)
??? v =π×d×n×60
式中,k為細(xì)分?jǐn)?shù),n為電機(jī)轉(zhuǎn)速。
??? 從表2中可見,輸出脈沖頻率為200kHz,當(dāng)驅(qū)動(dòng)器的細(xì)分?jǐn)?shù)設(shè)定為20時(shí),電機(jī)的線速度為47.1m/min。
??? 而DSP的最高工作時(shí)鐘是150MHz,其輸出脈沖頻率可達(dá)2MHz,如果電機(jī)的最高反應(yīng)頻率能夠與之相匹配,電機(jī)的最高線速度可達(dá):
??? 47.1m/min×2MHz/200kHz=471m/min
??? 此時(shí)電機(jī)的脈沖當(dāng)量為3.9μm。如果電機(jī)的脈沖當(dāng)量是1μm,則電機(jī)最高線速度為471/3.9=121m/min。
??? 本文采用模塊化的設(shè)計(jì)思想,提出了一種開放式數(shù)控系統(tǒng)的結(jié)構(gòu)模型。對(duì)系統(tǒng)中運(yùn)動(dòng)控制卡的設(shè)計(jì)采用了高性能的DSP TMS320F2812和高集成度的FPGA技術(shù),使該系統(tǒng)硬件結(jié)構(gòu)簡(jiǎn)單、可靠性強(qiáng);可以控制不同類型電機(jī)運(yùn)動(dòng),操作靈活、適應(yīng)性強(qiáng)。經(jīng)測(cè)試,其運(yùn)行速度高,可滿足高性能數(shù)控系統(tǒng)的需求,同時(shí),因是標(biāo)準(zhǔn)化設(shè)計(jì),提高了系統(tǒng)的性能價(jià)格比,值得推廣。
參考文獻(xiàn)
[1]? 周祖德,魏仁選,陳幼平. 開放式控制系統(tǒng)的現(xiàn)狀、趨勢(shì)與對(duì)策[J]. 中國機(jī)械工程, 1999,10(10):1090-1093.
[2] ?趙春紅,秦現(xiàn)生,唐虹. 基于PC的開放式數(shù)控系統(tǒng)研究.機(jī)械科學(xué)與技術(shù), 2005(9):1108-1113.
[3] ?李剛,楊繼東.基于PC的開放式數(shù)控系統(tǒng)的開發(fā).機(jī)床與液壓,2006(4):82-83.
[4] ?康健,陶濤,梅雪松.基于數(shù)字信號(hào)處理的多軸運(yùn)動(dòng)控制器設(shè)計(jì)[J].西安交通大學(xué)學(xué)報(bào),2003,5(5)
[5] ?劉軍鋒,尹泉,萬淑蕓.基于DSP和FPGA的開放式伺服平臺(tái)設(shè)計(jì)[J].電氣傳動(dòng),2004,5(4).
[6] ?王文武,曹治國,張貴清,等.基于FPGA和DSP的并行數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)[J]. 微計(jì)算機(jī)信息.2004,20(11).
[7] ?楊特育.高性能DSP芯片TMS320F2812在電機(jī)控制器中的應(yīng)用[J]. 電子元器件應(yīng)用,2006,8(3):56.
[8] ?楊恒,李愛國,王輝,等.FPGA/CPLD最新實(shí)用技術(shù)指南[M].北京:清華大學(xué)出版社,2005.