waypointTrajectory
Generador de trayectoria de waypoint
Descripción
waypointTrajectory System object™ genera trayectorias basadas en puntos de referencia específicos. Al crear el System object, puede elegir especificar el tiempo de llegada, la velocidad o la velocidad respecto al suelo en cada punto de referencia. Opcionalmente, puede especificar otras propiedades, como la orientación en cada punto de referencia. Consulte Algoritmos para obtener más detalles.
Para generar una trayectoria a partir de waypoints:
Cree el objeto
waypointTrajectoryy configure sus propiedades.Llame al objeto como si fuera una función.
Para obtener más información sobre cómo funcionan los objetos del sistema, consulte ¿Qué son los objetos del sistema?.
Creación
Sintaxis
Descripción
devuelve un System object, trajectory = waypointTrajectorytrajectory, que genera una trayectoria basada en puntos de referencia estacionarios predeterminados.
especifica la hora de llegada en la que la trayectoria generada pasa por cada punto de referencia. Consulte la propiedad trajectory = waypointTrajectory(Waypoints,TimeOfArrival)TimeOfArrival para obtener más detalles.
Sugerencia
Cuando especifique el argumento TimeOfArrival, no debe especificar estas propiedades:
JerkLimitInitialTimeWaitTime
especifica la velocidad respecto al suelo a la que pasa la trayectoria generada en cada punto de referencia. Consulte la propiedad trajectory = waypointTrajectory(Waypoints,GroundSpeed=groundSpeed)GroundSpeed para obtener más detalles.
especifica la velocidad a la que pasa la trayectoria generada en cada punto de referencia. Consulte la propiedad trajectory = waypointTrajectory(Waypoints,Velocities=velocities)Velocities para obtener más detalles.
establece cada propiedad utilizando argumentos de nombre-valor. Las propiedades no especificadas tienen valores predeterminados o inferidos. Puede utilizar esta sintaxis con cualquiera de las sintaxis anteriores.trajectory = waypointTrajectory(___,Name=Value)
Ejemplo: trajectory = waypointTrajectory([10,10,0;20,20,0;20,20,10],[0,0.5,10]) crea una trayectoria de punto de referencia System object, trajectory, que comienza en el punto de referencia [10,10,0] y luego pasa por [20,20,0] después de 0,5 segundos y [20,20,10] después de 10 segundos.
Propiedades
Uso
Descripción
[ genera un marco de datos de trayectoria basado en argumentos y propiedades de creación especificados.position,orientation,velocity,acceleration,angularVelocity] = trajectory()
Argumentos de salida
Funciones del objeto
Para usar una función de objeto, especifique el System object como el primer argumento de entrada. Por ejemplo, para liberar recursos de sistema de un System object llamado obj, utilice la siguiente sintaxis:
release(obj)
Ejemplos
Algoritmos
waypointTrajectory System object define una trayectoria que pasa suavemente por puntos de referencia. La trayectoria conecta los puntos de referencia a través de una interpolación que asume que la dirección de la gravedad expresada en el marco de referencia de la trayectoria es constante. Generalmente, puedes usar waypointTrajectory para modelar trayectorias de plataformas o vehículos dentro de un lapso de distancia de cientos de kilómetros.
La trayectoria plana (proyección del plano x-y) consta de curvas clotoides fragmentadas. La curvatura de la curva entre dos puntos de referencia consecutivos varía linealmente con la longitud de la curva entre ellos. La dirección tangente de la ruta en cada punto de referencia se elige para minimizar las discontinuidades en la curvatura, a menos que el curso se especifique explícitamente a través de la propiedad Course o implícitamente a través de la propiedad Velocities. Una vez establecido la ruta, el objeto utiliza la interpolación cúbica de Hermite para calcular la ubicación del vehículo a lo largo de la ruta en función del tiempo y la distancia plana recorrida. Si se especifica la propiedad JerkLimit, los objetos producen un perfil de aceleración trapezoidal horizontal para cualquier segmento que se encuentre entre dos puntos de referencia. El perfil de aceleración trapezoidal consta de tres subsegmentos:
Un subsegmento de sacudida de magnitud constante
Un subsegmento de aceleración de magnitud constante
Un subsegmento de sacudida de magnitud constante
El componente normal (componente z) de la trayectoria se elige posteriormente para satisfacer un spline por partes que preserva la forma (PCHIP), a menos que la velocidad de ascenso se especifique explícitamente a través de la propiedad ClimbRate o la tercera columna de la propiedad Velocities. Elija el signo de la velocidad de ascenso en función del ReferenceFrame seleccionado:
Cuando se selecciona un marco de referencia 'ENU', especificar una velocidad de ascenso positiva da como resultado un valor creciente de z.
Cuando se selecciona un marco de referencia 'NED', especificar una velocidad de ascenso positiva da como resultado un valor decreciente de z.
Puede definir la orientación del vehículo a través de la ruta de dos formas principales:
Si se especifica la propiedad
Orientation, entonces el objeto utiliza un spline cuaternionario cúbico por partes para calcular la orientación a lo largo de la ruta en función del tiempo.Si no se especifica la propiedad
Orientation, la guiñada del vehículo siempre estará alineada con la trayectoria. El balanceo y el cabeceo se controlan entonces mediante los valores de propiedadAutoBankyAutoPitch, respectivamente.AutoBankAutoPitchDescripción falsefalseEl vehículo está siempre nivelado (cabeceo y balanceo cero). Esto se utiliza normalmente para embarcaciones marinas grandes. falsetrueEl paso del vehículo está alineado con la trayectoria y su balanceo es siempre cero. Normalmente se utiliza para vehículos terrestres. truefalseEl cabeceo y el balanceo del vehículo se eligen de modo que su eje local z esté alineado con la aceleración neta (incluida la gravedad). Esto se utiliza normalmente para embarcaciones de ala giratoria. truetrueEl balanceo del vehículo se elige de modo que su plano transversal local se alinee con la aceleración neta (incluida la gravedad). El paso del vehículo está alineado con la vía. Normalmente se utiliza para vehículos de dos ruedas y aviones de ala fija.






















