Gravity Compensation Controller#
The Gravity Compensation Controller is a ROS controller that performs Inverse Dynamics to compute the necessary torque to the joints in the legs to maintain the current configuration.
To start this controller, lift the robot on air and execute:
roslaunch kangaroo_controller_configuration gravity_compensation_controller.launch
This controller runs force control at a higher frequency using force sensor feedback to achieve the desired commanded force while being highly backdrivable.
Tip
Internally we use this controller to estimate the force offsets of the actuator force sensors. If the offsets are correctly estimated the robot should be static when starting the controller and shouldn’t move when placing it in other configurations.
📹 Video Reference:#
The following video showcase the Kangaroo lowerbody running the Gravity Compensation Controller