Patent ID: 8065060

Claim:
A control method for controlling a mechanical arm to perform a desired task, the mechanical arm comprising a support, multiple links, and an end effector, the end effector being a work implement supported by the links for movement relative to the support, multiple joints connecting the multiple links one to another, to the support and to the end effector, each joint being movable to different joint positions to effect relative movement of the members connected by the respective joint, and multiple controllable actuators to effect the joint movements, wherein the method employs a control system, and wherein the method comprises: based upon input from an operator, selecting a virtual kinematics configuration and defining a trajectory in real time; and with the control system, controlling the actuators to move the end effector along the trajectory by: generating an input control vector for each link from a control signal vector outside of a closed negative feedback loop, each input control vector comprising, at each of a series of system-determined time intervals, a reference position for each link according to the selected virtual differential kinematics configuration; adjusting the control signal vector with an error correction vector, if any, supplied through the closed negative feedback loop; generating an output position vector based upon measurements of the actual position of each link at each respective time interval under operation of the actuators according to the adjusted control signal vector; determining a dynamic motion model of the motion of each link of the mechanical arm by relating for each link the elements of the input control vector to the elements of the output position vector to provide time-variable constant coefficients for each time interval, wherein the dynamic motion model incorporates dynamics components including acceleration; updating the error correction vector using the dynamic motion model and differences between measured actual link positions from the output position vector and corresponding reference positions from the input control vector; and transmitting the updated error correction vector in the closed negative feedback control loop for adjustment of the control signal vector.