

NeuroBackdrive and Active Compliance all inter relate in some form under different control modes. NeuroBackdrive is a mode of operation that the robot is switched into via a mode switch pluggd into the robot co-processor and / or under software control as described in the protocol document.
One of the challenges of robotic arm design - is to design a robot with multiple gearboxes that can drive high forces, have a high 'hold' capability - but at the same time be easily back driven by the user under various circumstances, without of course stripping the gearbox / damaging the motors. The reason we use a combination of standard gearing and timing belt transmissions, apart from distributing the mass to achieve torque balancing, - is to enable the NeuroBackdrive feature.
Timing belts enable adjustable low tension to provide less friction and less bearing loads with a higher natural compliance, and equally enable higher tension that provides more friction and higher load at the bearing surface - but with minimal compliance. When we refer to compliance in this respect - we mean the ability to 'flex' the respective joint a certain amount before, if permittable, the transmission reflects this 'flex' at the motor whence motor backdrive would ordinarily commence
The firmware is explicitly set to read the encoders at the motor level, and if the encoder measured a change that was different to the target position sent to the motor PD controller - due to the compliance being fully taken up and placing the motor into backdrive - the motor would rapidly switch between a mode where the torque was released from the motor, followed by reading the encoder, then actively driving the motor to the position that the encoder was being 'moved' towards under backdrive. This rapid multitasking then allowed the joint to be grabbed by hand and allow the user to then push that joint while the motion of the motor 'actively' assisted the user to then backdrive the joint