Repository Summary
Checkout URI | https://github.com/RobotnikAutomation/summit_xl_sim.git |
VCS Type | git |
VCS Version | melodic-bringup |
Last Updated | 2021-08-06 |
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 |
---|---|
summit_xl_gazebo | 1.1.3 |
summit_xl_sim | 1.1.3 |
summit_xl_sim_bringup | 1.1.3 |
README
summit_xl_sim
Packages for the simulation of the Summit XL
This packages contains:
summit_xl_gazebo
Launch files and world files to start the models in gazebo
summit_xl_sim_bringup
Launch files that launch the complete simulation of the robot/s
Simulating Summit XL
This simulation has been tested using Gazebo 9 version.
Installation and run instruccions
1. Install the following dependencies:
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
For the latest version:
vcs import --input \
https://raw.githubusercontent.com/RobotnikAutomation/summit_xl_sim/melodic-devel/doc/summit_xl_sim.repos
rosdep install --from-paths src --ignore-src --skip-keys="summit_xl_robot_control" -y
For the stable version (some latest features may be not available):
vcs import --input \
https://raw.githubusercontent.com/RobotnikAutomation/summit_xl_sim/melodic-master/doc/summit_xl_sim.repos
rosdep install --from-paths src --ignore-src --skip-keys="summit_xl_robot_control" -y
3. Compile:
catkin build
source devel/setup.bash
ONLY: if catkin build doesn't work: The package catkin-tools is need to compile with catkin build:
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu `lsb_release -sc` main" > /etc/apt/sources.list.d/ros-latest.list'
wget http://packages.ros.org/ros.key -O - | sudo apt-key add -
sudo apt-get update
sudo apt-get install python-catkin-tools
4. Launch Summit XL simulation (1 robot by default, up to 3 robots):
Summit XL:
roslaunch summit_xl_sim_bringup summit_xl_complete.launch
Summit XL with Trossen Arm
roslaunch summit_xl_sim_bringup summit_xl_complete.launch default_xacro:=summit_xl_tix_std.urdf.xacro launch_arm_a:=true arm_manufacturer_a:=trossen arm_model_a:=vx300s
Launch moveit to plan trajectories:
ROS_NAMESPACE=robot roslaunch summit_xl_vx300s_moveit_config demo.launch
Summit XL with Kinova Arm
roslaunch summit_xl_sim_bringup summit_xl_complete.launch default_xacro:=summit_xl_gen_std.urdf.xacro launch_arm_a:=true arm_manufacturer_a:=kinova arm_model_a:=j2s7s300
or Summit XL Steel:
roslaunch summit_xl_sim_bringup summit_xls_complete.launch
Optional general arguments:
<arg name="launch_rviz" default="true"/>
<arg name="gazebo_world" default="$(find summit_xl_gazebo)/worlds/summit_xl_office.world"/>
<arg name="omni_drive" default="false"/> (only for Summit XL)
<arg name="use_gpu_for_simulation" default="false"/>
By default the Gazebo plugin Planar Move to ignore the physics of the wheels + the skid steering kinematics. In case you want to disable this plugin, set the following arguments:
roslaunch summit_xl_sim_bringup summit_xl_complete.launch \
ros_planar_move_plugin:=false \
omni_drive:=false
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="map_file_a" default="willow_garage/willow_garage.yaml"/>
<arg name="localization_robot_a" default="false"/>
<arg name="gmapping_robot_a" default="false"/>
<arg name="amcl_and_mapserver_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="xacro_robot_a" default="summit_xl_std.urdf.xacro"/>
- Example to launch simulation with 3 Summit XL robots:
roslaunch summit_xl_sim_bringup summit_xl_complete.launch \
launch_robot_b:=true \
launch_robot_c:=true
- Example to launch simulation with 1 Summit XL robot with navigation:
roslaunch summit_xl_sim_bringup summit_xl_complete.launch \
move_base_robot_a:=true \
amcl_and_mapserver_a:=true
Enjoy! You can use the topic ${id_robot}/robotnik_base_control/cmd_vel
to control the Summit XL robot or send simple goals using /${id_robot}/move_base_simple/goal
Docker usage
In order to run this simulation you will need nvidia graphical accelation
Installation of required files
- docker
- nvidia-docker
- nvidia-drivers
Usage
git clone https://github.com/RobotnikAutomation/summit_xl_sim.git
cd summit_xl_sim
git checkout melodic-devel
docker/simulation-in-container-run.sh
Selecting the robot model
You can select the robot, the launch file of package using the optional arguments on launch
By default the selected robot is summit_xl
docker/simulation-in-container-run.sh --help
ROBOTNIK AUTOMATION S.L.L. 2021
Simulation of SUMMIT XL using docker
Usage:
docker/simulation-in-container-run.sh [OPTIONS]
Optional arguments:
--robot -r ROBOT Select robot to simulate
Valid robots:
summit_xl summit_xl_gen summit_xls
default: summit_xl
--launch -l Select launch file
default: summit_xl_complete.launch
--package -p Select ros package
default: summit_xl_sim_bringup
--ros-port -u PORT Host ros port
default: 11345
--gazebo-port -g PORT Host ros port
default: 11345
-h, --help Shows this help
Summit XL GEN
docker/simulation-in-container-run.sh --robot summit_xl_gen
Summit XLS
docker/simulation-in-container-run.sh --robot summit_xls
Manual Build
If you wish to build manually the image without the use of the script use one the following commands:
Optiona A
cd docker
docker build -f Dockerfile ..
Option B
docker build -f docker/Dockerfile .
Notes
- This is docker requires a graphical interface
- The ros master uri is accesible outside the container, so in the host any ros command should work
- You could also run a roscore previous to launch the simulation in order to have some processes on the host running
- if you want to enter on the container use the following command in another terminal
docker container exec -it summit_xl_sim_instance bash
- In order to exit you have to 2 options
- Close
gazebo
andrviz
and wait a bit - execute in another terminal:
docker container rm --force summit_xl_sim_instance
CONTRIBUTING
Repository Summary
Checkout URI | https://github.com/RobotnikAutomation/summit_xl_sim.git |
VCS Type | git |
VCS Version | indigo-devel |
Last Updated | 2017-10-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 |
---|---|
summit_xl_gazebo | 1.1.1 |
summit_xl_robot_control | 1.1.1 |
summit_xl_sim | 1.1.1 |
summit_xl_sim_bringup | 1.1.1 |
README
summit_xl_sim
Packages for the simulation of the Summit XL
summit_xl_control
This package contains the launch and configuration files to spawn the joint controllers with the ROS controller_manager. It allows to launch the joint controllers for the Summit XL (4 axes skid steering + 2 axes ptz), Summit XL OMNI (4 axes skid steering, 4 axes swerve drive), Summit X-WAM (4 axes skid steering, 4 axes swerve drive, 1 linear axis for scissor mechanism). The Summit XL simulation stack follows the gazebo_ros controller manager scheme described in http://gazebosim.org/wiki/Tutorials/1.9/ROS_Control_with_Gazebo
summit_xl_gazebo
launch files and world files to start the models in gazebosummit_xl_robot_control
control the robot joints in all kinematic configurations, publishes odom topic and, if configured, also tf odom to base_link. Usually takes as input joystick commands and generates as outputs references for the gazebo controllers defined in summit_xl_control. This package permits an alternative way to control the robot motion (4 motorwheels) that by default is carried on by the Gazebo plugin (skid-steer). In the default configuration this package only controls the pan-tilt camera joints. When used as main controller of the simulated robot, this node also computes the odometry of the robot using the joint movements and a IMU and publish this odometry to /odom. The node has a flag in the yaml files that forces the publication or not of the odom->base_footprint frames, needed by the localization and mapping algorithms.
summit_xl_sim_bringup
launch files that launch the complete simulation of the robot
Simulating Summit XL
1) Install the following dependencies: - summit_xl_common link - robotnik_msgs link - robotnik_sensors link
2) Launch Summit XL simulation with:
- roslaunch summit_xl_sim_bringup summit_xl_complete.launch
3) Enjoy! You can use the topic "/summit_xl_control/cmd_vel" to control the Summit XL robot.
CONTRIBUTING
Repository Summary
Checkout URI | https://github.com/RobotnikAutomation/summit_xl_sim.git |
VCS Type | git |
VCS Version | hydro |
Last Updated | 2014-12-04 |
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 |
---|---|
bh262_description | 0.0.0 |
summit_xl_2dnav | 1.0.0 |
summit_xl_control | 0.0.0 |
summit_xl_description | 1.0.0 |
summit_xl_gazebo | 0.1.0 |
summit_xl_joint_state | 0.0.0 |
summit_xl_joystick | 0.0.0 |
summit_xl_robot_control | 0.0.0 |
wam_description | 0.0.0 |
x_wam_moveit | 0.2.0 |
xl_terabot_description | UNKNOWN |
README
summit_xl_sim
Packages for the simulation of the Summit XL, Summit XL HL and Summit-X (including X-WAM) robots
bh262_description
Contains the description of the Barrett Hand: urdf and meshes. This Hand is mounted on the WAM arm and is the end effector used by the X-WAM mobile manipulator.
summit_xl_2dnav
This package contains all the configuration files needed to execute the AMCL and SLAM navigation algorithms in simulation.
summit_xl_control
New gazebo 1.9 style robot control
summit_xl_description
robot description (urdf and meshes). Includes also V-REP model.
summit_xl_gazebo
launch files and world files to start the models in gazebo
summit_xl_joint_state
test node to publish joint states (as alternative to the joint_state_publisher)
summit_xl_joystick
node to process the joystick in simulation (configured for PS3, but others are also possible).
summit_xl_robot_control
control the robot joints in all kinematic configurations, publishes odom topic and, if configured, also tf odom to base_link. Usually takes as input joystick commands and generates as outputs references for the gazebo controllers defined in summit_xl_control.
summit_xl_waypoints
pass a set of goals from a file to the move_base stack.
wam_description
Barrett WAM (Whole Arm Manipulator) urdf and meshes.
xl_terabot_description
Robot description of the XL-Terabot robot.
x_wam_moveit
Draft moveit package to control the X-WAM.
CONTRIBUTING
Repository Summary
Checkout URI | https://github.com/RobotnikAutomation/summit_xl_sim.git |
VCS Type | git |
VCS Version | kinetic-devel |
Last Updated | 2021-04-15 |
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 |
---|---|
summit_xl_gazebo | 1.1.3 |
summit_xl_sim | 1.1.3 |
summit_xl_sim_bringup | 1.1.3 |
README
summit_xl_sim
Packages for the simulation of the Summit XL
Packages
summit_xl_gazebo
Launch files and world files to start the models in gazebo
summit_xl_sim_bringup
Launch files that launch the complete simulation of the robot/s
Simulating Summit XL
-
Install the following dependencies:
In the workspace install the packages dependencies:
rosdep install --from-paths src --ignore-src -r -y
- Launch Summit XL simulation (1 robot by default, up to 3 robots):
- Summit XL:
roslaunch summit_xl_sim_bringup summit_xl_complete.launch
- or Summit XL Steel:
roslaunch summit_xl_sim_bringup summit_xls_complete.launch
Optional general arguments:
<arg name="launch_rviz" default="true"/>
<arg name="gazebo_world" default="$(find summit_xl_gazebo)/worlds/summit_xl_office.world"/>
<arg name="omni_drive" default="false"/> (only for Summit XL)
<arg name="use_gpu_for_simulation" default="false"/>
By default the Gazebo plugin Planar Move to ignore the physics of the wheels + the skid steering kinematics. In case you want to disable this plugin, set the following arguments:
roslaunch summit_xl_sim_bringup summit_xl_complete.launch ros_planar_move_plugin:=false omni_drive:=false
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="map_file_a" default="willow_garage/willow_garage.yaml"/>
<arg name="localization_robot_a" default="false"/>
<arg name="gmapping_robot_a" default="false"/>
<arg name="amcl_and_mapserver_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="xacro_robot_a" default="summit_xl_std.urdf.xacro"/>
- Example to launch simulation with 3 Summit XL robots:
roslaunch summit_xl_sim_bringup summit_xl_complete.launch launch_robot_b:=true launch_robot_c:=true
- Example to launch simulation with 1 Summit XL robot with navigation:
roslaunch summit_xl_sim_bringup summit_xl_complete.launch move_base_robot_a:=true amcl_and_mapserver_a:=true
- Enjoy! You can use the topic "${id_robot}/robotnik_base_control/cmd_vel" to control the Summit XL robot or send simple goals using "/${id_robot}/move_base_simple/goal"