Add two arm urdf
This commit is contained in:
parent
102f1edc98
commit
1cdb995dce
22
openarm_two_arms/openarm_two_arms/CMakeLists.txt
Normal file
22
openarm_two_arms/openarm_two_arms/CMakeLists.txt
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
cmake_minimum_required(VERSION 3.8)
|
||||||
|
project(openarm_two_arms)
|
||||||
|
|
||||||
|
find_package(ament_cmake REQUIRED)
|
||||||
|
|
||||||
|
if(BUILD_TESTING)
|
||||||
|
find_package(ament_lint_auto REQUIRED)
|
||||||
|
# the following line skips the linter which checks for copyrights
|
||||||
|
# comment the line when a copyright and license is added to all source files
|
||||||
|
set(ament_cmake_copyright_FOUND TRUE)
|
||||||
|
# the following line skips cpplint (only works in a git repo)
|
||||||
|
# comment the line when this package is in a git repo and when
|
||||||
|
# a copyright and license is added to all source files
|
||||||
|
set(ament_cmake_cpplint_FOUND TRUE)
|
||||||
|
ament_lint_auto_find_test_dependencies()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
install(DIRECTORY launch meshes rviz urdf worlds
|
||||||
|
DESTINATION share/${PROJECT_NAME}
|
||||||
|
)
|
||||||
|
|
||||||
|
ament_package()
|
||||||
@ -0,0 +1,39 @@
|
|||||||
|
from pathlib import Path
|
||||||
|
|
||||||
|
import launch
|
||||||
|
from launch.substitutions import Command
|
||||||
|
from launch.substitutions import LaunchConfiguration
|
||||||
|
from launch.actions import DeclareLaunchArgument
|
||||||
|
|
||||||
|
import launch_ros
|
||||||
|
from launch_ros.parameter_descriptions import ParameterValue
|
||||||
|
|
||||||
|
|
||||||
|
def generate_launch_description():
|
||||||
|
pkg_share = Path(launch_ros.substitutions.FindPackageShare(package='openarm_two_arms').find('openarm_two_arms'))
|
||||||
|
default_model_path = pkg_share / 'urdf/openarm_two_arms_wrapper.urdf.xacro'
|
||||||
|
|
||||||
|
use_sim_time = LaunchConfiguration('use_sim_time')
|
||||||
|
use_sim_time_launch_arg = DeclareLaunchArgument('use_sim_time', default_value='true')
|
||||||
|
|
||||||
|
robot_state_publisher_node = launch_ros.actions.Node(
|
||||||
|
package='robot_state_publisher',
|
||||||
|
executable='robot_state_publisher',
|
||||||
|
parameters=[
|
||||||
|
{
|
||||||
|
# ParameterValue is required to avoid being interpreted as YAML.
|
||||||
|
'robot_description': ParameterValue(Command(['xacro ', LaunchConfiguration('model')]), value_type=str),
|
||||||
|
'use_sim_time': use_sim_time,
|
||||||
|
},
|
||||||
|
],
|
||||||
|
)
|
||||||
|
|
||||||
|
return launch.LaunchDescription([
|
||||||
|
launch.actions.DeclareLaunchArgument(
|
||||||
|
name='model',
|
||||||
|
default_value=str(default_model_path),
|
||||||
|
description="Absolute path to the robot's URDF file",
|
||||||
|
),
|
||||||
|
use_sim_time_launch_arg,
|
||||||
|
robot_state_publisher_node,
|
||||||
|
])
|
||||||
84
openarm_two_arms/openarm_two_arms/launch/display.launch.py
Normal file
84
openarm_two_arms/openarm_two_arms/launch/display.launch.py
Normal file
@ -0,0 +1,84 @@
|
|||||||
|
from pathlib import Path
|
||||||
|
|
||||||
|
import launch
|
||||||
|
from launch.substitutions import LaunchConfiguration, PathJoinSubstitution
|
||||||
|
|
||||||
|
import launch_ros
|
||||||
|
from launch_ros.substitutions import FindPackageShare
|
||||||
|
from launch.actions import IncludeLaunchDescription
|
||||||
|
from launch.launch_description_sources import PythonLaunchDescriptionSource
|
||||||
|
|
||||||
|
|
||||||
|
def generate_launch_description():
|
||||||
|
pkg_share = Path(launch_ros.substitutions.FindPackageShare(package='openarm_two_arms').find('openarm_two_arms'))
|
||||||
|
default_model_path = pkg_share / 'urdf/openarm_two_arms_wrapper.urdf.xacro'
|
||||||
|
default_rviz_config_path = pkg_share / 'rviz/robot_description.rviz'
|
||||||
|
|
||||||
|
use_sim_time = LaunchConfiguration('use_sim_time')
|
||||||
|
|
||||||
|
robot_state_publisher_node = IncludeLaunchDescription(
|
||||||
|
PythonLaunchDescriptionSource([
|
||||||
|
PathJoinSubstitution([
|
||||||
|
FindPackageShare('openarm_two_arms'),
|
||||||
|
'launch',
|
||||||
|
'description.launch.py',
|
||||||
|
]),
|
||||||
|
]),
|
||||||
|
launch_arguments=dict(use_sim_time=use_sim_time).items(),
|
||||||
|
)
|
||||||
|
|
||||||
|
joint_state_publisher_node = launch_ros.actions.Node(
|
||||||
|
package='joint_state_publisher',
|
||||||
|
executable='joint_state_publisher',
|
||||||
|
name='joint_state_publisher',
|
||||||
|
condition=launch.conditions.UnlessCondition(LaunchConfiguration('gui')),
|
||||||
|
parameters=[{
|
||||||
|
'use_sim_time': use_sim_time,
|
||||||
|
}],
|
||||||
|
)
|
||||||
|
joint_state_publisher_gui_node = launch_ros.actions.Node(
|
||||||
|
package='joint_state_publisher_gui',
|
||||||
|
executable='joint_state_publisher_gui',
|
||||||
|
name='joint_state_publisher_gui',
|
||||||
|
condition=launch.conditions.IfCondition(LaunchConfiguration('gui')),
|
||||||
|
parameters=[{
|
||||||
|
'use_sim_time': use_sim_time,
|
||||||
|
}],
|
||||||
|
)
|
||||||
|
rviz_node = launch_ros.actions.Node(
|
||||||
|
package='rviz2',
|
||||||
|
executable='rviz2',
|
||||||
|
name='rviz2',
|
||||||
|
output='screen',
|
||||||
|
arguments=['-d', LaunchConfiguration('rvizconfig')],
|
||||||
|
parameters=[{
|
||||||
|
'use_sim_time': use_sim_time,
|
||||||
|
}],
|
||||||
|
)
|
||||||
|
|
||||||
|
return launch.LaunchDescription([
|
||||||
|
launch.actions.DeclareLaunchArgument(
|
||||||
|
name='use_sim_time',
|
||||||
|
default_value='false',
|
||||||
|
description='Flag to enable usage of simulation time',
|
||||||
|
),
|
||||||
|
launch.actions.DeclareLaunchArgument(
|
||||||
|
name='gui',
|
||||||
|
default_value='True',
|
||||||
|
description='Flag to enable joint_state_publisher_gui',
|
||||||
|
),
|
||||||
|
launch.actions.DeclareLaunchArgument(
|
||||||
|
name='model',
|
||||||
|
default_value=str(default_model_path),
|
||||||
|
description='Absolute path to robot urdf file',
|
||||||
|
),
|
||||||
|
launch.actions.DeclareLaunchArgument(
|
||||||
|
name='rvizconfig',
|
||||||
|
default_value=str(default_rviz_config_path),
|
||||||
|
description='Absolute path to rviz config file',
|
||||||
|
),
|
||||||
|
joint_state_publisher_node,
|
||||||
|
joint_state_publisher_gui_node,
|
||||||
|
robot_state_publisher_node,
|
||||||
|
rviz_node,
|
||||||
|
])
|
||||||
128
openarm_two_arms/openarm_two_arms/launch/gazebo.launch.py
Normal file
128
openarm_two_arms/openarm_two_arms/launch/gazebo.launch.py
Normal file
@ -0,0 +1,128 @@
|
|||||||
|
import os
|
||||||
|
import re
|
||||||
|
import subprocess
|
||||||
|
|
||||||
|
from ament_index_python.packages import get_package_share_directory
|
||||||
|
|
||||||
|
from launch import LaunchDescription
|
||||||
|
from launch.actions import DeclareLaunchArgument
|
||||||
|
from launch.actions import IncludeLaunchDescription
|
||||||
|
from launch.conditions import IfCondition
|
||||||
|
from launch.conditions import UnlessCondition
|
||||||
|
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():
|
||||||
|
|
||||||
|
resources_package = 'openarm_two_arms'
|
||||||
|
|
||||||
|
# Make path to resources dir without last package_name fragment.
|
||||||
|
path_to_share_dir_clipped = ''.join(get_package_share_directory(resources_package).rsplit('/' + resources_package, 1))
|
||||||
|
|
||||||
|
# Gazebo hint for resources.
|
||||||
|
os.environ['GZ_SIM_RESOURCE_PATH'] = path_to_share_dir_clipped
|
||||||
|
|
||||||
|
# Ensure `SDF_PATH` is populated since `sdformat_urdf` uses this rather
|
||||||
|
|
||||||
|
# than `GZ_SIM_RESOURCE_PATH` to locate resources.
|
||||||
|
if "GZ_SIM_RESOURCE_PATH" in os.environ:
|
||||||
|
gz_sim_resource_path = os.environ["GZ_SIM_RESOURCE_PATH"]
|
||||||
|
|
||||||
|
if "SDF_PATH" in os.environ:
|
||||||
|
sdf_path = os.environ["SDF_PATH"]
|
||||||
|
os.environ["SDF_PATH"] = sdf_path + ":" + gz_sim_resource_path
|
||||||
|
else:
|
||||||
|
os.environ["SDF_PATH"] = gz_sim_resource_path
|
||||||
|
|
||||||
|
|
||||||
|
use_custom_world = LaunchConfiguration('use_custom_world')
|
||||||
|
use_custom_world_launch_arg = DeclareLaunchArgument('use_custom_world', default_value='true')
|
||||||
|
gazebo_world = LaunchConfiguration('gazebo_world')
|
||||||
|
gazebo_world_launch_arg = DeclareLaunchArgument('gazebo_world', default_value='empty.sdf')
|
||||||
|
|
||||||
|
# prepare custom world
|
||||||
|
world = os.getenv('GZ_SIM_WORLD', 'empty')
|
||||||
|
fly_world_path = resources_package + '/worlds/' + world + '.sdf'
|
||||||
|
gz_version = subprocess.getoutput("gz sim --versions")
|
||||||
|
gz_version_major = re.search(r'^\d{1}', gz_version).group()
|
||||||
|
launch_arguments=dict(gz_args = '-r ' + str(fly_world_path) + ' --verbose ', gz_version = gz_version_major).items()
|
||||||
|
|
||||||
|
# Gazebo Sim.
|
||||||
|
# by default the custom world is used, otherwise the gazebo world is used, which can be changed with the argument
|
||||||
|
pkg_ros_gz_sim = get_package_share_directory('ros_gz_sim')
|
||||||
|
gazebo = IncludeLaunchDescription(
|
||||||
|
PythonLaunchDescriptionSource(
|
||||||
|
os.path.join(pkg_ros_gz_sim, 'launch', 'gz_sim.launch.py'),
|
||||||
|
),
|
||||||
|
launch_arguments=launch_arguments if use_custom_world else dict(gz_args='-r ' + gazebo_world + ' --verbose').items(),
|
||||||
|
)
|
||||||
|
|
||||||
|
# Spawn
|
||||||
|
spawn = Node(
|
||||||
|
package='ros_gz_sim',
|
||||||
|
executable='create',
|
||||||
|
arguments=[
|
||||||
|
'-name', 'openarm_two_arms',
|
||||||
|
'-x', '1.2',
|
||||||
|
'-z', '2.3',
|
||||||
|
'-Y', '3.4',
|
||||||
|
'-topic', '/robot_description',
|
||||||
|
],
|
||||||
|
output='screen',
|
||||||
|
)
|
||||||
|
|
||||||
|
use_sim_time = LaunchConfiguration('use_sim_time')
|
||||||
|
use_sim_time_launch_arg = DeclareLaunchArgument('use_sim_time', default_value='true')
|
||||||
|
use_rviz = LaunchConfiguration('use_rviz')
|
||||||
|
use_rviz_arg = DeclareLaunchArgument("use_rviz", default_value='true')
|
||||||
|
|
||||||
|
robot_state_publisher = IncludeLaunchDescription(
|
||||||
|
PythonLaunchDescriptionSource([
|
||||||
|
PathJoinSubstitution([
|
||||||
|
FindPackageShare(resources_package),
|
||||||
|
'launch',
|
||||||
|
'description.launch.py',
|
||||||
|
]),
|
||||||
|
]),
|
||||||
|
condition=UnlessCondition(use_rviz), # rviz launch includes rsp.
|
||||||
|
launch_arguments=dict(use_sim_time=use_sim_time).items(),
|
||||||
|
)
|
||||||
|
|
||||||
|
rviz = IncludeLaunchDescription(
|
||||||
|
PythonLaunchDescriptionSource([
|
||||||
|
PathJoinSubstitution([
|
||||||
|
FindPackageShare(resources_package),
|
||||||
|
'launch',
|
||||||
|
'display.launch.py',
|
||||||
|
]),
|
||||||
|
]),
|
||||||
|
condition=IfCondition(use_rviz),
|
||||||
|
launch_arguments=dict(use_sim_time=use_sim_time).items(),
|
||||||
|
)
|
||||||
|
|
||||||
|
gz_bridge = Node(
|
||||||
|
package='ros_gz_bridge',
|
||||||
|
executable='parameter_bridge',
|
||||||
|
arguments=['/clock@rosgraph_msgs/msg/Clock[ignition.msgs.Clock'],
|
||||||
|
output='screen',
|
||||||
|
parameters=[{
|
||||||
|
'use_sim_time': use_sim_time,
|
||||||
|
}],
|
||||||
|
)
|
||||||
|
|
||||||
|
return LaunchDescription([
|
||||||
|
use_sim_time_launch_arg,
|
||||||
|
use_rviz_arg,
|
||||||
|
use_custom_world_launch_arg,
|
||||||
|
gazebo_world_launch_arg,
|
||||||
|
robot_state_publisher,
|
||||||
|
rviz,
|
||||||
|
gazebo,
|
||||||
|
spawn,
|
||||||
|
gz_bridge,
|
||||||
|
])
|
||||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
21
openarm_two_arms/openarm_two_arms/package.xml
Normal file
21
openarm_two_arms/openarm_two_arms/package.xml
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<?xml-model href="http://download.ros.org/schema/package_format3.xsd" schematypens="http://www.w3.org/2001/XMLSchema"?>
|
||||||
|
<package format="3">
|
||||||
|
<name>openarm_two_arms</name>
|
||||||
|
<version>0.0.0</version>
|
||||||
|
<description>TODO: Package description</description>
|
||||||
|
<maintainer email="TODO@todo.com">TODO</maintainer>
|
||||||
|
<license>TODO: License declaration</license>
|
||||||
|
|
||||||
|
<buildtool_depend>ament_cmake</buildtool_depend>
|
||||||
|
|
||||||
|
<depend>joint_state_publisher_gui</depend>
|
||||||
|
<depend>ros_gz</depend>
|
||||||
|
|
||||||
|
<test_depend>ament_lint_auto</test_depend>
|
||||||
|
<test_depend>ament_lint_common</test_depend>
|
||||||
|
|
||||||
|
<export>
|
||||||
|
<build_type>ament_cmake</build_type>
|
||||||
|
</export>
|
||||||
|
</package>
|
||||||
@ -0,0 +1,42 @@
|
|||||||
|
Panels:
|
||||||
|
- Class: rviz_common/Displays
|
||||||
|
Name: Displays
|
||||||
|
- Class: rviz_common/Views
|
||||||
|
Name: Views
|
||||||
|
Visualization Manager:
|
||||||
|
Class: ""
|
||||||
|
Displays:
|
||||||
|
- Class: rviz_default_plugins/Grid
|
||||||
|
Name: Grid
|
||||||
|
Value: true
|
||||||
|
Alpha: 0.5
|
||||||
|
- Class: rviz_default_plugins/RobotModel
|
||||||
|
Description Source: Topic
|
||||||
|
Description Topic:
|
||||||
|
Value: /robot_description
|
||||||
|
Enabled: true
|
||||||
|
Name: RobotModel
|
||||||
|
Alpha: 1
|
||||||
|
Value: true
|
||||||
|
- Class: rviz_default_plugins/TF
|
||||||
|
Name: TF
|
||||||
|
Value: true
|
||||||
|
Enabled: false
|
||||||
|
Global Options:
|
||||||
|
Fixed Frame: l_pedestal_02_urdf_v002
|
||||||
|
Frame Rate: 30
|
||||||
|
Name: root
|
||||||
|
Tools:
|
||||||
|
- Class: rviz_default_plugins/MoveCamera
|
||||||
|
Value: true
|
||||||
|
Views:
|
||||||
|
Current:
|
||||||
|
Class: rviz_default_plugins/Orbit
|
||||||
|
Distance: 5.0
|
||||||
|
Name: Current View
|
||||||
|
Pitch: 0.33
|
||||||
|
Value: Orbit (rviz)
|
||||||
|
Yaw: 5.5
|
||||||
|
Window Geometry:
|
||||||
|
Height: 800
|
||||||
|
Width: 1200
|
||||||
583
openarm_two_arms/openarm_two_arms/urdf/openarm_two_arms.urdf
Normal file
583
openarm_two_arms/openarm_two_arms/urdf/openarm_two_arms.urdf
Normal file
@ -0,0 +1,583 @@
|
|||||||
|
<?xml version="1.0" ?>
|
||||||
|
<robot name="openarm_two_arms">
|
||||||
|
<!--Generated by RobotCAD, a ROS Workbench for FreeCAD (https://github.com/drfenixion/freecad.robotcad)-->
|
||||||
|
<link name="l_pedestal_02_urdf_v002">
|
||||||
|
<visual>
|
||||||
|
<!--pedestal_cad/Part__Feature.-->
|
||||||
|
<origin rpy="0 0 0" xyz="0.0 0.0 0.0"/>
|
||||||
|
<geometry>
|
||||||
|
<mesh filename="package://openarm_two_arms/meshes/full_upper_pedestal_02_urdfv1_o8iqfl.dae"/>
|
||||||
|
</geometry>
|
||||||
|
</visual>
|
||||||
|
<collision>
|
||||||
|
<!--bounding_pedestal/col_pedestal_02_urdf_v1__BoundBox.-->
|
||||||
|
<origin rpy="0 0 0" xyz="0.0 0.0 0.489"/>
|
||||||
|
<geometry>
|
||||||
|
<box size="0.18 0.06 0.978000000000004"/>
|
||||||
|
</geometry>
|
||||||
|
</collision>
|
||||||
|
<inertial>
|
||||||
|
<mass value="4.850309883435878"/>
|
||||||
|
<origin rpy="0 0 0" xyz="0.0 -0.0180451 0.410247"/>
|
||||||
|
<inertia ixx="0.6232810322991779" ixy="7.916644206828546e-12" ixz="-1.094192214704477e-11" iyy="0.6253514495087933" iyz="-0.03342233248166168" izz="0.02000994027356939"/>
|
||||||
|
</inertial>
|
||||||
|
</link>
|
||||||
|
<link name="l_J1_v002">
|
||||||
|
<visual>
|
||||||
|
<!--J1 v002/Part__Feature001.-->
|
||||||
|
<origin rpy="0 0 0" xyz="0.0 0.0 -0.0007"/>
|
||||||
|
<geometry>
|
||||||
|
<mesh filename="package://openarm_two_arms/meshes/full_upper_j1v1_fj2ul1.dae"/>
|
||||||
|
</geometry>
|
||||||
|
</visual>
|
||||||
|
<collision>
|
||||||
|
<!--bound_obj__right_link1__col_J1_v1__BoundBox/col_J1_v1__BoundBox.-->
|
||||||
|
<origin rpy="0 0 0" xyz="0.0 0.0 0.0289"/>
|
||||||
|
<geometry>
|
||||||
|
<box size="0.11 0.073 0.0592"/>
|
||||||
|
</geometry>
|
||||||
|
</collision>
|
||||||
|
<inertial>
|
||||||
|
<mass value="0.5769283920617254"/>
|
||||||
|
<origin rpy="0 0 0" xyz="0.0 2.52845e-05 0.0229621"/>
|
||||||
|
<inertia ixx="0.00034035167574060775" ixy="-2.623557985991217e-18" ixz="-6.093726095527621e-18" iyy="0.0004300058300010205" iyz="-5.09829482074806e-07" izz="0.0004802171432001996"/>
|
||||||
|
</inertial>
|
||||||
|
</link>
|
||||||
|
<link name="l_J2_v002">
|
||||||
|
<visual>
|
||||||
|
<!--J2 v002/Part__Feature002.-->
|
||||||
|
<origin rpy="0 0 0" xyz="0.0 0.0 -0.05395"/>
|
||||||
|
<geometry>
|
||||||
|
<mesh filename="package://openarm_two_arms/meshes/full_upper_j2v1_xzm1cu.dae"/>
|
||||||
|
</geometry>
|
||||||
|
</visual>
|
||||||
|
<collision>
|
||||||
|
<!--bound_obj__right_link2__col_J2_v1__BoundBox/col_J2_v1__BoundBox.-->
|
||||||
|
<origin rpy="0 0 0" xyz="0.0 0.0 0.0371236"/>
|
||||||
|
<geometry>
|
||||||
|
<box size="0.0590000000149012 0.08200000000000002 0.0742471498637348"/>
|
||||||
|
</geometry>
|
||||||
|
</collision>
|
||||||
|
<inertial>
|
||||||
|
<mass value="0.16257504134917358"/>
|
||||||
|
<origin rpy="0 0 0" xyz="-0.000225878 -0.00183836 0.0278368"/>
|
||||||
|
<inertia ixx="0.00023903110213294374" ixy="-7.551692921096027e-08" ixz="-1.1282723362433474e-06" iyy="0.00010490798314778774" iyz="5.9079627839725245e-06" izz="0.00019737368685935776"/>
|
||||||
|
</inertial>
|
||||||
|
</link>
|
||||||
|
<link name="l_J3_v003">
|
||||||
|
<visual>
|
||||||
|
<!--J3 v003/Part__Feature003.-->
|
||||||
|
<origin rpy="1.570796326794897 0 0" xyz="0.0 0.0987 0.02975"/>
|
||||||
|
<geometry>
|
||||||
|
<mesh filename="package://openarm_two_arms/meshes/full_upper_j3v2_5nirfo.dae"/>
|
||||||
|
</geometry>
|
||||||
|
</visual>
|
||||||
|
<collision>
|
||||||
|
<!--bound_obj__right_link3__col_J3_v2__BoundBox/col_J3_v2__BoundBox.-->
|
||||||
|
<origin rpy="1.5707963267948968 0 0" xyz="-0.0164466 -0.00045542 0.02975"/>
|
||||||
|
<geometry>
|
||||||
|
<box size="0.08989101803441879 0.06999999999999983 0.05903276947803012"/>
|
||||||
|
</geometry>
|
||||||
|
</collision>
|
||||||
|
<inertial>
|
||||||
|
<mass value="0.4201676469910031"/>
|
||||||
|
<origin rpy="1.5707963267948968 0 0" xyz="-0.00688022 0.0 0.0282752"/>
|
||||||
|
<inertia ixx="0.00020256001126230057" ixy="6.004247875311213e-06" ixz="1.3304903057525575e-06" iyy="0.0002970624991387495" iyz="5.980157765704868e-07" izz="0.00032889994351244413"/>
|
||||||
|
</inertial>
|
||||||
|
</link>
|
||||||
|
<link name="l_J4_v002">
|
||||||
|
<visual>
|
||||||
|
<!--J4 v002/Part__Feature004.-->
|
||||||
|
<origin rpy="-3.1415926535888543 -1.5620381439005742 0" xyz="-0.0986962 0.0 0.0621144"/>
|
||||||
|
<geometry>
|
||||||
|
<mesh filename="package://openarm_two_arms/meshes/full_upper_j4v1_u1e2xn.dae"/>
|
||||||
|
</geometry>
|
||||||
|
</visual>
|
||||||
|
<collision>
|
||||||
|
<!--bound_obj__right_link4__col_J4_v1__BoundBox/col_J4_v1__BoundBox.-->
|
||||||
|
<origin rpy="-3.14159265358886 -1.5620381439005742 0" xyz="0.000266276 -0.0125642 -0.132604"/>
|
||||||
|
<geometry>
|
||||||
|
<box size="0.27584673777150337 0.08211429171582063 0.07186573179325861"/>
|
||||||
|
</geometry>
|
||||||
|
</collision>
|
||||||
|
<inertial>
|
||||||
|
<mass value="0.819475539373447"/>
|
||||||
|
<origin rpy="-3.14159265358886 -1.5620381439005742 0" xyz="0.000781326 -0.0019461 -0.132411"/>
|
||||||
|
<inertia ixx="0.00044078452033976287" ixy="6.020023694043618e-05" ixz="0.00014637459261941218" iyy="0.009208791480530413" iyz="1.5469710436444469e-06" izz="0.009170539316023695"/>
|
||||||
|
</inertial>
|
||||||
|
</link>
|
||||||
|
<link name="l_J5_v003">
|
||||||
|
<visual>
|
||||||
|
<!--J5 v003/Part__Feature005.-->
|
||||||
|
<origin rpy="0 -0.008758182894317394 0" xyz="0.303864 0.0 -0.128451"/>
|
||||||
|
<geometry>
|
||||||
|
<mesh filename="package://openarm_two_arms/meshes/full_upper_j5v2_ckk9an.dae"/>
|
||||||
|
</geometry>
|
||||||
|
</visual>
|
||||||
|
<collision>
|
||||||
|
<!--bound_obj__right_link5__col_J5_v2__BoundBox/col_J5_v2__BoundBox.-->
|
||||||
|
<origin rpy="0 -0.008758182894316818 0" xyz="-0.0542814 0.00265291 -0.0302022"/>
|
||||||
|
<geometry>
|
||||||
|
<box size="0.16827213220625828 0.06430555048399171 0.08257859967140947"/>
|
||||||
|
</geometry>
|
||||||
|
</collision>
|
||||||
|
<inertial>
|
||||||
|
<mass value="0.4086748254352304"/>
|
||||||
|
<origin rpy="0 -0.008758182894316905 0" xyz="-0.0831891 0.00251789 -0.0290107"/>
|
||||||
|
<inertia ixx="0.00031417157425298747" ixy="-1.1391566029536723e-05" ixz="-1.883474090056124e-05" iyy="0.001221711435313989" iyz="1.46725418421127e-06" izz="0.0010755135067660488"/>
|
||||||
|
</inertial>
|
||||||
|
</link>
|
||||||
|
<link name="l_J6_right_wrist">
|
||||||
|
<visual>
|
||||||
|
<!--J6 right_wrist/Part__Feature006.-->
|
||||||
|
<origin rpy="-2.1276679791326423 -1.5542266826921929 0" xyz="-0.0485412 -0.0860404 0.437784"/>
|
||||||
|
<geometry>
|
||||||
|
<mesh filename="package://openarm_two_arms/meshes/full_upper_j6v1_mg9rps.dae"/>
|
||||||
|
</geometry>
|
||||||
|
</visual>
|
||||||
|
<collision>
|
||||||
|
<!--bound_obj__right_link6__col_J6_v1__BoundBox/col_J6_v1__BoundBox.-->
|
||||||
|
<origin rpy="-2.127667979132636 -1.5542266826921927 0" xyz="-0.00260794 -0.00312921 -0.0652641"/>
|
||||||
|
<geometry>
|
||||||
|
<box size="0.13114353004704765 0.05953478325301745 0.08817196195081879"/>
|
||||||
|
</geometry>
|
||||||
|
</collision>
|
||||||
|
<inertial>
|
||||||
|
<mass value="0.3448471958049249"/>
|
||||||
|
<origin rpy="-2.127667979132636 -1.5542266826921927 0" xyz="-0.00898536 -0.0135065 -0.0438611"/>
|
||||||
|
<inertia ixx="0.00019355980999748924" ixy="-1.0061665815148114e-06" ixz="-3.9096495715032716e-05" iyy="0.0003486912031865755" iyz="6.088060315273385e-06" izz="0.00028774975153756256"/>
|
||||||
|
</inertial>
|
||||||
|
</link>
|
||||||
|
<link name="l_J7_v002">
|
||||||
|
<visual>
|
||||||
|
<!--J7 right v002/Part__Feature007.-->
|
||||||
|
<origin rpy="0 -0.008758182894510852 0" xyz="0.558839 -0.00358671 -0.0631962"/>
|
||||||
|
<geometry>
|
||||||
|
<mesh filename="package://openarm_two_arms/meshes/full_upper_j7v1_9yzky6.dae"/>
|
||||||
|
</geometry>
|
||||||
|
</visual>
|
||||||
|
<collision>
|
||||||
|
<!--bound_obj__right_link7__col_J7_v1__BoundBox/col_J7_v1__BoundBox.-->
|
||||||
|
<origin rpy="0 -0.008758182894511114 0" xyz="-0.000318103 0.0022839 0.0340014"/>
|
||||||
|
<geometry>
|
||||||
|
<box size="0.058327402175132874 0.04432916698753661 0.08267601622411752"/>
|
||||||
|
</geometry>
|
||||||
|
</collision>
|
||||||
|
<inertial>
|
||||||
|
<mass value="0.2782138078738053"/>
|
||||||
|
<origin rpy="0 -0.008758182894511043 0" xyz="5.99432e-05 0.0041433 0.0354274"/>
|
||||||
|
<inertia ixx="0.00010424153315648891" ixy="2.735265831785291e-07" ixz="-1.0662322382945994e-07" iyy="0.00012313550743283462" iyz="-8.604996754782856e-08" izz="9.221319958512582e-05"/>
|
||||||
|
</inertial>
|
||||||
|
</link>
|
||||||
|
<link name="l_J8_v002">
|
||||||
|
<visual>
|
||||||
|
<!--J8 v002/Part__Feature008.-->
|
||||||
|
<origin rpy="1.5709195259578714 -0.014065461951077267 0" xyz="0.557948 0.103587 0.019724"/>
|
||||||
|
<geometry>
|
||||||
|
<mesh filename="package://openarm_two_arms/meshes/full_upper_j8v1_dka5zq.dae"/>
|
||||||
|
</geometry>
|
||||||
|
</visual>
|
||||||
|
<collision>
|
||||||
|
<!--bound_obj__right_link8__col_J8_v1__BoundBox/col_J8_v1__BoundBox.-->
|
||||||
|
<origin rpy="1.5709195259578714 -0.01406546195107726 0" xyz="-0.042694 -0.000543176 0.0110286"/>
|
||||||
|
<geometry>
|
||||||
|
<box size="0.13038799671743653 0.05180887692688926 0.1601236763440867"/>
|
||||||
|
</geometry>
|
||||||
|
</collision>
|
||||||
|
<inertial>
|
||||||
|
<mass value="0.31261452743802165"/>
|
||||||
|
<origin rpy="1.5709195259578714 -0.01406546195107726 0" xyz="-0.0607602 -0.000341696 0.00876618"/>
|
||||||
|
<inertia ixx="0.00023465661366788053" ixy="7.609048882006294e-05" ixz="3.088694121124684e-07" iyy="0.0005065459365215377" iyz="1.9022818028658623e-07" izz="0.0003737029250058136"/>
|
||||||
|
</inertial>
|
||||||
|
</link>
|
||||||
|
<link name="l_left_jaw_v002">
|
||||||
|
<visual>
|
||||||
|
<!--left_jaw v002/Part__Feature009.-->
|
||||||
|
<origin rpy="0 -0.008758182894469432 0" xyz="0.665265 -0.00286677 -0.0209282"/>
|
||||||
|
<geometry>
|
||||||
|
<mesh filename="package://openarm_two_arms/meshes/full_upper_left_jawv1_6yxtlc.dae"/>
|
||||||
|
</geometry>
|
||||||
|
</visual>
|
||||||
|
<collision>
|
||||||
|
<!--bound_obj__right_left_jaw__col_left_jaw_v1_col_obj/col_left_jaw_v1_col_obj.-->
|
||||||
|
<origin rpy="0 -0.0087581828944695 0" xyz="0.665265 -0.00286677 -0.0209282"/>
|
||||||
|
<geometry>
|
||||||
|
<mesh filename="package://openarm_two_arms/meshes/full_upper_col_left_jaw_v1_col_obj_wr4fju.dae"/>
|
||||||
|
</geometry>
|
||||||
|
</collision>
|
||||||
|
<inertial>
|
||||||
|
<mass value="0.04297897856394934"/>
|
||||||
|
<origin rpy="0 -0.008758182894469429 0" xyz="-0.0187138 0.00217075 0.0159499"/>
|
||||||
|
<inertia ixx="1.1771768742932353e-05" ixy="-2.389928166589898e-06" ixz="3.999292204534159e-06" iyy="2.3837354480794824e-05" iyz="3.494431877242991e-07" izz="3.0474590214086944e-05"/>
|
||||||
|
</inertial>
|
||||||
|
</link>
|
||||||
|
<link name="l_right_jaw_v002">
|
||||||
|
<visual>
|
||||||
|
<!--right_jaw v002/Part__Feature010.-->
|
||||||
|
<origin rpy="0 -0.008758182898001485 0" xyz="0.665265 -0.00286677 -0.175928"/>
|
||||||
|
<geometry>
|
||||||
|
<mesh filename="package://openarm_two_arms/meshes/full_upper_right_jawv1_0fmgsg.dae"/>
|
||||||
|
</geometry>
|
||||||
|
</visual>
|
||||||
|
<collision>
|
||||||
|
<!--bound_obj__right_right_jaw__col_right_jaw_v1_col_obj/col_right_jaw_v1_col_obj.-->
|
||||||
|
<origin rpy="0 -0.008758182898001553 0" xyz="0.665265 -0.00286677 -0.175928"/>
|
||||||
|
<geometry>
|
||||||
|
<mesh filename="package://openarm_two_arms/meshes/full_upper_col_right_jaw_v1_col_obj_9qatoq.dae"/>
|
||||||
|
</geometry>
|
||||||
|
</collision>
|
||||||
|
<inertial>
|
||||||
|
<mass value="0.042981665301134515"/>
|
||||||
|
<origin rpy="0 -0.00875818289800148 0" xyz="-0.0187844 -0.00272415 -0.0159503"/>
|
||||||
|
<inertia ixx="1.1561293087621594e-05" ixy="2.537718468008212e-06" ixz="-3.6591812257702003e-06" iyy="2.370165527871047e-05" iyz="4.848038235889027e-07" izz="3.039652946542647e-05"/>
|
||||||
|
</inertial>
|
||||||
|
</link>
|
||||||
|
<link name="l_base_link001">
|
||||||
|
<visual>
|
||||||
|
<!--base_link001/Part__Feature018.-->
|
||||||
|
<origin rpy="3.1415926535897927 0 0" xyz="0.0 0.0 0.0007"/>
|
||||||
|
<geometry>
|
||||||
|
<mesh filename="package://openarm_two_arms/meshes/full_upper_base_link_int1ku.dae"/>
|
||||||
|
</geometry>
|
||||||
|
</visual>
|
||||||
|
<collision>
|
||||||
|
<!--bound_obj__left_link1__col_base_link__BoundBox/col_base_link__BoundBox.-->
|
||||||
|
<origin rpy="3.1415926535897927 0 0" xyz="0.0 0.0 -0.0289"/>
|
||||||
|
<geometry>
|
||||||
|
<box size="0.11 0.073 0.0592"/>
|
||||||
|
</geometry>
|
||||||
|
</collision>
|
||||||
|
<inertial>
|
||||||
|
<mass value="0.5769283920617254"/>
|
||||||
|
<origin rpy="3.1415926535897927 0 0" xyz="0.0 -2.52845e-05 -0.0229621"/>
|
||||||
|
<inertia ixx="0.00034035167574060564" ixy="-2.642617350904103e-18" ixz="-6.153994863823447e-18" iyy="0.00043000583000101937" iyz="-5.098294820747963e-07" izz="0.0004802171432001997"/>
|
||||||
|
</inertial>
|
||||||
|
</link>
|
||||||
|
<link name="l_J2_v003">
|
||||||
|
<visual>
|
||||||
|
<!--J2 v003/Part__Feature019.-->
|
||||||
|
<origin rpy="0 0 0" xyz="0.0 0.0 -0.05395"/>
|
||||||
|
<geometry>
|
||||||
|
<mesh filename="package://openarm_two_arms/meshes/full_upper_j2v2_gscnlc.dae"/>
|
||||||
|
</geometry>
|
||||||
|
</visual>
|
||||||
|
<collision>
|
||||||
|
<!--bound_obj__left_link2__col_J2_v2__BoundBox/col_J2_v2__BoundBox.-->
|
||||||
|
<origin rpy="0 0 0" xyz="0.0 0.0 0.0371236"/>
|
||||||
|
<geometry>
|
||||||
|
<box size="0.059000000014901216 0.08200000000000003 0.0742471498637348"/>
|
||||||
|
</geometry>
|
||||||
|
</collision>
|
||||||
|
<inertial>
|
||||||
|
<mass value="0.16257504134917358"/>
|
||||||
|
<origin rpy="0 0 0" xyz="0.000225878 0.00183836 0.0278368"/>
|
||||||
|
<inertia ixx="0.00023903110213294341" ixy="-7.551692921099009e-08" ixz="1.128272336243354e-06" iyy="0.00010490798314778747" iyz="-5.907962783972549e-06" izz="0.00019737368685935768"/>
|
||||||
|
</inertial>
|
||||||
|
</link>
|
||||||
|
<link name="l_J3_v004">
|
||||||
|
<visual>
|
||||||
|
<!--J3 v004/Part__Feature020.-->
|
||||||
|
<origin rpy="1.5707963267948963 0 0" xyz="0.0 0.0987 -0.02975"/>
|
||||||
|
<geometry>
|
||||||
|
<mesh filename="package://openarm_two_arms/meshes/full_upper_j3v005_2vn1gz.dae"/>
|
||||||
|
</geometry>
|
||||||
|
</visual>
|
||||||
|
<collision>
|
||||||
|
<!--bound_obj__left_link3__col_J3_v003__BoundBox/col_J3_v003__BoundBox.-->
|
||||||
|
<origin rpy="1.5707963267948961 0 0" xyz="0.0164466 -0.00044972 -0.02975"/>
|
||||||
|
<geometry>
|
||||||
|
<box size="0.0898910738785183 0.06999999999999985 0.05902136986134156"/>
|
||||||
|
</geometry>
|
||||||
|
</collision>
|
||||||
|
<inertial>
|
||||||
|
<mass value="0.42038984024444975"/>
|
||||||
|
<origin rpy="1.5707963267948961 0 0" xyz="0.00686697 0.0 -0.0282662"/>
|
||||||
|
<inertia ixx="0.00020276573635381913" ixy="5.353124426981602e-06" ixz="-1.2309719752249493e-06" iyy="0.0002972732820435537" iyz="-4.96881827890621e-07" izz="0.00032917425408263227"/>
|
||||||
|
</inertial>
|
||||||
|
</link>
|
||||||
|
<link name="l_J4_v003">
|
||||||
|
<visual>
|
||||||
|
<!--J4 v003/Part__Feature021.-->
|
||||||
|
<origin rpy="0 -1.5620381439005744 0" xyz="0.0986962 0.0 -0.0621144"/>
|
||||||
|
<geometry>
|
||||||
|
<mesh filename="package://openarm_two_arms/meshes/full_upper_j4v2_tzaxwp.dae"/>
|
||||||
|
</geometry>
|
||||||
|
</visual>
|
||||||
|
<collision>
|
||||||
|
<!--bound_obj__left_link4__col_J4_v2__BoundBox/col_J4_v2__BoundBox.-->
|
||||||
|
<origin rpy="0 -1.5620381439005742 0" xyz="-0.000261608 0.0125645 0.132604"/>
|
||||||
|
<geometry>
|
||||||
|
<box size="0.27584679830769426 0.08211367789676165 0.07185639591248483"/>
|
||||||
|
</geometry>
|
||||||
|
</collision>
|
||||||
|
<inertial>
|
||||||
|
<mass value="0.8196402299327217"/>
|
||||||
|
<origin rpy="0 -1.5620381439005742 0" xyz="0.000770085 0.00195314 0.132431"/>
|
||||||
|
<inertia ixx="0.0004386639666889925" ixy="-6.080385269207883e-05" ixz="-7.68782221495183e-06" iyy="0.009210551548719602" iyz="-2.7878027653992583e-06" izz="0.00917471125137894"/>
|
||||||
|
</inertial>
|
||||||
|
</link>
|
||||||
|
<link name="l_J5_v004">
|
||||||
|
<visual>
|
||||||
|
<!--J5 v004/Part__Feature022.-->
|
||||||
|
<origin rpy="0 0.008758182894352118 0" xyz="-0.303864 0.0 -0.0689415"/>
|
||||||
|
<geometry>
|
||||||
|
<mesh filename="package://openarm_two_arms/meshes/full_upper_j5v005_didwyo.dae"/>
|
||||||
|
</geometry>
|
||||||
|
</visual>
|
||||||
|
<collision>
|
||||||
|
<!--bound_obj__left_link5__col_J5_v003__BoundBox/col_J5_v003__BoundBox.-->
|
||||||
|
<origin rpy="0 0.008758182894352025 0" xyz="0.0539601 0.00265291 0.02931"/>
|
||||||
|
<geometry>
|
||||||
|
<box size="0.1676296341613413 0.06430555048399128 0.08257859967140607"/>
|
||||||
|
</geometry>
|
||||||
|
</collision>
|
||||||
|
<inertial>
|
||||||
|
<mass value="0.40867482543516"/>
|
||||||
|
<origin rpy="0 0.008758182894352111 0" xyz="0.0831878 0.00261036 0.0290107"/>
|
||||||
|
<inertia ixx="0.0003150152720598943" ixy="9.43251788631792e-06" ixz="-3.2155516327367085e-05" iyy="0.0012216556466064033" iyz="-1.3129824233752054e-06" izz="0.0010745148965932514"/>
|
||||||
|
</inertial>
|
||||||
|
</link>
|
||||||
|
<link name="l_J6_Left_v004">
|
||||||
|
<visual>
|
||||||
|
<!--J6_Left v004/Part__Feature023.-->
|
||||||
|
<origin rpy="1.013924674457276 -1.5542266826921816 0" xyz="0.0485412 0.0860404 -0.437784"/>
|
||||||
|
<geometry>
|
||||||
|
<mesh filename="package://openarm_two_arms/meshes/full_upper_j6_leftv005_f8km11.dae"/>
|
||||||
|
</geometry>
|
||||||
|
</visual>
|
||||||
|
<collision>
|
||||||
|
<!--bound_obj__left_link6__col_J6_Left_v003__BoundBox/col_J6_Left_v003__BoundBox.-->
|
||||||
|
<origin rpy="1.0139246744572885 -1.5542266826921818 0" xyz="0.00260793 0.0031292 0.0652641"/>
|
||||||
|
<geometry>
|
||||||
|
<box size="0.1311435300470597 0.059534783253118076 0.08817198167731641"/>
|
||||||
|
</geometry>
|
||||||
|
</collision>
|
||||||
|
<inertial>
|
||||||
|
<mass value="0.34433331594607314"/>
|
||||||
|
<origin rpy="1.0139246744572885 -1.5542266826921818 0" xyz="0.00885434 0.0135457 0.0439"/>
|
||||||
|
<inertia ixx="0.00019315823092440877" ixy="5.759960919860601e-07" ixz="3.928258332297235e-05" iyy="0.0003489300226703872" iyz="5.3866492677574926e-06" izz="0.00028834862800848534"/>
|
||||||
|
</inertial>
|
||||||
|
</link>
|
||||||
|
<link name="l_J7_Left_v004">
|
||||||
|
<visual>
|
||||||
|
<!--J7_Left v004/Part__Feature024.-->
|
||||||
|
<origin rpy="0 0.008758182894514984 0" xyz="-0.558839 -0.00358671 -0.0632962"/>
|
||||||
|
<geometry>
|
||||||
|
<mesh filename="package://openarm_two_arms/meshes/full_upper_j7_leftv005_8ohvh2.dae"/>
|
||||||
|
</geometry>
|
||||||
|
</visual>
|
||||||
|
<collision>
|
||||||
|
<!--bound_obj__left_link7__col_J7_Left_v003__BoundBox/col_J7_Left_v003__BoundBox.-->
|
||||||
|
<origin rpy="0 0.008758182894515429 0" xyz="0.000300274 0.00228799 0.0340015"/>
|
||||||
|
<geometry>
|
||||||
|
<box size="0.05859778949354245 0.04469786051400639 0.08267618289454949"/>
|
||||||
|
</geometry>
|
||||||
|
</collision>
|
||||||
|
<inertial>
|
||||||
|
<mass value="0.2782996911629702"/>
|
||||||
|
<origin rpy="0 0.008758182894515356 0" xyz="-8.771e-05 0.00414153 0.035427"/>
|
||||||
|
<inertia ixx="0.0001043910985422628" ixy="-4.0026347675757406e-07" ixz="1.0837675080533579e-07" iyy="0.00012327455405278424" iyz="-8.765964772332956e-08" izz="9.221516114206396e-05"/>
|
||||||
|
</inertial>
|
||||||
|
</link>
|
||||||
|
<link name="l_J8_v003">
|
||||||
|
<visual>
|
||||||
|
<!--J8 v003/Part__Feature025.-->
|
||||||
|
<origin rpy="1.570978323892347 0.02077671332575817 0" xyz="-0.557906 0.103687 0.0234745"/>
|
||||||
|
<geometry>
|
||||||
|
<mesh filename="package://openarm_two_arms/meshes/full_upper_j8v004_upij9o.dae"/>
|
||||||
|
</geometry>
|
||||||
|
</visual>
|
||||||
|
<collision>
|
||||||
|
<!--bound_obj__left_link8__col_J8_v002__BoundBox/col_J8_v002__BoundBox.-->
|
||||||
|
<origin rpy="1.570978323892347 0.02077671332575817 0" xyz="0.0427524 -0.001079 0.0109925"/>
|
||||||
|
<geometry>
|
||||||
|
<box size="0.1302624002952524 0.052571684700854236 0.1601213740691585"/>
|
||||||
|
</geometry>
|
||||||
|
</collision>
|
||||||
|
<inertial>
|
||||||
|
<mass value="0.3126145274380216"/>
|
||||||
|
<origin rpy="1.570978323892347 0.020776713325758166 0" xyz="0.0607568 -0.000722767 0.00876618"/>
|
||||||
|
<inertia ixx="0.00023572179169416507" ixy="-7.789320420216956e-05" ixz="-2.111587909476847e-06" iyy="0.0005055124180887915" iyz="-1.5449610531695725e-06" izz="0.0003736712654123388"/>
|
||||||
|
</inertial>
|
||||||
|
</link>
|
||||||
|
<link name="l_right_jaw_v004">
|
||||||
|
<visual>
|
||||||
|
<!--right_jaw v004/Part__Feature027.-->
|
||||||
|
<origin rpy="3.141592653589774 0.008758182895214187 0" xyz="-0.662074 0.00352188 0.18819"/>
|
||||||
|
<geometry>
|
||||||
|
<mesh filename="package://openarm_two_arms/meshes/full_upper_right_jawv003_5v80f0.dae"/>
|
||||||
|
</geometry>
|
||||||
|
</visual>
|
||||||
|
<collision>
|
||||||
|
<!--bound_obj__left_right_jaw__col_right_jaw_v002_col_obj/col_right_jaw_v002_col_obj.-->
|
||||||
|
<origin rpy="3.141592653589774 0.00875818289521427 0" xyz="-0.662074 0.00352188 0.18819"/>
|
||||||
|
<geometry>
|
||||||
|
<mesh filename="package://openarm_two_arms/meshes/full_upper_col_right_jaw_v002_col_obj_ln0sqy.dae"/>
|
||||||
|
</geometry>
|
||||||
|
</collision>
|
||||||
|
<inertial>
|
||||||
|
<mass value="0.042981665301134495"/>
|
||||||
|
<origin rpy="3.141592653589774 0.008758182895214186 0" xyz="0.0189546 -0.00337688 0.0156207"/>
|
||||||
|
<inertia ixx="1.1399290012366144e-05" ixy="2.1100277903741056e-06" ixz="3.6731039885335394e-06" iyy="2.38634020443188e-05" iyz="-3.5503706410916235e-07" izz="3.0396785775073194e-05"/>
|
||||||
|
</inertial>
|
||||||
|
</link>
|
||||||
|
<link name="l_left_jaw_v004">
|
||||||
|
<visual>
|
||||||
|
<!--left_jaw v004/Part__Feature026.-->
|
||||||
|
<origin rpy="3.141592653589789 0.00875818289443215 0" xyz="-0.664789 0.00352188 0.0332134"/>
|
||||||
|
<geometry>
|
||||||
|
<mesh filename="package://openarm_two_arms/meshes/full_upper_left_jawv003_9ggcxr.dae"/>
|
||||||
|
</geometry>
|
||||||
|
</visual>
|
||||||
|
<collision>
|
||||||
|
<!--bound_obj__left_left_jaw__col_left_jaw_v002_col_obj/col_left_jaw_v002_col_obj.-->
|
||||||
|
<origin rpy="3.141592653589789 0.008758182894432077 0" xyz="-0.664789 0.00352188 0.0332134"/>
|
||||||
|
<geometry>
|
||||||
|
<mesh filename="package://openarm_two_arms/meshes/full_upper_col_left_jaw_v002_col_obj_he8av6.dae"/>
|
||||||
|
</geometry>
|
||||||
|
</collision>
|
||||||
|
<inertial>
|
||||||
|
<mass value="0.04297897856394934"/>
|
||||||
|
<origin rpy="3.141592653589789 0.008758182894432148 0" xyz="0.0184958 0.00151751 -0.0162764"/>
|
||||||
|
<inertia ixx="1.195285836430737e-05" ixy="-2.8053920115195855e-06" ixz="-3.983934744055433e-06" iyy="2.3656009736974273e-05" iyz="-4.864815166189635e-07" izz="3.047484533653199e-05"/>
|
||||||
|
</inertial>
|
||||||
|
</link>
|
||||||
|
<joint name="right_fix1" type="fixed">
|
||||||
|
<parent link="l_pedestal_02_urdf_v002"/>
|
||||||
|
<child link="l_J1_v002"/>
|
||||||
|
<origin rpy="3.0144791747751833 -1.5707963267948324 0.12689401604101067" xyz="0.09 0.0 0.893"/>
|
||||||
|
</joint>
|
||||||
|
<joint name="right_rev1" type="revolute">
|
||||||
|
<parent link="l_J1_v002"/>
|
||||||
|
<child link="l_J2_v002"/>
|
||||||
|
<origin rpy="0 0 0" xyz="0.0 0.0 0.05325"/>
|
||||||
|
<axis xyz="0 0 1"/>
|
||||||
|
<limit effort="0.0" lower="-2.0943951023931953" upper="2.0943951023931953" velocity="0.0"/>
|
||||||
|
</joint>
|
||||||
|
<joint name="right_rev2" type="revolute">
|
||||||
|
<parent link="l_J2_v002"/>
|
||||||
|
<child link="l_J3_v003"/>
|
||||||
|
<origin rpy="-1.5707963267948968 0 0" xyz="0.0 -0.02975 0.04475"/>
|
||||||
|
<axis xyz="0 0 1"/>
|
||||||
|
<limit effort="0.0" lower="0.0" upper="3.141592653589793" velocity="0.0"/>
|
||||||
|
</joint>
|
||||||
|
<joint name="right_rev3" type="revolute">
|
||||||
|
<parent link="l_J3_v003"/>
|
||||||
|
<child link="l_J4_v002"/>
|
||||||
|
<origin rpy="-1.5707963267949054 0 -1.562038143900564" xyz="-0.0612477 -0.000536432 0.02975"/>
|
||||||
|
<axis xyz="0 0 1"/>
|
||||||
|
<limit effort="0.0" lower="-3.6651914291880923" upper="0.5235987755982988" velocity="0.0"/>
|
||||||
|
</joint>
|
||||||
|
<joint name="right_rev4" type="revolute">
|
||||||
|
<parent link="l_J4_v002"/>
|
||||||
|
<child link="l_J5_v003"/>
|
||||||
|
<origin rpy="-0.20701608758495998 -1.5707963267948566 -2.937419385117548" xyz="0.0297547 0.0 -0.24175"/>
|
||||||
|
<axis xyz="0 0 1"/>
|
||||||
|
<limit effort="0.0" lower="-0.3490658503988659" upper="2.792526803190927" velocity="0.0"/>
|
||||||
|
</joint>
|
||||||
|
<joint name="right_rev5" type="revolute">
|
||||||
|
<parent link="l_J5_v003"/>
|
||||||
|
<child link="l_J6_right_wrist"/>
|
||||||
|
<origin rpy="1.5707963267948473 -0.5569332500492129 1.556730325338251" xyz="-0.133937 0.00188408 -0.0297547"/>
|
||||||
|
<axis xyz="0 0 1"/>
|
||||||
|
<limit effort="0.0" lower="-2.0943951023931953" upper="2.0943951023931953" velocity="0.0"/>
|
||||||
|
</joint>
|
||||||
|
<joint name="right_rev6" type="revolute">
|
||||||
|
<parent link="l_J6_right_wrist"/>
|
||||||
|
<child link="l_J7_v002"/>
|
||||||
|
<origin rpy="-1.5707963268024898 -1.5567303253382425 -0.5569332500461536" xyz="-0.0187648 -0.0301352 -0.12105"/>
|
||||||
|
<axis xyz="0 0 1"/>
|
||||||
|
<limit effort="0.0" lower="-1.5707963267948966" upper="1.5707963267948966" velocity="0.0"/>
|
||||||
|
</joint>
|
||||||
|
<joint name="right_rev7" type="revolute">
|
||||||
|
<parent link="l_J7_v002"/>
|
||||||
|
<child link="l_J8_v002"/>
|
||||||
|
<origin rpy="-1.5707963267950005 -0.00875904933536772 -0.014066001454933467" xyz="-0.000217313 -0.0154485 0.0355"/>
|
||||||
|
<axis xyz="0 0 1"/>
|
||||||
|
<limit effort="0.0" lower="-0.9599310885968813" upper="0.9599310885968813" velocity="0.0"/>
|
||||||
|
</joint>
|
||||||
|
<joint name="right_left_pris1" type="prismatic">
|
||||||
|
<parent link="l_J8_v002"/>
|
||||||
|
<child link="l_left_jaw_v002"/>
|
||||||
|
<origin rpy="1.570796326795101 -0.014066001454929162 0.00875904933542146" xyz="-0.1071 0.0768568 0.0132053"/>
|
||||||
|
<axis xyz="0 0 1"/>
|
||||||
|
<limit effort="0.0" lower="0.0" upper="0.045" velocity="0.0"/>
|
||||||
|
</joint>
|
||||||
|
<joint name="right_right_pris2" type="prismatic">
|
||||||
|
<parent link="l_J8_v002"/>
|
||||||
|
<child link="l_right_jaw_v002"/>
|
||||||
|
<origin rpy="1.570796326794883 -0.014066001454927403 0.008759049336290027" xyz="-0.10571 -0.0781373 0.0132053"/>
|
||||||
|
<axis xyz="0 0 1"/>
|
||||||
|
<limit effort="0.0" lower="0.0" upper="0.045" velocity="0.0"/>
|
||||||
|
<mimic joint="right_left_pris1" multiplier="-1.0" offset="0.0"/>
|
||||||
|
</joint>
|
||||||
|
<joint name="left_fix1" type="fixed">
|
||||||
|
<parent link="l_pedestal_02_urdf_v002"/>
|
||||||
|
<child link="l_base_link001"/>
|
||||||
|
<origin rpy="3.0186531925068127 -1.5707963267948268 0.12293946108298068" xyz="-0.09 0.0 0.893"/>
|
||||||
|
</joint>
|
||||||
|
<joint name="left_rev1" type="revolute">
|
||||||
|
<parent link="l_base_link001"/>
|
||||||
|
<child link="l_J2_v003"/>
|
||||||
|
<origin rpy="-3.1415926535897922 0 -3.1415926535897927" xyz="0.0 0.0 -0.05325"/>
|
||||||
|
<axis xyz="0 0 1"/>
|
||||||
|
<limit effort="0.0" lower="-2.0943951023931953" upper="2.0943951023931953" velocity="0.0"/>
|
||||||
|
</joint>
|
||||||
|
<joint name="left_rev2" type="revolute">
|
||||||
|
<parent link="l_J2_v003"/>
|
||||||
|
<child link="l_J3_v004"/>
|
||||||
|
<origin rpy="-1.570796326794897 0 0" xyz="0.0 0.02975 0.04475"/>
|
||||||
|
<axis xyz="0 0 1"/>
|
||||||
|
<limit effort="0.0" lower="-3.141592653589793" upper="0.0" velocity="0.0"/>
|
||||||
|
</joint>
|
||||||
|
<joint name="left_rev3" type="revolute">
|
||||||
|
<parent link="l_J3_v004"/>
|
||||||
|
<child link="l_J4_v003"/>
|
||||||
|
<origin rpy="1.5707963267949063 0 1.5620381439005797" xyz="0.0612477 -0.000536432 -0.02975"/>
|
||||||
|
<axis xyz="0 0 1"/>
|
||||||
|
<limit effort="0.0" lower="-3.6651914291880923" upper="0.5235987755982988" velocity="0.0"/>
|
||||||
|
</joint>
|
||||||
|
<joint name="left_rev4" type="revolute">
|
||||||
|
<parent link="l_J4_v003"/>
|
||||||
|
<child link="l_J5_v004"/>
|
||||||
|
<origin rpy="-3.0383286058327292 -1.5707963267948855 3.038328605832587" xyz="0.0297547 0.0 0.24175"/>
|
||||||
|
<axis xyz="0 0 1"/>
|
||||||
|
<limit effort="0.0" lower="-2.792526803190927" upper="0.3490658503988659" velocity="0.0"/>
|
||||||
|
</joint>
|
||||||
|
<joint name="left_rev5" type="revolute">
|
||||||
|
<parent link="l_J5_v004"/>
|
||||||
|
<child link="l_J6_Left_v004"/>
|
||||||
|
<origin rpy="-1.5707963267949232 0.55693325005308 -1.5567303253382712" xyz="0.133937 0.00188408 0.0297547"/>
|
||||||
|
<axis xyz="0 0 1"/>
|
||||||
|
<limit effort="0.0" lower="-2.0943951023931953" upper="2.0943951023931953" velocity="0.0"/>
|
||||||
|
</joint>
|
||||||
|
<joint name="left_rev6" type="revolute">
|
||||||
|
<parent link="l_J6_Left_v004"/>
|
||||||
|
<child link="l_J7_Left_v004"/>
|
||||||
|
<origin rpy="1.5707963267870033 -1.5567303253382319 -0.5569332500457352" xyz="0.0187648 0.0301352 0.12105"/>
|
||||||
|
<axis xyz="0 0 1"/>
|
||||||
|
<limit effort="0.0" lower="-1.5707963267948966" upper="1.5707963267948966" velocity="0.0"/>
|
||||||
|
</joint>
|
||||||
|
<joint name="left_rev7" type="revolute">
|
||||||
|
<parent link="l_J7_Left_v004"/>
|
||||||
|
<child link="l_J8_v003"/>
|
||||||
|
<origin rpy="-1.5707963267949518 0.008760073613296379 0.020777510312798276" xyz="0.000320989 -0.0154467 0.0355"/>
|
||||||
|
<axis xyz="0 0 1"/>
|
||||||
|
<limit effort="0.0" lower="-0.9599310885968813" upper="0.9599310885968813" velocity="0.0"/>
|
||||||
|
</joint>
|
||||||
|
<joint name="left_left_pris1" type="prismatic">
|
||||||
|
<parent link="l_J8_v003"/>
|
||||||
|
<child link="l_left_jaw_v004"/>
|
||||||
|
<origin rpy="1.5707963267947693 0.020777510312786344 -0.008760073612368274" xyz="0.10571 -0.0786733 0.0132053"/>
|
||||||
|
<axis xyz="0 0 1"/>
|
||||||
|
<limit effort="0.0" lower="-0.045" upper="0.0" velocity="0.0"/>
|
||||||
|
</joint>
|
||||||
|
<joint name="left_right_pris2" type="prismatic">
|
||||||
|
<parent link="l_J8_v003"/>
|
||||||
|
<child link="l_right_jaw_v004"/>
|
||||||
|
<origin rpy="1.5707963267948966 0.020777510312787576 -0.008760073613237863" xyz="0.1071 0.0763207 0.0132053"/>
|
||||||
|
<axis xyz="0 0 1"/>
|
||||||
|
<limit effort="0.0" lower="0.0" upper="0.045" velocity="0.0"/>
|
||||||
|
<mimic joint="left_left_pris1" multiplier="-1.0" offset="0.0"/>
|
||||||
|
</joint>
|
||||||
|
</robot>
|
||||||
@ -0,0 +1,5 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<robot xmlns:xacro="http://www.ros.org/wiki/xacro">
|
||||||
|
|
||||||
|
|
||||||
|
</robot>
|
||||||
@ -0,0 +1,5 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<robot xmlns:xacro="http://www.ros.org/wiki/xacro" name="openarm_two_arms">
|
||||||
|
<xacro:include filename="openarm_two_arms.urdf"/>
|
||||||
|
<xacro:include filename="openarm_two_arms_sensors.urdf.xacro"/>
|
||||||
|
</robot>
|
||||||
428
openarm_two_arms/openarm_two_arms/worlds/cars_and_trees.sdf
Normal file
428
openarm_two_arms/openarm_two_arms/worlds/cars_and_trees.sdf
Normal file
@ -0,0 +1,428 @@
|
|||||||
|
<?xml version="1.0" ?>
|
||||||
|
<sdf version="1.6">
|
||||||
|
<world name="shapes">
|
||||||
|
<physics type="ode">
|
||||||
|
<max_step_size>0.004</max_step_size>
|
||||||
|
<real_time_factor>1.0</real_time_factor>
|
||||||
|
<real_time_update_rate>250</real_time_update_rate>
|
||||||
|
</physics>
|
||||||
|
<plugin
|
||||||
|
filename="gz-sim-physics-system"
|
||||||
|
name="gz::sim::systems::Physics">
|
||||||
|
</plugin>
|
||||||
|
<plugin
|
||||||
|
filename="gz-sim-user-commands-system"
|
||||||
|
name="gz::sim::systems::UserCommands">
|
||||||
|
</plugin>
|
||||||
|
<plugin
|
||||||
|
filename="gz-sim-scene-broadcaster-system"
|
||||||
|
name="gz::sim::systems::SceneBroadcaster">
|
||||||
|
</plugin>
|
||||||
|
<plugin
|
||||||
|
filename="gz-sim-sensors-system"
|
||||||
|
name="gz::sim::systems::Sensors">
|
||||||
|
<!-- <render_engine>ogre</render_engine> -->
|
||||||
|
<render_engine>ogre2</render_engine>
|
||||||
|
<!-- <render_engine>optix</render_engine> -->
|
||||||
|
</plugin>
|
||||||
|
<plugin
|
||||||
|
filename="gz-sim-contact-system"
|
||||||
|
name="gz::sim::systems::Contact">
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<gui fullscreen="0">
|
||||||
|
|
||||||
|
<!-- 3D scene -->
|
||||||
|
<plugin filename="MinimalScene" name="3D View">
|
||||||
|
<gz-gui>
|
||||||
|
<title>3D View</title>
|
||||||
|
<property type="bool" key="showTitleBar">false</property>
|
||||||
|
<property type="string" key="state">docked</property>
|
||||||
|
</gz-gui>
|
||||||
|
|
||||||
|
<engine>ogre2</engine>
|
||||||
|
<scene>scene</scene>
|
||||||
|
<ambient_light>0.4 0.4 0.4</ambient_light>
|
||||||
|
<background_color>0.8 0.8 0.8</background_color>
|
||||||
|
<camera_pose>-6 0 6 0 0.5 0</camera_pose>
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<!-- Plugins that add functionality to the scene -->
|
||||||
|
<plugin filename="EntityContextMenuPlugin" name="Entity context menu">
|
||||||
|
<gz-gui>
|
||||||
|
<property key="state" type="string">floating</property>
|
||||||
|
<property key="width" type="double">5</property>
|
||||||
|
<property key="height" type="double">5</property>
|
||||||
|
<property key="showTitleBar" type="bool">false</property>
|
||||||
|
</gz-gui>
|
||||||
|
</plugin>
|
||||||
|
<plugin filename="GzSceneManager" name="Scene Manager">
|
||||||
|
<gz-gui>
|
||||||
|
<property key="resizable" type="bool">false</property>
|
||||||
|
<property key="width" type="double">5</property>
|
||||||
|
<property key="height" type="double">5</property>
|
||||||
|
<property key="state" type="string">floating</property>
|
||||||
|
<property key="showTitleBar" type="bool">false</property>
|
||||||
|
</gz-gui>
|
||||||
|
</plugin>
|
||||||
|
<plugin filename="InteractiveViewControl" name="Interactive view control">
|
||||||
|
<gz-gui>
|
||||||
|
<property key="resizable" type="bool">false</property>
|
||||||
|
<property key="width" type="double">5</property>
|
||||||
|
<property key="height" type="double">5</property>
|
||||||
|
<property key="state" type="string">floating</property>
|
||||||
|
<property key="showTitleBar" type="bool">false</property>
|
||||||
|
</gz-gui>
|
||||||
|
</plugin>
|
||||||
|
<plugin filename="CameraTracking" name="Camera Tracking">
|
||||||
|
<gz-gui>
|
||||||
|
<property key="resizable" type="bool">false</property>
|
||||||
|
<property key="width" type="double">5</property>
|
||||||
|
<property key="height" type="double">5</property>
|
||||||
|
<property key="state" type="string">floating</property>
|
||||||
|
<property key="showTitleBar" type="bool">false</property>
|
||||||
|
</gz-gui>
|
||||||
|
</plugin>
|
||||||
|
<plugin filename="MarkerManager" name="Marker manager">
|
||||||
|
<gz-gui>
|
||||||
|
<property key="resizable" type="bool">false</property>
|
||||||
|
<property key="width" type="double">5</property>
|
||||||
|
<property key="height" type="double">5</property>
|
||||||
|
<property key="state" type="string">floating</property>
|
||||||
|
<property key="showTitleBar" type="bool">false</property>
|
||||||
|
</gz-gui>
|
||||||
|
</plugin>
|
||||||
|
<plugin filename="SelectEntities" name="Select Entities">
|
||||||
|
<gz-gui>
|
||||||
|
<anchors target="Select entities">
|
||||||
|
<line own="right" target="right"/>
|
||||||
|
<line own="top" target="top"/>
|
||||||
|
</anchors>
|
||||||
|
<property key="resizable" type="bool">false</property>
|
||||||
|
<property key="width" type="double">5</property>
|
||||||
|
<property key="height" type="double">5</property>
|
||||||
|
<property key="state" type="string">floating</property>
|
||||||
|
<property key="showTitleBar" type="bool">false</property>
|
||||||
|
</gz-gui>
|
||||||
|
</plugin>
|
||||||
|
<plugin filename="VisualizationCapabilities" name="Visualization Capabilities">
|
||||||
|
<gz-gui>
|
||||||
|
<property key="resizable" type="bool">false</property>
|
||||||
|
<property key="width" type="double">5</property>
|
||||||
|
<property key="height" type="double">5</property>
|
||||||
|
<property key="state" type="string">floating</property>
|
||||||
|
<property key="showTitleBar" type="bool">false</property>
|
||||||
|
</gz-gui>
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<plugin filename="Spawn" name="Spawn Entities">
|
||||||
|
<gz-gui>
|
||||||
|
<anchors target="Select entities">
|
||||||
|
<line own="right" target="right"/>
|
||||||
|
<line own="top" target="top"/>
|
||||||
|
</anchors>
|
||||||
|
<property key="resizable" type="bool">false</property>
|
||||||
|
<property key="width" type="double">5</property>
|
||||||
|
<property key="height" type="double">5</property>
|
||||||
|
<property key="state" type="string">floating</property>
|
||||||
|
<property key="showTitleBar" type="bool">false</property>
|
||||||
|
</gz-gui>
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<!-- World control -->
|
||||||
|
<plugin filename="WorldControl" name="World control">
|
||||||
|
<gz-gui>
|
||||||
|
<title>World control</title>
|
||||||
|
<property type="bool" key="showTitleBar">false</property>
|
||||||
|
<property type="bool" key="resizable">false</property>
|
||||||
|
<property type="double" key="height">72</property>
|
||||||
|
<property type="double" key="z">1</property>
|
||||||
|
|
||||||
|
<property type="string" key="state">floating</property>
|
||||||
|
<anchors target="3D View">
|
||||||
|
<line own="left" target="left"/>
|
||||||
|
<line own="bottom" target="bottom"/>
|
||||||
|
</anchors>
|
||||||
|
</gz-gui>
|
||||||
|
|
||||||
|
<play_pause>true</play_pause>
|
||||||
|
<step>true</step>
|
||||||
|
<start_paused>true</start_paused>
|
||||||
|
<use_event>true</use_event>
|
||||||
|
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<!-- World statistics -->
|
||||||
|
<plugin filename="WorldStats" name="World stats">
|
||||||
|
<gz-gui>
|
||||||
|
<title>World stats</title>
|
||||||
|
<property type="bool" key="showTitleBar">false</property>
|
||||||
|
<property type="bool" key="resizable">false</property>
|
||||||
|
<property type="double" key="height">110</property>
|
||||||
|
<property type="double" key="width">290</property>
|
||||||
|
<property type="double" key="z">1</property>
|
||||||
|
|
||||||
|
<property type="string" key="state">floating</property>
|
||||||
|
<anchors target="3D View">
|
||||||
|
<line own="right" target="right"/>
|
||||||
|
<line own="bottom" target="bottom"/>
|
||||||
|
</anchors>
|
||||||
|
</gz-gui>
|
||||||
|
|
||||||
|
<sim_time>true</sim_time>
|
||||||
|
<real_time>true</real_time>
|
||||||
|
<real_time_factor>true</real_time_factor>
|
||||||
|
<iterations>true</iterations>
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<!-- Insert simple shapes -->
|
||||||
|
<plugin filename="Shapes" name="Shapes">
|
||||||
|
<gz-gui>
|
||||||
|
<property key="resizable" type="bool">false</property>
|
||||||
|
<property key="x" type="double">0</property>
|
||||||
|
<property key="y" type="double">0</property>
|
||||||
|
<property key="width" type="double">250</property>
|
||||||
|
<property key="height" type="double">50</property>
|
||||||
|
<property key="state" type="string">floating</property>
|
||||||
|
<property key="showTitleBar" type="bool">false</property>
|
||||||
|
<property key="cardBackground" type="string">#666666</property>
|
||||||
|
</gz-gui>
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<!-- Insert lights -->
|
||||||
|
<plugin filename="Lights" name="Lights">
|
||||||
|
<gz-gui>
|
||||||
|
<property key="resizable" type="bool">false</property>
|
||||||
|
<property key="x" type="double">250</property>
|
||||||
|
<property key="y" type="double">0</property>
|
||||||
|
<property key="width" type="double">150</property>
|
||||||
|
<property key="height" type="double">50</property>
|
||||||
|
<property key="state" type="string">floating</property>
|
||||||
|
<property key="showTitleBar" type="bool">false</property>
|
||||||
|
<property key="cardBackground" type="string">#666666</property>
|
||||||
|
</gz-gui>
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<!-- Translate / rotate -->
|
||||||
|
<plugin filename="TransformControl" name="Transform control">
|
||||||
|
<gz-gui>
|
||||||
|
<property key="resizable" type="bool">false</property>
|
||||||
|
<property key="x" type="double">0</property>
|
||||||
|
<property key="y" type="double">50</property>
|
||||||
|
<property key="width" type="double">250</property>
|
||||||
|
<property key="height" type="double">50</property>
|
||||||
|
<property key="state" type="string">floating</property>
|
||||||
|
<property key="showTitleBar" type="bool">false</property>
|
||||||
|
<property key="cardBackground" type="string">#777777</property>
|
||||||
|
</gz-gui>
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<!-- Inspector -->
|
||||||
|
<plugin filename="ComponentInspector" name="Component inspector">
|
||||||
|
<gz-gui>
|
||||||
|
<property type="string" key="state">docked_collapsed</property>
|
||||||
|
</gz-gui>
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<!-- Entity tree -->
|
||||||
|
<plugin filename="EntityTree" name="Entity tree">
|
||||||
|
<gz-gui>
|
||||||
|
<property type="string" key="state">docked_collapsed</property>
|
||||||
|
</gz-gui>
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<!-- View angle -->
|
||||||
|
<plugin filename="ViewAngle" name="View angle">
|
||||||
|
<gz-gui>
|
||||||
|
<property type="string" key="state">docked_collapsed</property>
|
||||||
|
</gz-gui>
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<!-- Image Display Plugins for visualization -->
|
||||||
|
<plugin filename="ImageDisplay" name="Image Display">
|
||||||
|
<gz-gui>
|
||||||
|
</gz-gui>
|
||||||
|
<topic>camera</topic>
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<plugin name='Grid config' filename='GridConfig'>
|
||||||
|
<gz-gui>
|
||||||
|
<property type="string" key="state">docked_collapsed</property>
|
||||||
|
</gz-gui>
|
||||||
|
<insert>
|
||||||
|
<!-- total size = length * cell count-->
|
||||||
|
<horizontal_cell_count>50</horizontal_cell_count>
|
||||||
|
|
||||||
|
<!-- 0 actually means one plane-->
|
||||||
|
<vertical_cell_count>0</vertical_cell_count>
|
||||||
|
|
||||||
|
<!--5m cells-->
|
||||||
|
<cell_length>2.0</cell_length>
|
||||||
|
|
||||||
|
<pose>0 0 0 0 0 0</pose>
|
||||||
|
<color>1 1 1 0.7</color>
|
||||||
|
</insert>
|
||||||
|
</plugin>
|
||||||
|
</gui>
|
||||||
|
|
||||||
|
<light type="directional" name="sun">
|
||||||
|
<cast_shadows>true</cast_shadows>
|
||||||
|
<pose>0 0 10 0 0 0</pose>
|
||||||
|
<diffuse>0.8 0.8 0.8 1</diffuse>
|
||||||
|
<specular>0.2 0.2 0.2 1</specular>
|
||||||
|
<attenuation>
|
||||||
|
<range>1000</range>
|
||||||
|
<constant>0.9</constant>
|
||||||
|
<linear>0.01</linear>
|
||||||
|
<quadratic>0.001</quadratic>
|
||||||
|
</attenuation>
|
||||||
|
<direction>-0.5 0.1 -0.9</direction>
|
||||||
|
</light>
|
||||||
|
|
||||||
|
<scene>
|
||||||
|
<grid>false</grid>
|
||||||
|
<ambient>0.4 0.4 0.4 1</ambient>
|
||||||
|
<!-- <background>0.7 0.7 0.7 1</background> -->
|
||||||
|
<background>0.8 0.8 0.8</background>
|
||||||
|
<shadows>true</shadows>
|
||||||
|
</scene>
|
||||||
|
|
||||||
|
<model name="ground_plane">
|
||||||
|
<static>true</static>
|
||||||
|
<link name="link">
|
||||||
|
<collision name="collision">
|
||||||
|
<geometry>
|
||||||
|
<plane>
|
||||||
|
<normal>0 0 1</normal>
|
||||||
|
<size>100 100</size>
|
||||||
|
</plane>
|
||||||
|
</geometry>
|
||||||
|
</collision>
|
||||||
|
<visual name="visual">
|
||||||
|
<geometry>
|
||||||
|
<plane>
|
||||||
|
<normal>0 0 1</normal>
|
||||||
|
<size>100 100</size>
|
||||||
|
</plane>
|
||||||
|
</geometry>
|
||||||
|
<material>
|
||||||
|
<ambient>0.8 0.8 0.8 1</ambient>
|
||||||
|
<diffuse>0.8 0.8 0.8 1</diffuse>
|
||||||
|
<specular>0.8 0.8 0.8 1</specular>
|
||||||
|
</material>
|
||||||
|
</visual>
|
||||||
|
</link>
|
||||||
|
</model>
|
||||||
|
|
||||||
|
<!-- Cars, all of them have label 40 -->
|
||||||
|
<include>
|
||||||
|
<name>Car1</name>
|
||||||
|
<pose>-2 -2 0 0 0 0</pose>
|
||||||
|
<uri>
|
||||||
|
https://fuel.gazebosim.org/1.0/OpenRobotics/models/Hatchback blue
|
||||||
|
</uri>
|
||||||
|
<plugin filename="gz-sim-label-system" name="gz::sim::systems::Label">
|
||||||
|
<label>40</label>
|
||||||
|
</plugin>
|
||||||
|
</include>
|
||||||
|
|
||||||
|
<include>
|
||||||
|
<name>Car2</name>
|
||||||
|
<pose>-3 -5 0 0 0 0</pose>
|
||||||
|
<uri>
|
||||||
|
https://fuel.gazebosim.org/1.0/OpenRobotics/models/Pickup
|
||||||
|
</uri>
|
||||||
|
<plugin filename="gz-sim-label-system" name="gz::sim::systems::Label">
|
||||||
|
<label>40</label>
|
||||||
|
</plugin>
|
||||||
|
</include>
|
||||||
|
|
||||||
|
<include>
|
||||||
|
<name>Car3</name>
|
||||||
|
<pose>-4 3 0 0 0 -1.57</pose>
|
||||||
|
<uri>
|
||||||
|
https://fuel.gazebosim.org/1.0/OpenRobotics/models/SUV
|
||||||
|
</uri>
|
||||||
|
<plugin filename="gz-sim-label-system" name="gz::sim::systems::Label">
|
||||||
|
<label>40</label>
|
||||||
|
</plugin>
|
||||||
|
</include>
|
||||||
|
|
||||||
|
<!-- Tree, all of them have label 30 -->
|
||||||
|
<include>
|
||||||
|
<name>tree1</name>
|
||||||
|
<pose>-2 5 0 0 0 0</pose>
|
||||||
|
<uri>
|
||||||
|
https://fuel.gazebosim.org/1.0/OpenRobotics/models/Pine Tree
|
||||||
|
</uri>
|
||||||
|
<plugin filename="gz-sim-label-system" name="gz::sim::systems::Label">
|
||||||
|
<label>30</label>
|
||||||
|
</plugin>
|
||||||
|
</include>
|
||||||
|
|
||||||
|
<include>
|
||||||
|
<name>tree2</name>
|
||||||
|
<pose>-7 2 0 0 0 0</pose>
|
||||||
|
<uri>
|
||||||
|
https://fuel.gazebosim.org/1.0/OpenRobotics/models/Pine Tree
|
||||||
|
</uri>
|
||||||
|
<plugin filename="gz-sim-label-system" name="gz::sim::systems::Label">
|
||||||
|
<label>30</label>
|
||||||
|
</plugin>
|
||||||
|
</include>
|
||||||
|
|
||||||
|
<include>
|
||||||
|
<name>tree3</name>
|
||||||
|
<pose>-7 -4 0 0 0 0</pose>
|
||||||
|
<uri>
|
||||||
|
https://fuel.gazebosim.org/1.0/OpenRobotics/models/Pine Tree
|
||||||
|
</uri>
|
||||||
|
<plugin filename="gz-sim-label-system" name="gz::sim::systems::Label">
|
||||||
|
<label>30</label>
|
||||||
|
</plugin>
|
||||||
|
</include>
|
||||||
|
|
||||||
|
<!-- Home, we didn't annotate (label) it, so it will be considered as background -->
|
||||||
|
<include>
|
||||||
|
<name>home</name>
|
||||||
|
<pose>-15 0 0 0 0 1.57</pose>
|
||||||
|
<uri>
|
||||||
|
https://fuel.gazebosim.org/1.0/OpenRobotics/models/Collapsed House
|
||||||
|
</uri>
|
||||||
|
</include>
|
||||||
|
|
||||||
|
<!-- Cones, all with label 20-->
|
||||||
|
<include>
|
||||||
|
<name>cone1</name>
|
||||||
|
<pose>0 1 0 0 0 1.570796</pose>
|
||||||
|
<uri>
|
||||||
|
https://fuel.gazebosim.org/1.0/OpenRobotics/models/Construction Cone
|
||||||
|
</uri>
|
||||||
|
<plugin filename="gz-sim-label-system" name="gz::sim::systems::Label">
|
||||||
|
<label>20</label>
|
||||||
|
</plugin>
|
||||||
|
</include>
|
||||||
|
|
||||||
|
<include>
|
||||||
|
<name>cone2</name>
|
||||||
|
<pose>0 4 0 0 0 1.570796</pose>
|
||||||
|
<uri>
|
||||||
|
https://fuel.gazebosim.org/1.0/OpenRobotics/models/Construction Cone
|
||||||
|
</uri>
|
||||||
|
<plugin filename="gz-sim-label-system" name="gz::sim::systems::Label">
|
||||||
|
<label>20</label>
|
||||||
|
</plugin>
|
||||||
|
</include>
|
||||||
|
|
||||||
|
<include>
|
||||||
|
<name>cone3</name>
|
||||||
|
<pose>2 -2 0 0 0.0 1.57</pose>
|
||||||
|
<uri>
|
||||||
|
https://fuel.gazebosim.org/1.0/OpenRobotics/models/Construction Cone
|
||||||
|
</uri>
|
||||||
|
<plugin filename="gz-sim-label-system" name="gz::sim::systems::Label">
|
||||||
|
<label>20</label>
|
||||||
|
</plugin>
|
||||||
|
</include>
|
||||||
|
</world>
|
||||||
|
</sdf>
|
||||||
317
openarm_two_arms/openarm_two_arms/worlds/empty.sdf
Normal file
317
openarm_two_arms/openarm_two_arms/worlds/empty.sdf
Normal file
@ -0,0 +1,317 @@
|
|||||||
|
<?xml version="1.0" ?>
|
||||||
|
<sdf version="1.6">
|
||||||
|
<world name="empty">
|
||||||
|
<physics type="ode">
|
||||||
|
<max_step_size>0.004</max_step_size>
|
||||||
|
<real_time_factor>1.0</real_time_factor>
|
||||||
|
<real_time_update_rate>250</real_time_update_rate>
|
||||||
|
</physics>
|
||||||
|
<plugin
|
||||||
|
filename="gz-sim-physics-system"
|
||||||
|
name="gz::sim::systems::Physics">
|
||||||
|
</plugin>
|
||||||
|
<plugin
|
||||||
|
filename="gz-sim-user-commands-system"
|
||||||
|
name="gz::sim::systems::UserCommands">
|
||||||
|
</plugin>
|
||||||
|
<plugin
|
||||||
|
filename="gz-sim-scene-broadcaster-system"
|
||||||
|
name="gz::sim::systems::SceneBroadcaster">
|
||||||
|
</plugin>
|
||||||
|
<plugin
|
||||||
|
filename="gz-sim-sensors-system"
|
||||||
|
name="gz::sim::systems::Sensors">
|
||||||
|
<!-- <render_engine>ogre</render_engine> -->
|
||||||
|
<render_engine>ogre2</render_engine>
|
||||||
|
<!-- <render_engine>optix</render_engine> -->
|
||||||
|
</plugin>
|
||||||
|
<plugin
|
||||||
|
filename="gz-sim-contact-system"
|
||||||
|
name="gz::sim::systems::Contact">
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<gui fullscreen="0">
|
||||||
|
|
||||||
|
<!-- 3D scene -->
|
||||||
|
<plugin filename="MinimalScene" name="3D View">
|
||||||
|
<gz-gui>
|
||||||
|
<title>3D View</title>
|
||||||
|
<property type="bool" key="showTitleBar">false</property>
|
||||||
|
<property type="string" key="state">docked</property>
|
||||||
|
</gz-gui>
|
||||||
|
|
||||||
|
<engine>ogre2</engine>
|
||||||
|
<scene>scene</scene>
|
||||||
|
<ambient_light>0.4 0.4 0.4</ambient_light>
|
||||||
|
<background_color>0.8 0.8 0.8</background_color>
|
||||||
|
<camera_pose>-6 0 6 0 0.5 0</camera_pose>
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<!-- Plugins that add functionality to the scene -->
|
||||||
|
<plugin filename="EntityContextMenuPlugin" name="Entity context menu">
|
||||||
|
<gz-gui>
|
||||||
|
<property key="state" type="string">floating</property>
|
||||||
|
<property key="width" type="double">5</property>
|
||||||
|
<property key="height" type="double">5</property>
|
||||||
|
<property key="showTitleBar" type="bool">false</property>
|
||||||
|
</gz-gui>
|
||||||
|
</plugin>
|
||||||
|
<plugin filename="GzSceneManager" name="Scene Manager">
|
||||||
|
<gz-gui>
|
||||||
|
<property key="resizable" type="bool">false</property>
|
||||||
|
<property key="width" type="double">5</property>
|
||||||
|
<property key="height" type="double">5</property>
|
||||||
|
<property key="state" type="string">floating</property>
|
||||||
|
<property key="showTitleBar" type="bool">false</property>
|
||||||
|
</gz-gui>
|
||||||
|
</plugin>
|
||||||
|
<plugin filename="InteractiveViewControl" name="Interactive view control">
|
||||||
|
<gz-gui>
|
||||||
|
<property key="resizable" type="bool">false</property>
|
||||||
|
<property key="width" type="double">5</property>
|
||||||
|
<property key="height" type="double">5</property>
|
||||||
|
<property key="state" type="string">floating</property>
|
||||||
|
<property key="showTitleBar" type="bool">false</property>
|
||||||
|
</gz-gui>
|
||||||
|
</plugin>
|
||||||
|
<plugin filename="CameraTracking" name="Camera Tracking">
|
||||||
|
<gz-gui>
|
||||||
|
<property key="resizable" type="bool">false</property>
|
||||||
|
<property key="width" type="double">5</property>
|
||||||
|
<property key="height" type="double">5</property>
|
||||||
|
<property key="state" type="string">floating</property>
|
||||||
|
<property key="showTitleBar" type="bool">false</property>
|
||||||
|
</gz-gui>
|
||||||
|
</plugin>
|
||||||
|
<plugin filename="MarkerManager" name="Marker manager">
|
||||||
|
<gz-gui>
|
||||||
|
<property key="resizable" type="bool">false</property>
|
||||||
|
<property key="width" type="double">5</property>
|
||||||
|
<property key="height" type="double">5</property>
|
||||||
|
<property key="state" type="string">floating</property>
|
||||||
|
<property key="showTitleBar" type="bool">false</property>
|
||||||
|
</gz-gui>
|
||||||
|
</plugin>
|
||||||
|
<plugin filename="SelectEntities" name="Select Entities">
|
||||||
|
<gz-gui>
|
||||||
|
<anchors target="Select entities">
|
||||||
|
<line own="right" target="right"/>
|
||||||
|
<line own="top" target="top"/>
|
||||||
|
</anchors>
|
||||||
|
<property key="resizable" type="bool">false</property>
|
||||||
|
<property key="width" type="double">5</property>
|
||||||
|
<property key="height" type="double">5</property>
|
||||||
|
<property key="state" type="string">floating</property>
|
||||||
|
<property key="showTitleBar" type="bool">false</property>
|
||||||
|
</gz-gui>
|
||||||
|
</plugin>
|
||||||
|
<plugin filename="VisualizationCapabilities" name="Visualization Capabilities">
|
||||||
|
<gz-gui>
|
||||||
|
<property key="resizable" type="bool">false</property>
|
||||||
|
<property key="width" type="double">5</property>
|
||||||
|
<property key="height" type="double">5</property>
|
||||||
|
<property key="state" type="string">floating</property>
|
||||||
|
<property key="showTitleBar" type="bool">false</property>
|
||||||
|
</gz-gui>
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<plugin filename="Spawn" name="Spawn Entities">
|
||||||
|
<gz-gui>
|
||||||
|
<anchors target="Select entities">
|
||||||
|
<line own="right" target="right"/>
|
||||||
|
<line own="top" target="top"/>
|
||||||
|
</anchors>
|
||||||
|
<property key="resizable" type="bool">false</property>
|
||||||
|
<property key="width" type="double">5</property>
|
||||||
|
<property key="height" type="double">5</property>
|
||||||
|
<property key="state" type="string">floating</property>
|
||||||
|
<property key="showTitleBar" type="bool">false</property>
|
||||||
|
</gz-gui>
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<!-- World control -->
|
||||||
|
<plugin filename="WorldControl" name="World control">
|
||||||
|
<gz-gui>
|
||||||
|
<title>World control</title>
|
||||||
|
<property type="bool" key="showTitleBar">false</property>
|
||||||
|
<property type="bool" key="resizable">false</property>
|
||||||
|
<property type="double" key="height">72</property>
|
||||||
|
<property type="double" key="z">1</property>
|
||||||
|
|
||||||
|
<property type="string" key="state">floating</property>
|
||||||
|
<anchors target="3D View">
|
||||||
|
<line own="left" target="left"/>
|
||||||
|
<line own="bottom" target="bottom"/>
|
||||||
|
</anchors>
|
||||||
|
</gz-gui>
|
||||||
|
|
||||||
|
<play_pause>true</play_pause>
|
||||||
|
<step>true</step>
|
||||||
|
<start_paused>true</start_paused>
|
||||||
|
<use_event>true</use_event>
|
||||||
|
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<!-- World statistics -->
|
||||||
|
<plugin filename="WorldStats" name="World stats">
|
||||||
|
<gz-gui>
|
||||||
|
<title>World stats</title>
|
||||||
|
<property type="bool" key="showTitleBar">false</property>
|
||||||
|
<property type="bool" key="resizable">false</property>
|
||||||
|
<property type="double" key="height">110</property>
|
||||||
|
<property type="double" key="width">290</property>
|
||||||
|
<property type="double" key="z">1</property>
|
||||||
|
|
||||||
|
<property type="string" key="state">floating</property>
|
||||||
|
<anchors target="3D View">
|
||||||
|
<line own="right" target="right"/>
|
||||||
|
<line own="bottom" target="bottom"/>
|
||||||
|
</anchors>
|
||||||
|
</gz-gui>
|
||||||
|
|
||||||
|
<sim_time>true</sim_time>
|
||||||
|
<real_time>true</real_time>
|
||||||
|
<real_time_factor>true</real_time_factor>
|
||||||
|
<iterations>true</iterations>
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<!-- Insert simple shapes -->
|
||||||
|
<plugin filename="Shapes" name="Shapes">
|
||||||
|
<gz-gui>
|
||||||
|
<property key="resizable" type="bool">false</property>
|
||||||
|
<property key="x" type="double">0</property>
|
||||||
|
<property key="y" type="double">0</property>
|
||||||
|
<property key="width" type="double">250</property>
|
||||||
|
<property key="height" type="double">50</property>
|
||||||
|
<property key="state" type="string">floating</property>
|
||||||
|
<property key="showTitleBar" type="bool">false</property>
|
||||||
|
<property key="cardBackground" type="string">#666666</property>
|
||||||
|
</gz-gui>
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<!-- Insert lights -->
|
||||||
|
<plugin filename="Lights" name="Lights">
|
||||||
|
<gz-gui>
|
||||||
|
<property key="resizable" type="bool">false</property>
|
||||||
|
<property key="x" type="double">250</property>
|
||||||
|
<property key="y" type="double">0</property>
|
||||||
|
<property key="width" type="double">150</property>
|
||||||
|
<property key="height" type="double">50</property>
|
||||||
|
<property key="state" type="string">floating</property>
|
||||||
|
<property key="showTitleBar" type="bool">false</property>
|
||||||
|
<property key="cardBackground" type="string">#666666</property>
|
||||||
|
</gz-gui>
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<!-- Translate / rotate -->
|
||||||
|
<plugin filename="TransformControl" name="Transform control">
|
||||||
|
<gz-gui>
|
||||||
|
<property key="resizable" type="bool">false</property>
|
||||||
|
<property key="x" type="double">0</property>
|
||||||
|
<property key="y" type="double">50</property>
|
||||||
|
<property key="width" type="double">250</property>
|
||||||
|
<property key="height" type="double">50</property>
|
||||||
|
<property key="state" type="string">floating</property>
|
||||||
|
<property key="showTitleBar" type="bool">false</property>
|
||||||
|
<property key="cardBackground" type="string">#777777</property>
|
||||||
|
</gz-gui>
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<!-- Inspector -->
|
||||||
|
<plugin filename="ComponentInspector" name="Component inspector">
|
||||||
|
<gz-gui>
|
||||||
|
<property type="string" key="state">docked_collapsed</property>
|
||||||
|
</gz-gui>
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<!-- Entity tree -->
|
||||||
|
<plugin filename="EntityTree" name="Entity tree">
|
||||||
|
<gz-gui>
|
||||||
|
<property type="string" key="state">docked_collapsed</property>
|
||||||
|
</gz-gui>
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<!-- View angle -->
|
||||||
|
<plugin filename="ViewAngle" name="View angle">
|
||||||
|
<gz-gui>
|
||||||
|
<property type="string" key="state">docked_collapsed</property>
|
||||||
|
</gz-gui>
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<!-- Image Display Plugins for visualization -->
|
||||||
|
<plugin filename="ImageDisplay" name="Image Display">
|
||||||
|
<gz-gui>
|
||||||
|
</gz-gui>
|
||||||
|
<topic>camera</topic>
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<plugin name='Grid config' filename='GridConfig'>
|
||||||
|
<gz-gui>
|
||||||
|
<property type="string" key="state">docked_collapsed</property>
|
||||||
|
</gz-gui>
|
||||||
|
<insert>
|
||||||
|
<!-- total size = length * cell count-->
|
||||||
|
<horizontal_cell_count>50</horizontal_cell_count>
|
||||||
|
|
||||||
|
<!-- 0 actually means one plane-->
|
||||||
|
<vertical_cell_count>0</vertical_cell_count>
|
||||||
|
|
||||||
|
<!--5m cells-->
|
||||||
|
<cell_length>2.0</cell_length>
|
||||||
|
|
||||||
|
<pose>0 0 0 0 0 0</pose>
|
||||||
|
<color>1 1 1 0.7</color>
|
||||||
|
</insert>
|
||||||
|
</plugin>
|
||||||
|
</gui>
|
||||||
|
|
||||||
|
<light type="directional" name="sun">
|
||||||
|
<cast_shadows>true</cast_shadows>
|
||||||
|
<pose>0 0 10 0 0 0</pose>
|
||||||
|
<diffuse>0.8 0.8 0.8 1</diffuse>
|
||||||
|
<specular>0.2 0.2 0.2 1</specular>
|
||||||
|
<attenuation>
|
||||||
|
<range>1000</range>
|
||||||
|
<constant>0.9</constant>
|
||||||
|
<linear>0.01</linear>
|
||||||
|
<quadratic>0.001</quadratic>
|
||||||
|
</attenuation>
|
||||||
|
<direction>-0.5 0.1 -0.9</direction>
|
||||||
|
</light>
|
||||||
|
|
||||||
|
<scene>
|
||||||
|
<grid>false</grid>
|
||||||
|
<ambient>0.4 0.4 0.4 1</ambient>
|
||||||
|
<!-- <background>0.7 0.7 0.7 1</background> -->
|
||||||
|
<background>0.8 0.8 0.8</background>
|
||||||
|
<shadows>true</shadows>
|
||||||
|
</scene>
|
||||||
|
|
||||||
|
<model name="ground_plane">
|
||||||
|
<static>true</static>
|
||||||
|
<link name="link">
|
||||||
|
<collision name="collision">
|
||||||
|
<geometry>
|
||||||
|
<plane>
|
||||||
|
<normal>0 0 1</normal>
|
||||||
|
<size>100 100</size>
|
||||||
|
</plane>
|
||||||
|
</geometry>
|
||||||
|
</collision>
|
||||||
|
<visual name="visual">
|
||||||
|
<geometry>
|
||||||
|
<plane>
|
||||||
|
<normal>0 0 1</normal>
|
||||||
|
<size>100 100</size>
|
||||||
|
</plane>
|
||||||
|
</geometry>
|
||||||
|
<material>
|
||||||
|
<ambient>0.8 0.8 0.8 1</ambient>
|
||||||
|
<diffuse>0.8 0.8 0.8 1</diffuse>
|
||||||
|
<specular>0.8 0.8 0.8 1</specular>
|
||||||
|
</material>
|
||||||
|
</visual>
|
||||||
|
</link>
|
||||||
|
</model>
|
||||||
|
</world>
|
||||||
|
</sdf>
|
||||||
@ -0,0 +1,3 @@
|
|||||||
|
controller_manager:
|
||||||
|
ros__parameters:
|
||||||
|
update_rate: 250
|
||||||
174
openarm_two_arms/overcross/robot_meta.xml
Normal file
174
openarm_two_arms/overcross/robot_meta.xml
Normal file
@ -0,0 +1,174 @@
|
|||||||
|
<?xml version="1.0" ?>
|
||||||
|
<robotMeta>
|
||||||
|
<robotName>openarm_two_arms</robotName>
|
||||||
|
<urdfFileName>openarm_two_arms.urdf</urdfFileName>
|
||||||
|
<packageName>openarm_two_arms</packageName>
|
||||||
|
<meshesDir>meshes </meshesDir>
|
||||||
|
<robotType>nonspecific</robotType>
|
||||||
|
<generateCodeForRosVersion>jazzy</generateCodeForRosVersion>
|
||||||
|
<rootLinkName>l_pedestal_02_urdf_v002</rootLinkName>
|
||||||
|
<xacroWrapperFileName>openarm_two_arms_wrapper.urdf.xacro</xacroWrapperFileName>
|
||||||
|
<controllersConfigFileName>openarm_two_arms_controllers.yaml</controllersConfigFileName>
|
||||||
|
<joints>
|
||||||
|
<joint>
|
||||||
|
<name>l_pedestal_02_urdf_v002__to__l_J1_v002</name>
|
||||||
|
<jointSpecific>unset</jointSpecific>
|
||||||
|
<jointRotationDirection>unset</jointRotationDirection>
|
||||||
|
<jointRelTotalCenterOfMass_x>0.08985200228416441</jointRelTotalCenterOfMass_x>
|
||||||
|
<jointRelTotalCenterOfMass_y>0.008374721740674768</jointRelTotalCenterOfMass_y>
|
||||||
|
<jointRelTotalCenterOfMass_z>0.3536408675879255</jointRelTotalCenterOfMass_z>
|
||||||
|
</joint>
|
||||||
|
<joint>
|
||||||
|
<name>l_J1_v002__to__l_J2_v002</name>
|
||||||
|
<jointSpecific>unset</jointSpecific>
|
||||||
|
<jointRotationDirection>unset</jointRotationDirection>
|
||||||
|
<jointRelTotalCenterOfMass_x>0.14310200228416442</jointRelTotalCenterOfMass_x>
|
||||||
|
<jointRelTotalCenterOfMass_y>0.008374721740674426</jointRelTotalCenterOfMass_y>
|
||||||
|
<jointRelTotalCenterOfMass_z>0.3536408675879219</jointRelTotalCenterOfMass_z>
|
||||||
|
</joint>
|
||||||
|
<joint>
|
||||||
|
<name>l_J2_v002__to__l_J3_v003</name>
|
||||||
|
<jointSpecific>unset</jointSpecific>
|
||||||
|
<jointRotationDirection>unset</jointRotationDirection>
|
||||||
|
<jointRelTotalCenterOfMass_x>0.18785200228416438</jointRelTotalCenterOfMass_x>
|
||||||
|
<jointRelTotalCenterOfMass_y>0.03812472174067446</jointRelTotalCenterOfMass_y>
|
||||||
|
<jointRelTotalCenterOfMass_z>0.3536408675879187</jointRelTotalCenterOfMass_z>
|
||||||
|
</joint>
|
||||||
|
<joint>
|
||||||
|
<name>l_J3_v003__to__l_J4_v002</name>
|
||||||
|
<jointSpecific>unset</jointSpecific>
|
||||||
|
<jointRotationDirection>unset</jointRotationDirection>
|
||||||
|
<jointRelTotalCenterOfMass_x>0.1883884341284738</jointRelTotalCenterOfMass_x>
|
||||||
|
<jointRelTotalCenterOfMass_y>0.008374721740673765</jointRelTotalCenterOfMass_y>
|
||||||
|
<jointRelTotalCenterOfMass_z>0.2923932166870344</jointRelTotalCenterOfMass_z>
|
||||||
|
</joint>
|
||||||
|
<joint>
|
||||||
|
<name>l_J4_v002__to__l_J5_v003</name>
|
||||||
|
<jointSpecific>unset</jointSpecific>
|
||||||
|
<jointRotationDirection>unset</jointRotationDirection>
|
||||||
|
<jointRelTotalCenterOfMass_x>0.22025922472459597</jointRelTotalCenterOfMass_x>
|
||||||
|
<jointRelTotalCenterOfMass_y>0.008374721740355901</jointRelTotalCenterOfMass_y>
|
||||||
|
<jointRelTotalCenterOfMass_z>0.050913081930198584</jointRelTotalCenterOfMass_z>
|
||||||
|
</joint>
|
||||||
|
<joint>
|
||||||
|
<name>l_J5_v003__to__l_J6_right_wrist</name>
|
||||||
|
<jointSpecific>unset</jointSpecific>
|
||||||
|
<jointRotationDirection>unset</jointRotationDirection>
|
||||||
|
<jointRelTotalCenterOfMass_x>0.19167872532322497</jointRelTotalCenterOfMass_x>
|
||||||
|
<jointRelTotalCenterOfMass_y>0.0064906429748443194</jointRelTotalCenterOfMass_y>
|
||||||
|
<jointRelTotalCenterOfMass_z>-0.08327912378977964</jointRelTotalCenterOfMass_z>
|
||||||
|
</joint>
|
||||||
|
<joint>
|
||||||
|
<name>l_J6_right_wrist__to__l_J7_v002</name>
|
||||||
|
<jointSpecific>unset</jointSpecific>
|
||||||
|
<jointRotationDirection>unset</jointRotationDirection>
|
||||||
|
<jointRelTotalCenterOfMass_x>0.15724014645135684</jointRelTotalCenterOfMass_x>
|
||||||
|
<jointRelTotalCenterOfMass_y>0.004788009645123903</jointRelTotalCenterOfMass_y>
|
||||||
|
<jointRelTotalCenterOfMass_z>-0.20462341836146958</jointRelTotalCenterOfMass_z>
|
||||||
|
</joint>
|
||||||
|
<joint>
|
||||||
|
<name>l_J7_v002__to__l_J8_v002</name>
|
||||||
|
<jointSpecific>unset</jointSpecific>
|
||||||
|
<jointRotationDirection>unset</jointRotationDirection>
|
||||||
|
<jointRelTotalCenterOfMass_x>0.19274068817153964</jointRelTotalCenterOfMass_x>
|
||||||
|
<jointRelTotalCenterOfMass_y>0.020236481260391712</jointRelTotalCenterOfMass_y>
|
||||||
|
<jointRelTotalCenterOfMass_z>-0.20452981106538665</jointRelTotalCenterOfMass_z>
|
||||||
|
</joint>
|
||||||
|
<joint>
|
||||||
|
<name>l_J8_v002__to__l_left_jaw_v002</name>
|
||||||
|
<jointSpecific>unset</jointSpecific>
|
||||||
|
<jointRotationDirection>unset</jointRotationDirection>
|
||||||
|
<jointRelTotalCenterOfMass_x>0.11588209690508</jointRelTotalCenterOfMass_x>
|
||||||
|
<jointRelTotalCenterOfMass_y>0.005535639545575529</jointRelTotalCenterOfMass_y>
|
||||||
|
<jointRelTotalCenterOfMass_z>-0.31143348516325103</jointRelTotalCenterOfMass_z>
|
||||||
|
</joint>
|
||||||
|
<joint>
|
||||||
|
<name>l_J8_v002__to__l_right_jaw_v002</name>
|
||||||
|
<jointSpecific>unset</jointSpecific>
|
||||||
|
<jointRotationDirection>unset</jointRotationDirection>
|
||||||
|
<jointRelTotalCenterOfMass_x>0.2708761523021711</jointRelTotalCenterOfMass_x>
|
||||||
|
<jointRelTotalCenterOfMass_y>0.005536094754475288</jointRelTotalCenterOfMass_y>
|
||||||
|
<jointRelTotalCenterOfMass_z>-0.3100436226578966</jointRelTotalCenterOfMass_z>
|
||||||
|
</joint>
|
||||||
|
<joint>
|
||||||
|
<name>l_pedestal_02_urdf_v002__to__l_base_link001</name>
|
||||||
|
<jointSpecific>unset</jointSpecific>
|
||||||
|
<jointRotationDirection>unset</jointRotationDirection>
|
||||||
|
<jointRelTotalCenterOfMass_x>-0.09014799771583559</jointRelTotalCenterOfMass_x>
|
||||||
|
<jointRelTotalCenterOfMass_y>0.008374721740674999</jointRelTotalCenterOfMass_y>
|
||||||
|
<jointRelTotalCenterOfMass_z>0.35364086758792995</jointRelTotalCenterOfMass_z>
|
||||||
|
</joint>
|
||||||
|
<joint>
|
||||||
|
<name>l_base_link001__to__l_J2_v003</name>
|
||||||
|
<jointSpecific>unset</jointSpecific>
|
||||||
|
<jointRotationDirection>unset</jointRotationDirection>
|
||||||
|
<jointRelTotalCenterOfMass_x>-0.14339799771583558</jointRelTotalCenterOfMass_x>
|
||||||
|
<jointRelTotalCenterOfMass_y>0.008374721740675389</jointRelTotalCenterOfMass_y>
|
||||||
|
<jointRelTotalCenterOfMass_z>0.3536408675879335</jointRelTotalCenterOfMass_z>
|
||||||
|
</joint>
|
||||||
|
<joint>
|
||||||
|
<name>l_J2_v003__to__l_J3_v004</name>
|
||||||
|
<jointSpecific>unset</jointSpecific>
|
||||||
|
<jointRotationDirection>unset</jointRotationDirection>
|
||||||
|
<jointRelTotalCenterOfMass_x>-0.1881479977158356</jointRelTotalCenterOfMass_x>
|
||||||
|
<jointRelTotalCenterOfMass_y>-0.021375278259324573</jointRelTotalCenterOfMass_y>
|
||||||
|
<jointRelTotalCenterOfMass_z>0.353640867587937</jointRelTotalCenterOfMass_z>
|
||||||
|
</joint>
|
||||||
|
<joint>
|
||||||
|
<name>l_J3_v004__to__l_J4_v003</name>
|
||||||
|
<jointSpecific>unset</jointSpecific>
|
||||||
|
<jointRotationDirection>unset</jointRotationDirection>
|
||||||
|
<jointRelTotalCenterOfMass_x>-0.1886844295601532</jointRelTotalCenterOfMass_x>
|
||||||
|
<jointRelTotalCenterOfMass_y>0.008374721740675183</jointRelTotalCenterOfMass_y>
|
||||||
|
<jointRelTotalCenterOfMass_z>0.2923932166870525</jointRelTotalCenterOfMass_z>
|
||||||
|
</joint>
|
||||||
|
<joint>
|
||||||
|
<name>l_J4_v003__to__l_J5_v004</name>
|
||||||
|
<jointSpecific>unset</jointSpecific>
|
||||||
|
<jointRotationDirection>unset</jointRotationDirection>
|
||||||
|
<jointRelTotalCenterOfMass_x>-0.16104816625753005</jointRelTotalCenterOfMass_x>
|
||||||
|
<jointRelTotalCenterOfMass_y>0.008374721740337383</jointRelTotalCenterOfMass_y>
|
||||||
|
<jointRelTotalCenterOfMass_z>0.05039189494258471</jointRelTotalCenterOfMass_z>
|
||||||
|
</joint>
|
||||||
|
<joint>
|
||||||
|
<name>l_J5_v004__to__l_J6_Left_v004</name>
|
||||||
|
<jointSpecific>unset</jointSpecific>
|
||||||
|
<jointRotationDirection>unset</jointRotationDirection>
|
||||||
|
<jointRelTotalCenterOfMass_x>-0.19197472075495053</jointRelTotalCenterOfMass_x>
|
||||||
|
<jointRelTotalCenterOfMass_y>0.006490642974852389</jointRelTotalCenterOfMass_y>
|
||||||
|
<jointRelTotalCenterOfMass_z>-0.08327912378976009</jointRelTotalCenterOfMass_z>
|
||||||
|
</joint>
|
||||||
|
<joint>
|
||||||
|
<name>l_J6_Left_v004__to__l_J7_Left_v004</name>
|
||||||
|
<jointSpecific>unset</jointSpecific>
|
||||||
|
<jointRotationDirection>unset</jointRotationDirection>
|
||||||
|
<jointRelTotalCenterOfMass_x>-0.15753614188309684</jointRelTotalCenterOfMass_x>
|
||||||
|
<jointRelTotalCenterOfMass_y>0.004788009644679908</jointRelTotalCenterOfMass_y>
|
||||||
|
<jointRelTotalCenterOfMass_z>-0.20462341836144668</jointRelTotalCenterOfMass_z>
|
||||||
|
</joint>
|
||||||
|
<joint>
|
||||||
|
<name>l_J7_Left_v004__to__l_J8_v003</name>
|
||||||
|
<jointSpecific>unset</jointSpecific>
|
||||||
|
<jointRotationDirection>unset</jointRotationDirection>
|
||||||
|
<jointRelTotalCenterOfMass_x>-0.1930375916126833</jointRelTotalCenterOfMass_x>
|
||||||
|
<jointRelTotalCenterOfMass_y>0.02023467484404285</jointRelTotalCenterOfMass_y>
|
||||||
|
<jointRelTotalCenterOfMass_z>-0.2046334839704481</jointRelTotalCenterOfMass_z>
|
||||||
|
</joint>
|
||||||
|
<joint>
|
||||||
|
<name>l_J8_v003__to__l_right_jaw_v004</name>
|
||||||
|
<jointSpecific>unset</jointSpecific>
|
||||||
|
<jointRotationDirection>unset</jointRotationDirection>
|
||||||
|
<jointRelTotalCenterOfMass_x>-0.1167140742748525</jointRelTotalCenterOfMass_x>
|
||||||
|
<jointRelTotalCenterOfMass_y>0.004821133967191955</jointRelTotalCenterOfMass_y>
|
||||||
|
<jointRelTotalCenterOfMass_z>-0.3114360267081933</jointRelTotalCenterOfMass_z>
|
||||||
|
</joint>
|
||||||
|
<joint>
|
||||||
|
<name>l_J8_v003__to__l_left_jaw_v004</name>
|
||||||
|
<jointSpecific>unset</jointSpecific>
|
||||||
|
<jointRotationDirection>unset</jointRotationDirection>
|
||||||
|
<jointRelTotalCenterOfMass_x>-0.27170812973763375</jointRelTotalCenterOfMass_x>
|
||||||
|
<jointRelTotalCenterOfMass_y>0.004821803052998609</jointRelTotalCenterOfMass_y>
|
||||||
|
<jointRelTotalCenterOfMass_z>-0.31004632670935167</jointRelTotalCenterOfMass_z>
|
||||||
|
</joint>
|
||||||
|
</joints>
|
||||||
|
</robotMeta>
|
||||||
Loading…
Reference in New Issue
Block a user