前言 ---在大多數(shù)制造業(yè)的生產(chǎn)流程中,運(yùn)動(dòng)控制占有非常重要的地位。很多的機(jī)器和設(shè)備,包含半導(dǎo)體或光電產(chǎn)業(yè)設(shè)備,或是傳統(tǒng)機(jī)械行業(yè)的車床、銑床和CNC整合加工機(jī)具等,都包含運(yùn)動(dòng)控制的模塊。 ---由于PC采取開放式架構(gòu)并具有價(jià)格上的優(yōu)勢(shì),一些專業(yè)領(lǐng)域的專家開發(fā)了很多能在PC上應(yīng)用的控制卡,希望能為PC用戶提供解決方案。而近年來(lái),由于影像視覺(jué)的辨識(shí)技術(shù)逐漸成熟,運(yùn)動(dòng)視覺(jué)解決方案對(duì)搭配運(yùn)動(dòng)控制技術(shù)的需求也越來(lái)越明顯。這些技術(shù)的進(jìn)步促使整個(gè)工業(yè)產(chǎn)業(yè)的應(yīng)用層面更為豐富。更多的設(shè)備開發(fā)商可以選擇使用開放架構(gòu)的PC和操作系統(tǒng)作為控制平臺(tái),因此更多的核心開發(fā)技術(shù)可以掌握在開發(fā)者手中,再加上價(jià)格優(yōu)于其他解決方案,PC-based運(yùn)動(dòng)控制解決方案有很強(qiáng)的競(jìng)爭(zhēng)優(yōu)勢(shì)。 ---在運(yùn)動(dòng)控制方面,大致可以歸納出以下幾項(xiàng)運(yùn)動(dòng)所需要的控制軌跡。 ---● 點(diǎn)對(duì)點(diǎn)運(yùn)動(dòng)(Point-to-Point):?jiǎn)屋S的運(yùn)用,通過(guò)運(yùn)動(dòng)控制卡的指令集,控制單軸由A點(diǎn)運(yùn)動(dòng)到B點(diǎn),所以又稱為點(diǎn)對(duì)點(diǎn)運(yùn)動(dòng)。 ---● 補(bǔ)間運(yùn)動(dòng)(Interpolation):補(bǔ)間運(yùn)動(dòng)通?梢苑譃榫性補(bǔ)間和圓弧補(bǔ)間運(yùn)動(dòng)。線性補(bǔ)間運(yùn)動(dòng)通常由兩軸以上構(gòu)成,而圓弧補(bǔ)間運(yùn)動(dòng)則由兩軸構(gòu)成,形成多維或二維的運(yùn)動(dòng)軌跡。通常補(bǔ)間運(yùn)動(dòng)可以用于連續(xù)軌跡的運(yùn)動(dòng)控制,例如雕刻或是鞋模等。補(bǔ)間運(yùn)動(dòng)的解析決定了軌跡運(yùn)動(dòng)的控制精度。 ---● 螺線型運(yùn)動(dòng):由二維的圓弧運(yùn)動(dòng)和垂直軸的線性運(yùn)動(dòng)組合而成,多用于工具機(jī)。 ---● 多軸同時(shí)運(yùn)動(dòng)或是同時(shí)停止:控制兩個(gè)以上的運(yùn)動(dòng)軸做點(diǎn)對(duì)點(diǎn)的同時(shí)運(yùn)動(dòng),或是同時(shí)停止。 ---● 同步運(yùn)動(dòng)控制:通過(guò)運(yùn)動(dòng)控制卡的絕對(duì)同步性,可以使多軸的運(yùn)動(dòng)依照一定的時(shí)間順序準(zhǔn)確控制,也可以通過(guò)條件設(shè)定使得軸與軸之間可以依據(jù)相互關(guān)系而運(yùn)動(dòng)。通常這種方式的控制必須采用串行式的運(yùn)動(dòng)控制器才能完成,因?yàn)榇惺娇刂破髋c馬達(dá)驅(qū)動(dòng)器有特定的通信協(xié)議,所以彼此之間可以依據(jù)運(yùn)作的時(shí)鐘來(lái)實(shí)現(xiàn)絕對(duì)運(yùn)動(dòng)的控制,如圖1所示。 ---本文將與讀者分享的就是由同步運(yùn)動(dòng)發(fā)展而來(lái)的程序運(yùn)動(dòng)控制的技術(shù)。 現(xiàn)有的運(yùn)動(dòng)控制核心技術(shù) 1 ASIC-Based ---ASIC(Application Specific Integrated Circuit)即特殊用途集成電路或?qū)S眉呻娐。許多運(yùn)動(dòng)控制器會(huì)采用具有運(yùn)動(dòng)功能的ASIC來(lái)達(dá)到低端或是高端的運(yùn)動(dòng)控制。通常ASIC已經(jīng)由芯片開發(fā)廠商經(jīng)過(guò)一連串測(cè)試與市場(chǎng)洗煉,所以穩(wěn)定度和功能的驗(yàn)證度高,整體的指令集執(zhí)行速度快。但是由于其缺乏可程序化能力,所以相較于DSP的運(yùn)動(dòng)控制卡,無(wú)擴(kuò)充能力,亦無(wú)法實(shí)現(xiàn)絕對(duì)同步的運(yùn)動(dòng)控制。ASIC-based的運(yùn)動(dòng)控制一般適合用于步進(jìn)馬達(dá)、線性馬達(dá)和伺服馬達(dá)等異步運(yùn)動(dòng)軌跡的控制。 2 DSP-Based ---近年來(lái),由于伺服控制有實(shí)時(shí)性(Real Time)的需求,在精準(zhǔn)時(shí)間控制的要求下,一般都采用速度較快的DSP,也有采用RISC或是一般CPU來(lái)完成的。使用高速的DSP通常會(huì)搭配高速的內(nèi)存。由于采用DSP的運(yùn)動(dòng)控制卡具有可程序化的能力,所以一般使用者可以下載部分過(guò)程控制碼在DSP內(nèi)部執(zhí)行,使得整個(gè)控制程序享有實(shí)時(shí)性(Real Time)。 3 串行控制技術(shù) ---伺服馬達(dá)的串行控制技術(shù)在市場(chǎng)上也不少見(jiàn)。一般而言,串行式控制具有自己的通訊協(xié)議,使得控制器與被控制端(伺服驅(qū)動(dòng)器)可以依通信協(xié)議進(jìn)行資料交換,以作為運(yùn)動(dòng)控制或是取得相關(guān)伺服信息回到控制器本端。其通信也會(huì)依一個(gè)固定時(shí)鐘做數(shù)據(jù)交換和更新動(dòng)作,也就是會(huì)依據(jù)實(shí)時(shí)性的特性來(lái)運(yùn)作。 ---筆者將以三菱串行式的控制技術(shù)為基礎(chǔ),來(lái)說(shuō)明程序運(yùn)動(dòng)控制技術(shù)。SSCNet是三菱提出的串行式伺服控制,全稱為Servo System Control Network。第二代SSCNetII的實(shí)時(shí)性(Real Time)特性為0.888ms。 程序運(yùn)動(dòng)控制的概念 ---在復(fù)雜的機(jī)構(gòu)與控制中,機(jī)構(gòu)與時(shí)間的配合十分重要,尤其是多連桿的機(jī)構(gòu)。圖2為一個(gè)復(fù)雜的運(yùn)動(dòng)機(jī)構(gòu),在芯片吸取的過(guò)程中,頂針也必須在準(zhǔn)確且與機(jī)器手臂同步的時(shí)間內(nèi)將芯片頂起以利于吸頭的抓取,所有的機(jī)械動(dòng)作都要依賴運(yùn)動(dòng)控制卡的程序運(yùn)動(dòng)控制技術(shù)才能完成。 ---若串行式運(yùn)動(dòng)控制必須通過(guò)PC將用戶的運(yùn)動(dòng)控制指令傳達(dá)到運(yùn)動(dòng)控制卡上,傳遞過(guò)程中由于操作系統(tǒng)的時(shí)間延遲和非實(shí)時(shí)性,多軸之間的同步性無(wú)法很準(zhǔn)確的實(shí)現(xiàn)。 ---如圖3所示,若不利用程序運(yùn)動(dòng)控制技術(shù),那么運(yùn)動(dòng)指令在操作系統(tǒng)中傳遞所造成的Time Delay(時(shí)間差),將使其無(wú)法進(jìn)行同步運(yùn)動(dòng)控制。因此,程序運(yùn)動(dòng)控制的精神在于將用戶需要做到同步運(yùn)動(dòng)的控制軸,編成程序代碼后,下載至DSP中做運(yùn)算,DSP會(huì)依據(jù)串行式運(yùn)動(dòng)的數(shù)據(jù)更新周期時(shí)間完成過(guò)程控制,如圖4所示。  程序運(yùn)動(dòng)控制的優(yōu)點(diǎn) ---對(duì)于需要實(shí)時(shí)性(Real Time)控制產(chǎn)業(yè)的應(yīng)用者,過(guò)程控制技術(shù)有以下優(yōu)點(diǎn)。 ---● 一般的無(wú)同步機(jī)制的控制卡,各軸之間的控制為獨(dú)立關(guān)系,如果要進(jìn)行主軸(Master Axis)與從軸(Slave Axis)的應(yīng)用,那些解決方案是無(wú)法達(dá)到精確控制需求的。唯有利用串行式運(yùn)動(dòng)控制技術(shù),彼此間依照通信協(xié)議的固定時(shí)鐘,才能依照基本時(shí)鐘進(jìn)行同步控制。 ---● 除串行式控制技術(shù)外,DSP的加入,可以讓用戶有更多的彈性加入到過(guò)程控制的流程,可程序化的優(yōu)點(diǎn)讓用戶不會(huì)因操作系統(tǒng)的非實(shí)時(shí)性而造成指令延遲?梢猿浞掷么惺娇刂频膶(shí)時(shí)性,而達(dá)到多軸同步控制的應(yīng)用。 ---● 在過(guò)程控制中,用戶可以自由選擇各軸間的同步關(guān)系,例如決定了主軸運(yùn)動(dòng)之后,從軸可以依據(jù)主軸的位置、運(yùn)動(dòng)速度或是外部的數(shù)字信號(hào)作為同步觸發(fā)信號(hào),亦可實(shí)現(xiàn)動(dòng)態(tài)位置補(bǔ)償?shù)墓δ?使得主從軸可以在時(shí)間上完美搭配。 ---● 過(guò)程控制的控制權(quán)在DSP上,所以可以大幅減少CPU的系統(tǒng)負(fù)擔(dān),減少通過(guò)操作系統(tǒng)傳遞運(yùn)動(dòng)指令所造成的時(shí)間延遲,增進(jìn)往復(fù)性的控制效能。 結(jié)語(yǔ) ---運(yùn)動(dòng)控制的技術(shù)日新月異,不論是ASIC或是DSP為核心的運(yùn)動(dòng)控制卡,均有其優(yōu)缺點(diǎn)。在高端應(yīng)用上,控制的實(shí)時(shí)性要求會(huì)是一個(gè)新趨勢(shì),串行式的通信技術(shù)加上DSP的運(yùn)動(dòng)控制,程序運(yùn)動(dòng)控制的技術(shù)將可以讓用戶在精密機(jī)械的控制中,提升控制精度與效能,縮短往復(fù)性運(yùn)動(dòng)的周期時(shí)間,進(jìn)而增加機(jī)器設(shè)備的生產(chǎn)能力。 |