Incorrect joint coordinate given from ikcon() when given a negative coordinate

9 ビュー (過去 30 日間)
Ho Jin Ping
Ho Jin Ping 2021 年 6 月 6 日
回答済み: Pratik 2024 年 4 月 9 日
I'm facing issues where ikcon() outputs incorrect joint angles for my RRR 3DOF robot arm, when a negative x, y, or z coordinate is entered into the ikcon() function. It returns a joint coordinate that causes the robot arm to "eat itself". I'm not sure whether this is an issue with the initial joint coordinates or what. Assistance required not very urgently.
L(1) = Link([0 0 0 pi/2],'standard'); L(1).qlim = [-pi pi];
L(2) = Link([0 0 30 0],'standard'); L(2).qlim = [deg2rad(-45) deg2rad(150)];
L(3) = Link([0 0 30 0],'standard' ); L(3).qlim = [deg2rad(-160) deg2rad(0)];
twoLink = SerialLink(L);
L(2).offset = pi/4;
L(3).offset = -pi/2;
T1 = transl(-4, 45, 4);
q1 = twoLink.ikcon(T1);
twoLink.plot(q1);

回答 (1 件)

Pratik
Pratik 2024 年 4 月 9 日
Hi Ho Jin Ping,
As per my understanding, you encounter issue when using the "ikcon()" function for inverse kinematics calculations on a robot arm.
The issue you’re encountering with ikcon() and your RRR 3DOF robot arm is likely related to the initial joint coordinates or the constraints you’ve set.
When using ikcon(), it’s essential to provide a reasonable initial guess for the joint angles (q0). If the initial guess is far from the actual solution, the optimization process may converge to a local minimum, resulting in incorrect joint angles. Ensure that your initial guess (q0) is close to the actual solution. You can experiment with different initial values to improve convergence.
When the end-effector position is unreachable due to workspace constraints, ikcon() might return invalid joint angles. Verify that the desired end-effector pose (T1) lies within the robot’s reachable workspace. If not, consider adjusting the target position.
I hope this helps.

カテゴリ

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

製品


リリース

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by