Contents
ROS-Industrial Overview
ROS-Industrial is a BSD (legacy) / Apache 2.0 (preferred) licensed program that contains libraries, tools and drivers for industrial hardware. It is supported and guided by the ROS-Industrial Consortium. The goals of ROS-Industrial are to:
- Create a community supported by industrial robotics researchers and professionals
- Provide a one-stop location for industry-related ROS applications
- Develop robust and reliable software that meets the needs of industrial applications
- Combine the relative strengths of ROS with existing industrial technologies (i.e. combining ROS high-level functionality with the low-level reliability and safety of industrial robot controllers).
- Create standard interfaces to stimulate “hardware-agnostic” software development (using standardized ROS messages)
- Provide an easy path to apply cutting-edge research in industrial applications, using a common ROS architecture
- Provide simple, easy-to-use, well-documented APIs
Please browse the rosindustrial.org website for a general overview of ROS-Industrial.
Developer's Support
Contact us by posting a message in the ROS-Industrial Category on ROS Discourse. Follow the category to stay up to date on the latest development activities.
Videos
Check out our videos page for demonstrations of what ROS-Industrial can do.
News
Check out the ROS-Industrial blog.
Subscribe to the ROS-Industrial Twitter Feed.
Supported hardware
Industrial manipulators for ABB, Adept, Fanuc, Motoman, and Universal Robots are supported by ROS-Industrial packages. See Vendor Specific Packages for links to the relevant packages.
More information on particular vendor hardware can be found on the supported hardware page.
Installation
ROS-Industrial installation instructions can be found on the installation page.
Development
Browse the Source Code
The ROS-Industrial software has been migrated to Github. Previously the ROS-Industrial code was hosted on Google code. The transition to Github occurred after the ROS Groovy release.
Old releases (Groovy and older)ros-industrial/swri-ros-pkg
Latest releases (Hydro and newer)github.com/ros-industrial
Contribution
Be a part of the ROS-Industrial organization. There are many way to contribute. Check out our listing of open positions.
Software Development Process
Industrial-grade code demands a rigorous code Development Process.
Pull Request Review Guidelines
The ROS-Industrial developers have committed themselves to keep improving the quality of their code and packages. As part of this commitment, a protocol for submitting and handling of pull requests has been defined. Please see the IndustrialPullRequestReview page for more information.
Package Summary
Simple Message
Simple Message defines a simple messaging connection and protocol for communicating with an industrial robot controller. Additional handler and manager classes are included for handling connection limited systems.
Industrial Robot Client
Industrial Robot Client is a client library for communicating with any industrial robot controller that supports Ethernet socket communications. The client nodes server as drivers for any robot that adheres to the Simple Message protocol. The nodes in this package adhere to the ROS-Industrial driver standard.
Industrial Calibration
Industrial Calibration is a toolbox whose goal is to enable both extrinsic and intrinsic calibration of sensors, sensor arrays, and robots. One package currently under development is Industrial Extrinsic Calibration.
Vendor Specific Packages
The ROS-Industrial distribution contains metapackages for several industrial vendors. More information can be found on the supported hardware page.
Roadmap
The ROS-Industrial roadmap (including strategic and technical objectives) can be found here.
Specifications
Industrial Robot Driver Specification
One goal of ROS-Industrial is to provide interoperability between industrial robotic platforms in order to leverage higher level ROS software. In order to achieve this, a ROS interface standard for industrial robot controllers is required. Anybody creating a ROS-Industrial driver must adhere to this standard.
Software Status Specifications
The ROS-Industrial software status specifications are high level, color coded, indications of software readiness. These indicators are used to communicate to ROS-Industrial users/developers the reliability and usability of software metapackages. For more info, see here.
Tutorials
A detailed set of tutorials that cover ROS-Industrial and associated packages can be found here.
Contact us/Technical support
Contact us by posting a message in the ROS-Industrial category on ROS Discourse.
Reporting bugs
Bugs related to a specific vendor stack should be reported to that stack's issue tracker, see the different pages for links. All other issues can be submitted to the generic issue tracker. Use GitHub to report bugs or submit feature requests. [View active issues]