Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
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
14 changes: 14 additions & 0 deletions kuka_kr270_support/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
cmake_minimum_required(VERSION 3.0.2)
project(kuka_kr270_support)

find_package(catkin REQUIRED)

catkin_package()

if (CATKIN_ENABLE_TESTING)
find_package(roslaunch REQUIRED)
roslaunch_add_file_check(test/roslaunch_test_kr270r2700.xml)
endif()

install(DIRECTORY config launch meshes urdf
DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION})
1 change: 1 addition & 0 deletions kuka_kr270_support/config/joint_names_kr270r2700.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
controller_joint_names: ['joint_a1', 'joint_a2', 'joint_a3', 'joint_a4', 'joint_a5', 'joint_a6']
3 changes: 3 additions & 0 deletions kuka_kr270_support/launch/load_kr270r2700.launch
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
<launch>
<param name="robot_description" command="$(find xacro)/xacro '$(find kuka_kr270_support)/urdf/kr270r2700.xacro'" />
</launch>
6 changes: 6 additions & 0 deletions kuka_kr270_support/launch/test_kr270r2700.launch
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
<launch>
<include file="$(find kuka_kr270_support)/launch/load_kr270r2700.launch" />
<node name="joint_state_publisher_gui" pkg="joint_state_publisher_gui" type="joint_state_publisher_gui" />
<node name="robot_state_publisher" pkg="robot_state_publisher" type="robot_state_publisher" />
<node name="rviz" pkg="rviz" type="rviz" args="-d $(find industrial_robot_client)/config/robot_state_visualize.rviz" required="true" />
</launch>
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
285 changes: 285 additions & 0 deletions kuka_kr270_support/meshes/kr270r2700/visual/base_link.dae

Large diffs are not rendered by default.

468 changes: 468 additions & 0 deletions kuka_kr270_support/meshes/kr270r2700/visual/link_1.dae

Large diffs are not rendered by default.

256 changes: 256 additions & 0 deletions kuka_kr270_support/meshes/kr270r2700/visual/link_2.dae

Large diffs are not rendered by default.

636 changes: 636 additions & 0 deletions kuka_kr270_support/meshes/kr270r2700/visual/link_3.dae

Large diffs are not rendered by default.

193 changes: 193 additions & 0 deletions kuka_kr270_support/meshes/kr270r2700/visual/link_4.dae

Large diffs are not rendered by default.

96 changes: 96 additions & 0 deletions kuka_kr270_support/meshes/kr270r2700/visual/link_5.dae

Large diffs are not rendered by default.

165 changes: 165 additions & 0 deletions kuka_kr270_support/meshes/kr270r2700/visual/link_6.dae

Large diffs are not rendered by default.

50 changes: 50 additions & 0 deletions kuka_kr270_support/package.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
<?xml version="1.0"?>
<package format="2">
<name>kuka_kr270_support</name>
<version>0.1.0</version>
<description>
<p>
ROS-Industrial support for the KUKA KR 270 (and variants).
</p>
<p>
This package contains configuration data, 3D models and launch files
for KUKA KR 270 manipulators. This currently includes the R2700 only.
</p>
<p><b>Specifications</b>:</p>
<ul>
<li>KR 270 R 2700 - Default</li>
</ul>
<p>
Joint limits and maximum joint velocities are based on the information
found in <em>KUKA KR 270 R2700 ultra </em>, version <em>version 0000-181-028 / V46.1 / 07.01.2021</em>.
All urdfs are based on the default motion and joint velocity limits,
unless noted otherwise.
</p>
<p>
Before using any of the configuration files and / or meshes included
in this package, be sure to check they are correct for the particular
robot model and configuration you intend to use them with.
</p>
</description>
<author>Jan Krieglstein (Fraunhofer IPA)</author>
<maintainer email="g.a.vanderhoorn@tudelft.nl">G.A. vd. Hoorn (TU Delft Robotics Institute)</maintainer>
<license>BSD-3-Clause</license>

<url type="website">http://wiki.ros.org/kuka_kr270_support</url>
<url type="bugtracker">https://github.com/ros-industrial/kuka_experimental/issues</url>
<url type="repository">https://github.com/ros-industrial/kuka_experimental</url>

<buildtool_depend>catkin</buildtool_depend>

<test_depend>roslaunch</test_depend>

<exec_depend>industrial_robot_client</exec_depend>
<exec_depend>joint_state_publisher_gui</exec_depend>
<exec_depend>robot_state_publisher</exec_depend>
<exec_depend>rviz</exec_depend>
<exec_depend>xacro</exec_depend>

<export>
<architecture_independent/>
</export>
</package>
9 changes: 9 additions & 0 deletions kuka_kr270_support/test/roslaunch_test_kr270r2700.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
<launch>
<group ns="load_kr270r2700__">
<include file="$(find kuka_kr270_support)/launch/load_kr270r2700.launch"/>
</group>

<group ns="test_kr270r2700__">
<include file="$(find kuka_kr270_support)/launch/test_kr270r2700.launch"/>
</group>
</launch>
5 changes: 5 additions & 0 deletions kuka_kr270_support/urdf/kr270r2700.xacro
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
<?xml version="1.0" ?>
<robot name="kuka_kr270" xmlns:xacro="http://wiki.ros.org/xacro">
<xacro:include filename="$(find kuka_kr270_support)/urdf/kr270r2700_macro.xacro"/>
<xacro:kuka_kr270r2700 prefix=""/>
</robot>
183 changes: 183 additions & 0 deletions kuka_kr270_support/urdf/kr270r2700_macro.xacro
Original file line number Diff line number Diff line change
@@ -0,0 +1,183 @@
<?xml version="1.0"?>
<robot xmlns:xacro="http://wiki.ros.org/xacro">

<xacro:macro name="kuka_kr270r2700" params="prefix">
<xacro:include filename="$(find kuka_resources)/urdf/common_materials.xacro"/>
<!-- links -->
<link name="${prefix}base_link">
<visual>
<origin xyz="0 0 0" rpy="0 0 0"/>
<geometry>
<mesh filename="package://kuka_kr270_support/meshes/kr270r2700/visual/base_link.dae"/>
</geometry>
<xacro:material_kuka_black />
</visual>
<collision>
<origin xyz="0 0 0" rpy="0 0 0"/>
<geometry>
<mesh filename="package://kuka_kr270_support/meshes/kr270r2700/collision/base_link.stl"/>
</geometry>
</collision>
</link>
<link name="${prefix}link_1">
<visual>
<origin xyz="0 0 0" rpy="0 0 0"/>
<geometry>
<mesh filename="package://kuka_kr270_support/meshes/kr270r2700/visual/link_1.dae"/>
</geometry>
<xacro:material_kuka_orange />
</visual>
<collision>
<origin xyz="0 0 0" rpy="0 0 0"/>
<geometry>
<mesh filename="package://kuka_kr270_support/meshes/kr270r2700/collision/link_1.stl"/>
</geometry>
</collision>
</link>
<link name="${prefix}link_2">
<visual>
<origin xyz="0 0 0" rpy="0 0 0"/>
<geometry>
<mesh filename="package://kuka_kr270_support/meshes/kr270r2700/visual/link_2.dae"/>
</geometry>
<xacro:material_kuka_orange />
</visual>
<collision>
<origin xyz="0 0 0" rpy="0 0 0"/>
<geometry>
<mesh filename="package://kuka_kr270_support/meshes/kr270r2700/collision/link_2.stl"/>
</geometry>
</collision>
</link>
<link name="${prefix}link_3">
<visual>
<origin xyz="0 0 0" rpy="0 0 0"/>
<geometry>
<mesh filename="package://kuka_kr270_support/meshes/kr270r2700/visual/link_3.dae"/>
</geometry>
<xacro:material_kuka_orange />
</visual>
<collision>
<origin xyz="0 0 0" rpy="0 0 0"/>
<geometry>
<mesh filename="package://kuka_kr270_support/meshes/kr270r2700/collision/link_3.stl"/>
</geometry>
</collision>
</link>
<link name="${prefix}link_4">
<visual>
<origin xyz="0 0 0" rpy="0 0 0"/>
<geometry>
<mesh filename="package://kuka_kr270_support/meshes/kr270r2700/visual/link_4.dae"/>
</geometry>
<xacro:material_kuka_orange />
</visual>
<collision>
<origin xyz="0 0 0" rpy="0 0 0"/>
<geometry>
<mesh filename="package://kuka_kr270_support/meshes/kr270r2700/collision/link_4.stl"/>
</geometry>
</collision>
</link>
<link name="${prefix}link_5">
<visual>
<origin xyz="0 0 0" rpy="0 0 0"/>
<geometry>
<mesh filename="package://kuka_kr270_support/meshes/kr270r2700/visual/link_5.dae"/>
</geometry>
<xacro:material_kuka_orange />
</visual>
<collision>
<origin xyz="0 0 0" rpy="0 0 0"/>
<geometry>
<mesh filename="package://kuka_kr270_support/meshes/kr270r2700/collision/link_5.stl"/>
</geometry>
</collision>
</link>
<link name="${prefix}link_6">
<visual>
<origin xyz="0 0 0 " rpy="0 0 0"/>
<geometry>
<mesh filename="package://kuka_kr270_support/meshes/kr270r2700/visual/link_6.dae"/>
</geometry>
<xacro:material_kuka_black />
</visual>
<collision>
<origin xyz="0 0 0" rpy="0 0 0"/>
<geometry>
<mesh filename="package://kuka_kr270_support/meshes/kr270r2700/collision/link_6.stl"/>
</geometry>
</collision>
</link>

<!-- joints -->
<joint name="${prefix}joint_a1" type="revolute">
<origin xyz="0 0 0.675" rpy="0 0 0"/>
<parent link="${prefix}base_link"/>
<child link="${prefix}link_1"/>
<axis xyz="0 0 -1"/>
<limit lower="${radians(-185)}" upper="${radians(185)}" effort="0" velocity="${radians(105)}"/>
</joint>
<joint name="${prefix}joint_a2" type="revolute">
<origin xyz="0.350 0 0" rpy="0 0 0"/>
<parent link="${prefix}link_1"/>
<child link="${prefix}link_2"/>
<axis xyz="0 1 0"/>
<limit lower="${radians(-140)}" upper="${radians(-5)}" effort="0" velocity="${radians(101)}"/>
</joint>
<joint name="${prefix}joint_a3" type="revolute">
<origin xyz="1.150 0 0" rpy="0 0 0"/>
<parent link="${prefix}link_2"/>
<child link="${prefix}link_3"/>
<axis xyz="0 1 0"/>
<limit lower="${radians(-120)}" upper="${radians(155)}" effort="0" velocity="${radians(107)}"/>
</joint>
<joint name="${prefix}joint_a4" type="revolute">
<origin xyz="1.200 0 -0.041" rpy="0 0 0"/>
<parent link="${prefix}link_3"/>
<child link="${prefix}link_4"/>
<axis xyz="-1 0 0"/>
<limit lower="${radians(-350)}" upper="${radians(350)}" effort="0" velocity="${radians(122)}"/>
</joint>
<joint name="${prefix}joint_a5" type="revolute">
<origin xyz="0 0 0" rpy="0 0 0"/>
<parent link="${prefix}link_4"/>
<child link="${prefix}link_5"/>
<axis xyz="0 1 0"/>
<limit lower="${radians(-122.5)}" upper="${radians(122.5)}" effort="0" velocity="${radians(113)}"/>
</joint>
<joint name="${prefix}joint_a6" type="revolute">
<origin xyz="0 0 0" rpy="0 0 0"/>
<parent link="${prefix}link_5"/>
<child link="${prefix}link_6"/>
<axis xyz="-1 0 0"/>
<limit lower="${radians(-350)}" upper="${radians(350)}" effort="0" velocity="${radians(175)}"/>
</joint>

<!-- ROS-Industrial 'flange' frame: attachment point for EEF models -->
<link name="${prefix}flange"/>
<joint name="${prefix}link_6-flange" type="fixed">
<parent link="${prefix}link_6"/>
<child link="${prefix}flange"/>
<origin xyz="0.240 0 0" rpy="0 0 0"/>
</joint>

<!-- ROS base_link to KUKA $ROBROOT coordinate system transform -->
<link name="${prefix}base" />
<joint name="${prefix}base_link-base" type="fixed">
<origin xyz="0 0 0" rpy="0 0 0"/>
<parent link="${prefix}base_link"/>
<child link="${prefix}base"/>
</joint>

<!-- ROS-Industrial 'tool0' frame: all-zeros tool frame -->
<!-- This frame corresponds to the $FLANGE coordinate system in KUKA KRC controllers. -->
<link name="${prefix}tool0" />
<joint name="${prefix}flange-tool0" type="fixed">
<parent link="${prefix}flange"/>
<child link="${prefix}tool0"/>
<origin xyz="0 0 0" rpy="0 ${radians(90)} 0"/>
</joint>

</xacro:macro>
</robot>