Skip to content

Latest commit

 

History

History
211 lines (150 loc) · 8 KB

CHANGELOG.md

File metadata and controls

211 lines (150 loc) · 8 KB

Changelog

Added

  • [mc_tasks] Add a simple constructor for StabilizerTask

Fixes

  • [mc_observers] Fix configuration reading for anchor frame configuration

[1.5.1] - 2020-09-14

Added

  • [mc_tasks] Allow to set the damping on PostureTask
  • [mc_tasks] Log eval and speed in most tasks

Fixes

  • [mc_control] Add missing implementation for some (multi-robot) MCGlobalController functions

1.5.0 - 2020-09-09

Changes

  • Output torques are automatically computed when a dynamics constraint is added to the solver (#52)
  • mc_rtc::Configuration error reporting now reports the source of error (#60)
  • Real robots instance are now created for all robots loaded by a controller
  • Observer pipelines have been overhauled (#61); see the refreshed tutorial for details
  • If a RobotModule provides torque derivative or joint acceleration bounds those will be enforced by (resp.) DynamicsConstraint and KinematicsConstraint

Added

  • [GUI] Added Table element with formatting support (#45/#47)
  • [mc_rbdyn] Add an API to find force sensors indirectly attached to a surface
  • Support for simple collision shapes described in URDF (#53)
  • Suppport for wildcard collision specifications (#53)
  • GUI monitoring for collisions (#53)
  • User configuration for the build and install script (#48)
  • Support for specifying torque derivative and joint acceleration bounds in RobotModule
  • mc_naoqi public release, an interface for SoftBank Robotics robots
  • Support for logging std::array<double, N> (#62)
  • Wrench completion criteria for SurfaceTransformTask (#63)
  • Admittance sample controller (!215)

Fixes

  • Support for Ubuntu Focal/ROS noetic in utils script/CI
  • Support for Debian Buster/ROS noetic in utils script/CI
  • Fix several issues with special plots in mc_log_ui
  • Publish up-to-date surfaces in ROS TF (#44)
  • Improve documentation for completion criteria (#50)
  • C-string overload for GenericLoader (fixes possibly ambiguous calls)
  • Fix initialization issues
  • Simplified device interface (#51)
  • Fix an issue with collision transforms initialization
  • Fix an issue with FSM executor perf entry logging
  • Improved StabilizerTask/StabilizerState configurability (#23)

1.4.0 - 2020-06-11

Changes

  • [FSM] Deprecates the use of robotIndex in favor of robot name robot
  • bodyWrench and surfaceWrench can now be computed with joints between the sensor and body/surface
  • Message state can be used to display messages in the GUI as well as the CLI
  • Benchmarks can now be compiled and run with the build_and_install.sh script
  • Use RBDyn::Parsers instead of mc_rbdyn_urdf
  • Functions that use mc_rbdyn_urdf were kept for backwards compatibility, they will be removed in a later release
  • Improve error reporting when some tasks parameters are not set correctly
  • mc_rtc::log::info, mc_rtc::log::success, mc_rtc::log::warning and mc_rtc::log::error replace the respective LOG_* macros, they use the spdlog library for asynchronous logging and modern formatting support
  • LOG_* macros are now deprecated, they will be removed in a later release

Added

  • New benchmark for task allocation performance
  • Support for std::unordered_set in mc_rtc::Configuration
  • Added performance measurements to the FSM

Fixes

  • Fix and upgrade benchmarks compilation
  • Correctly teardown the last FSM state
  • Computed contact forces are logged with a unique identifier
  • Improve Python 3 compatibility for mc_log_ui

1.3.0 - 2020-05-07

Added

  • mc_tasks::MomentumTask
  • mc_rbdyn::RobotModule can specify a different URDF for showing the real robot
  • mc_log_ui now has an icon and a dedicated .desktop file

Changes

  • mc_solver::QPSolver always makes sure to udpate the problem size
  • Many tasks throw as documented when pre-conditions are not met (e.g. surface does not exist or has no sensor attached)

Changes

  • Improve gripper handling so that MCGlobalController handles gripper update
  • All robots' grippers are loaded and run by the controller
  • Gripper interface is available from the Robot class
  • Gripper logging and publishing are correctly handled in a way transparent to the controller
  • Gripper joints are hidden from the posture task GUI
  • Gripper safety settings can be provided at the Gripper definition level or at the RobotModule level

Fixes

  • Enforce the list of supported robots provided by a controller
  • Throws an error if selected joints do not exist
  • Correctly handle default case in Contact GUI menu

1.2.1 - 2020-03-18

Added

  • Friction support for FSM contacts

Fixes

  • Bug when removing contacts from the GUI
  • Loading of mc_rbdyn::Contact from YAML/JSON now supports friction

1.2.0 - 2020-03-17

Added

  • CoM task is now optional in AddRemoveContact state
  • timeout API for ControllerClient
  • XY and 3D plots support in mc_log_ui
  • animation support in mc_log_ui
  • mc_rtc::DataStore to store arbitrary data and callbacks available across states
  • Python bindings for robot().module() and controller configuration
  • ZMP compensation control (ZMPCC) is now possible with the LIPMStabilizer
  • Safety settings for gripper control can now be modified
  • MetaTasksState can now deliver outputs relative to the completed task
  • ParallelState output can be controlled more finely
  • Contact friction can be set on a per-contact basis

Changes

  • Simplify usage of constraint helpers
  • Create a default CompoundJointConstraint for the main robot
  • mc_log_ui uses PyQt5 instead of PySide

Fixes

  • mc_tasks::GazeTask: fix a possible division by zero
  • ROS support on macOS in build script
  • Fix ROS linking issue, ensuring the ROS based tasks are available if the plugin is loaded
  • Check 3rd-party CMake targets existence before creating them
  • Improve constraint helpers documentation
  • Fix typos in documentation and website
  • Pass down mc_rtc version to Python bindings
  • Improve build script ability to handle incremental updates
  • Correct issue in calling MCController::loadRobot after the controller was started
  • CoMTask logging correctly reports the current CoM
  • Changing active/inactive joints while a task is in the solver will actually do nothing (as documented)

1.1.0 - 2020-01-15

Added

  • mc_tasks::lipm_stabilizer::StabilizerTask and mc_control::fsm::StabilizerStandingState allow to use a state-of-the-art biped stabilizer in a stand-alone controller or as a parallel state in an FSM. Refer to the stabilizer documentation for more details
  • JSON/YAML documentation for the FSM states provided by the framework

Changes

  • Split interface and macros header to improve incremental compilations of the framework. In some cases it might require to include the macros explicitely
  • virtual void update() in the mc_tasks::MetaTask interface has been changed to virtual void update(mc_solver::QPSolver & solver)

Fixes

  • JVRC1 and env modules now correctly set _visual

1.0.1 - 2020-01-02

Added

  • mc_rtc::MC_RTC_VERSION and mc_rtc::version() for compile/run-time discrepancies checking

Fixes

  • [mc_rbdyn] Allow aliases to specify a string
  • [mc_rbdyn] Allow loading aliases of aliases

1.0.0 - 2019-12-23

Initial release