SLAM+語音機器人DIY系列:(二)ROS入門——3.在ubuntu16.04中安裝ROS kinetic


摘要                                          

ROS機器人操作系統在機器人應用領域很流行,依托代碼開源和模塊間協作等特性,給機器人開發者帶來了很大的方便。我們的機器人“miiboo”中的大部分程序也采用ROS進行開發,所以本文就重點對ROS基礎知識進行詳細的講解,給不熟悉ROS的朋友起到一個拋磚引玉的作用。本章節主要內容:

1.ROS是什么

2.ROS系統整體架構

3.在ubuntu16.04中安裝ROS kinetic

4.如何編寫ROS的第一個程序hello_world

5.編寫簡單的消息發布器和訂閱器

6.編寫簡單的service和client

7.理解tf的原理

8.理解roslaunch在大型項目中的作用

9.熟練使用rviz

10.在實際機器人上運行ROS高級功能預覽



3.在ubuntu16.04中安裝ROS kinetic

9安裝ROS軟硬件配置總結

使用ROS進行機器人的學習和開發,一般需要一個機器人平台和一個調試工作平台。機器人平台上出於性價比和功耗考慮一般采用ARM嵌入式板作為硬件設備,比如樹莓派3RK3399開發板、nvidia-jetson-tx2等;調試工作平台一般采用x86個人電腦,比如筆記本電腦、台式電腦等。ARM嵌入式板的廠家一般都會提供相應定制化的ubuntu系統,定制化主要體現在硬件外設驅動和一些加快系統速度的優化,作為軟件開發人員可以不必考慮這些問題直接當做普通ubuntu使用就行了,比如針對樹莓派3定制化的ubuntu-mate系統;x86個人電腦上的話就可以直接安裝ubuntu官方發布的系統就行了,你可以把ubuntu直接安裝在物理機上,這樣ubuntu運行會更加流暢,你也可以把ubuntu安裝在虛擬機上,這樣可以更方便的切換使用機器上原來的系統(如windows系統)和虛擬機上的ubuntu系統。不管是采用何種硬件,在硬件上以何種方式安裝上ubuntu及其定制化ubuntu,一旦我們擁有了一個可用的ubuntu系統,就可以在這個ubuntu系統上安裝當下流行的ROS發行版了(本文寫作時最流行的ROS發行版是ROS-kinetic)。安裝ROS軟硬件配置的總結,如圖9

機器人平台上安裝ROS軟硬件配置,推薦大家使用樹莓派3作為硬件,ubuntu-mate-16.04作為操作系統,安裝ROS-kinetic這個ROS發行版。這一部分的具體講解將在后續的文章中展開。

調試工作平台上安裝ROS軟硬件配置,推薦大家使用x86個人電腦(筆記本電腦、台式電腦都可以)作為硬件,在虛擬機上運行ubuntu16.04系統,安裝ROS-kinetic這個ROS發行版。由於在虛擬機上安裝運行ubuntu16.04系統已經在前面的文章(一)Linux基礎——2.安裝Linux發行版ubuntu系統中詳細講解了,這里就默認我們已經擁有了一個運行在虛擬機上的ubuntu16.04系統了。接下來就着重講解如何安裝ROS發行版ROS-kinetic

其實在ubuntu上安裝ROS,有很詳細的ROS官方教程,感興趣的朋友可以直接參考官方教程http://wiki.ros.org/kinetic/Installation/Ubuntu。由於官方教程用英文書寫,為了方便大家閱讀,我將官方教程翻譯過來,方便大家學習,下面正式進入安裝。溫馨提醒,由於不同的編輯器對過長的句子換行的規則不同,下面的命令被自動換行后可能影響正常的閱讀,請直接參閱官方教程中的命令http://wiki.ros.org/kinetic/Installation/Ubuntu

1)配置ubuntu的資源庫

系統設置->軟件和更新->Ubuntu軟件,可以打開如圖10中的資源庫配置界面,確保“universe”,“restricted”、“multiverse”被勾選了,“下載自”選項中選擇“中國的服務器”,這樣下載更新軟件速度會更快點。不過一般情況下,以上選項都是默認設置好了的。

(圖10)資源庫配置界面

2)設置ubuntusources.list

打開命令行終端,輸入如下命令:

sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'

(3)設置keys

打開命令行終端,輸入如下命令:

sudo apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net:80 --recv-key 421C365BD9FF1F717815A3895523BAEEB01FA116

(4)安裝ros-kinetic-desktop-full完整版

打開命令行終端,分別輸入如下兩條命令:

sudo apt-get update

sudo apt-get install ros-kinetic-desktop-full

小技巧,如果安裝過程提示“下載錯誤”,請耐心重試上面的兩條命令,這個錯誤多半是由於網絡故障造成的。

(5)初始化rosdep

打開命令行終端,分別輸入如下兩條命令:

sudo rosdep init

rosdep update

(6)配置環境變量

打開命令行終端,分別輸入如下兩條命令:

echo "source /opt/ros/kinetic/setup.bash" >> ~/.bashrc

source ~/.bashrc

(7)安裝rosinstall

打開命令行終端,輸入如下命令:

sudo apt install python-rosinstall python-rosinstall-generator python-wstool build-essential

(8)測試ros安裝成功與否

打開命令行終端,輸入如下命令:

roscore

如果此時出現以下內容

setting /run_id to 4cb2a932-06c0-11e9-9ff2-000c2985f3ab
process[rosout-1]: started with pid [38686]
started core service [/rosout]

那么恭喜你,ROS已經成功的安裝上了!!!

后記                                        

------SLAM+語音機器人DIY系列【目錄】快速導覽------

第1章:Linux基礎

1.Linux簡介

2.安裝Linux發行版ubuntu系統

3.Linux命令行基礎操作

第2章:ROS入門

1.ROS是什么

2.ROS系統整體架構

3.在ubuntu16.04中安裝ROS kinetic

4.如何編寫ROS的第一個程序hello_world

5.編寫簡單的消息發布器和訂閱器

6.編寫簡單的service和client

7.理解tf的原理

8.理解roslaunch在大型項目中的作用

9.熟練使用rviz

10.在實際機器人上運行ROS高級功能預覽

第3章:感知與大腦

1.ydlidar-x4激光雷達

2.帶自校准九軸數據融合IMU慣性傳感器

3.輪式里程計與運動控制

4.音響麥克風與攝像頭

5.機器人大腦嵌入式主板性能對比

6.做一個能走路和對話的機器人

第4章:差分底盤設計

1.stm32主控硬件設計

2.stm32主控軟件設計

3.底盤通信協議

4.底盤ROS驅動開發

5.底盤PID控制參數整定

6.底盤里程計標

第5章:樹莓派3開發環境搭建

1.安裝系統ubuntu_mate_16.04

2.安裝ros-kinetic

3.裝機后一些實用軟件安裝和系統設置

4.PC端與robot端ROS網絡通信

5.Android手機端與robot端ROS網絡通信

6.樹莓派USB與tty串口號綁定

7.開機自啟動ROS節點

第6章:SLAM建圖與自主避障導航

1.在機器人上使用傳感器

2.google-cartographer機器人SLAM建圖

3.ros-navigation機器人自主避障導航

4.多目標點導航及任務調度

5.機器人巡航與現場監控

第7章:語音交互與自然語言處理

1.語音交互相關技術

2.機器人語音交互實現

3.自然語言處理雲計算引擎

第8章:高階拓展

1.miiboo機器人安卓手機APP開發

2.centos7下部署Django(nginx+uwsgi+django+python3)

----------------文章將持續更新,敬請關注-----------------

 

如果大家對博文的相關類容感興趣,或有什么技術疑問,歡迎加入下面的《SLAM+語音機器人DIY》QQ技術交流群,一起討論學習^_^

關於我們:

視頻教程:

 

https://www.bilibili.com/video/av61448040


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM