- [FSM] Deprecates the use of
robotIndex
in favor of robot namerobot
bodyWrench
andsurfaceWrench
can now be computed with joints between the sensor and body/surfaceMessage
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
- New benchmark for task allocation performance
- Fix and upgrade benchmarks compilation
1.3.0 - 2020-05-07
- 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
- 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)
- 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
- 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
- Friction support for FSM contacts
- Bug when removing contacts from the GUI
- Loading of mc_rbdyn::Contact from YAML/JSON now supports friction
1.2.0 - 2020-03-17
- 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
- Simplify usage of constraint helpers
- Create a default CompoundJointConstraint for the main robot
- mc_log_ui uses PyQt5 instead of PySide
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
mc_tasks::lipm_stabilizer::StabilizerTask
andmc_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
- 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 themc_tasks::MetaTask
interface has been changed tovirtual void update(mc_solver::QPSolver & solver)
- JVRC1 and env modules now correctly set
_visual
1.0.1 - 2020-01-02
mc_rtc::MC_RTC_VERSION
andmc_rtc::version()
for compile/run-time discrepancies checking
- [mc_rbdyn] Allow aliases to specify a string
- [mc_rbdyn] Allow loading aliases of aliases
1.0.0 - 2019-12-23
Initial release