Simulating a Fetch robot in Gazebo
Installation
Before installing the simulation environment, make sure your desktop is setup with a standard installation of ROS Indigo on Ubuntu 14.04. Once your APT repositories are configured, you can install the simulator:
$ sudo apt-get update
$ sudo apt-get install ros-indigo-fetch-gazebo-demo
Warning
Never run the simulator on the robot. Simulation requires that the ROS parameter use_sim_time be set to true, which will cause the robot drivers to stop working correctly. In addition, be sure to never start the simulator in a terminal that has the ROS_MASTER_URI set to your robot for the same reasons.
Starting the Simulator
The fetch_gazebo and fetch_gazebo_demo packages provide the Gazebo environment for Fetch. fetch_gazebo includes several launch files:
- simulation.launch spawns a robot in an empty world.
- playground.launch spawns a robot inside a lab-like test environment. This environment has some tables with items that may be picked up and manipulated. It also has a pre-made map which can be used to test out robot navigation and some simple demonstrations of object grasping.
To start the simplest environment:
$ roslaunch fetch_gazebo simulation.launch

Note that all of the environments will prepare the robot by tucking the arm and giving the head an initial command.
Note: Possibly you don't see the lidar scan as in the above picture. That is because the default set of visibility of lidar scan is false. You can manually modify it in its .xacro file.
$ roscd fetch_gazebo $ cd robots $ gedit fetch.gazebo.xacrolocate "laser_link" block:
modify this line:
<visualize>false</visualize>as
<visualize>true</visualize>
Visualizing with RVIZ
Even though Gazebo has a graphical visualization, RVIZ is still the preferred tool for interacting with your robot.
$ rosrun rviz rviz

You can now manually set up your RVIZ visualization or re-run RVIZ with a configuration file using the command line. The default .rviz configuration file for Fetch can be loaded using:
$ roscd fetch_navigation/config
$ rviz -d navigation.rviz
To start with playground.launch:
$ roslaunch fetch_gazebo playground.launch


Running the Mobile Manipulation Demo
There is a fully integrated demo showing navigation, perception and MoveIt! working together on the robot in simulation. To run the demo, start Gazebo simulator with the playground:
>$ roslaunch fetch_gazebo playground.launch
Wait until the simulator is fully running and then run the demo launch file:
>$ roslaunch fetch_gazebo_demo demo.launch
This will start:
- fetch_nav.launch - this is the navigation stack with a pre-built map of the environment.
- move_group.launch - this is the MoveIt configuration which can plan for the movement of the arm.
- basic_grasping_perception - this is a simple demo found in the
simple_graspingpackage which segments objects on tables and computes grasps for them.- demo.py - this our specific demo which navigates the robot from the starting pose in Gazebo to the table, raises the torso, lowers the head to look at the table, and then runs perception to generate a goal for MoveIt. The arm will then grasp the cube on the table, tuck the arm and lower the torso. Once the robot is back in this tucked configuration, the navigation stack will be once again called to navigate into the room with the countertop where the robot will place the cube on the other table.

Reference:
Fetch Robotics: Tutorial: Gazebo Simulation
Simulating a Fetch robot in Gazebo的更多相关文章
- Simulating a Freight robot in Gazebo
Installation Before installing the simulation environment, make sure your desktop is setup with a st ...
- Making my own Autonomous Robot in ROS / Gazebo, Day 1: Building the static model
Day 1: Setting up ROS: Indigo OS: Ubuntu 14.04 OS: Gazebo 7.0.0 Initialize the workspace To create t ...
- Gazebo機器人仿真學習探索筆記(七)连接ROS
中文稍后补充,先上官方原版教程.ROS Kinetic 搭配 Gazebo 7 附件----官方教程 Tutorial: ROS integration overview As of Gazebo 1 ...
- implement "slam_karto" package on a Freight robot
1. login ssh fetch@<robot ip or robot name> 2. set robot master modify .bashrc in robot's com ...
- Gazebo Ros入门
教程代码 First step with gazebo and ros • setup a ROS workspace • create projects for your simulated rob ...
- ROSCon 2016视频和幻灯片发布 ROS机器人操作系统重要参考资料
ROSCon 2016视频和幻灯片发布 By Tully Foote on 十月19,2016 7:28 AM 全部PPT下载地址:http://pan.baidu.com/s/1gf2sn2F RO ...
- getting started with building a ROS simulation platform for Deep Reinforcement Learning
Apparently, this ongoing work is to make a preparation for futural research on Deep Reinforcement Le ...
- ROS * 通过launch文件添加多个模型
我添加的是dae模型,urdf文件过两天贴 方法一 : <launch> <!-- these are the arguments you can pass this launch ...
- ROS探索总结(六)——使用smartcar进行仿真
转自:https://www.ncnynl.com/archives/201609/843.html 总结: 一.机器人描述文件三个: 机器人主体body文件: gazebo属性文件: 主文件 sma ...
随机推荐
- Mac Book 上安装Windows 8 / 10 以后安装 Hyper-v 无法正常使用问题---虚拟化已禁止问题
Mac book由于工作需要装了双启动,平时工作用 Windows 10, 由于有些老程序无法启动,还得再装一个虚拟机. 起初装 WMWare 开始装 7.1版本,结果没安装完就直接崩溃重启, 网上反 ...
- innodb内部的并发线程
1. innodb_thread_concurrency innodb有一系列的计数器来统计和控制内部的工作线程.其中最重要的一个是innodb_thread_concurrency,和它相关的inn ...
- json-encode()怎么进行解码呢?
解决中文的一种方法就是先将中文转换为另一种编码格式,然后再使用json_encode(),最后再用解码把json串进行解码.还有一种方式就在php新版本中得到了解决,在下面的代码为展示. 以下为代码示 ...
- Android如何区分app原生和webview实现
在开发Android app时,特别是强内容展现型的功能,会想在原生native实现和web实现中做选择,做这种选择的时候,难免想看看竞品或其它app类似功能是用哪种方式实现的.但是如何判断其它app ...
- Window驱动开发
驱动开发 参考文章: Windbg+Vmware驱动调试 http://blog.csdn.net/xuepiaosong/article/details/8236702 驱动调试攻略(WinDbg) ...
- MyCalView.php
<html> <head> <title>我的计算器</title> <script language="javascript" ...
- java 面试每日一题3
题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字.例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制. import java.io.Bu ...
- 杭电1013-Digitai Root(另解)
#include<stdio.h>#define maxsize 1000 int main(){ char N[maxsize+1]; int i,j,sum,n; c ...
- SHA1加密C#
//SHA1 static public string SHA1_Hash(string str_sha1_in) { SHA1 sha1 = new SHA1CryptoServiceProvide ...
- 2016年11月9日 星期三 --出埃及记 Exodus 19:25
2016年11月9日 星期三 --出埃及记 Exodus 19:25 So Moses went down to the people and told them.于是摩西下到百姓那里告诉他们.