기본 콘텐츠로 건너뛰기

Homogeneous Transformations Matrix

2.2 계의 표시법

매니퓨레이터가 작업대상물에 대하여 작업을 하기 위해서는 공구단을 대상물로 움직 여야 한다. 따라서, 매니퓨레이터의 각 부분, 혹은 작업대상물의 위치와 자세를 기준좌표 계로 나타내는 것이 필요하다.

2.2.1 위치의 표시

이러한 것들의 위치는 주어진 좌표계를 기준으로 나타낼 수 있다. 여기서는 기준좌표계를 {A}라고 하면, 주어진 점 a의 위치는로 나타내어진다고 가정한다. 즉

이때 는 각각 좌표계 {A} 상의 원점에서 축 방향의 거리를 나타내고 있다. 이러한 위치 벡터 는 매니퓨레이터의 형태 혹은 필요에 의 해서 구좌표 및 원통좌표로도 나타낼 수 있다.

2.2.2 자세의 표시

2.2.2.1 기본회전

대상물의 기준 좌표계에 대한 자세는 대상물에 새로운 좌표계를 설정하여, 이 좌표계의 기 준 좌표계에 대한 회전으로 나타낼 수가 있다. 즉 기준 좌표계에 대한 상대 좌표계의 것을 말한다. 편의상 3축에 의한 자세 변화는 3 X 3 행렬로 나타내며 이러한 행렬을 회전행렬 이라 하며 로써 나타낸다. 정의에 의해서 이러한 회전행렬 R은 행의 크기가 1이며, 서 로 직교인 정규직교행렬이다. 기준 좌표계를 {A}, 상대 좌표계를 {B}라면, 좌표계 {B}의 좌표계 {A}에 대한 자세

로 나타낼 수 있다.

만일 고정된 좌표계 {A}에 대해 움직이는 좌표계 {B}를 고려하면, 다음 그림 2.2.1과 같이 공간상에 표시할 수가 있다.


그림 2.2.1 공간에서의 좌표계 {B}의 좌표계 {A}에 대한 기본회전


이 경우 공간상의 임의의 점는 각 좌표계에서 다음과 같이 나타낼 수 있다.


여기서 행렬 이다.



따라서 고정 좌표계 {A}의 축을 1중심으로 만큼 회전시켰을 경우 이동 좌표계 {B}의 회전 행렬은 다음과 같이 나타낼 수 있다.

여기서 이 ay*bx=az*bx=ax*by=ax*bz=0,ax*bx=1되므로 위식은 다음과 같이 정리할 수 있다.

단, 여기서 을 각각 나타낸다. 같은 방법으로 ay az축에 대한 23의 회전행렬은 각각 식(2.2.3), (2.2.4)와 같다.

이러한 회전 행렬은 이며 이러한 성질을 가진 행렬을 직교행렬이라 하며, 특히 행렬값이 1이므로 직교정규행렬이라 한다. 단 여기서 T는 전치를 나타낸다. 이러한 성질을 실제 역행렬 계산을 전치행렬로 대치 할 수 있으므로 계산시간을 줄일 수 있다.

2.2.2.2 복합회전

직교좌표 공간상에서 자세는 기준좌표계의 축에 대한 연속적인 회전으로 일반화시켜서 생각을 할 수가 있다. 이와 같이 기본회전이 연속적으로 행하여지는 경우를 복합회전이 라 하며, 이 경우의 전체 회전을 나타내는 복합회전행렬은 기본행렬의 곱으로 나타나 질수 있다. 그러나, 이 경우 일반행렬 A,B에 대해서 A<>B 이듯이 각 기본회전행렬의 곱 의 순서에 따라 의미가 달라진다.
a) Euler angle:
많이 쓰이는 복합행렬변환에는 Euler angle이 있다. roll-pitch-roll 형태를 한 손목을 가진 매니퓨레이터의 회전변환은 일반적으로 Euler angle로 나타낸다. 이것을 사용하면 z축을 중심으로 만큼 회전한 후, 새로운 y축을 중심으로 만큼 그리고 마지막으로, 새로운 z축을 중심으로 만큼 회전하는 어떠한 회전운동도 나타낼 수 있다.
PUMA-560은 Euler 형 wrist를 가지는 매니퓨레이터이다.


그림 2.2.3 Euler 각

그림 2.2.4 base 좌표계에서의 Euler 각

b) Roll-Pitch-Yaw 변환
가장 많이 사용이 되는 복합변환의 한 예로 Roll-Pitch-Yaw가 있다. 이것을 설명하기 위해서, 손바닥을 아래로 하여 팔을 앞으로 뻗는다. 우선 팔을 축으로 손을 회전한다. (roll) 그후 손목 관절을 중심으로 아래 위로 회전한다.(pitch) 마지막으로 손목관절을 중심으로 양 옆으로 회전한다.(yaw) 일반적인 roll-pitch-yaw회전변환은 연속적인 x축에 대한 회전, y축 에 대한 회전, 그리고 z축에 대한 회전으로 나타낼 수가 있다. 여기에서의 회전축은 고정축 을 의미하며, 이것은 그 형태가 처음 2각은 Euler angle과 같다. 마지막 회전은 현재의 x축을 중심으로 3만큼 회전한 것이다. 또한 만일 고정축이 아닌 현재의 축에 대해서는 역순 으로 회전을 하면, 같은 결과를 얻을 수 있다. 이러한 형태은 회전형태는 매니퓨레이터의 정상적인 작업공간에서 각의 움직임에 대한 degeneracy가 발생하지 않는 장점이 있다. 회전 변환을 계산하는 데에 중요한 것은 선행곱(premultiplication)을 해야 한다는 것이다. 즉


그림 2.2.5 Cinccinati Milacron T3의 wrist




그림 2.2.7 YPR 회전



 2.2.2.3 임의의 축에 대한 회전

어떤 경우에는 좌표계를 원점을 지나며 성분을 가진 임의의 축에 대하여 {A}, {B}를 공간상의 2개의 직교 좌표축이라 할때, 초기에 2계의 좌표계가 일치한다면, 임의의 축에 대하여, θ만큼 회전하는 경우가 있다. 이러한 것은 각각의 주축에 대하여 여 러번 회전시킬 필요없이 kA축를 중심으로 오른손 법칙에 따라 각 θ만큼 회전시킨 경우 를 R(KA,θ)라면, 이때 이와 등가인 회전식은 다음과 같다.
이러한 자세에 관한 것은 두 좌표계간의 거리를 고려하지 않은 것이다.

여기서 단위 벡터 KA축이 성분 를 가진다면 이때

이것을 위식에 대입하면

여기서 이다.


2.2.3 계의 표시

회전행렬은 공구단의 자세를 나타내는 데에 적합한 표시법이며, 위치행렬은 매니퓨레 이터의 base frame을 기준으로 한 공구단의 위치를 나타낼 수 있다. 그러나 회전행렬은 원 래의 좌표계와 원점이 같으나, 위치행렬은 원점이 달라지는 근본적인 차이가 있으므로 회전 행렬로는 이동 위치를 나타낼 수 없다. 따라서, 이러한 위치와 자세를 동시에 나타낼 수 있 는 새로운 좌표계가 필요하다. 이제 기준좌표계에 대한 대상체의 위치 및 자세를 동시에 나 타내는 변환에 대하여 생각해보기로 하자. 이러한 변위와 자세를 동시에 나타낼수 있는 연산 자를 H라면 로 나타낼수가 있다. 이러한 H행렬을 동차변환 (homogeneous transform)이라 한다. 여기서 연산자 H는 {A} 좌표계에 대한 {B}좌표계의 변환을 나타 낸다. 즉 동차 변환 행렬은 두 좌표계 사이의 관계를 나타낸다.
이 경우 는 위치 및 자세를 동시에 포함하고 있으며, 식이 간단하고, 개념적으로 명확하여 자주 쓰인다. 연산의 편의상 로 정의하는 경우 인 4×4행렬을 생각할 수 있다.
이러한 좌표계의 일반적인 형태와 그 물리적인 의미는 식(2.2.8)에 나타나 있다.



위의 표 2.2.1는 각각의 벡터 및 위치에 대한 개별적인 이름을 나타내고 있다. 위 식에서 처럼 동차 변환 행렬은 4개의 부행렬로 나뉘어진다. 3X3 부행렬은 회전, 3X1 부행렬은 변위를 각각 나타내고 있다. 또한 1X3 부행렬은 투시변환을, 1X1 부행렬은 크기를 각각 의미한다. 투시행렬은 카메라의 촛점거리를 이용하여 물체 역상의 위치 혹은 크기를 결정 하는데, 또한 크기벡터는 변위벡터를 원하는 크기로 조절하는데 사용되어 질 수 있다. 따 라서, 일반적으로 이러한 변환의 목적상 여기서는 H행렬의 마지막 열은 [ 0 0 0 1 ]로 고정시켜서 사용한다. 변위만을 동차행렬로 나타내면 식(2.2.9)과 같이 표시되며

회전만을 나타내면 식 (2.2.10)으로 나타낼 수 있다.

따라서 만큼의 변위 후, y축을 중심으로 만큼 회전 시킨 경우, 로 나타낼 수 있다.
즉,이 된다.
여기서 는 기본동차변위행렬이라 하며, 특히 회전 행렬 R이 단위 행렬 I임이 잘 나타나 있다.

동차 변환 의 역변환 는 4 × 4 행렬의 역변환을 계산하여서 구할수도 있으나 이 경우 시간이 많이 걸리므로 실제로는 아래와 같은 식으로 구한다. 즉,


이러한 변환식은 다음과 관계를 가지고 있으므로 이들 중 미지의 변환행렬은 다음 식을 이용해서 구할 수 있다.

댓글

이 블로그의 인기 게시물

각도 단위 변환

(1) 각도의 기본 단위 각도를 나타내는 단위입니다. 360분법 으로 표시하는 1도는 사방을 360으로 나눈 크기입니다. 1분은 1도를 60등분한 각이고 1초는 1분을 다시 60등분한 크기입니다. 분(arcminute)과 초(arcsecond)는 시간을 나타내는 단위인 분(minute), 초(second)와 기호가 같은데, 천문학(영어)에서는 둘을 구분하기 위해 각도는 나타내는 단위에는 ' arc- '를 붙여 표기합니다. 각도를 나타내는 다른 방법으로 호도법 이 있습니다. 호도법은 반지름에 대한 호의 길이 단위로 각도를 표시하는 방법으로 사방은 원주율(π)의 2배 크기가 됩니다(360° = 2π rad). 호도법으로 나타낸 각도는 라디안(radian)으로 표시하며, 360분법으로 나타낸 각도를 호도법으로 나타낸 각도로 바꾸어 주려면 360분법으로 나타낸 각도에 π/180을 곱해주면 됩니다. 컴퓨터 프로그램 언어에서 삼각함수를 계산할 때에는 주로 호도법은 쓰고 있습니다. 1도(˚ , degree) : 1˚ = 60′ = 3600″ = π/180 rad 1분(′, arcminute) : 1′ = 60″ = 1/60° 1초(″, arcsecond) : 1″ = 1/60′ = 1/3600° 1라디안(rad, radian) : 1 rad = 180/π° (π = 원주율 = 3.1415926535897932384626433832795) (2) 시간의 기본 단위 시간의 기본단위는 초(second)입니다. 1초는 국제 표준으로 정밀하게 정의되어 있는데, 세슘 원자(세슘-133)가 9,192,631,770번 진동하는 동안의 시간으로 정의되어 있습니다. 본래 1초는 1 평균 태양일의 1/86400로 정의되어 있었지만 지구의 자전 주기는 다소 불규칙하고 느리게 바뀌고 있으므로 균일한 시간을 정의하기에는 부족합니다. 이후 1초는 지구의 공전 주기를 바탕으로 다시 정의 되었다가 지금은 세슘 원자의 특성을 기반으로 새롭게 정의하여 ...

Cramer rule - 크래머 공식

  크래머 공식 (Cramer's rule)은 선형연립방정식의 해를 행렬식 으로 표현하는 선형대수학 의 정리(theorem)이다. 이름은 가브리엘 크래머 (Gabriel Cramer) (1704 - 1752)에게서 유래한다.     방정식이 많은 경우의 실제 해의 계산에 있어서는 그리 유용하지 않지만, 피봇팅(pivoting)이 필요하지 않은 경우 작은 크기의 행렬에서는 가우스 소거법보다 훨씬 효율적이다. 크래머 공식은 연립방정식의 해를 외재적으로 표현하기 때문에 이론의 전개에 유용하다.   연립방정식이 다음과 같은 행렬 간의 곱으로 표현될 때. A x = c   식에서 정사각행렬 (square matrix) A 는 역행렬을 갖고, 벡터 x 는 ( x i ) 를, 벡터 c 는 ( c i ) 를 성분으로 갖는 열벡터이다.   정리는 다음과 같다. 식에서 A i 는 A 의 i 번째 열을 열벡터 c 로 대체한 행렬을 말한다.     예 [ 편집 ] 2x2 행렬에서 공식을 적용해 보면, 주어진 연립방정식이 다음과 같을 때, a x + b y = e c x + d y = f , 이 식은 로 쓸 수 있으며, 공식을 적용하면, 이 된다.         미분기하학에 적용 [ 편집 ]   크래머 공식은 미분기하 문제를 풀 때 매우 유용하다. 두 개의 방정식 , 이라 가정한다. 여기서, u 와 v 는 독립 변수이고, , 라 정의한다.   여기서 의 방정식을 찾는 것은 크래머 공식으로 해결할 수 있다.   첫째 , F,G,x,y 의 미분을 계산한다. dF, dG 에 dx 와 dy 를 대입하면   u 와...

CTE(Coefficient of Thermal Expansion: 열팽창 계수)

열변형량 계산표.xlsx         측정기기에 대해서 1. 사용 환경은 20℃으로 설정하지 않으면 안되나요?   그런 일은 없겠지만, 물건은 온도가 높아지면 팽창하고, 낮아지면 줄어듭니다. 거기서 공업적 길이를 나타내는 경우에 표준 온도 20℃으로 결정해 그 온도에 있어서의 결과를 나타내게 되어 있습니다. 그것은 ISO 1에 의해, 「길이 측정의 표준 온도는 20℃으로 한다」라고 규정되고 있습니다. 단, 이 규격에는 20℃에 대한 허용치는 나타나지 않습니다만, 별도인 규격으로 예를 들면 JIS Z 8703에서는 광공업에 있어서의 시험(측정이나 측정기의 교정도 포함된다)을 실시하는 장소의 온도에 관한 표준 상태의 허용차이가 규정되고 있습니다.   표준 온도의 허용차이 급별 허용차이 ℃ 온도 0. 5급 ± 0.5 온도 1급 ± 1 온도 2급 ± 2 온도 5급 ± 5 온도 15급 ± 15   즉, 항상 20℃에 정확히 맞추는 것은 매우 곤란해서, 어느 허용차이의 온도 환경이 필요하게 될까는 어느 정도의 정확한 측정이나 시험을 실시하느냐에 달려있다고 봅니다. 고정밀도의 측정을 실시하려면 , 허용차이의 작은 온도 환경이 요구됩니다.   2. 선열팽창 계수를 가르쳐 주세요?   물건은 온도가 높아지면 팽창하고 낮아지면 줄어듭니다. 온도 변화에 의한 물체의 길이의 증감을 수치화한 것이 선열팽창 계수입니다. 아래와 같이에 당사제품의 선열팽창 계수를 몇개인가 올려 보고 싶다고 생각합니다. 제품명 정밀도에 영향을 주는 주요 부분의 재질 선열팽창 계수 게이지 블록(스틸) 강 10.8 X 10 -6 K -1 게이지 블록(세라믹) ...