A ROS package providing an EtherCAT main loop based on ros_control, replacing PR2-specific dependencies for custom robot hardware.
ros_ethercat is a ROS package that replaces the PR2-specific EtherCAT main loop with one based on ros_control, enabling EtherCAT communication for custom robots without PR2 dependencies. It provides a hardware-agnostic interface for integrating EtherCAT devices with ROS, reusing existing drivers and supporting a controller manager. This allows robotics developers to build and control their own EtherCAT-based robots using standard ROS tools.
Robotics engineers and developers building custom ROS-based robots with EtherCAT hardware, particularly those migrating from PR2 software or designing new EtherCAT-integrated systems.
Developers choose ros_ethercat because it eliminates PR2-specific dependencies, offers seamless integration with ros_control, and provides a flexible, reusable foundation for EtherCAT communication in custom robotics applications.
Replace pr2_ethercat main loop with one based on ros_control
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Removes dependencies on PR2-specific packages like pr2_mechanism and pr2_ethercat, enabling use with custom robot hardware without legacy constraints.
Instantiates a ros_control controller manager, providing a standardized interface for robot controllers and promoting modular development.
Leverages existing eml package drivers for EtherCAT communication, allowing developers to reuse established low-level code without rewriting drivers.
Accepts a --period argument to set the EtherCAT main loop period in milliseconds, defaulting to 1ms for flexible performance tuning.
Requires significant code modifications when switching from PR2-based systems, such as updating controller includes and launch files, as detailed in the compatibility section.
The README focuses on compatibility changes and lacks comprehensive tutorials or examples for new setups, which may hinder users unfamiliar with PR2 legacy.
Primarily useful for migrating from PR2 or similar EtherCAT-based ROS systems, offering limited value for new projects without prior PR2 dependencies.