MATLAB Answers

rotation matrix with Euler angles(peter corke 'robotics tool box')

20 views (last 30 days)
SUNGWOON YOON
SUNGWOON YOON on 26 Mar 2020
Commented: Ameer Hamza on 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 Comments

Show 1 older comment
SUNGWOON YOON
SUNGWOON YOON on 26 Mar 2020
sorry about that..
I learn about euler angle to use peter corke robot toolbox.
the code is just R=eul2r(10,0,30)
there was no other codes.
but the answer is different for professors and mine.
I thinks my answer is wrong because I solve it with my hand, but it is wrong.
left is prof's answer and right is mine
Ameer Hamza
Ameer Hamza on 26 Mar 2020
As far as I can see, your code and the professor's code are not same
SUNGWOON YOON
SUNGWOON YOON on 27 Mar 2020
Oh... I think I'm out of my mind...
I capture another page... sorry
here is result with same condition.

Sign in to comment.

Accepted Answer

Ameer Hamza
Ameer Hamza on 27 Mar 2020
Edited: Ameer Hamza on 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

More Answers (0)

Sign in to answer this question.