一種實(shí)用的機(jī)器人控制器力/位混合控制技術(shù)
針對(duì)機(jī)器人主動(dòng)柔順控制在工程中如何實(shí)現(xiàn)的問(wèn)題,開(kāi)發(fā)了一種開(kāi)放式機(jī)器人控制器。此控制器采用“PC+PMAC”的控制結(jié)構(gòu),利用伺服驅(qū)動(dòng)器的兩種不同的控制模式,提出了一種實(shí)用的力/位混合控制方案,給出了相應(yīng)的硬件和軟件的具體實(shí)現(xiàn)。實(shí)驗(yàn)表明,文章提出的力/位混合控制方法具有良好的穩(wěn)定性和力控制精度。
1,引言隨著機(jī)器人在各個(gè)領(lǐng)域應(yīng)用的日益廣泛,許多場(chǎng)合要求機(jī)器人具有力控制的能力。例如,機(jī)器人的精密裝配、修刮或工件表面磨削、拋光和擦洗等。在操作過(guò)程中要求保持其末端執(zhí)行器與環(huán)境接觸。完成這些作業(yè)任務(wù),必須具備從自由空問(wèn)到約束空問(wèn)的對(duì)力的柔順控制能力。
柔順控制分為主動(dòng)柔順控制和被動(dòng)柔順性控制。被動(dòng)柔順控制由于其專(zhuān)業(yè)性強(qiáng),成功率低等不足使應(yīng)用范圍受到限制。為了克服其不足,需要對(duì)機(jī)器人采用主動(dòng)柔順控制,即力控制。本系統(tǒng)采用基于PC總線的開(kāi)放式機(jī)器人控制器,具體以PC+DSP運(yùn)動(dòng)控制卡的結(jié)構(gòu)來(lái)構(gòu)造特種機(jī)器人開(kāi)放式的硬件平臺(tái),以滿(mǎn)足機(jī)器人在完成接觸性作業(yè)時(shí)力控制的需要。
2,力/位混合控制特種機(jī)器人的工作原理針對(duì)特殊接觸性作業(yè),本系統(tǒng)中的機(jī)器人是平面三自由度操作手,整個(gè)操作手有一個(gè)移動(dòng)副,兩個(gè)轉(zhuǎn)動(dòng)副。適用于在回轉(zhuǎn)殼體內(nèi)或外壁表面卜完成某些接觸性作業(yè),如在殼體內(nèi)完成清理污垢或打磨表面等。其中,整個(gè)操作手由三個(gè)伺服電機(jī)驅(qū)動(dòng),回轉(zhuǎn)殼體由一個(gè)伺服電機(jī)驅(qū)動(dòng),共四個(gè)伺服電機(jī)。
3,開(kāi)放式機(jī)器人控制器的構(gòu)成3.1 開(kāi)放式機(jī)器人控制器的實(shí)現(xiàn)模式
控制系統(tǒng)以:I:業(yè)控制計(jì)算機(jī)(IPC)為上位機(jī),以插接在IPC主板ISA擴(kuò)展槽內(nèi)的DSP控制卡為系統(tǒng)的控制核心。此種IPC+PMAC雙CPU的控制模式具有實(shí)現(xiàn)方便、功能強(qiáng)大、可靠性高等特點(diǎn),是一種開(kāi)放式的控制系統(tǒng)。整個(gè)控制器采用了模塊化的體系結(jié)構(gòu),工業(yè)PC機(jī)處理非實(shí)時(shí)的部分,實(shí)時(shí)的運(yùn)動(dòng)控制由DSP運(yùn)動(dòng)控制卡來(lái)承擔(dān)。
控制系統(tǒng)采用的DSP運(yùn)動(dòng)控制器為Delta Tan公司的I型PMAC八軸運(yùn)動(dòng)控制卡。PMAC從硬件和軟件上都體現(xiàn)了優(yōu)秀的開(kāi)放性能和強(qiáng)大的運(yùn)動(dòng)控制能力。PMAC卡較一般運(yùn)動(dòng)控制器有很強(qiáng)的處理能力、軌跡特性和輸入帶寬,并且有較強(qiáng)的靈活性,能適用于多總線結(jié)構(gòu)(PC、STD、VME)。
其具體的功能包括:多軸插補(bǔ)計(jì)算、用戶(hù)輔助PLC編程以及模擬量數(shù)據(jù)采集處理。本系統(tǒng)中PMAC控制卡的硬件核心為Mo.tomla的DSP56003數(shù)字信號(hào)處理芯片,伺服周期單軸為55Vs,可接收來(lái)自測(cè)速發(fā)電機(jī)、光電編碼盤(pán)、光柵、旋轉(zhuǎn)變壓器的多種反饋信號(hào),能與多種伺服電機(jī)兼容。PMAC控制卡的優(yōu)良特性為實(shí)現(xiàn)專(zhuān)用機(jī)器人力控制提供了良好的硬件平臺(tái)。
圖1機(jī)器人操作手工作原理圖
1.大臂2.小臂3.執(zhí)行機(jī)構(gòu)(可繞X軸旋轉(zhuǎn))4.不規(guī)則的內(nèi)壁表面5.回轉(zhuǎn)殼體
本系統(tǒng)應(yīng)用的I型PMAC,有j1一J8不同功能的外部接口,可控制1~8軸。本系統(tǒng)中用到了四個(gè)接口,J3(多路撥碼開(kāi)關(guān)I/0)一與ACC一34AA(PMAC的附件)連接;J5(通用數(shù)字輸入和輸出)一控制光耦和中間繼電器;J7(模擬輸出5—8軸)一控制執(zhí)行機(jī)構(gòu)和驅(qū)動(dòng)回轉(zhuǎn)殼體;J8(模擬輸出1—4軸)一控制大臂和小臂電機(jī)。
3.2 膠片粘貼機(jī)器人的硬件平臺(tái)
本系統(tǒng)采用工控機(jī)IPC、PMAC I型8軸運(yùn)動(dòng)控制卡、雙端口RAM(DPRAM)、I/O擴(kuò)展板ACC一34AA、松下、安川伺服電機(jī)及驅(qū)動(dòng)器共四套,用于它們之間控制的接口連接板一塊。其控制系統(tǒng)構(gòu)成圖2所示,本系統(tǒng)自行開(kāi)發(fā)的接口連接板如圖3所示。
在控制系統(tǒng)中,用到了PMAC的兩個(gè)附件:
?、貲PRAM(Dual port RAM):雙端口RAM
?、贏CC一34AA:多路I/O驅(qū)動(dòng)板
其中,DPRAM作為PMAC的附件,是IPC和PMAC之間的通訊橋梁。DPRAM為主機(jī)和PMAC之間可以共享高速內(nèi)存區(qū),通過(guò)DPRAM,1PC與PMAC之問(wèn)可以方便地進(jìn)行無(wú)握手?jǐn)?shù)據(jù)交換。DPRAM在主機(jī)(IPC)和PMAC之間有地址映射,用這個(gè)地址映射匹配兩邊的內(nèi)存地II:、DPRAM對(duì)數(shù)據(jù)實(shí)時(shí)性的保證,提高了控制系統(tǒng)的靈敏性,使操作手實(shí)施主動(dòng)柔順控制時(shí)力誤差減少,力控制精度大大增加。DPRAM與IPC、PMAC的關(guān)系見(jiàn)圖4。
圖3接線連接板外形圖
圖4 DPRAM連接簡(jiǎn)圖
ACC一34AA也是PMAC的附件之一,可以提供64個(gè)光隔離的分立I/()點(diǎn),以32位字分組,有32個(gè)輸入點(diǎn)和32個(gè)輸出點(diǎn)。輸入點(diǎn)可以接收外部輸入控制信號(hào),以便卜位控制器(PMAC)作出決策。比如,在本系統(tǒng)中接受控制面板l:的輸入控制信號(hào)。
圖5 ACC一34AA基本功能圖
輸出點(diǎn)可以接繼電元件,最終控制外圍設(shè)備的起停。ACC一34AA的基本功能如圖5所示。
PMAC運(yùn)行后臼PIc程序,通過(guò)M變量對(duì)ACC一34AA輸入端和輸出端進(jìn)行只讀和只寫(xiě)。
4 開(kāi)放式特種機(jī)器人的力/位混合控制4.1力控制的必要性
為使機(jī)器人在約束環(huán)境中具有靈活性,同時(shí)避免與環(huán)境接觸時(shí)產(chǎn)生過(guò)大的接觸力或力矩,這就要求機(jī)器人終端具備同時(shí)控制其終端位置和力的能力。本系統(tǒng)中,機(jī)器人操作手要在工作空間狹小的回轉(zhuǎn)殼體內(nèi)完成預(yù)定的接觸性作業(yè),此項(xiàng)作業(yè)要求執(zhí)行機(jī)構(gòu)要在殼體內(nèi)壁上定位精確,同時(shí)能夠在不規(guī)則的回轉(zhuǎn)殼體內(nèi)壁表面上不同區(qū)域始終保持接觸,且接觸力的大小恒定或按規(guī)定輸出。因此,本文在位置伺服系統(tǒng)的基礎(chǔ)上考慮力控制,以使操作手獲得對(duì)未知環(huán)境的柔順性。
4.2 基于PMAC力/位混合控制的硬件實(shí)現(xiàn)
為了實(shí)現(xiàn)機(jī)器人末端的力/位混合控制,需要PMAc的模擬輸出分別工作在伺服驅(qū)動(dòng)器的速度和轉(zhuǎn)矩控制模式下,見(jiàn)圖6所示。
圖6伺服驅(qū)動(dòng)器輸出模式
驅(qū)動(dòng)器的速度模式和力矩模式都接受上位控制器(PMAC)的模擬信號(hào)。其中,速度模式的是以控制位置為主要控制指標(biāo),而力矩模式是以控制轉(zhuǎn)矩為主要控制指標(biāo),在力矩模式下可以在額定轉(zhuǎn)矩范匿內(nèi)實(shí)現(xiàn)恒轉(zhuǎn)矩輸出。
為了實(shí)現(xiàn)以上要求,操作手的接觸作業(yè)分三個(gè)步驟:首先操作手在速度模式下到達(dá)預(yù)定的位置并保持一定的姿態(tài),在這種模式下利用電流環(huán)的位置控制更準(zhǔn)確;隨后,對(duì)伺服電機(jī)進(jìn)行模式轉(zhuǎn)換,小臂在力矩模式下豎直抬起,在執(zhí)行機(jī)構(gòu)接近殼體時(shí),執(zhí)行機(jī)構(gòu)的電機(jī)處于自由狀態(tài)以保證能良好的依附于殼體內(nèi)壁;最后,在末端機(jī)構(gòu)與殼體內(nèi)壁接觸時(shí),殼體轉(zhuǎn)動(dòng),依靠反饋信息調(diào)節(jié)小臂伺服電機(jī)的轉(zhuǎn)矩使執(zhí)行器能夠始終與殼體保持接觸并控制一定的接觸力,從而使機(jī)器人能夠在非結(jié)構(gòu)表面下進(jìn)行有效的力控制,完成接觸性作業(yè)。
本系統(tǒng)中PMAC運(yùn)動(dòng)控制器共控制四軸聯(lián)動(dòng),但由于操作手中大臂、小臂、執(zhí)行機(jī)構(gòu)要分別工作于兩種不同模式下,所以實(shí)際占用PMAC的軸通道數(shù)為7個(gè)。在這兩種模式下,驅(qū)動(dòng)器側(cè)接受控制器指令的輸入引腳不同,以松下驅(qū)動(dòng)器為例,速度模式下用14、15引腳,而在力矩模式下用16、17引腳。本系統(tǒng)中PMAC與驅(qū)動(dòng)器模式轉(zhuǎn)換的雙通道連接見(jiàn)圖7。
圖7雙軸通道伺服輸出連接圖
圖7所示兩個(gè)軸通道DACl一DAC2(PMAC的43、44)模擬輸出分別接到伺服驅(qū)動(dòng)器的速度和轉(zhuǎn)矩指令引腳(驅(qū)動(dòng)器側(cè)的14、16)。軸通道1(DACl)的輔助連接是指與其有關(guān)的反饋、驅(qū)動(dòng)器使能和報(bào)錯(cuò)、限位等連接。,如,CHAl一CHCl是通道1的編碼盤(pán)反饋信號(hào),+LIMI和一LIMl是在反方向和正方向的限位信號(hào),AENAI/D1RI是放大器使能信號(hào),決定伺服驅(qū)動(dòng)器的使能,其它類(lèi)似引腳不在詳述。、PMAC的J8有60個(gè)引腳,有四個(gè)軸輸出{通道,每個(gè)軸輸出通道都有一套類(lèi)似的輔助連接,每個(gè)軸輸出通道根據(jù)其相應(yīng)的輔助連接而凋節(jié)模擬輸出,完成伺服功能。在驅(qū)動(dòng)器一側(cè),要實(shí)現(xiàn)兩種模式,需要軸輸出通道的模擬指令信號(hào)在14和16之間切換,如果用一個(gè)軸輸出通道,需要在PMAC和驅(qū)動(dòng)器之間自己搭建電路在外部來(lái)完成此切換,這樣做實(shí)時(shí)性不好,可靠性也不高。,因此本系統(tǒng)采用PMAC的兩個(gè)軸通道來(lái)實(shí)現(xiàn)塒驅(qū)動(dòng)器兩種模式的伺服輸出,這樣做可以不必搭建外部電路,而11保證實(shí)時(shí)性的要求。具體做法是通過(guò)PMAC的J5 1來(lái)改變C—MODE的狀態(tài)。如果單獨(dú)控制兩個(gè)軸通道時(shí),需要兩套輔助連接以保證軸通道的伺服輸出,但實(shí)際上一個(gè)驅(qū)動(dòng)器及外部開(kāi)關(guān)只能提供一套軸通道輔助連接,這需要PMAC在其內(nèi)部完成輸出的切換,通過(guò)設(shè)置I變量中的IX0217 J,這種切換保證在只有一套軸輔助連接的前提下,PMAC對(duì)兩個(gè)軸通道伺服輸出。
4.3 基于PMAC力/位控制的軟件實(shí)現(xiàn)
整個(gè)控制軟件包括實(shí)時(shí)控制軟件與上位機(jī)的系統(tǒng)管理軟件兩部分。實(shí)時(shí)控制軟件包括伺服驅(qū)動(dòng)、PLC監(jiān)控、數(shù)據(jù)采集等;系統(tǒng)管理軟件包括初始化、參數(shù)輸入、雙CPU通訊、殼體作業(yè)規(guī)劃等。為了在PMA(:中實(shí)現(xiàn)操作手的力/位混合控制,控制軟件在Windows平臺(tái)L用VC++6.0編寫(xiě)系統(tǒng)應(yīng)用程序,同時(shí)調(diào)用PMAC中PCOMM32PRO動(dòng)態(tài)連接庫(kù)中的函數(shù)完成對(duì)PMAC的實(shí)時(shí)操作。、
在PMAC的初始化程序中作以下設(shè)置和定義:
其中,Pl為殼體入口處位置的橫坐標(biāo),P2為殼體作業(yè)位置的橫坐標(biāo),P3為殼體作業(yè)位置的縱坐標(biāo),P】00為力矩設(shè)置值。/102為電機(jī)指令輸出地址,1169為小臂電機(jī)DAC輸出限制,c為標(biāo)定小臂角度極限。M162為寄存器中存儲(chǔ)小臂電機(jī)(電機(jī)1)實(shí)際位置值。M168為輸出力矩對(duì)DAC的標(biāo)定值。
控制流程如圖8所示。
5 結(jié)論本文針對(duì)要完成接觸性作業(yè)的特種機(jī)器人,研究了一個(gè)實(shí)用的開(kāi)放式的機(jī)器人控制器。應(yīng)用IPC和PMAC雙CPU的開(kāi)放式結(jié)構(gòu),實(shí)現(xiàn)了兩個(gè)級(jí)別的開(kāi)放度,獲得了較好的人機(jī)交互能力,并在基礎(chǔ)上,對(duì)機(jī)器人進(jìn)行有效的力/位混合控制,給出了具體控制的硬件和軟件實(shí)現(xiàn),此系統(tǒng)能夠使機(jī)器人在非結(jié)構(gòu)表面上完成接觸性操作。該系統(tǒng)在用于非規(guī)則殼體內(nèi)壁表面的貼片作業(yè)中已取得了良好的控制效果。