-
 

Package Summary

Tags No category tags.
Version 2.43.1
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros-controls/ros2_control.git
VCS Type git
VCS Version humble
Last Updated 2024-10-01
Dev Status DEVELOPED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

ros2_control hardware interface

Additional Links

No additional links.

Maintainers

  • Bence Magyar
  • Denis Štogl

Authors

No additional authors.

Overview

For detailed information about this package, please see the ros2_control Documentation!

CHANGELOG

Changelog for package hardware_interface

2.43.1 (2024-09-11)

2.43.0 (2024-08-22)

2.42.0 (2024-07-23)

  • Small improvements to the error output in component parser to make debugging easier. (backport #1580) (#1581)
  • Update joints_userdoc.rst (#1604)
  • Fix link to gazebosim.org (#1563) (#1564)
  • Add doc page about joint kinematics (#1497) (#1559)
  • Bump version of pre-commit hooks (backport #1556) (#1557)
  • Contributors: Christoph Fröhlich, mergify[bot]

2.41.0 (2024-04-30)

  • Add missing calculate_dynamics (#1498) (#1511)
  • [Doc] Add documentation about initial_value regarding mock_hw (#1352) (#1513)
  • Move migration notes (#1481) (#1515)
  • Bump version of pre-commit hooks (backport #1430) (#1434)
  • Contributors: mergify[bot]

2.40.0 (2024-03-02)

  • [CI] Code coverage + pre-commit (backport #1413) (#1414)
  • Move hardware interface README content to sphinx documentation (#1342) (#1380)
  • Contributors: mergify[bot]

2.39.1 (2024-02-14)

  • readd activate_all_components method to not break API (#1392)
  • Contributors: Sai Kishor Kothakota

2.39.0 (2024-02-12)

  • Move [test_components]{.title-ref} to own package (backport #1325) (#1340)
  • Contributors: mergify[bot]

2.38.0 (2024-01-25)

  • [CM] Fix controller parameter loading issue in different cases (#1293) (#1332)
  • Enable setting of initial state in HW components (backport #1046) (#1064)
  • Contributors: Sai Kishor Kothakota, mergify[bot]

2.37.0 (2024-01-20)

  • [RM] Fix crash for missing urdf in resource manager (#1301) (#1316)
  • Add additional checks for non existing and not available interfaces. (backport #1218) (#1291)
  • Fix return of ERROR and calls of cleanup when system is unconfigured of finalized (#1279) (#1286)
  • fix the multiple definitions of lexical casts methods (#1281) (#1282)
  • Contributors: Sai Kishor Kothakota, mergify[bot]

2.36.1 (2024-01-08)

  • [ResourceManager] adds test for uninitialized hardware (#1243) (#1274)
  • Use portable version for string-to-double conversion (backport #1257) (#1268)
  • Fix typo in docs (#1219) (#1221)
  • Contributors: Christoph Fröhlich, mergify[bot]

2.36.0 (2023-12-12)

  • Cleanup Resource Manager a bit to increase clarity. (backport #816) (#1191)
  • Handle hardware errors in Resource Manager (#805) (#837) #ABI-breaking
  • Contributors: mergify[bot]

2.35.1 (2023-11-27)

  • [MockHardware] Fix the issues where hardware with multiple interfaces can not be started because of a logical bug added when adding dynamics calculation functionality. (#1151) (#1178)
  • Contributors: Dr Denis

2.35.0 (2023-11-14)

  • [CM] Use [robot_description]{.title-ref} topic instead of parameter and don't crash on empty URDF 🦿 (backport #940) (#1052)
  • Contributors: mergify[bot]

2.34.0 (2023-11-08)

2.33.0 (2023-10-11)

  • [MockHardware] Added dynamic simulation functionality. (#1028) (#1125)
  • Contributors: mergify[bot]

2.32.0 (2023-10-03)

  • Add GPIO tag description to docs (#1109) (#1120)
  • Contributors: Christoph Froehlich

2.31.0 (2023-09-11)

2.30.0 (2023-08-14)

  • Add checks if hardware is initialized. (backport #1054) (#1081)
  • Contributors: Denis Stogl

2.29.0 (2023-07-09)

2.28.0 (2023-06-23)

  • Ensure instantiation of hardware classes work for python bindings (#1058) (#1062)
  • Contributors: Olivier Stasse

2.27.0 (2023-06-14)

  • [MockHardware] Enable disabling of command to simulate HW failures. (backport #1027) (#1050)
  • Empty urdf tag humble (backport of #1017) (#1036)
  • [Humble] enable ReflowComments to also use ColumnLimit on comments (#1038)
  • Issue 339: Implement parse_bool and refactor a few (backport #1014) (#1018)
  • Contributors: Felix Exner (fexner), Sai Kishor Kothakota, Christoph Fröhlich, Bence Magyar, Alejandro Bordallo

2.26.0 (2023-05-20)

  • docs: Fix link to hardware_components (#1009) (#1011)
  • Contributors: Christoph Fröhlich

2.25.3 (2023-04-29)

2.25.2 (2023-04-20)

  • Also initialize non-joint components (backport #822) (#991)
  • Contributors: Felix Exner, Denis Štogl

2.25.1 (2023-04-14)

2.25.0 (2023-04-02)

  • Check for missing hardware interfaces that use the gpio tag. (#953)
  • Split transmission interfaces (backport #938) (#968)
  • Contributors: Ryan Sandzimier, Noel Jiménez García, Bence Magyar

2.24.1 (2023-03-09)

  • Revert "Make double parsing locale independent (#921)" (#966)
  • Contributors: Bence Magyar

2.24.0 (2023-02-28)

2.23.0 (2023-02-20)

2.22.0 (2023-01-31)

  • Make double parsing locale independent (#921) (#924)
  • Contributors: Henning Kayser

2.21.0 (2023-01-24)

2.20.0 (2023-01-12)

  • 🔧 Fixes and updated on pre-commit hooks and their action (backport #890) (#895)
  • Contributors: Denis Štogl

2.19.0 (2023-01-06)

  • ResourceManager doesn't always log an error on shutdown anymore (#867) (#871)
  • Contributors: Christopher Wecht

2.18.0 (2022-12-03)

2.17.0 (2022-11-27)

2.16.0 (2022-10-17)

  • fix broken links (issue #831) (#833) (#845)
  • Contributors: Manuel Muth

2.15.0 (2022-09-19)

2.14.0 (2022-09-04)

  • Add doxygen comments (#777)
  • Contributors: Bence Magyar, Denis Štogl

2.13.0 (2022-08-03)

2.12.1 (2022-07-14)

  • Fix fake components deprecation and add test for it (#771)
  • Contributors: Bence Magyar

2.12.0 (2022-07-09)

  • Hardware interface specific update rate and best practices about it (#716)
  • Deprecate fake components, long live mock components (#762)
  • Contributors: Bence Magyar, Lovro Ivanov

2.11.0 (2022-07-03)

  • [Interfaces] Improved `get_name()[ method of hardware interfaces #api-breaking (]{.title-ref}#737 <<https://github.com/ros-controls/ros2_control/issues/737>>`_)
  • Update maintainers of packages (#753)
  • Remove ament autolint (#749)
  • Full functionality of chainable controllers in controller manager (#667)
    • auto-switching of chained mode in controllers
    • interface-matching approach for managing chaining controllers
  • Contributors: Bence Magyar, Denis Štogl, Lucas Schulze

2.10.0 (2022-06-18)

  • Make RHEL CI happy! (#730)
  • CMakeLists cleanup (#733)
  • Refactored error handling when hardware name is duplicated (#724)
  • Update to clang format 12 (#731)
  • Contributors: Andy Zelenak, Bence Magyar, Kvk Praneeth, Márk Szitanics

2.9.0 (2022-05-19)

  • Resource Manager extension to support management of reference interfaces from chained controllers. (#664)
    • Extend resource manager to manage reference interfaces from controllers.
    • Adjust interface between CM and RM for managing controllers' reference interfaces.
  • Contributors: Denis Štogl

2.8.0 (2022-05-13)

  • Pass time and period to read() and write() (#715)
  • Contributors: Bence Magyar

2.7.0 (2022-04-29)

  • Make URDF available to HW components on initialize (#709)
  • Contributors: Bence Magyar

2.6.0 (2022-04-20)

  • Error if a hardware name is duplicated (#672)
  • Port four bar linkage and differential transmission loaders from ROS1 (#656)
  • Contributors: Andy Zelenak, Márk Szitanics

2.5.0 (2022-03-25)

  • Require lifecycle-msgs in hardware_interface package (#675) (#678)
  • Using should be inside namespace and not global scope. (#673)
  • Modernize C++: Use for-each loops in Resource Manager. (#659)
  • Enable controller manager services to control hardware lifecycle #abi-breaking (#637)
    • Implement CM services for hardware lifecycle management.
    • Added default behavior to activate all controller and added description of CM parameters.
  • Contributors: Denis Štogl

2.4.0 (2022-02-23)

  • Fix transmission loader tests (#642)
  • Contributors: Bence Magyar, Denis Štogl

2.3.0 (2022-02-18)

  • Add a warning if an initial_value is not found for any interface (#623)
  • Contributors: AndyZe

2.2.0 (2022-01-24)

  • Resource Manager API changes for hardware lifecycle #api-breaking #abi-breaking (#589)
    • Towards selective starting and stoping of hardware components. Cleaning and renaming.
    • Move Lifecycle of hardware component to the bottom for better overview.
    • Use the same nomenclature as for controllers. 'start' -> 'activate'; 'stop' -> 'deactivate'

    * Add selective starting and stopping of hardware resources. Add HardwareComponentInfo structure in resource manager. Use constants for HW parameters in tests of resource_manager. Add list hardware components in CM to get details about them and check their status. Use clear name for 'guard' and move release cmd itfs for better readability. RM: Add lock for accesing maps with stored interfaces. Separate hardware components-related services after controllers-related services. Add service for activate/deactive hardware components. Add activation and deactivation through ResourceStorage. This helps to manage available command interfaces.

    • Use lifecycle_msgs/State in ListHardwareCompoents for state representation.
    • Simplify repeatable code in methods.
    • Add HW shutdown structure into ResouceManager.
    • Fill out service callback in CM and add parameter for auto-configure.
    • Move claimed_command_itf_map to ResourceStorage from ResourceManager.
    • Do not automatically configure hardware in RM.
    • Lifecycle and claiming in Resource Manager is working.
    • Extend controller manager to support HW lifecycle.
    • Add also available and claimed status into list components service output.
    • Add SetHardwareComponentState service.
    • Make all output in services debug-output.
    • Remove specific services for hardware lifecycle management and leave only 'set_hardware_component_state' service.
    • Make init_resource_manager less stateful.
    • Keep old api to start/activate all components per default.
    • Remove 'moving'/'non-moving' interface-handling.

    * Remove obsolete 'import_components' methods without hardware info and fix post_initialization test. Co-authored-by: Bence Magyar <<bence.magyar.robotics@gmail.com>>

  • Doc 📓: Add detailed explanation about writing new hardware interface. (#615)
  • Contributors: Denis Štogl

2.1.0 (2022-01-11)

  • Removing 'auto' from function definition to support pre c++ 20 (#608)
  • Support of "initial_value" for the 'FakeSystem' (#598)
  • Contributors: bailaC, Denis Štogl

2.0.0 (2021-12-29)

  • Adding support for 'initial_value' parameter. (#593)
  • fix copy paste error in documentation (#594)
  • Use lambda functions in ros2_control generic_system for repetitive tasks (#579) Co-authored-by: Denis Štogl <<destogl@users.noreply.github.com>>
  • Extend FakeHardware to support <gpio>-tag (#574)
  • Contributors: Michael, bailaC, Denis Štogl

1.2.0 (2021-11-05)

  • Import and Initialize components (#566)
  • Contributors: Alejandro Hernández Cordero

1.1.0 (2021-10-25)

  • Handle errors of hardware that happen on read and write. (#546)
  • Contributors: Denis Štogl, Mathias Aarbo

1.0.0 (2021-09-29)

  • Hardware components extension for lifecycle support (#503)
  • add M_PI macro for windows in test_component_parser.cpp (#502)
  • Extend GenericSystem by adding mapping of position with offset to custom interface. (#469)
  • Remove BOOST compiler definitions for pluginlib from CMakeLists (#514)
  • Do not manually set C++ version to 14 (#516)
  • Contributors: Bence Magyar, Denis Štogl, dzyGIT

0.8.0 (2021-08-28)

  • Use clang format as code formatter (#491)
  • Fixup doc typo (#492)
  • Add docs for fake components (#466)
  • sort interfaces in resource manager (#483)
  • fix format (#484)
  • Transmission parsing v2 (#471)
    • move parsing responsibility to hardware_interface
    • parse transmission type
    • Cleanup unused parser
  • Add pre-commit setup. (#473)
  • Extended GenericSystem with state offset options for testing some special control cases. (#350)
    • Extended GenericSystem with state offset options for testing some special control cases.
    • Better parameter name
    • Apply offset only to position interfaces.
  • Added GPIO parsing and test (#436)
  • Fixes for windows (#443)
    • Fix building on windows
    • Fix MSVC linker error when building tests
    • Fix hang when loading controller on windows
    • Use better log for configuring controller
    • Be consistent with visibility control
    • Use try_lock throw exception on failure
  • Contributors: Akash, Bence Magyar, Denis Štogl, Karsten Knese, Mathias Arbo, Jafar Abdi

0.7.1 (2021-06-15)

  • [FakeSystem] Set default command interface to NaN (#424)
  • Contributors: Denis Štogl, Bence Magyar

0.7.0 (2021-06-06)

  • Add FTS as first semantic components to simplify controllers. (#370)
  • Contributors: bailaC, Denis Štogl, Jordan Palacios

0.6.1 (2021-05-31)

0.6.0 (2021-05-23)

  • Remove the with_value_ptr and class templatization for ReadOnlyHandle (#379)
  • fake_components: Add mimic joint to generic system (#409)
  • List controller claimed interfaces (#407)
  • Contributors: El Jawad Alaa, Jafar Abdi, Jordan Palacios, Bence Magyar

0.5.0 (2021-05-03)

  • Make hardware interface types as const char array rather than const char pointer (#408)
  • use auto instead of uint (#398)
  • hardware_interface mode switching using prepareSwitch doSwitch approach (#348)
  • avoid deprecations (#393)
  • move deprecation note before function definition instead of inside (#381)
  • Replace standard interfaces' hard-coded strings by constants (#376)
  • add deprecation note for with_value_ptr (#378)
  • Contributors: El Jawad Alaa, Jafar Abdi, Karsten Knese, Mateus Amarante, Mathias Hauan Arbo, Bence Magyar

0.4.0 (2021-04-07)

  • [ros2_control_test_assets] Fix typo (#371)
  • uint -> size_t, 0u and auto (#346)
  • Contributors: Karsten Knese, Yutaka Kondo

0.3.0 (2021-03-21)

  • Capatalized error message and put the controllers name and resource name inside quote (#338)
  • Parse True and true in fakesystem, touch up variable name
  • Contributors: Denis Štogl, suab321321

0.2.1 (2021-03-02)

  • Remove unused include (#336)
  • Contributors: Bence Magyar

0.2.0 (2021-02-26)

  • Add "Fake" components for simple integration of framework (#323)
  • Contributors: Denis Štogl

0.1.6 (2021-02-05)

  • correct hardware interface validation in resource manager. (#317)
  • Contributors: Karsten Knese

0.1.5 (2021-02-04)

0.1.4 (2021-02-03)

  • Add test assets package (#289)
  • update doxygen style according to ros2 core standard (#300)
  • Move test_components from test_robot_hardware to hardware_interface package (#288)
  • Contributors: Denis Štogl, João Victor Torres Borges

0.1.3 (2021-01-21)

0.1.2 (2021-01-06)

0.1.1 (2020-12-23)

0.1.0 (2020-12-22)

  • Added starting of resources into CM and RM (#240)
  • Use resource manager (#236)
  • Use constants instead of strings in tests (#241)
  • resource loaning (#224)
  • Allocate memory for components and handles (#207)
  • rename command/state handles to command/state interfaces (#223)
  • Remodel component interfaces (#203)
  • adapt component parser to new xml schema (#209)
  • remove logical components, move hardware resources (#201)
  • Replace rclcpp by rcutils logging tools in hardware_interface pkg (#205)
  • Add a struct for Interface information, update the test URDF (#167)
  • Add virtual modifier to the functions of Joint and Sensor component (#178)
  • Hide component parser api (#157)
  • Remove old joint state and joint command handles (#134)
  • New version of component parser (#127)
  • Dynamic joint handles (#125)
  • Hardware component interfaces (#121)
  • Add ActuatorHandle and Implement string-based interface handle-handling using DynamicJointState message (#112)
  • Change Hardware return type to enum class (#114)
  • Replace RCUTILS_ with RCLCPP_ for logging (#62)
  • import hardware_interface
  • Contributors: Andreas Klintberg, Andy Zelenak, Bence Magyar, Colin MacKenzie, Denis Štogl, Jafar Abdi, Jordan Palacios, Karsten Knese, Mateus Amarante, Matthew Reynolds, Victor Lopez, Yutaka Kondo

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 hardware_interface at Robotics Stack Exchange

Package Summary

Tags No category tags.
Version 3.28.1
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros-controls/ros2_control.git
VCS Type git
VCS Version iron
Last Updated 2024-10-01
Dev Status DEVELOPED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

ros2_control hardware interface

Additional Links

No additional links.

Maintainers

  • Bence Magyar
  • Denis Štogl

Authors

No additional authors.

Overview

For detailed information about this package, please see the ros2_control Documentation!

CHANGELOG

Changelog for package hardware_interface

3.28.1 (2024-09-11)

3.28.0 (2024-08-22)

3.27.0 (2024-07-23)

  • Small improvements to the error output in component parser to make debugging easier. (backport #1580) (#1582)
  • Contributors: mergify[bot]

3.26.0 (2024-07-09)

  • Fix link to gazebosim.org (#1563) (#1565)
  • Add doc page about joint kinematics (#1497) (#1560)
  • Bump version of pre-commit hooks (backport #1556) (#1558)
  • Contributors: mergify[bot]

3.25.0 (2024-04-30)

  • Add missing calculate_dynamics (#1498) (#1512)
  • [Doc] Add documentation about initial_value regarding mock_hw (#1352) (#1514)
  • Move migration notes (#1481)
  • Bump version of pre-commit hooks (backport #1430) (#1435)
  • Contributors: Christoph Fröhlich, Felix Exner

3.24.0 (2024-03-02)

  • [CI] Code coverage + pre-commit (backport #1413) (#1415)
  • Move hardware interface README content to sphinx documentation (#1342) (#1381)
  • Contributors: mergify[bot]

3.23.0 (2024-02-01)

  • Move [test_components]{.title-ref} to own package (backport #1325) (#1341)
  • Contributors: Christoph Fröhlich

3.22.1 (2024-01-25)

  • [CM] Fix controller parameter loading issue in different cases (#1293) (#1331)
  • Contributors: Sai Kishor Kothakota

3.22.0 (2024-01-20)

  • [RM] Fix crash for missing urdf in resource manager (#1301) (#1313)
  • Add additional checks for non existing and not available interfaces. (backport #1218) (#1292)
  • Adding backward compatibility for string-to-double conversion (#1284) (#1289)
  • Fix return of ERROR and calls of cleanup when system is unconfigured of finalized (#1279) (#1287)
  • fix the multiple definitions of lexical casts methods (#1281) (#1283)
  • Use portable version for string-to-double conversion (backport #1257) (#1269)
  • [ResourceManager] adds test for uninitialized hardware (#1243) (#1270)
  • Fix typo in docs (#1219) (#1222)
  • Contributors: mergify[bot]

3.21.2 (2023-12-05)

3.21.1 (2023-11-14)

3.21.0 (2023-11-06)

  • [MockHardware] Fix the issues where hardware with multiple interfaces can not be started because of a logical bug added when adding dynamics calculation functionality. (#1151)
  • Fix potential deadlock in ResourceManager (#925)
  • Contributors: Christopher Wecht, Dr. Denis

3.20.0 (2023-10-31)

  • [ResourceManager] deactivate hardware from read/write return value (#884)
  • Contributors: Felix Exner (fexner)

3.19.1 (2023-10-04)

3.19.0 (2023-10-03)

  • [MockHardware] Added dynamic simulation functionality. (#1028)
  • Add GPIO tag description to docs (#1109)
  • Contributors: Christoph Fröhlich, Dr. Denis

3.18.0 (2023-08-17)

3.17.0 (2023-08-07)

  • Add checks if hardware is initialized. (#1054)
  • Contributors: Dr. Denis

3.16.0 (2023-07-09)

3.15.0 (2023-06-23)

  • Enable setting of initial state in HW compoments (#1046)
  • Ensure instantiation of hardware classes work for python bindings (#1058)
  • Contributors: Dr. Denis, Olivier Stasse

3.14.0 (2023-06-14)

  • Add -Wconversion flag to protect future developments (#1053)
  • [CM] Use [robot_description]{.title-ref} topic instead of parameter and don't crash on empty URDF 🦿 (#940)
  • [MockHardware] Enable disabling of command to simulate HW failures. (#1027)
  • enable ReflowComments to also use ColumnLimit on comments (#1037)
  • Docs: Use branch name substitution for all links (#1031)
  • [URDF Parser] Allow empty urdf tag, e.g., parameter (#1017)
  • Use consequently 'mock' instead of 'fake'. (#1026)
  • Contributors: Christoph Fröhlich, Dr. Denis, Felix Exner (fexner), Manuel Muth, Sai Kishor Kothakota, gwalck

3.13.0 (2023-05-18)

  • Add class for thread management of async hw interfaces (#981)
  • Fix github links on control.ros.org (#1019)
  • Update precommit libraries(#1020)
  • Implement parse_bool and refactor a few (#1014)
  • docs: Fix link to hardware_components (#1009)
  • Contributors: Alejandro Bordallo, Christoph Fröhlich, Felix Exner (fexner), Márk Szitanics, mosfet80

3.12.2 (2023-04-29)

3.12.1 (2023-04-14)

3.12.0 (2023-04-02)

3.11.0 (2023-03-22)

  • Check for missing hardware interfaces that use the gpio tag. (#975)
  • Contributors: Ryan Sandzimier

3.10.0 (2023-03-16)

  • Split transmission interfaces (#938)
  • Contributors: Noel Jiménez García

3.9.1 (2023-03-09)

3.9.0 (2023-02-28)

3.8.0 (2023-02-10)

  • Fix CMake install so overriding works (#926)
  • Async params (#927)
  • Contributors: Márk Szitanics, Tyler Weaver

3.7.0 (2023-01-24)

  • Make double parsing locale independent (#921)
  • Contributors: Henning Kayser

3.6.0 (2023-01-12)

  • 🔧 Fixes and updated on pre-commit hooks and their action (#890)
  • Contributors: Denis Štogl

3.5.1 (2023-01-06)

3.5.0 (2022-12-06)

  • ResourceManager doesn't always log an error on shutdown anymore (#867)
  • Rename class type to plugin name #api-breaking #abi-breaking (#780)
  • Contributors: Bence Magyar, Christopher Wecht

3.4.0 (2022-11-27)

3.3.0 (2022-11-15)

  • [MockHardware] Enalbe initialization non-joint components(#822)
  • Contributors: Felix Exner

3.2.0 (2022-10-15)

  • [MockComponents] Rename 'fake_sensor_commands' to 'mock_sensor_commands' (#782)
  • fix broken links (issue #831) (#833)
  • Contributors: Kvk Praneeth, Manuel Muth, Bence Magyar, Denis Štogl

3.1.0 (2022-10-05)

  • Cleanup Resource Manager a bit to increase clarity. (#816)
  • Handle hardware errors in Resource Manager (#805)
    • Add code for deactivating controller when hardware gets an error on read and write.
  • Contributors: Denis Štogl

3.0.0 (2022-09-19)

2.15.0 (2022-09-19)

2.14.0 (2022-09-04)

  • Add doxygen comments (#777)
  • Contributors: Bence Magyar, Denis Štogl

2.13.0 (2022-08-03)

2.12.1 (2022-07-14)

  • Fix fake components deprecation and add test for it (#771)
  • Contributors: Bence Magyar

2.12.0 (2022-07-09)

  • Hardware interface specific update rate and best practices about it (#716)
  • Deprecate fake components, long live mock components (#762)
  • Contributors: Bence Magyar, Lovro Ivanov

2.11.0 (2022-07-03)

  • [Interfaces] Improved `get_name()[ method of hardware interfaces #api-breaking (]{.title-ref}#737 <<https://github.com/ros-controls/ros2_control/issues/737>>`_)
  • Update maintainers of packages (#753)
  • Remove ament autolint (#749)
  • Full functionality of chainable controllers in controller manager (#667)
    • auto-switching of chained mode in controllers
    • interface-matching approach for managing chaining controllers
  • Contributors: Bence Magyar, Denis Štogl, Lucas Schulze

2.10.0 (2022-06-18)

  • Make RHEL CI happy! (#730)
  • CMakeLists cleanup (#733)
  • Refactored error handling when hardware name is duplicated (#724)
  • Update to clang format 12 (#731)
  • Contributors: Andy Zelenak, Bence Magyar, Kvk Praneeth, Márk Szitanics

2.9.0 (2022-05-19)

  • Resource Manager extension to support management of reference interfaces from chained controllers. (#664)
    • Extend resource manager to manage reference interfaces from controllers.
    • Adjust interface between CM and RM for managing controllers' reference interfaces.
  • Contributors: Denis Štogl

2.8.0 (2022-05-13)

  • Pass time and period to read() and write() (#715)
  • Contributors: Bence Magyar

2.7.0 (2022-04-29)

  • Make URDF available to HW components on initialize (#709)
  • Contributors: Bence Magyar

2.6.0 (2022-04-20)

  • Error if a hardware name is duplicated (#672)
  • Port four bar linkage and differential transmission loaders from ROS1 (#656)
  • Contributors: Andy Zelenak, Márk Szitanics

2.5.0 (2022-03-25)

  • Require lifecycle-msgs in hardware_interface package (#675) (#678)
  • Using should be inside namespace and not global scope. (#673)
  • Modernize C++: Use for-each loops in Resource Manager. (#659)
  • Enable controller manager services to control hardware lifecycle #abi-breaking (#637)
    • Implement CM services for hardware lifecycle management.
    • Added default behavior to activate all controller and added description of CM parameters.
  • Contributors: Denis Štogl

2.4.0 (2022-02-23)

  • Fix transmission loader tests (#642)
  • Contributors: Bence Magyar, Denis Štogl

2.3.0 (2022-02-18)

  • Add a warning if an initial_value is not found for any interface (#623)
  • Contributors: AndyZe

2.2.0 (2022-01-24)

  • Resource Manager API changes for hardware lifecycle #api-breaking #abi-breaking (#589)
    • Towards selective starting and stoping of hardware components. Cleaning and renaming.
    • Move Lifecycle of hardware component to the bottom for better overview.
    • Use the same nomenclature as for controllers. 'start' -> 'activate'; 'stop' -> 'deactivate'

    * Add selective starting and stopping of hardware resources. Add HardwareComponentInfo structure in resource manager. Use constants for HW parameters in tests of resource_manager. Add list hardware components in CM to get details about them and check their status. Use clear name for 'guard' and move release cmd itfs for better readability. RM: Add lock for accesing maps with stored interfaces. Separate hardware components-related services after controllers-related services. Add service for activate/deactive hardware components. Add activation and deactivation through ResourceStorage. This helps to manage available command interfaces.

    • Use lifecycle_msgs/State in ListHardwareCompoents for state representation.
    • Simplify repeatable code in methods.
    • Add HW shutdown structure into ResouceManager.
    • Fill out service callback in CM and add parameter for auto-configure.
    • Move claimed_command_itf_map to ResourceStorage from ResourceManager.
    • Do not automatically configure hardware in RM.
    • Lifecycle and claiming in Resource Manager is working.
    • Extend controller manager to support HW lifecycle.
    • Add also available and claimed status into list components service output.
    • Add SetHardwareComponentState service.
    • Make all output in services debug-output.
    • Remove specific services for hardware lifecycle management and leave only 'set_hardware_component_state' service.
    • Make init_resource_manager less stateful.
    • Keep old api to start/activate all components per default.
    • Remove 'moving'/'non-moving' interface-handling.

    * Remove obsolete 'import_components' methods without hardware info and fix post_initialization test. Co-authored-by: Bence Magyar <<bence.magyar.robotics@gmail.com>>

  • Doc 📓: Add detailed explanation about writing new hardware interface. (#615)
  • Contributors: Denis Štogl

2.1.0 (2022-01-11)

  • Removing 'auto' from function definition to support pre c++ 20 (#608)
  • Support of "initial_value" for the 'FakeSystem' (#598)
  • Contributors: bailaC, Denis Štogl

2.0.0 (2021-12-29)

  • Adding support for 'initial_value' parameter. (#593)
  • fix copy paste error in documentation (#594)
  • Use lambda functions in ros2_control generic_system for repetitive tasks (#579) Co-authored-by: Denis Štogl <<destogl@users.noreply.github.com>>
  • Extend FakeHardware to support <gpio>-tag (#574)
  • Contributors: Michael, bailaC, Denis Štogl

1.2.0 (2021-11-05)

  • Import and Initialize components (#566)
  • Contributors: Alejandro Hernández Cordero

1.1.0 (2021-10-25)

  • Handle errors of hardware that happen on read and write. (#546)
  • Contributors: Denis Štogl, Mathias Aarbo

1.0.0 (2021-09-29)

  • Hardware components extension for lifecycle support (#503)
  • add M_PI macro for windows in test_component_parser.cpp (#502)
  • Extend GenericSystem by adding mapping of position with offset to custom interface. (#469)
  • Remove BOOST compiler definitions for pluginlib from CMakeLists (#514)
  • Do not manually set C++ version to 14 (#516)
  • Contributors: Bence Magyar, Denis Štogl, dzyGIT

0.8.0 (2021-08-28)

  • Use clang format as code formatter (#491)
  • Fixup doc typo (#492)
  • Add docs for fake components (#466)
  • sort interfaces in resource manager (#483)
  • fix format (#484)
  • Transmission parsing v2 (#471)
    • move parsing responsibility to hardware_interface
    • parse transmission type
    • Cleanup unused parser
  • Add pre-commit setup. (#473)
  • Extended GenericSystem with state offset options for testing some special control cases. (#350)
    • Extended GenericSystem with state offset options for testing some special control cases.
    • Better parameter name
    • Apply offset only to position interfaces.
  • Added GPIO parsing and test (#436)
  • Fixes for windows (#443)
    • Fix building on windows
    • Fix MSVC linker error when building tests
    • Fix hang when loading controller on windows
    • Use better log for configuring controller
    • Be consistent with visibility control
    • Use try_lock throw exception on failure
  • Contributors: Akash, Bence Magyar, Denis Štogl, Karsten Knese, Mathias Arbo, Jafar Abdi

0.7.1 (2021-06-15)

  • [FakeSystem] Set default command interface to NaN (#424)
  • Contributors: Denis Štogl, Bence Magyar

0.7.0 (2021-06-06)

  • Add FTS as first semantic components to simplify controllers. (#370)
  • Contributors: bailaC, Denis Štogl, Jordan Palacios

0.6.1 (2021-05-31)

0.6.0 (2021-05-23)

  • Remove the with_value_ptr and class templatization for ReadOnlyHandle (#379)
  • fake_components: Add mimic joint to generic system (#409)
  • List controller claimed interfaces (#407)
  • Contributors: El Jawad Alaa, Jafar Abdi, Jordan Palacios, Bence Magyar

0.5.0 (2021-05-03)

  • Make hardware interface types as const char array rather than const char pointer (#408)
  • use auto instead of uint (#398)
  • hardware_interface mode switching using prepareSwitch doSwitch approach (#348)
  • avoid deprecations (#393)
  • move deprecation note before function definition instead of inside (#381)
  • Replace standard interfaces' hard-coded strings by constants (#376)
  • add deprecation note for with_value_ptr (#378)
  • Contributors: El Jawad Alaa, Jafar Abdi, Karsten Knese, Mateus Amarante, Mathias Hauan Arbo, Bence Magyar

0.4.0 (2021-04-07)

  • [ros2_control_test_assets] Fix typo (#371)
  • uint -> size_t, 0u and auto (#346)
  • Contributors: Karsten Knese, Yutaka Kondo

0.3.0 (2021-03-21)

  • Capatalized error message and put the controllers name and resource name inside quote (#338)
  • Parse True and true in fakesystem, touch up variable name
  • Contributors: Denis Štogl, suab321321

0.2.1 (2021-03-02)

  • Remove unused include (#336)
  • Contributors: Bence Magyar

0.2.0 (2021-02-26)

  • Add "Fake" components for simple integration of framework (#323)
  • Contributors: Denis Štogl

0.1.6 (2021-02-05)

  • correct hardware interface validation in resource manager. (#317)
  • Contributors: Karsten Knese

0.1.5 (2021-02-04)

0.1.4 (2021-02-03)

  • Add test assets package (#289)
  • update doxygen style according to ros2 core standard (#300)
  • Move test_components from test_robot_hardware to hardware_interface package (#288)
  • Contributors: Denis Štogl, João Victor Torres Borges

0.1.3 (2021-01-21)

0.1.2 (2021-01-06)

0.1.1 (2020-12-23)

0.1.0 (2020-12-22)

  • Added starting of resources into CM and RM (#240)
  • Use resource manager (#236)
  • Use constants instead of strings in tests (#241)
  • resource loaning (#224)
  • Allocate memory for components and handles (#207)
  • rename command/state handles to command/state interfaces (#223)
  • Remodel component interfaces (#203)
  • adapt component parser to new xml schema (#209)
  • remove logical components, move hardware resources (#201)
  • Replace rclcpp by rcutils logging tools in hardware_interface pkg (#205)
  • Add a struct for Interface information, update the test URDF (#167)
  • Add virtual modifier to the functions of Joint and Sensor component (#178)
  • Hide component parser api (#157)
  • Remove old joint state and joint command handles (#134)
  • New version of component parser (#127)
  • Dynamic joint handles (#125)
  • Hardware component interfaces (#121)
  • Add ActuatorHandle and Implement string-based interface handle-handling using DynamicJointState message (#112)
  • Change Hardware return type to enum class (#114)
  • Replace RCUTILS_ with RCLCPP_ for logging (#62)
  • import hardware_interface
  • Contributors: Andreas Klintberg, Andy Zelenak, Bence Magyar, Colin MacKenzie, Denis Štogl, Jafar Abdi, Jordan Palacios, Karsten Knese, Mateus Amarante, Matthew Reynolds, Victor Lopez, Yutaka Kondo

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 hardware_interface at Robotics Stack Exchange

Package Summary

Tags No category tags.
Version 4.17.0
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros-controls/ros2_control.git
VCS Type git
VCS Version master
Last Updated 2024-10-01
Dev Status DEVELOPED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

ros2_control hardware interface

Additional Links

No additional links.

Maintainers

  • Bence Magyar
  • Denis Štogl

Authors

No additional authors.

Overview

For detailed information about this package, please see the ros2_control Documentation!

CHANGELOG

Changelog for package hardware_interface

4.17.0 (2024-09-11)

  • Log exception type when catching the exception (#1749)
  • Fix spam of logs on failed hardware component initialization (#1719)
  • [HWItfs] Add key-value-storage to the InterfaceInfo (#1421)
  • Rename [get_state]{.title-ref} and [set_state]{.title-ref} Functions to [get/set_lifecylce_state]{.title-ref} (variant support) (#1683)
  • Contributors: Manuel Muth, Sai Kishor Kothakota

4.16.1 (2024-08-24)

4.16.0 (2024-08-22)

  • Use handle_name_ variable instead of allocating for every [get_name]{.title-ref} call (#1706)
  • Introduce Creation of Handles with InterfaceDescription (variant support) (#1679)
  • Preparation of Handles for Variant Support (#1678)
  • [RM] Decouple read/write cycles of each component with mutex to not block other components (#1646)
  • Contributors: Manuel Muth, Sai Kishor Kothakota

4.15.0 (2024-08-05)

  • [RM] Add [get_hardware_info]{.title-ref} method to the Hardware Components (#1643)
  • add missing rclcpp logging include for Humble compatibility build (#1635)
  • Contributors: Sai Kishor Kothakota

4.14.0 (2024-07-23)

  • Unused header cleanup (#1627)
  • [ResourceManager] Make destructor virtual for use in derived classes (#1607)
  • Contributors: Henry Moore, Sai Kishor Kothakota

4.13.0 (2024-07-08)

  • [ResourceManager] Propagate access to logger and clock interfaces to HardwareComponent (#1585)
  • [ControllerChaining] Export state interfaces from chainable controllers (#1021)
  • Remove mimic parameter from ros2_control tag (#1553)
  • Contributors: Christoph Fröhlich, Sai Kishor Kothakota

4.12.0 (2024-07-01)

  • Add resources_lock_ lock_guards to avoid race condition when loading robot_description through topic (#1451)
  • [RM] Rename [load_urdf]{.title-ref} method to [load_and_initialize_components]{.title-ref} and add error handling there to avoid stack crashing when error happens. (#1354)
  • Small improvements to the error output in component parser to make debugging easier. (#1580)
  • Fix link to gazebosim.org (#1563)
  • Add doc page about joint kinematics (#1497)
  • Bump version of pre-commit hooks (#1556)
  • [Feature] Hardware Components Grouping (#1458)
  • Contributors: Christoph Fröhlich, Dr. Denis, Sai Kishor Kothakota, github-actions[bot]

4.11.0 (2024-05-14)

  • Add find_package for ament_cmake_gen_version_h (#1534)
  • Parse URDF soft_limits into the HardwareInfo structure (#1488)
  • Contributors: Christoph Fröhlich, adriaroig

4.10.0 (2024-05-08)

  • Add hardware components exception handling in resource manager (#1508)
  • Working async controllers and components [not synchronized] (#1041)
  • Parse URDF joint hard limits into the HardwareInfo structure (#1472)
  • Add fallback controllers list to the ControllerInfo (#1503)
  • Add more common hardware interface type constants (#1500)
  • Contributors: Márk Szitanics, Sai Kishor Kothakota

4.9.0 (2024-04-30)

  • Add missing calculate_dynamics (#1498)
  • Component parser: Get mimic information from URDF (#1256)
  • Contributors: Christoph Fröhlich

4.8.0 (2024-03-27)

  • generate version.h file per package using the ament_generate_version_header (#1449)
  • Contributors: Sai Kishor Kothakota

4.7.0 (2024-03-22)

  • Codeformat from new pre-commit config (#1433)
  • Contributors: Christoph Fröhlich

4.6.0 (2024-03-02)

  • Add -Werror=missing-braces to compile options (#1423)
  • [CI] Code coverage + pre-commit (#1413)
  • Contributors: Christoph Fröhlich, Sai Kishor Kothakota

4.5.0 (2024-02-12)

  • Add missing export macros in lexical_casts.hpp (#1382)
  • Move hardware interface README content to sphinx documentation (#1342)
  • [Doc] Add documentation about initial_value regarding mock_hw (#1352)
  • Contributors: Felix Exner (fexner), Mateus Menezes, Silvio Traversaro

4.4.0 (2024-01-31)

  • Move [test_components]{.title-ref} to own package (#1325)
  • Fix controller parameter loading issue in different cases (#1293)
  • Contributors: Christoph Fröhlich, Sai Kishor Kothakota

4.3.0 (2024-01-20)

  • [RM] Fix crash for missing urdf in resource manager (#1301)
  • Add additional checks for non existing and not available interfaces. (#1218)
  • Adding backward compatibility for string-to-double conversion (#1284)
  • [Doc] Make interface comments clearer in the doc strings. (#1288)
  • Fix return of ERROR and calls of cleanup when system is unconfigured of finalized (#1279)
  • fix the multiple definitions of lexical casts methods (#1281)
  • [ResourceManager] adds test for uninitialized hardware (#1243)
  • Use portable version for string-to-double conversion (#1257)
  • Fix typo in docs (#1219)
  • Contributors: Christoph Fröhlich, Dr. Denis, Maximilian Schik, Sai Kishor Kothakota, Stephanie Eng, bailaC

4.2.0 (2023-12-12)

4.1.0 (2023-11-30)

  • Add few warning compiler options to error (#1181)
  • Contributors: Sai Kishor Kothakota

4.0.0 (2023-11-21)

  • [MockHardware] Remove all deprecated options and deprecated plugins from the library. (#1150)
  • Contributors: Dr. Denis

3.21.0 (2023-11-06)

  • [MockHardware] Fix the issues where hardware with multiple interfaces can not be started because of a logical bug added when adding dynamics calculation functionality. (#1151)
  • Fix potential deadlock in ResourceManager (#925)
  • Contributors: Christopher Wecht, Dr. Denis

3.20.0 (2023-10-31)

  • [ResourceManager] deactivate hardware from read/write return value (#884)
  • Contributors: Felix Exner (fexner)

3.19.1 (2023-10-04)

3.19.0 (2023-10-03)

  • [MockHardware] Added dynamic simulation functionality. (#1028)
  • Add GPIO tag description to docs (#1109)
  • Contributors: Christoph Fröhlich, Dr. Denis

3.18.0 (2023-08-17)

3.17.0 (2023-08-07)

  • Add checks if hardware is initialized. (#1054)
  • Contributors: Dr. Denis

3.16.0 (2023-07-09)

3.15.0 (2023-06-23)

  • Enable setting of initial state in HW compoments (#1046)
  • Ensure instantiation of hardware classes work for python bindings (#1058)
  • Contributors: Dr. Denis, Olivier Stasse

3.14.0 (2023-06-14)

  • Add -Wconversion flag to protect future developments (#1053)
  • [CM] Use [robot_description]{.title-ref} topic instead of parameter and don't crash on empty URDF 🦿 (#940)
  • [MockHardware] Enable disabling of command to simulate HW failures. (#1027)
  • enable ReflowComments to also use ColumnLimit on comments (#1037)
  • Docs: Use branch name substitution for all links (#1031)
  • [URDF Parser] Allow empty urdf tag, e.g., parameter (#1017)
  • Use consequently 'mock' instead of 'fake'. (#1026)
  • Contributors: Christoph Fröhlich, Dr. Denis, Felix Exner (fexner), Manuel Muth, Sai Kishor Kothakota, gwalck

3.13.0 (2023-05-18)

  • Add class for thread management of async hw interfaces (#981)
  • Fix github links on control.ros.org (#1019)
  • Update precommit libraries(#1020)
  • Implement parse_bool and refactor a few (#1014)
  • docs: Fix link to hardware_components (#1009)
  • Contributors: Alejandro Bordallo, Christoph Fröhlich, Felix Exner (fexner), Márk Szitanics, mosfet80

3.12.2 (2023-04-29)

3.12.1 (2023-04-14)

3.12.0 (2023-04-02)

3.11.0 (2023-03-22)

  • Check for missing hardware interfaces that use the gpio tag. (#975)
  • Contributors: Ryan Sandzimier

3.10.0 (2023-03-16)

  • Split transmission interfaces (#938)
  • Contributors: Noel Jiménez García

3.9.1 (2023-03-09)

3.9.0 (2023-02-28)

3.8.0 (2023-02-10)

  • Fix CMake install so overriding works (#926)
  • Async params (#927)
  • Contributors: Márk Szitanics, Tyler Weaver

3.7.0 (2023-01-24)

  • Make double parsing locale independent (#921)
  • Contributors: Henning Kayser

3.6.0 (2023-01-12)

  • 🔧 Fixes and updated on pre-commit hooks and their action (#890)
  • Contributors: Denis Štogl

3.5.1 (2023-01-06)

3.5.0 (2022-12-06)

  • ResourceManager doesn't always log an error on shutdown anymore (#867)
  • Rename class type to plugin name #api-breaking #abi-breaking (#780)
  • Contributors: Bence Magyar, Christopher Wecht

3.4.0 (2022-11-27)

3.3.0 (2022-11-15)

  • [MockHardware] Enalbe initialization non-joint components(#822)
  • Contributors: Felix Exner

3.2.0 (2022-10-15)

  • [MockComponents] Rename 'fake_sensor_commands' to 'mock_sensor_commands' (#782)
  • fix broken links (issue #831) (#833)
  • Contributors: Kvk Praneeth, Manuel Muth, Bence Magyar, Denis Štogl

3.1.0 (2022-10-05)

  • Cleanup Resource Manager a bit to increase clarity. (#816)
  • Handle hardware errors in Resource Manager (#805)
    • Add code for deactivating controller when hardware gets an error on read and write.
  • Contributors: Denis Štogl

3.0.0 (2022-09-19)

2.15.0 (2022-09-19)

2.14.0 (2022-09-04)

  • Add doxygen comments (#777)
  • Contributors: Bence Magyar, Denis Štogl

2.13.0 (2022-08-03)

2.12.1 (2022-07-14)

  • Fix fake components deprecation and add test for it (#771)
  • Contributors: Bence Magyar

2.12.0 (2022-07-09)

  • Hardware interface specific update rate and best practices about it (#716)
  • Deprecate fake components, long live mock components (#762)
  • Contributors: Bence Magyar, Lovro Ivanov

2.11.0 (2022-07-03)

  • [Interfaces] Improved `get_name()[ method of hardware interfaces #api-breaking (]{.title-ref}#737 <<https://github.com/ros-controls/ros2_control/issues/737>>`_)
  • Update maintainers of packages (#753)
  • Remove ament autolint (#749)
  • Full functionality of chainable controllers in controller manager (#667)
    • auto-switching of chained mode in controllers
    • interface-matching approach for managing chaining controllers
  • Contributors: Bence Magyar, Denis Štogl, Lucas Schulze

2.10.0 (2022-06-18)

  • Make RHEL CI happy! (#730)
  • CMakeLists cleanup (#733)
  • Refactored error handling when hardware name is duplicated (#724)
  • Update to clang format 12 (#731)
  • Contributors: Andy Zelenak, Bence Magyar, Kvk Praneeth, Márk Szitanics

2.9.0 (2022-05-19)

  • Resource Manager extension to support management of reference interfaces from chained controllers. (#664)
    • Extend resource manager to manage reference interfaces from controllers.
    • Adjust interface between CM and RM for managing controllers' reference interfaces.
  • Contributors: Denis Štogl

2.8.0 (2022-05-13)

  • Pass time and period to read() and write() (#715)
  • Contributors: Bence Magyar

2.7.0 (2022-04-29)

  • Make URDF available to HW components on initialize (#709)
  • Contributors: Bence Magyar

2.6.0 (2022-04-20)

  • Error if a hardware name is duplicated (#672)
  • Port four bar linkage and differential transmission loaders from ROS1 (#656)
  • Contributors: Andy Zelenak, Márk Szitanics

2.5.0 (2022-03-25)

  • Require lifecycle-msgs in hardware_interface package (#675) (#678)
  • Using should be inside namespace and not global scope. (#673)
  • Modernize C++: Use for-each loops in Resource Manager. (#659)
  • Enable controller manager services to control hardware lifecycle #abi-breaking (#637)
    • Implement CM services for hardware lifecycle management.
    • Added default behavior to activate all controller and added description of CM parameters.
  • Contributors: Denis Štogl

2.4.0 (2022-02-23)

  • Fix transmission loader tests (#642)
  • Contributors: Bence Magyar, Denis Štogl

2.3.0 (2022-02-18)

  • Add a warning if an initial_value is not found for any interface (#623)
  • Contributors: AndyZe

2.2.0 (2022-01-24)

  • Resource Manager API changes for hardware lifecycle #api-breaking #abi-breaking (#589)
    • Towards selective starting and stoping of hardware components. Cleaning and renaming.
    • Move Lifecycle of hardware component to the bottom for better overview.
    • Use the same nomenclature as for controllers. 'start' -> 'activate'; 'stop' -> 'deactivate'

    * Add selective starting and stopping of hardware resources. Add HardwareComponentInfo structure in resource manager. Use constants for HW parameters in tests of resource_manager. Add list hardware components in CM to get details about them and check their status. Use clear name for 'guard' and move release cmd itfs for better readability. RM: Add lock for accesing maps with stored interfaces. Separate hardware components-related services after controllers-related services. Add service for activate/deactive hardware components. Add activation and deactivation through ResourceStorage. This helps to manage available command interfaces.

    • Use lifecycle_msgs/State in ListHardwareCompoents for state representation.
    • Simplify repeatable code in methods.
    • Add HW shutdown structure into ResouceManager.
    • Fill out service callback in CM and add parameter for auto-configure.
    • Move claimed_command_itf_map to ResourceStorage from ResourceManager.
    • Do not automatically configure hardware in RM.
    • Lifecycle and claiming in Resource Manager is working.
    • Extend controller manager to support HW lifecycle.
    • Add also available and claimed status into list components service output.
    • Add SetHardwareComponentState service.
    • Make all output in services debug-output.
    • Remove specific services for hardware lifecycle management and leave only 'set_hardware_component_state' service.
    • Make init_resource_manager less stateful.
    • Keep old api to start/activate all components per default.
    • Remove 'moving'/'non-moving' interface-handling.

    * Remove obsolete 'import_components' methods without hardware info and fix post_initialization test. Co-authored-by: Bence Magyar <<bence.magyar.robotics@gmail.com>>

  • Doc 📓: Add detailed explanation about writing new hardware interface. (#615)
  • Contributors: Denis Štogl

2.1.0 (2022-01-11)

  • Removing 'auto' from function definition to support pre c++ 20 (#608)
  • Support of "initial_value" for the 'FakeSystem' (#598)
  • Contributors: bailaC, Denis Štogl

2.0.0 (2021-12-29)

  • Adding support for 'initial_value' parameter. (#593)
  • fix copy paste error in documentation (#594)
  • Use lambda functions in ros2_control generic_system for repetitive tasks (#579) Co-authored-by: Denis Štogl <<destogl@users.noreply.github.com>>
  • Extend FakeHardware to support <gpio>-tag (#574)
  • Contributors: Michael, bailaC, Denis Štogl

1.2.0 (2021-11-05)

  • Import and Initialize components (#566)
  • Contributors: Alejandro Hernández Cordero

1.1.0 (2021-10-25)

  • Handle errors of hardware that happen on read and write. (#546)
  • Contributors: Denis Štogl, Mathias Aarbo

1.0.0 (2021-09-29)

  • Hardware components extension for lifecycle support (#503)
  • add M_PI macro for windows in test_component_parser.cpp (#502)
  • Extend GenericSystem by adding mapping of position with offset to custom interface. (#469)
  • Remove BOOST compiler definitions for pluginlib from CMakeLists (#514)
  • Do not manually set C++ version to 14 (#516)
  • Contributors: Bence Magyar, Denis Štogl, dzyGIT

0.8.0 (2021-08-28)

  • Use clang format as code formatter (#491)
  • Fixup doc typo (#492)
  • Add docs for fake components (#466)
  • sort interfaces in resource manager (#483)
  • fix format (#484)
  • Transmission parsing v2 (#471)
    • move parsing responsibility to hardware_interface
    • parse transmission type
    • Cleanup unused parser
  • Add pre-commit setup. (#473)
  • Extended GenericSystem with state offset options for testing some special control cases. (#350)
    • Extended GenericSystem with state offset options for testing some special control cases.
    • Better parameter name
    • Apply offset only to position interfaces.
  • Added GPIO parsing and test (#436)
  • Fixes for windows (#443)
    • Fix building on windows
    • Fix MSVC linker error when building tests
    • Fix hang when loading controller on windows
    • Use better log for configuring controller
    • Be consistent with visibility control
    • Use try_lock throw exception on failure
  • Contributors: Akash, Bence Magyar, Denis Štogl, Karsten Knese, Mathias Arbo, Jafar Abdi

0.7.1 (2021-06-15)

  • [FakeSystem] Set default command interface to NaN (#424)
  • Contributors: Denis Štogl, Bence Magyar

0.7.0 (2021-06-06)

  • Add FTS as first semantic components to simplify controllers. (#370)
  • Contributors: bailaC, Denis Štogl, Jordan Palacios

0.6.1 (2021-05-31)

0.6.0 (2021-05-23)

  • Remove the with_value_ptr and class templatization for ReadOnlyHandle (#379)
  • fake_components: Add mimic joint to generic system (#409)
  • List controller claimed interfaces (#407)
  • Contributors: El Jawad Alaa, Jafar Abdi, Jordan Palacios, Bence Magyar

0.5.0 (2021-05-03)

  • Make hardware interface types as const char array rather than const char pointer (#408)
  • use auto instead of uint (#398)
  • hardware_interface mode switching using prepareSwitch doSwitch approach (#348)
  • avoid deprecations (#393)
  • move deprecation note before function definition instead of inside (#381)
  • Replace standard interfaces' hard-coded strings by constants (#376)
  • add deprecation note for with_value_ptr (#378)
  • Contributors: El Jawad Alaa, Jafar Abdi, Karsten Knese, Mateus Amarante, Mathias Hauan Arbo, Bence Magyar

0.4.0 (2021-04-07)

  • [ros2_control_test_assets] Fix typo (#371)
  • uint -> size_t, 0u and auto (#346)
  • Contributors: Karsten Knese, Yutaka Kondo

0.3.0 (2021-03-21)

  • Capatalized error message and put the controllers name and resource name inside quote (#338)
  • Parse True and true in fakesystem, touch up variable name
  • Contributors: Denis Štogl, suab321321

0.2.1 (2021-03-02)

  • Remove unused include (#336)
  • Contributors: Bence Magyar

0.2.0 (2021-02-26)

  • Add "Fake" components for simple integration of framework (#323)
  • Contributors: Denis Štogl

0.1.6 (2021-02-05)

  • correct hardware interface validation in resource manager. (#317)
  • Contributors: Karsten Knese

0.1.5 (2021-02-04)

0.1.4 (2021-02-03)

  • Add test assets package (#289)
  • update doxygen style according to ros2 core standard (#300)
  • Move test_components from test_robot_hardware to hardware_interface package (#288)
  • Contributors: Denis Štogl, João Victor Torres Borges

0.1.3 (2021-01-21)

0.1.2 (2021-01-06)

0.1.1 (2020-12-23)

0.1.0 (2020-12-22)

  • Added starting of resources into CM and RM (#240)
  • Use resource manager (#236)
  • Use constants instead of strings in tests (#241)
  • resource loaning (#224)
  • Allocate memory for components and handles (#207)
  • rename command/state handles to command/state interfaces (#223)
  • Remodel component interfaces (#203)
  • adapt component parser to new xml schema (#209)
  • remove logical components, move hardware resources (#201)
  • Replace rclcpp by rcutils logging tools in hardware_interface pkg (#205)
  • Add a struct for Interface information, update the test URDF (#167)
  • Add virtual modifier to the functions of Joint and Sensor component (#178)
  • Hide component parser api (#157)
  • Remove old joint state and joint command handles (#134)
  • New version of component parser (#127)
  • Dynamic joint handles (#125)
  • Hardware component interfaces (#121)
  • Add ActuatorHandle and Implement string-based interface handle-handling using DynamicJointState message (#112)
  • Change Hardware return type to enum class (#114)
  • Replace RCUTILS_ with RCLCPP_ for logging (#62)
  • import hardware_interface
  • Contributors: Andreas Klintberg, Andy Zelenak, Bence Magyar, Colin MacKenzie, Denis Štogl, Jafar Abdi, Jordan Palacios, Karsten Knese, Mateus Amarante, Matthew Reynolds, Victor Lopez, Yutaka Kondo

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 hardware_interface at Robotics Stack Exchange

Package Summary

Tags No category tags.
Version 4.17.0
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros-controls/ros2_control.git
VCS Type git
VCS Version master
Last Updated 2024-10-01
Dev Status DEVELOPED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

ros2_control hardware interface

Additional Links

No additional links.

Maintainers

  • Bence Magyar
  • Denis Štogl

Authors

No additional authors.

Overview

For detailed information about this package, please see the ros2_control Documentation!

CHANGELOG

Changelog for package hardware_interface

4.17.0 (2024-09-11)

  • Log exception type when catching the exception (#1749)
  • Fix spam of logs on failed hardware component initialization (#1719)
  • [HWItfs] Add key-value-storage to the InterfaceInfo (#1421)
  • Rename [get_state]{.title-ref} and [set_state]{.title-ref} Functions to [get/set_lifecylce_state]{.title-ref} (variant support) (#1683)
  • Contributors: Manuel Muth, Sai Kishor Kothakota

4.16.1 (2024-08-24)

4.16.0 (2024-08-22)

  • Use handle_name_ variable instead of allocating for every [get_name]{.title-ref} call (#1706)
  • Introduce Creation of Handles with InterfaceDescription (variant support) (#1679)
  • Preparation of Handles for Variant Support (#1678)
  • [RM] Decouple read/write cycles of each component with mutex to not block other components (#1646)
  • Contributors: Manuel Muth, Sai Kishor Kothakota

4.15.0 (2024-08-05)

  • [RM] Add [get_hardware_info]{.title-ref} method to the Hardware Components (#1643)
  • add missing rclcpp logging include for Humble compatibility build (#1635)
  • Contributors: Sai Kishor Kothakota

4.14.0 (2024-07-23)

  • Unused header cleanup (#1627)
  • [ResourceManager] Make destructor virtual for use in derived classes (#1607)
  • Contributors: Henry Moore, Sai Kishor Kothakota

4.13.0 (2024-07-08)

  • [ResourceManager] Propagate access to logger and clock interfaces to HardwareComponent (#1585)
  • [ControllerChaining] Export state interfaces from chainable controllers (#1021)
  • Remove mimic parameter from ros2_control tag (#1553)
  • Contributors: Christoph Fröhlich, Sai Kishor Kothakota

4.12.0 (2024-07-01)

  • Add resources_lock_ lock_guards to avoid race condition when loading robot_description through topic (#1451)
  • [RM] Rename [load_urdf]{.title-ref} method to [load_and_initialize_components]{.title-ref} and add error handling there to avoid stack crashing when error happens. (#1354)
  • Small improvements to the error output in component parser to make debugging easier. (#1580)
  • Fix link to gazebosim.org (#1563)
  • Add doc page about joint kinematics (#1497)
  • Bump version of pre-commit hooks (#1556)
  • [Feature] Hardware Components Grouping (#1458)
  • Contributors: Christoph Fröhlich, Dr. Denis, Sai Kishor Kothakota, github-actions[bot]

4.11.0 (2024-05-14)

  • Add find_package for ament_cmake_gen_version_h (#1534)
  • Parse URDF soft_limits into the HardwareInfo structure (#1488)
  • Contributors: Christoph Fröhlich, adriaroig

4.10.0 (2024-05-08)

  • Add hardware components exception handling in resource manager (#1508)
  • Working async controllers and components [not synchronized] (#1041)
  • Parse URDF joint hard limits into the HardwareInfo structure (#1472)
  • Add fallback controllers list to the ControllerInfo (#1503)
  • Add more common hardware interface type constants (#1500)
  • Contributors: Márk Szitanics, Sai Kishor Kothakota

4.9.0 (2024-04-30)

  • Add missing calculate_dynamics (#1498)
  • Component parser: Get mimic information from URDF (#1256)
  • Contributors: Christoph Fröhlich

4.8.0 (2024-03-27)

  • generate version.h file per package using the ament_generate_version_header (#1449)
  • Contributors: Sai Kishor Kothakota

4.7.0 (2024-03-22)

  • Codeformat from new pre-commit config (#1433)
  • Contributors: Christoph Fröhlich

4.6.0 (2024-03-02)

  • Add -Werror=missing-braces to compile options (#1423)
  • [CI] Code coverage + pre-commit (#1413)
  • Contributors: Christoph Fröhlich, Sai Kishor Kothakota

4.5.0 (2024-02-12)

  • Add missing export macros in lexical_casts.hpp (#1382)
  • Move hardware interface README content to sphinx documentation (#1342)
  • [Doc] Add documentation about initial_value regarding mock_hw (#1352)
  • Contributors: Felix Exner (fexner), Mateus Menezes, Silvio Traversaro

4.4.0 (2024-01-31)

  • Move [test_components]{.title-ref} to own package (#1325)
  • Fix controller parameter loading issue in different cases (#1293)
  • Contributors: Christoph Fröhlich, Sai Kishor Kothakota

4.3.0 (2024-01-20)

  • [RM] Fix crash for missing urdf in resource manager (#1301)
  • Add additional checks for non existing and not available interfaces. (#1218)
  • Adding backward compatibility for string-to-double conversion (#1284)
  • [Doc] Make interface comments clearer in the doc strings. (#1288)
  • Fix return of ERROR and calls of cleanup when system is unconfigured of finalized (#1279)
  • fix the multiple definitions of lexical casts methods (#1281)
  • [ResourceManager] adds test for uninitialized hardware (#1243)
  • Use portable version for string-to-double conversion (#1257)
  • Fix typo in docs (#1219)
  • Contributors: Christoph Fröhlich, Dr. Denis, Maximilian Schik, Sai Kishor Kothakota, Stephanie Eng, bailaC

4.2.0 (2023-12-12)

4.1.0 (2023-11-30)

  • Add few warning compiler options to error (#1181)
  • Contributors: Sai Kishor Kothakota

4.0.0 (2023-11-21)

  • [MockHardware] Remove all deprecated options and deprecated plugins from the library. (#1150)
  • Contributors: Dr. Denis

3.21.0 (2023-11-06)

  • [MockHardware] Fix the issues where hardware with multiple interfaces can not be started because of a logical bug added when adding dynamics calculation functionality. (#1151)
  • Fix potential deadlock in ResourceManager (#925)
  • Contributors: Christopher Wecht, Dr. Denis

3.20.0 (2023-10-31)

  • [ResourceManager] deactivate hardware from read/write return value (#884)
  • Contributors: Felix Exner (fexner)

3.19.1 (2023-10-04)

3.19.0 (2023-10-03)

  • [MockHardware] Added dynamic simulation functionality. (#1028)
  • Add GPIO tag description to docs (#1109)
  • Contributors: Christoph Fröhlich, Dr. Denis

3.18.0 (2023-08-17)

3.17.0 (2023-08-07)

  • Add checks if hardware is initialized. (#1054)
  • Contributors: Dr. Denis

3.16.0 (2023-07-09)

3.15.0 (2023-06-23)

  • Enable setting of initial state in HW compoments (#1046)
  • Ensure instantiation of hardware classes work for python bindings (#1058)
  • Contributors: Dr. Denis, Olivier Stasse

3.14.0 (2023-06-14)

  • Add -Wconversion flag to protect future developments (#1053)
  • [CM] Use [robot_description]{.title-ref} topic instead of parameter and don't crash on empty URDF 🦿 (#940)
  • [MockHardware] Enable disabling of command to simulate HW failures. (#1027)
  • enable ReflowComments to also use ColumnLimit on comments (#1037)
  • Docs: Use branch name substitution for all links (#1031)
  • [URDF Parser] Allow empty urdf tag, e.g., parameter (#1017)
  • Use consequently 'mock' instead of 'fake'. (#1026)
  • Contributors: Christoph Fröhlich, Dr. Denis, Felix Exner (fexner), Manuel Muth, Sai Kishor Kothakota, gwalck

3.13.0 (2023-05-18)

  • Add class for thread management of async hw interfaces (#981)
  • Fix github links on control.ros.org (#1019)
  • Update precommit libraries(#1020)
  • Implement parse_bool and refactor a few (#1014)
  • docs: Fix link to hardware_components (#1009)
  • Contributors: Alejandro Bordallo, Christoph Fröhlich, Felix Exner (fexner), Márk Szitanics, mosfet80

3.12.2 (2023-04-29)

3.12.1 (2023-04-14)

3.12.0 (2023-04-02)

3.11.0 (2023-03-22)

  • Check for missing hardware interfaces that use the gpio tag. (#975)
  • Contributors: Ryan Sandzimier

3.10.0 (2023-03-16)

  • Split transmission interfaces (#938)
  • Contributors: Noel Jiménez García

3.9.1 (2023-03-09)

3.9.0 (2023-02-28)

3.8.0 (2023-02-10)

  • Fix CMake install so overriding works (#926)
  • Async params (#927)
  • Contributors: Márk Szitanics, Tyler Weaver

3.7.0 (2023-01-24)

  • Make double parsing locale independent (#921)
  • Contributors: Henning Kayser

3.6.0 (2023-01-12)

  • 🔧 Fixes and updated on pre-commit hooks and their action (#890)
  • Contributors: Denis Štogl

3.5.1 (2023-01-06)

3.5.0 (2022-12-06)

  • ResourceManager doesn't always log an error on shutdown anymore (#867)
  • Rename class type to plugin name #api-breaking #abi-breaking (#780)
  • Contributors: Bence Magyar, Christopher Wecht

3.4.0 (2022-11-27)

3.3.0 (2022-11-15)

  • [MockHardware] Enalbe initialization non-joint components(#822)
  • Contributors: Felix Exner

3.2.0 (2022-10-15)

  • [MockComponents] Rename 'fake_sensor_commands' to 'mock_sensor_commands' (#782)
  • fix broken links (issue #831) (#833)
  • Contributors: Kvk Praneeth, Manuel Muth, Bence Magyar, Denis Štogl

3.1.0 (2022-10-05)

  • Cleanup Resource Manager a bit to increase clarity. (#816)
  • Handle hardware errors in Resource Manager (#805)
    • Add code for deactivating controller when hardware gets an error on read and write.
  • Contributors: Denis Štogl

3.0.0 (2022-09-19)

2.15.0 (2022-09-19)

2.14.0 (2022-09-04)

  • Add doxygen comments (#777)
  • Contributors: Bence Magyar, Denis Štogl

2.13.0 (2022-08-03)

2.12.1 (2022-07-14)

  • Fix fake components deprecation and add test for it (#771)
  • Contributors: Bence Magyar

2.12.0 (2022-07-09)

  • Hardware interface specific update rate and best practices about it (#716)
  • Deprecate fake components, long live mock components (#762)
  • Contributors: Bence Magyar, Lovro Ivanov

2.11.0 (2022-07-03)

  • [Interfaces] Improved `get_name()[ method of hardware interfaces #api-breaking (]{.title-ref}#737 <<https://github.com/ros-controls/ros2_control/issues/737>>`_)
  • Update maintainers of packages (#753)
  • Remove ament autolint (#749)
  • Full functionality of chainable controllers in controller manager (#667)
    • auto-switching of chained mode in controllers
    • interface-matching approach for managing chaining controllers
  • Contributors: Bence Magyar, Denis Štogl, Lucas Schulze

2.10.0 (2022-06-18)

  • Make RHEL CI happy! (#730)
  • CMakeLists cleanup (#733)
  • Refactored error handling when hardware name is duplicated (#724)
  • Update to clang format 12 (#731)
  • Contributors: Andy Zelenak, Bence Magyar, Kvk Praneeth, Márk Szitanics

2.9.0 (2022-05-19)

  • Resource Manager extension to support management of reference interfaces from chained controllers. (#664)
    • Extend resource manager to manage reference interfaces from controllers.
    • Adjust interface between CM and RM for managing controllers' reference interfaces.
  • Contributors: Denis Štogl

2.8.0 (2022-05-13)

  • Pass time and period to read() and write() (#715)
  • Contributors: Bence Magyar

2.7.0 (2022-04-29)

  • Make URDF available to HW components on initialize (#709)
  • Contributors: Bence Magyar

2.6.0 (2022-04-20)

  • Error if a hardware name is duplicated (#672)
  • Port four bar linkage and differential transmission loaders from ROS1 (#656)
  • Contributors: Andy Zelenak, Márk Szitanics

2.5.0 (2022-03-25)

  • Require lifecycle-msgs in hardware_interface package (#675) (#678)
  • Using should be inside namespace and not global scope. (#673)
  • Modernize C++: Use for-each loops in Resource Manager. (#659)
  • Enable controller manager services to control hardware lifecycle #abi-breaking (#637)
    • Implement CM services for hardware lifecycle management.
    • Added default behavior to activate all controller and added description of CM parameters.
  • Contributors: Denis Štogl

2.4.0 (2022-02-23)

  • Fix transmission loader tests (#642)
  • Contributors: Bence Magyar, Denis Štogl

2.3.0 (2022-02-18)

  • Add a warning if an initial_value is not found for any interface (#623)
  • Contributors: AndyZe

2.2.0 (2022-01-24)

  • Resource Manager API changes for hardware lifecycle #api-breaking #abi-breaking (#589)
    • Towards selective starting and stoping of hardware components. Cleaning and renaming.
    • Move Lifecycle of hardware component to the bottom for better overview.
    • Use the same nomenclature as for controllers. 'start' -> 'activate'; 'stop' -> 'deactivate'

    * Add selective starting and stopping of hardware resources. Add HardwareComponentInfo structure in resource manager. Use constants for HW parameters in tests of resource_manager. Add list hardware components in CM to get details about them and check their status. Use clear name for 'guard' and move release cmd itfs for better readability. RM: Add lock for accesing maps with stored interfaces. Separate hardware components-related services after controllers-related services. Add service for activate/deactive hardware components. Add activation and deactivation through ResourceStorage. This helps to manage available command interfaces.

    • Use lifecycle_msgs/State in ListHardwareCompoents for state representation.
    • Simplify repeatable code in methods.
    • Add HW shutdown structure into ResouceManager.
    • Fill out service callback in CM and add parameter for auto-configure.
    • Move claimed_command_itf_map to ResourceStorage from ResourceManager.
    • Do not automatically configure hardware in RM.
    • Lifecycle and claiming in Resource Manager is working.
    • Extend controller manager to support HW lifecycle.
    • Add also available and claimed status into list components service output.
    • Add SetHardwareComponentState service.
    • Make all output in services debug-output.
    • Remove specific services for hardware lifecycle management and leave only 'set_hardware_component_state' service.
    • Make init_resource_manager less stateful.
    • Keep old api to start/activate all components per default.
    • Remove 'moving'/'non-moving' interface-handling.

    * Remove obsolete 'import_components' methods without hardware info and fix post_initialization test. Co-authored-by: Bence Magyar <<bence.magyar.robotics@gmail.com>>

  • Doc 📓: Add detailed explanation about writing new hardware interface. (#615)
  • Contributors: Denis Štogl

2.1.0 (2022-01-11)

  • Removing 'auto' from function definition to support pre c++ 20 (#608)
  • Support of "initial_value" for the 'FakeSystem' (#598)
  • Contributors: bailaC, Denis Štogl

2.0.0 (2021-12-29)

  • Adding support for 'initial_value' parameter. (#593)
  • fix copy paste error in documentation (#594)
  • Use lambda functions in ros2_control generic_system for repetitive tasks (#579) Co-authored-by: Denis Štogl <<destogl@users.noreply.github.com>>
  • Extend FakeHardware to support <gpio>-tag (#574)
  • Contributors: Michael, bailaC, Denis Štogl

1.2.0 (2021-11-05)

  • Import and Initialize components (#566)
  • Contributors: Alejandro Hernández Cordero

1.1.0 (2021-10-25)

  • Handle errors of hardware that happen on read and write. (#546)
  • Contributors: Denis Štogl, Mathias Aarbo

1.0.0 (2021-09-29)

  • Hardware components extension for lifecycle support (#503)
  • add M_PI macro for windows in test_component_parser.cpp (#502)
  • Extend GenericSystem by adding mapping of position with offset to custom interface. (#469)
  • Remove BOOST compiler definitions for pluginlib from CMakeLists (#514)
  • Do not manually set C++ version to 14 (#516)
  • Contributors: Bence Magyar, Denis Štogl, dzyGIT

0.8.0 (2021-08-28)

  • Use clang format as code formatter (#491)
  • Fixup doc typo (#492)
  • Add docs for fake components (#466)
  • sort interfaces in resource manager (#483)
  • fix format (#484)
  • Transmission parsing v2 (#471)
    • move parsing responsibility to hardware_interface
    • parse transmission type
    • Cleanup unused parser
  • Add pre-commit setup. (#473)
  • Extended GenericSystem with state offset options for testing some special control cases. (#350)
    • Extended GenericSystem with state offset options for testing some special control cases.
    • Better parameter name
    • Apply offset only to position interfaces.
  • Added GPIO parsing and test (#436)
  • Fixes for windows (#443)
    • Fix building on windows
    • Fix MSVC linker error when building tests
    • Fix hang when loading controller on windows
    • Use better log for configuring controller
    • Be consistent with visibility control
    • Use try_lock throw exception on failure
  • Contributors: Akash, Bence Magyar, Denis Štogl, Karsten Knese, Mathias Arbo, Jafar Abdi

0.7.1 (2021-06-15)

  • [FakeSystem] Set default command interface to NaN (#424)
  • Contributors: Denis Štogl, Bence Magyar

0.7.0 (2021-06-06)

  • Add FTS as first semantic components to simplify controllers. (#370)
  • Contributors: bailaC, Denis Štogl, Jordan Palacios

0.6.1 (2021-05-31)

0.6.0 (2021-05-23)

  • Remove the with_value_ptr and class templatization for ReadOnlyHandle (#379)
  • fake_components: Add mimic joint to generic system (#409)
  • List controller claimed interfaces (#407)
  • Contributors: El Jawad Alaa, Jafar Abdi, Jordan Palacios, Bence Magyar

0.5.0 (2021-05-03)

  • Make hardware interface types as const char array rather than const char pointer (#408)
  • use auto instead of uint (#398)
  • hardware_interface mode switching using prepareSwitch doSwitch approach (#348)
  • avoid deprecations (#393)
  • move deprecation note before function definition instead of inside (#381)
  • Replace standard interfaces' hard-coded strings by constants (#376)
  • add deprecation note for with_value_ptr (#378)
  • Contributors: El Jawad Alaa, Jafar Abdi, Karsten Knese, Mateus Amarante, Mathias Hauan Arbo, Bence Magyar

0.4.0 (2021-04-07)

  • [ros2_control_test_assets] Fix typo (#371)
  • uint -> size_t, 0u and auto (#346)
  • Contributors: Karsten Knese, Yutaka Kondo

0.3.0 (2021-03-21)

  • Capatalized error message and put the controllers name and resource name inside quote (#338)
  • Parse True and true in fakesystem, touch up variable name
  • Contributors: Denis Štogl, suab321321

0.2.1 (2021-03-02)

  • Remove unused include (#336)
  • Contributors: Bence Magyar

0.2.0 (2021-02-26)

  • Add "Fake" components for simple integration of framework (#323)
  • Contributors: Denis Štogl

0.1.6 (2021-02-05)

  • correct hardware interface validation in resource manager. (#317)
  • Contributors: Karsten Knese

0.1.5 (2021-02-04)

0.1.4 (2021-02-03)

  • Add test assets package (#289)
  • update doxygen style according to ros2 core standard (#300)
  • Move test_components from test_robot_hardware to hardware_interface package (#288)
  • Contributors: Denis Štogl, João Victor Torres Borges

0.1.3 (2021-01-21)

0.1.2 (2021-01-06)

0.1.1 (2020-12-23)

0.1.0 (2020-12-22)

  • Added starting of resources into CM and RM (#240)
  • Use resource manager (#236)
  • Use constants instead of strings in tests (#241)
  • resource loaning (#224)
  • Allocate memory for components and handles (#207)
  • rename command/state handles to command/state interfaces (#223)
  • Remodel component interfaces (#203)
  • adapt component parser to new xml schema (#209)
  • remove logical components, move hardware resources (#201)
  • Replace rclcpp by rcutils logging tools in hardware_interface pkg (#205)
  • Add a struct for Interface information, update the test URDF (#167)
  • Add virtual modifier to the functions of Joint and Sensor component (#178)
  • Hide component parser api (#157)
  • Remove old joint state and joint command handles (#134)
  • New version of component parser (#127)
  • Dynamic joint handles (#125)
  • Hardware component interfaces (#121)
  • Add ActuatorHandle and Implement string-based interface handle-handling using DynamicJointState message (#112)
  • Change Hardware return type to enum class (#114)
  • Replace RCUTILS_ with RCLCPP_ for logging (#62)
  • import hardware_interface
  • Contributors: Andreas Klintberg, Andy Zelenak, Bence Magyar, Colin MacKenzie, Denis Štogl, Jafar Abdi, Jordan Palacios, Karsten Knese, Mateus Amarante, Matthew Reynolds, Victor Lopez, Yutaka Kondo

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 hardware_interface at Robotics Stack Exchange

Package Summary

Tags No category tags.
Version 0.0.1
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros-controls/ros2_control.git
VCS Type git
VCS Version dashing
Last Updated 2020-02-06
Dev Status DEVELOPED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

ROS2 ros_control hardware interface

Additional Links

No additional links.

Maintainers

  • Karsten Knese

Authors

No additional authors.

robot agnostic hardware_interface package. This package will eventually be moved into its own repo.

CHANGELOG

Changelog for package hardware_interface

0.0.1 (2020-02-05)

  • Dashing compatibility (#47)
  • Contributors: Bence Magyar, Karsten Knese, Anas Abou Allaban

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 hardware_interface at Robotics Stack Exchange

Package Summary

Tags No category tags.
Version 1.6.0
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros-controls/ros2_control.git
VCS Type git
VCS Version galactic
Last Updated 2022-08-03
Dev Status DEVELOPED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

ROS2 ros_control hardware interface

Additional Links

No additional links.

Maintainers

  • Karsten Knese
  • Bence Magyar

Authors

No additional authors.

robot agnostic hardware_interface package. This package will eventually be moved into its own repo.

CHANGELOG

Changelog for package hardware_interface

1.6.0 (2022-08-03)

1.5.1 (2022-05-31)

1.5.0 (2022-04-29)

  • Require lifecycle-msgs in hardware_interface package (#675)
  • Contributors: Martin Wudenka

1.4.0 (2022-02-18)

  • Extend FakeHardware to support <gpio>-tag (#574) (#634)
  • Contributors: Subhas Das

1.3.0 (2021-12-21)

1.2.0 (2021-11-05)

  • Import and Initialize components (#566)
  • Contributors: Alejandro Hernández Cordero

1.1.0 (2021-10-25)

  • Handle errors of hardware that happen on read and write. (#546)
  • Contributors: Denis Štogl, Mathias Aarbo

1.0.0 (2021-09-29)

  • Hardware components extension for lifecycle support (#503)
  • add M_PI macro for windows in test_component_parser.cpp (#502)
  • Extend GenericSystem by adding mapping of position with offset to custom interface. (#469)
  • Remove BOOST compiler definitions for pluginlib from CMakeLists (#514)
  • Do not manually set C++ version to 14 (#516)
  • Contributors: Bence Magyar, Denis Štogl, dzyGIT

0.8.0 (2021-08-28)

  • Use clang format as code formatter (#491)
  • Fixup doc typo (#492)
  • Add docs for fake components (#466)
  • sort interfaces in resource manager (#483)
  • fix format (#484)
  • Transmission parsing v2 (#471)
    • move parsing responsibility to hardware_interface
    • parse transmission type
    • Cleanup unused parser
  • Add pre-commit setup. (#473)
  • Extended GenericSystem with state offset options for testing some special control cases. (#350)
    • Extended GenericSystem with state offset options for testing some special control cases.
    • Better parameter name
    • Apply offset only to position interfaces.
  • Added GPIO parsing and test (#436)
  • Fixes for windows (#443)
    • Fix building on windows
    • Fix MSVC linker error when building tests
    • Fix hang when loading controller on windows
    • Use better log for configuring controller
    • Be consistent with visibility control
    • Use try_lock throw exception on failure
  • Contributors: Akash, Bence Magyar, Denis Štogl, Karsten Knese, Mathias Arbo, Jafar Abdi

0.7.1 (2021-06-15)

  • [FakeSystem] Set default command interface to NaN (#424)
  • Contributors: Denis Štogl, Bence Magyar

0.7.0 (2021-06-06)

  • Add FTS as first semantic components to simplify controllers. (#370)
  • Contributors: bailaC, Denis Štogl, Jordan Palacios

0.6.1 (2021-05-31)

0.6.0 (2021-05-23)

  • Remove the with_value_ptr and class templatization for ReadOnlyHandle (#379)
  • fake_components: Add mimic joint to generic system (#409)
  • List controller claimed interfaces (#407)
  • Contributors: El Jawad Alaa, Jafar Abdi, Jordan Palacios, Bence Magyar

0.5.0 (2021-05-03)

  • Make hardware interface types as const char array rather than const char pointer (#408)
  • use auto instead of uint (#398)
  • hardware_interface mode switching using prepareSwitch doSwitch approach (#348)
  • avoid deprecations (#393)
  • move deprecation note before function definition instead of inside (#381)
  • Replace standard interfaces' hard-coded strings by constants (#376)
  • add deprecation note for with_value_ptr (#378)
  • Contributors: El Jawad Alaa, Jafar Abdi, Karsten Knese, Mateus Amarante, Mathias Hauan Arbo, Bence Magyar

0.4.0 (2021-04-07)

  • [ros2_control_test_assets] Fix typo (#371)
  • uint -> size_t, 0u and auto (#346)
  • Contributors: Karsten Knese, Yutaka Kondo

0.3.0 (2021-03-21)

  • Capatalized error message and put the controllers name and resource name inside quote (#338)
  • Parse True and true in fakesystem, touch up variable name
  • Contributors: Denis Štogl, suab321321

0.2.1 (2021-03-02)

  • Remove unused include (#336)
  • Contributors: Bence Magyar

0.2.0 (2021-02-26)

  • Add "Fake" components for simple integration of framework (#323)
  • Contributors: Denis Štogl

0.1.6 (2021-02-05)

  • correct hardware interface validation in resource manager. (#317)
  • Contributors: Karsten Knese

0.1.5 (2021-02-04)

0.1.4 (2021-02-03)

  • Add test assets package (#289)
  • update doxygen style according to ros2 core standard (#300)
  • Move test_components from test_robot_hardware to hardware_interface package (#288)
  • Contributors: Denis Štogl, João Victor Torres Borges

0.1.3 (2021-01-21)

0.1.2 (2021-01-06)

0.1.1 (2020-12-23)

0.1.0 (2020-12-22)

  • Added starting of resources into CM and RM (#240)
  • Use resource manager (#236)
  • Use constants instead of strings in tests (#241)
  • resource loaning (#224)
  • Allocate memory for components and handles (#207)
  • rename command/state handles to command/state interfaces (#223)
  • Remodel component interfaces (#203)
  • adapt component parser to new xml schema (#209)
  • remove logical components, move hardware resources (#201)
  • Replace rclcpp by rcutils logging tools in hardware_interface pkg (#205)
  • Add a struct for Interface information, update the test URDF (#167)
  • Add virtual modifier to the functions of Joint and Sensor component (#178)
  • Hide component parser api (#157)
  • Remove old joint state and joint command handles (#134)
  • New version of component parser (#127)
  • Dynamic joint handles (#125)
  • Hardware component interfaces (#121)
  • Add ActuatorHandle and Implement string-based interface handle-handling using DynamicJointState message (#112)
  • Change Hardware return type to enum class (#114)
  • Replace RCUTILS_ with RCLCPP_ for logging (#62)
  • import hardware_interface
  • Contributors: Andreas Klintberg, Andy Zelenak, Bence Magyar, Colin MacKenzie, Denis Štogl, Jafar Abdi, Jordan Palacios, Karsten Knese, Mateus Amarante, Matthew Reynolds, Victor Lopez, Yutaka Kondo

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 hardware_interface at Robotics Stack Exchange

Package Summary

Tags No category tags.
Version 0.11.0
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros-controls/ros2_control.git
VCS Type git
VCS Version foxy
Last Updated 2022-11-17
Dev Status DEVELOPED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

ROS2 ros_control hardware interface

Additional Links

No additional links.

Maintainers

  • Karsten Knese
  • Bence Magyar

Authors

No additional authors.

robot agnostic hardware_interface package. This package will eventually be moved into its own repo.

CHANGELOG

Changelog for package hardware_interface

0.11.0 (2022-08-03)

  • Error if a hardware name is duplicated (backport #672) (#707)
  • Contributors: Andy Zelenak, Bence Magyar

0.10.1 (2022-05-31)

0.10.0 (2022-02-23)

0.9.0 (2021-12-20)

0.8.1 (2021-10-25)

  • add M_PI macro for windows foxy in test_component_parser.cpp (#545)
  • Extend GenericSystem by adding mapping of position with offset to custom interface. (#469) (#523)
  • Contributors: BenjaminHug8, Denis Štogl

0.8.0 (2021-08-28)

  • Use clang format as code formatter (#491)
  • Fixup doc typo (#492)
  • Add docs for fake components (#466)
  • sort interfaces in resource manager (#483)
  • fix format (#484)
  • Transmission parsing v2 (#471)
    • move parsing responsibility to hardware_interface
    • parse transmission type
    • Cleanup unused parser
  • Add pre-commit setup. (#473)
  • Extended GenericSystem with state offset options for testing some special control cases. (#350)
    • Extended GenericSystem with state offset options for testing some special control cases.
    • Better parameter name
    • Apply offset only to position interfaces.
  • Added GPIO parsing and test (#436)
  • Fixes for windows (#443)
    • Fix building on windows
    • Fix MSVC linker error when building tests
    • Fix hang when loading controller on windows
    • Use better log for configuring controller
    • Be consistent with visibility control
    • Use try_lock throw exception on failure
  • Contributors: Akash, Bence Magyar, Denis Štogl, Karsten Knese, Mathias Arbo, Jafar Abdi

0.7.1 (2021-06-15)

  • [FakeSystem] Set default command interface to NaN (#424)
  • Contributors: Denis Štogl, Bence Magyar

0.7.0 (2021-06-06)

  • Add FTS as first semantic components to simplify controllers. (#370)
  • Contributors: bailaC, Denis Štogl, Jordan Palacios

0.6.1 (2021-05-31)

0.6.0 (2021-05-23)

  • Remove the with_value_ptr and class templatization for ReadOnlyHandle (#379)
  • fake_components: Add mimic joint to generic system (#409)
  • List controller claimed interfaces (#407)
  • Contributors: El Jawad Alaa, Jafar Abdi, Jordan Palacios, Bence Magyar

0.5.0 (2021-05-03)

  • Make hardware interface types as const char array rather than const char pointer (#408)
  • use auto instead of uint (#398)
  • hardware_interface mode switching using prepareSwitch doSwitch approach (#348)
  • avoid deprecations (#393)
  • move deprecation note before function definition instead of inside (#381)
  • Replace standard interfaces' hard-coded strings by constants (#376)
  • add deprecation note for with_value_ptr (#378)
  • Contributors: El Jawad Alaa, Jafar Abdi, Karsten Knese, Mateus Amarante, Mathias Hauan Arbo, Bence Magyar

0.4.0 (2021-04-07)

  • [ros2_control_test_assets] Fix typo (#371)
  • uint -> size_t, 0u and auto (#346)
  • Contributors: Karsten Knese, Yutaka Kondo

0.3.0 (2021-03-21)

  • Capatalized error message and put the controllers name and resource name inside quote (#338)
  • Parse True and true in fakesystem, touch up variable name
  • Contributors: Denis Štogl, suab321321

0.2.1 (2021-03-02)

  • Remove unused include (#336)
  • Contributors: Bence Magyar

0.2.0 (2021-02-26)

  • Add "Fake" components for simple integration of framework (#323)
  • Contributors: Denis Štogl

0.1.6 (2021-02-05)

  • correct hardware interface validation in resource manager. (#317)
  • Contributors: Karsten Knese

0.1.5 (2021-02-04)

0.1.4 (2021-02-03)

  • Add test assets package (#289)
  • update doxygen style according to ros2 core standard (#300)
  • Move test_components from test_robot_hardware to hardware_interface package (#288)
  • Contributors: Denis Štogl, João Victor Torres Borges

0.1.3 (2021-01-21)

0.1.2 (2021-01-06)

0.1.1 (2020-12-23)

0.1.0 (2020-12-22)

  • Added starting of resources into CM and RM (#240)
  • Use resource manager (#236)
  • Use constants instead of strings in tests (#241)
  • resource loaning (#224)
  • Allocate memory for components and handles (#207)
  • rename command/state handles to command/state interfaces (#223)
  • Remodel component interfaces (#203)
  • adapt component parser to new xml schema (#209)
  • remove logical components, move hardware resources (#201)
  • Replace rclcpp by rcutils logging tools in hardware_interface pkg (#205)
  • Add a struct for Interface information, update the test URDF (#167)
  • Add virtual modifier to the functions of Joint and Sensor component (#178)
  • Hide component parser api (#157)
  • Remove old joint state and joint command handles (#134)
  • New version of component parser (#127)
  • Dynamic joint handles (#125)
  • Hardware component interfaces (#121)
  • Add ActuatorHandle and Implement string-based interface handle-handling using DynamicJointState message (#112)
  • Change Hardware return type to enum class (#114)
  • Replace RCUTILS_ with RCLCPP_ for logging (#62)
  • import hardware_interface
  • Contributors: Andreas Klintberg, Andy Zelenak, Bence Magyar, Colin MacKenzie, Denis Štogl, Jafar Abdi, Jordan Palacios, Karsten Knese, Mateus Amarante, Matthew Reynolds, Victor Lopez, Yutaka Kondo

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 hardware_interface at Robotics Stack Exchange