관절속도 (Joint Velocity)
쉽게 풀면
관절이 얼마나 빠르게 움직이고 있는지를 나타내는 값이에요. 자동차 계기판의 속도계가 지금 몇 km/h로 달리고 있는지를 알려주듯이, 관절속도는 지금 이 관절이 초당 몇 도(혹은 라디안)씩 회전하고 있는지를 나타내는 값입니다. 이 값이 빠르면 손끝도 그만큼 빠르게 움직이고, 관절이 멈춰 있으면 관절속도는 0이 됩니다.
왜 중요한가
관절 각도의 시간 변화율로, 야코비안을 통해 엔드이펙터 속도와 연결되어 속도 수준 제어와 역기구학의 핵심 변수가 됩니다. 관절 속도 한계는 사이클 타임과 안전 속도 제한을 결정하는 실무적 제약입니다. 산업 현장에서는 각 모터가 낼 수 있는 최대 속도가 정해져 있어, 로봇의 작업 사이클 타임을 줄이려는 시도는 결국 이 관절속도 한계와 부딪히게 되며, 사람과 함께 일하는 협동로봇에서는 안전을 위해 이 한계를 의도적으로 더 낮게 설정하기도 합니다.
논문에서는 이렇게 쓰입니다
논문에서 관절속도는 속도기구학과 속도제어의 핵심 변수로, 엔코더의 미분값이나 속도 센서로 측정됩니다.
관절속도가 단순한 측정값에 그치지 않고, 로봇의 동작 시간을 최소화하는 궤적을 계획할 때 반드시 지켜야 할 제약 조건으로 다뤄진다는 점을 보여주는 문장이다.
조금 더 깊게 보면
특이점 근처에서 작은 엔드이펙터 속도가 무한대에 가까운 관절속도를 요구하는 것이 로봇 제어의 고전적 문제이며, 속도 한계 포화가 경로 왜곡으로 나타납니다. 엔코더 위치를 미분해 속도를 얻으면 잡음이 증폭되므로 필터링이 필요하고, 그 지연이 제어 대역폭을 제한하는 요인이 됩니다. 관절속도는 야코비안을 통해 v = J(q)·q̇ 관계로 엔드이펙터 속도와 연결되는데, 로봇 자세가 특이점에 가까워지면 야코비안이 랭크를 잃어 아주 작은 엔드이펙터 속도를 내려 해도 특정 관절의 속도가 이론상 무한대로 커져야 하는 상황이 생긴다. 실제로는 관절속도 한계에 걸려 포화되므로, 이 구간에서는 계산된 궤적과 실제 로봇의 움직임이 크게 달라지는 경로 왜곡이 나타난다.
주의할 점
엔코더 값을 단순 미분해 관절속도를 구하면 노이즈가 증폭될 수 있어 필터링이나 관측기를 함께 사용하는 것이 일반적이다. 엔코더에서 얻은 위치값을 단순히 시간으로 나누어 속도를 구하면 양자화 잡음이 그대로 증폭되므로, 저역통과 필터나 관측기를 함께 사용하는 것이 일반적이며 이때 생기는 지연이 제어 대역폭을 제한하는 요인이 된다.