王江華+趙燕
摘要:為了將人們的雙手從重復(fù)勞累且危險(xiǎn)的工作中解放出來(lái),故設(shè)計(jì)并制作一款多關(guān)節(jié)示教工業(yè)機(jī)器人,使之替代人類來(lái)完成重復(fù)性高且復(fù)雜并具有一定危險(xiǎn)性的工作。設(shè)計(jì)主要是對(duì)多關(guān)節(jié)示教工業(yè)機(jī)器人的運(yùn)動(dòng)路徑進(jìn)行控制,讓其可以根據(jù)程序設(shè)定優(yōu)化的路徑或者示教路徑進(jìn)行自主運(yùn)動(dòng),使用機(jī)械夾手完成指定的任務(wù),同時(shí)還能借助于電腦上位機(jī)來(lái)實(shí)時(shí)操作以便完成有效的動(dòng)作。課題研究對(duì)于示教機(jī)器人領(lǐng)域的研究和發(fā)展具有一定的意義。
關(guān)鍵詞:多關(guān)節(jié);示教;示教路徑;自主運(yùn)動(dòng)
目前,在高端制造業(yè)中,工業(yè)機(jī)器人儼然已經(jīng)成為工業(yè)生產(chǎn)中不可忽視的重要組成部分,它的智能性、高效性、精確性成為能夠替代人類的巨大優(yōu)勢(shì)。設(shè)計(jì)多關(guān)節(jié)示教工業(yè)機(jī)器人,主要是對(duì)它的運(yùn)動(dòng)路徑進(jìn)行控制,讓其可以根據(jù)程序設(shè)定優(yōu)化的路徑或者示教路徑進(jìn)行自主運(yùn)動(dòng),使用機(jī)械夾手完成指定的任務(wù),同時(shí)還能借助于電腦上位機(jī)來(lái)實(shí)時(shí)操作,以便完成有效的動(dòng)作。在工業(yè)機(jī)器人中,大多數(shù)的工業(yè)機(jī)器人采用示教編程方式,先用人工操作的方式來(lái)起到示范的目的和作用,讓工業(yè)機(jī)器人記住相關(guān)有效動(dòng)作,進(jìn)而使之能夠在人工不干預(yù)的情況下進(jìn)行預(yù)期的動(dòng)作。這種方法可以大大節(jié)省開(kāi)發(fā)周期和成本,便于在不同的操作環(huán)境下進(jìn)行,適應(yīng)性強(qiáng),因此,本研究對(duì)于示教機(jī)器人領(lǐng)域的研究和發(fā)展具有一定的意義。
1總體方案設(shè)計(jì)
多關(guān)節(jié)示教工業(yè)機(jī)器人硬件采用STM32F103作為主控核心,利用松下MINAS系列的交流伺服電機(jī)來(lái)控制各關(guān)節(jié)的運(yùn)動(dòng);軟件利用RTX小型嵌入式系統(tǒng)。RTX嵌入式系統(tǒng)是可裁剪的,用戶可以根據(jù)自己的情況對(duì)系統(tǒng)進(jìn)行配置,對(duì)于這種多任務(wù)的控制系統(tǒng),使用嵌入式操作系統(tǒng)可以使軟件設(shè)計(jì)更加高效、方便。示教盒采用手輪脈沖發(fā)生器,手輪脈沖發(fā)生器一直使用在工控場(chǎng)合,它可以產(chǎn)生精確數(shù)量的脈沖,滿足精準(zhǔn)定位的要求,且脈沖頻率可由用戶來(lái)控制。通過(guò)通道選擇旋鈕、倍率選擇旋鈕可以快速切換控制關(guān)節(jié)和脈沖倍頻,從而控制各個(gè)電機(jī)的轉(zhuǎn)速。
2系統(tǒng)硬件設(shè)計(jì)
2.1電源模塊設(shè)計(jì)
本系統(tǒng)使用交流220V供電,然后分成4路分別為不同的硬件供電。220V交流電直接為伺服電機(jī)及其驅(qū)動(dòng)器供電;交流220V經(jīng)過(guò)開(kāi)關(guān)電源后輸出直流24V,為伺服驅(qū)動(dòng)器控制電路供電,同時(shí)為伺服電機(jī)剎車、氣動(dòng)電磁閥供電;直流24V經(jīng)過(guò)DC-DC降壓模塊輸出直流5V,為伺服電機(jī)編碼器供電和部分芯片、傳感器供電;直流5V經(jīng)過(guò)LDO穩(wěn)壓器輸出直流3.3V,為主控制器供電。
2.2伺服電機(jī)控制模塊設(shè)計(jì)
本系統(tǒng)伺服電機(jī)控制采用位置控制時(shí),需要的控制信號(hào)有脈沖輸入、方向輸入、伺服選通、脈沖使能、正轉(zhuǎn)限位、反轉(zhuǎn)限位、剎車使能等。因傳輸距離較遠(yuǎn),故采取RS-422差分傳輸,將STM32F103的輸出信號(hào)經(jīng)過(guò)AM26LS31CD芯片轉(zhuǎn)換成差分信號(hào),再輸入到伺服電機(jī)驅(qū)動(dòng)器。設(shè)計(jì)共用到6個(gè)伺服電機(jī),圖1為兩路伺服電機(jī)控制電路,其他4路控制電路類似。
2.3示教盒模塊設(shè)計(jì)
示教盒模塊通過(guò)手輪脈沖發(fā)生器輸出差分信號(hào):A+、A-、B+、B-,另外還有6路通道選擇信號(hào),3路倍率選擇信號(hào),1個(gè)按鈕,1個(gè)自鎖按鈕,2個(gè)指示燈。脈沖發(fā)生器為5v供電,指示燈為24V供電。電路如圖2所示。
3系統(tǒng)軟件設(shè)計(jì)
多關(guān)節(jié)示教工業(yè)機(jī)器人控制系統(tǒng)任務(wù)較多,同時(shí)又要求系統(tǒng)具有快速的響應(yīng),為了實(shí)現(xiàn)這些功能和要求,設(shè)計(jì)采用RTX小型嵌入式系統(tǒng)。系統(tǒng)軟件由多個(gè)具有不同功能的模塊組成,利用RTX來(lái)協(xié)調(diào)各模塊的工作。其中主控制器的功能模塊有:主控制模塊、示教控制模塊、伺服電機(jī)控制模塊等。輔助控制器的功能模塊有:脈沖計(jì)數(shù)模塊、限位保護(hù)模塊等。整個(gè)軟件控制程序的主流程框圖如圖3所示。
3.1示教控制模塊
示教模塊主要負(fù)責(zé)對(duì)機(jī)器人運(yùn)動(dòng)方式及路徑的規(guī)劃,通過(guò)1個(gè)6通道旋轉(zhuǎn)開(kāi)關(guān)選擇當(dāng)前控制的是哪個(gè)關(guān)節(jié),1個(gè)3通道旋轉(zhuǎn)開(kāi)關(guān)選擇當(dāng)前的脈沖倍率。手輪每撥動(dòng)一下,會(huì)發(fā)出一個(gè)脈沖,MCU捕捉到脈沖后,判斷手輪旋轉(zhuǎn)方向,乘以當(dāng)前的倍率,然后讓選定通道輸出指定個(gè)數(shù)的脈沖,控制手輪的旋轉(zhuǎn)速度就可以控制電機(jī)的轉(zhuǎn)速。當(dāng)機(jī)器人的機(jī)械夾手移動(dòng)到預(yù)定位置后,將當(dāng)前位置進(jìn)行保存,從而可確定一個(gè)示教點(diǎn)。
3.2電機(jī)控制模塊
系統(tǒng)采用位置控制方式對(duì)交流伺服電機(jī)進(jìn)行控制,需要的控制信號(hào)為脈沖信號(hào)、方向信號(hào)、脈沖指令使能信號(hào)和伺服使能信號(hào)。當(dāng)伺服使能信號(hào)使能時(shí),伺服驅(qū)動(dòng)器才能控制伺服電機(jī)工作;脈沖指令使能信號(hào)使能時(shí),脈沖指令才能被伺服驅(qū)動(dòng)器接收。方向信號(hào)決定電機(jī)的正反轉(zhuǎn);電機(jī)的轉(zhuǎn)速由輸入脈沖信號(hào)的頻率決定,轉(zhuǎn)動(dòng)的角度由脈沖信號(hào)的頻率的個(gè)數(shù)決定。需要注意的是,控制電機(jī)時(shí)一定打開(kāi)剎車,否則可能造成電機(jī)堵轉(zhuǎn)。
3.3脈沖計(jì)數(shù)模塊
該模塊主要功能是實(shí)現(xiàn)機(jī)器人各關(guān)節(jié)的定位。因?yàn)樗欧姍C(jī)編碼器采用的是增量式編碼器,不具有斷電記錄各關(guān)節(jié)位置的能力。當(dāng)系統(tǒng)斷電后,采用備用電池為編碼器和控制器供電,因此系統(tǒng)可以一直記錄各關(guān)節(jié)的位置。編碼器輸出信號(hào)是正交信號(hào)和機(jī)械過(guò)零信號(hào),因此可以直接使用MCU內(nèi)部定時(shí)器的編碼器模式,對(duì)脈沖進(jìn)行計(jì)數(shù),檢測(cè)到過(guò)零信號(hào)后復(fù)位計(jì)數(shù)器,可以防止計(jì)數(shù)器的累計(jì)誤差。機(jī)器人的各關(guān)節(jié)不是360°旋轉(zhuǎn),都有一定的范圍限制,經(jīng)過(guò)測(cè)試得出各關(guān)節(jié)的轉(zhuǎn)動(dòng)角度后,換算成脈沖個(gè)數(shù)。若檢測(cè)到的脈沖個(gè)數(shù)超出最大限值,則向主控制器發(fā)出報(bào)警信號(hào),主控制器會(huì)立即關(guān)閉驅(qū)動(dòng)脈沖的輸出,停止電機(jī)的運(yùn)動(dòng),直到報(bào)警解除。
4整機(jī)測(cè)試
4.1伺服驅(qū)動(dòng)器參數(shù)的設(shè)置
伺服控制系統(tǒng)自身就是一個(gè)閉環(huán)負(fù)反饋系統(tǒng),因此伺服驅(qū)動(dòng)器需要根據(jù)不同的負(fù)載情況,對(duì)一些反饋系數(shù)、控制系數(shù)進(jìn)行合適的設(shè)置。驅(qū)動(dòng)器的結(jié)構(gòu)如圖4所示。經(jīng)過(guò)參數(shù)調(diào)整,使電機(jī)工作在一個(gè)合適的狀態(tài)。
參數(shù)調(diào)整的步驟如下:通過(guò)速度響應(yīng)前饋系數(shù)P21,將速度前饋系數(shù)設(shè)為0%;設(shè)置速度環(huán)增益P03,使得速度環(huán)增益較大但不至于發(fā)生振蕩;設(shè)置位置環(huán)增益P20保證系統(tǒng)有足夠大增益而不至于發(fā)生振蕩,可以加快位置調(diào)節(jié),但位置環(huán)增益控制著機(jī)械剛性,若增益過(guò)大有可能導(dǎo)致振蕩;設(shè)置速度環(huán)積分時(shí)間常數(shù)P04取較小的速度積分時(shí)間常數(shù),使得位置偏差值能得到較快的削減;重新設(shè)置速度響應(yīng)前饋系數(shù)P21以獲得較快的調(diào)節(jié)響應(yīng)。
4.2整機(jī)功能實(shí)現(xiàn)
整機(jī)最后實(shí)現(xiàn)了基本的示教和夾取功能,通過(guò)手輪控制機(jī)器人的運(yùn)動(dòng)路徑,氣動(dòng)夾手夾取物體,可以完成程序設(shè)定的任務(wù)或者示教任務(wù)。整機(jī)實(shí)物如圖5所示,包含機(jī)體、控制箱和示教盒。
5結(jié)論
本設(shè)計(jì)研究的內(nèi)容是多關(guān)節(jié)工業(yè)機(jī)器人的運(yùn)動(dòng)控制和示教控制。通過(guò)STM32微控制器控制整個(gè)系統(tǒng)使之能夠根據(jù)程序設(shè)定優(yōu)化的路徑或者示教路徑進(jìn)行自主運(yùn)動(dòng),從而代替人類完成一些重復(fù)性高、勞動(dòng)強(qiáng)度大且危險(xiǎn)的工作。本研究對(duì)于示教機(jī)器人領(lǐng)域的研究和發(fā)展具有一定的意義。