rotation matrix with Euler angles(peter corke 'robotics tool box')
2 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
SUNGWOON YOON
il 26 Mar 2020
Commentato: Ameer Hamza
il 30 Mar 2020
I have some question about different answer from me to professor (I'm student and i just follow professor's source)
My answer is
eul2r(10, 0, 30)
ans=-0.6669 -0.7451 0
0.7451 -0.6669 0
0 0 1.
My professor is
eul2r(10, 0, 30)
ans=0 -0.3420 0.9397
0 0.9397 0.3420
-1 0 0
what's wrong of me... pleae let me know
4 Commenti
Risposta accettata
Ameer Hamza
il 27 Mar 2020
Modificato: Ameer Hamza
il 27 Mar 2020
You code is correct. You can also verify your own answer using MATLAB's builtin function. Note that these functions take input in radians.
x1 = eul2r(10, 20, 30);
x2 = eul2rotm([10,20,30], 'ZYZ');
Result:
>> x1
x1 =
-0.5903 -0.2544 -0.7660
0.7948 -0.3488 -0.4967
-0.1408 -0.9020 0.4081
>> x2
x2 =
-0.5903 -0.2544 -0.7660
0.7948 -0.3488 -0.4967
-0.1408 -0.9020 0.4081
You professor is getting that answer, either because he is using an older version of the toolbox which takes input in degrees or he has modified the function definition itself by commenting out the following condition
% optionally convert from degrees
% if opt.deg % <---- maybe the professor commented this condition
d2r = pi/180.0;
phi = phi * d2r;
theta = theta * d2r;
psi = psi * d2r;
% end
You will get his answer if you convert the input from degress to radians
eul2r(deg2rad(10), deg2rad(20), deg2rad(30))
ans =
0.7146 -0.6131 0.3368
0.6337 0.7713 0.0594
-0.2962 0.1710 0.9397
2 Commenti
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Robotics System Toolbox 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!


