option
Cuestiones
ayuda
daypo
buscar.php

ROBOTICA MOVIL

COMENTARIOS ESTADÍSTICAS RÉCORDS
REALIZAR TEST
Título del Test:
ROBOTICA MOVIL

Descripción:
parcial robotica movil

Fecha de Creación: 2024/11/19

Categoría: Universidad

Número Preguntas: 29

Valoración:(0)
COMPARTE EL TEST
Nuevo ComentarioNuevo Comentario
Comentarios
NO HAY REGISTROS
Temario:

El comando rostopic echo <nombre de tópico>. a. Las demás respuestas son erróneas. b. Rostopic es un comando para acceder a información sobre la lista de topics del sistema, pero no existe el modificador echo. c. Muestra por pantalla los mensajes que se están publicando en el topic indicado. d. No es un comando válido de ROS Índigo.

El nodo A publica mensajes en el topic T, al que está suscrito el nodo B. ¿Qué ocurre si deja de funcionar el ros master?. El nodo A ya no podrá publicar más mensajes. El nodo B ya no podrá recibir más mensajes. Un tercer nodo C podrá suscribirse al topic T y empezar a recibir mensajes. Las demás respuestas son erróneas.

En el proceso de localización basado en Filtro de Partículas. Todas las partículas se mantienen en cada paso del algoritmo con la misma probabilidad. En cada paso se produce una selección de las partículas en función del peso que se le haya asignado. No influye el modelo del sensor, sólo sus mediciones. Cuanto mayor es la discrepancia entre la medida real y la simulada, mayor será el peso de una partícula.

Considerar modelos probabilísticos para robótica móvil. Selecciona una o más de una: Se ajusta a la realidad en la que podemos encontrarnos con situaciones no ideales. Resulta totalmente innecesario y complica la matemática del problema. Permite estimar la pose del robot aún en presencia de fuentes de errores. La odometría de los robots suele ser tan fiable y precisa que no es necesario considerar modelos probabilísticos.

En el método de localización basado en LSE y considerando modelos del sensor no lineales y medidas sólo de rango. Se puede implementar el hecho de que haya medidas más fiables que otras incluyendo una matriz de pesos. Las medidas de todos los sensores deben ser igual de fiables (misma matriz de covarianza). Podemos estimar la pose del robot, tanto posición como orientación. Devolverá siempre la pose ground_truth.

Qué afirmaciones son ciertas sobre ROS. Es multiplataforma. No existe ningún módulo diferenciado en la arquitectura. Existe un nodo "master” que conoce los posibles topics y quien los publica. Está basada en una comunicación peer-to-peer. Está basada en una topología de estrella.

En ROS, la instrucción ros::NodeHandle n;. Es imprescindible para que el nodo pueda funcionar. Es incorrecta; siempre daría un error al incluirla en el código de un nodo. Es opcional y sólo se usa para acceder a los parámetros del nodo. Una vez declarada, la variable n permite al nodo anunciar y suscribirse a topics.

En un modelo de movimiento probabilístico basado en filtro de partículas (sin ningún tipo de información sensorial): Cada partícula sólo representa la posición <x,y> del robot y nunca su orientación. La dispersión de las partículas decrece con el tiempo, a medida que el robot recorre más distancia. La dispersión de las partículas depende de la sigma del modelo de movimiento del robot. Cada partícula representa una posible pose del robot.

En ROS, un servicio: Implementa una comunicación uno a uno entre un cliente y un servidor. Es igual que un topic, pero pudiendo llevar datos asociados como parámetros. No presenta ninguna diferencia con los topics; ambos ejecutan una función. Implementa una comunicación uno a muchos, proveyendo el servicio a todos los que se hayan suscrito a él.

En un modelo de movimiento probabilístico basado en filtro de partículas, utilizando localización mediante beacons: No hay ruido. Como conocemos las posiciones exactas de los beacons, podemos calcular la posición real del robot. Cada partícula lleva asociado un peso que indica cómo de bien representa la pose del robot. La dispersión de las partículas siempre decrece con el tiempo, a medida que el robot recorre más distancia, independientemente de si observa o no un beacon. Existen dos fuentes de ruido, el debido al sensor y el debido al movimiento del robot.

En ROS, la instrucción ros::ServiceServer s1= n.advertiseService ("name”,func);. Declara un manejador de servicios, que maneja un servicio denominado "name”. Las demás respuestas son falsas. Declara un manejador de servicios, que maneja un servicio denominado "func”. Declara un manejador de servicios, que maneja un servicio denominado "s1". Permite a un nodo suscribirse al topic "name”, estableciendo "func” como función de callback.

Con respecto al número de landmarks utilizados en la estimación de posición LSE…. No influye en el resultado. Cuantos más landmarks haya visibles en cada momento, mejor será la estimación de la posición. Siempre bastan dos landmarks, para estimar correctamente la posición X e Y. Influyen, aumentando el peso de cada una de las estimaciones calculadas.

El método de localización general basado en LSE con modelos no lineales: Permite una localización precisa incluso en ausencia de medidas. No se puede resolver, siempre debe ser mediante modelos lineales. Puede resolverse en un solo paso, ya que hay una solución basada en una fórmula cerrada. Es un método iterativo.

En ROS, qué afirmaciones son correctas. Selecciona una o más de una: La comunicación entre nodos, una vez establecida, es punto a punto. bnv. La comunicación se lleva a cabo a través de una pizarra compartida. Todas las respuestas son ciertas. El intercambio de información entre nodos pasa siempre por el master que actúa como intermediario en el envío/recepción de datos. El nodo "máster” actúa registrando los nodos del sistema y los topics/servicios que están activos en cada momento.

En la localización basada en Filtro de Partículas. El número de partículas no influye en nada en el resultado final. Las otras respuestas son falsas. El peso asignado a cualquiera de las partículas es proporcional a la distancia del robot a cada uno de los landmarks. No requiere de información sensorial.

Sobre el método de localización basado en Filtro de Partículas en 2D, ¿cuál de las siguientes afirmaciones es correcta?. La pose estimada no tiene que coincidir con el ground-truth, por lo que habrá error en la localización. Las partículas solo representan la posición (x,y) del robot. La pose estimada del robot se puede obtener de diferentes formas a partir de la nube de partículas. De todas las partículas, una, al menos, coincide con la posición odómetrica del robot. De todas las partículas, una, al menos coincide con la posición real (ground-truth) del robot.

En ROS2, ¿cuáles son las opciones correctas referentes a la publicación y suscripción de tópics?. Ninguna de las respuestas es correcta. Un nodo puede publicar en diferentes tópics, pero no puede suscribirse a diferentes tópics(esto resultaría en un error de compilación). Un nodo puede publicar en diferentes tópics y suscribirse a diferentes tópics, pero solo si esos tópics pertenecen al mismo paquete. Un nodo puede publicar en diferentes tópics y suscribirse a diferentes tópics de cualquier paquete. En ROS2, publicar o suscribirse a un tópics se refiere al uso de un servicio.

En ROS2, la instrucción Variable = this -> create_service<service>("name", std::bind(&Class::function, this, _1, _2, _3));. Es incorrecta; no es la forma de declarar un servidor de servicios. Permite a un nodo suscribirse a topic “name”, estableciendo Class::function como función de callback. Declara un servidor de servicios, que maneja un servicio denominado “function”. Las demás respuestas son falsas. Declara un servidor de servicios, con el nombre “name” y cuyo tipo es Service.

El nodo A publica mensajes por el topic T, al que esta suscrito el nodo B ¿Qué ocurre si el nodo B deja de funcionar?. La publicación se queda suspendida hasta que el nodo C se suscriba al topic . El nodo A se cierra automáticamente cuando no hay suscriptores. Las demás respuestas son incorrectas. El nodo A ya no podrá publicar mensajes para dicho topic ya que no hay nadie suscrito.

Sobre la función de asignación de pesos en la localización basada en el filtro de partículas. Se puede usar casi cualquier función, con tal de que sea continua y derivable. Asignará un peso proporcional a la distancia desde el robot (ground truth) hasta el landmark seleccionado. Es una función F(x) donde x es la pose odométrica del robot. Es una función F(x) donde x es la pose estimada del robot. Las demás opciones son falsas.

En una aplicación típica de robótica móvil: No hacen falta sensores propioceptivos, ya que toda la información la podemos obtener fácilmente utilizando sensores exteroceptivos. No hacen falta sensores exteroceptivos, ya que no es necesario percibir el entorno. Son necesarios tanto sensores exteroceptivos como propioceptivos. Se utilizan sensores propioceptivos, como un láser, para percibir posibles obstáculos en el entorno del robot.

En ROS2, el nodo N se subscribe a un topic empleando la siguiente instrucción: Sub_=this->create_subscription<T>("name",1,std::bind(&myClass::callBack,this,_1)); Selecciona todas las respuestas correctas: El nodo n establecerá la frecuencia a la que se ejecuta la función callback mediante las instrucciones "rclcpp::Rate" y "sleep". Ninguna de las demás respuestas es correcta. El nodo N no puede controlar la frecuencia a la que se ejecuta la función callback pero sí puede controlar la frecuencia a la que se comprueba si hay mensajes por atender en el topic T. El nodo N establecerá la frecuencia a la que se ejecuta la función callback mediante la llamada a rclcpp::spin(N). La frecuencia a la que se ejecuta la función está indicada en la instrucción, en este caso 1 Hz.

El comando colcon build. Sirve para configurar el sistema Ros2 se ejecuta al abrir la consola. Sirve para compilar nuestro código. Se debe ejecutar siempre en la carpeta raíz del workspace. Se puede ejecutar desde cualquier directorio. Ros2 sabe por defecto dónde crear las carpetas install, build y log.

Para el método de localización general basado en LSE con modelos no lineales, selecciona todas las respuestas correctas: El ruido no afecta, puesto que es un sistema de localización probabilístico y por tanto robusto al ruido. El ruido no afecta en la realidad coma solo en las simulaciones de Matlab por ser cálculos numéricos. Es un método iterativo porque se considera ruido en las medidas sensoriales. Con un sensor perfecto (sin ruido) se obtendría una solución en un solo paso. El ruido asociado al modelo de movimiento no afecta, puesto que es independiente del ruido sensorial. El ruido asociado a las medidas sensoriales si afecta el resultado. Ninguna de las otras preguntas es correcta.

Los sensores láser… selecciona una o más de una: Son tan pesados que no pueden ser fácilmente instalados en un robot móvil. Son relativamente caros, aunque muy precisos y tienen un alcance considerable. No se utilizan para la detección de obstáculos dada su baja resolución angular. Realizan un barrido 2D del entorno mediante la rotación de un espejo en su interior.

En ROS2, reacionado con las instrucciones rclcpp::spin y rcl::spin_some, marca todas las respuestas correctas: Ambas son funciones que ofrece Ros2 para atender a los topics a los que el nodo está suscrito, ejecutando las funciones callback correspondientes. Ninguna de las otras respuestas es correcta. Son iguales, se usa una o la otra dependiendo de si queremos publicar a 1 Hz o no. La instrucción rclcpp::spin es similar a un bucle infinito en el que se comprueba continuamente si llega algún mensaje por el topic al que estamos suscritos while (rclcpp::ok()){rclcpp::spin_some(node);}. La instrucción rclcpp::spin_some es similar a un bucle infinito en el que se ejecuta únicamente la instrucción rclcpp::spin. La instrucción rclcpp::spin solo se emplea cuando el nodo está suscrito a más de un topic.

En ROS2, suponiendo que el resto de código es correcto y todas las variables están declaradas en: Int main(int argc, char**argv){ Int a; … a = 3; rclcpp::spin(node); a = a* 9; RCLCPP_INFO(this->get_logger(),"a vale %d",a); return 0; }. Se mostrará por pantalla el valor de la variable a, es decir, 27, durante la correcta ejecución del nodo. Dará un error ya que no se ha incluido el bucle while(while(rclcpp::ok())) Para hacer la llamada a rclcpp::spin(node);. Durante el correcto funcionamiento del nodo no se ejecutará ninguna instrucción detrás de rclcpp::spin();. Ninguna de las demás respuestas son válidas. Se mostrará un valor indeterminado de la variable a, ya que dependerá de las funciones de callback implementadas en el programa.

En ROS2 el comando: ros2 interface show <nombre_del_servicio>: Las demás respuestas son erróneas. Mostrará información del servicio que hemos referenciado por su nombre. Dará un error ya que Ros2 interface show solo se aplica a topics, no a servicios. Dará error porque no le debe pasar el nombre del servicio sino su tipo.

El método de localización general basado en LSE con modelos no lineales… selecciona una: La fórmula utilizada proporciona en un solo paso la mejor estimación en base a la pose odométrica del robot (semilla) y a las medidas de los landmarks. Permite localizar el robot incluso en ausencia de medidas. Las demás opciones son falsas. No tiene en cuenta que las medidas sensoriales están afectadas por ruido.

Denunciar Test