An Open Framework for Additive Manufacturing

Mainstreaming Robotic Based Additive Manufacturing

Robotic additive manufacturing, sometimes called robot 3D printing, is evolving from research to applied technology with maturation of methodologies (gantry systems and robot arms) and source materials (metal powder, wire, polymer and concrete).

A conventional gantry system that layers material via a single x-y plane tool path is an established 3D printing solution for certain repeatable applications, while robotic arms can offer more complexity when layering material in multiple planes. However, to date traditional approaches for planning trajectories for 3D printing are not optimized for taking advantage of high degree of freedom (DOF) systems that include industrial manipulators.

Leveraging the advances in planning for high (DOF) robotic arm equipped solutions for complex additive manufacturing (AM) entails processes for planning and execution for both hardware and the work environment. The steps of a process are dependent upon often multiple proprietary software tools, machine vision tools, and drivers for motion planning end effectors, printer heads and media used in each 3D printing process.

ROS Additive Manufacturing

Over the years the ROS-I open source project and within the ROS-Industrial Consortium the creation of frameworks that enable new application development have become a standard approach to enable rapid extensibility from an initial developed application. After numerous conversations with end-users, other technical contributors, it seemed that there was an interest in looking at some of the capabilities within the ROS and ROS-I ecosystem to create a framework that seeks to take advantage of high Degree of Freedom systems and optimization based motion planning to bring a one stop shop in additive manufacturing planning and application.

ROS Additive Manufacturing (RAM) aims to leverage the flexibility of additive manufacturing with industrial robotic applications. While looking for an open-source ROS package to slice meshes into configurable trajectories for additive manufacturing using a Yaskawa Motoman welding robot, we have been aware of the ROS Additive Manufacturing package developed by the Institute Maupertuis in Bruz, France, and so this was used as a starting point.

The RAM package was originally built in ROS Melodic, so it was rebuilt in ROS Noetic from source. Building the application from source in Noetic was mostly straightforward. We followed the the installation instructions detailed in the Maupertuis Institute's GitLab repository. The terminal commands using pip were replaced using pip3 and all terminal commands specifying ROS Melodic were replaced with ROS Noetic. When attempting to build the package in ROS, there were clashes between Sphinx 1.7.4 and the latest version of Jinja2 (version 3.1.2 as of June 2022). An older version of Jinja2 (version 2.10.1) was installed to successfully build the package and for the software to launch.

The RAM software features an RViz GUI interface that allows the user to select various trajectory generation algorithms to create a trajectory from a given mesh or YAML file. Printing parameters such as blend radius, print speed, laser power, and material feed rate can be modified for each individual layer of the print. The parameters of the entrance and exit trajectories can also be modified to have a different print speed, print angle, print length, and approach type. The output format of the exported trajectory is a ROS bag file. For our experiment, we used a Yaskawa Motoman welding robot and we needed to post-process the results to correctly interface with the robot.

Going from Plans to Robot Motion

Motion was achieved by post-processing trajectories with a customized version of the robodk post-processor. Welding parameter files were defined on the robot's teach pendant like normal. A "User Frame" (reference system) was defined at the center of the metal plate to match the ROS environment. The robot's tool was edited to match the orientation used by ROS. This allowed us to generate robot programs without having to configure the ROS environment to match the workcell. Extra lines were added in the post-processor to start/stop welding. The program files were copied via ftp onto the controller and executed natively as Linear moves.

This hybrid ROS/robot controller set up allowed us to quickly set up this demonstration. The output of the tool is a list of cartesian poses. The post-processor converted these to linear moves in the robot's native format. The robot did the work of moving in lines at a set velocity; there was no reason to do additional planning or create joint trajectories. The robodk_postprocessors package available on Github has not been maintained or updated in some time. Numerous bugs exist and these needed work arounds.

Existing ROS drivers are focused entirely on joint trajectories. A different approach that would allow streaming of robot programs would be beneficial, and this is part of future work to be proposed.

Below are two screenshots from the software for trajectories produced for a star and a rectangle with rounded corners. These shapes were included within the software as YAML files. The Contour generation algorithm was used with a 2.5 mm layer height and a 5.0 mm deposited material width for both shapes . The star shown below had three layers and the rounded rectangle had five layers. All other parameters were left to their default values.

Creation of a star shape set of tool paths via the RAM GUI.

Creation of a rounded corner rectangle within the RAM GUI.

As seen in the video below, the GUI interface provided a convenient and intuitive way to modify trajectory and print parameters. Paired with our post-processor, sending completed trajectories to the robot hardware was efficient.

Screen capture of process within RAM software. After clicking "generate trajectory", the post processor saves the output into a JBI file which is transferred to the robot via FileZilla.

Test samples were made on a test platform provided by Yaskawa Motoman over the 2022 summer period. As can be seen in initial test samples and more complete builds, the application was able to make adjustments to motion profiles and weld settings, including more advanced waveforms such as Miller Electric’s Regulated Metal Deposition (RMD) process.

Figures Above: In-Process and completed RAM generated tool path sets executed on the Yaskawa testbed system.

To streamline the process of building the RAM package from source, the documentation should be updated to detail the process of building in ROS Noetic instead of ROS Melodic. Additionally, the documentation does not show how to interface and post-process the exported trajectories to work with robotic hardware. Although this is beyond the intended scope of the RAM software project, this would improve the utilization of this software for industrial applications. The documentation for the package is currently in French. An English translation of the documentation would would make understanding the adjustable parameters within the software easier for English speakers.

Future work seeks to incorporate the ability to fit/apply the generated tool paths fit to an arbitrarily contoured surface within the actual environment, much like is done in the various Scan-N-Plan processes for surface processing currently available within the ROS-I ecosystem, thus being able to do additional intermediate inspection and processing as the build progresses, or update build based on perception/machine vision data.

Furthermore, implementing with a new driver approach that enables more efficient tool path to trajectory streaming would improve the usability and interfacing with the hardware. Implementations of various algorithms to ensure as consistent profile/acceleration control to manage sharp transitions would also be beneficial and may be implemented through optimization-based planners such as TrajOpt. Porting to ROS 2 would also be in scope.

A ROS-Industrial Consortium Focused Technical Project proposal is in the works that seeks to address these issues and offer a complete open source framework for facilitating flexible additive manufacturing process planning and execution for high degree of freedom systems. Special thanks to Yaskawa Motoman for making available the robotic welding platform, and thanks to Doug Smith at Southwest Research Institute for working out the interaction between the RAM package and the robotic system.

Editor Note: Additional thanks to David Spielman, an intern this summer at Southwest Research Institute. This work would not have been possible without his diving into the prior RAM repository and getting everything ready relative to testing.

Documentation updates improve ROS utilization and functionality

Lessons from UR driver updates reinforce importance of documentation

A key strength of the open-source community is the capacity to build on the knowledge of other developers who enable future advancements. Documentation plays a critical role in advancing understanding, which improves ROS utilization globally. This will be increasingly important as we move from ROS to ROS2 and document the various steps, including driver updates, necessary to execute projects.

Recent driver updates for a Universal Robots project helped demonstrate the importance of documentation to our team. In July 2019, Universal Robots updated their software for e-series and CB-series to 5.4 and 3.10. We were using the 5.4 software on UR 10e robots for a few different projects, and the ur_modern_driver [1] for ROS kinetic and melodic was no longer compatible due to this update. I updated the driver by investigating the release notes for 5.4.x.x [2] and the client_interface document [3].

UR10 E-series in the SwRI collaborative lab

To update the ROS driver for compatibility with software updates, I first identified what changes occurred and located appropriate software documentation for the hardware. The software documentation defined modules and variable types for the changes, which allowed for comparison with equivalent variables and modules in the current driver code. Without proper documentation from Universal Robots this would have been a much more difficult endeavor.

The ur_modern_driver specifically interacts with the client interface. Two variables were added to the 5.4 software client interface: a reserved byte in the Masterboard data sub package of Robot State Message to be used for internal UR use and a safety status value to the real time interface. The client interface document gave the types and sizes of these variables along with variables used in previous software versions.

The client interface for 5.3 and earlier had an internal UR int in Robot Mode Data I could compare to, and the safety status value could be compared to any of the other double variables in the previous driver’s RealTime interface. I used the search feature in QTCreator to find instances of these variables and added equivalent lines for the new ones. Then I used QTCreator’s debugger to track where new if statements and functions needed to be added to allow the driver to detect the new software version being used and access these new variables.

Working on this upgrade reinforced the necessity of good documentation. In general, the ur_modern_driver had more detailed documentation than many other ROS repos; however, it could still be improved. The README had no mention of the purpose of the use_lowbandwidth_trajectory_follower parameter in the launch files or the urXXe_bringup_joint_limited.launch file; both of these are useful when simulations are being overenthusiastic in their trajectory planning. I added documentation to the README to help others use these features to troubleshoot.

To update drivers, you will need to know what has been changed in the software, and you will ideally have access to a previous version of the driver. Because industrial hardware is intended to be reliable and accessible for multiple clients, there is often plenty of useful documentation if you can search with the correct terminology. Using the known changes and the documentation to compare with the previous driver code allowed me to update the driver fairly quickly so projects could move forward.

1https://github.com/ros-industrial/ur_modern_driver

2https://www.universal-robots.com/how-tos-and-faqs/faq/ur-faq/release-note-software-version-54xx/

3https://www.universal-robots.com/how-tos-and-faqs/how-to/ur-how-tos/remote-control-via-tcpip-16496/

Highlights from ICRA relevant to ROS & ROS-Industrial

icra-2019.png

The International Conference on Robotics and Automation, commonly known as ICRA, is one of the premier global events for showcasing the latest and greatest results in robotics research. This year ICRA was held in Montreal, Canada, back in North America for the first time since Seattle in 2015.

ICRA is largely a forum for academic research labs to showcase their most recent results, which aim to be exploratory and forward-looking rather than off-the-shelf solutions ready for immediate adoption into industry. Nevertheless, there was still quite a bit of noteworthy technology and results on display. It was very impressive to see the huge variety of areas that researchers are exploring within robotics and the large amount of creativity on display in new approaches and algorithms.

The scale of ICRA was enormous this year, with over 1,200 papers presented over the course of the three-day conference. Along with the plenary sessions, keynote talks, and industry exhibitions, there was far too much to see and do. With such a high volume of content, a classic conference format of multiple tracks where each author presents to a sitting audience was simply not possible. Instead, the organizers opted for an interesting alternative of interactive presentations where the authors stood by a poster describing their work and conference attendees were free to spend as much time as they wanted discussing the work with the author. The new twist that I hadn’t seen before was that all presentations took place in the same large exhibition hall simultaneously, in sessions that each contained about 130-150 posters. The posters were spread throughout the hall on the outside of free-standing structures that had partitioned spaces for each poster, which were called the PODS. The PODS all being colocated in a single room created a very casual atmosphere with a lot of exploration and discussion with the paper authors.

USC.JPG

Photo courtesy of Rishi Malhan, University of Southern California

To conclude, I wanted to highlight a few contributions that are interesting for the use of ROS or for connections to ROS-Industrial. Definitely keep an eye out for these papers to appear on IEEE Xplore soon and take a look!

Reinforcement Learning on Variable Impedance Controller for High-Precision Robotic Assembly

Jianlan Luo, Eugen Solowjow, Chengtao Wen, Juan Aparicio Ojea, Alice Agogino, Aviv Tamar, Pieter Abbeel

Here the authors address the problem of autonomous and intelligent robotic assembly, and had presented this work at the most recent ROS-Industrial annual meeting. They use a Rethink Robotics Sawyer robot (which is controlled through ROS) to perform precision assembly of a set of gears using reinforcement learning and neural networks. The core idea is that successful completion of assembly tasks requires knowledge about the types of contacts and constraints involved, such as aligning a peg with the axis of a hole before it can be inserted. Rather than having the system designer spend time and effort providing manual descriptions of these constraints, their method allows them to be learned directly from the robot’s experience. As can be seen in the video below, the robot is able to quickly learn how to deal with a number of different contacts when performing multiple different assembly tasks. This is a great demonstration of bringing machine learning into robot behaviors for industrial tasks and it will be fascinating to see how this area develops in the near future.

Assembly Video

CartesI/O: A ROS Based Real-Time Capable Cartesian Control Framework

Arturo Laurenzi, Enrico Mingo, Luca Muratore, Nikos Tsagarakis

In work that follows their participation in the DARPA Robotics Challenge, the authors introduce a framework for performing real-time Cartesian control of platforms with many degrees-of-freedom within a ROS system. The framework is designed to support having the controller solver run inside the real-time control loop so that the robot can react immediately to any change in the desired input. Each Cartesian controller is specific to a particular platform and particular task, but the authors provide interface layers to abstract away much of common logic that would have to be repeatedly implemented in different implementations. By supporting the ROS URDF format, constraints or desired behaviors can be specified for links. Furthermore, each task will have an auto-generated ROS API available that enables very high level input about the task goals and provides information about the current task status. This allows a user to perform basic scripting of robot behaviors using something a simple as a short Python script, for example. This framework can be seen driving the 28 DoF COMAN+ humanoid and the 39 DoF CENTAURO quadruped robots in the video below.

CartesI/O Video

MoveIt! Task Constructor for Task-Level Motion Planning

Michael Görner, Robert Haschke, Helge Joachim Ritter, Jianwei Zhang

Here the authors provide a software tool and framework for extending MoveIt to more naturally handle planning of entire robot tasks. For nontrivial tasks, the overall robot motion is typically broken into multiple distinct pieces, each of which has its own set of planning challenges. For example, when performing a pick-and-place task, the robot has to separately create plans for approaching the object, grasping it, moving the object to the place area, and releasing it at the place point. The authors formalize a framework for each of these stages and how each one may depend on others. For example, the grasp selection will affect where the manipulator should move to at both the pick and place positions. The framework is arbitrarily scalable and allows system designers to create descriptions of entire tasks that MoveIt can solve with relative ease. The authors have open-sourced the software on GitHub (https://github.com/ros-planning/moveit_task_constructor) and are hopeful the framework will go on to become a central tool for task planning using MoveIt.

Moveit.JPG

Planning a pouring task with displays for how the robot picks up the bottle (center), creates the pouring motion (left), and places it back on the table (right)

Field notes from Automate 2019, and why we’re bullish on ROS2

What makes a good industrial automation demonstration? When we started preparing for Automate 2019 back in January, a few key points came to mind. Our specialty in SwRI’s Manufacturing and Robotics Technology Department is advanced robotic perception and planning, so we decided that the robot should perform an authentic dynamic scan-and-plan process on a previously-unseen scene – as far away as we could get from a “canned” demo. We also wanted the demo to be an interactive experience to help drive discussion with visitors and entertain onlookers. These goals led us to the tube threading concept: a human would bend a piece of shiny metal tubing into a novel shape, and the robot would perceive it and plan a path to sweep a ring along it.

Michael Ripperger & Joseph Schornak on location at Automate 2019

Michael Ripperger & Joseph Schornak on location at Automate 2019

Developing a demo system presents an opportunity to explore new ideas in a low-risk environment because the schedule and deliverables are primarily internally-motivated. Since my group had limited previous exposure to ROS2, we decided that our Automate demo should use ROS2 to the greatest possible extent. The original vision was that the system would be entirely composed of ROS2 nodes. However, due to the practical requirements of getting everything working before the ship date, we decided to use a joint ROS/ROS2 environment, with ROS motion planning and the GUI nodes communicating with the ROS2 perception nodes across the ROS-to-ROS2 bridge

ROS2 Strengths and Challenges

In contrast to virtually every other robotics project I’ve worked on, the demo system’s perception pipeline worked consistently and reliably. Intel maintains a ROS2 driver for Realsense RGB-D cameras, which allowed us to use the D435 camera without any customization or extra development. Our YAK surface reconstruction library based on the Truncated Signed Distance Field algorithm helped us avoid the interreflection issues that would usually plague perception of shiny surfaces. After a couple afternoons spent learning how to use new-to-me VTK libraries, the mesh-to-waypoint postprocessor could consistently convert tube scans into trajectory waypoints. More information about this software is available from the SwRI press release or the writeup in Manufacturing Automation.

Block Diagram of SwRI ROS-I Automate 2019 Demonstration

Block Diagram of SwRI ROS-I Automate 2019 Demonstration

Motion planning turned out to be a particularly challenging problem. Compared to a traditional robot motion task like pick-and-place, which involves planning unconstrained paths through open space, the kinematic constraints of the tube threading problem are rather bizarre. While the ring tool is axially underconstrained and can be rotated freely to the most convenient orientation, it is critical that it remain aligned with the axis of the tube to avoid collision. It’s impossible to flip the ring once it’s over the tube, so if the chosen ring orientation causes the robot to encounter a joint limit halfway down the tube, tough luck! Additionally, the robot must avoid collision between the tube and robot hardware during motion. Our initial solution used Trajopt by itself, but it would sometimes introduce unallowable joint flips since it tried to optimize every path waypoint at once without a globally-optimal perspective on how best to transition between those waypoints. We added the Descartes sampling algorithm, which addressed these issues by populating Trajopt’s seed trajectory with an approximate globally-optimal path that satisfied these kinematic and collision constraints. Planning still failed occasionally: even with a kinematically-redundant Kuka iiwa7 arm, solving paths for certain tube configurations simply wasn’t feasible[^1].

TrajOpt Path Planning Implementation & Testing

TrajOpt Path Planning Implementation & Testing

[^1]: The extent of solvable tube configurations could be greatly increased by including the turntable as a controllable motion axis. Given the constraints of the iiwa7’s ROS driver, we decided that this would be, in technical software terms, a whole other can of worms.

We shipped the robot hardware about a week in advance of the exhibit setup deadline. Our reliance on ROS meant we could switch to simulation with minimal hassle, but there were some lingering issues with the controller-side software that had to wait until we were reunited with the robot the Saturday before the show[^2]. This contributed to moderate anxiety on Sunday evening as we worked to debug the system using real-world data. We had to cut some fun peripherals due to time constraints, such as the handheld ring wand that would let visitors race the robot. By Tuesday morning the robot was running consistently, provided we didn’t ask it to solve paths for too-complicated tubes. This freed up some time for me to walk the halls away from our booth and talk to other exhibitors and visitors.

[^2]: Our lunch upon arrival was Chicago-style deep dish pizza, which conveniently doubled as dinner that evening.

More Collaborative Robots

There were collaborative robots of all shapes and sizes on display from many manufacturers. I may have seen nearly the same number of collaborative robots as traditional ones! A handful were programmed to interact with visitors, offering lanyards and other branded largesse to passersby. Most of them were doing “normal robot things,” albeit intermingled with crowds of visitors without any cages of barriers, and generally at a much more sedate pace compared to the traditional robots. Some of the non-collaborative robots were demonstrating safety sensors that let them slow down and stop as visitors approached them -- I usually discovered these by triggering them accidentally.

I was surprised by the number of autonomous forklifts and pallet transporters. I’m told that there were more in 2019 than at previous shows, so I’m curious about what recent developments drove growth in this space.

I learned that ROS-Industrial has significant brand recognition. I got pulled into several conversations solely because I was wearing a ROS-I polo! Many of these discussions turned to ROS2, which produced some interesting insights. Your average roboticist-on-the-street is aware of ROS2 (no doubt having read about it on this very blog), but their understanding of its capabilities and current condition might be rather fuzzy. Many weren’t sure how to describe the key differences between ROS and ROS2, and a few weren’t even aware that ROS2 has been out in the wild for three versions! I’ll unscientifically hypothesize that a key challenge blocking wider ROS2 adoption is the lack of demonstrated success on high-visibility projects. Our demo drove some good conversation to alleviate these concerns: I could show a publicly-visible robotic system heavily reliant on ROS2 and point to the open-source native ROS2 device drivers that let it function.

Showcasing Perception and Planning Potential

In terms of demo reception, people who visited our booth were impressed that we were scanning and running trajectories on previously-unseen parts. I usually had to provide additional context to show how our perception and planning pipeline could be extended to other kinds of industrial applications. There’s a tricky balance at play here – an overly abstract demo requires some imagination on the part of the viewer to connect it to an industrial use case, but a highly application-specific demo isn’t easily generalized beyond the task at hand. Since our group specializes in application-generic robot perception and planning, I think that a demo tending towards the abstract better showcases our areas of proficiency. This is a drastically different focus from other exhibits at the show, which generally advertised a specific automation process or turnkey product. I feel like we successfully reached our target audience of people with difficult automation tasks not addressed by off-the-shelf solutions.

Development of the Industrial YAK reconstruction for the Automate Demo in ROS2

Development of the Industrial YAK reconstruction for the Automate Demo in ROS2

While it certainly would have been easier to adapt an already-polished system to serve as a show demo, developing a completely new one from scratch was way more fun. Improvements made to our perception and planning software were pushed back upstream and rolled into other ongoing projects. We’re now much more comfortable with ROS2, to the extent that we’ve decided that from here on out new robotics projects will be developed using ROS2. The show was a lot of fun, a great time was had by all, and I hope to see you at Automate 2021!

ROS-Industrial Americas 2018 Annual Meeting Review

The ROS-Industrial Consortium Americas (RICA) held its 2018 Annual Meeting in San Antonio, on the campus of Southwest Research Institute (SwRI) on March 7th and 8th, 2018. This was a two-day event, with the 7th open to the public, including tours and demonstrations, followed by Consortium Members meeting on the 8th with a road-mapping exercise and project idea brainstorming.

This was the first time that RICA held the event over two full days. Also, this was the most well attended event, topping out over 80 people on the 7th. There were talks spanning from the more strategic/visionary to the technical with regards to open-source robotics application development. This provides an excellent cross-section of the technical development community and organization decision makers to share ideas and cross-pollinate taking back what they learned to their organizations.

The morning of the 7th featured:

  • SwRI Introduction - Paul Evans - SwRI
  • ROS-I Consortium/Introduction - Matt Robinson - SwRI
  • Manufacturing in Mixed Reality - Dr. Aditya Das - UTARI
  • Discussion on the Design of a Multiuse Workcell and Incorporation of the Descartes Package - Christina Petlowany - UT Austin Nuclear Robotics Group
  • Integrating ROS into NASA Space Exploration Missions - Dustin Gooding - NASA

The talks touched on a mix of how humans can interact with the technological solutions and also the need for solutions that can work within environments originally designed for people. The common thread is enabling humans and robots to work more efficiently within the same spaces, and leveraging the same tools.

Rick Meyers of the ARM Institute & Air Force Research Laboratory, during the lunchtime keynote, discussed the vision and motivations of Air Force ManTech to drive advancements in automation and robotics in the manufacturing environment. This tied into the motivation of the Advanced Automation for Agile Aerospace Applications (A5) program, and how ROS ties into the realization of the Air Force ManTech vision.

The tours and demonstrations included many different applications, all with either ROS/ROS-Industrial element, though in some cases complimentary. ADLINK Neuron focused on coordinated mobile robots and a means to assist their industrial partners to easily transition to the ROS2 environment and provide consulting services for DDS implementation and ROS-related algorithm development.

KEBA demonstrated their new ROS RMI interface integrated into their controller, while UTARI demonstrated Manufacturing in Mixed Reality implemented through the Microsoft HoloLens, allowing users to fuse process guidelines, real-time inspection data, and cross reference information to determine adaptive measures and project outcomes.

SwRI and the ROS-I team demonstrated an example of merging SwRI’s Human Performance Initiative’s Markerless Motion Capture combined with path planning to retrieve an object from an open grasp. SwRI’s Applied Sensing Department showcased their Class 8 truck enabling all attendees to go for a ride, while gaining insights to the vehicle’s capabilities. The ROS-I team at SwRI also presented Robotic Blending Milestone 4, Intelligent Part Reconstruction, with TSDF implementation, and Trajopt, a newly fully-integrated into ROS sequential convex optimizer. The UT Austin Nuclear Robotics Group demonstrated their improved situational awareness for mobile manipulation on their Husky platform where users could “drive” the system to pick up a presented object.

Finally, the SwRI team presented and demonstrated the A5 platform, which is a mobile manipulation platform designed to perform numerous processes on large aircraft in an unstructured setting. The process demonstrated was sanding of a test panel overhead. Overviews of the localization and planning on the visualization were included.

Talks for the afternoon centered around OEM and Integration service providers, and included:

  • ADLINK Neuron: An industrial oriented ROS2-based platform - Hao-Chih Lin - ADLINK
  • Unique ROS Combination with Safety and PLC - Thomas Linde - KEBA
  • Leveraging ROS-Industrial to Deliver Customer Value - Joe Zoghzoghy - Bastian Solutions

This set of talks brought home innovations by the OEM and service provider communities. Bastian Solutions’ story of concept via working with the ROS-Industrial team, through pilot and into production, demonstrated a real value proposition for mobile solution, and broader ROS-enabled, development for the integrator community.

The morning of the 8th featured:

  • RIC-Americas Highlights and Upcoming Events - Matt Robinson & Levi Armstrong - SwRI
  • RIC-Europe Highlights & ROSiN Update - Mirko Bordignon - Fraunhofer IPA
  • ROS-Industrial Lessons from Bootstrapping in Asia Pacific - Min Ling Chan - ARTC
  • ROS2 is Here - Dirk Thomas - Open Robotics
  • ARM Institute Introduction & Update - Bob Grabowski - ARM Institute
  • Windows IoT & Robotics - Lou Amadio - Microsoft

Matt Robinson covered strategic initiatives for the Consortium followed by Levi Armstrong covering RICA technical developments, including TrajOpt and Intelligent Part Reconstruction, Noether, PCL Afront Mesher, and Qt Creator updates and upcoming release.

Mirko Bordignon highlighted for the Americas audience what is happening around the ROSIN initiative, driving awareness, and furthering the global nature of ROS-I. Min Ling Chan shared progress within the Asia-Pacific region and the progress and status of the Pack ML Focused Technical Project, which has a Phase 2 launch coming soon.

Dirk Thomas of Open Robotics presented the latest on ROS2, and for the first time we were happy to welcome Bob Grabowski of the ARM Institute. The ARM Institute is the newest DoD Manufacturing Innovation Institute, and this is the first Annual Meeting since the Institute’s launch. Synergies between the ARM Institute and ROS-I will be important to monitor moving forward.

The morning session concluded when the Windows IoT and Azure teams were represented respectively by Lou Amadio and Ryan Pedersen, presenting their current strategy for ROS support and their plans moving forward, particularly for ROS2.

The featured keynote was presented by Dr. Phil Freeman of Boeing, “Why Boeing is Using ROS-Industrial.” Phil offered great insights to the value of ROS-Industrial for Boeing, and what it has enabled for their operations in the context of the challenges Boeing faces. The talk featured example applications and conveyed the message that within the robotics space we truly are at a tipping point with regards to capability and accessibility.

A road-mapping session was then conducted, focusing on problems to solve. The idea is to tie problems to projects and then identify the capabilities that need to be developed to meet certain prioritized problems. The problem focus areas were Human Capability, Quality Processes and Execution, Flexibility/Agility, and Strategy/Alignment. Common themes were: standard interfaces, documentation, ROS2 for Industrial applications, ownership and community engagement, simpler recovery means, and real-time diagnostics.

The afternoon speaker session touched on technologies that seek to enable richer and more reliable networking and data sharing/management through the application development/implementation process, and across the value stream:

Now that the dust has settled, these are some observations from this seat:

  1. ROS-Industrial is a big tent, and is truly global. Each Consortium needs to optimize how it works within their region to meet their member needs and optimally leverage resources available to them.
  2. As regional resources are optimized, the other consortia need to monitor developments, share information and ensure that all within the broader ROS-I organization are aware what is in-flight, what development activities are happening where, to reduce/eliminate redundant efforts.
  3. ROS2 is here, but there is work to do. It will be important to monitor developments and foster awareness to enable developers, solution providers, and end users to leverage ROS2 capability to complement their end solutions when and where appropriate.
  4. There are a number of innovators, solution providers, and end users realizing value proposition on ROS/ROS-Industrial deployments TODAY, and in some cases for some time. Let’s socialize and share their success stories.
  5. Foster both membership engagement and community engagement in the vision and execution of the vision for ROS-Industrial. We are excited to both enable start-ups to engage, but also improve how we leverage our University partners. Through effective projects, sponsorships, or roles within the ROS-I organizational structure, these all help foster a sense of community and subsequent ownership.
  6. There is an inflection point or tipping point, and for advanced robotics this seems to be an appropriate time. The idea also, that ROS can span beyond just the robotic processes, but do more to enable more intelligent processing via leveraging IoT, enable leverage of advanced technologies for further end user value seems to be gaining steam.
  7. We advance ROS-Industrial together. Engage, participate, communicate, and we succeed together.

As always, we are looking forward to feedback on the event and how to improve this event and events moving forward. We are looking forward to bringing back the online quarterly membership meetings, so keep an eye on that, as coordination and the invites are hosted on a rotational basis by the three Consortium managers. ROS-Industrial is an open-source project, and with that we seek to be open, and a be that forum for sharing ideas, and solving problems for industry in the 21st century.

Public day presentations can be found on the Event Page within the agenda after each speaker line item. Member day presentations are included behind the member portal, and are available for download.

Thanks for your support of open-source automation for industry!

Part 1, Updates and New Strategic Initiatives for the ROS-Industrial Consortium Americas

Recently ROS-Industrial Consortium Americas Leadership, along with review, and consultation, with the global ROS-Industrial leadership, presented to the Americas Consortium Advisory Council a number of proposed changes to the agreement, this post is a summary of the most meaningful changes and initiatives.

Read More

ROS-Industrial Migration to Discourse

Today, February 14th, we notified the ROS-I users Google Group, about an upcoming transition to Discourse on March 1. I have included the letter below that was provided to the Google Group members. We are excited to be part of the ecosystem over at Discourse and hope that it drives improved collaboration, synergy, and interaction with the broader ROS Community.

We look forward to this transition, but of course with any change, there can be problems. Please feel free to comment below, or reach out directly if you have questions and/or concerns.

Discourse.JPG

“In recent years there has been a migration, related to ROS/ROS-related discussions, Q&A, and collaboration to ROS Discourse (discourse.ros.org). At ROS-Industrial we see this year as the time to move over to Discourse as well, and retire the ROS-I Google Group, swri-ros-pkg-dev. This obviously does not come without some consideration and a migration plan. The target date for the transition is March 1. The content that is currently within the forum over at the Google Group will be kept available for reference, as read-only, and inquiries to swri-ros-pkg will be met with an automatic reply to direct inquiries to the ROS-Industrial Discourse category.

For users the move to Discourse should be quite convenient and efficient. Accounts from GitHub, or Google, may be used, so no new accounts will be needed in those cases.

We hope that this change is welcomed as it drives synergy with the broader ROS community, and allows for a true “one stop” in discussion and collaboration on all things ROS. To start there will be an ‘ROS-Industrial’ category, with subcategories developed when traffic merits the creation of subcategories.

We would like to thank our friends over at Open Robotics for helping us out with this change.”

Robotic Product Singulation Testbed

We are excited to post our 50th ROS-I video: Robotic Product Singulation Testbed. This project was demonstrated during the Annual Meeting and is a collaborative development between ABB and SwRI to create a commercial product for warehouse automation. It highlights that, with some optimization, ROS-I applications can exhibit fast cycle times, without sacrificing the intelligence afforded by ROS. A scale demonstration of this technology will be on display next week at MODEX 2016, booth MA 957 (Baldor/ABB).

NIST/SwRI Collaborate on Open Source Software for Robotic Assembly

Over the past 6 months, the SwRI ROS-Industrial team has been executing a Cooperative Research program with the National Institute of Standards and Technology (NIST). From a manufacturing perspective, NIST’s impact is quite diverse. It includes aspects from general process improvement to specific manufacturing processes like nano-manufacturing, and of course robotics.

A core theme of the NIST-supported ROS-Industrial program is agility. That is the ability of manufacturing systems to perform a diverse set of tasks, with the built in intelligence to re-task on the fly. Agility is the perhaps the greatest unrealized promise of robotics. With the support of NIST, it is this valuable and critical aspect of robotics that ROS-Industrial aims to enable. The research effort is broken down into several sub-tasks, outline below. The tasks vary, some with immediate impact and others with more long term goals. However, they all have the common theme of enabling robotic agility.

Robot Testing and Evaluation

Testing and evaluation (T&E) are very important for both measuring and comparing the performance of complex systems. Prior collaborative work was focused on test methods for Response Robots (think robots climbing around piles of rubble). Through these efforts a standard test-suite for response robots was developed. This test-suite demonstrably pushed the state of the art in response robots. With the goal in mind of measuring and pushing the state of the art in robotic agility, SwRI is developing test methods for evaluating robots for complex tasks, such as assembly.

Peg-in-hole assembly test fixture is used to evaluate the ability of a complete robot system to perform this operations.  Metrics including, success rates, and speed of insertion are capture in order to perform meaningful comparisons between sy…

Peg-in-hole assembly test fixture is used to evaluate the ability of a complete robot system to perform this operations.  Metrics including, success rates, and speed of insertion are capture in order to perform meaningful comparisons between systems.

Dual Arm Manipulator Development

Dual arm manipulation is an exciting area of research. Such systems mimic human operations, giving robotic systems the ability to both hold an object with one arm and perform an operation with the other. With NIST support, SwRI researchers have developed ROS-Industrial Hilgendorf support software for the robot configuration shown below. The support software was open sourced to jump start dual arm manipulation research on similar setups. The Hilgendorf system configuration can be easily assembled from off the shelf components. ROS-I researchers will utilize Hilgendorf for developing dual arm applications.

A dual arm manipulator built from two UR5s and two Robotiq grippers was built.  The system allows researchers to experiment with various assembly T&E tasks.

A dual arm manipulator built from two UR5s and two Robotiq grippers was built.  The system allows researchers to experiment with various assembly T&E tasks.

Calibration Library Improvements

The ROS-Industrial Calibration Library is a powerful tool for calibrating frame transformations between multiple robots and sensors. Improvements have been made to this library to make the data collection and calibration steps more streamlined. An additional goal of this effort was to evaluate the accuracy of a system calibrated with our library. System evaluation is a key part of the NIST mission. An example system with a network consisting of 6 cameras was calibrated with the ROS-Industrial Calibration Library using a target held by a UR10 robot. The system demonstrated pose variance for each camera better than 1/4 mm and 1/10th degree.

The observations and camera pose geometry were used to predict the localization accuracy of the camera network. 

The observations and camera pose geometry were used to predict the localization accuracy of the camera network. 

The accuracy map is a slice of the working volume 0.4 meters above the table.

The accuracy map is a slice of the working volume 0.4 meters above the table.

Ontologies for Agile Planning in Manufacturing

Past (and present) robotic automation is primarily used in high volume/low variation production applications, with the acceptations being driven by safety and environmental conditions. The obstacle that steers automation away from low volume/high variation production applications is the effort associated with teaching each part. The interest is to develop an ontology structure to represent the assembly process in a way that automated planning and assembly tasks can be executed. Current literature approaches the problem in a similar way to how a child learns to perform new task. There is a low level skill set (refer to the figure below) that needs to be taught, that then can be used to complete complicated tasks. The challenge is to formulate the skill primitives in such a way that they are robot independent and have the capability to store all information necessary for the robot to execute them efficiently. In the long term, such an ontology could enable highly dynamic and generic functionality within ROS-Industrial.

Skill primitive library

Skill primitive library

Descartes Joint Trajectory Planner for Semi-Constrained Cartesian Paths

This grant also supported development of the Descartes Path Planner. Please refer to our previous post for a description and video of Descartes.

Acknowledgements

This work was conducted under NIST contract #70NANB14H226.

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:

2nd ROS-Industrial EU Conference and RIC-EU Kick-Off

A post by Ulrich Reiser and Florian Weisshardt, Fraunhofer IPA

The ROS-I community is cordially invited to the following events:

 =============================================================
ROS-Industrial Conference and Consortium Europe kick-off
=============================================================
at Fraunhofer IPA, Stuttgart, Germany
 
June 26: ROS-Industrial conference (public)
June 27: ROS-Industrial Consortium Europe Kick-Off (restricted to RIC-EU members)
 
Conference Objectives
---------------------------
The objective of the ROS-Industrial conference is to bring together representatives from academia and industry to exchange experiences on application development with ROS and clarify the needs of industry with respect to ROS-Industrial. The participants have the opportunity to obtain most recent information on current activities, already achieved results and future goals of the ROS-Industrial community.
 
Conference Topics:
------------------------
– Developments, trends, technologies in the ROS-Industrial community
– Examples of successful transfer of ROS components established in research into industrial applications
– Current ROS-Industrial Projects (hosted by the ROS-Industrial Consortium)
 
Target Audience
--------------------
The conference addresses in particular system integrators that aim at providing flexible, economic and manufacturer independent automation solutions, ROS-Industrial developers in research and industry, executive personal of small and medium enterprises as well as R&D divisions of larger companies in the field of automation, logistics and production.
 
Speakers
------------
-    Urko Esnaola, Tecnalia
-    Andrija Feher, Synapticon GmbH
-    Clay Flannigan, Southwest Research Institute
-    Joshua Hampp, Fraunhofer IPA
-    Gijs van der Hoorn, TU Delft Robotics Institute
-    Berend Küpers, ALTEN Nederland
-    Fabrizio Romanelli, Comau S.p.A. Robotics
-    Dirk Thomas, Open Source Robotics Foundation
-    Elisa Tosello, University of Padova
-    Florian Weißhardt, Fraunhofer IPA
 
 
General Chair
-----------------
Martin Hägele, Fraunhofer IPA
 
Session Chair
-----------------
Ulrich Reiser, Fraunhofer IPA
 
Registration
-----------------
Register for ROS-Industrial conference until June 18, 2014:
http://ric-eu.rosindustrial.org/2nd-ros-industrial-conference/
 
Link to Consortium:
http://ric-eu.rosindustrial.org/consortium/
 
 
Looking forward to meeting you at both events!
 

 

ROS-I Training Class Photos

Spring training classes for ROS-Industrial gave participants an opportunity to learn new skills through hands-on training. The March class, “What Can I Do with ROS-I?”, was a one-day high-level overview and experience with RViz, MoveIt!, PCL, and ROS-Industrial. The “ROS-Industrial Basic Developers’ Training Class,” held May 19-20, took developers through foundational robot manipulation and perception ROS-I/C++ coding skills leading to a collision-free pick-and-place capstone project. Included in the two classes, we had participants from ABB, Bell Helicopter, Boeing, CAT, Cessna, Cox Machine, Empire Robotics, ESCO, EWI, Ford, GA Tech, GE, IDEXX, John Deere, OmniCo AGV, OSRF, Rensselaer CATS, SER, Siemens, Tempo Automation, UTARI, UT Austin NRG, Wolf Robotics, Yaskawa Motoman. Check out pictures from the classes below.

On March 5, we had a number of demonstrations and presentations, and would like to thank:

  • Mr. Chris Pennington of Olympus Controls for the UR5 robot used in the Camera-to-Robot Calibration demo
  • Mr. Jack Thompson of UT NRG for the Multiscale Teleoperation demo
  • Dr. Jake Huckaby of GA Tech Cognitive Robotics Lab for the presentations about: 
    • A Skill Abstraction Framework in Robot Manufacturing Tasks
    • OmniMapper: A Modular Multimodal Mapping Framework
  • Mr. Patrick Dingle of Empire Robotics for the VERSABALL demo
  • Ms. Katherine Scott for her blog post about the class: Industrial Grade Awesome!
March: Showing the demonstration collision-free pick and place system during a lab breakout session.

March: Showing the demonstration collision-free pick and place system during a lab breakout session.

March: A group working on 3D perception exercises, acquiring data from a Kinect, fitting and segmenting the ground plane vs an object on the ground.

March: A group working on 3D perception exercises, acquiring data from a Kinect, fitting and segmenting the ground plane vs an object on the ground.

March: A group working on manipulation exercises.

March: A group working on manipulation exercises.

March: Jack Thompson of UT Austin showing a gesture-based teleoperation HMI.

March: Jack Thompson of UT Austin showing a gesture-based teleoperation HMI.

March: Brian Gerkey from OSRF trying out the VersaBall from Empire Robotics.

March: Brian Gerkey from OSRF trying out the VersaBall from Empire Robotics.

March: We didn't get a formal group photo in March, but here you can see most of the group enjoying dinner on the San Antonio River Walk. We ended up having two class day options in March, as we exceeded the capacity of the one-day class.

March: We didn't get a formal group photo in March, but here you can see most of the group enjoying dinner on the San Antonio River Walk. We ended up having two class day options in March, as we exceeded the capacity of the one-day class.

May: Class participants working on the capstone collision-free pick-and-place demonstration in the lab.

May: Class participants working on the capstone collision-free pick-and-place demonstration in the lab.

May: Video of the capstone project.

May: Ubiquitous Group Photo from the May 2014 Training Class

May: Ubiquitous Group Photo from the May 2014 Training Class

Why Robots Don’t Kill Jobs

A guest post by Robert Atkinson, President, Information Technology and Innovation Foundation

With U.S. job growth still anemic, some have latched on to a compelling explanation: “the robots are taking our jobs.” According to this line of thinking, high productivity driven by increasingly powerful IT-enabled machines is the cause of U.S. labor market problems, and accelerating technological change will only make the problem worse.

These arguments are not new. Over the last century whenever unemployment has risen some have always blamed machines.  But what’s different today is how widespread this “neo-Luddite” view has become and how well-received it is.  Now it’s not just the tin-foil hat crowd that is warning that robots kill jobs; many elites now make the claim.  In perhaps the most widely cited tract making this case, MIT professors Erik Byrnsolfson and Andrew McAfee state in Race against the Machine that “it may seem paradoxical that faster progress can hurt wages and jobs for millions of people, but we argue that’s what’s been happening.”  In a New York Times op-ed entitled “Sympathy for Luddites,” Paul Krugman warns that “a much darker picture of the effects of technology on labor is emerging. In this picture, highly educated workers are as likely as less educated workers to find themselves displaced and devalued.”  Even 60 Minutes has jumped on the bandwagon, claiming in a program entitled “Are Robots Hurting Job Growth?” that “technology…is putting new categories of jobs in the sites [sic] of automation—the 60 percent of the workforce that makes its living gathering and analyzing information.”

Indeed, this is what is most troubling. In the past, neo-Luddite anti-progress views were episodic, emerging occasionally when joblessness spiked but then receding, and they were going against the grain of the uniquely American faith in the desirability and inevitability of progress. Today that faith is waning, which points to the real threat that anti-robotism presents: the view that machines are a problem and not the solution saps the American spirit of its relentless and aggressive support for innovation and progress.

As we show in our ITIF report, “Are Robots Taking Our Jobs, or Making Them?” there’s only one flaw in this Luddite, anti-machine narrative: it is completely wrong and not supported by data, scholarly evidence or logic. These neo-Luddites make a fallacious correlation between today’s high unemployment and the cool technology they see around them (e.g., smart phones, airport kiosks, IBM’s Watson on Jeopardy). They believe that when technology allows more work to be done with fewer workers, those jobs are gone and the workers are added to the unemployment rolls.

But this is what economists call the “Lump of Labor” fallacy, the idea that there is a limited amount of work to be done and if a job is eliminated, it’s gone for good. But this is a false reading of the process of technological change because it doesn’t include second order effects whereby the savings from increased productivity are recycled into the economy in the form of higher wages, higher profits, or reduced prices to create new demand that in turn creates other jobs.

Certainly U.S. history bears out the notion that productivity growth goes hand-in-hand with growth in employment.  Indeed, America’s most productive years have been followed by our years of lowest unemployment. This correlation is shown in the 2011 McKinsey Global Institute report, “Growth and Renewal in the United States: Retooling America’s Economic Engine” which looked at annual employment and productivity change from 1929 to 2009 and found that increases in productivity are correlated with increases in subsequent employment growth.

It’s also borne out by virtually all scholarly research looking at the relationship between productivity and job growth.  Some few studies find that employment decreases in the short run in response to a productivity shock, but that jobs grow in the medium to long term.  Most studies find no negative effect on employment, and some have found a positive relationship, with increases in productivity leading to more jobs. An OECD study sums it all up: “historically, the income-generating effects of new technologies have proved more powerful than the labor-displacing effects: technological progress has been accompanied not only by higher output and productivity, but also by higher overall employment.

Even many of those who acknowledge that new jobs will be created worry that this time is different and that there will not be enough of them to replace the lost ones, even in the long run. They warn that a time will come, sooner than we think, when even new “jobs” will be better done by machines, and unemployment will skyrocket. How do we know that humans will always be better at some work—or more importantly, enough work—than machines? One reason is that our economy is complex, with a broad range of industries and occupations, some amenable at a particular time to automation, most others that are not (think physical therapy, business consulting, landscape gardening). Another is that technological change doesn’t happen overnight—and current productivity increases are actually trending down. But the main reason is that human wants are close to infinite—we need look no further than the fact that most people would love to win the Powerball lottery.  With the average U.S. household income around $50,000 a year, most Americans would have no problem spending all the money they make if their incomes increased by a factor of 5 or even 10.  And as long as that is true, those wants will require labor to fill them.

It is time to consign neo-Ludditism and its particular refrain that technology costs jobs once and for all to the dustbin of history. Robots, automation, machines, productivity: these are key enablers of human progress and absolutely no threat to overall employment. As such, economic policy should at every possible opportunity not give in to neo-Luddite exhortations, but instead put the “pedal to the metal” for higher productivity and more “robots.”

2nd ROS-Industrial Community Forum

The 2nd ROS-Industrial Community Forum webinar was held on April 28, hosted by Alexander Bubeck of Fraunhofer IPA. The featured topic of the forum was the new ROS/ROS-I interface to Comau robot controllers. That topic was covered in two presentations, first by Fabrizio Romanelli of Comau, and then also by Elisa Tosello from the University of Padua, Intelligent Autonomous Systems Lab. 

Five-minute "Lightning Talks" were also given on various topics:

  • Industrial Calibration (Chris Lewis, SwRI)
  • A ROS Control overview and what it means for ROS-I (Adolfo Rodriguez Tsouroukdissian, PAL Robotics)
  • Overview of the European Robotics Challenge, (Ramez Awad, Faunhofer IPA)
  • Updates of recent developments on the BRIDE MDE toolchain, (Alexander Bubeck, Fraunhofer IPA)

ROS-Industrial Community Forums are open to the broad ROS-Industrial community and foster the dissemination of information about new ROS-Industrial capabilities and best practices. If you are interested in presenting at the next Forum, please contact us.

ROS-Industrial Consortium Americas Celebrates 20 Members!

It is our pleasure to announce that the ROS-Industrial Consortium Americas is officially 20 members strong!

Logos for the 20 official members of the Consortium, April 2014

Logos for the 20 official members of the Consortium, April 2014

Our brief history: The ROS-Industrial Open Source project began as the collaborative endeavor of Yaskawa Motoman Robotics, Southwest Research Institute, and Willow Garage to support the use of ROS for industrial automation. The software repository, originally hosted on Google Code, and now on GitHub, was founded by Shaun Edwards (SwRI) in January 2012. Led by SwRI, the ROS-Industrial Consortium Americas launched in March 2013. As you might have guessed from the name, there is also a ROS-I Consortium Europe, led by Fraunhofer IPA in Stutgart, Germany. The Consortium exists to support the ROS-Industrial community by providing training, technical support, and setting the roadmap for ROS-I.

The Consortium also fosters new open-source code creation to meet specific near term needs of members through Focused Technical Projects. Currently, three such projects are underway:

  • Robotic Blending, Milestone 1, championed by Spirit AeroSystems
  • CMM-Accelerated Robotic Routing, championed by Cessna Aircraft Company (Textron)
  • Minimum Cycle-Time Path Planning, championed by Idexx Laboratories

At the annual meeting last month, four new Focused Technical Projects were announced, and are available to join:

  • Heavy Helper
  • Multipass Robotic Welding
  • Robotic CNC Machining for Soft Materials (i.e., AL and CF)
  • Robotic Machine Tending

We are grateful to our members for their support and enthusiasm! If you are interested in learning more about the latest Focused Technical Projects, or about the Consortium in general, please contact us.

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.

Intermodalics Uses ROS-I for Palletizing Application

Intermodalics is currently developing a depalletizing application for a client. The goal is to move an average of 2,000 crates per hour from standard pallets to a conveyor belt. Additional challenges include: more than 10 different crate types can occur in varying colors, the crates are not necessarily empty and they are randomly stacked.

The application consists of a UR10 robot from Universal Robots, a 3D camera, an Intermodalics Intelligent Controller (IIC) and an active pallet lift. The software for the application running on the IIC extensively uses ROS and the OROCOS toolchain. OROCOS is a software framework for realtime, distributed robot and machine control which is seamlessly integrated with ROS and has both Industrial and Academic users worldwide.

For finding the crates’ position and orientation, Intermodalics developed a crate localizer that builds upon the PCL library as well as on a set of in-house developed point-cloud processing algorithms. The ROS visualization tool RViz proved absolutely invaluable during the realization of this product locator.

The use of the ROS-Industrial package for the UR robot allows both the motions and the application state machine to be simulated. This significantly facilitates the implementation of the whole application.

The integration of the UR controller and the IIC does not affect the inherent safety feature of the UR robot which makes the robot stop if it encounters excessive forces. If such a stop occurs, the application can be easily restarted by a simple human operator intervention.

Blog post provided by Bert Willaert of Intermodalics.

EWI: RIC Americas Member of the Week

EWI_logo.jpg

EWI is a leading developer in North America of innovative technology solutions that enhance manufacturing competitiveness. Since 1984, EWI has provided engineering support, R&D, strategic services, and training to leaders in the aerospace, automotive, consumer products, electronics, medical, energy and chemical, government, and heavy manufacturing industries. As a member-based organization, EWI provides applied research, manufacturing support, and strategic services to more than 1,200 member company locations worldwide.

EWI recently announced that it will open and operate an advanced manufacturing institute in Buffalo, NY. This state-of-the-art facility will support the growth of New York’s manufacturing sector. EWI President and CEO Henry Cialone said, “This is a proven model EWI has seen work in a number of the centers and consortia which it operates as hubs for the advancement of specific technologies and industries. The institute will be designed to improve public/private collaboration, strengthen Western New York manufacturing supply chains, and make its manufacturers more competitive on a global scale.”

The advanced manufacturing institute will have world-class technical capabilities in areas including: flexible automation and controls, advanced materials, additive processes, and advanced fabrication. To help enable flexible automation, EWI is looking to utilize the Robot Operating System within many industrial robotic applications. EWI is excited to be part of the ROS-Industrial Consortium and will collaborate with members and to create vital software tools for agile manufacturing.

Yaskawa America - Motoman Robotics Division: RIC Member of the Week

Logo Yaskawa Motoman.jpg

What began as a collaboration between SwRI, Willow Garage, and Yaskawa America--Motoman Robotics, grew into ROS-Industrial (ROS-I). The first industrial manipulator to run an industrial robot client was a Motoman SIA 20D with DX100 controller, which would become the architecture for the driver layer in the ROS-I socket interface for manipulation. Since that first demonstration, Yaskawa has continued to support ROS-Industrial in a number of ways:

  • Assisted in development of new Moto Plus modules for both the DX100 and FS100 controllers to enable both smooth and full speed manipulation via a socket interface: http://wiki.ros.org/motoman.
  •  Joined the ROS-Industrial Consortium and presented “Why Industrial Robot OEMs Should Care about ROS” at our first Consortium meeting and at ROSCon 2013.

  • Supported a hardware demonstration of ROS-Industrial for a deburring application at ROSCon 2013.

This early involvement and support for ROS-I has made Motoman hardware hardware easy to integrate, and has led to a number of demonstrations using their hardware:

Teaser: Recently, Yaskawa has teamed with RIC EU leader Fraunhofer IPA to create a standard ROS-I interface for dual arm robots, based on guidance from a ROS-I Enhancement Proposal posted by SwRI. We will provide updates as they become available.