Contents — find the section you need
경로는 기하학적 형태이고, 궤적은 해당 경로를 언제, 어떤 속도, 가속도, 그리고 저크로 통과하는지를 지정합니다. 통로의 중심선은 적재된 카트, 유연한 로봇 팔, 또는 협업 매니퓰레이터가 얼마나 빨리 회전하거나 정지할 수 있는지를 알려주지 않습니다. 경로 계획기가 생성한 충돌 없는 폴리라인이라도 불가능한 조향을 요구하거나, 관절에 과부하를 걸거나, 진동을 유발하거나, 적재물을 쏟아지게 할 수 있습니다. 궤적 생성은 기하학적 실현 가능성을 시간 및 동역학적 요소를 고려한 실행 가능성으로 변환합니다.
이 입문서에서는 사다리꼴/삼각형 속도 프로파일, 5차 다항식, 그리고 최소 저크를 비교합니다. 또한 한계, 안전성, 구현, 그리고 ROS 2 및 경로 계획의 경계에 대해서도 다룹니다. 경로 계획 입문, ROS 2 입문, Visual SLAM 입문을 참조하십시오.
실질적인 결론
-
사다리꼴 프로파일은 최대 속도와 가속도를 명확하게 보여줍니다. 짧은 이동은 순항 구간이 없는 삼각형 프로파일이 됩니다. 이상적인 가속 단계는 무한대의 저크를 의미하며, 이는 유연한 메커니즘과 페이로드에 과도한 자극을 줄 수 있습니다.
-
5차 다항식은 위치, 속도 및 가속도 경계 조건을 양쪽 끝에서 만족합니다. 속도와 가속도가 0인 끝점은 구간 간 위치와 가속도 사이의 연속성을 제공합니다.
-
최소 저크는 지정된 끝점 조건에서 \int j(t)^2dt을 최소화합니다. 고정된 지속 시간에서는 5차 다항식이 됩니다. "최소"는 선택된 목표에 적용되며, 에너지, 충돌 위험 또는 안전성에 자동으로 적용되는 것은 아닙니다.
-
위치, 속도, 가속도, 저크, 제한값, 전류, 정지 거리, 추적 오차 및 지도 최신성을 동시에 모니터링합니다. 궤적 생성기는 비상 정지 또는 충돌 방지 시스템이 아닙니다.
경로의 시간 매개변수화
공간 경로가 p(s)이고 진행률이 s\in[0,1]이며 시간이 t일 때, 궤적은 p(s(t))입니다. 여기서 \dot s는 진행률입니다.
곡률이 높으면 횡가속도가 증가합니다. 이동 로봇은 대략 a_{lat}=v^2\kappa을 따르며, 여기서 \kappa은 곡률입니다. 따라서 횡방향 제한값 a_{lat,max}은 v\le\sqrt{a_{lat,max}/|\kappa|}을 생성합니다. 코너를 부드럽게 통과하지 않고 속도를 높이면 추적기가 불가능한 조향을 하게 됩니다. 로봇 팔의 경우, 매끄러운 엔드 이펙터 경로조차도 운동학적 특이점 근처에서 높은 관절 속도를 발생시킬 수 있습니다. 따라서 손, 차량, 관절 및 액추에이터의 제약 조건을 함께 확인해야 합니다.
사다리꼴 및 삼각형 속도
거리 D, 최고 속도 v_{max}, 가속도 크기 a_{max}일 때, 가속 시간은 t_a=v_{max}/a_{max}이고 가속/감속 전용 거리는 D_{tri}=v_{max}^2/a_{max}입니다. 가속 제한은 a_{max}입니다. D\ge D_{tri}인 경우, 순항 시간은
D<D_{tri}인 경우, 순항 기능이 사라지고 최고 속도는 v_p=\sqrt{Da_{max}}이 됩니다. 이 프로파일은 투명하며 간단한 드라이브에 쉽게 적용할 수 있습니다. 순간 가속도 변화는 물리적인 것이 아닙니다. S자형 곡선 프로파일은 가속도를 점진적으로 증가시켜 충격과 진동을 줄이고 전반적인 이동 거리를 늘림으로써 급격한 변화(저크)를 제한합니다.
다이어그램: Duskcoil의 개념도. 이상적인 사다리꼴에서 가속도 불연속은 저크를 충격파처럼 만듭니다. 이는 측정된 기계 응답이 아닙니다.
5차 다항식과 최소 저크
다음과 같이 정의합니다.
초기 시점의 위치, 속도, 가속도 및 T를 포함한 6개의 끝점 조건은 6개의 계수를 결정합니다. 간단히 말하면, 이들은 p(0),\dot p(0),\ddot p(0),p(T),\dot p(T),\ddot p(T)이고, 정지 상태에서 정지 상태로 이동하는 경우 p(0)=0,p(T)=D,\dot p(0)=\dot p(T)=\ddot p(0)=\ddot p(T)=0입니다. 선택된 거리를 정지 상태에서 정지 상태로 이동하는 경우, \tau=t/T을 사용하면 다음과 같습니다.
최소 저크 해법
끝점 위치, 속도 및 가속도에 따라 달라집니다. 오일러-라그랑주 조건에 의해 6차 미분이 0이 되어 5차 함수가 됩니다. T의 길이를 줄이면 필요한 속도, 가속도 및 저크가 급격히 증가하므로, 길이 선택은 끝점 위치 선택만큼 중요합니다.
다이어그램: Duskcoil. 이 비교는 최종 지점의 부드러움에 관한 것이며, 시간, 에너지 또는 안전성에 대한 보편적인 측정 주장과는 무관합니다.
구현 및 ROS 2 연결
하나의 관절에 대해, q_0에서 q_f으로의 이동을 정의하고, 5차 다항식에서 q_d,\dot q_d,\ddot q_d을 샘플링하여 위치/속도/힘 루프에 제공합니다. 속도와 가속도는 피드포워드를 지원할 수 있습니다. 관절별 보간만으로는 엔드 이펙터가 장애물 근처로 이동할 수 있으므로, 직교 좌표계 경로, 역기구학, 관절 범위 및 자체 충돌도 확인해야 합니다.
이동 로봇의 경우, A* 또는 RRT 알고리즘으로 경로를 부드럽게 만들고, 곡률에 따른 속도 제한을 적용하고, 사다리꼴/S자 곡선/최소 저크 시간 법칙을 선택하고, 생성된 속도 v(t)을 휠 속도 또는 조향 및 가속도로 변환합니다. 로컬 코스트맵에 사람이 나타나면, 이전의 원활한 도착 경로를 유지하는 것보다 속도를 줄이거나, 정지하거나, 경로를 다시 계획하는 것이 더 중요합니다. 전역 경로 계획은 로컬 안전과 무관합니다.
ROS 2에서는 경로, 궤적, 제어 명령 타임스탬프를 구분해야 합니다. 클록 점프, 지연된 궤적 메시지, 취소, 교체, 제어 기간 누락에 대한 동작을 정의하고, 오래된 궤적을 거부하고 교체 시 속도 불연속성을 방지해야 합니다. ROS 2 입문서에 설명된 ROS 2 수명 주기 및 하드웨어 경계는 이러한 책임을 할당하는 데 도움이 되지만, 실시간 또는 기능 안전성을 보장하지는 않습니다.
제한, 안전 및 점검
제한 사항에는 |v|\le v_{max}, |a|\le a_{max} 및 |j|\le j_{max}뿐만 아니라 관절 범위, 토크/전류/열 용량, 타이어 마찰, 조향률, 페이로드, 인지, 통신 지연 및 제동 거리가 포함됩니다. 간단한 추정치 d_{stop}\simeq v^2/(2a_{brake})+v t_{latency}에 따르면 제동 거리는 속도의 제곱에 비례하여 증가하며, 감지 및 계산 지연은 유지됩니다. 발전기는 추적 오차, 자세 불확실성, 포화, 장애물 감지 또는 오래된 지도가 허용 범위를 초과할 경우 궤적을 포기할 수 있어야 합니다.
| 문제 | 예상 원인 | 모니터링 | 예시 응답 |
|---|---|---|---|
| 코너에서의 오차 | 속도/곡률 불일치 | 측면 오차, 조향 포화 | 저속, 부드러운 경로, 곡률 제한 |
| 페이로드 진동 | 높은 저크/유연 모드 | IMU, 가속도, 진동 | S자 곡선, 긴 시간, 공진 방지 |
목표 변경 시 점프 | 불연속 경계 속도 | v,a,j, 전류 | 범프리스 스플라이스 및 재보간 |
정지 불가 | 지연/제동/지도 오류 | 최신성, 정지 거리 | 속도 제한 및 안전 정지 |
관절 한계 | IK/시간 법칙 불일치 | 위치, 속도, 토크 | 재계획, 목표 거부, 속도 저하 |
구현 체크리스트
-
경로와 궤적, 프레임, 목표 시간 및 제어 주기를 정의합니다.
-
측정된 액추에이터, 페이로드 및 정지 한계에서 v,a,j을 설정합니다.
-
삼각형/사다리꼴 전환 및 목표 교체 경계 조건을 테스트합니다.
-
5차 지속 시간을 줄일 때 최대 미분값을 확인합니다.
-
지도 업데이트, 위치 점프, 추적 편차, 통신 손실 또는 장애물 감지 시 이전 궤적을 폐기합니다.
-
궤적 소프트웨어 오류 발생 시 독립적인 비상 정지, 토크 제한 및 이동 제한을 확인하십시오.
부드러운 위치 곡선이 실현 가능한 움직임을 보장합니까?
타이밍은 속도, 가속도 및 저크를 결정합니다. 기하학적 경로뿐만 아니라 이러한 요소의 제한도 확인하십시오.
댓글
먼저 로그인해 주세요.
아직 데이터가 없습니다.