LMS行政E化暨班級社群教職員工數位歷程檔線上手冊登入
知識---Android + 樂高NXT
by smf12312, 2011-07-30 18:41:51, 人氣(1184)

淺談智慧型手持裝置結合機器人的應用?Android + 樂高NXT

機器人一向能抓住大小朋友的目光,筆者自然也不例外。我們也期待機器人能以更多功能、更全面地出現 在我們的生活中。在機器人平台方面,樂高機器人挾其既有大量通用零件以及多元程式開發環境兩大優勢,在教育性機器人市場可說是相當吃得開。可擴充的硬體周 邊例如感測器、馬達以及各種擴充板等高達數十種;程式開發環境從文字式的C、C++、Java到圖形化的LabVIEW、MSRDS(Microsoft Robotics Developer Studio)、Google App Inventor,支援之豐富也是其他機器人平台所未見。

然而,萬丈高樓平地起,在機器人控制的課程中,不論是使用那一種硬體平台以及開發程式語言,終究還是要從最 基本的I/O控制開始學習。首先必須下指令控制馬達運轉的方向與速度,如果使用伺服馬達的話則可以進一步精準控制馬達轉動的位置。下圖為常見的機器人差速 驅動平台(differential drive platform),意即機器人的動作是由左右兩輪的速差所決定的。兩輪等速正向轉動會使機器人前進;反之則後退;若兩輪轉速不同時,則機器人會朝轉速較 低的那一輪進行轉彎,迴轉半徑視速差大小而定,速差愈大則愈趨近原地旋轉。

 

圖1  差速驅動機器人平台

*請注意:沒有兩顆馬達是完全相同的,所以光是要讓機器人直線前進就是一件非常不容易的事。


接著則是讓機器人透過感測器所量測到的各種物理量進 行判斷後執行對應的動作,例如觸碰感測器被壓下之後進行避障動作,或是超音波感測器偵測到障礙物之後試著把物體搬開…等。近年來非常熱門的WRO國際機器 奧林匹克競賽中,多半使用黑色軌跡線讓機器人得以根據反射光強度的變化沿著黑線前進。雖然這樣的機器人離所謂的「智能」還很遙遠,但也的確讓原本枯燥的電 腦程式課程有趣許多(遙想筆者高中的程式作業就是一直畫聖誕樹…)。

圖2  將NXT機器人資訊回傳到手機螢幕上

 

另一方面,手機在生活中扮演的角色也起了巨大的變化,我們對於手機的期待早已不在於簡訊可以存幾封?或是支 援那些檔案格式?這些都是基本到不行的東西。現在談的是可不可以Facebook打卡?憤怒鳥(Angry Birds)或是切水果會不會lag?出門什麼都可以不帶,就是不能忘了帶手機!君不見路上人手一機在那邊點點點畫畫畫,兩人面對面吃飯,沒空聊天卻忙著 將桌上的菜照相後上傳噗浪或是Facebook,這是智慧型手持裝置對我們生活型態所造成的衝擊,至少年輕一代與3C愛好者是如此。

另一方面,智慧型手持裝置的普及也開啟了機器人控制的新方向,早在Sony還沒和Ericsson攜手合作 之前的J66(周杰倫有代言唷!有聽過代表您與筆者的年紀差不多…)年代,那時的手機就可以透過藍牙發送訊號出去,學校也有相關得嵌入式系統課程,但由於 手機本身硬體規格不佳,加上沒有適合的硬體可供控制,所以應用相當有限。到了這幾年可就不一樣了:超大型多點觸控螢幕(圖3、影片1)、無線網路、 GPS、加速度感測器、方位感測器(影片3)可說是智慧型手持裝置的基本配備。巧合也好,命運也罷,這些感測器都是機器人亟需的神兵利器,例如透過GPS 與方位感測器讓機器人得知自身方位、無線網路可以讓我們實作一台居家保全機器人,我們可以透過網路在電腦或手機看到機器人前方的影像(圖5),或是把手機 當做Wii遊戲機的手把來玩跑步遊戲,晃愈大跑愈快(影片2)。這些都是智慧型手機結合機器人之後的應用,所以天一下子就亮了起來啦!

智慧型手機在此可以扮演「接收端」與「控制端」等兩種角色:

  • 接收端:智慧型手機接收機器人端的各種資訊,例如電量、感測器資訊或影像等等。

圖3a 接收感測器資訊

圖3b  接收影像

 

  • 控制端:智慧型手機主動發出訊號控制機器人的動作,控制方法又可分為觸控控制(單/多點觸控)與感測器控制(水平儀、加速度計等)兩大類型。機器人端則是依據所接收到的訊號來直行對應的動作。

圖4a  單點觸控介面

圖4b  多點觸控介面

 

筆者整理了一些影音資料,請看以下說明:

 

圖5 多點觸控的各種手勢應用

圖6a單點觸控

圖6b  多點觸控

圖7  居家保全機器人

 

影片1:單點觸控  藉由觸控點與螢幕


 

影片2:擷取加速度感測器來控制馬達轉速,晃愈大跑愈快


 

影片3:使用Android完成的飛行模擬器


 

後話:以上所說的功能iphone當然也能勝任,因為控制原理是完全相同的。但由於Android有其低進入門 檻(很多人會Java)以及高低價位機海戰術,甚至還有適合無程式開發的Google App Inventor搶佔初學者族群,加上iphone程式必須在蘋果電腦上開發否則無法上架販售(多花一大筆錢…),故此筆者相當看好Android在教學 領域上的應用,這點筆者日後將另闢專文介紹。

 

曾吉弘  CAVE教育團隊專業講師

本文中機器人實作感謝建國中學林祥瑞同學/大安國中施力維同學