在個人想象中機器人首先應該能自由的走來走去,而後應該能流利的與主人對話。朝着這個理想,我準備設計一個能自由行走,而且能夠與人語音對話的機器人。實現的關鍵是讓機器人能經過傳感器感知周圍環境,並經過機器人大腦處理並輸出反饋和執行動做。本章節涉及到的傳感器有激光雷達、IMU、輪式里程計、麥克風、音響、攝像頭,和用於處理信息的嵌入式主板。關於傳感器的ROS驅動程序開發和在機器人上的使用在後面的章節會展開,本章節重點對機器人傳感器和嵌入式主板進行講解,主要內容:html
1.ydlidar-x4激光雷達python
2.帶自校準九軸數據融合IMU慣性傳感器nginx
4.音響麥克風與攝像頭django
5.機器人大腦嵌入式主板性能對比ubuntu
6.作一個能走路和對話的機器人centos
在個人想象中機器人首先應該能自由的走來走去,而後應該能流利的與主人對話。朝着這個理想,我準備設計一個能自由行走,而且能夠與人語音對話的機器人。爲了更形象的表達個人想法,個人小學五年級的繪畫水平也是豁出去了,若是有大神路過,懇請多多包涵,畫好後的樣子大概就是這樣啦,如圖46。網絡
(圖46)想象中的機器人架構
有了想法,接下來就要開始親自動手DIY了。體驗動手樂趣的同時,以玩耍的形式融入當下前沿的SLAM、自動導航、圖像識別、語音識別、天然語言處理等技術,提升本身的同時找到屬於兒時的那一份快了。框架
說幹就幹,首先須要準備好激光雷達、IMU、底盤、音響、麥克風、攝像頭這些傳感器,而後還要準備一塊樹莓派3開發板做爲機器人的大腦。其實這些知識已經經過前面的文章打好了基礎,因此就好辦多了,準備好這些東西就行了,如圖47。
(圖47)DIY部件準備
準備好傳感器和樹莓派3後,就能夠進行組裝了。通過緊張有趣的組裝後,一臺有趣的機器人就被DIY出來了,這時候終於能夠看到傳說中的機器人的真容了,如圖48,雖然機器人的真實樣子沒有想象中的那麼有藝術感,但科技感十足有木有@^@
(圖48)DIY出來的機器人真容
麻雀雖小五臟俱全,如今就來對這個會說話會走路的機器人作一作剖析吧。機器人的骨架是由亞克力板和銅柱組合而成;兩個帶編碼器的減速電機和一個萬向輪做爲運動執行機構;可充電鋰電池給整個機器人供電;stm32電機控制板用於控制電機運動並提供里程數據,是底盤的核心部件;激光雷達提供環境障礙信息,用於SLAM建圖和避障導航;IMU用於在里程計數據融合、SLAM建圖、導航中提供慣導數據;免驅USB聲卡、音響、四麥陣列指向性麥克風做爲語音交互過程當中的輸入輸出部件;攝像頭用於物體識別、物體跟蹤、環境監控、視覺輔助定位;樹莓派3是整個機器人的中央處理單元,各個傳感器的ROS驅動、SLAM算法、導航算法、語音交互、天然語言處理算法、圖像處理算法都將運行在上面。爲了更好的理解機器人的工做原理,這裏給出機器人的硬件框架,如圖49。
(圖49)機器人硬件框架
機器人的硬件搭建完畢後,就要賦予機器人靈魂了。這裏說的靈魂就是咱們的軟件及算法,包括各個傳感器的ROS驅動、輪式里程計與IMU融合、激光SLAM建圖、自主導航避障、語音識別、語音合成、天然語言處理、物體識別、物體跟蹤、遠程視頻監控、視覺輔助定位、機器人與工做PC、Android手機之間的通訊等。爲了更好的理解機器人的工做原理,這裏給出機器人的軟件框架,如圖50。
(圖50)機器人軟件框架
作了如此長的鋪墊,你們確定已經等不及要親自動手去開發機器人上的軟件代碼了。別急,接下來的章節將跟你娓娓道來,讓你體驗動手寫程序真正的快樂$^$
------SLAM+語音機器人DIY系列【目錄】快速導覽------
第1章:Linux基礎
第2章:ROS入門
第3章:感知與大腦
第4章:差分底盤設計
第5章:樹莓派3開發環境搭建
第6章:SLAM建圖與自主避障導航
2.google-cartographer機器人SLAM建圖
第7章:語音交互與天然語言處理
第8章:高階拓展
2.centos7下部署Django(nginx+uwsgi+django+python3)
----------------文章將持續更新,敬請關注-----------------
若是你們對博文的相關類容感興趣,或有什麼技術疑問,歡迎加入下面的《SLAM+語音機器人DIY》QQ技術交流羣,一塊兒討論學習^_^
關於咱們:
視頻教程: