diff --git a/turtlebot3_fake_node/CHANGELOG.rst b/turtlebot3_fake_node/CHANGELOG.rst index 91e79d51..8e292b9a 100644 --- a/turtlebot3_fake_node/CHANGELOG.rst +++ b/turtlebot3_fake_node/CHANGELOG.rst @@ -2,6 +2,10 @@ Changelog for package turtlebot3_fake ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +2.3.4 (2025-05-28) +------------------ +* None + 2.3.0 (2025-02-17) ------------------ * None diff --git a/turtlebot3_fake_node/package.xml b/turtlebot3_fake_node/package.xml index 066eb54c..6829502f 100644 --- a/turtlebot3_fake_node/package.xml +++ b/turtlebot3_fake_node/package.xml @@ -2,7 +2,7 @@ turtlebot3_fake_node - 2.3.0 + 2.3.4 Package for TurtleBot3 fake node. With this package, simple tests can be done without a robot. You can do simple tests using this package on rviz without real robots. diff --git a/turtlebot3_gazebo/CHANGELOG.rst b/turtlebot3_gazebo/CHANGELOG.rst index 84793f33..4605e958 100644 --- a/turtlebot3_gazebo/CHANGELOG.rst +++ b/turtlebot3_gazebo/CHANGELOG.rst @@ -2,6 +2,10 @@ Changelog for package turtlebot3_gazebo ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +2.3.4 (2025-05-28) +------------------ +* None + 2.3.0 (2025-02-17) ------------------ * Added multi-robot launch functionality diff --git a/turtlebot3_gazebo/package.xml b/turtlebot3_gazebo/package.xml index b709c2fd..be4e83c4 100644 --- a/turtlebot3_gazebo/package.xml +++ b/turtlebot3_gazebo/package.xml @@ -2,7 +2,7 @@ turtlebot3_gazebo - 2.3.0 + 2.3.4 Gazebo simulation package for the TurtleBot3 diff --git a/turtlebot3_manipulation_gazebo/CHANGELOG.rst b/turtlebot3_manipulation_gazebo/CHANGELOG.rst new file mode 100644 index 00000000..f9125521 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/CHANGELOG.rst @@ -0,0 +1,8 @@ +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +Changelog for package turtlebot3_manipulation_gazebo +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +2.3.4 (2025-05-28) +------------------ +* Moved the TurtleBot3 Manipulation Gazebo simulation from the turtlebot3_manipulation_bringup package +* Contributors: ChanHyeong Lee diff --git a/turtlebot3_manipulation_gazebo/CMakeLists.txt b/turtlebot3_manipulation_gazebo/CMakeLists.txt new file mode 100644 index 00000000..14b379f5 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/CMakeLists.txt @@ -0,0 +1,23 @@ +################################################################################ +# Set minimum required version of cmake, project name and compile options +################################################################################ +cmake_minimum_required(VERSION 3.5) +project(turtlebot3_manipulation_gazebo) + +################################################################################ +# Find and load build settings from external packages +################################################################################ +find_package(ament_cmake REQUIRED) + +################################################################################ +# Install +################################################################################ +install( + DIRECTORY config gazebo launch ros2_control rviz urdf worlds models + DESTINATION share/${PROJECT_NAME} +) + +################################################################################ +# Macro for ament package +################################################################################ +ament_package() diff --git a/turtlebot3_manipulation_gazebo/config/gazebo_controller_manager.yaml b/turtlebot3_manipulation_gazebo/config/gazebo_controller_manager.yaml new file mode 100644 index 00000000..8ab2b86a --- /dev/null +++ b/turtlebot3_manipulation_gazebo/config/gazebo_controller_manager.yaml @@ -0,0 +1,54 @@ +controller_manager: + ros__parameters: + use_sim_time: True + update_rate: 1000 # Hz + + joint_state_broadcaster: + type: joint_state_broadcaster/JointStateBroadcaster + + imu_broadcaster: + type: imu_sensor_broadcaster/IMUSensorBroadcaster + + arm_controller: + type: joint_trajectory_controller/JointTrajectoryController + + gripper_controller: + type: position_controllers/GripperActionController + +imu_broadcaster: + ros__parameters: + use_sim_time: True + frame_id: imu_link + sensor_name: imu + +arm_controller: + ros__parameters: + use_sim_time: True + joints: + - joint1 + - joint2 + - joint3 + - joint4 + interface_name: position + + command_interfaces: + - position + + state_interfaces: + - position + - velocity + + state_publish_rate: 200.0 # Defaults to 50 + action_monitor_rate: 20.0 # Defaults to 20 + + allow_partial_joints_goal: false # Defaults to false + open_loop_control: true + allow_integration_in_goal_trajectories: true + constraints: + stopped_velocity_tolerance: 0.01 # Defaults to 0.01 + goal_time: 0.0 # Defaults to 0.0 (start immediately) + +gripper_controller: + ros__parameters: + use_sim_time: True + joint: gripper_left_joint diff --git a/turtlebot3_manipulation_gazebo/config/hardware_controller_manager.yaml b/turtlebot3_manipulation_gazebo/config/hardware_controller_manager.yaml new file mode 100644 index 00000000..8890d4a7 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/config/hardware_controller_manager.yaml @@ -0,0 +1,110 @@ +controller_manager: + ros__parameters: + update_rate: 100 # Hz + + joint_state_broadcaster: + type: joint_state_broadcaster/JointStateBroadcaster + + diff_drive_controller: + type: diff_drive_controller/DiffDriveController + + imu_broadcaster: + type: imu_sensor_broadcaster/IMUSensorBroadcaster + + arm_controller: + type: joint_trajectory_controller/JointTrajectoryController + + gripper_controller: + type: position_controllers/GripperActionController + +diff_drive_controller: + ros__parameters: + left_wheel_names: ["wheel_left_joint"] + right_wheel_names: ["wheel_right_joint"] + + wheel_separation: 0.287 + #wheels_per_side: 1 # actually 2, but both are controlled by 1 signal + wheel_radius: 0.033 + + wheel_separation_multiplier: 1.0 + left_wheel_radius_multiplier: 1.0 + right_wheel_radius_multiplier: 1.0 + + publish_rate: 50.0 + odom_frame_id: odom + base_frame_id: base_footprint + pose_covariance_diagonal : [0.001, 0.001, 0.001, 0.001, 0.001, 0.01] + twist_covariance_diagonal: [0.001, 0.001, 0.001, 0.001, 0.001, 0.01] + + open_loop: true + enable_odom_tf: true + + cmd_vel_timeout: 0.5 + #publish_limited_velocity: true + use_stamped_vel: false + #velocity_rolling_window_size: 10 + + # Preserve turning radius when limiting speed/acceleration/jerk + preserve_turning_radius: true + + # Publish limited velocity + publish_cmd: true + + # Publish wheel data + publish_wheel_data: true + + # Velocity and acceleration limits + # Whenever a min_* is unspecified, default to -max_* + linear.x.has_velocity_limits: true + linear.x.has_acceleration_limits: true + linear.x.has_jerk_limits: false + linear.x.max_velocity: 0.26 + linear.x.min_velocity: -0.26 + linear.x.max_acceleration: 1.0 + linear.x.max_jerk: 0.0 + linear.x.min_jerk: 0.0 + + angular.z.has_velocity_limits: true + angular.z.has_acceleration_limits: true + angular.z.has_jerk_limits: false + angular.z.max_velocity: 1.82 + angular.z.min_velocity: -1.82 + angular.z.max_acceleration: 4.0 + angular.z.min_acceleration: -4.0 + angular.z.max_jerk: 0.0 + angular.z.min_jerk: 0.0 + +imu_broadcaster: + ros__parameters: + frame_id: imu_link + sensor_name: imu + +arm_controller: + ros__parameters: + joints: + - joint1 + - joint2 + - joint3 + - joint4 + interface_name: position + + command_interfaces: + - position + + state_interfaces: + - position + - velocity + + state_publish_rate: 200.0 # Defaults to 50 + action_monitor_rate: 20.0 # Defaults to 20 + + allow_partial_joints_goal: false # Defaults to false + open_loop_control: true + allow_integration_in_goal_trajectories: true + constraints: + stopped_velocity_tolerance: 0.01 # Defaults to 0.01 + goal_time: 0.0 # Defaults to 0.0 (start immediately) + +gripper_controller: + ros__parameters: + joint: gripper_left_joint diff --git a/turtlebot3_manipulation_gazebo/gazebo/materials.xacro b/turtlebot3_manipulation_gazebo/gazebo/materials.xacro new file mode 100644 index 00000000..5ce0e021 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/gazebo/materials.xacro @@ -0,0 +1,48 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/turtlebot3_manipulation_gazebo/gazebo/open_manipulator_x.gazebo.xacro b/turtlebot3_manipulation_gazebo/gazebo/open_manipulator_x.gazebo.xacro new file mode 100644 index 00000000..9dac610d --- /dev/null +++ b/turtlebot3_manipulation_gazebo/gazebo/open_manipulator_x.gazebo.xacro @@ -0,0 +1,58 @@ + + + + + + + + + transmission_interface/SimpleTransmission + + PositionJointInterface + + + 1 + PositionJointInterface + + + + + + + 1000000.0 + 100.0 + 30.0 + 30.0 + 1.0 + 0.001 + Gazebo/DarkGrey + + + + + + + + + + + + + + Gazebo/Red + + + + + + + + + + + + + diff --git a/turtlebot3_manipulation_gazebo/gazebo/turtlebot3_waffle_pi.gazebo.xacro b/turtlebot3_manipulation_gazebo/gazebo/turtlebot3_waffle_pi.gazebo.xacro new file mode 100644 index 00000000..82e72735 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/gazebo/turtlebot3_waffle_pi.gazebo.xacro @@ -0,0 +1,165 @@ + + + + + + + + + + + + Gazebo/DarkGrey + + + + 10000 + 10000 + 500000.0 + 10.0 + 0.001 + 0.1 + 1 0 0 + Gazebo/FlatBlack + + + + 10000 + 10000 + 500000.0 + 10.0 + 0.001 + 0.1 + 1 0 0 + Gazebo/FlatBlack + + + + 0.1 + 0.1 + 1000000.0 + 100.0 + 0.001 + 1.0 + Gazebo/FlatBlack + + + + 0.1 + 0.1 + 1000000.0 + 100.0 + 0.001 + 1.0 + Gazebo/FlatBlack + + + + Gazebo/Grey + + true + 100.0 + ${imu_visual} + + + + + + + + cmd_vel:=cmd_vel + odom:=odom + + + wheel_left_joint + wheel_right_joint + 0.287 + 0.066 + 20 + 1.0 + true + true + false + odom + base_footprint + + + + + Gazebo/FlatBlack + + 0 0 0 0 0 0 + true + 5.0 + ${laser_visual} + + + + 360 + 1 + 0.0 + 6.28319 + + + + 0.120 + 3.5 + 0.015 + + + gaussian + 0.0 + 0.01 + + + + + + ~/out:=scan + + sensor_msgs/LaserScan + + + + + + + 30 + true + ${camera_visual} + + 1.085595 + + 640 + 480 + R8G8B8 + + + 0.03 + 100 + + + gaussian + + 0.0 + 0.007 + + + + + + image_raw:=image_raw + camera_info:=camera_info + + + + + + + + diff --git a/turtlebot3_manipulation_gazebo/launch/base.launch.py b/turtlebot3_manipulation_gazebo/launch/base.launch.py new file mode 100644 index 00000000..f361531c --- /dev/null +++ b/turtlebot3_manipulation_gazebo/launch/base.launch.py @@ -0,0 +1,240 @@ +#!/usr/bin/env python3 +# +# Copyright 2022 ROBOTIS CO., LTD. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Author: Darby Lim, Hye-jong KIM + +from launch import LaunchDescription +from launch.actions import DeclareLaunchArgument +from launch.actions import RegisterEventHandler +from launch.conditions import IfCondition +from launch.conditions import UnlessCondition +from launch.event_handlers import OnProcessExit +from launch.substitutions import Command +from launch.substitutions import FindExecutable +from launch.substitutions import LaunchConfiguration +from launch.substitutions import PathJoinSubstitution + +from launch_ros.actions import Node +from launch_ros.substitutions import FindPackageShare + + +def generate_launch_description(): + declared_arguments = [] + declared_arguments.append( + DeclareLaunchArgument( + 'start_rviz', + default_value='false', + description='Whether execute rviz2' + ) + ) + + declared_arguments.append( + DeclareLaunchArgument( + 'prefix', + default_value='""', + description='Prefix of the joint and link names' + ) + ) + + declared_arguments.append( + DeclareLaunchArgument( + 'use_sim', + default_value='false', + description='Start robot in Gazebo simulation.' + ) + ) + + declared_arguments.append( + DeclareLaunchArgument( + 'use_fake_hardware', + default_value='false', + description='Start robot with fake hardware mirroring command to its states.' + ) + ) + + declared_arguments.append( + DeclareLaunchArgument( + 'fake_sensor_commands', + default_value='false', + description='Enable fake command interfaces for sensors used for simple simulations. \ + Used only if "use_fake_hardware" parameter is true.' + ) + ) + + start_rviz = LaunchConfiguration('start_rviz') + prefix = LaunchConfiguration('prefix') + use_sim = LaunchConfiguration('use_sim') + use_fake_hardware = LaunchConfiguration('use_fake_hardware') + fake_sensor_commands = LaunchConfiguration('fake_sensor_commands') + + urdf_file = Command( + [ + PathJoinSubstitution([FindExecutable(name='xacro')]), + ' ', + PathJoinSubstitution( + [ + FindPackageShare('turtlebot3_manipulation_gazebo'), + 'urdf', + 'turtlebot3_manipulation.urdf.xacro' + ] + ), + ' ', + 'prefix:=', + prefix, + ' ', + 'use_sim:=', + use_sim, + ' ', + 'use_fake_hardware:=', + use_fake_hardware, + ' ', + 'fake_sensor_commands:=', + fake_sensor_commands, + ] + ) + + controller_manager_config = PathJoinSubstitution( + [ + FindPackageShare('turtlebot3_manipulation_gazebo'), + 'config', + 'hardware_controller_manager.yaml', + ] + ) + + rviz_config_file = PathJoinSubstitution( + [ + FindPackageShare('turtlebot3_manipulation_gazebo'), + 'rviz', + 'turtlebot3_manipulation.rviz' + ] + ) + + control_node = Node( + package='controller_manager', + executable='ros2_control_node', + parameters=[ + {'robot_description': urdf_file}, + controller_manager_config + ], + remappings=[ + ('~/cmd_vel_unstamped', 'cmd_vel'), + ('~/odom', 'odom') + ], + output='both', + condition=UnlessCondition(use_sim)) + + robot_state_pub_node = Node( + package='robot_state_publisher', + executable='robot_state_publisher', + parameters=[{'robot_description': urdf_file, 'use_sim_time': use_sim}], + output='screen' + ) + + rviz_node = Node( + package='rviz2', + executable='rviz2', + arguments=['-d', rviz_config_file], + output='screen', + condition=IfCondition(start_rviz) + ) + + joint_state_broadcaster_spawner = Node( + package='controller_manager', + executable='spawner', + arguments=['joint_state_broadcaster', '--controller-manager', '/controller_manager'], + output='screen', + ) + + diff_drive_controller_spawner = Node( + package='controller_manager', + executable='spawner', + arguments=['diff_drive_controller', '-c', '/controller_manager'], + output='screen', + condition=UnlessCondition(use_sim) + ) + + imu_broadcaster_spawner = Node( + package='controller_manager', + executable='spawner', + arguments=['imu_broadcaster'], + output='screen', + ) + + arm_controller_spawner = Node( + package='controller_manager', + executable='spawner', + arguments=['arm_controller'], + output='screen', + ) + + gripper_controller_spawner = Node( + package='controller_manager', + executable='spawner', + arguments=['gripper_controller'], + output='screen', + ) + + delay_rviz_after_joint_state_broadcaster_spawner = RegisterEventHandler( + event_handler=OnProcessExit( + target_action=joint_state_broadcaster_spawner, + on_exit=[rviz_node], + ) + ) + + delay_diff_drive_controller_spawner_after_joint_state_broadcaster_spawner = \ + RegisterEventHandler( + event_handler=OnProcessExit( + target_action=joint_state_broadcaster_spawner, + on_exit=[diff_drive_controller_spawner], + ) + ) + + delay_imu_broadcaster_spawner_after_joint_state_broadcaster_spawner = \ + RegisterEventHandler( + event_handler=OnProcessExit( + target_action=joint_state_broadcaster_spawner, + on_exit=[imu_broadcaster_spawner], + ) + ) + + delay_arm_controller_spawner_after_joint_state_broadcaster_spawner = \ + RegisterEventHandler( + event_handler=OnProcessExit( + target_action=joint_state_broadcaster_spawner, + on_exit=[arm_controller_spawner], + ) + ) + + delay_gripper_controller_spawner_after_joint_state_broadcaster_spawner = \ + RegisterEventHandler( + event_handler=OnProcessExit( + target_action=joint_state_broadcaster_spawner, + on_exit=[gripper_controller_spawner], + ) + ) + + nodes = [ + control_node, + robot_state_pub_node, + joint_state_broadcaster_spawner, + delay_rviz_after_joint_state_broadcaster_spawner, + delay_diff_drive_controller_spawner_after_joint_state_broadcaster_spawner, + delay_imu_broadcaster_spawner_after_joint_state_broadcaster_spawner, + delay_arm_controller_spawner_after_joint_state_broadcaster_spawner, + delay_gripper_controller_spawner_after_joint_state_broadcaster_spawner, + ] + + return LaunchDescription(declared_arguments + nodes) diff --git a/turtlebot3_manipulation_gazebo/launch/fake.launch.py b/turtlebot3_manipulation_gazebo/launch/fake.launch.py new file mode 100644 index 00000000..6e9f9e92 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/launch/fake.launch.py @@ -0,0 +1,79 @@ +#!/usr/bin/env python3 +# +# Copyright 2022 ROBOTIS CO., LTD. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Author: Darby Lim + +import os + +from launch import LaunchDescription +from launch.actions import DeclareLaunchArgument +from launch.actions import IncludeLaunchDescription +from launch.launch_description_sources import PythonLaunchDescriptionSource +from launch.substitutions import LaunchConfiguration +from launch.substitutions import ThisLaunchFileDir + + +def is_valid_to_launch(): + # Path includes model name of Raspberry Pi series + path = '/sys/firmware/devicetree/base/model' + if os.path.exists(path): + return False + else: + return True + + +def generate_launch_description(): + if not is_valid_to_launch(): + print('Can not launch fake robot in Raspberry Pi') + return LaunchDescription([]) + + start_rviz = LaunchConfiguration('start_rviz') + prefix = LaunchConfiguration('prefix') + use_fake_hardware = LaunchConfiguration('use_fake_hardware') + fake_sensor_commands = LaunchConfiguration('fake_sensor_commands') + + return LaunchDescription([ + DeclareLaunchArgument( + 'start_rviz', + default_value='true', + description='Whether execute rviz2'), + + DeclareLaunchArgument( + 'prefix', + default_value='""', + description='Prefix of the joint and link names'), + + DeclareLaunchArgument( + 'use_fake_hardware', + default_value='true', + description='Start robot with fake hardware mirroring command to its states.'), + + DeclareLaunchArgument( + 'fake_sensor_commands', + default_value='true', + description='Enable fake command interfaces for sensors used for simple simulations. \ + Used only if "use_fake_hardware" parameter is true.'), + + IncludeLaunchDescription( + PythonLaunchDescriptionSource([ThisLaunchFileDir(), '/base.launch.py']), + launch_arguments={ + 'start_rviz': start_rviz, + 'prefix': prefix, + 'use_fake_hardware': use_fake_hardware, + 'fake_sensor_commands': fake_sensor_commands, + }.items(), + ) + ]) diff --git a/turtlebot3_manipulation_gazebo/launch/gazebo.launch.py b/turtlebot3_manipulation_gazebo/launch/gazebo.launch.py new file mode 100644 index 00000000..e372957a --- /dev/null +++ b/turtlebot3_manipulation_gazebo/launch/gazebo.launch.py @@ -0,0 +1,158 @@ +#!/usr/bin/env python3 +# +# Copyright 2022 ROBOTIS CO., LTD. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Author: Darby Lim + +import os + +from launch import LaunchDescription +from launch.actions import DeclareLaunchArgument +from launch.actions import IncludeLaunchDescription +from launch.launch_description_sources import PythonLaunchDescriptionSource +from launch.substitutions import LaunchConfiguration +from launch.substitutions import PathJoinSubstitution +from launch.substitutions import ThisLaunchFileDir + +from launch_ros.actions import Node +from launch_ros.substitutions import FindPackageShare + + +def is_valid_to_launch(): + # Path includes model name of Raspberry Pi series + path = '/sys/firmware/devicetree/base/model' + if os.path.exists(path): + return False + else: + return True + + +def generate_launch_description(): + if not is_valid_to_launch(): + print('Can not launch fake robot in Raspberry Pi') + return LaunchDescription([]) + + start_rviz = LaunchConfiguration('start_rviz') + prefix = LaunchConfiguration('prefix') + use_sim = LaunchConfiguration('use_sim') + + world = LaunchConfiguration( + 'world', + default=PathJoinSubstitution( + [ + FindPackageShare('turtlebot3_gazebo'), + 'worlds', + 'turtlebot3_world.world' + ] + ) + ) + + pose = {'x': LaunchConfiguration('x_pose', default='-2.00'), + 'y': LaunchConfiguration('y_pose', default='-0.50'), + 'z': LaunchConfiguration('z_pose', default='0.01'), + 'R': LaunchConfiguration('roll', default='0.00'), + 'P': LaunchConfiguration('pitch', default='0.00'), + 'Y': LaunchConfiguration('yaw', default='0.00')} + + return LaunchDescription([ + DeclareLaunchArgument( + 'start_rviz', + default_value='false', + description='Whether execute rviz2'), + + DeclareLaunchArgument( + 'prefix', + default_value='""', + description='Prefix of the joint and link names'), + + DeclareLaunchArgument( + 'use_sim', + default_value='true', + description='Start robot in Gazebo simulation.'), + + DeclareLaunchArgument( + 'world', + default_value=world, + description='Directory of gazebo world file'), + + DeclareLaunchArgument( + 'x_pose', + default_value=pose['x'], + description='position of turtlebot3'), + + DeclareLaunchArgument( + 'y_pose', + default_value=pose['y'], + description='position of turtlebot3'), + + DeclareLaunchArgument( + 'z_pose', + default_value=pose['z'], + description='position of turtlebot3'), + + DeclareLaunchArgument( + 'roll', + default_value=pose['R'], + description='orientation of turtlebot3'), + + DeclareLaunchArgument( + 'pitch', + default_value=pose['P'], + description='orientation of turtlebot3'), + + DeclareLaunchArgument( + 'yaw', + default_value=pose['Y'], + description='orientation of turtlebot3'), + + IncludeLaunchDescription( + PythonLaunchDescriptionSource([ThisLaunchFileDir(), '/base.launch.py']), + launch_arguments={ + 'start_rviz': start_rviz, + 'prefix': prefix, + 'use_sim': use_sim, + }.items(), + ), + + IncludeLaunchDescription( + PythonLaunchDescriptionSource( + [ + PathJoinSubstitution( + [ + FindPackageShare('gazebo_ros'), + 'launch', + 'gazebo.launch.py' + ] + ) + ] + ), + launch_arguments={ + 'verbose': 'false', + 'world': world, + }.items(), + ), + + Node( + package='gazebo_ros', + executable='spawn_entity.py', + arguments=[ + '-topic', 'robot_description', + '-entity', 'turtlebot3_manipulation_system', + '-x', pose['x'], '-y', pose['y'], '-z', pose['z'], + '-R', pose['R'], '-P', pose['P'], '-Y', pose['Y'], + ], + output='screen', + ), + ]) diff --git a/turtlebot3_manipulation_gazebo/launch/turtlebot3_home_service_challenge.launch.py b/turtlebot3_manipulation_gazebo/launch/turtlebot3_home_service_challenge.launch.py new file mode 100644 index 00000000..b2b5c77c --- /dev/null +++ b/turtlebot3_manipulation_gazebo/launch/turtlebot3_home_service_challenge.launch.py @@ -0,0 +1,109 @@ +#!/usr/bin/env python3 +# +# Copyright 2025 ROBOTIS CO., LTD. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# Author: ChanHyeong Lee + +from launch import LaunchDescription +from launch.actions import DeclareLaunchArgument +from launch.actions import IncludeLaunchDescription +from launch.launch_description_sources import PythonLaunchDescriptionSource +from launch.substitutions import LaunchConfiguration +from launch.substitutions import PathJoinSubstitution +from launch_ros.actions import Node +from launch_ros.substitutions import FindPackageShare + + +def generate_launch_description(): + world = LaunchConfiguration( + 'world', + default=PathJoinSubstitution([ + FindPackageShare('turtlebot3_manipulation_gazebo'), + 'worlds', + 'turtlebot3_home_service_challenge.world' + ]) + ) + + start_rviz = LaunchConfiguration('start_rviz') + prefix = LaunchConfiguration('prefix') + use_sim = LaunchConfiguration('use_sim') + + return LaunchDescription([ + DeclareLaunchArgument( + 'start_rviz', + default_value='false', + description='Whether execute rviz2'), + + DeclareLaunchArgument( + 'prefix', + default_value='""', + description='Prefix of the joint and link names'), + + DeclareLaunchArgument( + 'use_sim', + default_value='true', + description='Start robot in Gazebo simulation.'), + + DeclareLaunchArgument( + 'world', + default_value=world, + description='Directory of gazebo world file'), + + IncludeLaunchDescription( + PythonLaunchDescriptionSource([ + PathJoinSubstitution([ + FindPackageShare('turtlebot3_manipulation_gazebo'), + 'launch', + 'base.launch.py' + ]) + ]), + launch_arguments={ + 'start_rviz': start_rviz, + 'prefix': prefix, + 'use_sim': use_sim, + }.items(), + ), + + + IncludeLaunchDescription( + PythonLaunchDescriptionSource([ + PathJoinSubstitution([ + FindPackageShare('gazebo_ros'), + 'launch', + 'gazebo.launch.py' + ]) + ]), + launch_arguments={ + 'verbose': 'false', + 'world': world, + }.items(), + ), + + Node( + package='gazebo_ros', + executable='spawn_entity.py', + arguments=[ + '-topic', 'robot_description', + '-entity', 'turtlebot3_manipulation_system', + '-x', '0', + '-y', '0', + '-z', '0', + '-R', '0', + '-P', '0', + '-Y', '0' + ], + output='screen', + ), + ]) diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker0/materials/textures/Marker0.png b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker0/materials/textures/Marker0.png new file mode 100644 index 00000000..07b55147 Binary files /dev/null and b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker0/materials/textures/Marker0.png differ diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker0/meshes/Marker0.dae b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker0/meshes/Marker0.dae new file mode 100644 index 00000000..401e080f --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker0/meshes/Marker0.dae @@ -0,0 +1,125 @@ + + + + Blender User + Blender 2.74.0 commit date:2015-03-31, commit time:13:39, hash:000dfc0 + + 2015-04-05T02:03:25 + 2015-04-05T02:03:25 + + Z_UP + + + + Marker0.png + + + + + + + + Marker0_png + + + + + Marker0_png-surface + + + + + + 0 0 0 1 + + + 0.9 0.9 0.9 1 + + + + + + 0.5 0.5 0.5 1 + + + 50 + + + 1 + + + + + + + + + + + + + + + + 1 0.9999999 -9.41753e-6 1 -1 -9.41753e-6 -1 -0.9999998 -9.41753e-6 -0.9999997 1 -9.41753e-6 1 0.9999994 1.999991 0.9999994 -1.000001 1.999991 -1 -0.9999997 1.999991 -0.9999999 1 1.999991 + + + + + + + + + + 0 0 -1 0 0 1 1 -5.66244e-7 3.27825e-7 -4.76837e-7 -1 0 -1 2.38419e-7 -1.19209e-7 2.38419e-7 1 1.78814e-7 0 0 -1 0 0 1 1 0 -2.38419e-7 0 -1 -2.98023e-7 -1 2.38419e-7 0 2.98023e-7 1 2.38418e-7 + + + + + + + + + + 0 0 0 0 0 0 0 0 0 0 0 0 0.9999 0.9940189 9.96856e-5 0.9940189 1.00079e-4 9.97642e-5 0 0 0 0 0 0 9.96856e-5 0.9940191 9.98823e-5 9.96856e-5 0.9999004 9.98429e-5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.9999004 9.96856e-5 0.9999 0.9940189 1.00079e-4 9.97642e-5 0 0 0 0 0 0 0.9999004 0.9940191 9.96856e-5 0.9940191 0.9999004 9.98429e-5 0 0 0 0 0 0 + + + + + + + + + + + + + + + 3 3 3 3 3 3 3 3 3 3 3 3 +

0 0 0 1 0 1 2 0 2 7 1 3 6 1 4 5 1 5 4 2 6 5 2 7 1 2 8 5 3 9 6 3 10 2 3 11 2 4 12 6 4 13 7 4 14 0 5 15 3 5 16 7 5 17 3 6 18 0 6 19 2 6 20 4 7 21 7 7 22 5 7 23 0 8 24 4 8 25 1 8 26 1 9 27 5 9 28 2 9 29 3 10 30 2 10 31 7 10 32 4 11 33 0 11 34 7 11 35

+
+
+
+
+ + + + + 0.004999998 0 0 0 0 0.2499999 0 0 0 0 0.25 0 0 0 0 1 + + + + + + + + + + + + + + + +
diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker0/model-1_4.sdf b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker0/model-1_4.sdf new file mode 100644 index 00000000..58d7ff26 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker0/model-1_4.sdf @@ -0,0 +1,14 @@ + + + true + + + + + model://marker0/meshes/Marker0.dae + 0.352 0.352 0.352 + + + + + diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker0/model-1_5.sdf b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker0/model-1_5.sdf new file mode 100644 index 00000000..8a7628cd --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker0/model-1_5.sdf @@ -0,0 +1,14 @@ + + + true + + + + + model://marker0/meshes/Marker0.dae + 0.352 0.352 0.352 + + + + + diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker0/model.config b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker0/model.config new file mode 100644 index 00000000..ce0e7721 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker0/model.config @@ -0,0 +1,17 @@ + + Marker0 + 1.0 + model.sdf + model-1_5.sdf + model-1_4.sdf + + + Mikael Arguedas + mikael.arguedas@gmail.com + + + + A model of AR marker + + + diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker0/model.sdf b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker0/model.sdf new file mode 100644 index 00000000..20c0cb38 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker0/model.sdf @@ -0,0 +1,14 @@ + + + true + + + + + model://marker0/meshes/Marker0.dae + 0.352 0.352 0.352 + + + + + diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker1/materials/textures/Marker1.png b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker1/materials/textures/Marker1.png new file mode 100644 index 00000000..cef24e34 Binary files /dev/null and b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker1/materials/textures/Marker1.png differ diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker1/meshes/Marker1.dae b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker1/meshes/Marker1.dae new file mode 100644 index 00000000..44f72298 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker1/meshes/Marker1.dae @@ -0,0 +1,125 @@ + + + + Blender User + Blender 2.74.0 commit date:2015-03-31, commit time:13:39, hash:000dfc0 + + 2015-04-05T02:03:25 + 2015-04-05T02:03:25 + + Z_UP + + + + Marker1.png + + + + + + + + Marker0_png + + + + + Marker0_png-surface + + + + + + 0 0 0 1 + + + 0.9 0.9 0.9 1 + + + + + + 0.5 0.5 0.5 1 + + + 50 + + + 1 + + + + + + + + + + + + + + + + 1 0.9999999 -9.41753e-6 1 -1 -9.41753e-6 -1 -0.9999998 -9.41753e-6 -0.9999997 1 -9.41753e-6 1 0.9999994 1.999991 0.9999994 -1.000001 1.999991 -1 -0.9999997 1.999991 -0.9999999 1 1.999991 + + + + + + + + + + 0 0 -1 0 0 1 1 -5.66244e-7 3.27825e-7 -4.76837e-7 -1 0 -1 2.38419e-7 -1.19209e-7 2.38419e-7 1 1.78814e-7 0 0 -1 0 0 1 1 0 -2.38419e-7 0 -1 -2.98023e-7 -1 2.38419e-7 0 2.98023e-7 1 2.38418e-7 + + + + + + + + + + 0 0 0 0 0 0 0 0 0 0 0 0 0.9999 0.9940189 9.96856e-5 0.9940189 1.00079e-4 9.97642e-5 0 0 0 0 0 0 9.96856e-5 0.9940191 9.98823e-5 9.96856e-5 0.9999004 9.98429e-5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.9999004 9.96856e-5 0.9999 0.9940189 1.00079e-4 9.97642e-5 0 0 0 0 0 0 0.9999004 0.9940191 9.96856e-5 0.9940191 0.9999004 9.98429e-5 0 0 0 0 0 0 + + + + + + + + + + + + + + + 3 3 3 3 3 3 3 3 3 3 3 3 +

0 0 0 1 0 1 2 0 2 7 1 3 6 1 4 5 1 5 4 2 6 5 2 7 1 2 8 5 3 9 6 3 10 2 3 11 2 4 12 6 4 13 7 4 14 0 5 15 3 5 16 7 5 17 3 6 18 0 6 19 2 6 20 4 7 21 7 7 22 5 7 23 0 8 24 4 8 25 1 8 26 1 9 27 5 9 28 2 9 29 3 10 30 2 10 31 7 10 32 4 11 33 0 11 34 7 11 35

+
+
+
+
+ + + + + 0.004999998 0 0 0 0 0.2499999 0 0 0 0 0.25 0 0 0 0 1 + + + + + + + + + + + + + + + +
diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker1/model-1_4.sdf b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker1/model-1_4.sdf new file mode 100644 index 00000000..8b0abfbb --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker1/model-1_4.sdf @@ -0,0 +1,14 @@ + + + true + + + + + model://marker1/meshes/Marker1.dae + 0.352 0.352 0.352 + + + + + diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker1/model-1_5.sdf b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker1/model-1_5.sdf new file mode 100644 index 00000000..59197c84 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker1/model-1_5.sdf @@ -0,0 +1,14 @@ + + + true + + + + + model://marker1/meshes/Marker1.dae + 0.352 0.352 0.352 + + + + + diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker1/model.config b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker1/model.config new file mode 100644 index 00000000..18ed0021 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker1/model.config @@ -0,0 +1,17 @@ + + Marker1 + 1.0 + model.sdf + model-1_5.sdf + model-1_4.sdf + + + Mikael Arguedas + mikael.arguedas@gmail.com + + + + A model of AR marker + + + diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker1/model.sdf b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker1/model.sdf new file mode 100644 index 00000000..7a40b08c --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker1/model.sdf @@ -0,0 +1,14 @@ + + + true + + + + + model://marker1/meshes/Marker1.dae + 0.352 0.352 0.352 + + + + + diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker2/materials/textures/Marker2.png b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker2/materials/textures/Marker2.png new file mode 100644 index 00000000..024b8831 Binary files /dev/null and b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker2/materials/textures/Marker2.png differ diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker2/meshes/Marker2.dae b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker2/meshes/Marker2.dae new file mode 100644 index 00000000..25f152a4 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker2/meshes/Marker2.dae @@ -0,0 +1,125 @@ + + + + Blender User + Blender 2.74.0 commit date:2015-03-31, commit time:13:39, hash:000dfc0 + + 2015-04-05T02:03:25 + 2015-04-05T02:03:25 + + Z_UP + + + + Marker2.png + + + + + + + + Marker0_png + + + + + Marker0_png-surface + + + + + + 0 0 0 1 + + + 0.9 0.9 0.9 1 + + + + + + 0.5 0.5 0.5 1 + + + 50 + + + 1 + + + + + + + + + + + + + + + + 1 0.9999999 -9.41753e-6 1 -1 -9.41753e-6 -1 -0.9999998 -9.41753e-6 -0.9999997 1 -9.41753e-6 1 0.9999994 1.999991 0.9999994 -1.000001 1.999991 -1 -0.9999997 1.999991 -0.9999999 1 1.999991 + + + + + + + + + + 0 0 -1 0 0 1 1 -5.66244e-7 3.27825e-7 -4.76837e-7 -1 0 -1 2.38419e-7 -1.19209e-7 2.38419e-7 1 1.78814e-7 0 0 -1 0 0 1 1 0 -2.38419e-7 0 -1 -2.98023e-7 -1 2.38419e-7 0 2.98023e-7 1 2.38418e-7 + + + + + + + + + + 0 0 0 0 0 0 0 0 0 0 0 0 0.9999 0.9940189 9.96856e-5 0.9940189 1.00079e-4 9.97642e-5 0 0 0 0 0 0 9.96856e-5 0.9940191 9.98823e-5 9.96856e-5 0.9999004 9.98429e-5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.9999004 9.96856e-5 0.9999 0.9940189 1.00079e-4 9.97642e-5 0 0 0 0 0 0 0.9999004 0.9940191 9.96856e-5 0.9940191 0.9999004 9.98429e-5 0 0 0 0 0 0 + + + + + + + + + + + + + + + 3 3 3 3 3 3 3 3 3 3 3 3 +

0 0 0 1 0 1 2 0 2 7 1 3 6 1 4 5 1 5 4 2 6 5 2 7 1 2 8 5 3 9 6 3 10 2 3 11 2 4 12 6 4 13 7 4 14 0 5 15 3 5 16 7 5 17 3 6 18 0 6 19 2 6 20 4 7 21 7 7 22 5 7 23 0 8 24 4 8 25 1 8 26 1 9 27 5 9 28 2 9 29 3 10 30 2 10 31 7 10 32 4 11 33 0 11 34 7 11 35

+
+
+
+
+ + + + + 0.004999998 0 0 0 0 0.2499999 0 0 0 0 0.25 0 0 0 0 1 + + + + + + + + + + + + + + + +
diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker2/model-1_4.sdf b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker2/model-1_4.sdf new file mode 100644 index 00000000..b3340b44 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker2/model-1_4.sdf @@ -0,0 +1,14 @@ + + + true + + + + + model://marker2/meshes/Marker2.dae + 0.352 0.352 0.352 + + + + + diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker2/model-1_5.sdf b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker2/model-1_5.sdf new file mode 100644 index 00000000..cd48b198 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker2/model-1_5.sdf @@ -0,0 +1,14 @@ + + + true + + + + + model://marker2/meshes/Marker2.dae + 0.352 0.352 0.352 + + + + + diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker2/model.config b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker2/model.config new file mode 100644 index 00000000..940ffb1d --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker2/model.config @@ -0,0 +1,17 @@ + + Marker2 + 1.0 + model.sdf + model-1_5.sdf + model-1_4.sdf + + + Mikael Arguedas + mikael.arguedas@gmail.com + + + + A model of AR marker + + + diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker2/model.sdf b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker2/model.sdf new file mode 100644 index 00000000..36e3c3a8 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker2/model.sdf @@ -0,0 +1,14 @@ + + + true + + + + + model://marker2/meshes/Marker2.dae + 0.352 0.352 0.352 + + + + + diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker3/materials/textures/Marker3.png b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker3/materials/textures/Marker3.png new file mode 100644 index 00000000..5c845a38 Binary files /dev/null and b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker3/materials/textures/Marker3.png differ diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker3/meshes/Marker3.dae b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker3/meshes/Marker3.dae new file mode 100644 index 00000000..b5fa89f7 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker3/meshes/Marker3.dae @@ -0,0 +1,125 @@ + + + + Blender User + Blender 2.74.0 commit date:2015-03-31, commit time:13:39, hash:000dfc0 + + 2015-04-05T02:03:25 + 2015-04-05T02:03:25 + + Z_UP + + + + Marker3.png + + + + + + + + Marker0_png + + + + + Marker0_png-surface + + + + + + 0 0 0 1 + + + 0.9 0.9 0.9 1 + + + + + + 0.5 0.5 0.5 1 + + + 50 + + + 1 + + + + + + + + + + + + + + + + 1 0.9999999 -9.41753e-6 1 -1 -9.41753e-6 -1 -0.9999998 -9.41753e-6 -0.9999997 1 -9.41753e-6 1 0.9999994 1.999991 0.9999994 -1.000001 1.999991 -1 -0.9999997 1.999991 -0.9999999 1 1.999991 + + + + + + + + + + 0 0 -1 0 0 1 1 -5.66244e-7 3.27825e-7 -4.76837e-7 -1 0 -1 2.38419e-7 -1.19209e-7 2.38419e-7 1 1.78814e-7 0 0 -1 0 0 1 1 0 -2.38419e-7 0 -1 -2.98023e-7 -1 2.38419e-7 0 2.98023e-7 1 2.38418e-7 + + + + + + + + + + 0 0 0 0 0 0 0 0 0 0 0 0 0.9999 0.9940189 9.96856e-5 0.9940189 1.00079e-4 9.97642e-5 0 0 0 0 0 0 9.96856e-5 0.9940191 9.98823e-5 9.96856e-5 0.9999004 9.98429e-5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.9999004 9.96856e-5 0.9999 0.9940189 1.00079e-4 9.97642e-5 0 0 0 0 0 0 0.9999004 0.9940191 9.96856e-5 0.9940191 0.9999004 9.98429e-5 0 0 0 0 0 0 + + + + + + + + + + + + + + + 3 3 3 3 3 3 3 3 3 3 3 3 +

0 0 0 1 0 1 2 0 2 7 1 3 6 1 4 5 1 5 4 2 6 5 2 7 1 2 8 5 3 9 6 3 10 2 3 11 2 4 12 6 4 13 7 4 14 0 5 15 3 5 16 7 5 17 3 6 18 0 6 19 2 6 20 4 7 21 7 7 22 5 7 23 0 8 24 4 8 25 1 8 26 1 9 27 5 9 28 2 9 29 3 10 30 2 10 31 7 10 32 4 11 33 0 11 34 7 11 35

+
+
+
+
+ + + + + 0.004999998 0 0 0 0 0.2499999 0 0 0 0 0.25 0 0 0 0 1 + + + + + + + + + + + + + + + +
diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker3/model-1_4.sdf b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker3/model-1_4.sdf new file mode 100644 index 00000000..f78492e6 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker3/model-1_4.sdf @@ -0,0 +1,14 @@ + + + true + + + + + model://marker3/meshes/Marker3.dae + 0.352 0.352 0.352 + + + + + diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker3/model-1_5.sdf b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker3/model-1_5.sdf new file mode 100644 index 00000000..2c84cbd8 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker3/model-1_5.sdf @@ -0,0 +1,14 @@ + + + true + + + + + model://marker3/meshes/Marker3.dae + 0.352 0.352 0.352 + + + + + diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker3/model.config b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker3/model.config new file mode 100644 index 00000000..72464171 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker3/model.config @@ -0,0 +1,17 @@ + + Marker3 + 1.0 + model.sdf + model-1_5.sdf + model-1_4.sdf + + + Mikael Arguedas + mikael.arguedas@gmail.com + + + + A model of AR marker + + + diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker3/model.sdf b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker3/model.sdf new file mode 100644 index 00000000..fb289883 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker3/model.sdf @@ -0,0 +1,14 @@ + + + true + + + + + model://marker3/meshes/Marker3.dae + 0.352 0.352 0.352 + + + + + diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker4/materials/textures/Marker4.png b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker4/materials/textures/Marker4.png new file mode 100644 index 00000000..e8ffa553 Binary files /dev/null and b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker4/materials/textures/Marker4.png differ diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker4/meshes/Marker4.dae b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker4/meshes/Marker4.dae new file mode 100644 index 00000000..63da8bca --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker4/meshes/Marker4.dae @@ -0,0 +1,125 @@ + + + + Blender User + Blender 2.74.0 commit date:2015-03-31, commit time:13:39, hash:000dfc0 + + 2015-04-05T02:03:25 + 2015-04-05T02:03:25 + + Z_UP + + + + Marker4.png + + + + + + + + Marker0_png + + + + + Marker0_png-surface + + + + + + 0 0 0 1 + + + 0.9 0.9 0.9 1 + + + + + + 0.5 0.5 0.5 1 + + + 50 + + + 1 + + + + + + + + + + + + + + + + 1 0.9999999 -9.41753e-6 1 -1 -9.41753e-6 -1 -0.9999998 -9.41753e-6 -0.9999997 1 -9.41753e-6 1 0.9999994 1.999991 0.9999994 -1.000001 1.999991 -1 -0.9999997 1.999991 -0.9999999 1 1.999991 + + + + + + + + + + 0 0 -1 0 0 1 1 -5.66244e-7 3.27825e-7 -4.76837e-7 -1 0 -1 2.38419e-7 -1.19209e-7 2.38419e-7 1 1.78814e-7 0 0 -1 0 0 1 1 0 -2.38419e-7 0 -1 -2.98023e-7 -1 2.38419e-7 0 2.98023e-7 1 2.38418e-7 + + + + + + + + + + 0 0 0 0 0 0 0 0 0 0 0 0 0.9999 0.9940189 9.96856e-5 0.9940189 1.00079e-4 9.97642e-5 0 0 0 0 0 0 9.96856e-5 0.9940191 9.98823e-5 9.96856e-5 0.9999004 9.98429e-5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.9999004 9.96856e-5 0.9999 0.9940189 1.00079e-4 9.97642e-5 0 0 0 0 0 0 0.9999004 0.9940191 9.96856e-5 0.9940191 0.9999004 9.98429e-5 0 0 0 0 0 0 + + + + + + + + + + + + + + + 3 3 3 3 3 3 3 3 3 3 3 3 +

0 0 0 1 0 1 2 0 2 7 1 3 6 1 4 5 1 5 4 2 6 5 2 7 1 2 8 5 3 9 6 3 10 2 3 11 2 4 12 6 4 13 7 4 14 0 5 15 3 5 16 7 5 17 3 6 18 0 6 19 2 6 20 4 7 21 7 7 22 5 7 23 0 8 24 4 8 25 1 8 26 1 9 27 5 9 28 2 9 29 3 10 30 2 10 31 7 10 32 4 11 33 0 11 34 7 11 35

+
+
+
+
+ + + + + 0.004999998 0 0 0 0 0.2499999 0 0 0 0 0.25 0 0 0 0 1 + + + + + + + + + + + + + + + +
diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker4/model-1_4.sdf b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker4/model-1_4.sdf new file mode 100644 index 00000000..b8912d25 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker4/model-1_4.sdf @@ -0,0 +1,14 @@ + + + true + + + + + model://marker4/meshes/Marker4.dae + 0.352 0.352 0.352 + + + + + diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker4/model-1_5.sdf b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker4/model-1_5.sdf new file mode 100644 index 00000000..9b91f6a8 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker4/model-1_5.sdf @@ -0,0 +1,14 @@ + + + true + + + + + model://marker4/meshes/Marker4.dae + 0.352 0.352 0.352 + + + + + diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker4/model.config b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker4/model.config new file mode 100644 index 00000000..c8623db4 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker4/model.config @@ -0,0 +1,17 @@ + + Marker4 + 1.0 + model.sdf + model-1_5.sdf + model-1_4.sdf + + + Mikael Arguedas + mikael.arguedas@gmail.com + + + + A model of AR marker + + + diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker4/model.sdf b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker4/model.sdf new file mode 100644 index 00000000..c3c6f3d9 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker4/model.sdf @@ -0,0 +1,14 @@ + + + true + + + + + model://marker4/meshes/Marker4.dae + 0.352 0.352 0.352 + + + + + diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker5/materials/textures/Marker5.png b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker5/materials/textures/Marker5.png new file mode 100644 index 00000000..2b619034 Binary files /dev/null and b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker5/materials/textures/Marker5.png differ diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker5/meshes/Marker5.dae b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker5/meshes/Marker5.dae new file mode 100644 index 00000000..6b305afe --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker5/meshes/Marker5.dae @@ -0,0 +1,125 @@ + + + + Blender User + Blender 2.74.0 commit date:2015-03-31, commit time:13:39, hash:000dfc0 + + 2015-04-05T02:03:25 + 2015-04-05T02:03:25 + + Z_UP + + + + Marker5.png + + + + + + + + Marker0_png + + + + + Marker0_png-surface + + + + + + 0 0 0 1 + + + 0.9 0.9 0.9 1 + + + + + + 0.5 0.5 0.5 1 + + + 50 + + + 1 + + + + + + + + + + + + + + + + 1 0.9999999 -9.41753e-6 1 -1 -9.41753e-6 -1 -0.9999998 -9.41753e-6 -0.9999997 1 -9.41753e-6 1 0.9999994 1.999991 0.9999994 -1.000001 1.999991 -1 -0.9999997 1.999991 -0.9999999 1 1.999991 + + + + + + + + + + 0 0 -1 0 0 1 1 -5.66244e-7 3.27825e-7 -4.76837e-7 -1 0 -1 2.38419e-7 -1.19209e-7 2.38419e-7 1 1.78814e-7 0 0 -1 0 0 1 1 0 -2.38419e-7 0 -1 -2.98023e-7 -1 2.38419e-7 0 2.98023e-7 1 2.38418e-7 + + + + + + + + + + 0 0 0 0 0 0 0 0 0 0 0 0 0.9999 0.9940189 9.96856e-5 0.9940189 1.00079e-4 9.97642e-5 0 0 0 0 0 0 9.96856e-5 0.9940191 9.98823e-5 9.96856e-5 0.9999004 9.98429e-5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.9999004 9.96856e-5 0.9999 0.9940189 1.00079e-4 9.97642e-5 0 0 0 0 0 0 0.9999004 0.9940191 9.96856e-5 0.9940191 0.9999004 9.98429e-5 0 0 0 0 0 0 + + + + + + + + + + + + + + + 3 3 3 3 3 3 3 3 3 3 3 3 +

0 0 0 1 0 1 2 0 2 7 1 3 6 1 4 5 1 5 4 2 6 5 2 7 1 2 8 5 3 9 6 3 10 2 3 11 2 4 12 6 4 13 7 4 14 0 5 15 3 5 16 7 5 17 3 6 18 0 6 19 2 6 20 4 7 21 7 7 22 5 7 23 0 8 24 4 8 25 1 8 26 1 9 27 5 9 28 2 9 29 3 10 30 2 10 31 7 10 32 4 11 33 0 11 34 7 11 35

+
+
+
+
+ + + + + 0.004999998 0 0 0 0 0.2499999 0 0 0 0 0.25 0 0 0 0 1 + + + + + + + + + + + + + + + +
diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker5/model-1_4.sdf b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker5/model-1_4.sdf new file mode 100644 index 00000000..f31aa547 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker5/model-1_4.sdf @@ -0,0 +1,14 @@ + + + true + + + + + model://marker5/meshes/Marker5.dae + 0.352 0.352 0.352 + + + + + diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker5/model-1_5.sdf b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker5/model-1_5.sdf new file mode 100644 index 00000000..fb790208 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker5/model-1_5.sdf @@ -0,0 +1,14 @@ + + + true + + + + + model://marker5/meshes/Marker5.dae + 0.352 0.352 0.352 + + + + + diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker5/model.config b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker5/model.config new file mode 100644 index 00000000..8d73e607 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker5/model.config @@ -0,0 +1,17 @@ + + Marker5 + 1.0 + model.sdf + model-1_5.sdf + model-1_4.sdf + + + Mikael Arguedas + mikael.arguedas@gmail.com + + + + A model of AR marker + + + diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker5/model.sdf b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker5/model.sdf new file mode 100644 index 00000000..42749b56 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker5/model.sdf @@ -0,0 +1,14 @@ + + + true + + + + + model://marker5/meshes/Marker5.dae + 0.352 0.352 0.352 + + + + + diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker6/materials/textures/Marker6.png b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker6/materials/textures/Marker6.png new file mode 100644 index 00000000..d0e1f190 Binary files /dev/null and b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker6/materials/textures/Marker6.png differ diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker6/meshes/Marker6.dae b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker6/meshes/Marker6.dae new file mode 100644 index 00000000..d0ab802e --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker6/meshes/Marker6.dae @@ -0,0 +1,125 @@ + + + + Blender User + Blender 2.74.0 commit date:2015-03-31, commit time:13:39, hash:000dfc0 + + 2015-04-05T02:03:25 + 2015-04-05T02:03:25 + + Z_UP + + + + Marker6.png + + + + + + + + Marker0_png + + + + + Marker0_png-surface + + + + + + 0 0 0 1 + + + 0.9 0.9 0.9 1 + + + + + + 0.5 0.5 0.5 1 + + + 50 + + + 1 + + + + + + + + + + + + + + + + 1 0.9999999 -9.41753e-6 1 -1 -9.41753e-6 -1 -0.9999998 -9.41753e-6 -0.9999997 1 -9.41753e-6 1 0.9999994 1.999991 0.9999994 -1.000001 1.999991 -1 -0.9999997 1.999991 -0.9999999 1 1.999991 + + + + + + + + + + 0 0 -1 0 0 1 1 -5.66244e-7 3.27825e-7 -4.76837e-7 -1 0 -1 2.38419e-7 -1.19209e-7 2.38419e-7 1 1.78814e-7 0 0 -1 0 0 1 1 0 -2.38419e-7 0 -1 -2.98023e-7 -1 2.38419e-7 0 2.98023e-7 1 2.38418e-7 + + + + + + + + + + 0 0 0 0 0 0 0 0 0 0 0 0 0.9999 0.9940189 9.96856e-5 0.9940189 1.00079e-4 9.97642e-5 0 0 0 0 0 0 9.96856e-5 0.9940191 9.98823e-5 9.96856e-5 0.9999004 9.98429e-5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.9999004 9.96856e-5 0.9999 0.9940189 1.00079e-4 9.97642e-5 0 0 0 0 0 0 0.9999004 0.9940191 9.96856e-5 0.9940191 0.9999004 9.98429e-5 0 0 0 0 0 0 + + + + + + + + + + + + + + + 3 3 3 3 3 3 3 3 3 3 3 3 +

0 0 0 1 0 1 2 0 2 7 1 3 6 1 4 5 1 5 4 2 6 5 2 7 1 2 8 5 3 9 6 3 10 2 3 11 2 4 12 6 4 13 7 4 14 0 5 15 3 5 16 7 5 17 3 6 18 0 6 19 2 6 20 4 7 21 7 7 22 5 7 23 0 8 24 4 8 25 1 8 26 1 9 27 5 9 28 2 9 29 3 10 30 2 10 31 7 10 32 4 11 33 0 11 34 7 11 35

+
+
+
+
+ + + + + 0.004999998 0 0 0 0 0.2499999 0 0 0 0 0.25 0 0 0 0 1 + + + + + + + + + + + + + + + +
diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker6/model-1_4.sdf b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker6/model-1_4.sdf new file mode 100644 index 00000000..3aea108a --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker6/model-1_4.sdf @@ -0,0 +1,14 @@ + + + true + + + + + model://marker6/meshes/Marker6.dae + 0.352 0.352 0.352 + + + + + diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker6/model-1_5.sdf b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker6/model-1_5.sdf new file mode 100644 index 00000000..948f19d3 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker6/model-1_5.sdf @@ -0,0 +1,14 @@ + + + true + + + + + model://marker6/meshes/Marker6.dae + 0.352 0.352 0.352 + + + + + diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker6/model.config b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker6/model.config new file mode 100644 index 00000000..5be1227d --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker6/model.config @@ -0,0 +1,17 @@ + + Marker6 + 1.0 + model.sdf + model-1_5.sdf + model-1_4.sdf + + + Mikael Arguedas + mikael.arguedas@gmail.com + + + + A model of AR marker + + + diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker6/model.sdf b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker6/model.sdf new file mode 100644 index 00000000..3db62b01 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker6/model.sdf @@ -0,0 +1,14 @@ + + + true + + + + + model://marker6/meshes/Marker6.dae + 0.352 0.352 0.352 + + + + + diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker7/materials/textures/Marker7.png b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker7/materials/textures/Marker7.png new file mode 100644 index 00000000..bcee5f35 Binary files /dev/null and b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker7/materials/textures/Marker7.png differ diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker7/meshes/Marker7.dae b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker7/meshes/Marker7.dae new file mode 100644 index 00000000..5793c1c9 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker7/meshes/Marker7.dae @@ -0,0 +1,125 @@ + + + + Blender User + Blender 2.74.0 commit date:2015-03-31, commit time:13:39, hash:000dfc0 + + 2015-04-05T02:03:25 + 2015-04-05T02:03:25 + + Z_UP + + + + Marker7.png + + + + + + + + Marker0_png + + + + + Marker0_png-surface + + + + + + 0 0 0 1 + + + 0.9 0.9 0.9 1 + + + + + + 0.5 0.5 0.5 1 + + + 50 + + + 1 + + + + + + + + + + + + + + + + 1 0.9999999 -9.41753e-6 1 -1 -9.41753e-6 -1 -0.9999998 -9.41753e-6 -0.9999997 1 -9.41753e-6 1 0.9999994 1.999991 0.9999994 -1.000001 1.999991 -1 -0.9999997 1.999991 -0.9999999 1 1.999991 + + + + + + + + + + 0 0 -1 0 0 1 1 -5.66244e-7 3.27825e-7 -4.76837e-7 -1 0 -1 2.38419e-7 -1.19209e-7 2.38419e-7 1 1.78814e-7 0 0 -1 0 0 1 1 0 -2.38419e-7 0 -1 -2.98023e-7 -1 2.38419e-7 0 2.98023e-7 1 2.38418e-7 + + + + + + + + + + 0 0 0 0 0 0 0 0 0 0 0 0 0.9999 0.9940189 9.96856e-5 0.9940189 1.00079e-4 9.97642e-5 0 0 0 0 0 0 9.96856e-5 0.9940191 9.98823e-5 9.96856e-5 0.9999004 9.98429e-5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.9999004 9.96856e-5 0.9999 0.9940189 1.00079e-4 9.97642e-5 0 0 0 0 0 0 0.9999004 0.9940191 9.96856e-5 0.9940191 0.9999004 9.98429e-5 0 0 0 0 0 0 + + + + + + + + + + + + + + + 3 3 3 3 3 3 3 3 3 3 3 3 +

0 0 0 1 0 1 2 0 2 7 1 3 6 1 4 5 1 5 4 2 6 5 2 7 1 2 8 5 3 9 6 3 10 2 3 11 2 4 12 6 4 13 7 4 14 0 5 15 3 5 16 7 5 17 3 6 18 0 6 19 2 6 20 4 7 21 7 7 22 5 7 23 0 8 24 4 8 25 1 8 26 1 9 27 5 9 28 2 9 29 3 10 30 2 10 31 7 10 32 4 11 33 0 11 34 7 11 35

+
+
+
+
+ + + + + 0.004999998 0 0 0 0 0.2499999 0 0 0 0 0.25 0 0 0 0 1 + + + + + + + + + + + + + + + +
diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker7/model-1_4.sdf b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker7/model-1_4.sdf new file mode 100644 index 00000000..76a2dd9f --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker7/model-1_4.sdf @@ -0,0 +1,14 @@ + + + true + + + + + model://marker7/meshes/Marker7.dae + 0.352 0.352 0.352 + + + + + diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker7/model-1_5.sdf b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker7/model-1_5.sdf new file mode 100644 index 00000000..74d3411e --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker7/model-1_5.sdf @@ -0,0 +1,14 @@ + + + true + + + + + model://marker7/meshes/Marker7.dae + 0.352 0.352 0.352 + + + + + diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker7/model.config b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker7/model.config new file mode 100644 index 00000000..32085243 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker7/model.config @@ -0,0 +1,17 @@ + + Marker7 + 1.0 + model.sdf + model-1_5.sdf + model-1_4.sdf + + + Mikael Arguedas + mikael.arguedas@gmail.com + + + + A model of AR marker + + + diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker7/model.sdf b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker7/model.sdf new file mode 100644 index 00000000..2048e4cd --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker7/model.sdf @@ -0,0 +1,14 @@ + + + true + + + + + model://marker7/meshes/Marker7.dae + 0.352 0.352 0.352 + + + + + diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker8/materials/textures/Marker8.png b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker8/materials/textures/Marker8.png new file mode 100644 index 00000000..4eaea78b Binary files /dev/null and b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker8/materials/textures/Marker8.png differ diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker8/meshes/Marker8.dae b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker8/meshes/Marker8.dae new file mode 100644 index 00000000..91414b23 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker8/meshes/Marker8.dae @@ -0,0 +1,125 @@ + + + + Blender User + Blender 2.74.0 commit date:2015-03-31, commit time:13:39, hash:000dfc0 + + 2015-04-05T02:03:25 + 2015-04-05T02:03:25 + + Z_UP + + + + Marker8.png + + + + + + + + Marker0_png + + + + + Marker0_png-surface + + + + + + 0 0 0 1 + + + 0.9 0.9 0.9 1 + + + + + + 0.5 0.5 0.5 1 + + + 50 + + + 1 + + + + + + + + + + + + + + + + 1 0.9999999 -9.41753e-6 1 -1 -9.41753e-6 -1 -0.9999998 -9.41753e-6 -0.9999997 1 -9.41753e-6 1 0.9999994 1.999991 0.9999994 -1.000001 1.999991 -1 -0.9999997 1.999991 -0.9999999 1 1.999991 + + + + + + + + + + 0 0 -1 0 0 1 1 -5.66244e-7 3.27825e-7 -4.76837e-7 -1 0 -1 2.38419e-7 -1.19209e-7 2.38419e-7 1 1.78814e-7 0 0 -1 0 0 1 1 0 -2.38419e-7 0 -1 -2.98023e-7 -1 2.38419e-7 0 2.98023e-7 1 2.38418e-7 + + + + + + + + + + 0 0 0 0 0 0 0 0 0 0 0 0 0.9999 0.9940189 9.96856e-5 0.9940189 1.00079e-4 9.97642e-5 0 0 0 0 0 0 9.96856e-5 0.9940191 9.98823e-5 9.96856e-5 0.9999004 9.98429e-5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.9999004 9.96856e-5 0.9999 0.9940189 1.00079e-4 9.97642e-5 0 0 0 0 0 0 0.9999004 0.9940191 9.96856e-5 0.9940191 0.9999004 9.98429e-5 0 0 0 0 0 0 + + + + + + + + + + + + + + + 3 3 3 3 3 3 3 3 3 3 3 3 +

0 0 0 1 0 1 2 0 2 7 1 3 6 1 4 5 1 5 4 2 6 5 2 7 1 2 8 5 3 9 6 3 10 2 3 11 2 4 12 6 4 13 7 4 14 0 5 15 3 5 16 7 5 17 3 6 18 0 6 19 2 6 20 4 7 21 7 7 22 5 7 23 0 8 24 4 8 25 1 8 26 1 9 27 5 9 28 2 9 29 3 10 30 2 10 31 7 10 32 4 11 33 0 11 34 7 11 35

+
+
+
+
+ + + + + 0.004999998 0 0 0 0 0.2499999 0 0 0 0 0.25 0 0 0 0 1 + + + + + + + + + + + + + + + +
diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker8/model-1_4.sdf b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker8/model-1_4.sdf new file mode 100644 index 00000000..f59d9802 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker8/model-1_4.sdf @@ -0,0 +1,14 @@ + + + true + + + + + model://marker8/meshes/Marker8.dae + 0.352 0.352 0.352 + + + + + diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker8/model-1_5.sdf b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker8/model-1_5.sdf new file mode 100644 index 00000000..15b5f353 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker8/model-1_5.sdf @@ -0,0 +1,14 @@ + + + true + + + + + model://marker8/meshes/Marker8.dae + 0.352 0.352 0.352 + + + + + diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker8/model.config b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker8/model.config new file mode 100644 index 00000000..14846ba7 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker8/model.config @@ -0,0 +1,17 @@ + + Marker8 + 1.0 + model.sdf + model-1_5.sdf + model-1_4.sdf + + + Mikael Arguedas + mikael.arguedas@gmail.com + + + + A model of AR marker + + + diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker8/model.sdf b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker8/model.sdf new file mode 100644 index 00000000..80d63179 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker8/model.sdf @@ -0,0 +1,14 @@ + + + true + + + + + model://marker8/meshes/Marker8.dae + 0.352 0.352 0.352 + + + + + diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker9/materials/textures/Marker9.png b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker9/materials/textures/Marker9.png new file mode 100644 index 00000000..2b18a5f5 Binary files /dev/null and b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker9/materials/textures/Marker9.png differ diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker9/meshes/Marker9.dae b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker9/meshes/Marker9.dae new file mode 100644 index 00000000..1aae54c5 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker9/meshes/Marker9.dae @@ -0,0 +1,125 @@ + + + + Blender User + Blender 2.74.0 commit date:2015-03-31, commit time:13:39, hash:000dfc0 + + 2015-04-05T02:03:25 + 2015-04-05T02:03:25 + + Z_UP + + + + Marker9.png + + + + + + + + Marker0_png + + + + + Marker0_png-surface + + + + + + 0 0 0 1 + + + 0.9 0.9 0.9 1 + + + + + + 0.5 0.5 0.5 1 + + + 50 + + + 1 + + + + + + + + + + + + + + + + 1 0.9999999 -9.41753e-6 1 -1 -9.41753e-6 -1 -0.9999998 -9.41753e-6 -0.9999997 1 -9.41753e-6 1 0.9999994 1.999991 0.9999994 -1.000001 1.999991 -1 -0.9999997 1.999991 -0.9999999 1 1.999991 + + + + + + + + + + 0 0 -1 0 0 1 1 -5.66244e-7 3.27825e-7 -4.76837e-7 -1 0 -1 2.38419e-7 -1.19209e-7 2.38419e-7 1 1.78814e-7 0 0 -1 0 0 1 1 0 -2.38419e-7 0 -1 -2.98023e-7 -1 2.38419e-7 0 2.98023e-7 1 2.38418e-7 + + + + + + + + + + 0 0 0 0 0 0 0 0 0 0 0 0 0.9999 0.9940189 9.96856e-5 0.9940189 1.00079e-4 9.97642e-5 0 0 0 0 0 0 9.96856e-5 0.9940191 9.98823e-5 9.96856e-5 0.9999004 9.98429e-5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.9999004 9.96856e-5 0.9999 0.9940189 1.00079e-4 9.97642e-5 0 0 0 0 0 0 0.9999004 0.9940191 9.96856e-5 0.9940191 0.9999004 9.98429e-5 0 0 0 0 0 0 + + + + + + + + + + + + + + + 3 3 3 3 3 3 3 3 3 3 3 3 +

0 0 0 1 0 1 2 0 2 7 1 3 6 1 4 5 1 5 4 2 6 5 2 7 1 2 8 5 3 9 6 3 10 2 3 11 2 4 12 6 4 13 7 4 14 0 5 15 3 5 16 7 5 17 3 6 18 0 6 19 2 6 20 4 7 21 7 7 22 5 7 23 0 8 24 4 8 25 1 8 26 1 9 27 5 9 28 2 9 29 3 10 30 2 10 31 7 10 32 4 11 33 0 11 34 7 11 35

+
+
+
+
+ + + + + 0.004999998 0 0 0 0 0.2499999 0 0 0 0 0.25 0 0 0 0 1 + + + + + + + + + + + + + + + +
diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker9/model-1_4.sdf b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker9/model-1_4.sdf new file mode 100644 index 00000000..b90117fe --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker9/model-1_4.sdf @@ -0,0 +1,14 @@ + + + true + + + + + model://marker9/meshes/Marker9.dae + 0.352 0.352 0.352 + + + + + diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker9/model-1_5.sdf b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker9/model-1_5.sdf new file mode 100644 index 00000000..7388dec1 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker9/model-1_5.sdf @@ -0,0 +1,14 @@ + + + true + + + + + model://marker9/meshes/Marker9.dae + 0.352 0.352 0.352 + + + + + diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker9/model.config b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker9/model.config new file mode 100644 index 00000000..c77b5efe --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker9/model.config @@ -0,0 +1,17 @@ + + Marker9 + 1.0 + model.sdf + model-1_5.sdf + model-1_4.sdf + + + Mikael Arguedas + mikael.arguedas@gmail.com + + + + A model of AR marker + + + diff --git a/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker9/model.sdf b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker9/model.sdf new file mode 100644 index 00000000..73febd2b --- /dev/null +++ b/turtlebot3_manipulation_gazebo/models/turtlebot3_home_service_challenge/marker9/model.sdf @@ -0,0 +1,14 @@ + + + true + + + + + model://marker9/meshes/Marker9.dae + 0.352 0.352 0.352 + + + + + diff --git a/turtlebot3_manipulation_gazebo/package.xml b/turtlebot3_manipulation_gazebo/package.xml new file mode 100644 index 00000000..02986e6d --- /dev/null +++ b/turtlebot3_manipulation_gazebo/package.xml @@ -0,0 +1,27 @@ + + + + turtlebot3_manipulation_gazebo + 2.3.4 + + Gazebo simulation package for the TurtleBot3 manipulation + + Pyo + Apache 2.0 + http://turtlebot3.robotis.com + https://github.com/ROBOTIS-GIT/turtlebot3_simulations + https://github.com/ROBOTIS-GIT/turtlebot3_simulations/issues + Darby Lim + Hye-jong KIM + ament_cmake + gazebo_ros + gripper_controllers + robot_state_publisher + ros2_control + ros2_controllers + rviz2 + xacro + + ament_cmake + + diff --git a/turtlebot3_manipulation_gazebo/ros2_control/turtlebot3_manipulation_system.ros2_control.xacro b/turtlebot3_manipulation_gazebo/ros2_control/turtlebot3_manipulation_system.ros2_control.xacro new file mode 100644 index 00000000..46126574 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/ros2_control/turtlebot3_manipulation_system.ros2_control.xacro @@ -0,0 +1,180 @@ + + + + + + + + + + + gazebo_ros2_control/GazeboSystem + + + + + + fake_components/GenericSystem + ${fake_sensor_commands} + 0.0 + + + + + + + -24.5 + 24.5 + + + 0.0 + + + 0.0 + + + + + -24.5 + 24.5 + + + 0.0 + + + 0.0 + + + + + + 0.0 + + + 0.0 + + + 0.0 + + + 0.0 + + + 0.0 + + + 0.0 + + + 0.0 + + + 0.0 + + + 0.0 + + + 0.0 + + + + + + 0.0 + + + 0.0 + + + 0.0 + + + 0.0 + + + + + + ${-pi*0.9} + ${pi*0.9} + + + 0.0 + + + 0.0 + + + + + ${-pi*0.57} + ${pi*0.5} + + + 0.0 + + + 0.0 + + + + + ${-pi*0.3} + ${pi*0.44} + + + 0.0 + + + 0.0 + + + + + ${-pi*0.57} + ${pi*0.65} + + + 0.0 + + + 0.0 + + + + + -0.010 + 0.019 + + + 0.0 + + + 0.0 + + + + gripper_left_joint + 1 + + -0.010 + 0.019 + + + 0.0 + + + 0.0 + + + + + + + + diff --git a/turtlebot3_manipulation_gazebo/rviz/turtlebot3_manipulation.rviz b/turtlebot3_manipulation_gazebo/rviz/turtlebot3_manipulation.rviz new file mode 100644 index 00000000..7ef07915 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/rviz/turtlebot3_manipulation.rviz @@ -0,0 +1,381 @@ +Panels: + - Class: rviz_common/Displays + Help Height: 78 + Name: Displays + Property Tree Widget: + Expanded: + - /Global Options1 + - /Odometry1/Covariance1/Position1 + Splitter Ratio: 0.5055555701255798 + Tree Height: 784 + - Class: rviz_common/Selection + Name: Selection + - Class: rviz_common/Tool Properties + Expanded: ~ + Name: Tool Properties + Splitter Ratio: 0.5886790156364441 + - Class: rviz_common/Views + Expanded: + - /Current View1 + - /Current View1/Focal Point1 + Name: Views + Splitter Ratio: 0.5 +Visualization Manager: + Class: "" + Displays: + - Alpha: 0.5 + Cell Size: 1 + Class: rviz_default_plugins/Grid + Color: 160; 160; 164 + Enabled: true + Line Style: + Line Width: 0.029999999329447746 + Value: Lines + Name: Grid + Normal Cell Count: 0 + Offset: + X: 0 + Y: 0 + Z: 0 + Plane: XY + Plane Cell Count: 10 + Reference Frame: + Value: true + - Alpha: 1 + Autocompute Intensity Bounds: true + Autocompute Value Bounds: + Max Value: 10 + Min Value: -10 + Value: true + Axis: Z + Channel Name: intensity + Class: rviz_default_plugins/LaserScan + Color: 255; 255; 255 + Color Transformer: Intensity + Decay Time: 0 + Enabled: true + Invert Rainbow: false + Max Color: 255; 255; 255 + Max Intensity: 0 + Min Color: 0; 0; 0 + Min Intensity: 0 + Name: LaserScan + Position Transformer: XYZ + Selectable: true + Size (Pixels): 3 + Size (m): 0.009999999776482582 + Style: Flat Squares + Topic: + Depth: 5 + Durability Policy: Volatile + History Policy: Keep Last + Reliability Policy: Reliable + Value: /scan + Use Fixed Frame: true + Use rainbow: true + Value: true + - Alpha: 1 + Class: rviz_default_plugins/RobotModel + Collision Enabled: false + Description File: "" + Description Source: Topic + Description Topic: + Depth: 5 + Durability Policy: Volatile + History Policy: Keep Last + Reliability Policy: Reliable + Value: /robot_description + Enabled: true + Links: + All Links Enabled: true + Expand Joint Details: false + Expand Link Details: false + Expand Tree: false + Link Tree Style: Links in Alphabetic Order + base_footprint: + Alpha: 1 + Show Axes: false + Show Trail: false + base_link: + Alpha: 1 + Show Axes: false + Show Trail: false + Value: true + base_scan: + Alpha: 1 + Show Axes: false + Show Trail: false + Value: true + camera_link: + Alpha: 1 + Show Axes: false + Show Trail: false + Value: true + camera_rgb_frame: + Alpha: 1 + Show Axes: false + Show Trail: false + camera_rgb_optical_frame: + Alpha: 1 + Show Axes: false + Show Trail: false + caster_back_left_link: + Alpha: 1 + Show Axes: false + Show Trail: false + Value: true + caster_back_right_link: + Alpha: 1 + Show Axes: false + Show Trail: false + Value: true + end_effector_link: + Alpha: 1 + Show Axes: false + Show Trail: false + Value: true + gripper_left_link: + Alpha: 1 + Show Axes: false + Show Trail: false + Value: true + gripper_right_link: + Alpha: 1 + Show Axes: false + Show Trail: false + Value: true + imu_link: + Alpha: 1 + Show Axes: false + Show Trail: false + link1: + Alpha: 1 + Show Axes: false + Show Trail: false + Value: true + link2: + Alpha: 1 + Show Axes: false + Show Trail: false + Value: true + link3: + Alpha: 1 + Show Axes: false + Show Trail: false + Value: true + link4: + Alpha: 1 + Show Axes: false + Show Trail: false + Value: true + link5: + Alpha: 1 + Show Axes: false + Show Trail: false + Value: true + wheel_left_link: + Alpha: 1 + Show Axes: false + Show Trail: false + Value: true + wheel_right_link: + Alpha: 1 + Show Axes: false + Show Trail: false + Value: true + Name: RobotModel + TF Prefix: "" + Update Interval: 0 + Value: true + Visual Enabled: true + - Class: rviz_default_plugins/TF + Enabled: true + Frame Timeout: 15 + Frames: + All Enabled: true + base_footprint: + Value: true + base_link: + Value: true + base_scan: + Value: true + camera_link: + Value: true + camera_rgb_frame: + Value: true + camera_rgb_optical_frame: + Value: true + caster_back_left_link: + Value: true + caster_back_right_link: + Value: true + end_effector_link: + Value: true + gripper_left_link: + Value: true + gripper_right_link: + Value: true + imu_link: + Value: true + link1: + Value: true + link2: + Value: true + link3: + Value: true + link4: + Value: true + link5: + Value: true + odom: + Value: true + wheel_left_link: + Value: true + wheel_right_link: + Value: true + Marker Scale: 0.20000000298023224 + Name: TF + Show Arrows: true + Show Axes: true + Show Names: true + Tree: + odom: + base_footprint: + base_link: + base_scan: + {} + camera_link: + camera_rgb_frame: + camera_rgb_optical_frame: + {} + caster_back_left_link: + {} + caster_back_right_link: + {} + imu_link: + {} + link1: + link2: + link3: + link4: + link5: + end_effector_link: + {} + gripper_left_link: + {} + gripper_right_link: + {} + wheel_left_link: + {} + wheel_right_link: + {} + Update Interval: 0 + Value: true + - Angle Tolerance: 0.10000000149011612 + Class: rviz_default_plugins/Odometry + Covariance: + Orientation: + Alpha: 0.5 + Color: 255; 255; 127 + Color Style: Unique + Frame: Local + Offset: 1 + Scale: 1 + Value: true + Position: + Alpha: 0.30000001192092896 + Color: 204; 51; 204 + Scale: 1 + Value: true + Value: false + Enabled: true + Keep: 100 + Name: Odometry + Position Tolerance: 0.10000000149011612 + Shape: + Alpha: 1 + Axes Length: 1 + Axes Radius: 0.10000000149011612 + Color: 255; 25; 0 + Head Length: 0.30000001192092896 + Head Radius: 0.10000000149011612 + Shaft Length: 1 + Shaft Radius: 0.05000000074505806 + Value: Arrow + Topic: + Depth: 5 + Durability Policy: Volatile + History Policy: Keep Last + Reliability Policy: Reliable + Value: /odom + Value: true + Enabled: true + Global Options: + Background Color: 48; 48; 48 + Fixed Frame: odom + Frame Rate: 30 + Name: root + Tools: + - Class: rviz_default_plugins/MoveCamera + - Class: rviz_default_plugins/Select + - Class: rviz_default_plugins/FocusCamera + - Class: rviz_default_plugins/Measure + Line color: 128; 128; 0 + - Class: rviz_default_plugins/SetGoal + Topic: + Depth: 5 + Durability Policy: Volatile + History Policy: Keep Last + Reliability Policy: Reliable + Value: /move_base_simple/goal + - Class: rviz_default_plugins/PublishPoint + Single click: true + Topic: + Depth: 5 + Durability Policy: Volatile + History Policy: Keep Last + Reliability Policy: Reliable + Value: /clicked_point + Transformation: + Current: + Class: rviz_default_plugins/TF + Value: true + Views: + Current: + Class: rviz_default_plugins/Orbit + Distance: 6.73315954208374 + Enable Stereo Rendering: + Stereo Eye Separation: 0.05999999865889549 + Stereo Focal Distance: 1 + Swap Stereo Eyes: false + Value: false + Focal Point: + X: -0.04720889404416084 + Y: 0.045656368136405945 + Z: 0.03729022294282913 + Focal Shape Fixed Size: true + Focal Shape Size: 0.05000000074505806 + Invert Z Axis: false + Name: Current View + Near Clip Distance: 0.009999999776482582 + Pitch: 0.764797031879425 + Target Frame: + Value: Orbit (rviz) + Yaw: 0.7785595655441284 + Saved: ~ +Window Geometry: + Displays: + collapsed: false + Height: 1023 + Hide Left Dock: false + Hide Right Dock: true + QMainWindow State: 000000ff00000000fd00000004000000000000016a000003a2fc0200000008fb0000001200530065006c0065006300740069006f006e00000001e10000009b0000006300fffffffb0000001e0054006f006f006c002000500072006f007000650072007400690065007302000001ed000001df00000185000000a3fb000000120056006900650077007300200054006f006f02000001df000002110000018500000122fb000000200054006f006f006c002000500072006f0070006500720074006900650073003203000002880000011d000002210000017afb000000100044006900730070006c006100790073010000003e000003a2000000da00fffffffb0000002000730065006c0065006300740069006f006e00200062007500660066006500720200000138000000aa0000023a00000294fb00000014005700690064006500530074006500720065006f02000000e6000000d2000003ee0000030bfb0000000c004b0069006e0065006300740200000186000001060000030c00000261000000010000010f0000038efc0200000003fb0000001e0054006f006f006c002000500072006f00700065007200740069006500730100000041000000780000000000000000fb0000000a0056006900650077007300000000350000038e000000b100fffffffb0000001200530065006c0065006300740069006f006e010000025a000000b200000000000000000000000200000490000000a9fc0100000001fb0000000a00560069006500770073030000004e00000080000002e10000019700000003000004ff0000003efc0100000002fb0000000800540069006d00650100000000000004ff0000000000000000fb0000000800540069006d006501000000000000045000000000000000000000038f000003a200000004000000040000000800000008fc0000000100000002000000010000000a0054006f006f006c00730100000000ffffffff0000000000000000 + Selection: + collapsed: false + Tool Properties: + collapsed: false + Views: + collapsed: true + Width: 1279 + X: 623 + Y: 385 diff --git a/turtlebot3_manipulation_gazebo/urdf/open_manipulator_x.urdf.xacro b/turtlebot3_manipulation_gazebo/urdf/open_manipulator_x.urdf.xacro new file mode 100644 index 00000000..88e61d21 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/urdf/open_manipulator_x.urdf.xacro @@ -0,0 +1,269 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/turtlebot3_manipulation_gazebo/urdf/turtlebot3_manipulation.urdf.xacro b/turtlebot3_manipulation_gazebo/urdf/turtlebot3_manipulation.urdf.xacro new file mode 100644 index 00000000..dd9ab528 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/urdf/turtlebot3_manipulation.urdf.xacro @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + $(find turtlebot3_manipulation_gazebo)/config/gazebo_controller_manager.yaml + + + + diff --git a/turtlebot3_manipulation_gazebo/urdf/turtlebot3_waffle_pi.urdf.xacro b/turtlebot3_manipulation_gazebo/urdf/turtlebot3_waffle_pi.urdf.xacro new file mode 100644 index 00000000..84daca51 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/urdf/turtlebot3_waffle_pi.urdf.xacro @@ -0,0 +1,230 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/turtlebot3_manipulation_gazebo/worlds/turtlebot3_home_service_challenge.world b/turtlebot3_manipulation_gazebo/worlds/turtlebot3_home_service_challenge.world new file mode 100644 index 00000000..ff7a1305 --- /dev/null +++ b/turtlebot3_manipulation_gazebo/worlds/turtlebot3_home_service_challenge.world @@ -0,0 +1,1462 @@ + + + + + 1 + 0 0 10 0 -0 0 + 0.8 0.8 0.8 1 + 0.1 0.1 0.1 1 + + 1000 + 0.9 + 0.01 + 0.001 + + -0.5 0.5 -1 + + + 1 + + + + + 0 0 1 + 100 100 + + + + + + 100 + 50 + + + + + + + + + + + 10 + + + 0 + + + 0 0 1 + 100 100 + + + + + + + 0 + 0 + 1 + + + 0 0 -9.8 + 6e-06 2.3e-05 -4.2e-05 + + + 0.001 + 1 + 1000 + + + 0.4 0.4 0.4 1 + 0.7 0.7 0.7 1 + false + + + EARTH_WGS84 + 0 + 0 + 0 + 0 + + + 0 0 0 0 -0 0 + + + + + 3.4 0.2 0.3 + + + 0 0 0.15 0 -0 0 + 10 + + + + + + + + + + + + + + + 0 0 0.15 0 -0 0 + + + 3.4 0.2 0.3 + + + + + 0 0 0 1 + + + 1.6 0 0 0 0 -1.5708 + 0 + 0 + 1 + + + + + + 3.4 0.2 0.3 + + + 0 0 0.15 0 -0 0 + 10 + + + + + + + + + + + + + + + 0 0 0.15 0 -0 0 + + + 3.4 0.2 0.3 + + + + + 0 0 0 1 + + + 0 -1.6 0 0 -0 3.14159 + 0 + 0 + 1 + + + + + + 3.4 0.2 0.3 + + + 0 0 0.15 0 -0 0 + 10 + + + + + + + + + + + + + + + 0 0 0.15 0 -0 0 + + + 3.4 0.2 0.3 + + + + + 0 0 0 1 + + + -1.6 0 0 0 -0 1.5708 + 0 + 0 + 1 + + + + + + 3.4 0.2 0.3 + + + 0 0 0.15 0 -0 0 + 10 + + + + + + + + + + + + + + + 0 0 0.15 0 -0 0 + + + 3.4 0.2 0.3 + + + + + 0 0 0 1 + + + 0 1.6 0 0 -0 0 + 0 + 0 + 1 + + + + + + 0.8 0.2 0.3 + + + 0 0 0.15 0 -0 0 + 10 + + + + + + + + + + + + + + + 0 0 0.15 0 -0 0 + + + 0.8 0.2 0.3 + + + + + 0 0 0 1 + + + 0 1.1 0 0 0 -1.5708 + 0 + 0 + 1 + + + + + + 0.6 0.2 0.3 + + + 0 0 0.15 0 -0 0 + 10 + + + + + + + + + + + + + + + 0 0 0.15 0 -0 0 + + + 0.6 0.2 0.3 + + + + + 0 0 0 1 + + + 0.2 0.8 0 0 -0 0 + 0 + 0 + 1 + + + + + + 0.8 0.2 0.3 + + + 0 0 0.15 0 -0 0 + 10 + + + + + + + + + + + + + + + 0 0 0.15 0 -0 0 + + + 0.8 0.2 0.3 + + + + + 0 0 0 1 + + + 0 -1.1 0 0 -0 1.5708 + 0 + 0 + 1 + + + + + + 0.6 0.2 0.3 + + + 0 0 0.15 0 -0 0 + 10 + + + + + + + + + + + + + + + 0 0 0.15 0 -0 0 + + + 0.6 0.2 0.3 + + + + + 0 0 0 1 + + + 0.2 -0.8 0 0 -0 0 + 0 + 0 + 1 + + + + + + 0.6 0.2 0.3 + + + 0 0 0.15 0 -0 0 + 10 + + + + + + + + + + + + + + + 0 0 0.15 0 -0 0 + + + 0.6 0.2 0.3 + + + + + 0 0 0 1 + + + -1.2 0 0 0 -0 0 + 0 + 0 + 1 + + 1 + + + 1237 147000000 + 221 704899432 + 1579575539 760245910 + 221365 + + 1.29912 0.39 0.05 0 -0 3.14159 + 0.001 0.176 0.176 + + 1.29912 0.39 0.05 0 -0 3.14159 + 0 0 0 0 -0 0 + 0 0 0 0 -0 0 + 0 0 0 0 -0 0 + + + + 1.29912 0.13 0.05 0 -0 3.14159 + 0.001 0.176 0.176 + + 1.29912 0.13 0.05 0 -0 3.14159 + 0 0 0 0 -0 0 + 0 0 0 0 -0 0 + 0 0 0 0 -0 0 + + + + 1.29912 -0.13 0.05 0 -0 3.14159 + 0.001 0.176 0.176 + + 1.29912 -0.13 0.05 0 -0 3.14159 + 0 0 0 0 -0 0 + 0 0 0 0 -0 0 + 0 0 0 0 -0 0 + + + + 1.29912 -0.39 0.05 0 -0 3.14159 + 0.001 0.176 0.176 + + 1.29912 -0.39 0.05 0 -0 3.14159 + 0 0 0 0 -0 0 + 0 0 0 0 -0 0 + 0 0 0 0 -0 0 + + + + 0.9 1.29912 0.05 0 0 -1.5708 + 0.001 0.176 0.176 + + 0.9 1.29912 0.05 0 0 -1.5708 + 0 0 0 0 -0 0 + 0 0 0 0 -0 0 + 0 0 0 0 -0 0 + + + + 0.9 -1.29912 0.05 0 -0 1.5708 + 0.001 0.176 0.176 + + 0.9 -1.29912 0.05 0 -0 1.5708 + 0 0 0 0 -0 0 + 0 0 0 0 -0 0 + 0 0 0 0 -0 0 + + + + -1.35231 -1.35231 0.05 0 -0 0.785398 + 0.001 0.176 0.176 + + -1.35231 -1.35231 0.05 0 -0 0.785398 + 0 0 0 0 -0 0 + 0 0 0 0 -0 0 + 0 0 0 0 -0 0 + + + + -1.35231 1.35231 0.05 0 0 -0.785398 + 0.001 0.176 0.176 + + -1.35231 1.35231 0.05 0 0 -0.785398 + 0 0 0 0 -0 0 + 0 0 0 0 -0 0 + 0 0 0 0 -0 0 + + + + 0 0 0 0 -0 0 + 1 1 1 + + 1.6 0 0 0 0 -1.5708 + 0 0 0 0 -0 0 + 0 0 0 0 -0 0 + 0 0 0 0 -0 0 + + + 0 -1.6 0 0 -0 3.14159 + 0 0 0 0 -0 0 + 0 0 0 0 -0 0 + 0 0 0 0 -0 0 + + + -1.6 0 0 0 -0 1.5708 + 0 0 0 0 -0 0 + 0 0 0 0 -0 0 + 0 0 0 0 -0 0 + + + 0 1.6 0 0 -0 0 + 0 0 0 0 -0 0 + 0 0 0 0 -0 0 + 0 0 0 0 -0 0 + + + 0 1.1 0 0 0 -1.5708 + 0 0 0 0 -0 0 + 0 0 0 0 -0 0 + 0 0 0 0 -0 0 + + + 0.2 0.8 0 0 -0 0 + 0 0 0 0 -0 0 + 0 0 0 0 -0 0 + 0 0 0 0 -0 0 + + + 0 -1.1 0 0 -0 1.5708 + 0 0 0 0 -0 0 + 0 0 0 0 -0 0 + 0 0 0 0 -0 0 + + + 0.2 -0.8 0 0 -0 0 + 0 0 0 0 -0 0 + 0 0 0 0 -0 0 + 0 0 0 0 -0 0 + + + -1.2 0 0 0 -0 0 + 0 0 0 0 -0 0 + 0 0 0 0 -0 0 + 0 0 0 0 -0 0 + + + + 0 0 0 0 -0 0 + 1 1 1 + + 0 0 0 0 -0 0 + 0 0 0 0 -0 0 + 0 0 0 0 -0 0 + 0 0 0 0 -0 0 + + + + 1.4 0 0 0 0 0 + 1 1 1 + + 1.4 0 0.1 0 0 0 + 0 0 0 0 -0 0 + 0 0 -9.8 0 -0 0 + 0 0 -9.8 0 -0 0 + + + + 0.9 1.4 0 0 -0 1.5708 + 1 1 1 + + 0.9 1.4 0.1 0 -0 1.5708 + 0 0 0 0 -0 0 + 0 0 -9.8 0 -0 0 + 0 0 -9.8 0 -0 0 + + + + 0.9 -1.4 0 0 -0 1.5708 + 1 1 1 + + 0.9 -1.4 0.1 0 -0 1.5708 + 0 0 0 0 -0 0 + 0 0 -9.8 0 -0 0 + 0 0 -9.8 0 -0 0 + + + + -1.36 1.36 0 0 -0 2.35619 + 1 1 1 + + -1.36 1.36 0.1 0 -0 2.35619 + 0 0 0 0 -0 0 + 0 0 -9.8 0 -0 0 + 0 0 -9.8 0 -0 0 + + + + -1.36 -1.36 0 0 0 -2.35619 + 1 1 1 + + -1.36 -1.36 0.1 0 0 -2.35619 + 0 0 0 0 -0 0 + 0 0 -9.8 0 -0 0 + 0 0 -9.8 0 -0 0 + + + + 0 0 10 0 -0 0 + + + + + -4.11981 1.2144 3.43758 0 0.713797 -0.332608 + orbit + perspective + + + + + 1.4 0 0.1 0 0 0 + + 1 + + 0.166667 + 0 + 0 + 0.166667 + 0 + 0.166667 + + + 0 + 1 + + + + 0.2 1 0.2 + + + + + 0.3 0.3 0.3 1 + 0.7 0.7 0.7 1 + 0.01 0.01 0.01 1 + 0 0 0 1 + + __default__ + + + 1 + 0 + + + 0 + 10 + + + 0.2 1 0.2 + + + + + + 1 + 1 + 0 0 0 + 0 + 0 + + + 1 + 0 + 0 + 1 + + 0 + + + + + 0 + 1e+06 + + + 0 + 1 + 1 + + 0 + 0.2 + 1e+13 + 1 + 0.01 + 0 + + + 1 + -0.01 + 0 + 0.2 + 1e+13 + 1 + + + + + 1 + + 0 + 1 + + + + 0.9 1.4 0.1 0 -0 1.5708 + + 1 + + 0.166667 + 0 + 0 + 0.166667 + 0 + 0.166667 + + + 0 + 1 + + + + 0.2 0.4 0.2 + + + + + 0.3 0.3 0.3 1 + 0.7 0.7 0.7 1 + 0.01 0.01 0.01 1 + 0 0 0 1 + + __default__ + + + 1 + 0 + + + 0 + 10 + + + 0.2 0.4 0.2 + + + + + + 1 + 1 + 0 0 0 + 0 + 0 + + + 1 + 0 + 0 + 1 + + 0 + + + + + 0 + 1e+06 + + + 0 + 1 + 1 + + 0 + 0.2 + 1e+13 + 1 + 0.01 + 0 + + + 1 + -0.01 + 0 + 0.2 + 1e+13 + 1 + + + + + 1 + + 0 + 1 + + + + 0.9 -1.4 0.1 0 -0 1.5708 + + 1 + + 0.166667 + 0 + 0 + 0.166667 + 0 + 0.166667 + + + 0 + 1 + + + + 0.2 0.4 0.2 + + + + + 0.3 0.3 0.3 1 + 0.7 0.7 0.7 1 + 0.01 0.01 0.01 1 + 0 0 0 1 + + __default__ + + + 1 + 0 + + + 0 + 10 + + + 0.2 0.4 0.2 + + + + + + 1 + 1 + 0 0 0 + 0 + 0 + + + 1 + 0 + 0 + 1 + + 0 + + + + + 0 + 1e+06 + + + 0 + 1 + 1 + + 0 + 0.2 + 1e+13 + 1 + 0.01 + 0 + + + 1 + -0.01 + 0 + 0.2 + 1e+13 + 1 + + + + + 1 + + 0 + 1 + + + + -1.36 1.36 0.1 0 -0 2.35619 + + 1 + + 0.166667 + 0 + 0 + 0.166667 + 0 + 0.166667 + + + 0 + 1 + 1 + + + + 0.2 0.4 0.02 + + + + + 0.3 0.3 0.3 1 + 0.7 0.7 0.7 1 + 0.01 0.01 0.01 1 + 0 0 0 1 + + __default__ + + + 0.1 0 0.09 0 -0 0 + 1 + 0 + + + + + 0.02 0.4 0.2 + + + + + 0.3 0.3 0.3 1 + 0.7 0.7 0.7 1 + 0.01 0.01 0.01 1 + 0 0 0 1 + + __default__ + + + 0 0 0 0 -0 0 + 1 + 0 + + + 0 + 10 + 0.1 0 0.09 0 -0 0 + + + 0.2 0.4 0.02 + + + + + + 1 + 1 + 0 0 0 + 0 + 0 + + + 1 + 0 + 0 + 1 + + 0 + + + + + 0 + 1e+06 + + + 0 + 1 + 1 + + 0 + 0.2 + 1e+13 + 1 + 0.01 + 0 + + + 1 + -0.01 + 0 + 0.2 + 1e+13 + 1 + + + + + + 0 + 10 + 0 0 0 0 -0 0 + + + 0.02 0.4 0.2 + + + + + + 1 + 1 + 0 0 0 + 0 + 0 + + + 1 + 0 + 0 + 1 + + 0 + + + + + 0 + 1e+06 + + + 0 + 1 + 1 + + 0 + 0.2 + 1e+13 + 1 + 0.01 + 0 + + + 1 + -0.01 + 0 + 0.2 + 1e+13 + 1 + + + + + + 0 + 1 + + + + -1.36 -1.36 0.1 0 0 -2.35619 + + 1 + + 0.166667 + 0 + 0 + 0.166667 + 0 + 0.166667 + + + 0 + 1 + 1 + + + + 0.2 0.4 0.02 + + + + + 0.3 0.3 0.3 1 + 0.7 0.7 0.7 1 + 0.01 0.01 0.01 1 + 0 0 0 1 + + __default__ + + + 0.1 0 0.09 0 -0 0 + 1 + 0 + + + + + 0.02 0.4 0.2 + + + + + 0.3 0.3 0.3 1 + 0.7 0.7 0.7 1 + 0.01 0.01 0.01 1 + 0 0 0 1 + + __default__ + + + 0 0 0 0 -0 0 + 1 + 0 + + + 0 + 10 + 0.1 0 0.09 0 -0 0 + + + 0.2 0.4 0.02 + + + + + + 1 + 1 + 0 0 0 + 0 + 0 + + + 1 + 0 + 0 + 1 + + 0 + + + + + 0 + 1e+06 + + + 0 + 1 + 1 + + 0 + 0.2 + 1e+13 + 1 + 0.01 + 0 + + + 1 + -0.01 + 0 + 0.2 + 1e+13 + 1 + + + + + + 0 + 10 + 0 0 0 0 -0 0 + + + 0.02 0.4 0.2 + + + + + + 1 + 1 + 0 0 0 + 0 + 0 + + + 1 + 0 + 0 + 1 + + 0 + + + + + 0 + 1e+06 + + + 0 + 1 + 1 + + 0 + 0.2 + 1e+13 + 1 + 0.01 + 0 + + + 1 + -0.01 + 0 + 0.2 + 1e+13 + 1 + + + + + + 0 + 1 + + + 1 + + + + + model://turtlebot3_home_service_challenge/marker0/meshes/Marker0.dae + 1 1 1 + + + + 0 + 0 + 1 + + 1.29912 0.39 0.05 0 -0 3.14159 + + + 1 + + + + + model://turtlebot3_home_service_challenge/marker1/meshes/Marker1.dae + 1 1 1 + + + + 0 + 0 + 1 + + 1.29912 0.13 0.05 0 -0 3.14159 + + + 1 + + + + + model://turtlebot3_home_service_challenge/marker2/meshes/Marker2.dae + 1 1 1 + + + + 0 + 0 + 1 + + 1.29912 -0.13 0.05 0 -0 3.14159 + + + 1 + + + + + model://turtlebot3_home_service_challenge/marker3/meshes/Marker3.dae + 1 1 1 + + + + 0 + 0 + 1 + + 1.29912 -0.39 0.05 0 -0 3.14159 + + + 1 + + + + + model://turtlebot3_home_service_challenge/marker4/meshes/Marker4.dae + 1 1 1 + + + + 0 + 0 + 1 + + 0.9 1.29912 0.05 0 0 -1.5708 + + + 1 + + + + + model://turtlebot3_home_service_challenge/marker7/meshes/Marker7.dae + 1 1 1 + + + + 0 + 0 + 1 + + 0.9 -1.29912 0.05 0 -0 1.5708 + + + 1 + + + + + model://turtlebot3_home_service_challenge/marker6/meshes/Marker6.dae + 1 1 1 + + + + 0 + 0 + 1 + + -1.35231 -1.35231 0.05 0 -0 0.785398 + + + 1 + + + + + model://turtlebot3_home_service_challenge/marker5/meshes/Marker5.dae + 1 1 1 + + + + 0 + 0 + 1 + + -1.35231 1.35231 0.05 0 0 -0.785398 + + + diff --git a/turtlebot3_simulations/CHANGELOG.rst b/turtlebot3_simulations/CHANGELOG.rst index 9b47139d..abfdce7b 100644 --- a/turtlebot3_simulations/CHANGELOG.rst +++ b/turtlebot3_simulations/CHANGELOG.rst @@ -2,6 +2,11 @@ Changelog for package turtlebot3_simulations ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +2.3.4 (2025-05-28) +------------------ +* Moved the TurtleBot3 Manipulation Gazebo simulation from the turtlebot3_manipulation_bringup package +* Contributors: ChanHyeong Lee + 2.3.0 (2025-02-17) ------------------ * Added multi-robot launch functionality diff --git a/turtlebot3_simulations/package.xml b/turtlebot3_simulations/package.xml index 5ebcdddf..75fe90e7 100644 --- a/turtlebot3_simulations/package.xml +++ b/turtlebot3_simulations/package.xml @@ -2,7 +2,7 @@ turtlebot3_simulations - 2.3.0 + 2.3.4 ROS 2 packages for TurtleBot3 simulations