diff --git a/debian/changelog b/debian/changelog new file mode 100644 index 00000000..7fd0c55e --- /dev/null +++ b/debian/changelog @@ -0,0 +1,311 @@ +ros-rolling-control-toolbox (3.2.0-1bullseye) bullseye; urgency=high + + * [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 + + -- Bence Magyar Tue, 12 Dec 2023 00:00:00 -0000 + +ros-rolling-control-toolbox (3.1.0-1bullseye) bullseye; urgency=high + + * Check for i_min <= i_max at initialization (#139 ) + * Contributors: Christoph Fröhlich + + -- Bence Magyar Fri, 28 Apr 2023 23:00:00 -0000 + +ros-rolling-control-toolbox (3.0.0-1bullseye) bullseye; urgency=high + + * [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] + + -- Bence Magyar Tue, 04 Apr 2023 23:00:00 -0000 + +ros-rolling-control-toolbox (2.2.0-1bullseye) bullseye; urgency=high + + * 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] + + -- Bence Magyar Mon, 20 Feb 2023 00:00:00 -0000 + +ros-rolling-control-toolbox (2.1.2-1bullseye) bullseye; urgency=high + + * export missing dependency (#128 ) + * Contributors: Noel Jiménez García + + -- Bence Magyar Tue, 15 Nov 2022 00:00:00 -0000 + +ros-rolling-control-toolbox (2.1.1-1bullseye) bullseye; urgency=high + + * Add declaration of parameters in ROSPid. + * Fix namespace collision and parameter_callback problems in PidROS + * Contributors: Aris Synodinos, Denis Štogl + + -- Bence Magyar Sat, 05 Nov 2022 00:00:00 -0000 + +ros-rolling-control-toolbox (2.1.0-1bullseye) bullseye; urgency=high + + * 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 + + -- Bence Magyar Wed, 29 Jun 2022 23:00:00 -0000 + +ros-rolling-control-toolbox (2.0.2-1bullseye) bullseye; urgency=high + + * remove unused variables + * Update visibility_control.hpp + * Windows bringup. + * Contributors: Karsten Knese, Sean Yen, Bence Magyar + + -- Bence Magyar Mon, 24 May 2021 23:00:00 -0000 + +ros-rolling-control-toolbox (2.0.1-1bullseye) bullseye; urgency=high + + * Fix dependencies + * Export ament_cmake build type + * Contributors: ahcorde + + -- Bence Magyar Fri, 31 Jul 2020 23:00:00 -0000 + +ros-rolling-control-toolbox (2.0.0-1bullseye) bullseye; urgency=high + + * 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 + + -- Bence Magyar Mon, 27 Jul 2020 23:00:00 -0000 + +ros-rolling-control-toolbox (1.17.0-1bullseye) bullseye; urgency=high + + * 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 + + -- Bence Magyar Thu, 31 Jan 2019 00:00:00 -0000 + +ros-rolling-control-toolbox (1.16.0-1bullseye) bullseye; urgency=high + + * switched to industrial_ci + * Add control_msgs to CATKIN_DEPENDS. + * Contributors: Bence Magyar, Mathias Luedtke, Mike Purvis + + -- Bence Magyar Thu, 30 Nov 2017 00:00:00 -0000 + +ros-rolling-control-toolbox (1.15.0-1bullseye) bullseye; urgency=high + + * 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 + + -- Bence Magyar Mon, 27 Jun 2016 23:00:00 -0000 + +ros-rolling-control-toolbox (1.14.0-1bullseye) bullseye; urgency=high + + * 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 + + -- Bence Magyar Mon, 02 May 2016 23:00:00 -0000 + +ros-rolling-control-toolbox (1.13.2-1bullseye) bullseye; urgency=high + + * CRITICAL BUGFIX: Fix broken PID command computation. + * Contributors: Adolfo Rodriguez Tsouroukdissian, Paul Bovbel + + -- Bence Magyar Thu, 21 May 2015 23:00:00 -0000 + +ros-rolling-control-toolbox (1.13.1-1bullseye) bullseye; urgency=high + + * Improvement in integral contribution implementation. Resolve #32 . + * Contributors: Adolfo Rodriguez Tsouroukdissian, Carlos Rosales + + -- Bence Magyar Wed, 29 Apr 2015 23:00:00 -0000 + +ros-rolling-control-toolbox (1.13.0-1bullseye) bullseye; urgency=high + + * 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 + + -- Bence Magyar Fri, 31 Oct 2014 00:00:00 -0000 + +ros-rolling-control-toolbox (1.12.1-1bullseye) bullseye; urgency=high + + * Remove broken test code. Hotfix for #18 . + * Contributors: Adolfo Rodriguez Tsouroukdissian + + -- Bence Magyar Wed, 11 Jun 2014 23:00:00 -0000 + +ros-rolling-control-toolbox (1.12.0-1bullseye) bullseye; urgency=high + + * pid: Adding quiet flag to suppress error message + * Contributors: Jonathan Bohren + + -- Bence Magyar Wed, 11 Jun 2014 23:00:00 -0000 + +ros-rolling-control-toolbox (1.11.0-1bullseye) bullseye; urgency=high + + * 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 + + -- Bence Magyar Sun, 11 May 2014 23:00:00 -0000 + +ros-rolling-control-toolbox (1.10.4-1bullseye) bullseye; urgency=high + + * 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 + + -- Bence Magyar Wed, 05 Feb 2014 00:00:00 -0000 + +ros-rolling-control-toolbox (1.10.3-1bullseye) bullseye; urgency=high + + * Fix bug in copy constructor. + * Contributors: Austin Hendrix + + -- Bence Magyar Thu, 01 Aug 2013 23:00:00 -0000 + +ros-rolling-control-toolbox (1.10.2-1bullseye) bullseye; urgency=high + + * 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 + + -- Bence Magyar Sun, 28 Jul 2013 23:00:00 -0000 + +ros-rolling-control-toolbox (1.10.1-1bullseye) bullseye; urgency=high + + * Add dependency on tinyxml. + * Contributors: Austin Hendrix + + -- Bence Magyar Tue, 25 Jun 2013 23:00:00 -0000 + +ros-rolling-control-toolbox (1.10.0-1bullseye) bullseye; urgency=high + + * 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 + + -- Bence Magyar Mon, 24 Jun 2013 23:00:00 -0000 + + diff --git a/debian/changelog.em b/debian/changelog.em deleted file mode 100644 index 35859090..00000000 --- a/debian/changelog.em +++ /dev/null @@ -1,7 +0,0 @@ -@[for change_version, change_date, changelog, main_name, main_email in changelogs]@(Package) (@(change_version)@(DebianInc)@(Distribution)) @(Distribution); urgency=high - -@(changelog) - - -- @(main_name) <@(main_email)> @(change_date) - -@[end for] diff --git a/debian/compat b/debian/compat new file mode 100644 index 00000000..ec635144 --- /dev/null +++ b/debian/compat @@ -0,0 +1 @@ +9 diff --git a/debian/compat.em b/debian/compat.em deleted file mode 100644 index 7a87216d..00000000 --- a/debian/compat.em +++ /dev/null @@ -1 +0,0 @@ -@(debhelper_version) diff --git a/debian/control b/debian/control new file mode 100644 index 00000000..77789112 --- /dev/null +++ b/debian/control @@ -0,0 +1,12 @@ +Source: ros-rolling-control-toolbox +Section: misc +Priority: optional +Maintainer: Bence Magyar +Build-Depends: debhelper (>= 9.0.0), ros-rolling-ament-cmake, ros-rolling-ament-cmake-gmock , ros-rolling-ament-cmake-gtest , ros-rolling-control-msgs, ros-rolling-filters, ros-rolling-generate-parameter-library, ros-rolling-geometry-msgs, ros-rolling-pluginlib, ros-rolling-rclcpp, ros-rolling-rclcpp-lifecycle , ros-rolling-rcutils, ros-rolling-realtime-tools, ros-rolling-ros-workspace +Homepage: http://ros.org/wiki/control_toolbox +Standards-Version: 3.9.2 + +Package: ros-rolling-control-toolbox +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends}, ros-rolling-control-msgs, ros-rolling-filters, ros-rolling-generate-parameter-library, ros-rolling-geometry-msgs, ros-rolling-pluginlib, ros-rolling-rclcpp, ros-rolling-rcutils, ros-rolling-realtime-tools, ros-rolling-ros-workspace +Description: The control toolbox contains modules that are useful across all controllers. diff --git a/debian/control.em b/debian/control.em deleted file mode 100644 index 6d7b65c3..00000000 --- a/debian/control.em +++ /dev/null @@ -1,14 +0,0 @@ -Source: @(Package) -Section: misc -Priority: optional -Maintainer: @(Maintainer) -Build-Depends: debhelper (>= @(debhelper_version).0.0), @(', '.join(BuildDepends)) -Homepage: @(Homepage) -Standards-Version: 3.9.2 - -Package: @(Package) -Architecture: any -Depends: ${shlibs:Depends}, ${misc:Depends}, @(', '.join(Depends)) -@[if Conflicts]Conflicts: @(', '.join(Conflicts))@\n@[end if]@ -@[if Replaces]Replaces: @(', '.join(Replaces))@\n@[end if]@ -Description: @(Description) diff --git a/debian/copyright b/debian/copyright new file mode 100644 index 00000000..a61a49e0 --- /dev/null +++ b/debian/copyright @@ -0,0 +1,9 @@ +Format: Bloom subset of https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: control_toolbox +Upstream-Contact: https://github.com/ros-controls/control_toolbox/issues +Source: https://github.com/ros-controls/control_toolbox/ + +Files: See file headers in repository for details +Copyright: See package copyright in source code for details +License: BSD-3-Clause + See repository for full license text diff --git a/debian/copyright.em b/debian/copyright.em deleted file mode 100644 index bc82fd5d..00000000 --- a/debian/copyright.em +++ /dev/null @@ -1,11 +0,0 @@ -Format: Bloom subset of https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ -Upstream-Name: @(Name) -@[if BugTracker]Upstream-Contact: @(BugTracker)@\n@[end if]@ -@[if Source]Source: @(Source)@\n@[end if]@ -@[for License, Text in Licenses]@ - -Files: See file headers in repository for details -Copyright: See package copyright in source code for details -License: @(License) - @(Text) -@[end for]@ diff --git a/debian/gbp.conf b/debian/gbp.conf new file mode 100644 index 00000000..97d732b6 --- /dev/null +++ b/debian/gbp.conf @@ -0,0 +1,3 @@ +[git-buildpackage] +upstream-tag=release/rolling/control_toolbox/3.2.0-1 +upstream-tree=tag diff --git a/debian/gbp.conf.em b/debian/gbp.conf.em deleted file mode 100644 index ad24a164..00000000 --- a/debian/gbp.conf.em +++ /dev/null @@ -1,3 +0,0 @@ -[git-buildpackage] -upstream-tag=@(release_tag) -upstream-tree=tag diff --git a/debian/rules.em b/debian/rules similarity index 72% rename from debian/rules.em rename to debian/rules index 2ab7b14a..5bbd677f 100755 --- a/debian/rules.em +++ b/debian/rules @@ -13,7 +13,7 @@ export DH_VERBOSE=1 # https://code.ros.org/trac/ros/ticket/2977 # https://code.ros.org/trac/ros/ticket/3842 export LDFLAGS= -export PKG_CONFIG_PATH=@(InstallationPrefix)/lib/pkgconfig +export PKG_CONFIG_PATH=/opt/ros/rolling/lib/pkgconfig # Explicitly enable -DNDEBUG, see: # https://github.com/ros-infrastructure/bloom/issues/327 export DEB_CXXFLAGS_MAINT_APPEND=-DNDEBUG @@ -24,24 +24,24 @@ endif DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) %: - dh $@@ -v --buildsystem=cmake --builddirectory=.obj-$(DEB_HOST_GNU_TYPE) + dh $@ -v --buildsystem=cmake --builddirectory=.obj-$(DEB_HOST_GNU_TYPE) override_dh_auto_configure: # In case we're installing to a non-standard location, look for a setup.sh # in the install tree and source it. It will set things like # CMAKE_PREFIX_PATH, PKG_CONFIG_PATH, and PYTHONPATH. - if [ -f "@(InstallationPrefix)/setup.sh" ]; then . "@(InstallationPrefix)/setup.sh"; fi && \ + if [ -f "/opt/ros/rolling/setup.sh" ]; then . "/opt/ros/rolling/setup.sh"; fi && \ dh_auto_configure -- \ - -DCMAKE_INSTALL_PREFIX="@(InstallationPrefix)" \ - -DAMENT_PREFIX_PATH="@(InstallationPrefix)" \ - -DCMAKE_PREFIX_PATH="@(InstallationPrefix)" \ + -DCMAKE_INSTALL_PREFIX="/opt/ros/rolling" \ + -DAMENT_PREFIX_PATH="/opt/ros/rolling" \ + -DCMAKE_PREFIX_PATH="/opt/ros/rolling" \ $(BUILD_TESTING_ARG) override_dh_auto_build: # In case we're installing to a non-standard location, look for a setup.sh # in the install tree and source it. It will set things like # CMAKE_PREFIX_PATH, PKG_CONFIG_PATH, and PYTHONPATH. - if [ -f "@(InstallationPrefix)/setup.sh" ]; then . "@(InstallationPrefix)/setup.sh"; fi && \ + if [ -f "/opt/ros/rolling/setup.sh" ]; then . "/opt/ros/rolling/setup.sh"; fi && \ dh_auto_build override_dh_auto_test: @@ -49,19 +49,19 @@ override_dh_auto_test: # in the install tree and source it. It will set things like # CMAKE_PREFIX_PATH, PKG_CONFIG_PATH, and PYTHONPATH. echo -- Running tests. Even if one of them fails the build is not canceled. - if [ -f "@(InstallationPrefix)/setup.sh" ]; then . "@(InstallationPrefix)/setup.sh"; fi && \ + if [ -f "/opt/ros/rolling/setup.sh" ]; then . "/opt/ros/rolling/setup.sh"; fi && \ dh_auto_test || true override_dh_shlibdeps: # In case we're installing to a non-standard location, look for a setup.sh # in the install tree and source it. It will set things like # CMAKE_PREFIX_PATH, PKG_CONFIG_PATH, and PYTHONPATH. - if [ -f "@(InstallationPrefix)/setup.sh" ]; then . "@(InstallationPrefix)/setup.sh"; fi && \ - dh_shlibdeps -l$(CURDIR)/debian/@(Package)/@(InstallationPrefix)/lib/ + if [ -f "/opt/ros/rolling/setup.sh" ]; then . "/opt/ros/rolling/setup.sh"; fi && \ + dh_shlibdeps -l$(CURDIR)/debian/ros-rolling-control-toolbox//opt/ros/rolling/lib/ override_dh_auto_install: # In case we're installing to a non-standard location, look for a setup.sh # in the install tree and source it. It will set things like # CMAKE_PREFIX_PATH, PKG_CONFIG_PATH, and PYTHONPATH. - if [ -f "@(InstallationPrefix)/setup.sh" ]; then . "@(InstallationPrefix)/setup.sh"; fi && \ + if [ -f "/opt/ros/rolling/setup.sh" ]; then . "/opt/ros/rolling/setup.sh"; fi && \ dh_auto_install diff --git a/debian/source/format b/debian/source/format new file mode 100644 index 00000000..163aaf8d --- /dev/null +++ b/debian/source/format @@ -0,0 +1 @@ +3.0 (quilt) diff --git a/debian/source/format.em b/debian/source/format.em deleted file mode 100644 index 9666bf41..00000000 --- a/debian/source/format.em +++ /dev/null @@ -1 +0,0 @@ -3.0 (@(format)) diff --git a/debian/source/options.em b/debian/source/options similarity index 81% rename from debian/source/options.em rename to debian/source/options index 8c4c78b0..8bc9182a 100644 --- a/debian/source/options.em +++ b/debian/source/options @@ -1,6 +1,5 @@ -@[if format and format == 'quilt']@ # Automatically add upstream changes to the quilt overlay. # http://manpages.ubuntu.com/manpages/trusty/man1/dpkg-source.1.html # This supports reusing the orig.tar.gz for debian increments. auto-commit -@[end if] +