AEGLOSLAB 로봇공학 전서(全書)

제2부 기구학

2.2 매니퓰레이터 형상: 직교·원통·구면·SCARA·다관절·병렬 — 작업공간과 선택

2.2.1 이 장에서 배우는 것 / 선수 지식 / 특히 중요한 독자

이 장은 매니퓰레이터의 형상을 처음 세 관절(팔)의 종류로 분류하고, 형상마다 손목 중심이 도달하는 영역(작업공간)의 모양·부피·한계를 계산한다. 같은 최대 도달 거리를 주었을 때 직교·원통·구면·SCARA·다관절 팔의 작업공간 부피가 얼마나 다른지, 공구 길이가 모든 자세를 낼 수 있는 영역을 얼마나 줄이는지를 해석식과 표집으로 확인한다. 병렬 기구는 분류에서 위치를 밝히고 자세한 해석은 2.13·2.14으로 넘긴다.

배우는 것:

  • 형상의 분류 — 직교(PPP)·원통(RPP)·구면(RRP)·SCARA(RRP)·다관절(RRR)·병렬, 팔과 손목, 손목 중심.
  • 순기구학과 해석적 역기구학 — 다섯 형상의 손목 중심 위치식과 모든 역기구학 해.
  • 작업공간 — 도달 가능 작업공간과 자세 임의 작업공간의 정의, 각 형상의 부피 해석식, 관절 한계의 영향.
  • 선택의 근거 — 작업공간 점유율·구동 구조·순응 특성에서 읽는 형상별 장단점과 그 한계.

선수 지식: 2.1(자유도·관절의 종류), 1.6(동차변환). 표기는 BK-05와 A.2을 따른다.

특히 중요한 독자: 응용에 알맞은 팔 형상을 고르는 시스템 설계자, 작업공간 계산·도달성 점검을 구현하는 소프트웨어 개발자, 로봇 사양서의 "작업 범위"를 읽는 구매·기획 담당자.

출처 방침. 기준 시점은 2026-11-03이다. 직접 읽은 자료: ① Lynch·Park, Modern Robotics(Cambridge University Press, 2017; 사전 인쇄본 2017-05-03판)의 예 2.9(SCARA 로봇은 RRRP 개방 사슬이고 과업 공간이 $\mathbb R^3\times S^1$이라는 서술)와 6.1절(PUMA형 6R 팔을 위치·자세의 역기구학으로 분리하는 서술, 스탠퍼드 팔), ② 이 저장소의 앞 장에서 정리한 ISO/FDIS 8373:2021의 정의(0.3), 원통 좌표형 Versatran의 역사(0.4), 직교 좌표 로봇의 구동계와 SCARA의 선택적 순응에 관한 특허·문헌 서술(0.5). 수치는 모두 이 장의 순수 파이썬 계산이며 Modern Robotics 1.1.1·Pinocchio 4.1.0 대조는 2.2.5에 있다. 읽지 못한 것: 교과서(Craig·Spong 등)와 ISO 8373:2021의 다관절 로봇 조항 본문 — 조항 번호와 "자세 임의 작업공간"의 원 출처는 (확인 필요).

2.2.2 개념 — 팔·손목·형상 분류

매니퓰레이터는 베이스에서 엔드이펙터 직전까지 링크와 관절을 이은 기구이다. ISO 8373:2021의 용어를 0.3이 정리한 바에 따르면 팔(arm)은 베이스와 손목 사이의 링크·관절 집합이고, 손목(wrist)은 팔과 엔드이펙터 사이에서 엔드이펙터의 위치·자세를 정하는 집합이다. 같은 규격은 직교 로봇(4.14.1)·원통 로봇(4.14.2)·극 로봇 또는 구면 로봇(4.14.3)·SCARA 로봇(4.14.6)·병렬 로봇(4.14.7)을 구분한다. 다관절 로봇의 조항은 이 장이 확인하지 않았다 (확인 필요).

산업 로봇의 형상은 역사적으로 직교 좌표형과 원통 좌표형에서 출발했다. 0.4가 정리한 Versatran은 원통 좌표형이었고, 0.5가 정리한 1970년대 특허는 직교 좌표 구성이 단순하지만 직선 구동계가 복잡하고 비싸며 부피가 크고 작업 범위가 직육면체로 제한되는 반면 회전축을 늘리면 구동 기구가 단순해지고 설치 면적이 줄어든다고 서술한다(2차 서술). 1978~1981년의 SCARA는 수직축 회전 둘로 수평 방향 순응을 얻도록 설계되었다(0.5.7).

결론부터 적으면 다음과 같다. 직렬 팔의 형상은 처음 세 관절의 종류와 배열로 정해지며, 형상이 같은 최대 도달 거리 안에서 확보하는 작업공간의 부피를 결정한다. 이 장의 계산에서 다관절 팔의 작업공간은 반경 1 m 구의 약 95 %(관절 한계를 둔 설계)인 데 반해 직교 팔은 약 5 %이다. 다만 이 비교는 작업공간의 부피만 본 것이며, 강성·정밀도·속도·가격은 별도의 기준이다.

2.2.3 원리

2.2.3.1 팔 형상 분류와 순기구학

팔은 손목 중심(wrist center)의 위치를 정하는 세 관절로 이루어진다. 아래 식은 이 장이 사용하는 손목 중심의 위치이며 $l$은 링크 길이, $h_0$는 어깨 높이이다. 구면 팔의 $\varphi$는 수평면에서 잰 고각이다.

유형관절열관절 변수손목 중심의 위치 $p$
직교PPP$(x,y,z)$$(x,\,y,\,z)$
원통RPP$(\theta,r,z)$$(r\cos\theta,\ r\sin\theta,\ z)$
구면(극)RRP$(\theta,\varphi,\rho)$$(\rho\cos\varphi\cos\theta,\ \rho\cos\varphi\sin\theta,\ h_0+\rho\sin\varphi)$
SCARARRP$(\theta_1,\theta_2,z)$$(l_1\cos\theta_1+l_2\cos(\theta_1+\theta_2),\ l_1\sin\theta_1+l_2\sin(\theta_1+\theta_2),\ z)$
다관절RRR$(\theta_1,\theta_2,\theta_3)$$(\varrho\cos\theta_1,\ \varrho\sin\theta_1,\ h_0+\zeta)$, $\varrho=l_2\cos\theta_2+l_3\cos(\theta_2+\theta_3)$, $\zeta=l_2\sin\theta_2+l_3\sin(\theta_2+\theta_3)$

SCARA는 손목에 수직축 회전 한 개를 더해 RRRP(Modern Robotics의 예 2.9)로 구성되기도 하며, 과업 공간은 $(x,y,z,\phi)$의 $\mathbb R^3\times S^1$이다. Modern Robotics는 이 로봇의 작업공간을 $(x,y,z)$의 도달 가능한 점으로 정의한다. 모든 도달 가능한 점에서 모든 방위 $\phi\in S^1$을 낼 수 있기 때문이다.

x z y 직교 (PPP) 원통 (RPP) 구면 (RRP) SCARA (RRP) 다관절 (RRR) 병렬 (폐루프) 회전 관절 R 직동 관절 P
팔 형상 6종의 개략도. 파란 호는 회전 관절, 주황 화살표는 직동 관절이며, 병렬 기구는 지반과 말단 사이에 닫힌 고리를 가진다.

병렬 기구는 지반과 말단 사이에 닫힌 고리가 있는 형상이다(2.1). 자유도 6의 스튜어트-고프 플랫폼이나 3자유도의 델타 로봇이 대표적이고, 작업공간이 베이스 점유 면적에 비해 좁은 경향이 있다. 병렬 기구의 순기구학·역기구학은 2.13, 특이점과 작업공간은 2.14에서 다룬다.

위 다섯 형상의 역기구학은 모두 해석적으로 풀린다. 직교·원통은 해가 하나이고, 구면은 $\rho=\lVert p-(0,0,h_0)\rVert$, $\varphi=\arcsin((p_z-h_0)/\rho)$, $\theta=\operatorname{atan2}(p_y,p_x)$이다. SCARA와 다관절 팔의 평면 부분은 2R의 역기구학이다. 두 링크 $l_1,l_2$와 목표 $(r,z)$에 대해 $\cos b=(r^2+z^2-l_1^2-l_2^2)/(2l_1l_2)$이고 팔꿈치는 $b=\pm\arccos(\cdot)$의 두 해, $a=\operatorname{atan2}(z,r)-\operatorname{atan2}(l_2\sin b,\ l_1+l_2\cos b)$이다. 다관절 팔은 여기에 $\theta_1=\operatorname{atan2}(p_y,p_x)$(전방, $r=+\varrho$)과 $\theta_1+\pi$(후방, $r=-\varrho$)의 두 방향이 더해져 해가 최대 4개이다. 한계 안에 있는 해가 하나라도 있으면 그 점이 도달 가능하다.

2.2.3.2 손목과 6자유도

6자유도 팔은 위 팔 세 관절에 손목 세 관절을 더한 구성이다. 손목의 세 회전축이 한 점에서 만나면(구면 손목) 그 점이 손목 중심이고, 엔드이펙터 위치는 손목 중심에서 공구 방향으로 공구 길이 $d$만큼 떨어진 점이 되어 위치와 자세의 역기구학이 분리된다. Modern Robotics는 PUMA형 6R 팔이 이 분리로 해석해를 가진다고 서술한다(6.1절). 분리가 성립하는 일반 조건과 해의 개수는 2.5에서 다룬다. 이 장의 작업공간은 손목 중심의 영역 $W$이다.

2.2.3.3 도달 가능 작업공간과 자세 임의 작업공간

  • 도달 가능 작업공간. 일부 자세로라도 도달할 수 있는 점들의 집합이다. 이 장에서는 손목 중심의 영역 $W$이다.
  • 자세 임의 작업공간. 모든 자세로 도달할 수 있는 점의 집합이다(영어 문헌의 "dexterous workspace"에 해당하며 원 출처는 확인하지 못했다 (확인 필요)).

손목이 한계 없이 회전하고 특이 배치를 무시한다고 하면, 공구 끝 $p$에 도구 방향 $u$(단위 벡터)로 도달하려면 손목 중심 $p-du$가 $W$ 안에 있어야 한다. 따라서 자세 임의 작업공간은 $\{p:\ \text{반경 }d\text{인 구가 }p\text{를 중심으로 }W\text{에 포함됨}\}$이다. 다관절 팔에서 $l_2=l_3$이고 관절 한계가 없으면 $W$는 반경 $R=l_2+l_3$인 공이므로 자세 임의 작업공간은 반경 $R-d$인 공이고 부피 비는 다음과 같다.

$$\frac{V_{\mathrm{dex}}}{V_W}=\Bigl(1-\frac dR\Bigr)^{3}.$$

공구 길이가 최대 도달 거리의 10 %이면 부피의 27 %, 20 %이면 49 %를 잃는다. 이 식은 이 장이 유도했고 표집으로 확인한다(2.2.5).

2.2.3.4 부피의 해석식

해석식은 좌표 적분으로 구한다. 원통 팔은 $r\,dr\,d\theta\,dz$의 적분이고, 구면 팔은 부피 요소가 $\rho^2\cos\varphi\,d\rho\,d\varphi\,d\theta$이다.

$$V_{\mathrm{cyl}}=\frac{\Delta\theta}{2}\,(r_1^2-r_0^2)\,(z_1-z_0),\qquad V_{\mathrm{sph}}=\frac{\Delta\theta}{3}\,(\rho_1^3-\rho_0^3)\,(\sin\varphi_1-\sin\varphi_0).$$

직교 팔은 세 행정의 곱이다. 한계가 없는 다관절 팔은 $W$가 안쪽 반경 $\lvert l_2-l_3\rvert$, 바깥 반경 $l_2+l_3$인 구각이므로 $V=\tfrac43\pi\bigl[(l_2+l_3)^3-\lvert l_2-l_3\rvert^3\bigr]$이다. SCARA는 수평면의 도달 면적에 수직 행정을 곱한다. $\theta_1\in[-a,a]$, $\theta_2\in[-b,b]$일 때 반지름 $r$에서 팔꿈치 각은 $\pm\theta_2^*(r)$이고 $\cos\theta_2^*=(r^2-l_1^2-l_2^2)/(2l_1l_2)$이다. 이때 첫 링크 방향에 대한 손목 방향각은 $\psi(r)=\operatorname{atan2}(l_2\sin\theta_2^*,\ l_1+l_2\cos\theta_2^*)\ge0$이며, 반지름 $r$에서 도달 가능한 편각은 중심이 $\pm\psi$인 폭 $2a$의 구간 둘의 합집합이다. 그 폭은 $w(r)=\min\{2\pi,\ 2a+2\psi,\ 4a\}$이므로 다음과 같다.

$$A_{\mathrm{SCARA}}=\int_{r_0}^{l_1+l_2} r\,w(r)\,dr,\qquad r_0=\sqrt{l_1^2+l_2^2+2l_1l_2\cos b}\quad(b<\pi).$$

관절 한계가 있는 다관절 팔은 이 장이 닫힌 식을 구하지 않고 표집으로만 확인한다. 구면 팔의 식은 고각 한계가 비대칭이어도 성립하며(표의 설계는 $[-30^\circ,60^\circ]$이다) 이를 표집으로 확인한다.

2.2.3.5 병렬 형상

병렬 기구는 위 분류의 첫 세 관절 구조로 환원되지 않으므로 형상 대신 다리 구조(예: 3-RPR, 6-UPS, 델타)로 분류한다. 자유도는 2.1의 방법으로 센다. 작업공간은 다리 길이 한계·관절 한계·특이점의 교집합으로 정해지고 작업공간이 베이스 점유 면적에 비해 좁은 경향이 있다. 이 경향의 정량 비교는 이 장이 하지 않았다(2.13·2.14).

2.2.4 알고리즘

작업공간 부피를 역기구학 판정과 몬테카를로로 추정하는 절차는 다음과 같다.

  1. 형상과 관절 한계 $P$, 손목 중심이 들어갈 경계 상자 $B$를 정한다.
  2. 상자 안에서 균일하게 점 $p$를 $n$개 뽑는다.
  3. 각 점에서 역기구학의 모든 해를 구하고 한계 안의 해가 하나라도 있으면 도달 가능으로 센다.
  4. 도달 비율 $f=k/n$에 상자 부피를 곱해 부피를, $\sqrt{f(1-f)/n}$에 상자 부피를 곱해 표준오차를 구한다.
  5. 해석식이 있으면 비교한다. 순기구학과 역기구학의 왕복($\mathrm{FK}(\mathrm{IK}(\mathrm{FK}(q)))=\mathrm{FK}(q)$)을 별도로 확인한다.

자세 임의 영역은 점 $p$마다 도구 방향 $u$를 여러 개 뽑아 모든 $p-du$가 도달 가능한지 판정한다. 최악 방향은 $u=-p/\lVert p\rVert$이므로 그 방향을 반드시 포함한다.

2.2.5 풀이 예제 — 작업공간 부피·자세 임의 영역과 라이브러리 확인

직교·원통·구면·SCARA·다관절 다섯 형상에 같은 최대 도달 거리 1 m를 주고, 작업공간의 부피를 해석식과 표집으로 비교하며, 다관절 팔에서 공구 길이에 따른 자세 임의 영역의 부피 비를 계산한다. 결론부터 적으면 다음과 같다. ① 해석식과 표집의 부피는 표준오차 범위 안에서 일치한다(차이 $\le0.11\%$, 표준오차 $0.15\sim0.22\%$). ② 반경 1 m 구의 부피에 대한 작업공간 부피의 비(구 점유율)는 직교 0.046, 원통 0.217, SCARA 0.245, 구면 0.545, 다관절 0.950이다. ③ 자세 임의 영역의 부피 비는 $d/R=0.1$에서 0.729(해석식)와 0.735(표집)이고 $d/R=0.3$에서 0.343과 0.341이다. ④ 순·역 기구학의 왕복 오차는 $3.3\times10^{-16}$ 이하이고 Modern Robotics와 Pinocchio와의 차이는 $3.3\times10^{-16}$ 이하이다.

구현. fk·ik(해석해)·two_link·ok·reach(판정)·vol_mc(표집)·scara_area·vol_formula. 자세 임의 영역의 표집 dex_mc와 그림은 스크립트에 있다.

항목값
입력 1설계 5종: 직교 변 $1/\sqrt3$ m, 원통 $\theta\pm150^\circ$·$r\in[0.25,0.8]$·$z\in[0,0.6]$, 구면 $\theta\pm150^\circ$·$\varphi\in[-30^\circ,60^\circ]$·$\rho\in[0.35,1]$, SCARA $l=(0.45,0.35)$·$\theta_1\pm150^\circ$·$\theta_2\pm140^\circ$·$z\in[0,0.6]$, 다관절 $l=(0.5,0.5)$·$\theta_1\pm170^\circ$·$\theta_2\in[-60^\circ,135^\circ]$·$\theta_3\pm150^\circ$. 모두 베이스 원점에서 가장 먼 손목 중심까지 1.0 m
입력 2부피 표집: 설계마다 300,000점(시드 45~50), 상자는 원통·SCARA $[-0.8,0.8]^2\times[0,0.6]$, 구면 $[-1,1]^2\times[-0.5,0.87]$, 다관절 $[-1,1]^3$
입력 3왕복 확인: 관절 한계 안의 균일 표본 100,000개(시드 7)를 설계마다
입력 4자세 임의: 한계 없는 다관절 $l=(0.5,0.5)$, 단위 구 안의 점 20,000개(시드 60~64), 도구 방향 300개(피보나치 격자점)와 점 반대 방향 1개, $d/R=0.05,0.1,0.15,0.2,0.3$
입력 5라이브러리 대조: 설계마다 관절 변수 2,000개(시드 11)
import random
from math import sin, cos, atan2, acos, asin, hypot, sqrt, pi

TAU = 2 * pi
ANG = {'cart': (0, 0, 0), 'cyl': (1, 0, 0), 'sph': (1, 1, 0),
       'scara': (1, 1, 0), 'art': (1, 1, 1)}

def inr(a, lo, hi):
    """각 a가 [lo, hi] 구간(2pi 법)에 있는가"""
    return hi - lo >= TAU or (a - lo) % TAU <= hi - lo

def two_link(l1, l2, r, z):
    """평면 2R의 역기구학: 팔꿈치 두 해 (a, b)"""
    c = (r * r + z * z - l1 * l1 - l2 * l2) / (2 * l1 * l2)
    if abs(c) > 1:
        return []
    out = []
    for b in (acos(c), -acos(c)):
        a = atan2(z, r) - atan2(l2 * sin(b), l1 + l2 * cos(b))
        out.append((a, b))
    return out

def fk(k, q, P):
    """관절 변수 q -> 손목 중심의 위치"""
    if k == 'cart':
        return list(q)
    c, s = cos(q[0]), sin(q[0])
    if k == 'cyl':
        return [q[1] * c, q[1] * s, q[2]]
    if k == 'sph':
        h = q[2] * cos(q[1])
        return [h * c, h * s, P['h0'] + q[2] * sin(q[1])]
    l1, l2 = P['l']
    if k == 'scara':
        x = l1 * c + l2 * cos(q[0] + q[1])
        y = l1 * s + l2 * sin(q[0] + q[1])
        return [x, y, q[2]]
    r = l1 * cos(q[1]) + l2 * cos(q[1] + q[2])
    z = l1 * sin(q[1]) + l2 * sin(q[1] + q[2])
    return [r * c, r * s, P['h0'] + z]

def ik(k, p, P):
    """손목 중심 p -> 모든 관절 해(한계는 보지 않음)"""
    x, y, z = p
    if k == 'cart':
        return [[x, y, z]]
    if k == 'cyl':
        return [[atan2(y, x), hypot(x, y), z]]
    if k == 'sph':
        d = z - P['h0']
        rho = sqrt(x * x + y * y + d * d)
        if not rho:
            return []
        return [[atan2(y, x), asin(d / rho), rho]]
    if k == 'scara':
        return [[a, b, z] for a, b in two_link(*P['l'], x, y)]
    h, t = hypot(x, y), atan2(y, x)
    out = []
    for t1, r in ((t, h), (t + pi, -h)):
        for a, b in two_link(*P['l'], r, z - P['h0']):
            out.append([t1, a, b])
    return out

def ok(k, q, P):
    """관절 한계 P['lim'] 안에 있는가"""
    for v, (lo, hi), w in zip(q, P['lim'], ANG[k]):
        if not (inr(v, lo, hi) if w else lo <= v <= hi):
            return False
    return True

def reach(k, p, P):
    return any(ok(k, q, P) for q in ik(k, p, P))

def vol_mc(k, P, box, n, seed):
    """상자 안 균일 표본의 도달 비율 -> (부피, 표준오차)"""
    rng = random.Random(seed)
    hit = 0
    for _ in range(n):
        hit += reach(k, [rng.uniform(*b) for b in box], P)
    vb, f = 1.0, hit / n
    for lo, hi in box:
        vb *= hi - lo
    return vb * f, vb * sqrt(f * (1 - f) / n)

def scara_area(l1, l2, a, b, n=4000):
    """theta1 in [-a, a], theta2 in [-b, b]의 평면 도달 면적:
    반지름 r에서 도달 가능한 편각의 폭 w(r)를 적분(심프슨)"""
    r0 = abs(l1 - l2)
    if b < pi:
        r0 = sqrt(l1 * l1 + l2 * l2 + 2 * l1 * l2 * cos(b))
    def f(r):
        c = (r * r - l1 * l1 - l2 * l2) / (2 * l1 * l2)
        t = acos(max(-1.0, min(1.0, c)))
        psi = atan2(l2 * sin(t), l1 + l2 * cos(t))
        return r * min(TAU, 2 * a + 2 * abs(psi), 4 * a)
    h = (l1 + l2 - r0) / n
    s = f(r0) + f(l1 + l2)
    for i in range(1, n):
        s += (4 if i % 2 else 2) * f(r0 + i * h)
    return s * h / 3

def vol_formula(k, P):
    (t0, t1), (u0, u1), (w0, w1) = P['lim']
    if k == 'cart':
        return (t1 - t0) * (u1 - u0) * (w1 - w0)
    if k == 'cyl':
        return (t1 - t0) / 2 * (u1 ** 2 - u0 ** 2) * (w1 - w0)
    if k == 'sph':
        return ((t1 - t0) / 3 * (w1 ** 3 - w0 ** 3)
                * (sin(u1) - sin(u0)))
    l1, l2 = P['l']
    if k == 'scara':
        return scara_area(l1, l2, t1, u1) * (w1 - w0)
    return 4 / 3 * pi * ((l1 + l2) ** 3 - abs(l1 - l2) ** 3)

① 작업공간의 부피. 해석식은 2.2.3.4, 표집은 2.2.4의 절차이다. "구 점유율"은 부피를 반경 1 m 구의 부피 $4\pi/3$으로 나눈 값이다.

유형관절열한계해석식 부피 (m³)표집 부피 ± 표준오차 (m³)차이구 점유율
직교PPP변 $1/\sqrt3$ m의 정육면체0.19250.1925 ± 0.000000.046
원통RPP$\theta\pm150^\circ$, $r\in[0.25,0.8]$, $z\in[0,0.6]$0.90710.9081 ± 0.0014+0.11 %0.217
구면RRP$\theta\pm150^\circ$, $\varphi\in[-30^\circ,60^\circ]$, $\rho\in[0.35,1]$2.28192.2811 ± 0.0049-0.04 %0.545
SCARARRP$\theta_1\pm150^\circ$, $\theta_2\pm140^\circ$, $z\in[0,0.6]$, $l=(0.45,0.35)$1.02621.0260 ± 0.0013-0.02 %0.245
다관절RRR$\theta_1\pm170^\circ$, $\theta_2\in[-60^\circ,135^\circ]$, $\theta_3\pm150^\circ$, $l=(0.5,0.5)$—3.9787 ± 0.0073—0.950
다관절(한계 없음)RRR관절 전 범위, $l=(0.5,0.5)$4.18884.1866 ± 0.0073-0.05 %0.999
0.0 0.2 0.4 0.6 0.8 1.0 직교(PPP) 0.046 원통(RPP) 0.217 구면(RRP) 0.545 SCARA(RRP) 0.245 다관절(RRR) 0.95 작업공간 부피 ÷ 반경 1 m 구의 부피
같은 최대 도달 거리 1 m의 다섯 팔 형상에서 손목 중심의 작업공간 부피를 반경 1 m 구의 부피로 나눈 값(구 점유율, 설계는 입력 1의 가정). 직교 팔은 변 $1/\sqrt{3}$ m의 정육면체이다.

원통·구면·SCARA의 해석식과 표집은 표준오차 범위 안에서 일치한다. 한계가 없는 다관절 팔의 표집도 구각 부피(4.1888)와 $-0.05\,\%$ 차이이다. 한계가 있는 다관절 팔은 닫힌 식이 없어 표집값만 적었다. 이 설계에서 다관절 팔이 점유하는 작업공간은 구에 가까운 3.98 m³이고 같은 최대 도달 거리의 직교 팔은 0.19 m³이다. 비율은 설계 가정에 의존한다. 직교 팔의 부피는 같은 최대 도달 거리에서 변 $1/\sqrt3$ m의 정육면체로 정했으며, 원통·구면·SCARA의 부피는 한계 선택에 따라 달라진다. 관절 한계를 풀면 구면(0.545)과 SCARA(0.245)의 점유율은 올라가므로 이 순위의 절대 간격은 가정에 달려 있다.

② 자세 임의 영역. 한계 없는 다관절 팔($W$는 반경 1 m의 공)에서 공구 길이가 $d$일 때 자세 임의 영역의 부피 비는 다음과 같다.

도구 길이 $d/R$0.050.10.150.20.3
해석식 $(1-d/R)^3$0.85740.72900.61410.51200.3430
표집(20,000점)0.86050.73460.61660.51670.3414
0.0 0.1 0.2 0.3 0.4 0.5 0.00 0.25 0.50 0.75 1.00 도구 길이 ÷ 최대 도달 거리 d/R 자세 임의 영역의 부피 비 해석식 (1 − d/R)3 표집
다관절 팔($l_2=l_3$, 한계 없음)에서 공구 길이 $d$에 따른 자세 임의 작업공간의 부피 비. 곡선은 해석식 $(1-d/R)^3$이고 점은 표집(20,000점)이다.

표집(20,000점)과 해석식의 차이는 $-0.0016\sim+0.0056$이며 표준오차($0.0025\sim0.0035$)의 1.8배 이내이다. 도구 방향 301개 판정은 최악 방향(점의 반대 방향)을 포함하므로 해석식과 같은 조건을 판정하며, 편향의 원인이 되는 근사는 없다.

③ 순·역 기구학의 왕복. 관절 한계 안의 관절 변수 100,000개를 순기구학으로 보낸 점에서 역기구학의 모든 해 가운데 원래 점으로 돌아오는 해의 오차와, 한계 안의 해를 찾지 못한 수이다.

유형순·역 기구학 왕복 오차 최댓값역기구학이 한계 안의 해를 찾지 못한 수(100,000개)
직교0.0e+000
원통1.1e-160
구면3.3e-160
SCARA2.8e-160
다관절2.2e-160

역기구학의 해 집합이 완전하다(관절 한계 안의 점은 반드시 한계 안의 해를 가진다).

④ 라이브러리 대조(실행 2026-11-03). modern_robotics 1.1.1의 FKinSpace와 Pinocchio 4.1.0의 forwardKinematics로 같은 관절 변수(설계마다 2,000개)에서 손목 중심의 위치를 다시 계산했다. 스크립트는 robotics/fig-src/2.2-libcheck.py, 출력은 robotics/fig-src/data/2.2-libcheck-output.txt에 있다.

유형FKinSpace와 최대 차이forwardKinematics와 최대 차이
직교0.0e+000.0e+00
원통1.1e-160.0e+00
구면1.1e-161.1e-16
SCARA3.3e-162.2e-16
다관절3.3e-162.8e-16

Modern Robotics는 곱셈 지수 공식(스크루 축과 홈 자세 $M$)으로, Pinocchio는 관절 모델 트리로 계산한다. Pinocchio의 JointModelRY는 $+y$ 둘레 회전이어서 이 장의 고각·어깨·팔꿈치 각과 부호를 반대로 하여 입력했다.

한계. 수치는 합성 설계(고정한 한계)와 합성 표집이다. 형상 비교는 같은 최대 도달 거리 1 m라는 정규화에 의존하며, 같은 베이스 점유 면적이나 같은 가반하중 같은 다른 정규화에서는 순위가 달라질 수 있다. 장애물·충돌·링크 두께·관절 간섭은 반영하지 않았다. 손목의 관절 한계와 특이 배치를 무시했으므로 자세 임의 영역은 상한이다. 병렬 기구의 작업공간은 계산하지 않았다.

견해: 새로 팔 형상을 정할 때에는 먼저 작업이 요구하는 공간의 부피·형태와 설치 면적에서 출발하고, 요구가 모든 방향의 넓은 영역이면 다관절 6축을 기본으로 두며 평면 위 고속 조립이나 한 방향 직선 이송이 지배적이면 SCARA·직교를 검토하는 것을 기본으로 둔다고 본다. 근거는 이 장의 계산에서 같은 최대 도달 거리일 때 다관절 팔의 작업공간 점유율(0.95)이 다른 형상(0.05~0.55)보다 크다는 점이다. 강성·정밀도·속도가 지배하는 응용에서는 이 판단이 달라질 수 있다.

2.2.6 설계 트레이드오프 — 팔 형상의 선택

공개 문헌에서 확인되는 선택지는 네 가지이다.

  • ① 직교(직선 축 중심). 좌표와 축이 일대일이고 해석이 단순하다. 작업 범위가 직육면체이며 직선 구동계가 복잡하고 부피가 크다고 1970년대 특허의 배경 절이 서술한다(0.5, 2차 서술).
  • ② 회전 축 한 개와 직선 축(원통·구면). 회전 축이 늘면 구동 기구가 단순해지고 설치 면적이 줄지만 경로를 정의하기가 어렵다고 같은 특허가 서술한다. 원통 좌표형 산업 로봇은 Versatran에서 출발했다(0.4).
  • ③ 수직축 회전 둘과 수직 직선(SCARA). 수평 방향으로는 순응이 크고 수직으로는 강하며 4자유도이다(0.5.7, Makino가 전하는 서술).
  • ④ 다관절(RRR+손목). 이 장의 계산에서 같은 최대 도달 거리에서 작업공간 점유율이 가장 크다.

병렬 기구는 위 형상과 구조가 다르므로 별도의 선택지로 2.13·2.14에서 다룬다.

형상구조 특성(출처)작업공간(이 장의 계산)한계알맞은 경우
직교(PPP)축과 좌표가 일대일, 직선 구동계가 복잡하고 부피가 큼(0.5)점유율 0.046작업공간 대비 구조가 큼, 작업 범위가 직육면체큰 직선 범위, 갠트리(28.3)
원통(RPP)회전 축 1개로 구동이 단순해짐(0.5)점유율 0.217중심 근처의 사각(안쪽 반경), 경로 정의가 어려움원통 좌표에 맞는 적재·이송
구면(RRP)회전 축 2개와 직선 축 1개점유율 0.545사각(안쪽 반경), 직선 축이 긴 팔을 요구중심 주변 반구 영역
SCARA수평 순응이 크고 수직으로 강함(0.5)점유율 0.2454자유도, 수직 행정으로 높이 제한평면 위 조립·피킹(28.3)
다관절(RRR)회전 축만으로 구성점유율 0.950중력 모멘트와 강성(7.4), 특이점(2.9)일반 작업, 6·7축(28.2)

견해: 형상 선택을 작업공간 점유율 하나로 정하지 않는 것이 낫다고 본다. 이 장의 점유율은 부피만의 척도이고 직교·SCARA의 장점(강성·순응·가격)은 부피에 드러나지 않는다. 근거는 위 표에서 형상마다 구조 특성의 출처가 작업공간과 별개의 기준이라는 점이다.

2.2.7 응용 축 비교

응용 축형상 선택이 맡는 일요구관련 장
산업·제조용접·핸들링은 다관절, 조립·피킹은 SCARA·델타, 이송은 직교·갠트리작업공간·택트 타임·반복 정밀도28.2, 28.3, 28.9
물류·이동팔레타이징은 다관절·직교, 이동 매니퓰레이터는 베이스 이동으로 작업공간 확장도달 거리·적재 높이28.9, 29.12
도로 주행해당하는 고유 요구 없음——
서비스가정용 팔은 7축 다관절, 가반하중이 작고 안전 중시도달성·안전7.3, 2.11
의료·헬스케어수술 로봇은 원격 운동 중심 기구, 재활은 외골격정밀도·안전7.7, 32.14
휴머노이드·범용인간형 팔(어깨 3·팔꿈치·손목), 형상 대신 인체 비율인간 작업공간과의 대응7.3, 7.18
필드해당하는 고유 요구 없음(이동·휴머노이드 행과 같음)——
국방·안보원리 수준에서 해당하는 고유 요구 없음——

이 표는 이 책의 정리이며 장별 요구는 다르다.

2.2.8 관련 규격·프로토콜

문서발행무엇을 정하나상세 장
ISO 8373:2021ISO/TC 299매니퓰레이터(4.14), 직교(4.14.1)·원통(4.14.2)·극·구면(4.14.3)·SCARA(4.14.6)·병렬(4.14.7) 로봇, 팔(4.2)·손목(4.3)의 정의(0.3이 ISO/FDIS 공개 미리보기에서 정리). 다관절 로봇 조항은 확인하지 못했다 (확인 필요)0.3, 27.2
성능 표준(ISO 9283·ISO 9946 등)ISO사양서의 작업 범위·성능 표기와 시험. 이 장은 조항을 확인하지 않았다 (확인 필요)27.3
수학 표기·기호표이 책회전·변환·트위스트 표기A.2

2.2.9 관련 규제·인증 요구와의 연결

팔 형상의 선택 자체를 정하는 법령·인증 요건은 확인하지 못했다. 다만 작업공간은 안전 설계의 입력이다. 안전 요건은 로봇의 최대 도달 범위와 제한 공간을 기준으로 방호 거리·구획을 정하며(산업 로봇의 안전 요건은 27.10), 제한 공간 설정은 이 장의 작업공간 계산과 같은 기하에 기댄다. 구체 조항과 규정값은 이 장이 확인하지 않았다 (확인 필요).

2.2.10 한계·유의점·미해결

  • 정규화에 대한 의존. 형상 비교는 같은 최대 도달 거리를 기준으로 했다. 같은 점유 면적·같은 비용·같은 가반하중으로 비교하면 결과가 다르다.
  • 관절 한계의 선택. 점유율은 설계 가정(관절 한계, 안쪽 반경)에 달려 있다. 표의 값은 한 설계의 값이다.
  • 손목과 공구. 손목의 한계·특이 배치·공구 형상을 무시했다. 자세 임의 영역은 상한이다.
  • 작업공간의 질. 부피는 도달성만 본다. 같은 점에서의 조작성·강성은 점마다 다르다(2.9·2.10·2.12).
  • 충돌과 장애물. 링크 두께·주변 장애물·자기 충돌은 도달성을 줄인다(11.1 이후).
  • 병렬 기구. 정량 비교를 하지 않았다(2.13·2.14).

2.2.11 체크포인트·연구 질문·출처

체크포인트:

  1. 반경 $R$의 구에 대한 원통 팔(반경 $r_1$, 높이 $h$, 전 회전)의 부피 비를 $R^2=r_1^2+h^2$ 아래에서 최대로 하는 $h/R$는 얼마인가? (해답은 $\partial V/\partial h=0$으로 구한다.)
  2. 다관절 팔의 $l_2\ne l_3$일 때 자세 임의 작업공간의 부피 비 식은 무엇이 달라지는가?
  3. SCARA에서 $l_1=0.45$, $l_2=0.35$, $\theta_1\in[-20^\circ,20^\circ]$일 때 폭 $w(r)$가 $4a$로 제한되는 반지름 구간이 있는가? $\psi(r)>a$가 되는 $r$을 구하라.
  4. 같은 점유 면적으로 비교하면 직교·다관절의 순위는 어떻게 바뀌는가? 계산으로 확인하라.

연구 질문:

  • 작업공간의 부피 대신 조작성·강성을 가중한 "질 좋은 작업공간"을 형상 간에 공정하게 비교하는 정규화는 무엇인가(2.10·2.19)?
  • 병렬 기구와 직렬 팔의 작업공간 점유율을 같은 정규화로 비교하면 어떻게 되는가?

1차 출처(조회 2026-11-03).

  • K. M. Lynch, F. C. Park, Modern Robotics: Mechanics, Planning, and Control, Cambridge University Press, 2017(ISBN 9781107156302). 사전 인쇄본 2017-05-03판의 예 2.9와 6.1절을 읽었다.
  • ISO 8373:2021 Robotics — Vocabulary — 정의는 0.3이 공개 미리보기에서 정리한 범위. 본문 전체는 읽지 못했다.
  • 이 저장소 0.3·0.4·0.5의 정리(Versatran, 1970년대 특허, SCARA).
  • modern_robotics 1.1.1(PyPI), Pinocchio 4.1.0(PyPI 휠, 실행).

다음 장. 2.3은 순기구학을 표준·수정 DH 관례로 정식화한다. 이 장의 형상별 위치식이 DH 표로 어떻게 옮겨지는지 이어서 다룬다.