专栏首页机器人课程与技术ROS(indigo)机器人操作系统学习有趣丰富的Gazebo仿真示例evarobot

ROS(indigo)机器人操作系统学习有趣丰富的Gazebo仿真示例evarobot

通过网页快速了解Linux(Ubuntu)和ROS机器人操作系统,请参考实验楼在线系统如下:

初级教程可参考:https://www.shiyanlou.com/courses/854 邀请码:U23ERF8H

中级教程可参考:https://www.shiyanlou.com/courses/938 邀请码:U9SVZMKH

一直在寻找一个示例可以将ROS学习中常用的基础内容大部分都包含进去,最好还包括Gazebo仿真,

这样即使没有硬件设备,也可以很好的学习ROS相关内容,但又必须有对应的硬件,便于后续研究。

这里,介绍一款意外发现的ROS的robot示例----evarobot----

官方教程网址:http://wiki.ros.org/Robots/evarobot

仿真源码网址:https://github.com/inomuh/evarobot_simulator

下面进入正文:

ROS(indigo)机器人操作系统Gazebo仿真示例evarobot

1. 基本安装和编译

下载功能包后,在catkin_ws中进行编译,一切ok,就可以使用这个功能包了。

~/catkin_ws$ catkin_make

有可能遇到一些问题,可能需要下面命令:

~/catkin_ws$ source devel/setup.bash

~/catkin_ws$ rosdep install --from-path src/ -y -i

~/catkin_ws$ rosstack profile & rospack profile

2. 示例使用

上面步骤完成后,就可以复习常用的ROS命令:

~$ rosstack find evarobot_simulator /home/exbot/catkin_ws/src/evarobot_simulator/evarobot_simulator

exbot@relay-Aspire-4741:~$ rospack find evarobot_gazebo /home/exbot/catkin_ws/src/evarobot_simulator/evarobot_gazebo exbot@relay-Aspire-4741:~$ rosls evarobot_gazebo cfg            CMakeLists.txt  launch   map          src CHANGELOG.rst  include         LICENSE  package.xml  worlds

其他还有roscd等,不一一列举。在终端运行:

~$ roslaunch evarobot_gazebo evarobot.launch

~$ rosnode list /gazebo /joint_state_publisher /robot_state_publisher /rosout /twist_marker_server ~$ rostopic list /camera/depth/camera_info /camera/depth/image_raw /camera/depth/points /camera/parameter_descriptions /camera/parameter_updates /camera/rgb/camera_info /camera/rgb/image_raw /camera/rgb/image_raw/compressed /camera/rgb/image_raw/compressed/parameter_descriptions /camera/rgb/image_raw/compressed/parameter_updates /camera/rgb/image_raw/compressedDepth /camera/rgb/image_raw/compressedDepth/parameter_descriptions /camera/rgb/image_raw/compressedDepth/parameter_updates /camera/rgb/image_raw/theora /camera/rgb/image_raw/theora/parameter_descriptions /camera/rgb/image_raw/theora/parameter_updates /clock /cmd_vel /gazebo/link_states /gazebo/model_states /gazebo/parameter_descriptions /gazebo/parameter_updates /gazebo/sensor/Bumper /gazebo/set_link_state /gazebo/set_model_state /imu /ir0 /ir0/parameter_descriptions /ir0/parameter_updates /ir1 /ir1/parameter_descriptions /ir1/parameter_updates /ir2 /ir2/parameter_descriptions /ir2/parameter_updates /ir3 /ir3/parameter_descriptions /ir3/parameter_updates /joint_states /lidar /odom /rosout /rosout_agg /sonar0 /sonar0/parameter_descriptions /sonar0/parameter_updates /sonar1 /sonar1/parameter_descriptions /sonar1/parameter_updates /sonar2 /sonar2/parameter_descriptions /sonar2/parameter_updates /sonar3 /sonar3/parameter_descriptions /sonar3/parameter_updates /sonar4 /sonar4/parameter_descriptions /sonar4/parameter_updates /sonar5 /sonar5/parameter_descriptions /sonar5/parameter_updates /sonar6 /sonar6/parameter_descriptions /sonar6/parameter_updates /tf /tf_static /twist_marker_server/feedback /twist_marker_server/update /twist_marker_server/update_full

~$ rosrun rqt_reconfigure rqt_reconfigure

~$ rviz

~$ rosrun rqt_graph rqt_graph

~$ rosrun rqt_console rqt_console

~$ rosrun rqt_plot rqt_plot /cmd_vel

在Gazebo环境中加入一些物体:

$ rosrun rqt_image_view rqt_image_view

可以使用键盘,手柄或手机遥控gazebo中的机器人运动,观察各类传感器数据的变化。

也可以在虚拟仿真环境中,测试各类图像算法等,构建自己的3D模型等,这里不再赘述。

如果想要查看点云,可以通过rviz:

3. SLAM示例

~$ roslaunch evarobot_gazebo evarobot.launch world_path:=$(rospack find evarobot_gazebo)/worlds/UPlat.sdf

~$ roslaunch evarobot_slam gazebo_slam.launch

~$ rosrun teleop_twist_keyboard teleop_twist_keyboard.py

~$ roslaunch evarobot_viz view_evarobot.launch

~$ rosrun map_server map_saver -f $(rospack find evarobot_slam)/gazebo_map/map

4. 导航

~$ roslaunch evarobot_navigation gazebo_navigation.launch world_path:=$(rospack find evarobot_gazebo)/worlds/UPlat.sdf

遇到点小问题,还未解决。

-End-

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Learning ROS for Robotics Programming Second Edition学习笔记(二) indigo tools

    中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865

    zhangrelay
  • ROS2GO之慕课《机器人操作系统入门》配置与使用(2018-2019-2)

    开课时间: 2018年11月20日 ~ 2019年02月12日  学时安排: 1-3小时每周

    zhangrelay
  • 2018年智能机器人技术综合实训专题二控制算法

    第8章,在Matlab和Android上运行ROS,此部分延续专题一,很多算法可以在Matlab中找到,

    zhangrelay
  • Python 学习入门(17)—— args, kwargs

    The special syntax, *args and **kwargs in function definitions is used to pass a...

    阳光岛主
  • 由一只猫看深度学习面临哪些挑战?

    我们要面对的可不仅仅是这样一只蹲在我们面前可爱的小猫,在实际中有着很多的可能性,比如光照强度,遮蔽程度,角度等等,这些就成为了我们深度学习任务的一个极大的挑战。

    用户1737318
  • Pandas-8. 重建索引

    以上代码df1应该是3列10行,之后和df2对齐。 对齐操作列名应该匹配,无法对齐的列整列置为NAN。

    悠扬前奏
  • 又是一年高考季,Python爬虫数据分析家庭亲情剧《小欢喜》

    2020年的新冠病毒肆虐注定造就了其是不寻常的一年,上半年所有的考试几乎都被延迟到了下半年来,其中就有万民瞩目的高考。

    用户6888863
  • 计算机高职专业VB知识要点001,模拟域名抢购软件案例代码开源,热身第一课

    combobox 、 listbox控件的list属性,想要连续输入快捷键ctrl+enter

    刘金玉编程
  • 【置顶】《Django企业开发实战》「勘误」

    ----EOF----- 微信公众号:Python程序员杂谈

    the5fire
  • 小鸡君の前端小姜汤【第015期】- 绝对定位

    前面我们学过了“表格布局”(回复 007 或 7)的简单栗子,如果大家用心尝试的话,应该已经可以做出一些粗糙的页面了。

    姬小光

扫码关注云+社区

领取腾讯云代金券