검색어 입력폼

로보틱스(robotics) - 오일러 각도와 position vector로 homogeneous transform matrix를 구하는 MATLAB 프로그램

저작시기 2010.01 |등록일 2010.01.18 한글파일한글 (hwp) | 4페이지 | 가격 1,500원

소개글

로보틱스(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;
다운로드 맨위로