BrakeReleaseController
Use this controller to deactivate the brakes at startup on any Duatic DuaDrive equipped with brakes.
Why is this controller needed?
The DuaDrives use pin brakes. If the full weight of an arm is loaded onto a pin brake it is possible that the pin cannot be pulled.
For this case the pin needs to be unloaded.
Usage
Add entry in controllers.yaml and in your launch infrastructure. Do not directly activate it during startup
Make sure to deactivate the
FreezeControllerActivate the
BrakeReleaseControllerIf it was for some reason not successful -> Retry (deactivate -> activate)
Deactivate the controller to release the
position/velocityinterfaces
NOTE: The “manual” mode assumes the GravityCompensationController is up and running
How does it work ?
Mode: “auto”
The controller calculates the currently needed joint torques to hold the arm in its current configuration. Therefore a properly configured URDF is needed.
It then commands a small position “kick” into the same direction of the corresponding torque. This unloads the brakes and helps releasing them.
Mode: “manual”
In this mode the controller simply performs the unlock lifecycle by:
“excite brakes” -> give user “timeout” seconds to move joints -> “put drives into hold”
Interaction
Mode: “auto”
None, only activate, deactivate
Mode: “manual”
Activate, manually move all joint around to unlock all the brakes, deactivate
Parameters
Name |
Description |
Default |
Bounds |
|---|---|---|---|
|
List of joint names as described in the URDF the controller shall handle |
- |
may not be empty |
`position_kick |
Distance each actuator shall move against gravity in [rad]. |
0.005 |
[0.0, 0.2] |
|
Select as an alternative manual mode |
“auto” |
“auto” or “manual” |
|
Time in manual mode until brakes are put into hold mode |
50.0 |
>= 0.0 |
Notes
This controller needs a correctly configured URDF including masses