quinticpolytraj
5차 궤적 생성
구문
설명
[
는 위에 열거된 구문의 조합을 사용하면서 추가 파라미터를 q
,qd
,qdd
,pp
] = quinticpolytraj(___,Name,Value
)Name,Value
쌍 인수로 지정합니다.
예제
2차원 평면 모션을 위한 5차 궤적 계산하기
주어진 일련의 2차원 xy 웨이포인트와 함께 quinticpolytraj
함수를 사용합니다. 웨이포인트에 대한 시간 지점도 주어집니다.
wpts = [1 4 4 3 -2 0; 0 1 2 4 3 1]; tpts = 0:5;
궤적을 샘플링하기 위한 시간 벡터를 지정합니다. 지정된 시간 지점보다 짧은 간격으로 샘플링합니다.
tvec = 0:0.01:5;
5차 궤적을 계산합니다. 이 함수는 5차 다항식의 궤적 위치(q
), 속도(qd
), 가속도(qdd
), 다항식 계수(pp
)를 출력합니다.
[q, qd, qdd, pp] = quinticpolytraj(wpts, tpts, tvec);
x 위치와 y 위치에 대한 5차 궤적을 플로팅합니다. 각 웨이포인트와 궤적을 비교합니다.
plot(tvec, q) hold all plot(tpts, wpts, 'x') xlabel('t') ylabel('Positions') legend('X-positions','Y-positions') hold off
2차 평면에서 실제 위치를 확인할 수도 있습니다. q
벡터와 웨이포인트의 개별 행을 x 위치와 y 위치로 플로팅합니다.
figure plot(q(1,:),q(2,:),'.b',wpts(1,:),wpts(2,:),'or') xlabel('X') ylabel('Y')
입력 인수
wayPoints
— 궤적의 웨이포인트
n×p 행렬
궤적의 웨이포인트에 대한 점으로, n×p 행렬로 지정됩니다. 여기서 n은 궤적의 차원이고 p는 웨이포인트 개수입니다.
예: [1 4 4 3 -2 0; 0 1 2 4 3 1]
데이터형: single
| double
timePoints
— 궤적의 웨이포인트에 대한 시간 지점
요소를 p개 가진 벡터
궤적의 웨이포인트에 대한 시간 지점으로, 요소를 p개 가진 벡터로 지정됩니다.
예: [0 2 4 5 8 10]
데이터형: single
| double
이름-값 인수
선택적 인수 쌍을 Name1=Value1,...,NameN=ValueN
으로 지정합니다. 여기서 Name
은 인수 이름이고 Value
는 대응값입니다. 이름-값 인수는 다른 인수 뒤에 와야 하지만, 인수 쌍의 순서는 상관없습니다.
R2021a 이전 버전에서는 쉼표를 사용하여 각 이름과 값을 구분하고 따옴표로 Name
을 묶으십시오.
예: 'VelocityBoundaryCondition',[1 0 -1 -1 0 0; 1 1 1 -1 -1 -1]
VelocityBoundaryCondition
— 각 웨이포인트의 속도 경계 조건
zeroes(n,p)
(디폴트 값) | n×p 행렬
각 웨이포인트의 속도 경계 조건으로, 'VelocityBoundaryCondition'
이 n×p 행렬과 함께 쉼표로 구분되어 지정됩니다. 각 행은 궤적의 각 변수에 대한 모든 p개 웨이포인트에서의 속도와 대응됩니다.
예: [1 0 -1 -1 0 0; 1 1 1 -1 -1 -1]
데이터형: single
| double
AccelerationBoundaryCondition
— 각 웨이포인트의 가속도 경계 조건
zeroes(n,p)
(디폴트 값) | n×p 행렬
각 웨이포인트의 가속도 경계 조건으로, 'AccelerationBoundaryCondition'
이 n×p 행렬과 함께 쉼표로 구분되어 지정됩니다. 각 행은 궤적의 각 변수에 대한 모든 p개 웨이포인트에서의 가속도와 대응됩니다.
예: [1 0 -1 -1 0 0; 1 1 1 -1 -1 -1]
데이터형: single
| double
출력 인수
q
— 궤적의 위치
요소를 m개 가진 벡터
tSamples
에 지정된 시간 샘플에서의 궤적의 위치로, 요소를 m개 가진 벡터로 반환됩니다. 여기서 m은 tSamples
의 길이입니다.
데이터형: single
| double
qd
— 궤적의 속도
벡터
tSamples
에 지정된 시간 샘플에서의 궤적의 속도로, 벡터로 반환됩니다.
데이터형: single
| double
qdd
— 궤적의 가속도
벡터
tSamples
에 지정된 시간 샘플에서의 궤적의 가속도로, 벡터로 반환됩니다.
데이터형: single
| double
pp
— 조각별 다항식
구조체
조각별 다항식으로, 조각별 궤적의 각 섹션에 대한 다항식을 정의한 구조체로 반환됩니다. mkpp
를 사용하여 직접 조각별 다항식을 만들거나 ppval
을 사용하여 지정된 시간에서의 다항식을 계산할 수 있습니다. 구조체에는 다음 필드가 있습니다.
form
:'pp'
.breaks
: 조각별 궤적의 형식이 변경되는 시점으로 구성된, 요소를 p개 가진 벡터입니다. p는 웨이포인트 개수입니다.coefs
: 다항식의 계수에 대한 n(p-1)×order
행렬입니다. n(p-1)은 궤적의 차원에pieces
의 개수를 곱한 값입니다. 각각의 n 행 세트는 각 변수 궤적을 설명하는 다항식의 계수를 정의합니다.pieces
: p–1. 절점의 개수에서 1을 뺀 값입니다.order
: 다항식의 차수(degree)에 1을 더한 값입니다. 예를 들어 3차 다항식의 위수(order)는 4입니다.dim
: n. 제어점 위치의 차원입니다.
확장 기능
C/C++ 코드 생성
MATLAB® Coder™를 사용하여 C 코드나 C++ 코드를 생성할 수 있습니다.
버전 내역
R2019a에 개발됨
참고 항목
bsplinepolytraj
| contopptraj
| cubicpolytraj
| rottraj
| transformtraj
| trapveltraj
MATLAB 명령
다음 MATLAB 명령에 해당하는 링크를 클릭했습니다.
명령을 실행하려면 MATLAB 명령 창에 입력하십시오. 웹 브라우저는 MATLAB 명령을 지원하지 않습니다.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)