본문 바로가기
시스템

[Robot Expert Academy 03] 자유도와 로봇 기구학 — Joint의 움직임이 TCP가 되는 원리

by 프레스러쉬 2026. 10. 1.

[Robot Expert Academy 03] 자유도와 로봇 기구학 — Joint의 움직임이 TCP가 되는 원리

PreciseFlex · Guidance · Motion Control · GPL

이번 편의 목표
“4축 로봇”이라는 말을 단순히 모터가 네 개 있다는 의미로 이해하지 않고, 각 Joint의 독립 운동이 어떻게 Tool Center Point(TCP)의 위치와 방향을 만드는지 이해합니다. PF400의 축 구조를 바탕으로 Kinematic Chain, Forward/Inverse Kinematics, Workspace, Singularity, Calibration과 실제 오차 진단까지 연결합니다.

1. Degree of Freedom(DOF)은 왜 중요한가?

Degree of Freedom(DOF)은 시스템의 상태를 독립적으로 결정하기 위해 필요한 운동 변수의 수입니다. 직선축이라면 이동거리, 회전축이라면 회전각이 하나의 독립 변수입니다. 일반적인 3차원 rigid body는 X/Y/Z translation과 Roll/Pitch/Yaw rotation을 합쳐 6개의 자유도를 가질 수 있지만, 모든 자동화 공정에 6축이 필요한 것은 아닙니다.

Wafer·Tray handling처럼 대상의 자세가 거의 수평으로 유지되고 핵심 요구가 평면 위치, 높이, 수직축 회전이라면 4축 구조는 구조가 단순하고 제어하기 쉬우며 생산설비에 매우 실용적입니다. 따라서 DOF는 “축의 개수”인 동시에 로봇이 공정에서 어떤 움직임을 독립적으로 만들 수 있는가를 설명하는 언어입니다.

Expert Point
“4-axis robot”과 “공간의 네 좌표를 아무 조합으로나 독립적으로 만들 수 있다”는 뜻은 동일하지 않습니다. 실제 가능한 Motion은 Mechanism, Joint Range, Kinematic Constraint에 의해 결정됩니다.

2. PreciseFlex PF400의 4축을 읽는 방법

제공된 PreciseFlex 매뉴얼에서 PF400은 4-axis robot으로 설명됩니다. 주요 범위는 J1 Z travel 400/750 mm, J2 ±90°, J3 ±167°, J4 ±970°이며 구성 옵션에 따라 실제 허용범위를 확인해야 합니다.

구조적으로 보면 J1은 Vertical Translation을, J2와 J3는 평면상의 위치 형성을, J4는 Wrist/Tool Rotation을 담당한다고 이해할 수 있습니다. 즉 PF400은 Vertical Translation + Planar Articulated Motion + Tool Rotation의 조합입니다.

Conceptual Mapping: J1 → Z Position | J2 + J3 → Planar X/Y Position | J4 → Tool Rotation

3. Kinematic Chain — Base에서 TCP까지 움직임이 전달되는 길

로봇은 Base → Joint → Link → Joint → Link → Tool로 연결된 Kinematic Chain입니다. 앞쪽 Joint가 움직이면 그 뒤의 모든 Link와 Tool의 위치가 함께 변합니다. 이 단순한 사실이 로봇의 위치 오차를 이해하는 핵심입니다.

예를 들어 Shoulder 쪽에서 아주 작은 angular error가 발생하더라도 TCP까지의 거리가 길면 끝단에서는 더 큰 위치오차가 될 수 있습니다. 작은 각도 범위에서는 개념적으로 Δx ≈ L·Δθ로 생각할 수 있습니다. 여기서 L은 회전 중심에서 관측점까지의 거리이고 Δθ는 radian입니다.

따라서 Encoder resolution이 충분히 작다고 해서 Cartesian accuracy가 자동으로 같은 수준이 되는 것은 아닙니다. Link geometry, Joint zero, transmission, calibration, Tool offset이 함께 영향을 줍니다.

4. Forward Kinematics — Joint 값으로 TCP를 계산한다

Forward Kinematics는 현재 Joint Position을 알고 있을 때 Tool/TCP의 Pose를 계산하는 문제입니다. PF400의 J2/J3 평면 운동을 단순한 2-link model로 생각하면 일반 로봇공학에서는 다음과 같이 이해할 수 있습니다.

X = L1·cos(θ1) + L2·cos(θ1+θ2)
Y = L1·sin(θ1) + L2·sin(θ1+θ2)

이 식은 PreciseFlex firmware 내부 계산식을 의미하지 않고 Engineering Foundation으로 제시한 모델입니다. 중요한 사실은 Cartesian X/Y가 어느 Joint 하나에 일대일로 대응하지 않는다는 것입니다. J2와 J3가 서로 연동되어 하나의 TCP 위치를 만듭니다.

5. Inverse Kinematics — 원하는 TCP에서 Joint를 찾는다

Inverse Kinematics는 반대 방향의 문제입니다. 작업자가 “이 X/Y/Z와 Tool 방향으로 가라”고 명령하면 Controller는 그 Target을 만들 Joint 상태를 결정해야 합니다.

이 과정에는 중요한 제약이 있습니다. Target이 Workspace 밖이면 해가 없을 수 있고, 동일한 Cartesian Position에 둘 이상의 Joint configuration이 존재할 수 있으며, 수학적으로 가능한 해라도 Joint Limit에 너무 가까우면 실제 생산운전에서는 좋지 않을 수 있습니다.

따라서 Cartesian target이 정상 숫자라는 이유만으로 안전한 Target이라고 판단하면 안 됩니다. Joint Position + Joint Limit Margin + Approach/Retreat Path를 함께 봐야 합니다.

6. Workspace — Reachable보다 Comfortably Reachable

Workspace는 TCP가 도달할 수 있는 위치들의 집합입니다. PF400에서는 J2/J3의 Link geometry와 회전범위, J1 stroke, J4 range가 결합되어 실제 작업영역을 만듭니다. Linear Rail 옵션이 있다면 전체 work envelope는 더욱 확장됩니다.

Workcell layout에서 Station을 단순히 최대 Reach 안에 넣는 것만으로는 충분하지 않습니다. 작업점이 Joint Limit 근처에 몰리면 Approach/Retreat 여유, Cycle Time, Cable/Tool interference, Calibration sensitivity 측면에서 불리할 수 있습니다.

Design Rule
Station Layout은 Reachable이 아니라 Comfortably Reachable을 목표로 설계합니다. 생산점 주변에 Motion Margin과 보정 여유를 남깁니다.

7. Singularity — 단순한 Joint Limit과 다르다

일반 로봇공학에서 Singularity는 특정 자세에서 Cartesian 방향의 운동을 만들기 위한 Joint motion이 매우 민감해지거나 일부 방향의 제어 능력이 약해지는 기하학적 상태를 의미합니다. Joint Limit는 축 자체의 허용범위이고, Singularity는 Kinematic Geometry의 특이 상태이므로 둘은 구분해야 합니다.

제공된 PreciseFlex 매뉴얼은 일반 로봇공학 교과서처럼 Singularity 수학을 상세하게 전개하지 않으므로 이 설명은 Engineering Foundation입니다. 실제 장비에서는 특정 자세 근처에서 Joint velocity가 급격히 달라지거나 configuration이 불안정해지는지를 관찰하는 것이 유용합니다.

8. Calibration은 왜 Kinematics의 일부인가?

Controller가 사용하는 수학적 Robot Model과 실제 기구가 완전히 동일하다는 보장은 없습니다. 제작공차, Belt/Pulley 조립, Encoder zero, Service 이후 조립 상태, Tool 장착 상태가 모두 실제 TCP에 영향을 줍니다.

따라서 Calibration은 단순히 Home을 찾는 작업이 아니라 Controller의 Kinematic Model과 실제 Robot Geometry 사이의 관계를 맞추는 과정으로 이해해야 합니다. 특정 한 Point만 틀렸다고 무조건 그 Point에 Offset을 넣으면 다른 Workspace에서 오차가 더 커질 수 있습니다.

9. Figure 3-1 — Degrees of Freedom and Robot Kinematics

[Figure 3-1 삽입 위치]
Figure 3-1. Degrees of Freedom and Kinematic Structure of a PreciseFlex Robot
Conceptual relationship among J1 vertical motion, J2/J3 planar motion, J4 tool rotation, Forward/Inverse Kinematics, Work Envelope and Singularity.

※ 이번 편 전용 인포그래픽을 메일에 첨부했습니다. 책으로 편집할 때 본 위치에 배치하는 구성을 권장합니다.

10. Robot Expert의 고장 분리법 — 세 가지 값을 함께 본다

Positioning 문제를 진단할 때는 Joint Position → Calculated Cartesian Pose → Externally Measured TCP를 함께 비교합니다.

Joint Position부터 비정상이라면 Encoder, Homing, Transmission을 우선 확인합니다. Joint 값은 정상인데 계산 위치와 실제 TCP가 다르면 Kinematic Calibration, Tool Offset, Mechanical Geometry를 검토합니다. Robot/TCP는 정상인데 공정 대상과만 어긋난다면 Fixture, RefFrame 또는 Vision Transformation 쪽으로 진단 범위를 옮깁니다.

이 계층적 접근은 무작정 Servo Gain이나 Teaching Point를 변경하는 시행착오를 크게 줄여 줍니다.

11. 현장 실습 — Joint Motion을 Cartesian Motion으로 읽기

안전한 저속에서 한 축씩 소량 Jog하고 Joint Position과 Cartesian Position을 동시에 기록합니다. J1 Jog에서는 Z 변화, J2/J3에서는 X/Y trajectory, J4에서는 Tool Rotation을 관찰합니다. 이후 Near / Center / Far 위치에서 같은 시험을 반복합니다.

데이터를 그래프로 만들 경우 표기는 Joint Angle, X Position, Y Position, Z Position, Tool Rotation, TCP Error처럼 English로 통일합니다. 이 실습의 목표는 수식을 외우는 것이 아니라 Joint 변화가 TCP에 어떻게 전달되는지 예측하는 감각을 만드는 것입니다.

12. Quality Evaluation → Correction → Re-evaluation

Quality Evaluation: Near / Center / Far Workspace에서 동일한 Motion Condition으로 Joint Position, Cartesian Position, Measured TCP를 기록합니다. 반복 측정을 통해 위치에 따른 Error Pattern도 확인합니다.

Correction: Frame/Tool 설정과 Calibration 상태를 먼저 확인하고 필요하면 Mechanical Transmission과 Encoder를 점검합니다. 개별 Teaching Point 보정은 원인이 Point 자체에 있을 때 사용합니다.

Re-evaluation: 수정에 사용하지 않은 Verification Point에서 다시 측정하여 특정 위치에만 맞춘 보정이 아닌지 확인합니다.

Stabilization: Homing과 Power Cycle 이후에도 같은 Kinematic 관계와 위치 결과가 재현되는지 확인하고 반복운전 후 Drift를 평가합니다.

이번 편의 핵심
Kinematics를 이해한다는 것은 수식을 외우는 것이 아니라 Joint의 변화가 TCP에 어떻게 전달되는지 예측하고, 위치오차가 어느 계층에서 만들어졌는지 역으로 추적할 수 있다는 뜻입니다.

13. 다음 편 예고

4편 — Position, Orientation and Pose Representation
같은 XYZ 위치에 있어도 Tool 방향이 다르면 전혀 다른 작업 상태가 됩니다. 다음 편에서는 Position과 Orientation을 하나의 Pose로 읽는 방법, J4와 TCP, Rotation 표현, Vision에서 Pose가 중요한 이유를 다룹니다.

Manual Basis

제품 고유 축 구성과 Motion Range는 제공된 Brooks Automation PreciseFlex 300/400/3400 Robots, P/N PF40-DI-00010 Rev 5.6.0을 기준으로 정리했습니다. Forward/Inverse Kinematics의 일반 수학, 작은 각도 오차 및 Singularity 설명은 Engineering Foundation이며 PreciseFlex firmware 내부 구현을 의미하지 않습니다.

Tags

#RobotExpertAcademy #PreciseFlex #RobotKinematics #DegreesOfFreedom #DOF #ForwardKinematics #InverseKinematics #KinematicChain #Workspace #Singularity #TCP #RobotCalibration #MotionControl #SCARA #IndustrialRobot #Automation #RobotEngineering