Adaptive Control of Rigid Robot Manipulators