Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
31 commits
Select commit Hold shift + click to select a range
bd6d3c2
Try to fix spawn robot pose
Jepear19 May 2, 2026
87cdabf
Try to fix spawn robot pose
Jepear19 May 2, 2026
b22bdf7
Try to fix spawn robot pose
Jepear19 May 2, 2026
331c0ec
Try to fix spawn robot pose
Jepear19 May 2, 2026
7fe297a
Try to fix spawn robot pose
Jepear19 May 2, 2026
dd490b8
Fix srdf and controller.yaml
Jepear19 May 2, 2026
539ba36
Try to fix spawn robot pose
Jepear19 May 2, 2026
8c81a0f
Try to fix spawn robot pose
Jepear19 May 2, 2026
b0d08f6
Fix Launcher
Jepear19 May 2, 2026
53833f4
Add Kinematics.yaml
Jepear19 May 2, 2026
f428044
Fix Kinematics.yaml
Jepear19 May 2, 2026
2d575c6
Fix srdf
Jepear19 May 2, 2026
2759d66
Fix kinematics.yaml
Jepear19 May 2, 2026
6249755
Fix srdf
Jepear19 May 2, 2026
b2e7e43
Fix gripper movement
Jepear19 May 3, 2026
9fc1d82
Fix controller.yaml
Jepear19 May 3, 2026
46c0c34
Fix launcher
Jepear19 May 3, 2026
6a48390
Fix Launchers
Jepear19 May 3, 2026
8454bc1
Fix kinematics and launcher
Jepear19 May 3, 2026
b5f2ee0
Fix kinematics.yaml
Jepear19 May 3, 2026
9ef787a
Change ur5_manipulator to ur5_arm
Jepear19 May 3, 2026
6abd89c
Change again to ur5_manipulator
Jepear19 May 3, 2026
8300823
Fix kinematics and srdf
Jepear19 May 3, 2026
7ff49a9
Fix move.cpp
Jepear19 May 5, 2026
4cdde9f
Fix move.cpp
Jepear19 May 5, 2026
6143cf2
Restart move.cpp
Jepear19 May 5, 2026
eca58ad
Fix move.cpp
Jepear19 May 5, 2026
78f074d
Fix .yaml and moveg.cpp and change launcher
Jepear19 May 5, 2026
f079a0c
Fix gripper movement
Jepear19 May 5, 2026
1c7874b
Fix gripper movement
Jepear19 May 5, 2026
e92bf5c
Fix gripper movement
Jepear19 May 5, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ Configurations:

- ID: "ur5_7"
Name: "UR5 + Robotiq HandE gripper on top of Robot Stand."
urdf: "ur5_robotiq_2f85_with_cams.urdf.xacro"
urdf: "ur5_robotiq_2f85_with_cams_classic.urdf.xacro"
rob: "ur5"
ee: "robotiq_2f85"

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,156 @@
<?xml version="1.0" ?>

<!--

# ===================================== COPYRIGHT ===================================== #
# #
# IFRA (Intelligent Flexible Robotics and Assembly) Group, CRANFIELD UNIVERSITY #
# Created on behalf of the IFRA Group at Cranfield University, United Kingdom #
# E-mail: IFRA@cranfield.ac.uk #
# #
# Licensed under the Apache-2.0 License. #
# You may not use this file except in compliance with the License. #
# You may obtain a copy of the License at: http://www.apache.org/licenses/LICENSE-2.0 #
# #
# Unless required by applicable law or agreed to in writing, software distributed #
# under the License is distributed on an "as-is" basis, without warranties or #
# conditions of any kind, either express or implied. See the License for the specific #
# language governing permissions and limitations under the License. #
# #
# IFRA Group - Cranfield University #
# AUTHORS: Mikel Bueno Viso - Mikel.Bueno-Viso@cranfield.ac.uk #
# Dr. Seemal Asif - s.asif@cranfield.ac.uk #
# Prof. Phil Webb - p.f.webb@cranfield.ac.uk #
# #
# Date: April, 2023. #
# #
# ===================================== COPYRIGHT ===================================== #

# ======= CITE OUR WORK ======= #
# You can cite our work with the following statement:
# IFRA-Cranfield (2023) ROS 2 Sim-to-Real Robot Control. URL: https://github.com/IFRA-Cranfield/ros2_SimRealRobotControl.

-->

<robot name="ur5" xmlns:xacro="http://ros.org/wiki/xacro">



<!-- PASS ARGUMENTS: -->
<xacro:arg name="bringup" default="false"/>
<xacro:property name="bringup" value="$(arg bringup)"/>
<xacro:arg name="hmi" default="false"/>
<xacro:property name="hmi" value="$(arg hmi)"/>
<xacro:arg name="robot_ip" default="0.0.0.0"/>
<xacro:property name="robot_ip" value="$(arg robot_ip)"/>

<xacro:arg name="EE" default="false"/>
<xacro:property name="EE" value="$(arg EE)"/>
<xacro:arg name="EE_name" default="none"/>
<xacro:property name="EE_name" value="$(arg EE_name)"/>

<!-- UR5 Control ARGUMENTS -->
<xacro:arg name="script_filename" default="none"/>
<xacro:property name="script_filename" value="$(arg script_filename)"/>
<xacro:arg name="input_recipe_filename" default="none"/>
<xacro:property name="input_recipe_filename" value="$(arg input_recipe_filename)"/>
<xacro:arg name="output_recipe_filename" default="none"/>
<xacro:property name="output_recipe_filename" value="$(arg output_recipe_filename)"/>

<!-- Include XACRO-MACRO file of the UR5: -->
<xacro:include filename="$(find ros2srrc_robots)/ur5/urdf/ur5_macro_classic.urdf.xacro"/>

<xacro:include filename="$(find ros2srrc_ur5_gazebo)/urdf/common_properties.xacro"/>

<xacro:include filename="$(find ros2srrc_ur5_gazebo)/urdf/cam_on_hand_params.xacro"/>
<xacro:include filename="$(find ros2srrc_ur5_gazebo)/urdf/cam_on_hand.xacro"/>

<xacro:include filename="$(find ros2srrc_ur5_gazebo)/urdf/cam_on_base_params.xacro"/>
<xacro:include filename="$(find ros2srrc_ur5_gazebo)/urdf/cam_on_base.xacro"/>

<xacro:ur5
bringup="${bringup}"
robot_ip="${robot_ip}"
EE="${EE}"
EE_name="${EE_name}"

script_filename="${script_filename}"
input_recipe_filename="${input_recipe_filename}"
output_recipe_filename="${output_recipe_filename}"
/>

<!-- Include XACRO-MACRO file of the Robotiq 2f-85: -->
<xacro:include filename="$(find ros2srrc_endeffectors)/robotiq_2f85/urdf/robotiq_2f85_macro.urdf.xacro"/>
<xacro:robotiq_2f85
bringup="${bringup}"
parent_link="tool0"
/>

<!-- Load ROS 2 Gazebo Plugin -->
<xacro:unless value="${bringup}">

<gazebo>
<plugin filename="libgazebo_ros2_control.so" name="gazebo_ros2_control">
<robot_sim_type>gazebo_ros2_control/GazeboSystem</robot_sim_type>

<parameters>$(find ur5_gripper_description)/config/ur5_controllers.yaml</parameters>

</plugin>
</gazebo>

</xacro:unless>

<!-- World: LINK -->
<link name="world"/>

<!-- Robot Stand: LINK -->
<link name='robot_stand'>
<inertial>
<origin xyz="0 0 0" rpy="0 0 0"/>
<mass value="100"/>
<inertia ixx="0.01" ixy="0" ixz="0" iyy="0.01" iyz="0" izz="0.01" />
</inertial>
<collision name='collision'>
<origin xyz="0 0 0" rpy=" 0 0 0"/>
<geometry>
<box size = "0.2 0.2 1.0"/>
</geometry>
</collision>
<visual name='chassis_visual'>
<origin xyz="0 0 0" rpy=" 0 0 0"/>
<geometry>
<box size = "0.2 0.2 1.0"/>
</geometry>
</visual>
</link>

<!-- Robot Stand: FIXED JOINT -->
<joint name="world_joint" type="fixed">
<parent link= "world" />
<child link = "robot_stand" />
<origin xyz="0.0 0.0 0.5" rpy="0.0 0.0 0.0" />
</joint>

<!-- Robot Stand: Robot+Stand JOINT -->
<joint name="stand_joint" type="fixed">
<parent link= "robot_stand" />
<child link = "base_link" />
<origin xyz="0.0 0.0 0.52" rpy="0.0 0.0 0.0" />
</joint>



<!-- ros2srrc_HMI CAMERA -->
<xacro:if value="${hmi}">
<xacro:include filename="$(find ros2srrc_hmi)/urdf/hmicamera.urdf.xacro"/>
<xacro:HMI_camera
x="2.5"
y="1.50"
z="2.0"
roll="0.0"
pitch="0.35"
yaw="-2.6"
/>
</xacro:if>

</robot>
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
/**:
ros__parameters:
ur5_arm:
kinematics_solver: kdl_kinematics_plugin/KDLKinematicsPlugin
kinematics_solver_search_resolution: 0.005
kinematics_solver_timeout: 0.005
kinematics_solver_attempts: 3

robotiq_2f85:
kinematics_solver: kdl_kinematics_plugin/KDLKinematicsPlugin
Loading
Loading