ROS2GO之慕課《機器人作業系統入門》配置與使用(2018-2019-2)
ROS2GO之慕課《機器人作業系統入門》配置與使用(2018-2019-2)
icourse163中國大學MOOC《機器人作業系統入門》第二次開課!
開課時間: 2018年11月20日 ~ 2019年02月12日 學時安排: 1-3小時每週
預備知識
基本Linux操作
C++與Python程式設計基礎
證照要求
評分:
課程滿分100分。
平時測驗佔60%(每週單元測試);
課程討論(討論只能對在“課堂討論”中回覆教師的帖子計分)佔10%;
期末測驗佔30%。
證照:
60-80分獲得合格證照,80-100分獲得優秀證照。
----
使用ROS2GO可以快速開啟《機器人作業系統入門》的學習旅程。
(全部環境配置只需不到5分鐘和10行命令)
1. 安裝catkin工具
$ sudo apt install python-catkin-tools
方便使用catkin build等。
2. 更新Gazebo7到最新版本
tianbot@ros2go:~$ gazebo -v
Gazebo multi-robot simulator, version 7.0.0
Copyright (C) 2012-2016 Open Source Robotics Foundation.
Released under the Apache 2 License.
http://gazebosim.org
----具體過程----
$ sudo sh -c 'echo "deb http://packages.osrfoundation.org/gazebo/ubuntu-stable `lsb_release -cs` main" > /etc/apt/sources.list.d/gazebo-stable.list'
$ wget http://packages.osrfoundation.org/gazebo.key -O - | sudo apt-key add -
$ sudo apt-get update
$ sudo apt-get upgrade
安裝完成後,檢視一下:
3. 編譯原始碼
新建BeginnersROS_ws/src檔案下,並下載原始碼:
$ git clone https://github.com/DroidAITech/ROS-Academy-for-Beginners.git
等待下載完成,或者下載安裝包解壓放入對應資料夾:
安裝教學功能包對應的依賴選項:
$ rosdep install --from-paths src --ignore-src --rosdistro=kinetic -y
有可能會出現提示?如下:
tianbot@ros2go:~/BeginnersROS_ws$ rosdep install --from-paths src --ignore-src --rosdistro=kinetic -y
ERROR: your rosdep installation has not been initialized yet. Please run:
rosdep update
輸入:rosdep update,等待完成。
再次輸入:rosdep install --from-paths src --ignore-src --rosdistro=kinetic -y
確保所有依賴都完成安裝!!!
編譯::使用catkin_make或catkin build。
耐心等待編譯全部完成!
4. 配置與使用
更新環境,或寫入.bashrc:
tianbot@ros2go:~/BeginnersROS_ws$ source devel/setup.bash
測試:
在每個學習功能包資料夾中,仔細閱讀README.md。robot_sim_demo如下:
檢視:
執行並使用:
$ roslaunch robot_sim_demo robot_spawn.launch
速度非常快!!!
啟動鍵盤控制機器人:
$ rosrun robot_sim_demo robot_keyboard_teleop.py
更多案例,請學習對應課程視訊並認真閱讀原始碼。
----
----Github原版介紹----
《機器人作業系統入門》課程程式碼示例
前言
歡迎來到中國大學MOOC ---《機器人作業系統入門》課程,本ROS軟體包是課程的程式碼示例,課程中使用的例子均出自本程式碼包。除了程式碼包,課程還提供講義,歡迎各位朋友下載、學習和分享。
本示例包含了XBot機器人和中科院軟體博物館模擬、ROS通訊示例程式、導航與SLAM功能演示,在每個軟體包下都有相應的功能介紹。
如果你遇到任何問題,可以在Github上方的issues欄目中提問,我們課程團隊會耐心回答。本示例將長期維護,不斷更新,如果你認可我們的工作,請點選右上角的star按鈕,您的鼓勵是我們的動力。
示例介紹
本倉庫為ROS入門教程的程式碼示例,包括以下ROS軟體包:
軟體包 內容
robot_sim_demo 機器人模擬程式,大部分示例會用到這個軟體包
topic_demo topic通訊,自定義msg,包括C++和python兩個版本實現
service_demo service通訊,自定義srv,分別以C++和python兩種語言實現
action_demo action通訊,自定義action,C++和python兩種語言實現
param_demo param操作,分別以C++和python兩種語言實現
msgs_demo 演示msg、srv、action檔案的格式規範
tf_demo tf相關API操作演示,tf示例包括C++和python兩個版本
name_demo 演示全域性名稱空間和區域性名稱空間下引數的提取
tf_follower 製作mybot機器人 實現mybot跟隨xbot的功能
urdf_demo 建立機器人urdf模型,在RViz中顯示
navigation_sim_demo 導航演示工具包,包括AMCL, Odometry Navigation等演示
slam_sim_demo 同步定位與建圖演示,包括Gmapping, Karto, Hector等SLAM演示
robot_orbslam2_demo ORB_SLAM2的演示
ros_academy_for_beginners Metapacakge示例,依賴了本倉庫所有的pacakge
下載和編譯
克隆或下載ROS-Academy-for-Beginners教學包到工作空間的/src目錄下,例如 ~/catkin_ws/src
$ cd ~/catkin_ws/src
$ git clone https://github.com/DroidAITech/ROS-Academy-for-Beginners.git
安裝教學包所需的依賴
$ cd ~/catkin_ws
$ rosdep install --from-paths src --ignore-src --rosdistro=kinetic -y
編譯並更新環境
$ catkin_make
$ source ~/catkin_ws/devel/setup.bash
執行示例
執行須知
建議在本地Ubuntu 16.04下執行模擬程式。目前Gazebo模擬器的相容性是一大問題,在虛擬機器或配置較低的電腦上可能無法執行。如果你的顯示卡是N卡,建議安裝Ubuntu下的顯示卡驅動。
執行Gazebo模擬程式robot_sim_demo前,請將Gazebo升級到7.x版本以上(推薦7.9版本)。
檢視Gazebo版本方法
$ gazebo -v #確認7.0以上,推薦7.9
升級方法
$ sudo sh -c 'echo "deb http://packages.osrfoundation.org/gazebo/ubuntu-stable `lsb_release -cs` main" > /etc/apt/sources.list.d/gazebo-stable.list'
$ wget http://packages.osrfoundation.org/gazebo.key -O - | sudo apt-key add -
$ sudo apt-get update
$ sudo apt-get install gazebo7
確保所有依賴都已安裝,如gazebo_ros, gmapping, slam_karto, amcl。
----
Fin
----
相關文章
- 慕課作業
- Ubuntu作業系統的基本配置與使用Ubuntu作業系統
- 慕課網Python入門練習題---Python
- 寫作業系統之開發載入器作業系統
- 實現ARM+ROS(機器人作業系統)之環境搭建!ROS機器人作業系統
- 實現ARM+ROS(機器人作業系統)之執行ROS!ROS機器人作業系統
- 常用的虛擬機器軟體有哪些?linux作業系統入門虛擬機Linux作業系統
- 慕課網《Netty入門之WebSocket初體驗》學習總結NettyWeb
- ROS機器人作業系統資料與資訊(2018年11月)ROS機器人作業系統
- ROS機器人作業系統資料與資訊(2018年12月)ROS機器人作業系統
- Webots R2019和ROS使用筆記(機器人模擬軟體與作業系統)WebROS筆記機器人作業系統
- Java作業系統課設之模擬程式管理系統Java作業系統
- 【工業機器人】工業機器人技術最新知識大全;工業機器人驅動與控制系統機器人
- 作業系統有哪些功能呢?Linux入門作業系統Linux
- 麒麟作業系統 (kylinos) 從入門到精通作業系統
- 慕課網10小時大資料入門筆記大資料筆記
- 【Linux入門知識】最適合新手使用的Linux作業系統!Linux作業系統
- 作業-安裝虛擬機器以及CentOS作業系統虛擬機CentOS作業系統
- 雲端計算教程學習入門影片課件:開源作業系統講解作業系統
- ROS 2 Crystal Clemmys版機器人作業系統補充說明ROS機器人作業系統
- ROS 2 Crystal Clemmys版機器人作業系統安裝說明ROS機器人作業系統
- 還可以這樣實現ARM+ROS(機器人作業系統)ROS機器人作業系統
- 作業系統基礎配置作業系統
- 系統入門課後習題1
- 手機寫作業系統之 使用C語言編寫核心作業系統C語言
- 計算機作業系統|作業系統引論計算機作業系統
- ROS2GO之TurtleBot學習與使用資料ROSGo
- 自動聊天機器人專案班 [一門課搞定聊天機器人]機器人
- 手機寫作業系統之 圖形模式作業系統模式
- 計算機作業系統之程式掃盲計算機作業系統
- 作業系統與Linux作業系統Linux
- 初級安全入門——Windows作業系統的安全加固Windows作業系統
- OSDev Wiki——作業系統開發入門基礎(一)dev作業系統
- 作業系統引導和虛擬機器作業系統虛擬機
- 【機器人】工業機器人典型控制系統及結構;中國工業機器人系統整合行業發展趨勢;工業機器人在PCB行業的應用機器人行業
- 為什麼推薦使用Ubuntu 18.04 LTS學習機器人作業系統ROS 1和2Ubuntu機器人作業系統ROS
- ROS2GO之手機連線Cozmo人工智慧機器人玩具ROSGo人工智慧機器人
- 慕課 玩轉資料結構 從入門到進階 (草稿)資料結構