|
Package Summary
Tags | driver simple_message fanuc industrial ros-industrial KAREL R-30iA R-30iB |
Version | 0.5.0 |
License | BSD |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/ros-industrial/fanuc.git |
VCS Type | git |
VCS Version | indigo-devel |
Last Updated | 2021-01-28 |
Dev Status | DEVELOPED |
CI status | No Continuous Integration |
Released | UNRELEASED |
Tags | metapackage fanuc industrial ros-industrial cr35ia description support_package moveit cr7ia driver simple_message KAREL R-30iA R-30iB lrmate200i ikfast kinematics lrmate200ib lrmate200ic m10ia m16ib m20ia m20ib experimental m430ia m6ib m710ic m900ia m900ib r1000ia urdf xacro colour material mesh resources |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- G.A. vd. Hoorn (TU Delft Robotics Institute)
Authors
- G.A. vd. Hoorn (TU Delft Robotics Institute)
fanuc_driver
Overview
This package is part of the ROS-Industrial program. See the main fanuc page on the ROS wiki for more information on usage.
Performance
This is a minimal implementation of a ROS driver for Fanuc controllers and could be improved quite significantly. This is especially true for the motion performance, both in terms of maximum attainable robot velocity as well as in the trade-off between smoothness and accuracy (or: path / trajectory reproduction).
With the current understanding of Fanuc controller internals it would appear that the trade-off between motion smoothness and trajectory reproduction accuracy (ie: CNT
) will always be a limiting factor when not using options such as Stream Motion (J519).
Dense trajectories will cause significant slowdown of the robot leading to total path execution duration significantly exceeding the specified timestamps. Coarse trajectories will lead to inaccurate motions, but higher maximum robot velocity attained.
The current implementation (with a single point buffer and a minimum TP program to execute the motion) does not permit the controller to make use of its look-ahead functionality, which severely bottlenecks it and leads to suboptimal motion in almost all cases (in terms of velocity and continuity: the robot will still reach the commanded position(s), depending on the CNT value configured).
This driver is therefore better suited to pick-and-place type of applications (ie: discrete motions in which the goal positions are more important than the path itself) and less for applications that require accurate control over all aspects of the motion at all times (ie: continuous applications in which the path itself is as-important or more important than the final destination).
Limitations
The main limitation of this driver is in how it overrides joint velocities requested by ROS to a hard-coded value.
Users interested in using commanded joint velocity could take a look at fanuc_driver_exp, but certain limitations remain. Refer to the readme of that package for information on performance and features.
Changelog for package fanuc_driver
0.5.0 (2019-09-25)
- no changes.
- for a complete list of changes see the commit log for 0.5.0.
0.4.4 (2018-01-22)
- add custom manifest tags to make package support level explicit.
- for a complete list of changes see the commit log for 0.4.4.
0.4.3 (2017-10-14)
- update comment for Pressure Abnormal safety signal in Karel sources.
- for a complete list of changes see the commit log for 0.4.3.
0.4.2 (2017-05-22)
- add readme to explain that low-level launch files should probably not be used directly.
- increase default Karel loop rate to 42 Hz (ref: #203).
- minor: remove 'irs_in_mtn' prototype from Karel library.
- add XML schema processing instruction (#200).
- for a complete list of changes see the commit log for 0.4.2.
0.4.1 (2016-06-17)
- minor: sort install targets in build scripts.
- remove roslaunch test dependencies (#185).
- for a complete list of changes see the commit log for 0.4.1.
0.4.0 (2015-10-11)
- first Indigo release.
- upgrade manifests to package format 2 (#115).
- general cleanup of XML files (launch, manifests, roslaunch tests, xacros).
- add ROS Index tags to package manifests (#147).
- document launch file arguments (#165).
- use multi-arg install rule instead of for-loop.
- for a complete list of changes see the commit log for 0.4.0.
0.3.2 (2015-04-19)
- abort on missing J23_factor param (#152).
- add readmes to all packages (#153).
- for a complete list of changes see the commit log for 0.3.2
0.3.1 (2015-01-21)
- no changes.
- for a complete list of changes see the commit log for 0.3.1
0.3.0 (2015-01-08)
- promote experimental packages for M-10iA, M-16iB, M-20iA, M-430iA and LR Mate 200iC to main repository.
- Karel driver updates:
- explicit socket close on ABORT (#27)
- improve use of Karel built-in routines and constants (math, IO, TP keys) (#50)
- update translator directives and header documentation
- update copyright notices and Karel library versions
- introduce include dir
- include trajectory relay program status in 'motion_possible' calculation (#108)
- fixup use of underscore suffixes to convey routine & variable scope
- explicitly declare dependencies of roslaunch tests (#70).
- for a complete list of changes see the commit log for 0.3.0
0.2.0 (2014-02-19)
- first Hydro release.
- Karel driver updates:
- make all directories lowercase (#23)
- cleanup of all CMakeLists and package manifests:
- link to simple_message as well (#59)
- link against catkin_LIBRARIES (#57)
- prefix CMake targets with PROJECT_NAME (#47)
- closing keywords should have empty parenthesis (#62)
- update CMakeLists to follow Catkin CMake coding standards (#62)
- list run_depends in alphabetical order (#62)
- add missing xacro run depends (#67)
- add missing depends to support pkgs (#64)
- ArmNav and support pkgs are architecture independent.
- update model specifications with available information.
- introduction of roslaunch testing of launch files:
- prefix include elements with xacro ns (#38)
- for a complete list of changes see the commit log for 0.2.0
0.1.1 (2013-09-27)
- fixed missing dependency
0.1.0 (2013-09-16)
- initial Groovy release
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
catkin | |
roslaunch | |
industrial_robot_client |
System Dependencies
Dependant Packages
Launch files
- launch/robot_state.launch
- Wrapper launch file for the Fanuc specific robot_state node.
-
- robot_ip — IP of controller
- J23_factor — Compensation factor for joint 2-3 coupling (-1, 0 or 1)
- use_bswap — If true, driver will byte-swap all incoming and outgoing data
- launch/motion_streaming_interface.launch
- Wrapper launch file for the Fanuc specific motion streaming interface node.
-
- robot_ip — IP of controller
- J23_factor — Compensation factor for joint 2-3 coupling (-1, 0 or 1)
- use_bswap — If true, driver will byte-swap all incoming and outgoing data
- launch/robot_interface_streaming.launch
-
- robot_ip — IP of controller
- J23_factor — Compensation factor for joint 2-3 coupling (-1, 0 or 1)
- use_bswap — If true, driver will byte-swap all incoming and outgoing data
- tests/roslaunch_test.xml