로보틱스(robotics) - 오일러 각도와 position vector로 homogeneous transform matrix를 구하는 MATLAB 프로그램
- 최초 등록일
- 2010.01.18
- 최종 저작일
- 2010.01
- 4페이지/
한컴오피스
- 가격 1,500원
![할인쿠폰받기](/images/v4/document/ico_det_coupon.gif)
소개글
로보틱스(Robotics)
-오일러 각도 Z-Y-X(α-β-τ)와 position vector를 입력하면,
균질 변환 행렬(homogeneous transform matrix) aTb를 계산하는 프로그램-
목차
없음
본문내용
function Euler_angles3(alpa,beta,gamma,aPb)
%――――――――――――――――――――――――――――――――――――――――
% File name : Euler_angles3.m
% Objective : 오일러 각도 Z-Y-X(α-β-τ)와 position vector aPb를 입력하면,
% 균질변환 행렬 aTb를 계산하는 프로그램
% 함수형태 : function Euler_angles3(alpa,beta,gamma,aPb)
% 입력 인자 : alpa,beta,gamma,aPb (degree, position vector)
% 출력 인자 : aTb (homogeneous transform)
%――――――――――――――――――――――――――――――――――――――――
[m,n] = size(aPb);
if m~=3 && n~=1
disp(`position vector(aPb)가 3 by 1 vector가 아니다.`)
disp(`다시 position vector(aPb)를 3 by 1 vector로 입력해주세요.`)
else
% degree를 radian으로 변환
alpa = alpa*(pi/180);
beta = beta*(pi/180);
gamma = gamma*(pi/180);
% 회전행렬 abR을 구함
Rx = [1 0 0 ; 0 cos(gamma) -sin(gamma) ; 0 sin(gamma) cos(gamma)];
Ry = [cos(beta) 0 sin(beta) ; 0 1 0 ; -sin(beta) 0 cos(beta)];
Rz = [cos(alpa) -sin(alpa) 0 ; sin(alpa) cos(alpa) 0 ; 0 0 1];
abR = Rz*Ry*Rx;
abR2 = abR;
참고 자료
없음