6 eqn with 6 unknown Cannot find explicit solution
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
I can't get this to work, what am I doing wrong?
clear
clc
%delaring syboluc variables
syms x y z Roll Pitch Yaw
syms o1 o2 o3 o4 o5 o6
%distance between joints
L1 = 0.08917; %m
L2 = 0.1357; %m
L3 = 0.51416-L1; %m
L4 = 0.39225; %m
L5 = L2-0.10916; %m
L6 = 0.51416-0.41951; %m
L7 = 0.47455-L4; %m
%transformation matixes for joints 1-6
T_1 = [cos(o1), -sin(o1), 0, 0;
sin(o1), cos(o1), 0, 0;
0, 0, 1, L1;
0, 0, 0, 1];
T_2 = [cos(o2), -sin(o2), 0, 0;
sin(o2)*cosd(90), cos(o2)*cosd(90), -sind(90), -sind(90)*L2;
sin(o2)*sind(90), cos(o2)*sind(90), cosd(90), cosd(90)*L2;
0, 0, 0, 1];
T_3 = [cos(o3), -sin(o3), 0, -L3;
sin(o3), cos(o3), 0, 0;
0, 0, 1, 0;
0, 0, 0, 1];
T_4 = [cos(o4), -sin(o4), 0, -L4;
sin(o4), cos(o4), 0, 0;
0, 0, 1, -L5;
0, 0, 0, 1];
T_5 = [cos(o5), -sin(o5), 0, 0;
sin(o5)*cosd(90), cos(o5)*cosd(90), -sind(90), -sind(90)*L6;
sin(o5)*sind(90), cos(o5)*sind(90), cosd(90), cosd(90)*L6;
0, 0, 0, 1];
T_6 = [cos(o6), -sin(o6), 0, 0;
sin(o6)*cosd(-90), cos(o6)*cosd(-90), -sind(-90), -sind(-90)*L7;
sin(o6)*sind(-90), cos(o6)*sind(-90), cosd(-90), cosd(-90)*L7;
0, 0, 0, 1];
%matrix for base to wrist
T = T_1*T_2*T_3*T_4*T_5*T_6;
simplify(T);
beta = atan((-T(3,1))/(((T(1,1))^2+(T(2,1))^2)^0.5));
simplify(beta);
eqn1 = beta == Roll*(pi/180);
eqn2 = atan(((T(2,1))/(cos(beta)))/((T(1,1))/(cos(beta)))) == Pitch*(pi/180);
eqn3 = atan(((T(3,2))/(cos(beta)))/((T(3,3))/(cos(beta)))) == Yaw*(pi/180);
eqn4 = T(1,4) == x;
eqn5 = T(2,4) == y;
eqn6 = T(3,4) == z;
sol = solve([eqn1, eqn2, eqn3, eqn4, eqn5, eqn6], [o1, o2, o3, o4, o5, o6]);
o1 = sol.o1
o2 = sol.o2;
o3 = sol.o3;
o4 = sol.o4;
o5 = sol.o5;
o6 = sol.o6;
0 Commenti
Risposte (1)
Mukul Rao
il 24 Apr 2017
Hi,
In some cases involving complex non-linear equations such as the one in this post, solve cannot find an explicit solution even with state of the art algorithms due to inherent limitations of the algorithms.
Your best bet in such a case would be to try some of the troubleshooting steps outlined here:
Given that your equations involve several levels of trigonometric functions that are periodic, I can foresee the solution space to have a lot of wiggles leading to convergence issues.
0 Commenti
Vedere anche
Categorie
Scopri di più su Particle & Nuclear Physics in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!