主題:怎麼製作自己的第一隻機器人
日期:2017.07.04 (二)
時間:19:30 - 20:30
地點:清大創新育成大樓9樓920室
講者:黃子欣 (九號空間創辦人)
七月份機器人之夜的主講人是『九號空間』的創辦人阿里哥。主題是如何製作自己的第一隻機器人。
在進入主題前,阿里哥分享了他創立九號空間的目標跟宗旨,除了希望推廣機器人相關知識和資訊外,另一方面也希望可以讓熱愛機器人的朋友們能有一個平台可以聚在一起,分享及討論機器人相關的技術。
在開始之前,阿里哥先和大家一起回顧了一些機器人的基礎知識
什麼是機器人
如何確定自己做出來的東西稱得上是機器人?首先回顧機器人的定義:人類製造的機械裝置,能接收周邊環境的資訊、做出自主判斷並產生行動來回應、或達成特定任務。也就是說一個機器人必須要具備感知環境、做出判斷、並產生行動這三項能力。以踢球為例: 機器人首先要能看得到球(感知環境),接著判斷要踢球(作出判斷),最後把踢球踢出去(產生動作),這一系列的過程跟人類足球員踢球的過程是一樣的。
Robot這個字的來源
機器人(Robot)一詞源自於捷克的一本小說:羅梭的萬能工人,原本在捷克語是工人的意思。機器人學(Robotics)一詞則是在二十年之後,才在艾薩克艾西莫夫的小說中出現。
機器人的分類
機器人有許多種分類方式。其中一種常用的分類法是將機器人分為工業型和服務型。服務型機器人可以再細分成家庭用和專業用的機器人。工業型機器人也就是協助人類製造的機器人,例如機械手臂等等。家用機器人,例如娛樂機器人,掃地機器人。專業機器人則有醫療機器人、農業機器人等等。這次的演講著重在介紹如何製作第一隻娛樂用機器人。
機器人涵蓋的知識領域
著手製作機器人,至少需具備五項能力:機械、仿生、電子、電機、資訊工程。製作機器人的過程中,若欠缺某一項能力,很容易就無法完成,因而中斷了玩機器人的興趣。所以如果要持續維持這項興趣,除了要有恆心毅力外,也要保持不斷學習的精神並努力克服問題。
如何製作第一隻機器人
(可參考製作機器人的步驟有完整的介紹)
阿里哥建議可以依循著下列的八個步驟,來製作第一隻機器人的目標。他也同時以九號空間開發的果醬機器人為實例,讓聽眾更容易了解各個步驟的意義。這八步驟包含:
- 定義機器人的功能
- 決定機器人的平台
- 選擇機器人的控制方式
- 選擇驅動器
- 選擇控制單元
- 選擇感知器
- 結構設計
- 程式控制
定義機器人的功能
阿里哥提醒新手們,第一隻機器人建議不要太困難或複雜,最好以進行簡單的單一任務為目標,慢慢累積成就感和經驗。例如當初阿里哥在設計果醬機器人時,主要就是希望可以提供喜愛機器人的入門玩家有一個容易上手的學習平台。
決定機器人平台
接下來要決定機器人的外觀和載具,像是機械手臂、八腳蜘蛛、四輪車等。同時也決定機器人要如何移動,用雙腳、四肢、八爪或是用輪子等等。阿里哥用時下最火紅的Pepper為例,實際上用雙腳順暢的移動對目前的機器人來說還是略微困難,因此Pepper的開發團隊最後是採用輪子的移動方式。阿里哥也跟我們提到九號空間的果醬機器人採用雙腳移動,其實是因為當初自己覺得人形機器人很帥,像鋼彈,鋼鐵人等等的。不過在投入人型機器人領域一段時間後有了新的體悟,人形機器人其實不侷限一定要有手有腳才算,只要可以給人們『感覺像人』就可以視為廣義的人形機器人了。
控制機器人
機器人的控制主要可以分為三大類: 有線控制,無線控制自主及自主控制。有線控制:透過電線、網路線來控制,無線控制:使用紅外線、藍芽、WiFi、GPRS、無線射頻來控制,以及自主控制。果醬機器人主要是以WiFi控制。
選擇驅動器、控制板和感知器
接下來就要開始選擇各式格樣的基礎零件,阿里哥建議初學者可以從驅動器開始挑選,例如直流馬達、伺服機等。接下來選擇控制板,包括單晶片跟驅動板,最後是感知器,攝影機、超聲波測距儀等等。阿里哥建議新手在選擇馬達時要特別注意扭力輸出,以免裝上去之後轉不動。另外就是要確定馬達的用途再去選購。控制板的部分,對於不是電機專長的的朋友,選用市面上常見的控制板比較好,感知器也建議不要用太冷門的感知器,以免之後不容易找到可配合的控制板,在遭遇問題時也較不容易找到支援。
講到這裡,阿里哥介紹了美國科幻小說三巨頭之一 —— 艾薩克・艾西莫夫提出的機器人三法則:機器人不得傷害人類,或因不作為使人類受到傷害;除非違背第一定律,機器人必须服從人類的命令;除非違背第一及第二定律,機器人必须保護自己。以及第零定律:機器人不得傷害人類整體,或因不作為使人類整體受到傷害。在機器人尚未出現的時代,艾西莫夫就在他的小說裡提出了這相關點。然而在機器人相對普遍的現代,大家開始思考是否該遵守舊時代的規則呢?那麼戰爭用機器人是否該存在呢?這的確是個發人深省的問題。
設計和組裝機器人
回到正題,各式各樣的零件都選完之後,來到步驟七:組裝和設計機器人。從想法到視覺化、繪圖、打樣再做出成品,這個步驟看似簡單,卻很常常是最耗時費工的部分。果醬機器人在這部分前前後後至少做了至少上百次的修改和無數的3D列印樣品,才完成了眼前的果醬機器人。
和機器人溝通
最後一個步驟:和機器人溝通,也就是編寫程式的部分。這是重要的步驟,可以視為賦予機器人的骨架靈魂。市面上的控制板通常會提供軟體介面供開發者使用。這部分特別要提醒的是在編寫程式時,如果不需要讓機器人產生動作,電源要記得先關閉。因為如果通著電,馬達可能會產生不在預期內的動作,而造成損壞。另外,如果電源打開後,機器人沒有反應做出期望的動作或是持續抽動,也需要迅速將電源關閉。因為這些現象很可能是馬達的轉向錯誤或是零件間產生了干涉,若不即時關閉電源也很可能導致損毀。另外,在每次修改編寫的程式時,也建議另外存一個新檔案而不要使用覆寫的方式作修改,以免更改後若動作不如預期,需要恢復原程式時,求助無門。
活動的最後階段是問答時間,大家都很踴躍的提出自己的想法來討論。有興趣的朋友可以在當天的活動影片中找到這些討論。
編輯:柏仁