新版本地址
- 已将新版本代码更新至:https://github.com/DroidAITech/ROS-Academy-for-Beginners/tree/melodic 12 ;注意如果想用原来仓库代码,请切换分支到kinetic;
- 讲义源码地址:https://github.com/anchuanxu/ROS-Academy-for-Beginners-Book-Melodic 7,pdf可自行导出。
Update:2019/7
开课时间: 2018年11月20日 ~ 2019年02月12日 学时安排: 1-3小时每周
预备知识
基本Linux操作
C++与Python编程基础
证书要求
评分:
课程满分100分。
平时测验占60%(每周单元测试);
课程讨论(讨论只能对在“课堂讨论”中回复教师的帖子计分)占10%;
期末测验占30%。
证书:
60-80分获得合格证书,80-100分获得优秀证书。
----
$ sudo apt install python-catkin-tools
方便使用catkin build等。
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
安装完成后,查看一下:
新建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。
耐心等待编译全部完成!
更新环境,或写入.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
----