Contributors: Alejandro Hernández Cordero, Matt Reynolds, Shane Loretz
0.17.0 (2020-02-24)
Use default member initializers
Use braces for member initializers
Replace boost with std
Replace boost ptrs with std ptrs in documentation
Replace boost::lexical_cast<double> with std::stod
Prefer default member initializers
Use auto
Contributors: AbhinavSingh, Bence Magyar, Matt Reynolds
0.16.0 (2020-01-27)
Use more meaningful pair iterator names
Use range-based for loops in transmission_interface
Resolve Boost dependency issues
Update dependencies
- Dependencies needed to compile are <build_depend>
- Dependencies used in public headers are <build_export_depend>
- Dependencies needed to link or run are <exec_depend>
Merge branch 'melodic-devel' into catkin-lint
Update package dependencies
Remove rosunit test_depend from package.xml
Prefer nullptr for null pointers
Merge pull request #406 from matthew-reynolds/pragma-once
Use #pragma once
Add missing header guard to loader_utils.h
Replace header guard with #pragma once
Merge pull request #395 from pal-robotics-forks/extend-interfaces-melodic
Extend interfaces
Add torque sensor and absolute encoder support to transmissions and adjust tests
Add pointer accessors for torque sensor and absoute position encoders
Modified structures to have absolute encoder and torque sensor parameters
Fix transmission_interface dependencies
Apply consistent style to CMakeLists.txt files
Apply consistent style to package.xml files
Merge pull request #399 from mvieth/melodic-devel
Fix compiler warnings
Fix compiler warnings
- Comment out unused parameters
- Make some integer literals unsigned to avoid comparison between signed and unsigned
- Remove unnecessary semicolons
- Make const void return type to void
Fix build error in clang
error: non-aggregate type 'std::vector' (aka 'vector >') cannot be initialized with an initializer list
Merge pull request #379 from bmagyar/transmission-parser-touchup
TransmissionParser touchup
Build script fixes.
- Add missing libraries to catkin_package call.
- Gate tests with CATKIN_ENABLE_TESTING.
- Add missing files to install target.
Fix possible memory corruption in tests.
Perform sanity checks on members, not parameters.
- The result is the same, but this is more uniform with the rest of the code.
Enable joint reduction spec for 4-bar linkages.
- As in the differential transmission, it's convenient to specify an additional
mechanical reduction on the joint output. This is especially convenient for
flipping the rotation direction of a joint (negative reduction value).
- Update URDF loader.
- Update documentation and tests.
Trivial, cosmetic fixes.
C++11 compatibility fixes.
Fix resource check for multi-dof transmisisons.
Efficiency fix.
- cppcheck flagged a [passedByValue] warning. Using const references instead.
Fix compiler warning.
Fix license header in some files.
Test transmission handle duplication.
Use less pointers in transmission loader data.
- Only RobotHW and RobotTransmission instances are pointers as they are owned
by the robot hardware abstraction. The rest are plain members whose lifetime
is bound to the loader struct.
Trivial test addition.
Remove unnecessary header dependencies.
Catkin fixes.
Fix bug when adding multiple transmissions.
- std::vectors were being used to store raw joint data, and when new transmissions
were added, push_back()s would (potentially) reallocate the vectors and
invalidate already stored pointers in hardware_interfaces. We now use std::map.
- Move plugin implementations to a separate library.
- Export link libraries to the outside.
- More complete tests.
Log message change.
Test greceful error-out with unsupported features.
Add four-bar-linkage transmission parser.
Add differential drive transmission parser.
Move common XML parsing code to TransmissionLoader
Mechanical reductions, offsets and roles are used by many transmission types.
The TransmissionLoader base class exposes convenience methods for parsing these
elements.
Remove dead code.
Update loader test, better log statements.
First draft of transmission loading.
- Only simple transmission type currently supported.
- Can load forward map for act->jnt state and jnt->act pos,vel.eff commands.
- Partial testing.
Add class for holding transmission interfaces.
- Mirrors hardware_interface::RobotHW, but for transmissions.
Allow multiple hw interfaces, Fix #112, and test.
- Allow to specify multiple hardware interfaces for joints and actuators.
- Fix invalid xml_element tag. Contents are now stored as a string.
- Unit test parser.
Renamed manifest.xml to prevent conflicts with rosdep
CMakeLists fix to fit with OpenEmbedded/Yocto meta-ros layer.
Increase the compatibility of the ros_control code with
meta-ros, an OpenEmbedded/Yocto layer that provides recipes for ROS
packages disabling catking checking the variable CATKIN_ENABLE_TESTING.
Fix license header in some files.
Fix cppcheck uninit'd variable warnings in tests.
0.5.7 (2013-07-30)
Fix for building ros_control
Updated CHANGELOG
0.5.6 (2013-07-29)
NOTE: ros_control now requires ros-*-cmake-modules for source-installations. Install via rosdep or manually
System Message: WARNING/2 (<string>, line 292); backlink
Inline emphasis start-string without end-string.
Removed the local FindTINYXML.cmake and switched to catkin's cmake_modules version
Installed missing transmission_interface_library
0.5.5 (2013-07-23)
transmission_interface: fixup finding tinyxml
0.5.4 (2013-07-23)
0.5.3 (2013-07-22)
Duplicated URDF's method of including tinyxml
0.5.2 (2013-07-22)
Trivial cleanup
tinyxml include dir fix
0.5.1 (2013-07-19)
Added new maintainer
Attempt to fix transmission interface tinyxml build error
0.5.0 (2013-07-16)
Minor Doxygen fixes.
- Revert back to using file instead of brief, as the latter was documenting
the namespace and not the file scope.
- Escape angular brackets on XML tag documentation, as Doxygen was parsing them
printing warnings.
@davetcoleman
Code consistency fixes.
- Add missing header guard.
- Make existing header guards comply with the NAMESPACE_CLASS_H convention.
- Make Doxygen structural commands start with '' instead of '@', as most of the
new ros_control code.
- Remove trailing whitespaces.
- Remove commented-out code used for debugging.
Build script fixes.
- Add missing tinyxml dependency.
- Drop unnecessary Boost dependency.
- Add URDF parsing code to rosbuild.
Add meta tags to packages not specifying them.
- Website, bugtracker, repository.
Documentation improvements.
- More consistency between transmission and joint limits interfaces doc.
- Make explicit that these interfaces are not meant to be used by controllers,
but by the robot abstraction.
Reneamed Github repo in documentation to ros-controls
Make specific transmission interfaces proper types.
- Proper types instead of namespaces allow to provide less cryptic feedback.
* Using typedefs:
"transmission_interface::TransmissionInterface<transmission_interface::ActuatorToJointPositionHandle>"
* Using a new type:
"transmission_interface::ActuatorToJointPositionInterface"
- Added error message printing to tests for manual inspection.
0.4.0 (2013-06-25)
Version 0.4.0
1.0.1
Update Doxygen examples with recent API changes.
Update README.md
Move examples out of readme and into ros_control's wiki.
Trivial doc/whitespace fix.
Merge branch 'master' into hardware_interface_rework
Conflicts:
hardware_interface/CMakeLists.txt
Leverage ResourceManager in TransmissionInterface.
- Refs #45 and #48.
- Leverage hardware_interface::internal::ResourceManager to implement
TransmissionInterface more compactly and consistently.
- Update unit tests.
adding install targets
adding missing manifests
removing comment
merging CMakeLists.txt files from rosbuild and catkin
adding hybrid-buildsystem makefiles
Harmonize how variables are quoted in logs.
- Unify to using 'single quotes'.
- Fixes #42.
catkinizing, could still be cleaned up
Group transmission types in a Doxygen module.
Rename TransmissionException class.
Rename TransmissionException to TransmissionInterfaceException. It is more
verbose, but more consistent with the existing HardwareInterfaceException.
Add additional minimal example to mainpage doc.
Existing example was complete, but quite long. It's better to start with a
small and simple example.
Update README.md
Add additional minimal example.
Update package wiki URL.
Update README.md
Update README.md
Trivial doc fix.
Add main page to documentation.
It includes an overview of the transmission_interface package, pointers to the
more relevant classes, and a commented example.
Make transmission interface more general.
The previous API assumed that to map a variable like position, one only
needed actuator and joint space position variables. Although this is often the
case (eg. fully actuated/determined transmissions), this does not hold in
general. Underactuated transmissions are a typical example of this.
Now each map accepts full <position,velocity,effort> triplets for actuator and
joint space variables, and uses only the ones it needs.
Although the current API has gained in generality, it has lost some of the
explicitness it had before. For instance, if only position variables are
needed for a map, one still needs to pass the full triplet (velocity and
effort variables can be empty).
Finally, unit tests and documentation have been updated to reflect the changes.
Minor documentation building fixes.
- Remove test folder from docs.
- Add proper export element in manifest.
Update transmission_interface/README.md
Update transmission_interface/README.md
Add readme file.
Remove pure virtual method.
Use name commands in documentation.
Add pthread dependency to tests.
After moving from Ubuntu 10.04 to 12.04 these dependencies need to be explicitly
stated in my dev machine. This should be looked upon in greater detail, as such
dependecies should be taken care of by rosbuild.
Remove dependency from manifest.
Add transmission interface class and test.
Add transmission accessors test.
Remove unnecessary virtual keywords.
Add credit statement in docs.
Add comprehensive doc to implemented transmissions.
- More desriptive overview.
- Images depicting each transmission type. Binary pngs are under version control
instead of getting auto-generated in the Makefile as not all build environments
may have the necessary svg->png filters.
- Expressions governing transmissions in tabular form.
Basic documentation for implemented transmissions.
Document abstract Transmission class.
Add basic support for mechanical transmissions.
- Base transmission class with abstract interface.
- Specializations for three common transmission types: simple, differential and
four-bar-linkage.
- Unit tests with exercising preconditions, black-box and white-box tests.