Jose Julio 是一名黑客,同時作為機(jī)器械愛好者,他也有過一些機(jī)器人項目的經(jīng)驗。話說有一次 Julio 想做一部屬于自己的3D打印機(jī),但當(dāng)他從3D打印機(jī)愛好者論壇RepRap買來一切所需的部件后,卻有東西讓他改變主意了。
原因是Julio的愛女很喜歡那種游樂園里面的桌上冰球游戲,為滿足女兒心愿的Julio靈機(jī)一動:步進(jìn)馬達(dá)、驅(qū)動器、軸承、控制機(jī)械部件運作的電路板、甚至是運送噴頭的傳送帶都已經(jīng)集齊了,以上這些原本為3D打印而設(shè)的部件,同時難道不也是桌上冰球機(jī)器人的基本材料?

于是這位有愛的黑客爸爸就開始動工了。和3D打印機(jī)最大的不同是,桌上冰球需要一張桌子,Julio 買來了便宜的木板做成了一張100x60cm的木桌。然后為了實現(xiàn)桌上冰球上氣流問題,經(jīng)過一輪實驗,他發(fā)現(xiàn)有一個方法即簡單而成本足夠低:只需要兩只二手PC風(fēng)扇,另外他在這塊木板上鉆下均勻的小孔,這樣整個表面就成為一個有氣流浮動的桌面冰球桌了。
不過整個項目最大的挑戰(zhàn)仍然是機(jī)器人部分,Julio采用的是三馬達(dá)設(shè)計(兩個負(fù)責(zé) Y 軸移動,另外一個負(fù)責(zé) X 移動),負(fù)責(zé)打球的機(jī)器人則安裝在本來是為3D打印機(jī)而設(shè)的傳送帶上。為了讓整條傳送帶足夠耐用以及讓機(jī)器人身手足夠快捷,Julio在材料上作了一些改動,比如他將運送帶上的金屬支架,換成從風(fēng)箏上取下來的碳纖管,這樣做能大大減低機(jī)器人的重量。
至于軟件方面,Julio 就不能使用 RepRap 提供的驅(qū)動了。因為冰球機(jī)器人和3D打印噴頭的行動特點最大的不同是,前者需要不停地調(diào)整自己的位置,根據(jù)冰球的軌跡接受新的加速度和路標(biāo)命令,而后者僅僅是一個均勻的點對點運動。所以 Julio 用精簡的 Arduino 語言驅(qū)動步進(jìn)馬達(dá),以保證機(jī)器人能夠以極高速度的情況下靈活運作。
傳感方面,Julio 找來一塊型號為 CMUCAM5 的 Pixy 傳感器,這種傳感器價格低廉而且能與 Arduino 完美運行,在這里,它負(fù)責(zé)通過顏色鎖定冰球的位置。而至于機(jī)器人的“眼睛”,則由一架在 PS3 上玩動作感應(yīng)游戲所用的攝像頭 PS EYE 負(fù)責(zé)。
整部冰球機(jī)器人的工作大致可以實現(xiàn)了:游戲用的冰球被涂上特定的顏色用于傳感器識別,高達(dá)刷新幀率 60Hz 的 PS EYE 則負(fù)責(zé)捕捉冰球的軌跡,之后通過電腦計算后驅(qū)動機(jī)器人撞擊冰球。而且 Julio 提到這對攝像機(jī)的畸變要求很高,所幸這部 PS EYE 雖然分辨率非常低(320 x 240),但幾乎沒有畸變。

對于一部合格的冰球機(jī)器人來說,需要透過攝像頭拍下兩個特定幀數(shù)內(nèi)冰球的位移,從而計算出冰球的軌跡,而且對于桌上冰球來說,還需要考慮到球撞擊到墻后的運動軌跡,所以這花了這位黑客爸爸的一些功夫。
不過目前來說,Julio 對這部冰球機(jī)器人還是十分滿意的,因為他使用的都是現(xiàn)成、低廉的材料,而且整個系統(tǒng)安裝十分容易,機(jī)器人要從桌面移除也只要六根螺絲。

目前這個冰球機(jī)器人還在不斷改進(jìn)之中,它的水平可以輕松擊敗一個小孩(難度還可以調(diào)低),但如果是一個有技術(shù)的成年人的話(他強(qiáng)調(diào)是他自己),要贏分還是不難的。Julio 表示將來會繼續(xù)完善這部機(jī)器人的穩(wěn)定性和功能,以及加入比賽規(guī)則等功能,甚至以后他會再做一部姐妹機(jī),實現(xiàn)機(jī)器人在冰球場上對打。
不過他認(rèn)為最重要的,是對于這次整個項目一直陪伴在身邊的女兒來說,一定受益不淺!