본문으로 건너뛰기

M06.01 · 프레임·오른손 좌표·변환 합성

단위별 목표·권장 선수와 자료 준비 상태를 확인하고, 공개된 본문과 활동을 읽고 준비 상태를 확인할 수 있습니다.

전체 커리큘럼

학습 안내

본문을 읽고 장비 없는 기본 실습·세 확인 문제와 해설로 이해를 확인하세요.

예상 학습 시간: 미정. 이 페이지 방문이나 자료 열람으로 완료·숙달을 자동 부여하지 않습니다.

현재 경로·이전·다음 단위 확인 ↓

학습 목표

  • 프레임의 원점·축·단위와 오른손 규약을 명시하고 좌표 재표현과 물체 운동을 구분한다.
  • 열벡터 규약에서 연결된 변환의 합성과 역을 계산하여 점과 방향 벡터를 변환한다.
  • 센서/도구 오프셋과 변환 순서 오류를 수치 반례로 찾아 모델 검증에 필요한 기록을 제안한다.

아래 설명·실습·문제로 각 학습 목표를 확인하세요.

권장 선수

M02.01~02의 행렬·회전·동차변환, M03의 링크와 센서가 선수다. 기호가 낯설면 M02.02로 돌아간다. 본 단위는 기구학 모델의 프레임 계약과 오류 진단을 보강하며 종이 계산만으로 수행한다. 이미 알고 있다면 직접 열어볼 수 있습니다.

설명 필수

세 목표에 대응하는 검수된 설명·예제를 읽습니다.

좌표는 물체에 붙어 있는 유일한 숫자가 아니다

프레임(frame)은 원점과 방향이 정해진 좌표축의 묶음이다. 같은 점도 어떤 프레임으로 표현하느냐에 따라 좌표가 달라진다. 카메라 앞 물체가 움직이지 않아도 베이스와 카메라에서 적은 숫자는 다를 수 있다. 좌표를 바꿔 표현하는 것과 물체를 실제로 움직이는 것은 다른 연산이다. 같은 행렬이 두 용도로 쓰일 수 있어 계산의 의미를 먼저 문장으로 적는다. 이 단위의 변환은 모두 같은 물리적 점을 다른 프레임에서 표현하는 용도다.

같은 점, 서로 다른 프레임. 프레임은 원점과 축의 묶음이다. 같은 점 P의 좌표를 B에서 A로 바꾸는 것과 점을 실제로 이동시키는 것은 다르다. +z 쪽에서 xy 평면을 본 개념도이며 수치 예제와는 별개다.그림 원본 크기로 보기

그림 M06.01-1. 프레임은 원점과 축의 묶음이다. 같은 점 P의 좌표를 B에서 A로 바꾸는 것과 점을 실제로 이동시키는 것은 다르다. +z 쪽에서 xy 평면을 본 개념도이며 수치 예제와는 별개다. 직접 제작.

ROS의 일반적인 몸체 축은 x 앞·y 왼쪽·z 위이며 오른손 규약을 따른다. x축에서 y축으로 오른손 손가락을 감으면 엄지가 +z를 가리킨다. +z 방향에서 원점을 내려다볼 때 양의 z 회전은 반시계 방향이다. 길이는 m, 계산의 각도는 rad를 기본으로 적는다. 90도는 π/2 rad다. 센서의 광학 프레임은 흔히 z 앞·x 오른쪽·y 아래라는 별도 규약을 사용한다. 둘 다 오른손 좌표이며 ‘z가 앞이니 잘못된 센서’라고 판정하지 않는다. 실제 장치의 문서와 변환이 어떤 규약을 연결하는지 확인한다.

로봇 모델에서는 world·base·관절·센서·도구 프레임을 구분한다. 링크의 원점이 무게중심이나 외형의 중앙이라고 자동 가정하지 않는다. 도구의 끝점도 마지막 관절 원점과 다를 수 있다. 원점과 축을 어느 지점에 놓았는지, 오프셋이 어느 좌표계로 표현됐는지가 모델의 일부다. 기존 3.2의 변환 사슬을 읽을 때 관절 이름뿐 아니라 이 연결 계약을 추적한다.

열벡터와 변환 방향을 고정한다

점 P의 B 좌표를 열벡터 p_B, A 좌표를 p_A라고 쓰자. T_AB는 B의 좌표를 A로 바꾸는 4×4 동차변환이다. R_AB는 3×3 회전행렬이며 각 열은 B의 축을 A로 표현한 값이다. t_AB는 B 원점의 위치를 A로 표현한 3차원 이동 벡터다. 같은 점은 다음 관계를 만족한다.

pA=RABpB+tAB.p_A=R_{AB}p_B+t_{AB}.

동차 좌표에서는 점 뒤에 1을 붙인다. I는 단위행렬이며 아래의 0은 길이 3의 영행이다.

TAB=[RABtAB01],[pA1]=TAB[pB1].T_{AB}=\begin{bmatrix}R_{AB}&t_{AB}\\0&1\end{bmatrix},\qquad \begin{bmatrix}p_A\\1\end{bmatrix}=T_{AB}\begin{bmatrix}p_B\\1\end{bmatrix}.

B와 C도 연결되어 있다면 T_AC=T_AB T_BC다. 오른쪽 C→B를 먼저 적용하고 B→A로 간다. 곱의 가운데 B가 이어지는지 읽는 것이 방향을 확인하는 첫 점검이다. 곱을 반대로 놓아도 4×4끼리라 숫자 계산은 가능하지만 이 프레임 계약을 만족하지 않을 수 있다. 실제 합성에서는 회전뿐 아니라 이동도 앞쪽 프레임으로 바뀐다.

RAC=RABRBC,tAC=RABtBC+tAB.R_{AC}=R_{AB}R_{BC},\qquad t_{AC}=R_{AB}t_{BC}+t_{AB}.

오프셋 t_BC를 그대로 t_AB에 더하면 안 되는 이유가 이 식에 있다. 전자는 B의 축, 후자는 A의 축으로 적힌 값이다. 축을 맞춘 뒤 더한다. 순수 방향 벡터 v에는 원점 이동을 더하지 않고 v_A=R_AB v_B만 적용한다. 점과 방향을 같은 방식으로 처리하면 속도 방향이나 센서 광선에 불필요한 위치 오프셋을 섞게 된다.

회전된 베이스의 센서 오프셋을 계산한다

합성 예제는 평면 운동을 3차원 좌표에 넣는다. A는 world, B는 base, C는 camera다. B는 A에서 z축으로 +90도 돌아 있고 원점은 (1,0,0) m다. C는 B와 축 방향이 같고 B에서 (0.2,0,0) m에 있다. 모든 값은 같은 시각의 합성 자료다. 회전 R_AB는 (x,y,z)를 (−y,x,z)로 바꾼다. C의 점 (0.3,0.1,0) m를 먼저 B로 옮기면 (0.5,0.1,0) m다. 이어 회전하면 (−0.1,0.5,0), A에서의 원점 이동을 더하면 (0.9,0.5,0) m다.

카메라 원점도 A에서 (1,0.2,0) m이므로, 점에 R_AB를 적용한 (−0.1,0.3,0)에 이를 더해 같은 답을 얻는다. 반면 카메라 오프셋 (0.2,0,0)을 world의 x방향으로 그대로 더하면 (1.1,0.3,0) m가 나온다. 두 좌표의 차이는 (0.2,−0.2,0) m다. 이 차이는 센서 잡음이 아니라 오프셋의 표현 프레임을 잘못 읽은 결과다. 같은 시각과 정확한 입력을 가정한 비교이므로 원인을 구체적으로 지적할 수 있다.

역변환은 회전의 전치와 회전된 음의 이동을 사용한다. 전치 R_AB의 의미와 회전행렬의 역 관계는 M02.02에서 연결한다.

RBA=RABT,tBA=−RABTtAB.R_{BA}=R_{AB}^{T},\qquad t_{BA}=-R_{AB}^{T}t_{AB}.

A 점에서 먼저 (1,0,0)을 빼면 (−0.1,0.5,0), 역회전하면 (0.5,0.1,0), 센서 오프셋을 빼면 C의 (0.3,0.1,0)으로 복원된다. 이동의 부호만 바꾸고 회전을 생략하면 복원되지 않는다. 방향 (1,0,0)은 A에서 (0,1,0)이며 원점 이동은 붙이지 않는다.

검증은 원점·각 축 방향·알려진 점의 왕복 변환을 함께 본다. 왕복 복원만으로 실제 보정이 정확하다고 결론 내리지는 않는다. 잘못된 변환과 그 역도 서로 복원될 수 있기 때문이다. 독립적으로 알려진 장착 위치나 기준점, 버전이 고정된 모델과 시간 기록을 대조해야 한다. 기존 모델의 코드가 계산하는 말단과 실제 도구 끝점이 같은 프레임인지도 확인한다. 이 단위에서는 종이 자료를 점검하며 실제 팔을 움직여 확인하지 않는다.

관련 기존 자료 · 보충해서 읽기

  • 기존 상세 본문 · 관련 기존 자료 · 보충 참고

    2.2 좌표계와 4×4 동차 변환

    설명 범위 충족 · 전체 단위 검수와 별개

    기존 자료의 관련 범위이며 신규 목표 전체의 품질 검수는 아직 진행하지 않았습니다.

  • 기존 상세 본문 · 관련 기존 자료 · 보충 참고

    4.2 Isaac Sim/USD, ROS 2, OpenCV 좌표 변환

    설명 범위 충족 · 전체 단위 검수와 별개

    기존 자료의 관련 범위이며 신규 목표 전체의 품질 검수는 아직 진행하지 않았습니다.

  • 기존 요약 레슨 · 관련 기존 자료 · 보충 참고

    좌표계와 동차 변환 읽기

    목표 일부 관련

    핵심 요약 레슨입니다. 자세한 유도·수식·코드는 연결된 상세 본문을 함께 읽으세요.

학습 범위와 한계

기본 설명·예제가 준비되었습니다. 기존 보충 자료의 범위와 구별하세요.

실습 필수

장비 없는 실습을 수행하고 관찰·계산 근거를 해설과 비교합니다.

입력은 본문의 A/B/C 관계와 C 점 (0.3,0.1,0) m다. 센서의 +x 방향 벡터는 (1,0,0)이다. 모든 자료는 같은 시각이며 이동 단위는 m다. 비교용 잘못된 구현은 camera 오프셋을 world에 그대로 더하여 (1.1,0.3,0) m를 보고한다.

  1. 세 프레임의 원점과 축 방향을 그리고, 이 예제의 camera 축이 ROS 광학 프레임의 일반 규약과 같다고 가정해도 되는지 설명한다. 점의 좌표 재표현과 실제 물체 운동을 구별한다.
  2. C→B→A의 단계 계산과 A→B→C의 역복원을 수행한다. 방향 벡터도 A로 옮기고 점과 결과가 다른 이유를 적는다.
  3. 잘못된 구현의 오프셋 방향을 찾아 올바른 값과 차이를 계산한다. 왕복 복원만으로 실제 장착까지 검증됐다는 주장에 필요한 추가 증거를 제안한다.

종이 계산의 입력을 그대로 사용한다. 문서에 없는 실제 카메라 축이나 장착값을 추정하여 넣지 않는다. 막히면 각 벡터 아래에 ‘어느 프레임으로 표현했는가’를 적는다. 회전이 있는 문제에 이동만 더하는 방식은 적용하지 않는다.

0 / 8,000자 · 확인하면 이 브라우저에 저장

답안을 작성하고 확인하기를 한 번 선택하면 해설·판정 기준을 열어볼 수 있습니다.

관련 기존 자료 · 보충해서 읽기

학습 범위와 한계

기본 실습은 장비 없이 수행합니다. 실제 장비·GPU 실증을 완료했다는 뜻은 아닙니다.

평가·해설 필수

목표별 세 서술문항에 답하고 해설·판정 기준으로 자기검토합니다.

확인 문제 Q1

몸체의 x 앞·y 왼쪽·z 위와 광학 프레임의 z 앞·x 오른쪽·y 아래는 서로 모순인가? 같은 점이 두 프레임에서 다른 숫자를 갖는 것이 실제 이동을 뜻하는가?

0 / 8,000자 · 확인하면 이 브라우저에 저장

답안을 작성하고 확인하기를 한 번 선택하면 해설·판정 기준을 열어볼 수 있습니다.

확인 문제 Q2

A에서 B는 z축 +90도 회전하고 원점은 (0,1,0) m다. C는 B와 축이 같고 B에서 (0.1,0,0) m다. C 점 (0.2,0,0) m를 A로 옮기고 역으로 복원하라. C 방향 (1,0,0)의 A 표현도 구하라.

0 / 8,000자 · 확인하면 이 브라우저에 저장

답안을 작성하고 확인하기를 한 번 선택하면 해설·판정 기준을 열어볼 수 있습니다.

확인 문제 Q3

어떤 모델의 변환과 역을 왕복하면 원래 점이 정확히 복원된다. 하지만 센서 장착 오프셋의 기준 프레임은 문서에 없다. 모델이 실제 장비와 일치한다고 할 수 있는가? 필요한 점검 세 가지를 제안하라.

0 / 8,000자 · 확인하면 이 브라우저에 저장

답안을 작성하고 확인하기를 한 번 선택하면 해설·판정 기준을 열어볼 수 있습니다.

관련 기존 자료 · 보충해서 읽기

  • 기존 서술 문항 · 관련 기존 자료 · 보충 참고

    \({}^{W}T_C\)와 \({}^{C}T_O\)가 있을 때 \({}^{W}T_O\)를 쓰고 곱셈 순서를 설명하라.

    목표 일부 관련

    개별 해설/루브릭의 목표별 충분성은 후속 단위 검수. AI 평가·코드 실행 통과를 의미하지 않음.

    개별 모범답안은 미작성입니다. 기존 관련 개념에 근거한 AI 피드백이며 추론한 해설을 구분해야 합니다.

  • 기존 보고서 · 관련 기존 자료 · 보충 참고

    실습 보고서 · 기존 원고와 평가 안내

    목표 일부 관련

    개별 해설/루브릭의 목표별 충분성은 후속 단위 검수. AI 평가·코드 실행 통과를 의미하지 않음.

    개별 모범답안은 미작성입니다. 기존 관련 개념에 근거한 AI 피드백이며 추론한 해설을 구분해야 합니다.

  • 기존 서술 문항 · 관련 기존 자료 · 보충 참고

    `Transform`에 `from_quaternion_translation()` classmethod를 추가하라.

    목표 일부 관련

    개별 해설/루브릭의 목표별 충분성은 후속 단위 검수. AI 평가·코드 실행 통과를 의미하지 않음.

    개별 모범답안은 미작성입니다. 기존 관련 개념에 근거한 AI 피드백이며 추론한 해설을 구분해야 합니다.

  • 기존 서술 문항 · 관련 기존 자료 · 보충 참고

    \({}^{world}T_{camera}\)가 있을 때 월드 점을 카메라로 변환하는 식을 쓰라.

    목표 일부 관련

    개별 해설/루브릭의 목표별 충분성은 후속 단위 검수. AI 평가·코드 실행 통과를 의미하지 않음.

    기존 교재 해설·평가 기준을 참고할 수 있습니다. 답안 평가 후 화면의 비교 항목도 확인하세요.

  • 기존 서술 문항 · 관련 기존 자료 · 보충 참고

    ROS body frame의 단위 벡터 x, y, z를 optical frame으로 각각 변환하라.

    목표 일부 관련

    개별 해설/루브릭의 목표별 충분성은 후속 단위 검수. AI 평가·코드 실행 통과를 의미하지 않음.

    기존 교재 해설·평가 기준을 참고할 수 있습니다. 답안 평가 후 화면의 비교 항목도 확인하세요.

  • 기존 요약 점검 · 관련 기존 자료 · 보충 참고

    world_from_camera가 있을 때 월드 점을 카메라 좌표로 옮기려면?

    목표 일부 관련

    선택 정답만으로 독립 수행을 보장하지 않음

    기존 교재 해설·평가 기준을 참고할 수 있습니다. 답안 평가 후 화면의 비교 항목도 확인하세요.

  • 기존 요약 점검 · 관련 기존 자료 · 보충 참고

    변환 체인을 어느 쪽부터 적용하는지 쓰세요.

    목표 일부 관련

    단답은 키워드 포함 여부이며 의미 이해를 보장하지 않음

    기존 교재 해설·평가 기준을 참고할 수 있습니다. 답안 평가 후 화면의 비교 항목도 확인하세요.

학습 범위와 한계

서술답안과 해설이 준비되었습니다. 자기검토와 학습 완료는 숙달 인증과 별개입니다.

참고 자료

학습 확인

실습과 세 문항의 답안을 해설과 비교한 뒤, 이 단위의 학습 완료를 직접 기록할 수 있습니다. 자기검토·학습 완료는 자동 채점이나 숙달 인증과 별개입니다.

실습1개·확인 문제3개의 답안을 저장하고 각각 자기검토를 기록하세요.

학습 이동

학습 단계 순서 · 공통 과정 이후 전문화 선택

전체 목차로 돌아가기 →

신규 활동의 답안은 이 브라우저의 통합 학습 기록에 저장합니다. 기존 화면의 답안·진도는 원래 키를 유지합니다. AI 강사는 현재 단위의 준비 상태·부족한 범위와 연결된 실제 자료를 참고합니다.