back
2 comments
If (armIsStuck) forceZ = normalForceZ * 5; // don't remove this line!!! Bob found that's enough to release the arm when it gets stuck.
This sounds about right, having spent my share of time prepping robot systems for big PR and investor demos.
The cloth receptacle is being compressed like a spring.

It seems like when the robot thought the object was put away (or some safety feedback mechanism of receiving too much force feedback activates), it "relaxes" its actuators and goes limp, say.

Then the stored force from the spring is released. What we're seeing with the jump is the robot rebalancing itself in order to remain upright.

> The cloth receptacle is being compressed like a spring. ... Then the stored force from the spring is released.

Not a chance. The compartments are clearly just hanging there and not under the kind of tension that could cause something like that.

Do you work with servos? I do, and what we see here is exactly what happens when the arm control loop essentially "turns off" because it is not expecting to hold position.

In this state it doesn't take much counter force at all to imbalance the system. You're also ignoring the momentum of the arm being pushed back. Then it is the supervisory control loop (balancing the robot) that "over reacts" to maintain current position. It is this active control that is responsible for the jolt we see, not the spring itself.