rb1_base_sim repository

Repository Summary

Checkout URI https://github.com/RobotnikAutomation/rb1_base_sim.git
VCS Type git
VCS Version melodic-devel
Last Updated 2021-04-14
Dev Status MAINTAINED
CI status No Continuous Integration
Released UNRELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Packages

Name Version
rb1_base_gazebo 1.12.0
rb1_base_sim 1.12.0
rb1_base_sim_bringup 1.12.0

README

rb1_base_sim

Packages for the simulation of the RB-1 Base

Packages

rb1_base_gazebo

This package contains the configuration files and worlds to launch the Gazebo environment along with the simulated robot.

rb1_base_sim_bringup

Launch files that launch the complete simulation of the robot/s.

Simulating RB-1 Base

1) Install the following dependencies:

This simulation has been tested using Gazebo 9 version. To facilitate the installation you can use the vcstool:

sudo apt-get install -y python3-vcstool

2) Create a workspace and clone the repository:

mkdir catkin_ws
cd catkin_ws
vcs import --input https://raw.githubusercontent.com/RobotnikAutomation/rb1_base_sim/melodic-master/doc/rb1_base_sim.repos
rosdep install --from-paths src --ignore-src -y

3) Compile:

catkin build
source devel/setup.bash

4) Launch RB-1 Base simulation (1 robot by default, up to 3 robots):

  • RB-1 Base:
  roslaunch rb1_base_sim_bringup rb1_base_complete.launch

Optional general arguments:

  <arg name="launch_rviz" default="true"/>
  <arg name="gazebo_world" default="$(find rb1_base_gazebo)/worlds/rb1_base_office.world"/>

Optional robot arguments:

  <!--arguments for each robot (example for robot A)-->
  <arg name="id_robot_a" default="robot"/>
  <arg name="launch_robot_a" default="true"/>
  <arg name="has_elevator_robot_a" default="true"/>
  <arg name="x_init_pose_robot_a" default="0.0" />
  <arg name="y_init_pose_robot_a" default="0.0" />
  <arg name="z_init_pose_robot_a" default="0.0" />
  <arg name="init_yaw_robot_a" default="0.0" />
  <arg name="gmapping_robot_a" default="false"/>
  <arg name="amcl_and_mapserver_robot_a" default="true"/>
  <arg name="map_frame_robot_a" default="$(arg id_robot_a)_map"/>
  <arg name="map_file_robot_a" default="$(find rb1_base_localization)/maps/willow_garage/willow_garage.yaml"/>
  <arg name="move_base_robot_a" default="true"/>
  <arg name="pad_robot_a" default="true"/>

  • Example to launch simulation with 3 RB-1 Base robots:
  roslaunch rb1_base_sim_bringup rb1_base_complete.launch launch_robot_a:=true launch_robot_b:=true launch_robot_c:=true

  • Example to launch simulation with 1 RB-1 Base robot with navigation and localization:
  roslaunch rb1_base_sim_bringup rb1_base_complete.launch launch_robot_a:=true move_base_robot_a:=true amcl_and_mapserver_robot_a:=true

  • Example to launch simulation with 2 RB-1 Base robot with navigation and localization sharing the same global frame:
  roslaunch rb1_base_sim_bringup rb1_base_complete.launch launch_robot_a:=true amcl_and_mapserver_robot_a:=true move_base_robot_a:=true map_frame_a:=/map launch_robot_b:=true amcl_and_mapserver_robot_b:=true move_base_robot_b:=true map_frame_b:=/map

  • Example to launch simulation with 3 RB-1 Base robot with navigation and localization sharing the same global frame:
roslaunch rb1_base_sim_bringup rb1_base_complete.launch launch_robot_a:=true amcl_and_mapserver_robot_a:=true move_base_robot_a:=true map_frame_a:=/map launch_robot_b:=true amcl_and_mapserver_robot_b:=true move_base_robot_b:=true map_frame_b:=/map launch_robot_c:=true amcl_and_mapserver_robot_c:=true move_base_robot_c:=true map_frame_c:=/map

Enjoy! You can use the topic `${id_robot}/robotnik_base_control/cmd_vel` to control the RB-1 Base robot:

rostopic pub /robot/robotnik_base_control/cmd_vel geometry_msgs/Twist "linear:
  x: 0.1
  y: 0.0
  z: 0.0
angular:
  x: 0.0
  y: 0.0
  z: 0.0" -r 10

or if you have launched move_base, you can send simple goals using /${id_robot}/move_base_simple/goal:

rostopic pub /robot/move_base_simple/goal geometry_msgs/PoseStamped "header:
  seq: 0
  stamp:
    secs: 0
    nsecs: 0
  frame_id: 'robot_map'
pose:
  position:
    x: 3.0
    y: 0.0
    z: 0.0
  orientation:
    x: 0.0
    y: 0.0
    z: 0.0
    w: 1.0" 

CONTRIBUTING

No CONTRIBUTING.md found.

Repository Summary

Checkout URI https://github.com/RobotnikAutomation/rb1_base_sim.git
VCS Type git
VCS Version kinetic-devel
Last Updated 2021-01-05
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Packages

Name Version
rb1_base_gazebo 2.0.0
rb1_base_sim 2.0.0
rb1_base_sim_bringup 2.0.0

README

rb1_base_sim

Packages for the simulation of the RB-1 Base

RB-1-BASE Front RB-1-BASE Rear

Packages

rb1_base_gazebo

This package contains the configuration files and worlds to launch the Gazebo environment along with the simulated robot.

rb1_base_sim_bringup

Launch files that launch the complete simulation of the robot/s.

Simulating RB-1 Base

Dependencies

Install the following dependencies: - rb1_base_common link

  • robotnik_msgs link

  • robotnik_sensors link

  • robotnik_base_hw_sim link

  • robot_localization_utils link

  • gazebo_ros_pkgs (Robotnik's fork) link

In the workspace install the packages dependencies:

  rosdep install --from-paths src --ignore-src -r -y

RB-1 Base

Launch RB-1 Base simulation (1 robot by default, up to 3 robots):

roslaunch rb1_base_sim_bringup rb1_base_complete.launch

Optional general arguments:

<arg name="launch_rviz" default="true"/>
<arg name="gazebo_world" default="$(find rb1_base_gazebo)/worlds/rb1_base_office.world"/>

Optional robot arguments:

<!--arguments for each robot (example for robot A)-->
<arg name="id_robot_a" default="robot"/>
<arg name="launch_robot_a" default="true"/>
<arg name="has_elevator_robot_a" default="true"/>
<arg name="x_init_pose_robot_a" default="0" />
<arg name="y_init_pose_robot_a" default="0" />
<arg name="z_init_pose_robot_a" default="0" />
<arg name="init_yaw_robot_a" default="0.0" />
<arg name="gmapping_robot_a" default="false"/>
<arg name="amcl_and_mapserver_robot_a" default="false"/>
<arg name="map_frame_robot_a" default="$(arg id_robot_a)_map"/>
<arg name="map_file_robot_a" default="$(find rb1_base_localization)/maps/willow_garage/willow_garage.yaml"/>
<arg name="move_base_robot_a" default="false"/>
<arg name="pad_robot_a" default="true"/>
<arg name="xacro_robot_a" default="rb1_base_std.urdf.xacro"/>

Example to launch simulation with 3 RB-1 Base robots:

roslaunch rb1_base_sim_bringup rb1_base_complete.launch \
  launch_robot_b:=true \
  launch_robot_c:=true

Example to launch simulation with 1 RB-1 Base robot with navigation and localization:

roslaunch rb1_base_sim_bringup rb1_base_complete.launch \
  move_base_robot_a:=true \
  amcl_and_mapserver_robot_a:=true

Example to launch simulation with 2 RB-1 Base robot with navigation and localization sharing the same global frame:

roslaunch rb1_base_sim_bringup rb1_base_complete.launch \
  amcl_and_mapserver_robot_a:=true \
  move_base_robot_a:=true \
  map_frame_robot_a:=map \
  launch_robot_b:=true \
  amcl_and_mapserver_robot_b:=true \
  move_base_robot_b:=true \
  map_frame_robot_b:=map

Example to launch simulation with 3 RB-1 Base robot with navigation and localization sharing the same global frame:

roslaunch rb1_base_sim_bringup rb1_base_complete.launch \
  amcl_and_mapserver_robot_a:=true \
  move_base_robot_a:=true \
  map_frame_robot_a:=map \
  launch_robot_b:=true \
  amcl_and_mapserver_robot_b:=true \
  move_base_robot_b:=true \
  map_frame_robot_b:=map \
  launch_robot_c:=true \
  amcl_and_mapserver_robot_c:=true \
  move_base_robot_c:=true \
  map_frame_robot_c:=map

You can use the topic ${id_robot}/robotnik_base_control/cmd_vel to control the RB-1 Base robot or send simple goals using /${id_robot}/move_base_simple/goal

RB-1 Base Dual Arm

There is also a version of the base plus a torso with two ur3 arms.

Example to launch rb1_base with two ur arms:

roslaunch rb1_base_sim_bringup rb1_dual_ur3_complete.launch amcl_and_mapserver:=true move_base:=true

In case you want to use moveit to manipulate the arms:

roslaunch rb1_base_sim_bringup rb1_dual_ur3_complete.launch amcl_and_mapserver:=true move_base:=true moveit_movegroup:=true

This simulation requires the use of the ros_planar plugin (Robotnik's fork).

You can use the topic ${id_robot}/robotnik_base_control/cmd_vel to control the RB-1 Base Dual Arm robot or send simple goals using /${id_robot}/move_base_simple/goal

CONTRIBUTING

No CONTRIBUTING.md found.

Repository Summary

Checkout URI https://github.com/RobotnikAutomation/rb1_base_sim.git
VCS Type git
VCS Version indigo-devel
Last Updated 2017-06-29
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Packages

Name Version
rb1_base_control 1.0.1
rb1_base_gazebo 1.0.1
rb1_base_sim 1.0.2
rb1_base_sim_bringup 0.1.0

README

rb1_base_sim

Robot Simulation ROS packages for the Robotnik RB-1 Base, - rb1_base_control : Contains the configuration files for the Gazebo controllers used by the model. - rb1_base_gazebo : Contains the configuration files to launch the Gazebo environment along with the simulated robot. - rb1_base_sim_bringup : Contains the launch files to easy bringup all the simulation.

CONTRIBUTING

No CONTRIBUTING.md found.