Skip to content

Releases: jrl-umi3218/mc_rtc

Release v1.5.1

23 Sep 14:45
e21f5db
Compare
Choose a tag to compare

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

Release v1.5.0

09 Sep 05:18
be85681
Compare
Choose a tag to compare

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)

Release v1.4.0

11 Jun 04:25
0f7b06a
Compare
Choose a tag to compare

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

Release v1.3.0

07 May 03:34
6d25785
Compare
Choose a tag to compare

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

Release v1.2.1

18 Mar 03:53
Compare
Choose a tag to compare

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

Release v1.2.0

17 Mar 09:18
Compare
Choose a tag to compare

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)

Release v1.1.0

15 Jan 06:52
Compare
Choose a tag to compare

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

Release v1.0.1

02 Jan 12:13
Compare
Choose a tag to compare

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

Release v1.0.0

24 Dec 01:17
Compare
Choose a tag to compare