Main Content

Esta página se ha traducido mediante traducción automática. Haga clic aquí para ver la última versión en inglés.

connect

Conectar poses para un tipo de conexión determinado

Desde R2019b

Descripción

ejemplo

[pathSegments,pathCosts] = connect(connectionObj,start,goal) conecta las poses inicial y meta utilizando el objeto dubinsConnection especificado. Se devuelve el objeto de segmento de ruta con el coste más bajo.

[pathSegments,pathCosts] = connect(connectionObj,start,goal,'PathSegments','all') devuelve todos los segmentos de ruta posibles como un arreglo de celdas con sus costes asociados.

Ejemplos

contraer todo

Cree un objeto dubinsConnection .

dubConnObj = dubinsConnection;

Defina las poses de inicio y objetivo como vectores [x y theta] .

startPose = [0 0 0];
goalPose = [1 1 pi];

Calcula un segmento de ruta válido para conectar las poses.

[pathSegObj, pathCosts] = connect(dubConnObj,startPose,goalPose);

Muestra la ruta generada.

show(pathSegObj{1})

Figure contains an axes object. The axes object contains 12 objects of type line, scatter. These objects represent Path, Heading, Start Position, Goal Position.

Cree un objeto reedsSheppConnection .

reedsConnObj = reedsSheppConnection;

Defina las poses de inicio y objetivo como vectores [x y theta] .

startPose = [0 0 0];
goalPose = [1 1 pi];

Calcula un segmento de ruta válido para conectar las poses.

[pathSegObj,pathCosts] = connect(reedsConnObj,startPose,goalPose);

Muestra la ruta generada.

show(pathSegObj{1})

Figure contains an axes object. The axes object contains 13 objects of type line, scatter. These objects represent Forward Path, Reverse Path, Heading, Start Position, Goal Position.

Argumentos de entrada

contraer todo

Tipo de conexión de ruta, especificado como objeto dubinsConnection o reedsSheppConnection . Este objeto define los parámetros de la conexión, incluido el radio de giro mínimo del robot y los tipos de movimiento válidos.

Esta propiedad o parámetro es de solo lectura.

Pose inicial del robot al inicio del segmento de ruta, especificada como un vector o matriz [x, y, Θ] . Cada fila de la matriz corresponde a una pose inicial diferente.

x y y están en metros. Θ está en radianes.

La función connect admite:

  • Pose inicial singular con pose de objetivo singular.

  • Pose de inicio múltiple con pose de objetivo singular.

  • Pose inicial singular con pose de múltiples objetivos.

  • Pose de inicio múltiple con pose de objetivo múltiple.

El tamaño del arreglo de celdas pathSegments de salida refleja las opciones de pose singular o múltiple.

Esta propiedad o parámetro es de solo lectura.

Pose objetivo del robot al final del segmento de ruta, especificada como un vector o matriz [x, y, Θ] . Cada fila de la matriz corresponde a una pose objetivo diferente.

x y y están en metros. Θ está en radianes.

La función connect admite:

  • Pose inicial singular con pose de objetivo singular.

  • Pose de inicio múltiple con pose de objetivo singular.

  • Pose inicial singular con pose de múltiples objetivos.

  • Pose de inicio múltiple con pose de objetivo múltiple.

El tamaño del arreglo de celdas pathSegments de salida refleja las opciones de pose singular o múltiple.

Argumentos de salida

contraer todo

Segmentos de ruta, especificados como un arreglo de celdas de objetos. El tipo de objeto depende de la entrada connectionObj. El tamaño del arreglo de celdas depende de si utiliza poses start y goal singulares o múltiples. De forma predeterminada, la función devuelve la ruta con el coste más bajo para cada pose start y goal . Cuando se llama a connect usando el par nombre-valor 'PathSegments','all' , el arreglo de celdas contiene todos los segmentos de ruta válidos entre los start y especificados. $goal poses.

Coste de los segmentos de ruta, especificado como un escalar, vector o matriz numérico positivo. Cada elemento del vector o matriz de costes corresponde a un segmento de ruta en pathSegment. De forma predeterminada, la función devuelve la ruta con el coste más bajo para cada pose inicial y objetivo.

Ejemplo: [7.6484,7.5122]

Capacidades ampliadas

Generación de código C/C++
Genere código C y C++ mediante MATLAB® Coder™.

Historial de versiones

Introducido en R2019b