Main Content

Ackermann Kinematic Model

Ackermann 기구학 모델을 사용한 차륜 이동체의 모션

  • Ackermann Kinematic Model block

라이브러리:
Robotics System Toolbox / Mobile Robot Algorithms

설명

Ackermann Kinematic Model 블록은 Ackermann 조향을 사용하는 차륜 이동체 모델을 생성합니다. 이 모델은 두 차축이 거리 Wheel base만큼 떨어져 있는 이동체를 표현합니다. 이동체 상태는 요소를 4개 가진 벡터 [x y θ ψ]로 정의됩니다. 각각은 전역 xy-위치, 이동체 방향 θ, 조향각 ψ입니다. 이동체 방향과 xy 위치는 뒤 차축의 중심에서 정의됩니다. 각도는 라디안으로, 전역 위치는 미터로 지정됩니다. 이동체의 조향 입력값은 dψ/dt(단위: 초당 라디안)로 주어집니다.

Ackermann kinematic model diagram with x, y, theta, psi, velocity, wheel base, and turning radius labeled

예제

포트

입력

모두 확장

이동체 속도로, 초당 미터 단위로 지정됩니다.

이동체의 조향 각속도로, 초당 라디안 단위로 지정됩니다.

출력

모두 확장

현재의 xy 위치, 방향, 조향각으로, [x y θ ψ]로 지정됩니다(단위: 미터 및 라디안).

이동체의 선속도와 각속도로, [xDot yDot thetaDot psiDot] 벡터로 지정됩니다(단위: 초당 미터 및 초당 라디안). 선속도와 각속도는 state 출력값의 시간 도함수를 구하여 계산됩니다.

파라미터

모두 확장

축간 거리는 이동체의 앞 차축과 뒤 차축 간의 거리를 나타내며, 미터 단위로 지정됩니다.

바퀴 속도 범위는 이동체의 최소 바퀴 속도와 최대 바퀴 속도 [MinSpeed MaxSpeed]를 제공하는 2개 요소 벡터로, 초당 라디안 단위로 지정됩니다.

이동체를 오른쪽 또는 왼쪽으로 조향할 수 있는 최대 크기를 나타내는 최대 조향각으로, 라디안 단위로 지정됩니다. 디폴트 값은 pi/4입니다.

이동체의 초기 x 위치와 y 위치, 방향각 theta, 조향각 psi입니다.

  • 인터프리터형 실행 — MATLAB® 인터프리터를 사용하여 모델을 시뮬레이션합니다. 자세한 내용은 Interpreted Execution vs. Code Generation (Simulink) 항목을 참조하십시오.

  • 코드 생성 — 생성된 C 코드를 사용하여 모델을 시뮬레이션합니다. 시뮬레이션을 처음 실행하면 Simulink®는 블록에 대한 C 코드를 생성합니다. 이 C 코드는 모델이 바뀌지 않는 한 후속 시뮬레이션에 재사용됩니다.

조정 가능: No

참고 문헌

[1] Lynch, Kevin M., and Frank C. Park. Modern Robotics: Mechanics, Planning, and Control. 1st ed. Cambridge, MA: Cambridge University Press, 2017.

확장 기능

C/C++ 코드 생성
Simulink® Coder™를 사용하여 C 코드나 C++ 코드를 생성할 수 있습니다.

버전 내역

R2019b에 개발됨