機器人程式開發都是從一片主控板開始,然後裝上馬達、舵機(伺服馬達)、感測器,才是一個完整的機器人開發平台,普及之前,機器人平台的建構門檻很高,沒有足夠的動手做能力及企圖心,很多關卡難以突破。樂高很早就有自家的機器人開發平台 – Mindstorms,從 1998 年 RCX,2006 年 NXT 到 2013 年 EV3,產品成熟度高,建構的零件取自樂高積木系統,但程式部分主要是自家的圖形化程式開發平台,這時可以用 C 語言的 Arduino 開啟了另一個價格實惠的選擇,雖然組裝需要的技術門檻相對高一些,但也算讓機器人愛好者有個比較容易親近的平台。
Arduino 是開源的開發環境,所以有許多廠商就以 Arduino 為基礎,推出機器人套件,為了簡化建構組裝的過程,樂高相容成為許多廠商選擇的產品開發方向。所以現在市面上可以買到的機器人開發套件,絕對不缺標榜樂高相容的產品。
BBC micro:bit 比 Arduino 晚推出,程式開發平台非常容易上手,主控板的操作門檻比 Arduino 更低,開發年齡層再往低年級學童延伸,這時「樂高相容」的優勢更被開發廠商充分利用,這裡介紹的 Robot:bit 是 BBC micro:bit 的延伸板,把「樂高相容」納入產品規格的考量,的確讓想玩機器人的小朋友輕鬆不少。
Robot:bit 控制板的「樂高相容」是把電路板上預留的安裝孔距設定成 8mm 的倍數,或是把電路板套入另一個可以固定在樂高的外殼裡。KittenBot 的馬達的「樂高相容」則是產品本身就像是樂高零件,可完全融入樂高的結構裡。
樂高相容雙輪機器人 Step by Step
上圖是我設計的兩輪自走車,以樂高為主結構,馬達和控制板都不是樂高系統。自走車可歸類為入門級的機器人,車頭可以安裝感測器或馬達以提供機器人的擴充功能,這個例子是安裝取物的爪子。機器人的開發平台,都一定會有一片主要的微控制板(Microcontroller),常見的譬如 Arduino、micro:bit。必要時會另有擴充板(Extension Board),若要容易安裝、改裝、上手,樂高相容就是最好的選擇。大部分微控制板都有安裝孔,但孔距的標準不一,若能遵循樂高的孔距,讓樂高零件能固定,龐大的樂高零件庫就能隨取隨用。
上圖為了拍照時看清楚構造,18650 電池和 micro:bit 主控板(裝在電池槽後方的插槽裡)都還沒裝上去,這兩樣零件是這個機器人平台運作絕對需要的組件,Robot:bit 是 micro:bit 擴充板,未插入 micro:bit 主控板時,Robot:bit 無法獨立運作。這篇主要是介紹如何借助樂高的優勢,快速建造這個簡單實用的機器人程式開發平台。程式操作部分可參考官方線上詳盡的說明文件。
KittenBot
KittenBot 本身就有完整的機器人和機器人程式開發平台,但這裡只用了 KittenBot 產品線的 Geek 系列動力模組,Geek 系列包含多款馬達和舵機(伺服馬達),都是樂高相容產品,這台自走車使用的兩款馬達外觀如下圖。
大部分樂高相容馬達都只是使用最簡單的杜邦端子接頭,也就是提供一正極、一負極的直流馬達供電,馬達的所有控制都交給控制板。「相容」也就是把通用的 DC 馬達加上樂高相容的外殼,接頭規格可以輕易地和任何主控板或擴充板連結,相容馬達的價位通常比樂高專用馬達便宜,不太可能再去開發自己的專屬接頭,連接的線材也就是最常見的杜邦接頭,但對喜歡動手拼湊的玩家來說,簡易的通用接頭反倒是優勢。Geek 系列馬達以一般的直流馬達和伺服馬達加上相容樂高的外殼,讓手上有樂高零件的玩家多了一個可以快速建構機器人的選擇。
滿足 8mm 的模矩,不管是 Studs 還是 Holes(關於 Studs and Holes 可參考:堆砌或組裝?認真玩樂高的第一課),都算滿足了樂高相容的基本要求,但還有單數倍及雙數倍的問題要克服,通常要配合科技系列比較適合單數,傳統堆砌系列比較適合雙數,左圖高速馬達扣除安裝用的突出部分,大小是 3×3 Studs,算是單倍數,突出的固定孔也正是遵循樂高科技系列的安裝孔配置方式。右圖的 Geek 小馬達同時提供 Studs 及 Holes 兩種安裝的條件,外型尺寸則是單及雙的倍數都有,但因為厚度是 2 個 Studs,若要安裝在科技系列裡,必須使用兩片厚度 1/2 Studs 的零件來填補至 3個 Studs,比較能相容在科技系列的單倍數模矩中。
自走車可以拆解成兩個主要部分,左圖是控制板和兩個 Geek 高速馬達,Geek 高速馬達不只是相容樂高,馬達本身就可以當成自走車的結構,目前的設定是馬達直接驅動輪子,沒有透過任何齒輪,由於這馬達定位是高速馬達,直驅時確實能已經提供相當不錯的車速。右圖是附加在自走車上的爪子,靠一顆 Geek 小馬達推動,小馬達左右各一片 1/2 Studs 厚度的零件讓這個馬達模組固定在樂高科技系列單數倍 Studs 的結構模矩裡。
自走車的車身設計
由於高速馬達的外殼構造本身就是很理想的結構零件,所以拿掉馬達的構造只要有連結功能就可提供整台自走車不錯的強度。下圖的右側就是馬達的空間。由於車身結構可以利用 Geek 高速馬達本身就是結構用零件的特性,組合的彈性非常大,比較需要注意的是下圖左側,車身和 Robot:bit的連結零件,這裡使用了兩種可以移動半個 Stud 的零件,功用就是讓控制板的中心線可以對正車身的中心線,不會因為單數或雙數倍數的問題讓控制板偏移一個 Stud。
自走車的爪子設計
上圖是連結車身及爪子的支架,兩片衣架型的薄板夾著的空間就是 Geek 小馬達安裝的位置,上右圖比上左圖多了四個連結器,用途是把支架固定在車身 Geek 高速馬達的上方。延伸的兩個 6-3 L 臂是固定樂高爪子的支架。上圖的支架設計不是百分之百完美,6-3 L 臂延伸的基準線並未對齊馬達中心線,大約是半個 Stud 的差距,但馬達和樂高零件都容許公差,所以功能上沒問題,下右圖的微調版本藉著調整支撐方式,才讓支架的基準線能對準小馬達,但支撐的強度比直接使用 L 臂差,會有下垂的問題,再加上 Geek 小馬達凸出的動力轉動軸又比一個 Stud 長了一點,所以這個相容樂高的 Geek 小馬達的在安裝上還是必須費點心思。
為了解決上面提到,KittenBot Geek 系列樂高相容小馬達裡「不相容」的部分,可使用十字軸系列零件來解決,除了強化整體結構,調整的彈性就比單靠 Pin 和 Hole 的結合大許多,適當的零件組合讓寬容度打破 8mm 的限制,最後階段這些細節的調整兼顧了爪子的水平和結構的強度,完成這個視覺和功能兼顧的自走車平台(修改二版)。
您好
感謝貴網站對kittenbot相容樂高的介紹。
kittenbot台灣分公司,感謝您!
我們有更多相容性的配件加入,希望未來能與貴網站多多交流與配合。
從 mBot 到 kittenbot,Gmii 對產品的眼光我非常佩服,也持續關注並購入貴公司產品創作,有機會還會繼續介紹!