- PID: Improve the API docs and change default value of antiwindup (#202)
- [CI] Specify runner/container images and add Jazzy jobs (#200)
- Add custom rosdoc2 config (#199)
- [CI] Update pre-commit and remove ros-lint (#187)
- Use Eigen CMake target (#190)
- [CI] Use wf from ros2_control_ci for coverage build (#188)
- Contributors: Christoph Fröhlich, dependabot[bot], github-actions[bot]
- [CI] fix source build (#168)
- Bump actions/setup-python from 4 to 5 (#167)
- [CI] Touchups (#166)
- [PID] Update documentation to reflect ROS 2 usage of time (#165)
- Bump actions/checkout from 3 to 4 (#163)
- Bump ros-tooling/setup-ros from 0.6 to 0.7 (#161)
- Add filters structure and lowpass filter (#152)
- Bump codecov/codecov-action from 3.1.2 to 3.1.4 (#160)
- Contributors: Christoph Fröhlich, GuiHome, Patrick Roncagliolo
- Check for i_min <= i_max at initialization (#139)
- Contributors: Christoph Fröhlich
- [PidROS] Enable interpreting prefix as param prefix. (#129)
- Use std::clamp (#140)
- [CI] Fixes and update for branch out (#155)
- Enable subclassing of PID implementation. (#148)
- [CI] Add Humble job (#147)
- Finally update formatting to other repositories convention. (#131)
- [CI] 🔧 Update pre-commit hooks and sync actions to other repositories. (#130)
- Contributors: Bence Magyar, Christoph Fröhlich, Dr. Denis, dependabot[bot]
- Fix overriding of package (#145)
- Various dependabot version bumps
- [CI] Add dependabot configuration to automatically update actions.
- Contributors: Christoph Fröhlich, Dr. Denis, Tyler Weaver, dependabot[bot]
- export missing dependency (#128)
- Contributors: Noel Jiménez García
- Add declaration of parameters in ROSPid.
- Fix namespace collision and parameter_callback problems in PidROS
- Contributors: Aris Synodinos, Denis Štogl
- Fix parameter loading log levels
- Support pass in a precomputed derivative error
- Add getParametersCallbackHandle function
- Add topic_prefix_ to declareParam & setParameter
- Update include/control_toolbox/dither.hpp
- Correct contributing and license files for ament_copyright.
- Added license text file and contributing guidelines, corrected license short identifier.
- Remove build of downstream workspace.
- Update CI config and add pre-commit-config.
- Contributors: Bence Magyar, ChenJun, Denis Štogl, Timon Engelke
- remove unused variables
- Update visibility_control.hpp
- Windows bringup.
- Contributors: Karsten Knese, Sean Yen, Bence Magyar
- Fix dependencies
- Export ament_cmake build type
- Contributors: ahcorde
- Refactor the Pid class to be completely ROS agnostic and added a ROS 2 wrapper
- Avoid crash when the type of the parameter doesn't match
- Added topic_prefix to publisher topic name (#95)
- Created a shared library (#93)
- Aliases not part of the public API are now private
- Removing pid_gains_setter
- Removed unnecessary dependencies
- Cleared empty non virtual destructors
- Removed unused limited proxy variables
- Added pid state real-time publisher
- Removed all references to tinyxml
- Removed tune_pid.py
- Adding missing copyright licenses
- Adapted dither, sine_sweep and sinusoid to ROS2
- Removed dynamic reconfigure completely
- Removed deprecated functions
- Contributors: Alejandro Hernández Cordero, Bence Magyar, James Xu, Jordan Palacios, Shane Loretz, ahcorde
- update anti windup clamping
- update negativeIntegrationAntiwindupTest
- Address catkin_lint issues
- Add executable flag
- convert to package xml format 2
- Remove doc header
- Contributors: Bence Magyar, Cong, Gennaro Raiola
- switched to industrial_ci
- Add control_msgs to CATKIN_DEPENDS.
- Contributors: Bence Magyar, Mathias Luedtke, Mike Purvis
- avoid ABI breaks in PID class
- fix add_dependencies call
- rollback API changes in PID class
- cfg: removed rosbuild support related error handling
- Contributors: Bence Magyar, Igor Napolskikh, ipa-mig
- Fix negative gains issue and add tests; update gains setting through DynamicReconfig
- Add antiwindup and tests to PID controller; rename old behaviour 'clamping'
- Move message to control_toolbox
- Add optional state publishing to PID controller, for logging/debugging/etc
- Fix some typos in comments
- changed the range of dynamic reconfigure to allow negative ones
- Address -Wunused-parameter warnings
- Factor out updatePid as negative calls to computeCommand
- Increasing covergae of PID class test suite.
- Chain calls of computeCommand and updatePid for code reuse
- Contributors: Adolfo Rodriguez Tsouroukdissian, Bence Magyar, Carlos Rosales, Guillaume Walck, Paul Bovbel, VahidAminZ
- CRITICAL BUGFIX: Fix broken PID command computation.
- Contributors: Adolfo Rodriguez Tsouroukdissian, Paul Bovbel
- Improvement in integral contribution implementation. Resolve #32.
- Contributors: Adolfo Rodriguez Tsouroukdissian, Carlos Rosales
- Harmonize pid gain names between rosparam and dynamic_reconfigure
- Read i_clamp_min and i_clamp_max form parameter server - if available
- Contributors: Adolfo Rodriguez Tsouroukdissian, Dave Coleman, ipa-fxm
- Remove broken test code. Hotfix for #18.
- Contributors: Adolfo Rodriguez Tsouroukdissian
- pid: Adding quiet flag to suppress error message
- Contributors: Jonathan Bohren
- Remove rosbuild artifacts
- Cleaned up CMake and removed unnecessary dependencies
- Made default value negative to match valid range
- Fix for i_clamp_min to be negative in dynamic reconfigure
- Fix abs/fabs problem with Clang and libc++
- Contributors: Adolfo Rodriguez Tsouroukdissian, Dave Coleman, Marco Esposito
- Added Travis support
- Renamed manifest.xml so it doesn't break rosdep
- Expanded range of PID and windup gains for certain applications.
- Expanded range of PID and windup gains for certain applications. Lowered default integral and derivative gain
- check for CATKIN_ENABLE_TESTING
- Add some comments to Parameters.cfg
- Add support for dynamic_reconfigure for rosbuild
- Contributors: Austin Hendrix, Dave Coleman, Lukas Bulwahn, Paul Dinh
- Fix bug in copy constructor.
- Contributors: Austin Hendrix
- Fix copy constructor.
- Merge pull request #1 from davetcoleman/hydro-devel Added dynamic reconfigure for PID gains
- Removed const getGains function
- Small fixes
- Compatibility changes for realtime_tools, tweaked getests
- Made realtime_buffer copiable
- Added test for getting/settings gains, copying/assigning pid class
- Removed const read, added copy constructor and print values function
- Added new function getGainsConst that allows one to get the PID gains from a const PID class
- Added realtime_tools as a dependency in package.xml and CMakeLists
- Added realtime buffer to PID, re-ordered functions to more logical order and to match header file
- Fixes per Austin review
- Updated CMakeLists.txt and made fixes per Adolfo
- Merged hydro-devel
- Added dynamic reconfigure for PID gains
- Tests build.
- Contributors: Austin Hendrix, Dave Coleman
- Add dependency on tinyxml.
- Contributors: Austin Hendrix
- Version 1.10.0
- comment format consistentcy
- Fixing comment in pid source code
- Install tune_pid.py under catkin.
- adding install targets
- adding missing manifests
- merging CMakeLists.txt files from rosbuild and catkin
- adding hybrid-buildsystem makefiles
- Merging from master, re-adding manifest.xml files
- using more standard way of depending on gencpp
- Add .gitignore file.
- Fixing library export
- catkinizing, could still be cleaned up
- Fixing doc errors in PID
- Changing @ commands to commands
- Enforcing i_min_ <= 0 and i_max_ >= 0 in integral bound parameters, reducing duplicated code
- Merge pull request #14 from bobholmberg/fix-PID-unbounded-i_error Using zero i_gain_ to turn off integral control did unsavory things.
- Adding alternative name for new pid command computation API
- Fixing merge error
- Merge branch 'fix-pid-backwards-compatibility' into fix-PID-unbounded-i_error
- Removing lie from documentation
- Adding Bob's fixes to the backwards-compatibility API
- Merge branch 'fix-pid-backwards-compatibility' into fix-PID-unbounded-i_error
- bringing back old updatePid function contents
- adding documentation warning
- This makes the internal computations of updatePid() keep the same sign that they did before the API change
- Merge typo
- Resolving conflict from new Pid API
- Merge branch 'master' into test-bad-integral-bounds
- Merge branch 'test-bad-integral-bounds' into fix-PID-unbounded-i_error
- Specifying div-by-zero test, adding other integral term tests
- Merge branch 'test-bad-integral-bounds' into fix-PID-unbounded-i_error
- Adding test to expose Pid class zero-division vulnerability
- If the user did not want integral control and set i_gain_ to zero, then dividing by i_gain_ would set i_error_ to NaN. This is not desired. Instead, replace the use of division to create i_term with direct integration of i_term_. Replace private member i_error_ with i_term_. In getCurrentPIDErrors() create & return i_error_ with the same old meaning and units. NOTE: i_error_ is not needed internally anywhere else.
- Cleaning up documentation, making argument names in function declaration match those in the implementation
- adding doxygen deprecation flags
- Fixing documentation
- Merging changes from other branch
- Adding conventional PID computation
- Fixing inconsistent formatting, and reducing some duplicated code
- remove .svn folder
- move control_toolbox into ros_control
- Contributors: Adolfo Rodriguez Tsouroukdissian, Austin Hendrix, Bob Holmberg, Jonathan Bohren, Wim Meeussen, wmeeusse