Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adding support for CRX-10iA/L #67

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
17 changes: 17 additions & 0 deletions fanuc_crx10ia_support/CMakeLists.txt
@@ -0,0 +1,17 @@
cmake_minimum_required(VERSION 2.8.3)

project(fanuc_crx10ia_support)

find_package(catkin REQUIRED)

catkin_package()

if (CATKIN_ENABLE_TESTING)
find_package(roslaunch REQUIRED)
roslaunch_add_file_check(tests/roslaunch_test_crx10ial.xml)
endif()

install(DIRECTORY config launch meshes urdf
DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION})

install(FILES readme.md DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION})
1 change: 1 addition & 0 deletions fanuc_crx10ia_support/config/joint_names_crx10ial.yaml
@@ -0,0 +1 @@
controller_joint_names: ['joint_1', 'joint_2', 'joint_3', 'joint_4', 'joint_5', 'joint_6']
4 changes: 4 additions & 0 deletions fanuc_crx10ia_support/launch/load_crx10ial.launch
@@ -0,0 +1,4 @@
<?xml version="1.0"?>
<launch>
<param name="robot_description" command="$(find xacro)/xacro --inorder '$(find fanuc_crx10ia_support)/urdf/crx10ial.xacro'" />
</launch>
@@ -0,0 +1,25 @@
<?xml version="1.0"?>
<!--
Manipulator specific version of 'robot_interface_streaming.launch'.

Defaults provided for CRX-10iA/L:
- J23_factor = 1
- use_bswap = true
- 6 joints

Usage:
robot_interface_streaming_crx10ial.launch robot_ip:=<value>
-->
<launch>
<arg name="robot_ip" doc="IP of controller" />
<arg name="J23_factor" default="1" doc="Compensation factor for joint 2-3 coupling (-1, 0 or 1)" />
<arg name="use_bswap" default="true" doc="If true, robot driver will byte-swap all incoming and outgoing data" />

<rosparam command="load" file="$(find fanuc_crx10ia_support)/config/joint_names_crx10ial.yaml" />

<include file="$(find fanuc_driver)/launch/robot_interface_streaming.launch">
<arg name="robot_ip" value="$(arg robot_ip)" />
<arg name="J23_factor" value="$(arg J23_factor)" />
<arg name="use_bswap" value="$(arg use_bswap)" />
</include>
</launch>
32 changes: 32 additions & 0 deletions fanuc_crx10ia_support/launch/robot_state_visualize_crx10ial.launch
@@ -0,0 +1,32 @@
<?xml version="1.0"?>
<!--
Manipulator specific version of the state visualizer.

Defaults provided for CRX-10iA/L:
- J23_factor = 1
- use_bswap = true
- 6 joints

Usage:
robot_state_visualize_crx10ial.launch robot_ip:=<value>
-->
<launch>
<arg name="robot_ip" doc="IP of controller" />
<arg name="J23_factor" default="1" doc="Compensation factor for joint 2-3 coupling (-1, 0 or 1)" />
<arg name="use_bswap" default="true" doc="If true, robot driver will byte-swap all incoming and outgoing data" />

<rosparam command="load" file="$(find fanuc_crx10ia_support)/config/joint_names_crx10ial.yaml" />

<include file="$(find fanuc_driver)/launch/robot_state.launch">
<arg name="robot_ip" value="$(arg robot_ip)" />
<arg name="J23_factor" value="$(arg J23_factor)" />
<arg name="use_bswap" value="$(arg use_bswap)" />
</include>

<node name="robot_state_publisher" pkg="robot_state_publisher"
type="robot_state_publisher" />

<include file="$(find fanuc_crx10ia_support)/launch/load_crx10ial.launch" />

<node name="rviz" pkg="rviz" type="rviz" args="-d $(find industrial_robot_client)/config/robot_state_visualize.rviz" required="true" />
</launch>
9 changes: 9 additions & 0 deletions fanuc_crx10ia_support/launch/test_crx10ial.launch
@@ -0,0 +1,9 @@
<?xml version="1.0"?>
<launch>
<include file="$(find fanuc_crx10ia_support)/launch/load_crx10ial.launch" />
<node name="joint_state_publisher" pkg="joint_state_publisher" type="joint_state_publisher">
<param name="use_gui" value="true" />
</node>
<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.
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.
68 changes: 68 additions & 0 deletions fanuc_crx10ia_support/package.xml
@@ -0,0 +1,68 @@
<?xml version="1.0"?>
<?xml-model href="http://download.ros.org/schema/package_format2.xsd" schematypens="http://www.w3.org/2001/XMLSchema"?>
<package format="2">
<name>fanuc_crx10ia_support</name>
<version>0.1.0</version>
<description>
<p>
ROS-Industrial support for the Fanuc CRX-10iA (and variants).
</p>
<p>
This package contains configuration data, 3D models and launch files
for Fanuc CRX-10iA manipulators. This currently includes the /L model only.
</p>
<p><b>Specifications</b>:</p>
<ul>
<li>CRX-10iA/L - 1418mm reach</li>
gavanderhoorn marked this conversation as resolved.
Show resolved Hide resolved
</ul>
<p>
Joint limits and maximum joint velocities are based on the information in
the <em>FANUC Robot CRX-10iA, CRX-10iA/L Mechanical Unit Operator's Manual</em>
version <em>B-84194EN/01</em>. All urdfs are based on the default motion and
joint velocity limits, unless noted otherwise (ie: no support for high
speed joints, extended / limited motion ranges or other options).
</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 email="ademola.oridate@wsrobots.com">Ademola Oridate (Wilder Systems Robots)</author>
<maintainer email="g.a.vanderhoorn@tudelft.nl">G.A. vd. Hoorn (TU Delft Robotics Institute)</maintainer>
<license>BSD</license>

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

<buildtool_depend>catkin</buildtool_depend>

<test_depend>roslaunch</test_depend>

<exec_depend>fanuc_driver</exec_depend>
<exec_depend>fanuc_resources</exec_depend>
<exec_depend>industrial_robot_client</exec_depend>
<exec_depend>joint_state_publisher</exec_depend>
<exec_depend>robot_state_publisher</exec_depend>
<exec_depend>rviz</exec_depend>
<exec_depend>xacro</exec_depend>

<export>
<architecture_independent />
<rosindex>
<tags>
<tag>crx10ia</tag>
<tag>description</tag>
<tag>fanuc</tag>
<tag>industrial</tag>
<tag>ros-industrial</tag>
<tag>support_package</tag>
<tag>experimental</tag>
</tags>
</rosindex>
<ros_industrial>
<support_level value="community" />
</ros_industrial>
</export>
</package>
14 changes: 14 additions & 0 deletions fanuc_crx10ia_support/readme.md
@@ -0,0 +1,14 @@
# fanuc_crx10ia_support

## Overview

This package is part of the [ROS-Industrial][] program. See the main
[fanuc_experimental][] page on the ROS wiki for more information on usage.

## Contents

See `package.xml` for information about the contents of this package.


[ROS-Industrial]: http://wiki.ros.org/Industrial
[fanuc_experimental]: http://wiki.ros.org/fanuc_experimental
40 changes: 40 additions & 0 deletions fanuc_crx10ia_support/tests/roslaunch_test_crx10ial.xml
@@ -0,0 +1,40 @@
<?xml version="1.0"?>
<launch>
<arg name="ip_str" value="127.0.0.1" />

<group ns="load_crx10ial__">
<include file="$(find fanuc_crx10ia_support)/launch/load_crx10ial.launch"/>
</group>

<group ns="test_crx10ial__">
<include file="$(find fanuc_crx10ia_support)/launch/test_crx10ial.launch"/>
</group>

<group ns="robot_interface_streaming_crx10ial__">
<include file="$(find fanuc_crx10ia_support)/launch/robot_interface_streaming_crx10ial.launch">
<arg name="robot_ip" value="$(arg ip_str)" />
</include>
</group>

<group ns="robot_state_visualize_crx10ial__">
<include file="$(find fanuc_crx10ia_support)/launch/robot_state_visualize_crx10ial.launch">
<arg name="robot_ip" value="$(arg ip_str)" />
</include>
</group>


<!-- without bswap -->
<group ns="robot_interface_streaming_crx10ial_f__">
<include file="$(find fanuc_crx10ia_support)/launch/robot_interface_streaming_crx10ial.launch">
<arg name="robot_ip" value="$(arg ip_str)" />
<arg name="use_bswap" value="false" />
</include>
</group>

<group ns="robot_state_visualize_crx10ial_f__">
<include file="$(find fanuc_crx10ia_support)/launch/robot_state_visualize_crx10ial.launch">
<arg name="robot_ip" value="$(arg ip_str)" />
<arg name="use_bswap" value="false" />
</include>
</group>
</launch>
5 changes: 5 additions & 0 deletions fanuc_crx10ia_support/urdf/crx10ial.xacro
@@ -0,0 +1,5 @@
<?xml version="1.0" ?>
<robot name="fanuc_crx10ial" xmlns:xacro="http://wiki.ros.org/xacro">
<xacro:include filename="$(find fanuc_crx10ia_support)/urdf/crx10ial_macro.xacro"/>
<xacro:fanuc_crx10ial prefix=""/>
</robot>