-
 

Package Summary

Tags No category tags.
Version 0.20.0
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros-controls/ros_control.git
VCS Type git
VCS Version noetic-devel
Last Updated 2024-10-12
Dev Status MAINTAINED
CI status
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Interface base class for controllers.

Additional Links

Maintainers

  • Bence Magyar
  • Enrique Fernandez
  • Mathias Lüdtke

Authors

  • Wim Meeussen
README
No README found. See repository README.
CHANGELOG

Changelog for package controller_interface

0.20.0 (2023-10-27)

0.19.6 (2022-10-21)

0.19.5 (2021-06-16)

0.19.4 (2020-12-05)

0.19.3 (2020-10-11)

0.19.2 (2020-08-17)

0.19.1 (2020-05-10)

  • Function specifiers noetic (#453)
    • Add override specifiers & default constructors
    • Delete ControllerBase copy & move ctors
    • Remove unnecessary default constructors
    • Modernize additional constructors
    • Revert ImuSensorHandle::<Data::Data>() = default
    • Remove unnecessary default overridden constructors

    * Remove semicolon after function body Co-authored-by: Matt Reynolds <<mtreynolds@uwaterloo.ca>>

  • Use setuptools instead of distutils (#429)
  • Contributors: Bence Magyar, Matt Reynolds

0.19.0 (2020-04-23)

  • Replace enums with enum classes (#412)
  • Contributors: Matt Reynolds

0.18.0 (2020-04-16)

  • Bump CMake version to avoid CMP0048 (#427)
  • Contributors: Shane Loretz

0.17.0 (2020-02-24)

  • Use default member initializers
  • Prefer default member initializers
  • Contributors: Bence Magyar, Matt Reynolds

0.16.0 (2020-01-27)

  • Update dependencies
    • Dependencies needed to compile are <build_depend>
    • Dependencies used in public headers are <build_export_depend>
    • Dependencies needed to link or run are <exec_depend>
  • Replace header guard with #pragma once
  • Remove unnecessary rosunit/rostest dependencies
  • Apply consistent style to CMakeLists.txt files
  • Apply consistent style to package.xml files
  • Multi-update cycle mode switch (#391) For more info: https://github.com/pal-robotics-forks/ros_control2/pull/5
    • Added tests for ControllerManager update
    • Mocks for controllers and controller loader in update test
    • Divided in tests with and without controllers
    • Controller state initialized in mock
    • Moved mocks to test class
    • All tests using mock class
    • Test for multiple updates in a single controller

    * Added new switchResult() function to RobotHW interface ControllerManager uses this function to wait for the result of the doSwitch() before starting the new set of controllers

    • Using ranged based loops
    • Switch is now managed in a separate function
    • Option to start controllers as soon as their joints are ready after a switch
    • Tests for controller_interface API
    • Added new STOPPED, WAITING and ABORTED states to ControllerBase
    • Split manageSwitch() into smaller functions
    • Abort pending controllers in case of switch error

    * Changed default behaviour of new switch param This way if it not set it will be the same behaviour as previous version

    • Added timeout parameter to switch controller
    • Removed unnecessary includes
    • Using target_include_directories for the test
    • std::all_of instead of std::count_if
    • Deleted autogenerated file
    • Adapted tests to changes in controller_manager
    • Adapted python implementation to new parameters in SwitchController
    • Added missing parameter description docstring
    • Moved all parameters used for switching to a separate object
    • Moved error messages to controller_base
    • State check functions are now const
    • Removed unnecessary comments
    • Added constants for start_asap and timeout default parameters values
  • Removed unnecessary comments
  • State check functions are now const
  • Moved error messages to controller_base
  • Using target_include_directories for the test
  • Fixed lincenses
  • Removed unnecessary includes
  • Abort pending controllers in case of switch error
  • Added new STOPPED, WAITING and ABORTED states to ControllerBase
  • Tests for controller_interface API
  • Contributors: Bence Magyar, Jordan Palacios, Matt Reynolds, jordan-palacios

0.15.1 (2018-09-30)

0.15.0 (2018-05-28)

  • boost::shared_ptr -> std::shared_ptr
  • Introduce shared_ptr typedefs
  • remove forward declaration of InterfaceResources
  • Contributors: Bence Magyar, Mathias Lüdtke

0.14.2 (2018-04-26)

  • Update maintainers
  • Contributors: Bence Magyar

0.14.1 (2018-04-16)

0.14.0 (2018-03-26)

  • Switch MultiInterfaceController to use variadic templates.
  • Use public virtual for Controller inheritance.
  • Contributors: Mike Purvis

0.13.0 (2017-12-23)

0.12.0 (2017-08-05)

0.11.5 (2017-06-28)

0.11.4 (2017-02-14)

0.11.3 (2016-12-07)

0.11.2 (2016-11-28)

  • Remove boost from depends declaration to fix cmake warning
  • sort dependencies
  • Add Enrique and Bence to maintainer list
  • Clean up export leftovers from rosbuild
  • Convert to format2, fix dependency in cmake
  • Contributors: Bence Magyar

0.11.1 (2016-08-18)

  • Fix the example in the comments in multi_interface_controller.h.
  • Contributors: Miguel Prada

0.11.0 (2016-05-23)

0.10.1 (2016-04-23)

0.10.0 (2015-11-20)

  • Add MultiInterfaceController. - Subclass of ControllerBase which allows to claim resources from up to four different hardware interfaces. Requested hardware interfaces are required by default, but can be made optional through a constructor flag.

  • Remove getHardwareInterfaceType() pure virtual method from ControllerBase class.
    • C++ API break.
    • Controller class still preserves the method, albeit protected and non-virtual.
  • Modify controller interfaces to allow for controllers that claim resources from more than one hardware interface.
    • C++ API break.
  • Address -Wunused-parameter warnings
  • Contributors: Adolfo Rodriguez Tsouroukdissian

0.9.3 (2015-05-05)

0.9.2 (2015-05-04)

0.9.1 (2014-11-03)

  • Update package maintainers
  • Contributors: Adolfo Rodriguez Tsouroukdissian

0.9.0 (2014-10-31)

0.8.2 (2014-06-25)

0.8.1 (2014-06-24)

0.8.0 (2014-05-12)

  • Remove rosbuild artifacts. Fix #154.
  • Contributors: Adolfo Rodriguez Tsouroukdissian

0.7.2 (2014-04-01)

0.7.1 (2014-03-31)

0.7.0 (2014-03-28)

0.6.0 (2014-02-05)

0.5.8 (2013-10-11)

  • Renamed manifest.xml to prevent conflicts with rosdep
  • Add .gitignore file.

0.5.7 (2013-07-30)

  • Updated changelogs
  • Documentation fixes.
    • Tag (non)realtime methods in ControllerBase.
    • Fix incorrect param name in Controller.

0.5.6 (2013-07-29)

0.5.5 (2013-07-23)

0.5.4 (2013-07-23)

0.5.3 (2013-07-22)

0.5.2 (2013-07-22)

0.5.1 (2013-07-19)

0.5.0 (2013-07-16)

  • Add meta tags to packages not specifying them.
    • Website, bugtracker, repository.
  • Reneamed Github repo in documentation to ros-controls

0.4.0 (2013-06-25)

  • Version 0.4.0
  • 1.0.1
  • Fix package URL in package.xml
  • adding install targets
  • merging CMakeLists.txt files from rosbuild and catkin
  • adding hybrid-buildsystem makefiles
  • Fix package URLs.
  • Refactor named resource management code. - In preparation for the explicitly typed actuators interface, code for managing named resources has been refactored into a separate class. This code consists of convenience methods wrapping a std::map container, and occur often enough that factoring it out to prevent duplication makes sense. - Code that is not part of the public API, and hence with no stability guarantees has been moved to the internal folder/namespace. It only affects the named resource management and symbol demanglind methods so far.

  • catkinizing, could still be cleaned up
  • Use demangled type names when available. Fixes #36. Type names are used in different interfaces such as hardware_interface and controller_interface. When symbol demangling is available (currently gcc 3.0+), operate on demangled names, as they are more convenient for human reading, eg. hardware_interface::VelocityJointInterface instead of N18hardware_interface22VelocityJointInterfaceE
  • [Trivial] Remove redundant semicolon.
  • Update controller_interface docs. More descriptive documentation for initialization methods with two NodeHandle arguments.
  • add option to pass in two nodehandles to a controller: one in the root of the controller manager namespace, and one in the namespace of the controller itself. This copies the behavior used by nodelets and nodes
  • Fix typo in rosdoc config files.
  • Adding template parameter doc
  • Adding lots of inline documentation, rosdoc files adding inline doc to robot_hw adding inline doc to robot_hw adding inline doc to robot_hw more doc more documentation more doc more doc more doc more doc formatting adding more doc groups in controller manager adding more doc groups in controller manager Adding doc for controllerspec adding hardware interface docs adding doc to joint interfaces adding rosdoc for controller_interface Adding / reformatting doc for controller interface
  • new interface with time and duration
  • cleanup
  • Adding in resource/claim infrastructure
  • clean up publishing controller state
  • Switching to owned interfaces, instead of multiple virtual inheritance
  • Fixing copyright header text
  • Tweaking inheritance to be virtual so it compiles. dummy app with controller manager compiles
  • all pkgs now ported to fuerte
  • running controller with casting. Pluginlib still messed up
  • add macro
  • compiling version
  • move joint state controller to new package
  • make a dummy plugin
  • untested stuff, debians are screwed up
  • compiling version
  • working install target
  • base classes
  • first catkin stuff

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged controller_interface at Robotics Stack Exchange

Package Summary

Tags No category tags.
Version 0.18.4
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros-controls/ros_control.git
VCS Type git
VCS Version melodic-devel
Last Updated 2023-10-27
Dev Status MAINTAINED
CI status
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Interface base class for controllers.

Additional Links

Maintainers

  • Bence Magyar
  • Enrique Fernandez
  • Mathias Lüdtke

Authors

  • Wim Meeussen
README
No README found. See repository README.
CHANGELOG

Changelog for package controller_interface

0.18.4 (2021-06-16)

0.18.3 (2020-12-05)

  • Update docs in hardware_interface
  • Contributors: Franz Pucher

0.18.2 (2020-08-17)

0.18.1 (2020-05-09)

  • Add function specifiers and modernize constructors (#430)
    • Add override specifiers & default constructors
    • Delete ControllerBase copy & move ctors
    • Remove unnecessary default constructors
    • Modernize additional constructors
    • Revert ImuSensorHandle::<Data::Data>() = default
    • Remove unnecessary default overridden constructors
    • Remove semicolon after function body
  • Contributors: Matt Reynolds

0.18.0 (2020-04-16)

  • Bump CMake version to avoid CMP0048 (#427)
  • Contributors: Shane Loretz

0.17.0 (2020-02-24)

  • Use default member initializers
  • Prefer default member initializers
  • Contributors: Bence Magyar, Matt Reynolds

0.16.0 (2020-01-27)

  • Update dependencies
    • Dependencies needed to compile are <build_depend>
    • Dependencies used in public headers are <build_export_depend>
    • Dependencies needed to link or run are <exec_depend>
  • Replace header guard with #pragma once
  • Remove unnecessary rosunit/rostest dependencies
  • Apply consistent style to CMakeLists.txt files
  • Apply consistent style to package.xml files
  • Multi-update cycle mode switch (#391) For more info: https://github.com/pal-robotics-forks/ros_control2/pull/5
    • Added tests for ControllerManager update
    • Mocks for controllers and controller loader in update test
    • Divided in tests with and without controllers
    • Controller state initialized in mock
    • Moved mocks to test class
    • All tests using mock class
    • Test for multiple updates in a single controller

    * Added new switchResult() function to RobotHW interface ControllerManager uses this function to wait for the result of the doSwitch() before starting the new set of controllers

    • Using ranged based loops
    • Switch is now managed in a separate function
    • Option to start controllers as soon as their joints are ready after a switch
    • Tests for controller_interface API
    • Added new STOPPED, WAITING and ABORTED states to ControllerBase
    • Split manageSwitch() into smaller functions
    • Abort pending controllers in case of switch error

    * Changed default behaviour of new switch param This way if it not set it will be the same behaviour as previous version

    • Added timeout parameter to switch controller
    • Removed unnecessary includes
    • Using target_include_directories for the test
    • std::all_of instead of std::count_if
    • Deleted autogenerated file
    • Adapted tests to changes in controller_manager
    • Adapted python implementation to new parameters in SwitchController
    • Added missing parameter description docstring
    • Moved all parameters used for switching to a separate object
    • Moved error messages to controller_base
    • State check functions are now const
    • Removed unnecessary comments
    • Added constants for start_asap and timeout default parameters values
  • Removed unnecessary comments
  • State check functions are now const
  • Moved error messages to controller_base
  • Using target_include_directories for the test
  • Fixed lincenses
  • Removed unnecessary includes
  • Abort pending controllers in case of switch error
  • Added new STOPPED, WAITING and ABORTED states to ControllerBase
  • Tests for controller_interface API
  • Contributors: Bence Magyar, Jordan Palacios, Matt Reynolds, jordan-palacios

0.15.1 (2018-09-30)

0.15.0 (2018-05-28)

  • boost::shared_ptr -> std::shared_ptr
  • Introduce shared_ptr typedefs
  • remove forward declaration of InterfaceResources
  • Contributors: Bence Magyar, Mathias Lüdtke

0.14.2 (2018-04-26)

  • Update maintainers
  • Contributors: Bence Magyar

0.14.1 (2018-04-16)

0.14.0 (2018-03-26)

  • Switch MultiInterfaceController to use variadic templates.
  • Use public virtual for Controller inheritance.
  • Contributors: Mike Purvis

0.13.0 (2017-12-23)

0.12.0 (2017-08-05)

0.11.5 (2017-06-28)

0.11.4 (2017-02-14)

0.11.3 (2016-12-07)

0.11.2 (2016-11-28)

  • Remove boost from depends declaration to fix cmake warning
  • sort dependencies
  • Add Enrique and Bence to maintainer list
  • Clean up export leftovers from rosbuild
  • Convert to format2, fix dependency in cmake
  • Contributors: Bence Magyar

0.11.1 (2016-08-18)

  • Fix the example in the comments in multi_interface_controller.h.
  • Contributors: Miguel Prada

0.11.0 (2016-05-23)

0.10.1 (2016-04-23)

0.10.0 (2015-11-20)

  • Add MultiInterfaceController. - Subclass of ControllerBase which allows to claim resources from up to four different hardware interfaces. Requested hardware interfaces are required by default, but can be made optional through a constructor flag.

  • Remove getHardwareInterfaceType() pure virtual method from ControllerBase class.
    • C++ API break.
    • Controller class still preserves the method, albeit protected and non-virtual.
  • Modify controller interfaces to allow for controllers that claim resources from more than one hardware interface.
    • C++ API break.
  • Address -Wunused-parameter warnings
  • Contributors: Adolfo Rodriguez Tsouroukdissian

0.9.3 (2015-05-05)

0.9.2 (2015-05-04)

0.9.1 (2014-11-03)

  • Update package maintainers
  • Contributors: Adolfo Rodriguez Tsouroukdissian

0.9.0 (2014-10-31)

0.8.2 (2014-06-25)

0.8.1 (2014-06-24)

0.8.0 (2014-05-12)

  • Remove rosbuild artifacts. Fix #154.
  • Contributors: Adolfo Rodriguez Tsouroukdissian

0.7.2 (2014-04-01)

0.7.1 (2014-03-31)

0.7.0 (2014-03-28)

0.6.0 (2014-02-05)

0.5.8 (2013-10-11)

  • Renamed manifest.xml to prevent conflicts with rosdep
  • Add .gitignore file.

0.5.7 (2013-07-30)

  • Updated changelogs
  • Documentation fixes.
    • Tag (non)realtime methods in ControllerBase.
    • Fix incorrect param name in Controller.

0.5.6 (2013-07-29)

0.5.5 (2013-07-23)

0.5.4 (2013-07-23)

0.5.3 (2013-07-22)

0.5.2 (2013-07-22)

0.5.1 (2013-07-19)

0.5.0 (2013-07-16)

  • Add meta tags to packages not specifying them.
    • Website, bugtracker, repository.
  • Reneamed Github repo in documentation to ros-controls

0.4.0 (2013-06-25)

  • Version 0.4.0
  • 1.0.1
  • Fix package URL in package.xml
  • adding install targets
  • merging CMakeLists.txt files from rosbuild and catkin
  • adding hybrid-buildsystem makefiles
  • Fix package URLs.
  • Refactor named resource management code. - In preparation for the explicitly typed actuators interface, code for managing named resources has been refactored into a separate class. This code consists of convenience methods wrapping a std::map container, and occur often enough that factoring it out to prevent duplication makes sense. - Code that is not part of the public API, and hence with no stability guarantees has been moved to the internal folder/namespace. It only affects the named resource management and symbol demanglind methods so far.

  • catkinizing, could still be cleaned up
  • Use demangled type names when available. Fixes #36. Type names are used in different interfaces such as hardware_interface and controller_interface. When symbol demangling is available (currently gcc 3.0+), operate on demangled names, as they are more convenient for human reading, eg. hardware_interface::VelocityJointInterface instead of N18hardware_interface22VelocityJointInterfaceE
  • [Trivial] Remove redundant semicolon.
  • Update controller_interface docs. More descriptive documentation for initialization methods with two NodeHandle arguments.
  • add option to pass in two nodehandles to a controller: one in the root of the controller manager namespace, and one in the namespace of the controller itself. This copies the behavior used by nodelets and nodes
  • Fix typo in rosdoc config files.
  • Adding template parameter doc
  • Adding lots of inline documentation, rosdoc files adding inline doc to robot_hw adding inline doc to robot_hw adding inline doc to robot_hw more doc more documentation more doc more doc more doc more doc formatting adding more doc groups in controller manager adding more doc groups in controller manager Adding doc for controllerspec adding hardware interface docs adding doc to joint interfaces adding rosdoc for controller_interface Adding / reformatting doc for controller interface
  • new interface with time and duration
  • cleanup
  • Adding in resource/claim infrastructure
  • clean up publishing controller state
  • Switching to owned interfaces, instead of multiple virtual inheritance
  • Fixing copyright header text
  • Tweaking inheritance to be virtual so it compiles. dummy app with controller manager compiles
  • all pkgs now ported to fuerte
  • running controller with casting. Pluginlib still messed up
  • add macro
  • compiling version
  • move joint state controller to new package
  • make a dummy plugin
  • untested stuff, debians are screwed up
  • compiling version
  • working install target
  • base classes
  • first catkin stuff

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged controller_interface at Robotics Stack Exchange