All notable changes to this project will be documented in this file.
- Add an example for recording joint angle data to the simulation documentation
- Add the JointRecorder process to record and plot joint trajectories
- Document joint acceleration limits in inverse kinematics
- Examples are now part of the documentation
- Updated VHIP stabilization example to match ICRA 2020 video
- Body:
pos,rotation_matrixandtransformaliases - Body: compute the adjoint matrix in
body.adjoint_matrix - Contact:
contact.normalalias - Contact:
set_wrench()function that switches a contact to managed mode - Contact:
wrench_at()function to get wrench at a given point in the world frame - Contact:
wrench,forceandmomentattributes - Example: external force acting on the right hand of the humanoid
- Example: stabilization with height variations
- InvertedPendulum: draw center of pressure by
draw_point - Manipulator:
wrench,forceandmomentattributes - Robot: stance binding creates a new
robot.wrench_distributorprocess - Simulation: can now
unschedule()a process - StanceWrenchDistributor class to distribute contact wrenches of a stance
- CameraRecorder:
wait_for()does not requiresimargument any more - InvertedPendulum: clamping is enabled/disabled by
self.clamp - InvertedPendulum: clamping is now the default behavior for
set_copandset_lambda - RobotWrenchDrawer became RobotDiscWrenchDrawer (discrete velocity differentiation)
- RobotWrenchDrawer now fetches results from stance wrench distributor
- License: switched to GPL as cddlib (and thus pypoman) is GPLv2
- Updated qpsolvers submodule to v1.0.7
- GUI: don't draw zero wrenches
- Video recording and conversion script
- Example: horizontal walking by linear model predictive control
- IK: can now take joint acceleration limits into account
- IK: upgraded with Levenberg-Marquardt damping
- IK: warm-start parameter to
solve() - Point: new attribute
point.pddfor the acceleration - Point: new function
point.integrate_constant_jerk() - Robot model gets a
get_link()function - Simulation gets
set_camera_transform()function - SwingFoot type: a polynomial swing foot interpolator
- This change log
- ZMP support areas can now take optional contact pressure limits
- Contact:
copy()now takes optionalhidekeyword argument - GUI: default point size is now 1 cm
- GUI: renamed
draw_polyhedron()todraw_polytope() - IK: task strings now print both weight and gain coefficients
- MPC: can now pass optional arguments to the QP solver in
solve() - MPC: no need to call the
build()function any more - Removed outdated Copra wrapper
- Stance: now bind end-effector links as well
- Stance: simplified prototype of
compute_zmp_support_area
- IK: singularity fix from Pfeiffer et al.
- Knee joint names in JVRC-1 model
- Python 3 compatibility
- Restore initial settings in IK solve()
- Initial release of the project. Let's take it from there.