모션 소프트웨어경로계획 소프트웨어 개발로봇 공간 및 운동 해석
출제기준 좌표3·1·1·1
3과목 · 모션 소프트웨어

좌표계

경로계획 소프트웨어 개발로봇 공간 및 운동 해석
# 모션소프트웨어
01

📌 개요

  • 로봇 소프트웨어의 첫 질문 = "로봇(또는 물체)이 어디에 있고, 어느 방향을 향하고 있는가"
  • 이 질문에 숫자로 답하기 위한 기준 체계 = 좌표계(Coordinate System)
    • 이후 배우는 변환행렬·기구학·경로계획·SLAM이 모두 좌표계 위에서 정의됨
  • 출제 포인트: 좌표계의 종류(직교·원통·구면)와 상호 변환 공식, 로봇에서 쓰는 기준 좌표계(월드·베이스·툴), 포즈와 자유도 개념
02

📖 핵심 개념

좌표계란 무엇인가

  • 좌표계(Coordinate System) = 공간상의 점의 위치를 숫자의 조합(좌표)으로 나타내기 위한 기준 체계

  • 하나의 좌표계 = 두 가지로 구성:

  • 원점(Origin): 측정의 기준이 되는 점 (좌표 0의 위치)

  • 기준 축(Axis): 방향과 거리를 재는 잣대 (보통 서로 직교하는 x, y, z축)

  • 핵심: 같은 점이라도 어느 좌표계에서 보느냐에 따라 좌표값이 달라진다

    • 예) 테이블 위의 컵 = "방 입구 기준 (3, 2, 0.8) m" = "로봇 카메라 기준 (0.1, 0, 0.5) m" — 둘 다 맞지만 기준이 다름
  • 로봇 소프트웨어에서는 항상 "어느 좌표계 기준인가"를 명시해야 함 → 좌표계 혼동이 로봇 SW 버그의 단골 원인

위치, 자세, 포즈 그리고 자유도

물체의 상태를 완전히 기술하려면 두 가지 정보가 필요하다.

  • 위치(Position): 물체(의 기준점)가 공간 어디에 있는가 → 3차원에서 (x, y, z) 3개의 값

  • 자세(Orientation): 물체가 어느 방향을 향해 얼마나 기울어져 있는가 → 3개의 값 (예: roll, pitch, yaw)

  • 이 둘을 합친 것 = 포즈(Pose) = 위치 + 자세

  • 3차원 공간의 강체(Rigid Body, 변형되지 않는 물체) = 총 6자유도(6 DOF, Degree of Freedom)

자유도(DOF)란?

독립적으로 움직일 수 있는 방향의 개수. 3차원 강체는 이동 3개(x, y, z) + 회전 3개(roll, pitch, yaw) = 6. 평면 위를 달리는 이동로봇은 이동 2개(x, y) + 회전 1개(θ, 헤딩각) = 3자유도로 표현한다.

좌표계의 종류

종류 좌표 3요소 특징 · 용도
직교좌표계(Cartesian) (x, y, z) 서로 직교하는 3축의 거리. 가장 일반적, 직관적
원통좌표계(Cylindrical) (r, \theta, z) 반경 + 방위각 + 높이. 회전축 중심의 작업(원통형 로봇, 선반 작업)
구면좌표계(Spherical) (\rho, \theta, \phi) 거리 + 각도 2개. 회전하며 거리를 재는 센서(LiDAR, 레이더)
  • 어떤 좌표계를 쓰든 표현하는 공간은 같음 → 아래 📊 절의 공식으로 서로 변환 가능
  • 문제 상황에 따라 계산이 편한 좌표계를 고르는 것

오른손 좌표계와 양의 회전 방향

로봇공학에서는 관례적으로 오른손 좌표계(Right-handed Coordinate System) 를 사용한다.

  • 오른손의 엄지 = x축, 검지 = y축, 중지 = z축 방향으로 폈을 때의 배치

  • 벡터 외적으로 표현하면 \hat{x} \times \hat{y} = \hat{z}

  • 양(+)의 회전 방향: 회전축의 양의 방향에서 원점을 내려다볼 때 반시계 방향 (오른손 엄지를 축 방향으로 하고 나머지 손가락이 감기는 방향)

  • 왼손 좌표계와 오른손 좌표계 = 아무리 회전시켜도 서로 겹칠 수 없음 (거울 대칭 관계)

  • 그래서 소프트웨어 간 좌표계 관례가 다르면(예: 일부 그래픽스 라이브러리는 왼손 좌표계) 부호 오류 발생 → 주의

로봇에서 사용하는 기준 좌표계들

실제 로봇 시스템에는 여러 좌표계가 계층적으로 존재하며, 로봇 SW는 이들 사이의 관계를 관리하는 일이 핵심이다(ROS의 tf가 대표적인 예).

  • 월드/전역 좌표계(World/Global Frame) \{W\}: 작업 공간 전체에 고정된 절대 기준. 지도의 원점
  • 베이스 좌표계(Base Frame) \{B\}: 로봇 몸체(받침대)에 고정된 기준. 로봇이 이동하면 함께 이동
  • 조인트/링크 좌표계(Joint/Link Frame): 머니퓰레이터의 각 관절·링크마다 부착하는 좌표계 (→ DH 표기법)
  • 툴 좌표계(Tool Frame) \{T\}: 말단 도구에 부착. 원점을 TCP(Tool Center Point, 툴 중심점) 라 하며, 용접 토치 끝·그리퍼 중심처럼 실제 작업이 일어나는 기준점이다. 도구를 교체하면 TCP를 다시 설정해야 한다
  • 센서 좌표계(Sensor/Camera Frame) \{C\}: 카메라·LiDAR 등이 측정값을 내놓는 기준

카메라가 본 물체 좌표를 로봇 팔이 쓰려면 "카메라 좌표계 → 베이스 좌표계"로 옮겨야 하는데, 이 좌표계 간 이동을 수행하는 도구가 다음 노트의 변환행렬이다.

자세의 표현: 롤 · 피치 · 요

자세(Orientation)를 표현하는 가장 직관적인 방법은 세 축 기준 회전각이다.

  • 롤(Roll): x축(전진 방향) 기준 회전 — 좌우로 기우뚱

  • 피치(Pitch): y축 기준 회전 — 앞뒤로 끄덕

  • 요(Yaw): z축(수직축) 기준 회전 — 좌우로 도리도리

  • 평면을 달리는 이동로봇의 헤딩(Heading, 진행 방향각) = 요(yaw)각

  • 자세는 이 밖에 회전행렬, 오일러각, 쿼터니언으로도 표현 → 자세한 내용은 변환행렬에서 다룸

03

📊 다이어그램 · 수식

로봇 시스템의 좌표계 계층

DIAGRAM
graph TD
    W["월드 좌표계 {W}
작업공간의 고정 기준 (지도 원점)"] W --> B["베이스 좌표계 {B}
로봇 몸체에 고정"] W --> C["센서·카메라 좌표계 {C}
측정값의 기준"] B --> L["링크 좌표계 {1}, {2}, ... {n}
각 관절·링크마다 부착"] L --> T["툴 좌표계 {T}
원점 = TCP (작업 기준점)"]

좌표계 상호 변환 공식

원통좌표 → 직교좌표 (반경 r, 방위각 \theta, 높이 z):

x = r\cos\theta, \qquad y = r\sin\theta, \qquad z = z

직교좌표 → 원통좌표:

r = \sqrt{x^2 + y^2}, \qquad \theta = \operatorname{atan2}(y, x), \qquad z = z

구면좌표 → 직교좌표 (거리 \rho, 극각 \theta: z축에서 잰 각, 방위각 \phi: x축에서 잰 각):

x = \rho\sin\theta\cos\phi, \qquad y = \rho\sin\theta\sin\phi, \qquad z = \rho\cos\theta
atan2란?

\operatorname{atan2}(y, x)는 점 (x, y)가 어느 사분면에 있는지까지 고려해 -180°{\sim}+180° 범위의 각도를 돌려주는 함수다. 단순 \tan^{-1}(y/x)는 1·3사분면을 구분하지 못하므로, 로봇 SW에서는 항상 atan2를 쓴다.

04

🎯 핵심 요약 · 암기 포인트

익힘 0 / 9카드를 눌러 뒤집고, 앞면에서 아는지 표시하세요.
Q · 1
포즈(Pose)는 무엇으로 구성되는가?
A
위치(Position) 3자유도 + 자세(Orientation) 3자유도 = 총 6자유도
Q · 2
3차원 공간에서 강체(Rigid Body)의 자유도는?
A
6 (이동 x, y, z + 회전 roll, pitch, yaw)
Q · 3
평면에서 이동로봇의 포즈를 표현하는 3요소는?
A
x, y, θ(헤딩각 = yaw)
Q · 4
원통좌표계(Cylindrical)의 3요소는?
A
반경 r, 방위각 θ, 높이 z
Q · 5
오른손 좌표계에서 x축과 y축의 외적(x × y) 방향은?
A
+z축 방향
Q · 6
roll, pitch, yaw는 각각 어느 축 기준 회전인가?
A
roll = x축, pitch = y축, yaw = z축
Q · 7
TCP(Tool Center Point)란?
A
로봇 말단 도구의 작업 기준점(툴 좌표계의 원점)으로, 도구 교체 시 재설정이 필요하다
Q · 8
직교좌표 (x, y)를 원통(극)좌표로 바꾸는 식은?
A
r = √(x²+y²), θ = atan2(y, x)
Q · 9
월드 좌표계와 베이스 좌표계의 차이는?
A
월드는 작업공간 전체의 고정 기준, 베이스는 로봇 몸체에 고정되어 로봇과 함께 움직이는 기준
05

✏️ 예상문제

1. 3차원 공간에서 강체(rigid body)의 위치와 자세를 완전히 기술하기 위해 필요한 최소 변수의 개수는?

① 3개 ② 4개 ③ 6개 ④ 12개

정답 및 해설

정답: ③ 위치 3개(x, y, z) + 자세 3개(roll, pitch, yaw) = 6자유도. 이 여섯 값의 묶음이 포즈(Pose)다.

2. 오른손 좌표계에 대한 설명으로 옳지 않은 것은?

① x축과 y축의 외적(cross product)은 z축 방향이다 ② 로봇공학에서는 일반적으로 오른손 좌표계를 사용한다 ③ 회전축의 양의 방향에서 내려다볼 때 반시계 방향이 양의 회전이다 ④ 왼손 좌표계는 회전변환만으로 오른손 좌표계와 겹칠 수 있다

정답 및 해설

정답: ④ 왼손 좌표계와 오른손 좌표계는 거울 대칭 관계라서 아무리 회전시켜도 서로 겹칠 수 없다(반사 변환이 필요). ①②③은 모두 옳은 설명이다.

3. 원통좌표계로 (r, \theta, z) = (4, 60°, 5)인 점을 직교좌표계로 변환하면?

(2, 2\sqrt{3}, 5)(2\sqrt{3}, 2, 5)(4, 60, 5)(2, 2, 5)

정답 및 해설

정답: ① x = r\cos\theta = 4\cos 60° = 4 \times 0.5 = 2 y = r\sin\theta = 4\sin 60° = 4 \times \frac{\sqrt{3}}{2} = 2\sqrt{3} z = 5 (그대로)

4. 툴 중심점(TCP, Tool Center Point)에 대한 설명으로 옳은 것은?

① 로봇 베이스의 중심에 고정된 점이다 ② 말단 도구의 작업 기준점으로, 도구를 교체하면 재설정이 필요하다 ③ 월드 좌표계의 원점과 항상 일치한다 ④ 조인트 각도와 무관하게 월드 좌표계에서 위치가 고정된다

정답 및 해설

정답: ② TCP는 툴 좌표계의 원점으로 그리퍼 중심, 용접 토치 끝 등 실제 작업점에 설정한다. 도구가 바뀌면 작업점 위치도 바뀌므로 재설정해야 한다. 로봇이 움직이면 TCP의 월드 좌표도 함께 변하므로 ①③④는 틀리다.

5. 평면 위를 주행하는 이동로봇의 헤딩(진행 방향) 각도는 어느 축 기준 회전인가?

① x축 (roll) ② y축 (pitch) ③ z축 (yaw) ④ 기준 축이 없다

정답 및 해설

정답: ③ 이동로봇이 평면에서 좌우로 방향을 트는 것은 수직축(z축) 기준 회전, 즉 요(yaw)다. 이동로봇 포즈 (x, y, \theta)\theta가 바로 yaw각이다.

06

🔗 관련 노트

로봇소프트웨어개발기사 필기 · 학습 교재출제기준 2025.1.1 – 2027.12.31