cubicpolytraj
Genere trayectorias polinómicas de tercer orden
Sintaxis
Descripción
[
genera un polinomio de tercer orden que alcanza un determinado conjunto de waypoints de entrada con los puntos de tiempo correspondientes. La función genera las posiciones, velocidades y aceleraciones en las muestras de tiempo dadas, q
,qd
,qdd
,pp
] = cubicpolytraj(wayPoints
,timePoints
,tSamples
)tSamples
. También devuelve la forma polinómica por tramos pp
de la trayectoria polinómica con relación al tiempo.
[
especifica parámetros adicionales como argumentos de par q
,qd
,qdd
,pp
] = cubicpolytraj(___,Name,Value
)Name,Value
utilizando cualquier combinación de las sintaxis anteriores.
Ejemplos
Calcular la trayectoria cúbica para movimientos planos en 2D
Utilice la función cubicpolytraj
con un conjunto determinado de waypoints xy en 2D. También se proporcionan puntos de tiempo para los waypoints.
wpts = [1 4 4 3 -2 0; 0 1 2 4 3 1]; tpts = 0:5;
Especifique un vector de tiempo para el muestreo de la trayectoria. Realice el muestreo con un intervalo menor que los puntos de tiempo especificados.
tvec = 0:0.01:5;
Calcule la trayectoria cúbica. La función genera las posiciones de la trayectoria (q
), la velocidad (qd
), la aceleración (qdd
) y los coeficientes polinómicos (pp
) del polinomio cúbico.
[q, qd, qdd, pp] = cubicpolytraj(wpts, tpts, tvec);
Represente las trayectorias cúbicas de las posiciones x e y. Compare la trayectoria con cada waypoint.
plot(tvec, q) hold all plot(tpts, wpts, 'x') xlabel('t') ylabel('Positions') legend('X-positions','Y-positions') hold off
También puede verificar las posiciones reales en el plano 2D. Represente las diferentes filas del vector q
y los waypoints como las posiciones x e y.
figure plot(q(1,:),q(2,:),'-b',wpts(1,:),wpts(2,:),'or') xlabel('X') ylabel('Y')
Argumentos de entrada
wayPoints
— Waypoints para una trayectoria
matriz de n por p
Puntos de los waypoints de la trayectoria, especificados como una matriz de n por p, en la que n es la dimensión de la trayectoria y p es el número de waypoints.
Ejemplo: [1 4 4 3 -2 0; 0 1 2 4 3 1]
Tipos de datos: single
| double
timePoints
— Puntos de tiempo para waypoints de trayectoria
Vector de p elementos
Puntos de tiempo para waypoints de trayectoria, especificados como un vector de p elementos.
Ejemplo: [0 2 4 5 8 10]
Tipos de datos: single
| double
tSamples
— Muestras de tiempo de la trayectoria
Vector de m elementos
Argumentos de par nombre-valor
Especifique pares de argumentos opcionales como Name1=Value1,...,NameN=ValueN
, donde Name
es el nombre del argumento y Value
es el valor correspondiente. Los argumentos nombre-valor deben aparecer después de los otros argumentos, pero el orden de los pares no importa.
En versiones anteriores a R2021a, use comas para separar cada nombre y valor, y encierre Name
entre comillas.
Ejemplo: 'VelocityBoundaryCondition',[1 0 -1 -1 0 0; 1 1 1 -1 -1 -1]
VelocityBoundaryCondition
— Condiciones límite de velocidad de cada waypoint
zeroes(n,p)
(predeterminado) | matriz de n por p
Condiciones límite de velocidad de cada waypoint, especificadas como un par separado por comas compuesto por 'VelocityBoundaryCondition'
y una matriz de n por p. Cada fila se corresponde a la velocidad en todos los waypoints p para la variable respectiva en la trayectoria.
Ejemplo: [1 0 -1 -1 0 0; 1 1 1 -1 -1 -1]
Tipos de datos: single
| double
Argumentos de salida
q
— Posiciones de trayectoria
Vector de m elementos
Las posiciones de la trayectoria en las muestras de tiempo dadas en tSamples
, devueltas como un vector de m elementos, donde m es la longitud de tSamples
.
Tipos de datos: single
| double
qd
— Velocidades de trayectoria
vector
Velocidades de la trayectoria en las muestras de tiempo dadas en tSamples
, devueltas como vector.
Tipos de datos: single
| double
qdd
— Aceleraciones de trayectoria
vector
Aceleraciones de la trayectoria en las muestras de tiempo dadas en tSamples
, devueltas como vector.
Tipos de datos: single
| double
pp
— Polinomio por tramos
estructura
Polinomio por tramos, devuelto como una estructura que define el polinomio de cada sección de la trayectoria por tramos. Puede crear sus propios polinomios por tramos utilizando mkpp
, o evaluar el polinomio en los tiempos especificados mediante ppval
. La estructura contiene los siguientes campos:
form
:'pp'
.breaks
: el vector de p elementos de los tiempos en los que la trayectoria por tramos cambia de forma. p es el número de waypoints.coefs
: matriz de n (p–1) pororder
para los coeficientes de los polinomios. n (p–1) es la dimensión de la trayectoria multiplicada por el número depieces
. Cada conjunto de n filas define los coeficientes del polinomio que ha descrito cada trayectoria variable.pieces
: p–1. El número de breaks menos 1.order
: El grado del polinomio +1. Por ejemplo, los polinomios cúbicos son de grado cuatro.dim
: n. La dimensión de las posiciones de los puntos de control.
Capacidades ampliadas
Generación de código C/C++
Genere código C y C++ mediante MATLAB® Coder™.
Historial de versiones
Introducido en R2019a
Consulte también
bsplinepolytraj
| contopptraj
| quinticpolytraj
| rottraj
| transformtraj
| trapveltraj
Comando de MATLAB
Ha hecho clic en un enlace que corresponde a este comando de MATLAB:
Ejecute el comando introduciéndolo en la ventana de comandos de MATLAB. Los navegadores web no admiten comandos de 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)