How Does InverseDynamics Calculate Torques if Velocity is 0?

3 ビュー (過去 30 日間)
N
N 2021 年 3 月 3 日
回答済み: Yiping Liu 2021 年 3 月 10 日
Hi,
Please explain, if I don't specify end-effector velocity, and I call inverseDynamics,
torques = inverseDynamics(Manipulator,config),
I get a joints' torque vector to hold the specified configuration mentioned. These are joint velocities, right? I am confused, if velocity is zero, how are the torques being generated? Which method/ equations are used here?
When I multiply the Jacobian with the torques gnerated above, I get the cartesian velocities, which are valid numbers, as I can verify J inverse X cartesian velocities will give me the correct torques generated. But my confusion is, how did we get the torques, and hence the velocities, if the velocities were zero to start with?
Thanks,

回答 (1 件)

Yiping Liu
Yiping Liu 2021 年 3 月 10 日
As described in the doc page,
jointTorq = inverseDynamics(robot,configuration) computes joint torques to hold the specified robot configuration.
This means, if you don't provide the joint velocities and joint accelerations as input to ID, they are assumed to be zero vectors. The returned value is a vector of joint torque using which you can hold the robot still (compensating the gravity torque)

カテゴリ

Help Center および File ExchangeAssembly についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by