Only released in EOL distros:
Package Summary
Packages in the denso suite provide controller functionality for Denso's industrial manipulators.
ORiN (Open Robot interface for the Network) is a unified network interface for industrial robot applications and has been stably utilized in Denso's manipulators for years. Controllers in this package suite uses b-CAP, UDP-based control protocol defined in ORiN. It also has mechanism to detect faulty commands. Using b-CAP, ROS communicates to the embedded controller computer that has been achieving industry-proven reliability. The computer also has mechanism to detect faulty commands. That said as a whole the system maintains the same level of safeness with their commercial product setting.
Also, as a genuine ROS package, it enables robot application developers to access full ROS features. MoveIt! configuration package is also included for some of Denso's robots.
Core functionality
- Maintainer status: developed
- Maintainer: Ryohei Ueda <ueda AT jsk.t.u-tokyo.ac DOT jp>, Isaac Isao Saito <iisaito AT opensource-robotics.tokyo DOT jp>
- Author: Ryohei Ueda, Kei Okada <k-okada AT jsk.t.u-tokyo.ac DOT jp>
- License: BSD
- Bug / feature tracker: https://github.com/start-jsk/denso/issues
- Source: git https://github.com/start-jsk/denso.git (branch: hydro-devel)
Package Summary
Packages in the denso suite provide controller functionality for Denso's industrial manipulators.
ORiN (Open Robot interface for the Network) is a unified network interface for industrial robot applications and has been stably utilized in Denso's manipulators for years. Controllers in this package suite uses b-CAP, UDP-based control protocol defined in ORiN. It also has mechanism to detect faulty commands. Using b-CAP, ROS communicates to the embedded controller computer that has been achieving industry-proven reliability. The computer also has mechanism to detect faulty commands. That said as a whole the system maintains the same level of safeness with their commercial product setting.
Also, as a genuine ROS package, it enables robot application developers to access full ROS features. MoveIt! configuration package is also included for some of Denso's robots.
Core functionality
- Maintainer status: developed
- Maintainer: Ryohei Ueda <ueda AT jsk.t.u-tokyo.ac DOT jp>, Isaac Isao Saito <iisaito AT opensource-robotics.tokyo DOT jp>
- Author: Ryohei Ueda, Kei Okada <k-okada AT jsk.t.u-tokyo.ac DOT jp>
- License: BSD
- Bug / feature tracker: https://github.com/start-jsk/denso/issues
- Source: git https://github.com/start-jsk/denso.git (branch: indigo-devel)
Package Summary
Packages in the denso suite provide controller functionality for Denso's industrial manipulators.
ORiN (Open Robot interface for the Network) is a unified network interface for industrial robot applications and has been stably utilized in Denso's manipulators for years. Controllers in this package suite uses b-CAP, UDP-based control protocol defined in ORiN. It also has mechanism to detect faulty commands. Using b-CAP, ROS communicates to the embedded controller computer that has been achieving industry-proven reliability. The computer also has mechanism to detect faulty commands. That said as a whole the system maintains the same level of safeness with their commercial product setting.
Also, as a genuine ROS package, it enables robot application developers to access full ROS features. MoveIt! configuration package is also included for some of Denso's robots.
Core functionality
- Maintainer status: developed
- Maintainer: Ryohei Ueda <ueda AT jsk.t.u-tokyo.ac DOT jp>, TORK <dev AT opensource-robotics.tokyo DOT jp>
- Author: Ryohei Ueda, Kei Okada <k-okada AT jsk.t.u-tokyo.ac DOT jp>
- License: BSD
- Bug / feature tracker: https://github.com/start-jsk/denso/issues
- Source: git https://github.com/start-jsk/denso.git (branch: kinetic-devel)
EXPERIMENTAL: This status indicates that this software is experimental code at best. There are known issues and missing functionality. The APIs are completely unstable and likely to change. Use in production systems is not recommended. All code starts at this level. For more information see the ROS-Industrial software status page. |
Contents
NOTICE
This package should be replaced by newer denso_robot_ros package which is made and maintained by the robot vendor (DENSO) officially. 'denso' package remains for reference but may not be released in next ROS distro.
Robots using denso package
Install
On your Ubuntu machine where ROS hydro is installed:
$ sudo apt-get install ros-hydro-denso
This command will have the following packages at minimum installed:
From denso package suite: denso_controller, denso_launch, denso, vs060, vs060_moveit_config
During experimental phase
It's recommended while this package is still in the experimental status that you install the latest binary from shadow-fixed repository. If you're unsure what it is, do the following:
- Open /etc/apt/sources.list.d/ros-latest.list. If it doesn't exist, create one.
- Comment out any entries taht contain packages.ros.org
- Add these lines:
# Shadow-fixed deb http://packages.ros.org/ros-shadow-fixed/ubuntu precise main deb-src http://packages.ros.org/ros-shadow-fixed/ubuntu precise main
- Run on terminal:
$ sudo apt-get update $ sudo apt-get dist-upgrade
Remove above portion of entries once apt-get finishes.
Again, do NOT forget to roll back apt's source list by number 5 above. shadow-fixed is a testing bed and binaries stored are not yet officially released.
Latest version is, as of 12/11/2013, 0.2.5, or if you're doubtful about it (yes we can easily forget to update the wiki), check it out at build status page.
Running robots
denso_launch package wiki page shows how to run robots virtually.
Running Denso's VS060 in a simple world
First, if you run it for the first time, install prerequisite.
$ rosdep install vs060 $ ros-$YOUR_ROSDISTRO$-moveit-ros-visualization (may not be necessary)
You can run VS060 manipulator on RViz by the following:
$ roslaunch denso_launch denso_vs060_moveit_demo_simulation.launch
Then you can plan the arm's pose by using Interactive Markers, then actually move it to there by hitting Plan & Execute on MoveIt!'s RViz plugin.
You can simulate object avoidance too by placing objects in RViz. Here for example with tabletop.
Youtube example:
VS060 in iREX 2013 demo
You can run it on RViz by:
$ roslaunch vs060_moveit_config demo_simulation_cage.launch
You'll see VS060 sitting in a bit more restricted situation.
The actual robot is moving in the same but real environment:
VS060 integrated with vision (xtion)
Using Web Operator
Using rwt_moveit (package work in progress here) you can operate this robot via WebGL-enabled web browsers.
Using Cartesian Path Planner Plug-In
Cartesian Path Planner Plug-In from ROS-Industrial.
Software Design, Writing Programs
Module Relations
- Fig. (click to magnify) Software components diagram for DENSO robot.
How to write programs
See tutorial page in open_industrial_ros_controllers package.
Software architecture thoughts
As of today denso is built on top of open_industrial_ros_controllers, yet another controller package in ROS (in addition to industrial, ros_control, hrpsys to name a few) for a number of reasons. This should be considered temporary and is planned to change. Please see a summary here for a bit more detail.
Community
Ask on answers with appropriate tags eg. denso, vs060.
- If you're confident enough that the issue you're seeing is a bug, opening a ticket on the issue tracker on github (should be noted at the top of this page) is very appreciated.
Future plan
- Core controller refactoring as mentioned above.
Reference
Okada et.al (2013), "Design and Development of Open Source Contoller for Industrial Robots", 14th System Integration Division Annual Conference, Kobe, Japan (in Japanese)