王子祺
一天我在網(wǎng)上看到一個(gè)“小賤鐘”的視頻,視頻里的機(jī)械手能寫出當(dāng)前時(shí)間,但呈現(xiàn)的數(shù)字僅是一個(gè)可識(shí)別的狀態(tài),歪歪扭扭的非常不標(biāo)準(zhǔn),有沒有辦法改變這一情況?
通過下載資料和結(jié)構(gòu)圖,我發(fā)現(xiàn)小賤鐘其實(shí)是一個(gè)凸五連桿機(jī)械手的結(jié)構(gòu):兩個(gè)舵機(jī)帶動(dòng)兩個(gè)大臂運(yùn)動(dòng),兩個(gè)大臂再帶動(dòng)兩個(gè)小臂,最后控制頂端的機(jī)械手做位移動(dòng)作;加上兩個(gè)舵機(jī)之間的間距,一共五個(gè)連桿。
目前,這種機(jī)械手還存在一定缺憾,只限于非實(shí)時(shí)、基于示教型的模式,只有先通過計(jì)算機(jī)記錄人工走的軌跡,才能把該軌跡寫出來。我的研究就是想解決這類機(jī)械手的實(shí)時(shí)性與可編程性的問題。
一、制作實(shí)物
采用SolidWorks三維實(shí)體設(shè)計(jì)軟件設(shè)計(jì)平面五連桿機(jī)械手的每個(gè)零件;將這些零件在Solidworks中組裝,進(jìn)行虛擬仿真,對(duì)模擬過程中出現(xiàn)的問題進(jìn)行修正與完善。當(dāng)滿足實(shí)驗(yàn)需求后,將零件圖傳給工廠。最后組裝零件,形成實(shí)體結(jié)構(gòu)平臺(tái)。
二、優(yōu)化選擇,采集數(shù)據(jù)點(diǎn)
記錄各點(diǎn)在X、Y坐標(biāo)系下的轉(zhuǎn)角數(shù)據(jù)。以平臺(tái)的左下角為原點(diǎn),建立平面直角坐標(biāo)系,在橫坐標(biāo)上選擇均勻分布的6個(gè)坐標(biāo)點(diǎn),在縱坐標(biāo)上選擇同樣的5個(gè)坐標(biāo)點(diǎn),共30個(gè)抽樣測試坐標(biāo)點(diǎn);通過編寫測試軟件,使之可通過兩個(gè)電位計(jì)調(diào)整舵機(jī)脈沖信號(hào)的寬度(500μs至2500μs之間),從而以將近2000級(jí)的精度分別控制兩個(gè)舵機(jī),還可以把當(dāng)前值顯示在屏幕上。
利用這一原理,對(duì)每個(gè)取樣坐標(biāo)點(diǎn)進(jìn)行人工定位,并記錄每個(gè)坐標(biāo)點(diǎn)對(duì)應(yīng)的兩個(gè)舵機(jī)的轉(zhuǎn)角數(shù)值,共得到30對(duì)離散的X、Y坐標(biāo)系上的數(shù)據(jù)樣本。
三、處理數(shù)據(jù)
根據(jù)采集的坐標(biāo)樣本數(shù)據(jù),得出矩陣表。將采集到的30對(duì)數(shù)據(jù)按列分成6組,并錄入電腦(此時(shí)每組數(shù)據(jù)的x值不變),用Excel軟件對(duì)每組數(shù)據(jù)中的兩個(gè)舵機(jī)的角度值與y值進(jìn)行高次方程多項(xiàng)式函數(shù)擬合,要求方程函數(shù)盡量滿足采樣點(diǎn)采得的數(shù)據(jù)(3次到5次多項(xiàng)式),再用R2值對(duì)其精度進(jìn)行評(píng)價(jià)(R2值等于1時(shí)效果較好),找到左右兩個(gè)舵機(jī)的角度值隨y坐標(biāo)的變化關(guān)系,最后得出6組、12個(gè)方程函數(shù)。
這時(shí),以0.15(cm)作為y的增量(因?yàn)楣P尖粗度為0.3cm),根據(jù)方程得到的函數(shù)算出這6列每一個(gè)x,y坐標(biāo)點(diǎn)所對(duì)應(yīng)的 α,β值。以行為組,用同樣的方法算出能夠覆蓋整個(gè)平面的方程函數(shù)組,共55組,110個(gè)。
最后,以0.15(cm)作為x的增量,帶入方程,求出與每一個(gè)(x,y)坐標(biāo)對(duì)應(yīng)的(α,β)值,再將所有數(shù)據(jù)整理到一起就得到一個(gè)x,y坐標(biāo)平面的1.5mm坐標(biāo)精度的75×55 的轉(zhuǎn)角矩陣表。通過這個(gè)矩陣表,就可以為任何一個(gè)x,y坐標(biāo)找到與它對(duì)應(yīng)的α,β值了,從而達(dá)到精確控制舵機(jī)的目的。
四、書寫實(shí)驗(yàn)
將一個(gè)數(shù)字帶入矩陣表,對(duì)每個(gè)點(diǎn)采用邏輯與運(yùn)算數(shù)學(xué)處理,在計(jì)算機(jī)中找到該數(shù)字的表達(dá)矩陣,連接矩陣中的各個(gè)相鄰點(diǎn)就形成了筆的運(yùn)動(dòng)軌跡;按照從左到右,從上到下的順序,形成書寫的數(shù)據(jù)串;編寫舵機(jī)控制程序,按照所生成的書寫數(shù)據(jù)串逐點(diǎn)執(zhí)行。
比如,從點(diǎn)(1.6,1.3)開始寫,那么程序就會(huì)進(jìn)行數(shù)學(xué)與運(yùn)算,找到這個(gè)點(diǎn)所對(duì)應(yīng)的微秒值組(1703μs,608μs),之后同時(shí)給兩個(gè)舵機(jī)寬度為1703μs和寬度為608μs的脈沖信號(hào),此時(shí)舵機(jī)帶動(dòng)兩個(gè)大臂轉(zhuǎn)到一個(gè)位置,通過公式算出這兩個(gè)位置分別為距零位108.27°和距零位9.72° ,若想讓機(jī)械手,也就是筆尖往右上方位移2.12mm到達(dá)點(diǎn)(1.75,1.15),程序會(huì)重新找到對(duì)應(yīng)的微秒值組(1688μs,606μs),將之后的脈沖信號(hào)發(fā)給舵機(jī)完成位移,同理可求出此時(shí)兩連桿距零位分別為106.92°和9.54°以及其他點(diǎn)的位移,最終在平臺(tái)上得到書寫筆跡。
通過以上技術(shù)路線可得到一個(gè)滿足于對(duì)凸五連桿機(jī)械手進(jìn)行控制的轉(zhuǎn)置矩陣表。該方法的優(yōu)點(diǎn)是克服了幾何解析法的不足,及存在非線性和離散性不可克服的誤差。
由于系統(tǒng)結(jié)構(gòu)中每個(gè)連接點(diǎn)都可以活動(dòng),會(huì)有間隙,有可能造成一定誤差。未來,我還將研究該系統(tǒng)的公差補(bǔ)償方法,在每個(gè)點(diǎn)上做出補(bǔ)償表,提高作業(yè)精度,將此結(jié)構(gòu)與圖像識(shí)別技術(shù)相結(jié)合,實(shí)現(xiàn)自動(dòng)生成矩陣表。
發(fā)明與創(chuàng)新·中學(xué)生2015年3期