浙江省杭州第二中學 張殳韜
基于樹莓派智能家居掃地機器人系統設計
浙江省杭州第二中學 張殳韜
隨著科技的發展與人們生活水平需求的提高,“智能家居”越來越受到人們的青睞。本文設計了一款高效智能的家居掃地機器人系統。該系統是以搭載了Linux系統的樹莓派(Raspberry Pi)為主控核心,以智能手機為客戶端,基于ORB-SLAM設計的一款智能家居掃地機器人系統。本系統利用Kinect模塊進行周圍環境的信息采集,通過ORB-SLAM模塊對收集到的信息進行整合與2D繪圖,最后采用Socket模塊實現手機客戶端與機器人的信息交互,實現與樹莓派遠程通信從而達到遠程啟動、重點清掃、自定義區域清掃等功能。此外機器人可以通過已繪制好的地圖智能設計最優清掃方案并大大減少與家具的不必要碰撞。本文提出的智能家居掃地機器人系統具有市面上現有機器人所不具有的智能自定義管理、大量減少碰撞、高效清掃等優勢,為廣大用戶提供了更為便捷智能的居家體驗。
智能家居掃地機器人遠程;樹莓派;ORB-SLAM;Socket通信
機器人具有工作環境要求低、可持續作業、產品質量穩定、效率高等優勢,其應用正在逐漸融入人們的生活。作為家居機器人,其使用目的就是方便人們的生活,將人們從繁瑣的家庭勞動中解放出來。而現在市面上的家居掃地機器人存在清掃效率不高、產品智能化不高、對家居破壞較大等問題。

圖1 基于樹莓派智能家居掃地機器人系統的總體框架圖
本文設計了一款基于樹莓派智能家居掃地機器人系統。該系統以樹莓派為主控核心,以智能手機為客戶端,實現家用掃地機器人的智能清掃。工作時,啟動Kinect相機,繼電器模塊控制驅動電機使機器人移動,ORB-SLAM模塊將Kinect相機采集到的室內信息轉換成室內地圖。當圖像繪制完成后,智能手機與樹莓派中Socket模塊建立通信,客戶端即可將各種清掃命令傳輸至樹莓派。處理器通過繼電器模塊控制各個電機以達到清掃要求。在清掃過程中,紅外模塊通過實時檢測防止機器人碰撞家具和人,盡量減少因碰撞而產生的破壞。
樹莓派是學習計算機編程教育而設計的具有信用卡大小的微型電腦,其系統基于Linux。本文樹莓派作為機器人的主控核心,對系統的各個模塊進行控制。
所謂繼電器,就是一種控制開關,用小電壓、小電流設備控制大電壓、大電流的器件。繼電器通常應用于自動化的控制電路中,它實際上是用小電流去控制大電流運作的一種“自動開關”。故在電路中起著自動調節、安全保護、轉換電路等作用,可做到節約能源、便捷管理。控制端的電源、GND地、信號分別接樹莓派的GPIO的2、6、7接口,另一端接外接設備,控制掃地機器人的清掃電機,毛刷吸塵電機及驅動電機等模塊。
樹莓派以模塊化的形式對各個傳感器進行統一管理。本設計中樹莓派控制的傳感器主要是Kinect相機和紅外感應模塊。2.3.1 Kinect
Kinect是一款深度相機,同其他種類深度相機相比較,Kinect的價格便宜,測量范圍在3m-12m之間,精度約3cm,較適合于室內小型掃地機器人。
Kinect的一大優勢在于能比較廉價地獲得每個像素的深度值,不管是從時間上還是從經濟上來說。有了這些信息,只要事先標定了Kinect,或者采用出廠的標定值,系統可以自動計算采集到的圖片中,每一個點的3D位置,將采集到的信息傳遞給ORB-SLAM進行處理。
2.3.2 紅外感應HC-SR501
HC-SR501是一款人體紅外感應模塊,是基于紅外線技術的自動控制模塊。當有人進入感應范圍時,專用傳感器探測到人體紅外光譜的變化,人不離開感應范圍,將持續接通;人離開后,延時自動關閉負載。用于機器人在掃地時防止對人的不必要碰撞。
HC-SR501的特點如下:
(1)全自動感應:當有人進入其感應范圍則輸入高電平,人離開感應范圍則自動延時關閉高電平;輸出低電平。
(2)光敏控制(可選):模塊預留有位置,可設置光敏控制,白天或光線強時不感應。光敏 控制為可選功能,出廠時未安裝光敏電阻。如果需要,需另行購買光敏電阻并安裝。
(3)兩種觸發方式:L不可重復,H可重復??商€選擇,默認為H。
1)不可重復觸發方式:即感應輸出高電平后,延時時間一結束,輸出將自動從高電平變為低電平。
2)可重復觸發方式: 即感應輸出高電平后,在延時時間段內,如果有人體在其感應范圍內活動,其輸出將一直保持高電平,直到人離開后才延時將高電平變為低電平(感應模塊檢測到人體的每一次活動后會自動順延一個延時時間段,并且以最后一次活動的時間為延時時間的起始點)。
(4)輸出高電平信號:可方便與各類電路實現對接。
感應模塊通電后有一分鐘左右的初始化時間,在此時間模塊會間隔地輸出0-3次,一分鐘后進入待機狀態。感應模塊采用雙元探頭,探頭的窗口為長方形,雙元(A元B元)位于較長方向的兩端,當人體從左到右或從右到左走過時,紅外光譜到達雙元的時間、距離有差值,差值越大,感應越靈敏,為了增加感應角度范圍,本模塊采用圓形透鏡,也使得探頭四面都感應。
2.3.3 紅外線反射傳感器
紅外線反射傳感器與ORB-SLAM模塊共同發揮作用,能大大降低與家居碰撞的風險。
紅外線反射傳感器是利用紅外線反射的原理,根據反射的強度來判定前方障礙的有無。當電源接通后,紅外線傳感器就開始工作,機器人距離障礙物達到所設定的范圍時,傳感器接收到反射回來的紅外線達到一定程度后,傳感器輸出低電平,我們可以利用CPU判斷后,執行相應的程序,達到繞開障礙物的目的。紅外線反射傳感器主要為防止機器人對家居的不必要碰撞設立的雙重防線。
紅外線傳輸距離遠,但對使用環境有相當高的要求,其檢測精度并不是很高,很容易造成機器與家居物品發生碰撞時間一久,底部的家居物品會被它撞的斑斑點點。
ORB-SLAM (simultaneous localization and mapping)是一個基于特征識別的單目SLAM系統,可以實時運行,適用于各種場合,室內的或者室外的,大場景或小場景的。系統具有很強的魯棒性,可以很好地處理劇烈運動圖像、可以有比較大的余地自由處理閉環控制、重定位、甚至全自動位置初始化。本文中我們采用了SLAM的追蹤、地圖構建、重定位和控制功能。生成了精簡的、可追蹤的地圖,當場景的內容改變時,地圖構建可持續工作。
在SLAM系統中,主要的兩個功能分別是定位(Localization)和建圖(Mapping),路徑規劃也被納入該系統中。總體而言,SLAM是指機器人依靠自身傳感器在位置環境中獲得感知信息,遞增地創建周圍環境的地圖,同時利用創建的地圖實現自主定位。
ORB-SLAM的優點:(1)追蹤的平均時間約為20ms每幀,基本可以達到實時追蹤(i5-5200,4.2GHz)。(2)丟幀以后回到原來的場景,很容易就可以找回來。(3)定位的穩定性較好,姿態流暢,沒有跳變。
網絡上的兩個程序(進程)通過一個雙向的TCP連接,實現數據的交換,連接的一端即稱為一個socket。本系統中智能手機充當客戶端,樹莓派充當服務端。倘若服務器端和客戶端需要進行通信,則服務器端必須創建一個socket,同時客戶端也需要創建一個socket,兩者基于TCP協議進行雙向連接。
在TCP/IP協議中,TCP協議通過三次握手建立一個可靠的連接。客戶端與服務端之間的連接過程可以分為三個步驟:服務器監聽、客戶端請求、連接確認,即為三次握手的名稱。在電話系統中,一般用戶只能感受到本地電話機和對方電話號碼的存在,建立通話的過程,話音傳輸的過程以及整個電話系統的技術細節對他都是透明的,這也與Socket機制非常相似。Socket利用客戶/服務器模式巧妙地解決了進程之間建立通信連接的問題。在家中,智能手機可以和掃地機器人連接同一個局域網,通過Socket通信,不用接入互聯網在家中也可以實現智能手機對掃地機器人的控制。
在智能化程度日益提高的當下生活,解放人們的雙手和大腦成為了機器人的主要目標,本文設計的基于樹莓派智能家居掃地機器人系統在原有掃地機器人功能的基礎上提高了機器人的清掃效率,減少了對家居的碰撞損害,實現了智能手機對掃地機器人的遠程自定義控制,為居家生活帶來了便利。
[1]葉振旭,張嵩灝.基于51單片機的智能家居的設計[J].
[2]劉繼元.基于樹莓派的物聯網應用[J].電子世界,2016(8):24-25.
[3]何海燕.基于樹莓派的智能家居系統設計與實現[J].中國高新技術企業,2016(17):11-12.
[4]陳必東,譚美娟.基于 Raspberry Pi+Arduino智能家居雛形系統的探索與研究[J].智慧工廠,2016(6):49-54.