摘要 |
<p>A desired movement command (203) for a robotic device (100) having n joints (112) operating in an m degrees of freedom task space is analyzed to determine if it would cause any of the joint angular limits to be violated. In the case where a non-zero number L (241) of the joints (112) have angular limits that are violated, a revised movement command (254) is then constructed according to the following equation: wherein qmod (253) is an (n-L)x 1 joint velocity command for joints that are not currently being limited, qnew (254) is an n×1 new joint velocity command, Jm0d (251) is an m×(n-L) matrix, JT mod is the transpose of Jmod (251), W (252) is an m×m matrix comprising weighting factors, and xcmd (203) is the desired movement command (203) for the end-effector (116) velocity. Jmod (251) is constructed by determining an m×n Jacob ian matrix J (211) for the robotic device (100) and then utilizing the Jacobian matrix J (211) to generate the matrix Jmod (251), in which Jmod (251) comprises all columns in J (211) except for those columns corresponding to the L actively limited joints.</p> |