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