Deleted rbs_simulation package

This commit is contained in:
Ilya Uraev 2025-01-23 00:06:54 +03:00 committed by Bill Finger
parent 38b991ef5a
commit c7315a02a4
75 changed files with 0 additions and 5972 deletions

View file

@ -1,33 +0,0 @@
cmake_minimum_required(VERSION 3.8)
project(rbs_simulation)
if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
add_compile_options(-Wall -Wextra -Wpedantic)
endif()
# find dependencies
find_package(ament_cmake REQUIRED)
# uncomment the following section in order to fill in
# further dependencies manually.
# find_package(<dependency> REQUIRED)
install(
DIRECTORY launch worlds mujoco_model
DESTINATION share/${PROJECT_NAME}
)
add_subdirectory(models)
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()
ament_package()

View file

@ -1,127 +0,0 @@
import os
from launch_ros.actions import Node
from launch import LaunchDescription
from launch.actions import DeclareLaunchArgument, IncludeLaunchDescription
from launch_ros.substitutions import FindPackageShare
from launch.substitutions import Command, FindExecutable, LaunchConfiguration, PathJoinSubstitution
from launch.conditions import IfCondition, UnlessCondition
from launch.launch_description_sources import PythonLaunchDescriptionSource
from ament_index_python.packages import get_package_share_directory
def generate_launch_description():
declared_arguments = []
declared_arguments.append(
DeclareLaunchArgument("sim_gazebo",
default_value="false",
description="Gazebo Simulation")
)
declared_arguments.append(
DeclareLaunchArgument("rbs_robot_type",
description="Type of robot by name",
choices=["rbs_arm" ,"ur3", "ur3e", "ur5", "ur5e", "ur10", "ur10e", "ur16e"],
default_value="rbs_arm",)
)
declared_arguments.append(
DeclareLaunchArgument("gazebo_gui",
default_value="true",
description="Launch gazebo_gui?")
)
declared_arguments.append(
DeclareLaunchArgument("debugger",
default_value="false",
description="launch Gazebo with debugger?")
)
declared_arguments.append(
DeclareLaunchArgument("vision_bridge",
default_value="false",
description="Create bridge for rgbd cameras")
)
sim_gazebo = LaunchConfiguration("sim_gazebo")
rbs_robot_type = LaunchConfiguration("rbs_robot_type")
gazebo_gui = LaunchConfiguration("gazebo_gui")
debugger = LaunchConfiguration("debugger")
vision_bridge = LaunchConfiguration("vision_bridge")
# FIXME: To args when we'll have different files
# TODO: Use global variable to find world file in robossembler_db
world_config_file = PathJoinSubstitution(
[FindPackageShare("rbs_simulation"), "worlds", "asm2.sdf"]
)
# Gazebo nodes
gazebo_server = IncludeLaunchDescription(
PythonLaunchDescriptionSource(
[os.path.join(get_package_share_directory('ros_gz_sim'),
'launch', 'gz_sim.launch.py')]),
launch_arguments={
'gz_args': [' -r ',world_config_file, " -s"],
"debugger": debugger,
}.items(),
condition=UnlessCondition(gazebo_gui))
gazebo = IncludeLaunchDescription(
PythonLaunchDescriptionSource(
[os.path.join(get_package_share_directory('ros_gz_sim'),
'launch', 'gz_sim.launch.py')]),
launch_arguments={
'gz_args': [' -r ',world_config_file],
"debugger": debugger,
}.items(),
condition=IfCondition(gazebo_gui))
# Spawn robot
gazebo_spawn_robot = Node(
package='ros_gz_sim',
executable='create',
arguments=[
'-name', rbs_robot_type,
'-x', '0.0',
'-z', '0.0',
'-y', '0.0',
'-topic', '/robot_description'],
output='screen',
condition=IfCondition(sim_gazebo))
# Bridge
rgbd_bridge_out = Node(
package='ros_gz_bridge',
executable='parameter_bridge',
arguments=[
'/outer_rgbd_camera/image@sensor_msgs/msg/Image@gz.msgs.Image',
'/outer_rgbd_camera/camera_info@sensor_msgs/msg/CameraInfo@gz.msgs.CameraInfo',
'/outer_rgbd_camera/depth_image@sensor_msgs/msg/Image@gz.msgs.Image',
'/outer_rgbd_camera/points@sensor_msgs/msg/PointCloud2@gz.msgs.PointCloudPacked'
],
output='screen',
condition=IfCondition(sim_gazebo) and IfCondition(vision_bridge))
rgbd_bridge_in = Node(
package='ros_gz_bridge',
executable='parameter_bridge',
arguments=[
'/inner_rgbd_camera/image@sensor_msgs/msg/Image@gz.msgs.Image',
'/inner_rgbd_camera/camera_info@sensor_msgs/msg/CameraInfo@gz.msgs.CameraInfo',
'/inner_rgbd_camera/depth_image@sensor_msgs/msg/Image@gz.msgs.Image',
'/inner_rgbd_camera/points@sensor_msgs/msg/PointCloud2@gz.msgs.PointCloudPacked'
],
output='screen',
condition=IfCondition(sim_gazebo) and IfCondition(vision_bridge))
clock_bridge = Node(
package='ros_gz_bridge',
executable='parameter_bridge',
arguments=['/clock@rosgraph_msgs/msg/Clock[ignition.msgs.Clock'],
output='screen',
condition=IfCondition(sim_gazebo))
nodes_to_start = [
gazebo,
gazebo_server,
gazebo_spawn_robot,
rgbd_bridge_out,
rgbd_bridge_in,
clock_bridge,
]
return LaunchDescription(declared_arguments + nodes_to_start)

View file

@ -1,93 +0,0 @@
import os
from launch_ros.actions import Node
from launch import LaunchDescription
from launch.actions import DeclareLaunchArgument, IncludeLaunchDescription
from launch_ros.substitutions import FindPackageShare
from launch.substitutions import Command, FindExecutable, LaunchConfiguration, PathJoinSubstitution
from launch.conditions import IfCondition, UnlessCondition
from launch.launch_description_sources import PythonLaunchDescriptionSource
from ament_index_python.packages import get_package_share_directory
def generate_launch_description():
declared_arguments = []
declared_arguments.append(
DeclareLaunchArgument("sim_gazebo",
default_value="false",
description="Gazebo Simulation")
)
declared_arguments.append(
DeclareLaunchArgument("gazebo_gui",
default_value="false",
description="Launch gazebo_gui?")
)
declared_arguments.append(
DeclareLaunchArgument("debugger",
default_value="false",
description="launch Gazebo with debugger?")
)
declared_arguments.append(
DeclareLaunchArgument("rgbd_camera",
default_value="true",
description="Camera are used?")
)
sim_gazebo = LaunchConfiguration("sim_gazebo")
gazebo_gui = LaunchConfiguration("gazebo_gui")
debugger = LaunchConfiguration("debugger")
rgbd_camera = LaunchConfiguration("rgbd_camera")
gazebo_world_filename = LaunchConfiguration("gazebo_world_filename")
world_config_file = PathJoinSubstitution(
[FindPackageShare("rbs_simulation"), "worlds", gazebo_world_filename]
)
gazebo_server = IncludeLaunchDescription(
PythonLaunchDescriptionSource(
[os.path.join(get_package_share_directory('ros_gz_sim'),
'launch', 'gz_sim.launch.py')]),
launch_arguments={
'gz_args': [' -s ', '-r ', world_config_file],
"debugger": debugger,
}.items(),
condition=UnlessCondition(gazebo_gui))
gazebo = IncludeLaunchDescription(
PythonLaunchDescriptionSource(
[os.path.join(get_package_share_directory('ros_gz_sim'),
'launch', 'gz_sim.launch.py')]),
launch_arguments={
'gz_args': [' -r ', world_config_file],
"debugger": debugger,
}.items(),
condition=IfCondition(gazebo_gui))
rgbd_sensor_bridge = Node(
package="ros_gz_bridge",
executable="parameter_bridge",
arguments=[
'/rgbd_camera/image@sensor_msgs/msg/Image@gz.msgs.Image',
'/rgbd_camera/camera_info@sensor_msgs/msg/CameraInfo@gz.msgs.CameraInfo',
'/rgbd_camera/depth_image@sensor_msgs/msg/Image@gz.msgs.Image',
'/rgbd_camera/points@sensor_msgs/msg/PointCloud2@gz.msgs.PointCloudPacked'
],
output='screen',
condition=IfCondition(rgbd_camera)
)
clock_bridge = Node(
package='ros_gz_bridge',
executable='parameter_bridge',
arguments=[
'/clock@rosgraph_msgs/msg/Clock[ignition.msgs.Clock'
],
output='screen',
condition=IfCondition(sim_gazebo))
nodes_to_start = [
gazebo,
gazebo_server,
clock_bridge,
rgbd_sensor_bridge,
]
return LaunchDescription(declared_arguments + nodes_to_start)

View file

@ -1,76 +0,0 @@
from launch_ros.actions import Node
from launch import LaunchDescription
from launch.actions import DeclareLaunchArgument, OpaqueFunction
from launch.substitutions import LaunchConfiguration
from launch.conditions import IfCondition
def launch_setup(context, *args, **kwargs):
sim_gazebo = LaunchConfiguration("sim_gazebo")
rbs_robot_name= LaunchConfiguration("rbs_robot_name")
namespace = LaunchConfiguration("namespace")
x_pos = LaunchConfiguration("x_pos")
y_pos = LaunchConfiguration("y_pos")
z_pos = LaunchConfiguration("z_pos")
# Convert LaunchConfiguration to string values
namespace = namespace.perform(context)
# Spawn robot
# TODO: add full pose support include rotation
gazebo_spawn_robot = Node(
package='ros_gz_sim',
executable='create',
arguments=[
'-name', rbs_robot_name,
'-x', x_pos.perform(context),
'-y', y_pos.perform(context),
'-z', z_pos.perform(context),
'-topic', namespace + '/robot_description'],
output='screen',
condition=IfCondition(sim_gazebo))
nodes_to_start = [
gazebo_spawn_robot,
]
return nodes_to_start
def generate_launch_description():
declared_arguments = []
declared_arguments.append(
DeclareLaunchArgument("sim_gazebo",
default_value="false",
description="Gazebo Simulation")
)
declared_arguments.append(
DeclareLaunchArgument("rbs_robot_type",
description="Type of robot by name",
choices=["rbs_arm" ,"ur3", "ur3e", "ur5", "ur5e", "ur10", "ur10e", "ur16e"],
default_value="rbs_arm",)
)
declared_arguments.append(
DeclareLaunchArgument("gazebo_gui",
default_value="true",
description="Launch gazebo_gui?")
)
declared_arguments.append(
DeclareLaunchArgument("namespace",
default_value="",
description="namespace for spawn a robot")
)
declared_arguments.append(
DeclareLaunchArgument("x_pos",
default_value="0.0",
description="robot's position along X")
)
declared_arguments.append(
DeclareLaunchArgument("y_pos",
default_value="0.0",
description="robot's position along Y")
)
declared_arguments.append(
DeclareLaunchArgument("z_pos",
default_value="0.0",
description="robot's position along Z")
)
return LaunchDescription(declared_arguments + [OpaqueFunction(function=launch_setup)])

View file

@ -1,21 +0,0 @@
macro(list_subdirectories retval curdir return_relative)
file(GLOB sub-dir RELATIVE ${curdir} *)
set(list_of_dirs "")
foreach(dir ${sub-dir})
if(IS_DIRECTORY ${curdir}/${dir})
if (${return_relative})
set(list_of_dirs ${list_of_dirs} ${dir})
else()
set(list_of_dirs ${list_of_dirs} ${curdir}/${dir})
endif()
endif()
endforeach()
set(${retval} ${list_of_dirs})
endmacro()
list_subdirectories(SUBDIR ${CMAKE_CURRENT_LIST_DIR} TRUE)
install(
DIRECTORY ${SUBDIR}
DESTINATION share/${PROJECT_NAME}
)

View file

@ -1,40 +0,0 @@
{
"label": "box1",
"type": "component",
"include": [],
"features": {
"grasp-poses": {
"Gripper_for_Part__Feature057": {
"placement": {
"position": {
"x": 0.0,
"y": 0.0,
"z": 0.149
},
"orientation": {
"x": 0.0,
"y": 1.0,
"z": 0.0,
"w": 0.0
}
},
"distance": 0.015
}
},
"placements": {
"placement": {
"position": {
"x": 0.0,
"y": 0.0,
"z": 0.0
},
"orientation": {
"x": 0.0,
"y": 0.0,
"z": 0.0,
"w": 0.0
}
}
}
}
}

View file

@ -1,14 +0,0 @@
<?xml version="1.0"?>
<model>
<name>box1</name>
<sdf version="1.0">model.sdf</sdf>
<author>
<name>Splinter1984</name>
<email>rom.andrianov1984@gmail.com</email>
</author>
<description>
A box1.
</description>
</model>

View file

@ -1,58 +0,0 @@
<?xml version="1.0" ?>
<sdf version="1.4">
<model name="box1">
<pose>0 0 0.015 0 0 0</pose>
<link name="link">
<inertial>
<inertia>
<ixx>0.00004167</ixx>
<ixy>0.0</ixy>
<ixz>0.0</ixz>
<iyy>0.00004167</iyy>
<iyz>0.0</iyz>
<izz>0.00004167</izz>
</inertia>
<mass>0.1</mass>
</inertial>
<!-- <gravity>0</gravity> -->
<collision name="collision">
<geometry>
<box>
<size>0.05 0.05 0.05</size>
</box>
</geometry>
<surface>
<contact>
<ode/>
</contact>
<bounce/>
<friction>
<torsional>
<ode>
<slip>
0.3
</slip>
</ode>
</torsional>
<ode>
<mu>0.2</mu>
<mu2>0.2</mu2>
</ode>
</friction>
</surface>
</collision>
<visual name="visual">
<geometry>
<box>
<size>0.05 0.05 0.05</size>
</box>
</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>
</sdf>

View file

@ -1,40 +0,0 @@
{
"label": "box12",
"type": "assembly",
"include": ["box1", "box2"],
"features": {
"grasp-poses": {
"Gripper_for_Part__Feature059": {
"placement": {
"position": {
"x": 0.0,
"y": 0.0,
"z": 0.129
},
"orientation": {
"x": 0.0,
"y": 1.0,
"z": 0.0,
"w": 0.0
}
},
"distance": 0.015
}
},
"placements": {
"placement": {
"position": {
"x": 0.0,
"y": 0.0,
"z": 0.0
},
"orientation": {
"x": 0.0,
"y": 0.0,
"z": 0.0,
"w": 0.0
}
}
}
}
}

View file

@ -1,14 +0,0 @@
<?xml version="1.0"?>
<model>
<name>box12</name>
<sdf version="1.0">model.sdf</sdf>
<author>
<name>Splinter1984</name>
<email>rom.andrianov1984@gmail.com</email>
</author>
<description>
A box12.
</description>
</model>

View file

@ -1,19 +0,0 @@
<?xml version="1.0" ?>
<sdf version="1.4">
<model name="box12">
<pose>0 0 0.015 0 0 0</pose>
<link name="box1">
<pose>0 0 0 0 0 0</pose>
<gravity>0</gravity>
</link>
<link name="box2">
<pose>0 0 0.03 0 0 0</pose>
<gravity>0</gravity>
</link>
<joint name="joint" type="fixed">
<parent>box1</parent>
<child>box2</child>
<pose>0.0 0.0 0.06 0.0 0.0 0.0</pose>
</joint>
</model>
</sdf>

View file

@ -1,40 +0,0 @@
{
"label": "box2",
"type": "component",
"include": [],
"features": {
"grasp-poses": {
"Gripper_for_Part__Feature058": {
"placement": {
"position": {
"x": 0.0,
"y": 0.0,
"z": 0.129
},
"orientation": {
"x": 0.0,
"y": 1.0,
"z": 0.0,
"w": 0.0
}
},
"distance": 0.015
}
},
"placements": {
"placement": {
"position": {
"x": 0.0,
"y": 0.0,
"z": 0.0
},
"orientation": {
"x": 0.0,
"y": 0.0,
"z": 0.0,
"w": 0.0
}
}
}
}
}

View file

@ -1,14 +0,0 @@
<?xml version="1.0"?>
<model>
<name>box2</name>
<sdf version="1.0">model.sdf</sdf>
<author>
<name>Splinter1984</name>
<email>rom.andrianov1984@gmail.com</email>
</author>
<description>
A box2.
</description>
</model>

View file

@ -1,29 +0,0 @@
<?xml version="1.0" ?>
<sdf version="1.4">
<model name="box2">
<pose>0 0 0.015 0 0 0</pose>
<link name="link">
<gravity>0</gravity>
<collision name="collision">
<geometry>
<box>
<size>0.03 0.03 0.03</size>
</box>
</geometry>
</collision>
<visual name="visual">
<geometry>
<box>
<size>0.03 0.03 0.03</size>
</box>
</geometry>
<material>
<ambient>0.1 0.75 0 5</ambient>
<diffuse>0.9 0.7 0 1</diffuse>
<specular>0.4 0.4 0.4 64</specular>
<emissive>0.2 0 0.2 2</emissive>
</material>
</visual>
</link>
</model>
</sdf>

File diff suppressed because one or more lines are too long

View file

@ -1,14 +0,0 @@
<?xml version="1.0"?>
<model>
<name>fork</name>
<sdf version="1.9">model.sdf</sdf>
<author>
<name>bill-finger</name>
<email>ur.narmak@gmail.com</email>
</author>
<description>
The fork link of rbs_arm
</description>
</model>

View file

@ -1,58 +0,0 @@
<?xml version="1.0" ?>
<sdf version="1.9">
<model name="fork">
<pose>0 0 0.015 0 0 0</pose>
<link name="link">
<inertial>
<inertia>
<ixx>0.00004167</ixx>
<ixy>0.0</ixy>
<ixz>0.0</ixz>
<iyy>0.00004167</iyy>
<iyz>0.0</iyz>
<izz>0.00004167</izz>
</inertia>
<mass>0.1</mass>
</inertial>
<!-- <gravity>0</gravity> -->
<collision name="collision">
<geometry>
<mesh>
<uri>meshes/collision/fork.stl</uri>
</mesh>
</geometry>
<surface>
<contact>
<ode/>
</contact>
<bounce/>
<friction>
<torsional>
<ode>
<slip>
0.3
</slip>
</ode>
</torsional>
<ode>
<mu>0.2</mu>
<mu2>0.2</mu2>
</ode>
</friction>
</surface>
</collision>
<visual name="visual">
<geometry>
<mesh>
<uri>meshes/visual/fork.dae</uri>
</mesh>
</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>
</sdf>

View file

@ -1,16 +0,0 @@
<?xml version="1.0"?>
<model>
<name>rack</name>
<version>1.0</version>
<sdf version="1.6">model.sdf</sdf>
<author>
<name>brothermechanic</name>
<email>brothermechanic@gmail.com</email>
</author>
<description>
rack
</description>
</model>

View file

@ -1,25 +0,0 @@
<?xml version="1.0" ?>
<sdf version="1.6">
<model name="rack">
<pose>0 0 0 0 0 0</pose>
<static>true</static>
<link name="body">
<visual name="visual">
<geometry>
<mesh>
<scale>1.0 1.0 1.0</scale>
<uri>model://rack/model/rack.dae</uri>
</mesh>
</geometry>
</visual>
<collision name="collision">
<geometry>
<mesh>
<scale>1.0 1.0 1.0</scale>
<uri>model://rack/model/rack.stl</uri>
</mesh>
</geometry>
</collision>
</link>
</model>
</sdf>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 MiB

File diff suppressed because one or more lines are too long

View file

@ -1,35 +0,0 @@
<?xml version="1.0"?>
<robot xmlns:xacro="http://www.ros.org/wiki/xacro" name="rack">
<xacro:macro name="rack" params="*origin parent">
<link name="rack_body">
<static>true</static>
<inertial>
<origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0"/>
<mass value="0.0"/>
<inertia ixx="0.0" ixy="0.0" ixz="0.0" iyy="0.0" iyz="0.0" izz="0.0"/>
</inertial>
<visual>
<origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0"/>
<geometry>
<mesh filename="package://rbs_simulation/rack/model/rack.dae" scale="0.35 0.35 0.35"/>
</geometry>
<material name="asd">
<color rgba="1.0 0.0 0.0 1.0"/>
<texture filename="package://rbs_simulation/rack/model/Metal.jpg"/>
</material>
</visual>
<collision>
<origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0"/>
<geometry>
<mesh filename="package://rbs_simulation/rack/model/rack.stl" scale="0.35 0.35 0.35"/>
</geometry>
</collision>
</link>
<joint name="rack_base_joint" type="fixed">
<parent link="${parent}" />
<child link="rack_body" />
<xacro:insert_block name="origin" />
</joint>
</xacro:macro>
</robot>

View file

@ -1,16 +0,0 @@
<?xml version="1.0"?>
<model>
<name>table</name>
<version>1.0</version>
<sdf version="1.6">table.sdf</sdf>
<author>
<name>brothermechanic</name>
<email>brothermechanic@gmail.com</email>
</author>
<description>
table
</description>
</model>

View file

@ -1,25 +0,0 @@
<?xml version="1.0" ?>
<sdf version="1.6">
<model name="table">
<pose>0 0 0 0 0 0</pose>
<static>true</static>
<link name="body">
<visual name="visual">
<geometry>
<mesh>
<scale>1.0 1.0 1.0</scale>
<uri>model://table/model/table.dae</uri>
</mesh>
</geometry>
</visual>
<collision name="collision">
<geometry>
<mesh>
<scale>1.0 1.0 1.0</scale>
<uri>model://table/model/table.stl</uri>
</mesh>
</geometry>
</collision>
</link>
</model>
</sdf>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 MiB

File diff suppressed because one or more lines are too long

Binary file not shown.

Before

Width:  |  Height:  |  Size: 74 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 599 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 878 KiB

View file

@ -1,37 +0,0 @@
<?xml version="1.0"?>
<robot xmlns:xacro="http://www.ros.org/wiki/xacro" name="table">
<xacro:macro name="table" params="*origin parent">
<link name="table_body">
<static>true</static>
<inertial>
<origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0"/>
<mass value="0.0"/>
<inertia ixx="1.0" ixy="0.0" ixz="0.0" iyy="1.0" iyz="0.0" izz="1.0"/>
</inertial>
<visual>
<origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0"/>
<geometry>
<!-- <mesh filename="package://rbs_simulation/table/model/table.dae" scale="1 1 1"/> -->
<box size="0.8 0.8 0.4"/>
</geometry>
<material name="asd">
<color rgba="1.0 1.0 0.0 1.0"/>
<!-- <texture filename="package://rbs_simulation/table/model/Metal.jpg"/> -->
</material>
</visual>
<collision>
<origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0"/>
<geometry>
<!-- <mesh filename="package://rbs_simulation/table/model/table.stl" scale="1 1 1"/> -->
<box size="0.8 0.8 0.4"/>
</geometry>
</collision>
</link>
<joint name="table_base_joint" type="fixed">
<parent link="${parent}" />
<child link="table_body" />
<xacro:insert_block name="origin" />
</joint>
</xacro:macro>
</robot>

View file

@ -1,517 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- =================================================================================== -->
<!-- | This document was autogenerated by xacro from /home/bill-finger/rasms_ws/install/ur_description/share/ur_description/urdf/ur.urdf.xacro | -->
<!-- | EDITING THIS FILE BY HAND IS NOT RECOMMENDED | -->
<!-- =================================================================================== -->
<robot name="ur">
<!--
Base UR robot series xacro macro.
NOTE this is NOT a URDF. It cannot directly be loaded by consumers
expecting a flattened '.urdf' file. See the top-level '.xacro' for that
(but note that .xacro must still be processed by the xacro command).
This file models the base kinematic chain of a UR robot, which then gets
parameterised by various configuration files to convert it into a UR3(e),
UR5(e), UR10(e) or UR16e.
NOTE the default kinematic parameters (i.e., link lengths, frame locations,
offsets, etc) do not correspond to any particular robot. They are defaults
only. There WILL be non-zero offsets between the Forward Kinematics results
in TF (i.e., robot_state_publisher) and the values reported by the Teach
Pendant.
For accurate (and robot-specific) transforms, the 'kinematics_parameters_file'
parameter MUST point to a .yaml file containing the appropriate values for
the targeted robot.
If using the UniversalRobots/Universal_Robots_ROS_Driver, follow the steps
described in the readme of that repository to extract the kinematic
calibration from the controller and generate the required .yaml file.
Main author of the migration to yaml configs Ludovic Delval.
Contributors to previous versions (in no particular order)
- Denis Stogl
- Lovro Ivanov
- Felix Messmer
- Kelsey Hawkins
- Wim Meeussen
- Shaun Edwards
- Nadia Hammoudeh Garcia
- Dave Hershberger
- G. vd. Hoorn
- Philip Long
- Dave Coleman
- Miguel Prada
- Mathias Luedtke
- Marcel Schnirring
- Felix von Drigalski
- Felix Exner
- Jimmy Da Silva
- Ajit Krisshna N L
- Muhammad Asif Rana
-->
<!--
NOTE the macro defined in this file is NOT part of the public API of this
package. Users CANNOT rely on this file being available, or stored in
this location. Nor can they rely on the existence of the macro.
-->
<mujoco>
<compiler
meshdir="meshes"
balanceinertia="true"
discardvisual="false" />
</mujoco>
<link name="box1_place"/>
<joint name="box1_place_joint" type="fixed">
<parent link="world"/>
<child link="box1_place"/>
<origin rpy="-3.1415927 0.0 0.0" xyz="-0.45 -0.055 0.46"/>
</joint>
<link name="box2_place"/>
<joint name="box2_place_joint" type="fixed">
<parent link="world"/>
<child link="box2_place"/>
<origin rpy="-3.1415927 0.0 0.0" xyz="-0.45 0.0 0.46"/>
</joint>
<link name="box3_place"/>
<joint name="box3_place_joint" type="fixed">
<parent link="world"/>
<child link="box3_place"/>
<origin rpy="-3.1415927 0.0 0.0" xyz="-0.45 0.055 0.46"/>
</joint>
<link name="box4_place"/>
<joint name="box4_place_joint" type="fixed">
<parent link="world"/>
<child link="box4_place"/>
<origin rpy="-3.1415927 0.0 0.0" xyz="-0.45 0.0275 0.49"/>
</joint>
<link name="box5_place"/>
<joint name="box5_place_joint" type="fixed">
<parent link="world"/>
<child link="box5_place"/>
<origin rpy="-3.1415927 0.0 0.0" xyz="-0.45 -0.0275 0.49"/>
</joint>
<link name="box6_place"/>
<joint name="box6_place_joint" type="fixed">
<parent link="world"/>
<child link="box6_place"/>
<origin rpy="-3.1415927 0.0 0.0" xyz="-0.45 0 0.56"/>
</joint>
<!-- create link fixed to the "world" -->
<link name="world"/>
<ros2_control name="ur" type="system">
<hardware>
<plugin>ign_ros2_control/IgnitionSystem</plugin>
</hardware>
<joint name="shoulder_pan_joint">
<command_interface name="position">
<param name="min">{-2*pi}</param>
<param name="max">{2*pi}</param>
</command_interface>
<command_interface name="velocity">
<param name="min">-3.15</param>
<param name="max">3.15</param>
</command_interface>
<state_interface name="position">
<!-- initial position for the FakeSystem and simulation -->
<param name="initial_value">0.0</param>
</state_interface>
<state_interface name="velocity"/>
<state_interface name="effort"/>
</joint>
<joint name="shoulder_lift_joint">
<command_interface name="position">
<param name="min">{-2*pi}</param>
<param name="max">{2*pi}</param>
</command_interface>
<command_interface name="velocity">
<param name="min">-3.15</param>
<param name="max">3.15</param>
</command_interface>
<state_interface name="position">
<!-- initial position for the FakeSystem and simulation -->
<param name="initial_value">0.0</param>
</state_interface>
<state_interface name="velocity"/>
<state_interface name="effort"/>
</joint>
<joint name="elbow_joint">
<command_interface name="position">
<param name="min">{-pi}</param>
<param name="max">{pi}</param>
</command_interface>
<command_interface name="velocity">
<param name="min">-3.15</param>
<param name="max">3.15</param>
</command_interface>
<state_interface name="position">
<!-- initial position for the FakeSystem and simulation -->
<param name="initial_value">0.0</param>
</state_interface>
<state_interface name="velocity"/>
<state_interface name="effort"/>
</joint>
<joint name="wrist_1_joint">
<command_interface name="position">
<param name="min">{-2*pi}</param>
<param name="max">{2*pi}</param>
</command_interface>
<command_interface name="velocity">
<param name="min">-3.2</param>
<param name="max">3.2</param>
</command_interface>
<state_interface name="position">
<!-- initial position for the FakeSystem and simulation -->
<param name="initial_value">0.0</param>
</state_interface>
<state_interface name="velocity"/>
<state_interface name="effort"/>
</joint>
<joint name="wrist_2_joint">
<command_interface name="position">
<param name="min">{-2*pi}</param>
<param name="max">{2*pi}</param>
</command_interface>
<command_interface name="velocity">
<param name="min">-3.2</param>
<param name="max">3.2</param>
</command_interface>
<state_interface name="position">
<!-- initial position for the FakeSystem and simulation -->
<param name="initial_value">0.0</param>
</state_interface>
<state_interface name="velocity"/>
<state_interface name="effort"/>
</joint>
<joint name="wrist_3_joint">
<command_interface name="position">
<param name="min">{-2*pi}</param>
<param name="max">{2*pi}</param>
</command_interface>
<command_interface name="velocity">
<param name="min">-3.2</param>
<param name="max">3.2</param>
</command_interface>
<state_interface name="position">
<!-- initial position for the FakeSystem and simulation -->
<param name="initial_value">0.0</param>
</state_interface>
<state_interface name="velocity"/>
<state_interface name="effort"/>
</joint>
</ros2_control>
<!-- Add URDF transmission elements (for ros_control) -->
<!--<xacro:ur_arm_transmission prefix="${prefix}" hw_interface="${transmission_hw_interface}" />-->
<!-- Placeholder for ros2_control transmission which don't yet exist -->
<!-- links - main serial chain -->
<link name="base_link"/>
<link name="base_link_inertia">
<visual>
<origin rpy="0 0 3.141592653589793" xyz="0 0 0"/>
<geometry>
<mesh filename="file:///home/bill-finger/rasms_ws/install/ur_description/share/ur_description/meshes/ur5e/visual/base.dae"/>
</geometry>
</visual>
<collision>
<origin rpy="0 0 3.141592653589793" xyz="0 0 0"/>
<geometry>
<mesh filename="file:///home/bill-finger/rasms_ws/install/ur_description/share/ur_description/meshes/ur5e/collision/base.stl"/>
</geometry>
</collision>
<inertial>
<mass value="4.0"/>
<origin rpy="0 0 0" xyz="0 0 0"/>
<inertia ixx="0.00443333156" ixy="0.0" ixz="0.0" iyy="0.00443333156" iyz="0.0" izz="0.0072"/>
</inertial>
</link>
<link name="shoulder_link">
<visual>
<origin rpy="0 0 3.141592653589793" xyz="0 0 0"/>
<geometry>
<mesh filename="file:///home/bill-finger/rasms_ws/install/ur_description/share/ur_description/meshes/ur5e/visual/shoulder.dae"/>
</geometry>
</visual>
<collision>
<origin rpy="0 0 3.141592653589793" xyz="0 0 0"/>
<geometry>
<mesh filename="file:///home/bill-finger/rasms_ws/install/ur_description/share/ur_description/meshes/ur5e/collision/shoulder.stl"/>
</geometry>
</collision>
<inertial>
<mass value="3.7"/>
<origin rpy="0 0 0" xyz="0 0 0"/>
<inertia ixx="0.010267495893" ixy="0.0" ixz="0.0" iyy="0.010267495893" iyz="0.0" izz="0.00666"/>
</inertial>
</link>
<link name="upper_arm_link">
<visual>
<origin rpy="1.5707963267948966 0 -1.5707963267948966" xyz="0 0 0.138"/>
<geometry>
<mesh filename="file:///home/bill-finger/rasms_ws/install/ur_description/share/ur_description/meshes/ur5e/visual/upperarm.dae"/>
</geometry>
</visual>
<collision>
<origin rpy="1.5707963267948966 0 -1.5707963267948966" xyz="0 0 0.138"/>
<geometry>
<mesh filename="file:///home/bill-finger/rasms_ws/install/ur_description/share/ur_description/meshes/ur5e/collision/upperarm.stl"/>
</geometry>
</collision>
<inertial>
<mass value="8.393"/>
<origin rpy="0 1.5707963267948966 0" xyz="-0.2125 0.0 0.138"/>
<inertia ixx="0.1338857818623325" ixy="0.0" ixz="0.0" iyy="0.1338857818623325" iyz="0.0" izz="0.0151074"/>
</inertial>
</link>
<link name="forearm_link">
<visual>
<origin rpy="1.5707963267948966 0 -1.5707963267948966" xyz="0 0 0.007"/>
<geometry>
<mesh filename="file:///home/bill-finger/rasms_ws/install/ur_description/share/ur_description/meshes/ur5e/visual/forearm.dae"/>
</geometry>
</visual>
<collision>
<origin rpy="1.5707963267948966 0 -1.5707963267948966" xyz="0 0 0.007"/>
<geometry>
<mesh filename="file:///home/bill-finger/rasms_ws/install/ur_description/share/ur_description/meshes/ur5e/collision/forearm.stl"/>
</geometry>
</collision>
<inertial>
<mass value="2.275"/>
<origin rpy="0 1.5707963267948966 0" xyz="-0.1961 0.0 0.007"/>
<inertia ixx="0.031209355099586295" ixy="0.0" ixz="0.0" iyy="0.031209355099586295" iyz="0.0" izz="0.004095"/>
</inertial>
</link>
<link name="wrist_1_link">
<visual>
<origin rpy="1.5707963267948966 0 0" xyz="0 0 -0.127"/>
<geometry>
<mesh filename="file:///home/bill-finger/rasms_ws/install/ur_description/share/ur_description/meshes/ur5e/visual/wrist1.dae"/>
</geometry>
</visual>
<collision>
<origin rpy="1.5707963267948966 0 0" xyz="0 0 -0.127"/>
<geometry>
<mesh filename="file:///home/bill-finger/rasms_ws/install/ur_description/share/ur_description/meshes/ur5e/collision/wrist1.stl"/>
</geometry>
</collision>
<inertial>
<mass value="1.219"/>
<origin rpy="0 0 0" xyz="0 0 0"/>
<inertia ixx="0.0025598989760400002" ixy="0.0" ixz="0.0" iyy="0.0025598989760400002" iyz="0.0" izz="0.0021942"/>
</inertial>
</link>
<link name="wrist_2_link">
<visual>
<origin rpy="0 0 0" xyz="0 0 -0.0997"/>
<geometry>
<mesh filename="file:///home/bill-finger/rasms_ws/install/ur_description/share/ur_description/meshes/ur5e/visual/wrist2.dae"/>
</geometry>
</visual>
<collision>
<origin rpy="0 0 0" xyz="0 0 -0.0997"/>
<geometry>
<mesh filename="file:///home/bill-finger/rasms_ws/install/ur_description/share/ur_description/meshes/ur5e/collision/wrist2.stl"/>
</geometry>
</collision>
<inertial>
<mass value="1.219"/>
<origin rpy="0 0 0" xyz="0 0 0"/>
<inertia ixx="0.0025598989760400002" ixy="0.0" ixz="0.0" iyy="0.0025598989760400002" iyz="0.0" izz="0.0021942"/>
</inertial>
</link>
<link name="wrist_3_link">
<visual>
<origin rpy="1.5707963267948966 0 0" xyz="0 0 -0.0989"/>
<geometry>
<mesh filename="file:///home/bill-finger/rasms_ws/install/ur_description/share/ur_description/meshes/ur5e/visual/wrist3.dae"/>
</geometry>
</visual>
<collision>
<origin rpy="1.5707963267948966 0 0" xyz="0 0 -0.0989"/>
<geometry>
<mesh filename="file:///home/bill-finger/rasms_ws/install/ur_description/share/ur_description/meshes/ur5e/collision/wrist3.stl"/>
</geometry>
</collision>
<inertial>
<mass value="0.1879"/>
<origin rpy="0 0 0" xyz="0.0 0.0 -0.0229"/>
<inertia ixx="9.890410052167731e-05" ixy="0.0" ixz="0.0" iyy="9.890410052167731e-05" iyz="0.0" izz="0.0001321171875"/>
</inertial>
</link>
<!-- base_joint fixes base_link to the environment -->
<joint name="base_joint" type="fixed">
<origin rpy="0 0 0" xyz="0 0 0"/>
<parent link="world"/>
<child link="base_link"/>
</joint>
<!-- joints - main serial chain -->
<joint name="base_link-base_link_inertia" type="fixed">
<parent link="base_link"/>
<child link="base_link_inertia"/>
<!-- 'base_link' is REP-103 aligned (so X+ forward), while the internal
frames of the robot/controller have X+ pointing backwards.
Use the joint between 'base_link' and 'base_link_inertia' (a dummy
link/frame) to introduce the necessary rotation over Z (of pi rad).
-->
<origin rpy="0 0 3.141592653589793" xyz="0 0 0"/>
</joint>
<joint name="shoulder_pan_joint" type="revolute">
<parent link="base_link_inertia"/>
<child link="shoulder_link"/>
<origin rpy="0 0 0" xyz="0 0 0.1625"/>
<axis xyz="0 0 1"/>
<limit effort="150.0" lower="-6.283185307179586" upper="6.283185307179586" velocity="3.141592653589793"/>
<safety_controller k_position="20" k_velocity="0.0" soft_lower_limit="-6.133185307179586" soft_upper_limit="6.133185307179586"/>
<dynamics damping="0" friction="0"/>
</joint>
<joint name="shoulder_lift_joint" type="revolute">
<parent link="shoulder_link"/>
<child link="upper_arm_link"/>
<origin rpy="1.570796327 1.570796327 0" xyz="0 0 0"/>
<axis xyz="0 0 1"/>
<limit effort="150.0" lower="-1.5707963267948966" upper="1.5707963267948966" velocity="3.141592653589793"/>
<safety_controller k_position="20" k_velocity="0.0" soft_lower_limit="-1.4207963267948966" soft_upper_limit="1.4207963267948966"/>
<dynamics damping="0" friction="0"/>
</joint>
<joint name="elbow_joint" type="revolute">
<parent link="upper_arm_link"/>
<child link="forearm_link"/>
<origin rpy="0 0 0" xyz="-0.425 0 0"/>
<axis xyz="0 0 1"/>
<limit effort="150.0" lower="-2.7576202181510405" upper="2.7576202181510405" velocity="3.141592653589793"/>
<safety_controller k_position="20" k_velocity="0.0" soft_lower_limit="-2.6076202181510406" soft_upper_limit="2.6076202181510406"/>
<dynamics damping="0" friction="0"/>
</joint>
<joint name="wrist_1_joint" type="revolute">
<parent link="forearm_link"/>
<child link="wrist_1_link"/>
<origin rpy="0 0 -1.570796327" xyz="-0.3922 0 0.1333"/>
<axis xyz="0 0 1"/>
<limit effort="28.0" lower="-2.2689280275926285" upper="2.2689280275926285" velocity="3.141592653589793"/>
<safety_controller k_position="20" k_velocity="0.0" soft_lower_limit="-2.1189280275926285" soft_upper_limit="2.1189280275926285"/>
<dynamics damping="0" friction="0"/>
</joint>
<joint name="wrist_2_joint" type="revolute">
<parent link="wrist_1_link"/>
<child link="wrist_2_link"/>
<origin rpy="1.570796327 0 0" xyz="0 -0.0997 -2.044881182297852e-11"/>
<axis xyz="0 0 1"/>
<limit effort="28.0" lower="-2.530727415391778" upper="2.530727415391778" velocity="3.141592653589793"/>
<safety_controller k_position="20" k_velocity="0.0" soft_lower_limit="-2.380727415391778" soft_upper_limit="2.380727415391778"/>
<dynamics damping="0" friction="0"/>
</joint>
<joint name="wrist_3_joint" type="revolute">
<parent link="wrist_2_link"/>
<child link="wrist_3_link"/>
<origin rpy="1.570796326589793 3.141592653589793 3.141592653589793" xyz="0 0.0996 -2.042830148012698e-11"/>
<axis xyz="0 0 1"/>
<limit effort="28.0" lower="-6.283185307179586" upper="6.283185307179586" velocity="3.141592653589793"/>
<safety_controller k_position="20" k_velocity="0.0" soft_lower_limit="-6.133185307179586" soft_upper_limit="6.133185307179586"/>
<dynamics damping="0" friction="0"/>
</joint>
<link name="ft_frame"/>
<joint name="wrist_3_link-ft_frame" type="fixed">
<parent link="wrist_3_link"/>
<child link="ft_frame"/>
<origin rpy="3.141592653589793 0 0" xyz="0 0 0"/>
</joint>
<!-- ROS-Industrial 'base' frame - base_link to UR 'Base' Coordinates transform -->
<link name="base"/>
<joint name="base_link-base_fixed_joint" type="fixed">
<!-- Note the rotation over Z of pi radians - as base_link is REP-103
aligned (i.e., has X+ forward, Y+ left and Z+ up), this is needed
to correctly align 'base' with the 'Base' coordinate system of
the UR controller.
-->
<origin rpy="0 0 3.141592653589793" xyz="0 0 0"/>
<parent link="base_link"/>
<child link="base"/>
</joint>
<!-- ROS-Industrial 'flange' frame - attachment point for EEF models -->
<link name="flange"/>
<joint name="wrist_3-flange" type="fixed">
<parent link="wrist_3_link"/>
<child link="flange"/>
<origin rpy="0 -1.5707963267948966 -1.5707963267948966" xyz="0 0 0"/>
</joint>
<!-- ROS-Industrial 'tool0' frame - all-zeros tool frame -->
<link name="tool0"/>
<joint name="flange-tool0" type="fixed">
<!-- default toolframe - X+ left, Y+ up, Z+ front -->
<origin rpy="1.5707963267948966 0 1.5707963267948966" xyz="0 0 0"/>
<parent link="flange"/>
<child link="tool0"/>
</joint>
<!-- <xacro:plane parent="world">
<origin xyz="0 0 -0.001" rpy="0 0 0"/>
</xacro:plane>
<xacro:rack parent="world">
<origin xyz="0.0 0.7 0.0" rpy="0.0 0.0 0.0"/>
</xacro:rack>
<xacro:table parent="world">
<origin xyz="-0.75 0.0 0.2" rpy="0.0 0.0 0.0"/>
</xacro:table> -->
<link name="rgbd_camera">
<inertial>
<origin rpy="0.0 0.0 0.0" xyz="0.0 0.0 0.0"/>
<mass value="0.1"/>
<inertia ixx="0.0" ixy="0.0" ixz="0.0" iyy="0.0" iyz="0.0" izz="0.0"/>
</inertial>
<visual name="">
<origin rpy="0.0 0.0 0.0" xyz="0.0 0.0 0.0"/>
<geometry>
<box size="0.01 0.01 0.01"/>
</geometry>
<material name="">
<color rgba="0.0 0.0 0.0 1.0"/>
<texture filename=""/>
</material>
</visual>
<collision>
<origin rpy="0.0 0.0 0.0" xyz="0.0 0.0 0.0"/>
<geometry>
<box size="0.01 0.01 0.01"/>
</geometry>
</collision>
</link>
<gazebo reference="rgbd_camera">
<sensor name="rgbd_camera" type="rgbd_camera">
<camera>
<horizontal_fov>1.047</horizontal_fov>
<image>
<width>320</width>
<height>240</height>
</image>
<clip>
<near>0.1</near>
<far>100</far>
</clip>
</camera>
<always_on>1</always_on>
<update_rate>30</update_rate>
<visualize>true</visualize>
<topic>rgbd_camera</topic>
<enable_metrics>true</enable_metrics>
</sensor>
</gazebo>
<joint name="plane_base_joint" type="fixed">
<parent link="tool0"/>
<child link="rgbd_camera"/>
<origin rpy="1.57 -1.57 0" xyz="0 -0.05 0.07"/>
</joint>
<gazebo reference="world">
</gazebo>
<gazebo>
<plugin filename="libign_ros2_control-system.so" name="ign_ros2_control::IgnitionROS2ControlPlugin">
<parameters>/home/bill-finger/rasms_ws/install/ur_moveit_config/share/ur_moveit_config/config/ur_controllers.yaml</parameters>
<controller_manager_node_name>controller_manager</controller_manager_node_name>
</plugin>
</gazebo>
</robot>

View file

@ -1,69 +0,0 @@
<mujoco model="ur">
<compiler angle="radian" meshdir="meshes/"/>
<default/>
<asset>
<texture type="skybox" builtin="gradient" rgb1="0.9 0.9 0.9" rgb2="0.5 0.5 0.5" width="512" height="512"/>
<texture name="texplane" type="2d" builtin="checker" rgb1=".25 .25 .25" rgb2=".3 .3 .3" width="512" height="512" mark="cross" markrgb=".8 .8 .8"/>
<material name="matplane" reflectance="0.2" texture="texplane" texrepeat="1 1" texuniform="true"/>
<mesh name="base" file="base.stl"/>
<mesh name="shoulder" file="shoulder.stl"/>
<mesh name="upperarm" file="upperarm.stl"/>
<mesh name="forearm" file="forearm.stl"/>
<mesh name="wrist1" file="wrist1.stl"/>
<mesh name="wrist2" file="wrist2.stl"/>
<mesh name="wrist3" file="wrist3.stl"/>
</asset>
<worldbody>
<light directional="true" diffuse=".8 .8 .8" specular=".2 .2 .2" pos="0 0 5" dir="0 0 -1" castshadow="false"/>
<geom name="floor" pos="0 0 -0.0" size="0 0 1" type="plane" material="matplane"/>
<geom quat="-1 0 0 0" type="mesh" contype="0" conaffinity="0" group="1" density="0" mesh="base"/>
<geom quat="-1 0 0 0" type="mesh" mesh="base"/>
<body name="shoulder_link" pos="0 0 0.1625" quat="0 0 0 1" >
<inertial pos="0 0 0" mass="3.7" diaginertia="0.0102675 0.0102675 0.00666"/>
<joint name="shoulder_pan_joint" pos="0 0 0" axis="0 0 1" limited="true" range="-6.28319 6.28319"/>
<geom quat="0 0 0 1" type="mesh" contype="0" conaffinity="0" group="1" density="0" mesh="shoulder"/>
<geom quat="0 0 0 1" type="mesh" mesh="shoulder"/>
<body name="upper_arm_link" pos="0 0 0" quat="0.5 0.5 0.5 -0.5" >
<inertial pos="-0.2125 0 0.138" quat="0.707107 0 0.707107 0" mass="8.393" diaginertia="0.133886 0.133886 0.0151074"/>
<joint name="shoulder_lift_joint" pos="0 0 0" axis="0 0 1" limited="true" range="-1.5708 1.5708"/>
<geom pos="0 0 0.138" quat="0.5 0.5 -0.5 -0.5" type="mesh" contype="0" conaffinity="0" group="1" density="0" mesh="upperarm"/>
<geom pos="0 0 0.138" quat="0.5 0.5 -0.5 -0.5" type="mesh" mesh="upperarm"/>
<body name="forearm_link" pos="-0.425 0 0" >
<inertial pos="-0.1961 0 0.007" quat="0.707107 0 0.707107 0" mass="2.275" diaginertia="0.0312094 0.0312094 0.004095"/>
<joint name="elbow_joint" pos="0 0 0" axis="0 0 1" limited="true" range="-2.75762 2.75762"/>
<geom pos="0 0 0.007" quat="0.5 0.5 -0.5 -0.5" type="mesh" contype="0" conaffinity="0" group="1" density="0" mesh="forearm"/>
<geom pos="0 0 0.007" quat="0.5 0.5 -0.5 -0.5" type="mesh" mesh="forearm"/>
<body name="wrist_1_link" pos="-0.3922 0 0.1333" quat="0.707107 0 0 -0.707107" >
<inertial pos="0 0 0" mass="1.219" diaginertia="0.0025599 0.0025599 0.0021942"/>
<joint name="wrist_1_joint" pos="0 0 0" axis="0 0 1" limited="true" range="-2.26893 2.26893"/>
<geom pos="0 0 -0.127" quat="0.707107 0.707107 0 0" type="mesh" contype="0" conaffinity="0" group="1" density="0" mesh="wrist1"/>
<geom pos="0 0 -0.127" quat="0.707107 0.707107 0 0" type="mesh" mesh="wrist1"/>
<body name="wrist_2_link" pos="0 -0.0997 -2.04488e-11" quat="0.707107 0.707107 0 0" >
<inertial pos="0 0 0" mass="1.219" diaginertia="0.0025599 0.0025599 0.0021942"/>
<joint name="wrist_2_joint" pos="0 0 0" axis="0 0 1" limited="true" range="-2.53073 2.53073"/>
<geom pos="0 0 -0.0997" type="mesh" contype="0" conaffinity="0" group="1" density="0" mesh="wrist2"/>
<geom pos="0 0 -0.0997" type="mesh" mesh="wrist2"/>
<body name="wrist_3_link" pos="0 0.0996 -2.04283e-11" quat="0.707107 -0.707107 0 0" >
<inertial pos="0 -0.0173671 0.00936815" quat="0.683945 0.179497 -0.179497 0.683945" mass="0.2879" diaginertia="0.000833069 0.000825338 0.000124386"/>
<joint name="wrist_3_joint" pos="0 0 0" axis="0 0 1" limited="true" range="-6.28319 6.28319"/>
<geom pos="0 0 -0.0989" quat="0.707107 0.707107 0 0" type="mesh" contype="0" conaffinity="0" group="1" density="0" mesh="wrist3"/>
<geom pos="0 0 -0.0989" quat="0.707107 0.707107 0 0" type="mesh" mesh="wrist3"/>
<geom size="0.005 0.005 0.005" pos="0 -0.05 0.07" quat="0.500398 0.5 -0.5 0.499602" type="box" contype="0" conaffinity="0" group="1" density="0" rgba="0 0 0 1"/>
<geom size="0.005 0.005 0.005" pos="0 -0.05 0.07" quat="0.500398 0.5 -0.5 0.499602" type="box" rgba="0 0 0 1"/>
</body>
</body>
</body>
</body>
</body>
</body>
</worldbody>
<actuator>
<motor name="shoulder_pan_joint" gear="1" joint="shoulder_pan_joint"/>
<motor name="shoulder_lift_joint" gear="1" joint="shoulder_lift_joint"/>
<motor name="elbow_joint" gear="1" joint="elbow_joint"/>
<motor name="wrist_1_joint" gear="1" joint="wrist_1_joint"/>
<motor name="wrist_2_joint" gear="1" joint="wrist_2_joint"/>
<motor name="wrist_3_joint" gear="1" joint="wrist_3_joint"/>
</actuator>
</mujoco>

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

View file

@ -1,24 +0,0 @@
<?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>rbs_simulation</name>
<version>0.0.0</version>
<description>TODO: Package description</description>
<maintainer email="ur.narmak@gmail.com">root</maintainer>
<license>TODO: License declaration</license>
<buildtool_depend>ament_cmake</buildtool_depend>
<depend>rclcpp</depend>
<depend>tf2</depend>
<depend>tf2_ros</depend>
<depend>std_msgs</depend>
<depend>geometry_msgs</depend>
<test_depend>ament_lint_auto</test_depend>
<test_depend>ament_lint_common</test_depend>
<export>
<build_type>ament_cmake</build_type>
</export>
</package>

View file

@ -1,122 +0,0 @@
<?xml version="1.0"?>
<sdf version='1.9'>
<world name='asm2'>
<physics name='1ms' type='ignored'>
<max_step_size>0.001</max_step_size>
<real_time_factor>1.0</real_time_factor>
<dart>
<collision_detector>bullet</collision_detector>
<solver>
<solver_type>pgs</solver_type>
</solver>
</dart>
</physics>
<plugin name='ignition::gazebo::systems::Physics' filename='ignition-gazebo-physics-system'>
<engine>
<filename>ignition-physics-dartsim-plugin</filename>
</engine>
</plugin>
<plugin name='ignition::gazebo::systems::UserCommands' filename='ignition-gazebo-user-commands-system'/>
<plugin name='ignition::gazebo::systems::SceneBroadcaster' filename='ignition-gazebo-scene-broadcaster-system'/>
<plugin name='ignition::gazebo::systems::Contact' filename='ignition-gazebo-contact-system'/>
<plugin filename="ignition-gazebo-forcetorque-system" name="ignition::gazebo::systems::ForceTorque"/>
<plugin name="ignition::gazebo::systems::Sensors" filename="ignition-gazebo-sensors-system">
<render_engine>ogre2</render_engine>
</plugin>
<gravity>0 0 -9.8</gravity>
<magnetic_field>6e-06 2.3e-05 -4.2e-05</magnetic_field>
<atmosphere type='adiabatic'/>
<scene>
<ambient>0.4 0.4 0.4 1</ambient>
<background>0.7 0.7 0.7 1</background>
<shadows>false</shadows>
</scene>
<gui fullscreen="0">
<plugin filename="GzScene3D" name="3D View">
<ignition-gui>
<title>3D View</title>
<property type="bool" key="showTitleBar">false</property>
<property type="string" key="state">docked</property>
</ignition-gui>
<engine>ogre2</engine>
<scene>scene</scene>
<ambient_light>1.0 1.0 1.0</ambient_light>
<background_color>0.4 0.6 1.0</background_color>
<camera_pose>3.3 2.8 2.8 0 0.5 -2.4</camera_pose>
</plugin>
<plugin filename="WorldStats" name="World stats">
<ignition-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>
</ignition-gui>
<sim_time>true</sim_time>
<real_time>true</real_time>
<real_time_factor>true</real_time_factor>
<iterations>true</iterations>
</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>
<model name='ground'>
<static>true</static>
<link name="link">
<collision name="collision">
<geometry>
<plane>
<normal>0 0 1</normal>
</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>
<!-- Manipulating objects -->
<!-- <include> -->
<!-- <name>board</name> -->
<!-- <uri>model://board</uri> -->
<!-- <pose>0.45 0.0 0.0 0.0 0.0 0.0</pose> -->
<!-- </include> -->
<!-- <include> -->
<!-- <name>bishop</name> -->
<!-- <uri>model://bishop</uri> -->
<!-- <pose>0.35 0.0 0.0 0.0 0.0 0.0</pose> -->
<!-- </include> -->
<!-- <include> -->
<!-- <name>bishop</name> -->
<!-- <uri>model://box1</uri> -->
<!-- <pose>0.45 0.0 0 0 0 0</pose> -->
<!-- </include> -->
</world>
</sdf>

View file

@ -1,119 +0,0 @@
<sdf version='1.9'>
<world name='empty'>
<physics name='1ms' type='ignored'>
<max_step_size>0.001</max_step_size>
<real_time_factor>1</real_time_factor>
<real_time_update_rate>1000</real_time_update_rate>
</physics>
<plugin name='ignition::gazebo::systems::Physics' filename='ignition-gazebo-physics-system'/>
<plugin name='ignition::gazebo::systems::UserCommands' filename='ignition-gazebo-user-commands-system'/>
<plugin name='ignition::gazebo::systems::SceneBroadcaster' filename='ignition-gazebo-scene-broadcaster-system'/>
<plugin name='ignition::gazebo::systems::Contact' filename='ignition-gazebo-contact-system'/>
<gravity>0 0 -9.8</gravity>
<magnetic_field>6e-06 2.3e-05 -4.2e-05</magnetic_field>
<atmosphere type='adiabatic'/>
<scene>
<ambient>0.4 0.4 0.4 1</ambient>
<background>0.7 0.7 0.7 1</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>
<surface>
<friction>
<ode/>
</friction>
<bounce/>
<contact/>
</surface>
</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>
<pose>0 0 0 0 -0 0</pose>
<inertial>
<pose>0 0 0 0 -0 0</pose>
<mass>1</mass>
<inertia>
<ixx>1</ixx>
<ixy>0</ixy>
<ixz>0</ixz>
<iyy>1</iyy>
<iyz>0</iyz>
<izz>1</izz>
</inertia>
</inertial>
<enable_wind>false</enable_wind>
</link>
<pose>0 0 0 0 -0 0</pose>
<self_collide>false</self_collide>
</model>
<include>
<uri>model://box1</uri>
<name>box1</name>
<pose>0.3 0.4 0 0 0 0</pose>
</include>
<include>
<uri>model://box1</uri>
<name>box2</name>
<pose>0.2 0.4 0 0 0 0</pose>
</include>
<include>
<uri>model://box1</uri>
<name>box3</name>
<pose>0.1 0.4 0 0 0 0</pose>
</include>
<include>
<uri>model://box1</uri>
<name>box4</name>
<pose>0 0.4 0 0 0 0</pose>
</include>
<include>
<uri>model://box1</uri>
<name>box5</name>
<pose>-0.1 0.4 0 0 0 0</pose>
</include>
<include>
<uri>model://box1</uri>
<name>box6</name>
<pose>-0.2 0.4 0 0 0 0</pose>
</include>
<light name='sun' type='directional'>
<pose>0 0 10 0 -0 0</pose>
<cast_shadows>true</cast_shadows>
<intensity>1</intensity>
<direction>-0.5 0.1 -0.9</direction>
<diffuse>0.8 0.8 0.8 1</diffuse>
<specular>0.2 0.2 0.2 1</specular>
<attenuation>
<range>1000</range>
<linear>0.01</linear>
<constant>0.90000000000000002</constant>
<quadratic>0.001</quadratic>
</attenuation>
<spot>
<inner_angle>0</inner_angle>
<outer_angle>0</outer_angle>
<falloff>0</falloff>
</spot>
</light>
</world>
</sdf>

View file

@ -1,139 +0,0 @@
<?xml version="1.0"?>
<sdf version='1.9'>
<world name='mir'>
<physics name='1ms' type='ignored'>
<max_step_size>0.001</max_step_size>
<real_time_factor>1.0</real_time_factor>
<real_time_update_rate>1000</real_time_update_rate>
</physics>
<plugin name='ignition::gazebo::systems::Physics' filename='ignition-gazebo-physics-system'/>
<plugin name='ignition::gazebo::systems::UserCommands' filename='ignition-gazebo-user-commands-system'/>
<plugin name='ignition::gazebo::systems::SceneBroadcaster' filename='ignition-gazebo-scene-broadcaster-system'/>
<plugin name='ignition::gazebo::systems::Contact' filename='ignition-gazebo-contact-system'/>
<plugin name="ignition::gazebo::systems::Sensors" filename="ignition-gazebo-sensors-system">
<render_engine>ogre2</render_engine>
</plugin>
<plugin name='ignition::gazebo::systems::ForceTorque' filename='ignition-gazebo-forcetorque-system'/>
<gravity>0 0 -9.8</gravity>
<magnetic_field>6e-06 2.3e-05 -4.2e-05</magnetic_field>
<atmosphere type='adiabatic'/>
<scene>
<ambient>0.4 0.4 0.4 1</ambient>
<background>0.7 0.7 0.7 1</background>
<shadows>false</shadows>
</scene>
<gui fullscreen="0">
<plugin filename="GzScene3D" name="3D View">
<ignition-gui>
<title>3D View</title>
<property type="bool" key="showTitleBar">false</property>
<property type="string" key="state">docked</property>
</ignition-gui>
<engine>ogre2</engine>
<scene>scene</scene>
<ambient_light>1.0 1.0 1.0</ambient_light>
<background_color>0.4 0.6 1.0</background_color>
<camera_pose>3.3 2.8 2.8 0 0.5 -2.4</camera_pose>
</plugin>
<plugin filename="WorldStats" name="World stats">
<ignition-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>
</ignition-gui>
<sim_time>true</sim_time>
<real_time>true</real_time>
<real_time_factor>true</real_time_factor>
<iterations>true</iterations>
</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>
<model name='ground'>
<static>true</static>
<link name="link">
<collision name="collision">
<geometry>
<plane>
<normal>0 0 1</normal>
</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>
<!-- Manipulating objects -->
<include>
<uri>model://box1</uri>
<name>box1</name>
<pose>0.25 0.65 0.025 0 0 0</pose>
</include>
<include>
<uri>model://box1</uri>
<name>box2</name>
<pose>0 0.65 0.025 0 0 0</pose>
</include>
<include>
<uri>model://box1</uri>
<name>box3</name>
<pose>-0.25 0.65 0.025 0 0 0</pose>
</include>
<include>
<uri>model://box1</uri>
<name>box4</name>
<pose>0.25 0.75 0.025 0 0 0</pose>
</include>
<include>
<uri>model://box1</uri>
<name>box5</name>
<pose>0 0.75 0.025 0 0 0</pose>
</include>
<include>
<uri>model://box1</uri>
<name>box6</name>
<pose>-0.25 0.75 0.025 0 0 0</pose>
</include>
<!-- <include>
<uri>model://fork</uri>
<name>fork_gt</name>
<pose>1.5 0.3 0.25 0 0 0</pose>
</include>
<!-->
<uri>model://king</uri>
<name>king1</name>
<pose>1.5 0.2 0.25 0 0 0</pose>
</-->
</world>
</sdf>

View file

@ -1,493 +0,0 @@
<sdf version='1.9'>
<world name='empty'>
<physics name='1ms' type='ignored'>
<max_step_size>0.001</max_step_size>
<real_time_factor>1</real_time_factor>
<real_time_update_rate>1000</real_time_update_rate>
</physics>
<plugin name='ignition::gazebo::systems::Physics' filename='ignition-gazebo-physics-system'/>
<plugin name='ignition::gazebo::systems::UserCommands' filename='ignition-gazebo-user-commands-system'/>
<plugin name='ignition::gazebo::systems::SceneBroadcaster' filename='ignition-gazebo-scene-broadcaster-system'/>
<plugin name='ignition::gazebo::systems::Contact' filename='ignition-gazebo-contact-system'/>
<gravity>0 0 -9.8</gravity>
<magnetic_field>6e-06 2.3e-05 -4.2e-05</magnetic_field>
<atmosphere type='adiabatic'/>
<scene>
<ambient>0.4 0.4 0.4 1</ambient>
<background>0.7 0.7 0.7 1</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>
<surface>
<friction>
<ode/>
</friction>
<bounce/>
<contact/>
</surface>
</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>
<pose>0 0 0 0 -0 0</pose>
<inertial>
<pose>0 0 0 0 -0 0</pose>
<mass>1</mass>
<inertia>
<ixx>1</ixx>
<ixy>0</ixy>
<ixz>0</ixz>
<iyy>1</iyy>
<iyz>0</iyz>
<izz>1</izz>
</inertia>
</inertial>
<enable_wind>false</enable_wind>
</link>
<pose>0 0 0 0 -0 0</pose>
<self_collide>false</self_collide>
</model>
<model name='ur5e'>
<joint name='base_joint' type='fixed'>
<pose>0 0 0 0 -0 0</pose>
<parent>world</parent>
<child>base_link</child>
</joint>
<link name='base_link'>
<pose>0 0 0 0 -0 0</pose>
<inertial>
<pose>0 0 0 0 -0 0</pose>
<mass>4</mass>
<inertia>
<ixx>0.0044333300000000001</ixx>
<ixy>0</ixy>
<ixz>0</ixz>
<iyy>0.0044333300000000001</iyy>
<iyz>0</iyz>
<izz>0.0071999999999999998</izz>
</inertia>
</inertial>
<collision name='base_link_inertia_collision'>
<pose>0 0 0 0 0 -2.449293598294706e-16</pose>
<geometry>
<mesh>
<scale>1 1 1</scale>
<uri>file:///home/bill-finger/rasms_ws/install/share/ur_description/meshes/ur5e/collision/base.stl</uri>
</mesh>
</geometry>
</collision>
<visual name='base_link_inertia_visual'>
<pose>0 0 0 0 0 -2.449293598294706e-16</pose>
<geometry>
<mesh>
<scale>1 1 1</scale>
<uri>file:///home/bill-finger/rasms_ws/install/share/ur_description/meshes/ur5e/visual/base.dae</uri>
</mesh>
</geometry>
</visual>
<enable_wind>false</enable_wind>
</link>
<joint name='shoulder_pan_joint' type='revolute'>
<pose>0 0 0 0 -0 0</pose>
<parent>base_link</parent>
<child>shoulder_link</child>
<axis>
<xyz>0 0 1</xyz>
<limit>
<lower>-6.2831900000000003</lower>
<upper>6.2831900000000003</upper>
<effort>150</effort>
<velocity>3.1415899999999999</velocity>
<stiffness>100000000</stiffness>
<dissipation>1</dissipation>
</limit>
<dynamics>
<spring_reference>0</spring_reference>
<spring_stiffness>0</spring_stiffness>
<damping>0</damping>
<friction>0</friction>
</dynamics>
</axis>
</joint>
<link name='shoulder_link'>
<pose>0 0 0.1625 0 -0 -3.14159</pose>
<inertial>
<pose>0 0 0 0 -0 0</pose>
<mass>3.7000000000000002</mass>
<inertia>
<ixx>0.010267500000000001</ixx>
<ixy>0</ixy>
<ixz>0</ixz>
<iyy>0.010267500000000001</iyy>
<iyz>0</iyz>
<izz>0.0066600000000000001</izz>
</inertia>
</inertial>
<collision name='shoulder_link_collision'>
<pose>0 0 0 0 0 3.141592653589793</pose>
<geometry>
<mesh>
<scale>1 1 1</scale>
<uri>file:///home/bill-finger/rasms_ws/install/share/ur_description/meshes/ur5e/collision/shoulder.stl</uri>
</mesh>
</geometry>
</collision>
<visual name='shoulder_link_visual'>
<pose>0 0 0 0 0 3.141592653589793</pose>
<geometry>
<mesh>
<scale>1 1 1</scale>
<uri>file:///home/bill-finger/rasms_ws/install/share/ur_description/meshes/ur5e/visual/shoulder.dae</uri>
</mesh>
</geometry>
</visual>
<enable_wind>false</enable_wind>
</link>
<joint name='shoulder_lift_joint' type='revolute'>
<pose>-0 0 0 0 -0 0</pose>
<parent>shoulder_link</parent>
<child>upper_arm_link</child>
<axis>
<xyz>0 0 1</xyz>
<limit>
<lower>-6.2831900000000003</lower>
<upper>6.2831900000000003</upper>
<effort>150</effort>
<velocity>3.1415899999999999</velocity>
<stiffness>100000000</stiffness>
<dissipation>1</dissipation>
</limit>
<dynamics>
<spring_reference>0</spring_reference>
<spring_stiffness>0</spring_stiffness>
<damping>0</damping>
<friction>0</friction>
</dynamics>
</axis>
</joint>
<link name='upper_arm_link'>
<pose>0 -0 0.1625 1.5708 1.57 -3.14159</pose>
<inertial>
<pose>-0.2125 0 0.138 0 1.5708 0</pose>
<mass>8.3930000000000007</mass>
<inertia>
<ixx>0.13388600000000001</ixx>
<ixy>0</ixy>
<ixz>0</ixz>
<iyy>0.13388600000000001</iyy>
<iyz>0</iyz>
<izz>0.0151074</izz>
</inertia>
</inertial>
<collision name='upper_arm_link_collision'>
<pose>0 0 0.138 1.570796326794896 0 -1.570796326794896</pose>
<geometry>
<mesh>
<scale>1 1 1</scale>
<uri>file:///home/bill-finger/rasms_ws/install/share/ur_description/meshes/ur5e/collision/upperarm.stl</uri>
</mesh>
</geometry>
</collision>
<visual name='upper_arm_link_visual'>
<pose>0 0 0.138 1.570796326794896 0 -1.570796326794896</pose>
<geometry>
<mesh>
<scale>1 1 1</scale>
<uri>file:///home/bill-finger/rasms_ws/install/share/ur_description/meshes/ur5e/visual/upperarm.dae</uri>
</mesh>
</geometry>
</visual>
<enable_wind>false</enable_wind>
</link>
<joint name='elbow_joint' type='revolute'>
<pose>0 -0 0 0 -0 0</pose>
<parent>upper_arm_link</parent>
<child>forearm_link</child>
<axis>
<xyz>0 0 1</xyz>
<limit>
<lower>-3.1415899999999999</lower>
<upper>3.1415899999999999</upper>
<effort>150</effort>
<velocity>3.1415899999999999</velocity>
<stiffness>100000000</stiffness>
<dissipation>1</dissipation>
</limit>
<dynamics>
<spring_reference>0</spring_reference>
<spring_stiffness>0</spring_stiffness>
<damping>0</damping>
<friction>0</friction>
</dynamics>
</axis>
</joint>
<link name='forearm_link'>
<pose>0.000338 0 0.5875 1.5708 1.57 -3.14159</pose>
<inertial>
<pose>-0.1961 0 0.007 0 1.5708 0</pose>
<mass>2.2749999999999999</mass>
<inertia>
<ixx>0.031209400000000002</ixx>
<ixy>0</ixy>
<ixz>0</ixz>
<iyy>0.031209400000000002</iyy>
<iyz>0</iyz>
<izz>0.0040949999999999997</izz>
</inertia>
</inertial>
<collision name='forearm_link_collision'>
<pose>0 0 0.007 1.570796326794896 0 -1.570796326794896</pose>
<geometry>
<mesh>
<scale>1 1 1</scale>
<uri>file:///home/bill-finger/rasms_ws/install/share/ur_description/meshes/ur5e/collision/forearm.stl</uri>
</mesh>
</geometry>
</collision>
<visual name='forearm_link_visual'>
<pose>0 0 0.007 1.570796326794896 0 -1.570796326794896</pose>
<geometry>
<mesh>
<scale>1 1 1</scale>
<uri>file:///home/bill-finger/rasms_ws/install/share/ur_description/meshes/ur5e/visual/forearm.dae</uri>
</mesh>
</geometry>
</visual>
<enable_wind>false</enable_wind>
</link>
<joint name='wrist_1_joint' type='revolute'>
<pose>0 0 0 0 -0 0</pose>
<parent>forearm_link</parent>
<child>wrist_1_link</child>
<axis>
<xyz>0 0 1</xyz>
<limit>
<lower>-6.2831900000000003</lower>
<upper>6.2831900000000003</upper>
<effort>28</effort>
<velocity>3.1415899999999999</velocity>
<stiffness>100000000</stiffness>
<dissipation>1</dissipation>
</limit>
<dynamics>
<spring_reference>0</spring_reference>
<spring_stiffness>0</spring_stiffness>
<damping>0</damping>
<friction>0</friction>
</dynamics>
</axis>
</joint>
<link name='wrist_1_link'>
<pose>0.000651 0.1333 0.9797 -1.5708 0.001593 -0</pose>
<inertial>
<pose>0 0 0 0 -0 0</pose>
<mass>1.2190000000000001</mass>
<inertia>
<ixx>0.0025598999999999999</ixx>
<ixy>0</ixy>
<ixz>0</ixz>
<iyy>0.0025598999999999999</iyy>
<iyz>0</iyz>
<izz>0.0021941999999999999</izz>
</inertia>
</inertial>
<collision name='wrist_1_link_collision'>
<pose>0 0 -0.127 1.570796326794896 0 0</pose>
<geometry>
<mesh>
<scale>1 1 1</scale>
<uri>file:///home/bill-finger/rasms_ws/install/share/ur_description/meshes/ur5e/collision/wrist1.stl</uri>
</mesh>
</geometry>
</collision>
<visual name='wrist_1_link_visual'>
<pose>0 0 -0.127 1.570796326794896 0 0</pose>
<geometry>
<mesh>
<scale>1 1 1</scale>
<uri>file:///home/bill-finger/rasms_ws/install/share/ur_description/meshes/ur5e/visual/wrist1.dae</uri>
</mesh>
</geometry>
</visual>
<enable_wind>false</enable_wind>
</link>
<joint name='wrist_2_joint' type='revolute'>
<pose>0 0 0 0 0 -0</pose>
<parent>wrist_1_link</parent>
<child>wrist_2_link</child>
<axis>
<xyz>0 0 1</xyz>
<limit>
<lower>-6.2831900000000003</lower>
<upper>6.2831900000000003</upper>
<effort>28</effort>
<velocity>3.1415899999999999</velocity>
<stiffness>100000000</stiffness>
<dissipation>1</dissipation>
</limit>
<dynamics>
<spring_reference>0</spring_reference>
<spring_stiffness>0</spring_stiffness>
<damping>0</damping>
<friction>0</friction>
</dynamics>
</axis>
</joint>
<link name='wrist_2_link'>
<pose>0.00081 0.1333 1.0794 -0 0.001593 -0</pose>
<inertial>
<pose>0 0 0 0 -0 0</pose>
<mass>1.2190000000000001</mass>
<inertia>
<ixx>0.0025598999999999999</ixx>
<ixy>0</ixy>
<ixz>0</ixz>
<iyy>0.0025598999999999999</iyy>
<iyz>0</iyz>
<izz>0.0021941999999999999</izz>
</inertia>
</inertial>
<collision name='wrist_2_link_collision'>
<pose>0 0 -0.0997 0 0 0</pose>
<geometry>
<mesh>
<scale>1 1 1</scale>
<uri>file:///home/bill-finger/rasms_ws/install/share/ur_description/meshes/ur5e/collision/wrist2.stl</uri>
</mesh>
</geometry>
</collision>
<visual name='wrist_2_link_visual'>
<pose>0 0 -0.0997 0 0 0</pose>
<geometry>
<mesh>
<scale>1 1 1</scale>
<uri>file:///home/bill-finger/rasms_ws/install/share/ur_description/meshes/ur5e/visual/wrist2.dae</uri>
</mesh>
</geometry>
</visual>
<enable_wind>false</enable_wind>
</link>
<joint name='wrist_3_joint' type='revolute'>
<pose>0 -0 -0 0 -0 0</pose>
<parent>wrist_2_link</parent>
<child>wrist_3_link</child>
<axis>
<xyz>0 0 1</xyz>
<limit>
<lower>-6.2831900000000003</lower>
<upper>6.2831900000000003</upper>
<effort>28</effort>
<velocity>3.1415899999999999</velocity>
<stiffness>100000000</stiffness>
<dissipation>1</dissipation>
</limit>
<dynamics>
<spring_reference>0</spring_reference>
<spring_stiffness>0</spring_stiffness>
<damping>0</damping>
<friction>0</friction>
</dynamics>
</axis>
</joint>
<link name='wrist_3_link'>
<pose>0.00081 0.2329 1.0794 -1.5708 0.001593 -0</pose>
<inertial>
<pose>0 0 -0.0229 0 -0 0</pose>
<mass>0.18790000000000001</mass>
<inertia>
<ixx>9.8904099999999994e-05</ixx>
<ixy>0</ixy>
<ixz>0</ixz>
<iyy>9.8904099999999994e-05</iyy>
<iyz>0</iyz>
<izz>0.00013211700000000001</izz>
</inertia>
</inertial>
<collision name='wrist_3_link_collision'>
<pose>0 0 -0.0989 1.570796326794896 0 0</pose>
<geometry>
<mesh>
<scale>1 1 1</scale>
<uri>file:///home/bill-finger/rasms_ws/install/share/ur_description/meshes/ur5e/collision/wrist3.stl</uri>
</mesh>
</geometry>
</collision>
<visual name='wrist_3_link_visual'>
<pose>0 0 -0.0989 1.570796326794896 0 0</pose>
<geometry>
<mesh>
<scale>1 1 1</scale>
<uri>file:///home/bill-finger/rasms_ws/install/share/ur_description/meshes/ur5e/visual/wrist3.dae</uri>
</mesh>
</geometry>
</visual>
<enable_wind>false</enable_wind>
</link>
<plugin name='ign_ros2_control::IgnitionROS2ControlPlugin' filename='libign_ros2_control-system.so'>
<parameters>/home/bill-finger/rasms_ws/install/share/ur_moveit_config/config/ur_controllers.yaml</parameters>
<controller_manager_node_name>controller_manager</controller_manager_node_name>
</plugin>
<frame name='base_link-base_fixed_joint' attached_to='base_link'>
<pose>0 0 0 0 -0 3.14159</pose>
</frame>
<frame name='base' attached_to='base_link-base_fixed_joint'/>
<frame name='base_link-base_link_inertia' attached_to='base_link'>
<pose>0 0 0 0 -0 3.14159</pose>
</frame>
<frame name='base_link_inertia' attached_to='base_link-base_link_inertia'/>
<frame name='flange-tool0' attached_to='flange'>
<pose>0 0 0 1.5708 -0 1.5708</pose>
</frame>
<frame name='tool0' attached_to='flange-tool0'/>
<frame name='wrist_3-flange' attached_to='wrist_3_link'>
<pose>0 0 0 -1.5708 -1.5708 0</pose>
</frame>
<frame name='flange' attached_to='wrist_3-flange'/>
<frame name='wrist_3_link-ft_frame' attached_to='wrist_3_link'>
<pose>0 0 0 3.14159 -0 0</pose>
</frame>
<frame name='ft_frame' attached_to='wrist_3_link-ft_frame'/>
<pose>0 0 0 0 -0 0</pose>
<static>false</static>
<self_collide>false</self_collide>
</model>
<light name='sun' type='directional'>
<pose>0 0 10 0 -0 0</pose>
<cast_shadows>true</cast_shadows>
<intensity>1</intensity>
<direction>-0.5 0.1 -0.9</direction>
<diffuse>0.8 0.8 0.8 1</diffuse>
<specular>0.2 0.2 0.2 1</specular>
<attenuation>
<range>1000</range>
<linear>0.01</linear>
<constant>0.90000000000000002</constant>
<quadratic>0.001</quadratic>
</attenuation>
<spot>
<inner_angle>0</inner_angle>
<outer_angle>0</outer_angle>
<falloff>0</falloff>
</spot>
</light>
</world>
</sdf>