BBPB (Bang-Bang뱅뱅 Parabolic Blends, 삼각형 궤적)
궤적(Trajectory) 세 번째.
지난 게시글에서 소개한 LSPB(Linear Segments with Parabolic Blends, 사다리꼴 궤적)는 속도가 얼마 이상은 올라가지 않도록 제한을 했었습니다. 굳이 속도 제한을 하지 않아도 되는 환경이라면, 작업 시간을 단축하는 것이 좋겠지요? 이동 각도와 가속도 값만 제시하고, 소요시간과 속도는 맘대로 해서 작업 효율을 높이고자 합니다.
<과제>
지난 게시글 LSPB와 동일한 조건으로 비교해 보겠습니다.
관절각을 2도에서 출발하여 14도까지 회전한다. 소요시간은 제시 안함, 최대속도 제시 안함.
가속도는 지난 LSPB때는 속도제한 1.5도/초(degree/sec**2)로 했지만, 하드웨어 성능상 5 degree/sec**2까지 작동 가능한 점을 고려해 무리가 가지 않게 3 degree/sec**2으로 합니다.
BBPB로 궤적 생성.
시간 변화에 따른 1 각도변화 2 각속도 3 각가속도를 그래표로 표현.
우선 관절 변화 모습입니다.
결과부터 보겠습니다.
부드럽게 움직인 모습이 되었습니다.
지난 게시글에서 도달에 소요된 6초가 4초로 2초 줄었습니다.
가속도를 1.5 degree/sec**2 에서 3.0 degree/sec**2으로 2배 높인 결과입니다.
삼각형 궤적(BBPB) 적용 과정을 살펴 보겠습니다.
출발 전 시간 t0 = 0초
도착 시간 tf = 제시 안됨
초기 관절각도 θ0 = 2도
도착 관절각도 θf = 14도
최대속도 V = 제시 안됨 (BBPB 계산에 불필요)
각 가속도 a = 3 degree/sec**2
LSPB(사다리꼴)가 세 구간(Segments)으로 나누어 계산한 것에서, segⅡ(등속구간)만 없애면 BBPB가 됩니다.
다만, 도착까지 소요시간은 각 가속도를 이용해 계산해 내야 합니다.
가속구간과 감속구간의 경계가 되는 시간은 tf 의 중간입니다.
아래 두 그림은 BBPB와 LSPB의 속도 그래프이니 비교해 보세요.
위의 수식을 프로그램에 반영하여 실행하면 부드러운 곡선의 그래프가 생성됩니다.
하드웨어 사양만 충분하다면 BBPB가 작업속도를 높일 수 있습니다.
현장 상황과 로봇의 사양을 고려하여 『3차 다항식』 『LSPB』 『BBPB』을 적절히 조합하여 활용하면 될 듯 합니다.