樹莓派打造的MiRo-E電子狗,既是寵物也可學習程式

作者:陸向陽

機內使用樹莓派電腦運作的電子寵物:MiRo-E(圖片來源:Consequential Robotics)

談到電子寵物大家第一個想到的莫過於Sony的Aibo電子狗,或曾經轟動一時的Pleo小恐龍,但近期英國一家新創公司也推出電子寵物,同樣是電子狗,稱為MiRo-E(E有Education教育的意味)。MiRo-E也訴求情感陪伴,但也期望透過它激發低年齡層學童的程式學習興趣。值得一提的是,MiRo-E的核心是樹莓派(Raspberry Pi,RPi),到底MiRo-E與RPi有什麼關係?本文將介紹其開發歷程並分析其技術規格。

MiRo-E開發源起

Sebastian Conran是一位消費產品設計師,他在倫敦開設一間SCA design studio(Sebastian Conran Associates)設計工作室,而後與英國Sheffield大學機器人研究所的Tony Prescott教授、博士兼仿生機器人學家Ben Mitchinson及英國布里斯托機器人實驗室(Bristal Robotics Lab)合作,共同開發出MiRo電子寵物狗。

之後他們成立了Consequential Robotics公司,Conran為執行長,Prescott為共同創辦人兼總監,Mitchinson則為共同創辦人間技術長。公司的相關研究合作夥伴除原來的Sheffield大學外也包含加州電子系統開發商Buzzamo、量產工程與品質控制專業的Gadget Lab,以及英國開發與供應輔助技術的業者Inclusiviti。

MiRo目標是實現一個電子寵物,但MiRo本身也是一個機器人平台,期望有廣泛的程式設計師開發出能在MiRo上執行的程式,因此Consequential Robotics也提出MiRoCODE的開發環境供程式師撰寫程式。

撰寫好後需要將程式載入到MiRo內讓MiRo實際跑看看才知道程式是否合乎需求,若手邊沒有MiRo,Consequential Robotics也提供MiRo模擬軟體MiRoSim(根基於Gazebo robot simulator),將程式載入到模擬軟體上,在電腦畫面上以模擬方式展現MiRo的行為,從而評估與修正程式。

雖然模擬可以獲得一些驗證成效,但畢竟在現實環境中的狀況與變數更多,加上本意是要實現一個實際的陪伴型電子寵物,所以最終還是需要一隻實體的MiRo。

MiRoCODE程式畫面與模擬畫面。(圖片來源:Consequential Robotics)

MiRo-E的規格剖析

MiRo一開始推出的版本是MiRo-B,MiRo-B的系統電路板是完全客製打造的,後來發現學校的學童對樹莓派電腦比較熟悉,MiRo的另一個目標是引發學童學習程式的興趣,所以Consequential Robotics改變策略,改以樹莓派電腦為主控系統,從而實現MiRo-E。MiRo-E主要用的是RPi 3B+,即第三代樹莓派B型(Model B)的改進款,不過要換成效能、規格更佳的RPi 4B也是可以的。

由於MiRo-B是比較早初的設計,且使用RPi為核心的是MiRo-E,所以本文主要針對MiRo-E的規格進行更深入的剖析。

MiRo-E在沒有電池時約2.9公斤重,裝上電池(鎳氫電池,4.8V電壓、10Ah電量)後為3.3公斤,MiRo-E是以輪子行走,每秒可移動40公分的距離,MiRo-E在一般情況下其電池電量可讓其活動約6小時,待機則約12小時。

為了盡可能逼近一般寵物表現MiRo-E身上配置的感測器特別多,包含4組麥克風,取樣率20kHz、解析度16位元;並有2組攝影機,在1280×720長寬畫面解析度下每秒可取樣15個畫面,解析度降至640×360時則增至25個畫面,320×240則增至35個畫面;MiRo-E還有1組超音波測距器可量測3公分到1公尺的距離。

MiRo-E身上配置的感測器特別多(Source

進一步的,MiRo-E共計有28處電容式觸控感測器(模擬寵物皮膚被觸摸拍打的感受),14個在頭部、14個在身體;光線感測器也是4組並配置在身體的裙側;還有2組Cliff(懸崖)感測器避免MiRo-E跌落;此外在頭部與身體也各埋設1組加速度感測器。

有感應就要有反應,一樣是為了有逼近真實寵物MiRo-E配置相當多致動器(actuator),讓MiRo-E擁有豐富的肢體語言,包含可以搖尾巴、轉頭頸、轉耳朵、眼睛開閉等,也可以發聲(8kHz),身上並設有6組RGB三色LED燈號。

MiRo-E機內主要的感測器、致動器。(圖片來源:Consequential Robotics)

MiRo-E內部功效部件圖。(圖片來源:Consequential Robotics)

由於MiRo-E有許多感測器與致動器要操控,而這類的低階控制動作或信號處理並不是勞煩到RPi,而是有4顆微控制器(MCU)代勞,3顆STM32F030負責P1工作,1顆STM32H743負責P2工作。

P1指Spinal脊椎,負責馬達特徵、反射、硬體抽象層轉換等工作,並透過I2C介面與感測器、致動器聯繫。接著P1透過SPI介面連接P2,P2稱為Brainstem腦幹,負責MiRo-E的反應管理、空間意識、關注、動作選擇等。

至於P3則是Froebrain前腦(執行Linux,即RPi的Raspbian,也包含ROS),P3與P2是透過USB連接,P3負責執行使用者開發的程式,以及負責Wi-Fi與USB的轉換工作。另外還有個P4,P4指的是電腦、智慧型手機,比較吃重的工作是可以移出MiRo-E由電腦手機代為計算的。

MiRo-E的P1、P2、P3控制處理分工圖。(圖片來源:Consequential Robotics)

附帶一提的是,MiRo-E有個搭配的手機App稱為MiRoApp,該App可以用來維護管理MiRo-E,以及診斷MiRo-E是否有故障等。而電腦上為了MiRo-E的程式開發也要安裝MDF(MiRo Developer Kit)。

小結

最後,雖然MiRo-E很可愛很有趣,但也有人對牠有些意見,例如用輪子移動感覺是過於簡單的設計,不像Aibo電子狗、Pleo小恐龍等是以肢體走動,同時MiRo-E現階段似乎太貴,零售價2,450英鎊還未含加值稅。

陸向陽

Author: 陸向陽

從電子科系畢業後,即以媒體人的角色繼續這段與「電子科技」的不解之緣。歷任電子技術專書作者、電子媒體記者、分析師等角色,並持續寫作不殆。近來投入Arduino、Raspberry Pi等開放硬體的研究與教程介紹。

Share This Post On
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x