ROS-Industrial Update

The ROS-Industrial team has been very busy developing new functionality that I am very excited to share with you.

ROS-Industrial Hydro Release!

We officially released a few ROS-Industrial packages about six months back, and released the final package just a couple of months ago. A brief description of the new features/updates can be found here. It's now possible to install from debians: sudo apt-get install ros-hydro-industrial-desktop. More detailed instructions can be found here. We typically lag ROS releases to ensure stability, but the switch to catkin really delayed us. It feels like we transitioned to catkin twice, first to get source builds working and then a second time to get debian builds working. Having put the port to catkin behind us, I'm confident we will do better next release.

Robot Vendor Package Support

Early ROS-Industrial development was focused on developing robot specific drivers. Some of these packages were developed from scratch, such as the Fanuc package, developed by TUDelft and others were acquired as orphaned projects. In order to ensure the continued development and maintenance of these drivers, we are reaching out to the community for help. Recently, Fraunhofer IPA has taken ownership of the Universal Robot. We appreciate the help of both TUDelft and IPA. We are actively looking for developers/maintainers for our other driver packages (if you are interested send an email to this developers list).

Google Summer of Code

We are participating in the Google Summer of Code (GSoC) under the OSRF umbrella. GSoC pays students to perform open source development. ROS-Industrial has two projects: a cartesian planner GUI plugin for MoveIt (repo) and an intuitive 3D interface for industrial painting (repo). We are very excited to be part of this awesome program and are looking forward to what our students come up with. Stay tuned for posts from our students.

Special Thanks to the Community

It's no secret that ROS-Industrial is a community effort. I'm very proud to say that ROS-Industrial receives contributions from some of the best academic, research, and commercial organizations from around the world. Our current stats have us at 24 contributors in the last year and that's not even counting those who participate in code reviews and submit issues. I can honestly say I've worked with some of the greatest developers in my career through the ROS-Industrial program.

ROS-I Training Class Curriculum Free for Public Use

The ROS-Industrial Basic Developers' Training Class curriculum was developed under funding from the ROS-Industrial Consortium to streamline the introduction of Ubuntu Linux, ROS, ROS-I, PCL, and MoveIt! to industrial automation C++ code developers who are new to ROS. The curriculum culminates with a vision-enabled pick-and-place project. The class was first developed for the ROS-Groovy version and held in June 2013. In May 2014, we updated and extended the course for ROS-Hydro.

With the approval of the ROS-I Consortium Advisory Committee, the curriculum has been made public (Creative Commons license) and linked to the ROS-I wiki. The class materials consist of presentation slides, step-by-step instructions, and source code for exercises. Each of the exercises is intended to take approximately 30 minutes to complete. The source code is now available on the ROS-I GitHub site. Links:

A Universal Pendant Could Elucidate the Interface to Industrial Robot Manipulators

A guest post by Dr. Mitch Pryor, UT Austin Nuclear and Applied Robotics Group

The ROS-Industrial Consortium Americas held its 2014 members meeting at SwRI in San Antonio, Texas on March 6th. One of the primary activities of the Consortium is to establish the technical vision and requirements for ROS-Industrial. This is done through a series of requirements gathering and analysis activities known as roadmapping. This blog provides a useful forum for sharing ideas on the proposed ROS-I roadmap and gives members a chance to succinctly present thoughts on particular topics and receive feedback from all stake holders via constructive comments. The roadmap development approach presented by Clay Flannigan (and Steve Jobs) starts with the end-user’s needs (i.e. applications). Once identified, as many were at the ROS-I spring meeting, the roadmap then pinpoints the technical gaps and puts forward an implementation plan to develop the envisioned technologies.

I want to start a discussion on what “commands” hardware must reliably execute to follow the desired trajectories and/or apply proscribed forces for a given application.  In the traditional paradigm, such commands are communicated via a teach pendant or offline programming

A teach pendant is a handheld controller that provides the primary conduit for moving the robot and recording the position locations. Traditionally, it is used to sequentially teach the EEF locations associated with a given task. This instruction method is insufficient for ROS-I to extend the advanced (i.e. advancing the autonomy or flexibility of a system) capabilities of ROS to new industrial applications. Offline programming offers more flexibility but there is no standard language or set of capabilities offered among hardware vendors. What is needed is a universal Application Program Interface (or universal API) with as much of the functionality as possible accessible via a Universal Pendant.

Traditional Dedicated Industrial Robot Teach Pendant. Source: SwRI 2011

Traditional Dedicated Industrial Robot Teach Pendant. Source: SwRI 2011

Mobile HMI: Notional Universal (i.e. interoperable) Pendant. Source link.

Mobile HMI: Notional Universal (i.e. interoperable) Pendant. Source link.

The notion of a universal pendant is not new. Toyota developed an internal unified teach pendant in 2000. Its development did more than reduce the training time for Toyota operators, it helped Toyota define the underlying capabilities that robotic vendors must provide. The Toyota unified pendant currently does not provide access to all of the capabilities envisioned by ROS-I members. If the ROS-I Consortium was to develop a similar, but more advanced device, it would help clarify and illustrate many of the API capabilities that are needed by industry.  Its development would help clarify API ambiguities and hopefully reduce the barrier to entry to much of the API functionality in an industrial setting.

What would such a teach pendant look like? What core functionality should it have? As developers, the second question is more important to answer. It certainly must provide access to the internal state of the robot (i.e. tool location, current position, current motor currents, operational status, etc.) It should be possible to modify individual joint positions as well as command joint velocities. Many advanced technologies would require access to joint torques and/or joint currents. Another useful feature would be to directly prompt a given robotic system for its mass, inertial and/or compliance parameters that are necessary in many advanced control algorithms. Remote systems should provide battery life information which is necessary to plan extended tasks. Another interesting option would be access to any internal, extensible wiring harness . One could even envision a universal messaging service for commanding hardware via existing proprietary languages. As the ROS-I Consortium develops new capabilities, such a service may become obsolete, but the universal API should not negate existing system capabilities.

Once the API is defined, it may not be possible to expose all functionality in a traditional pendant. Innovative ideas may be necessary if the full API is to be exposed. Even then certain functionality may still require writing code. The definition and scope of such an API is not trivial.  All parties (end-users, integrators, vendors, researchers, etc.) need to assist in its creation. Once developed, hardware vendors must have the right to only partially implement the proposed functionality. But our goal must be to develop an API that enables all the technologies proposed in the roadmap and make as much of the API as possible accessible to traditional (i.e. no command line!) end-users. A universal pendant would help address this and provide a mechanism for precisely illustrating and resolving ambiguities in the proposed API.

October ROS-I Consortium Americas Meeting Recap

The fall meeting of the ROS-Industrial Consortium Americas was held in conjunction with RoboBusiness on Oct. 23, 2013, in Santa Clara, California. Paul Hvass and Shaun Edwards (SwRI) provided updates about the growth of the Consortium, ongoing technical projects, and financial outlook for the Consortium. Next, there was a set of lightning talks by William Woodall (Open Source Robotics Foundation) about the status of ROS, by Sachin Chitta (SRI) about MoveIt!, and by Ulrich Reiser (Fraunhofer IPA) about the formation of the ROS-Industrial Consortium Europe. The group also considered new Focused Technical Projects (FTPs). The group deliberated about a MoveIt! FTP proposed by SRI and a Robotic Deburring FTP championed by Spirit AeroSystems. A significant achievement of the meeting was a broadening of representative end user OEMs to include aerospace, automotive, and heavy industries along with the robot OEMs and researchers. More than 30 attendees came in person or via WebEx from ABB Robotics, BMW, Boeing, Canada’s NRC, CAT, Cessna, Deere and Co., Fraunhofer IPA, HDT, LANL, NIST, OmnicO AGV, OSRF, Robotiq, Spirit AeroSystems, SRI, SwRI, Toyota, UTARI, Vetex, and Yaskawa Motoman Robotics.

NIST: RIC Americas Member of the Week

Founded in 1901 and now part of the U.S. Department of Commerce, National Institutes for Standards and Technology (NIST) is one of the nation's oldest physical science laboratories. The Next-Generation Robotics and Automation Program within the Intelligent Systems Division at NIST has many areas of research focus that overlap with capabilities being developed in ROS-Industrial: Part Grasping and Assembly, Safety of Human-Robot Systems, Robot Perception for Identifying and Locating Parts for Assembly, Robot Perception for Workspace Situational Awareness.

NIST-Logo_5.jpg

For NIST, consortia such as the RIC provide a key mechanism for engaging with industry to carry out its mission and advance robot capabilities, particularly for manufacturing applications, through consensus definition and understanding of the requirements for advanced applications.

NIST has already leveraged ROS-Industrial for two projects – An MTConnect and ROS-I Integrated Robotic Workcell and Human Tracking for automation safety. MTConnect is a standard interface for controllers of machining equipment, such as CNC mills and lathes. ROS-Industrial provides a unified software platform for industrial robots. The goal of this project was to create a software layer that will provide a generic bridge between the MTConnect and ROS-Industrial interface standards. A final demonstration consisted of an industrial robot loading raw material into a simulated CNC lathe and unloading finished product. For the second project, NIST is evaluating a prototype sensor system for the purpose of detecting and tracking humans in industrial environments. No standards exist for either measuring the performance or certifying the applicability of perception technologies for detecting and tracking people in such dynamic and unstructured environments. Reliably detecting and tracking movements of nearby workers on the factory floor is crucial to ensuring safety around ever more cooperative manufacturing automation. Future blog posts will provide more detail about the MTConnect and Human Tracker projects.