diff --git a/README.md b/README.md index ce8bcefe..56bb2019 100644 --- a/README.md +++ b/README.md @@ -41,6 +41,7 @@ mkdir -p ~/create3_ws/src ``` - Clone this repository into the src directory from above. +- Clone the []`irobot_create_msgs` repository](https://github.com/iRobotEducation/irobot_create_msgs) into the workspace - Navigate to the workspace and install ROS 2 dependencies with: @@ -53,65 +54,12 @@ rosdep install --from-path src -yi - Build the workspace with: ```bash -export IGNITION_VERSION=fortress colcon build --symlink-install source install/local_setup.bash ``` ## Run -#### Classic Gazebo - -##### Empty world - -Create® 3 can be spawned in an empty world in Gazebo and monitored through RViz with: - -```bash -ros2 launch irobot_create_gazebo_bringup create3_gazebo.launch.py -``` - -The spawn point can be changed with the `x`, `y`, `z` and `yaw` launch arguments: - -```bash -ros2 launch irobot_create_gazebo_bringup create3_gazebo.launch.py x:=1.0 y:=0.5 yaw:=1.5707 -``` - -##### Namespacing - -A namespace can be applied to the robot using the `namespace` launch argument: - -```bash -ros2 launch irobot_create_gazebo_bringup create3_gazebo.launch.py namespace:=my_robot -``` - -Multiple robots can be spawned with unique namespaces: - -```bash -ros2 launch irobot_create_gazebo_bringup create3_gazebo.launch.py namespace:=robot1 -ros2 launch irobot_create_gazebo_bringup create3_spawn.launch.py namespace:=robot2 x:=1.0 -``` - -> :warning: `create3_gazebo.launch.py` should only be used once as it launches the Gazebo simulator itself. Additional robots should be spawned with `create3_spawn.launch.py`. Namespaces and spawn points should be unique for each robot. - -##### AWS house - -Create® 3 can be spawned in the AWS small house in Gazebo and monitored through RViz. -This requires that the package `aws_robomaker_small_house_world` is available. - -If you need it, you can build `aws_robomaker_small_house_world` in your ROS 2 workspace by doing: -```bash -vcs import ~/create3_ws/src/ < ~/create3_ws/src/create3_sim/irobot_create_gazebo/demo.repos -cd ~/create3_ws -colcon build --symlink-install -source install/local_setup.bash -``` - -Then you can run: - -```bash -ros2 launch irobot_create_gazebo_bringup create3_gazebo_aws_small.launch.py -``` - #### Ignition Gazebo Create® 3 can be spawned in a demo world in Ignition and monitored through RViz with @@ -154,11 +102,6 @@ This repository contains packages for both the Classic and Ignition Gazebo simul - `irobot_create_nodes` Nodes for simulating robot topics and motion control - `irobot_create_toolbox` Tools and helpers for creating nodes and plugins -- `irobot_create_gazebo` Packages used for the Classic Gazebo Simulator - - `irobot_create_gazebo_bringup` Launch files and configurations - - `irobot_create_gazebo_plugins` Sensor plugins - - `irobot_create_gazebo_sim` Metapackage - - `irobot_create_ignition` Packages used for the Ignition Gazebo Simulator - `irobot_create_ignition_bringup` Launch files and configurations - `irobot_create_ignition_plugins` GUI plugins diff --git a/irobot_create_common/irobot_create_description/urdf/create3.urdf.xacro b/irobot_create_common/irobot_create_description/urdf/create3.urdf.xacro index 6ccd6678..fc2d1002 100644 --- a/irobot_create_common/irobot_create_description/urdf/create3.urdf.xacro +++ b/irobot_create_common/irobot_create_description/urdf/create3.urdf.xacro @@ -134,7 +134,7 @@ - + $(find irobot_create_control)/config/control.yaml ~/odom:=odom @@ -284,7 +284,7 @@ - + true true true @@ -293,11 +293,11 @@ - + - + ogre diff --git a/irobot_create_common/irobot_create_description/urdf/dock/standard_dock.urdf.xacro b/irobot_create_common/irobot_create_description/urdf/dock/standard_dock.urdf.xacro index 7e19ea63..fe972170 100644 --- a/irobot_create_common/irobot_create_description/urdf/dock/standard_dock.urdf.xacro +++ b/irobot_create_common/irobot_create_description/urdf/dock/standard_dock.urdf.xacro @@ -106,7 +106,7 @@ true - + true true true diff --git a/irobot_create_common/irobot_create_description/urdf/wheel.urdf.xacro b/irobot_create_common/irobot_create_description/urdf/wheel.urdf.xacro index 9d578f78..ee099035 100644 --- a/irobot_create_common/irobot_create_description/urdf/wheel.urdf.xacro +++ b/irobot_create_common/irobot_create_description/urdf/wheel.urdf.xacro @@ -60,7 +60,7 @@ - gz_ros2_control/IgnitionSystem + gz_ros2_control/GazeboSimSystem diff --git a/irobot_create_ignition/irobot_create_ignition_bringup/gui/create3/gui.config b/irobot_create_ignition/irobot_create_ignition_bringup/gui/create3/gui.config index 48b6d101..4f650410 100644 --- a/irobot_create_ignition/irobot_create_ignition_bringup/gui/create3/gui.config +++ b/irobot_create_ignition/irobot_create_ignition_bringup/gui/create3/gui.config @@ -1,17 +1,16 @@ - - - 3D View - false - docked - - - ogre2 - scene - -0.0176 -0.737 0.017 0 -0.135 1.64 - + + + 3D View + false + docked + + ogre2 + scene + -0.0176 -0.737 0.017 0 -0.135 1.64 + @@ -92,6 +91,7 @@ + diff --git a/irobot_create_ignition/irobot_create_ignition_bringup/launch/ignition.launch.py b/irobot_create_ignition/irobot_create_ignition_bringup/launch/ignition.launch.py index bb130d70..db4eac4d 100644 --- a/irobot_create_ignition/irobot_create_ignition_bringup/launch/ignition.launch.py +++ b/irobot_create_ignition/irobot_create_ignition_bringup/launch/ignition.launch.py @@ -29,15 +29,15 @@ def generate_launch_description(): # Directories pkg_irobot_create_ignition_bringup = get_package_share_directory( 'irobot_create_ignition_bringup') - pkg_irobot_create_ignition_plugins = get_package_share_directory( - 'irobot_create_ignition_plugins') + #pkg_irobot_create_ignition_plugins = get_package_share_directory( + # 'irobot_create_ignition_plugins') pkg_irobot_create_description = get_package_share_directory( 'irobot_create_description') pkg_ros_gz_sim = get_package_share_directory( 'ros_gz_sim') # Set Ignition resource path - ign_resource_path = SetEnvironmentVariable(name='IGN_GAZEBO_RESOURCE_PATH', + ign_resource_path = SetEnvironmentVariable(name='GZ_SIM_RESOURCE_PATH', value=[os.path.join( pkg_irobot_create_ignition_bringup, 'worlds'), ':' + @@ -45,18 +45,18 @@ def generate_launch_description(): pkg_irobot_create_description). parent.resolve())]) - ign_gui_plugin_path = SetEnvironmentVariable(name='IGN_GUI_PLUGIN_PATH', - value=[os.path.join( - pkg_irobot_create_ignition_plugins, - 'lib')]) + #gz_gui_plugin_path = SetEnvironmentVariable(name='GZ_GUI_PLUGIN_PATH', + # value=[os.path.join( + # pkg_irobot_create_ignition_plugins, + # 'lib')]) # Paths - ign_gazebo_launch = PathJoinSubstitution( - [pkg_ros_gz_sim, 'launch', 'ign_gazebo.launch.py']) + gz_sim_launch = PathJoinSubstitution( + [pkg_ros_gz_sim, 'launch', 'gz_sim.launch.py']) # Ignition gazebo ignition_gazebo = IncludeLaunchDescription( - PythonLaunchDescriptionSource([ign_gazebo_launch]), + PythonLaunchDescriptionSource([gz_sim_launch]), launch_arguments=[ ('ign_args', [LaunchConfiguration('world'), '.sdf', @@ -78,7 +78,7 @@ def generate_launch_description(): # Create launch description and add actions ld = LaunchDescription(ARGUMENTS) ld.add_action(ign_resource_path) - ld.add_action(ign_gui_plugin_path) + #ld.add_action(gz_gui_plugin_path) ld.add_action(ignition_gazebo) ld.add_action(clock_bridge) return ld diff --git a/irobot_create_ignition/irobot_create_ignition_bringup/package.xml b/irobot_create_ignition/irobot_create_ignition_bringup/package.xml index 2920c32d..a54a7455 100644 --- a/irobot_create_ignition/irobot_create_ignition_bringup/package.xml +++ b/irobot_create_ignition/irobot_create_ignition_bringup/package.xml @@ -15,7 +15,6 @@ irobot_create_description irobot_create_common_bringup irobot_create_ignition_toolbox - irobot_create_ignition_plugins gz_ros2_control diff --git a/irobot_create_ignition/irobot_create_ignition_bringup/worlds/depot.sdf b/irobot_create_ignition/irobot_create_ignition_bringup/worlds/depot.sdf index 1e112108..ee9a785c 100644 --- a/irobot_create_ignition/irobot_create_ignition_bringup/worlds/depot.sdf +++ b/irobot_create_ignition/irobot_create_ignition_bringup/worlds/depot.sdf @@ -8,10 +8,10 @@ 0.003 1.0 - - - - + + + + diff --git a/irobot_create_ignition/irobot_create_ignition_bringup/worlds/maze.sdf b/irobot_create_ignition/irobot_create_ignition_bringup/worlds/maze.sdf index aa0f4bd5..4a4492d1 100644 --- a/irobot_create_ignition/irobot_create_ignition_bringup/worlds/maze.sdf +++ b/irobot_create_ignition/irobot_create_ignition_bringup/worlds/maze.sdf @@ -5,10 +5,10 @@ 1 1000 - - - - + + + + 1 0 0 10 0 -0 0