En este artículo voy presentar una mejora del programa que ya puse en el artículo Control remoto con LeJOS de un Kart NXT. Lo que se plantea en este artículo es conseguir un Kart NXT radio-controlado mediante otro NXT (un mando) que funcione eficientemente (tenga retardos factibles, y sea manejable). El de este artículo fue el modelo final que se usó en la competición de Karts del domingo, y el encargado de llevar la cámara (un Iphone 3G). Seguir leyendo →
Category Archives: NXT
Manejo de tareas en LeJOS: clase Arbitrator
En el los artículos Control de tareas en RobotC y Control de prioridades de tareas en RobotC vimos como manejar tareas en RobotC. En este artículo vamos a ver el manejo de tareas en LeJOS: clase Arbitrator. La mejor forma de manejar las tareas y sus prioridades en LeJOS es mediante la clase Arbitrator. Este método consiste en crear unas tareas denominadas comportamientos, no muy complejas, que en su conjunto crearán el programa que deseemos implementar. Seguir leyendo →
Calculadora en NXT-G
Ya vimos cómo hacer una calculadora en RobotC, hoy queremos enseñaros a programar vuestra propia calculadora en NXT-G. Vamos a hacerlo de forma modular, es decir, haremos usos de “Mi bloque” para cada una de las funciones de la calculadora. Lo primero que debemos hacer es comprobar en cuántas funciones queremos dividir el trabajo, nosotros hemos utilizado 6. Seguir leyendo →
Sigue líneas con visión, usando cámara iPhone
Tras una buena cantidad de artículos sobre visión artificial llega por fin el esperado sigue líneas con visión. Las dificultades que implica el manejo de imágenes en tiempo real son muchas, sobre todo el retardo entre que la cámara capta la imagen y nosotros la procesamos y enviamos los datos por bluetooth. Estamos utilizando la cámara de un iPhone 3G conectada mediante wifi al ordenador, enviado imágenes gracias al programa Pocket Cam. Capturamos imágenes periódicamente gracias al programa Yawcam, y las procesamos con LabVIEW, que finalmente enviará las ordenes necesarias al NXT mediante Bluetooth. Seguir leyendo →
Kart NXT controlado remotamente con LeJOS
El objetivo de este artículo es realizar un vehículo NXT controlado remotamente con LeJOS a través de bluetooth. La novedad de este proyecto es que es el primero que realizamos cuya tracción no es diferencial (como los anteriores). Seguir leyendo →
Control de prioridad de tareas en RobotC
En el artículo anterior de RobotC vimos cómo manejar varias tareas, gestionando el uso de recursos compartidos como los motores. En este artículo ampliaré la información sobre el control de prioridad de tareas en RobotC, viendo cómo poner mayor o menor prioridad a una tarea, y el efecto que tiene sobre la ejecución del programa. También veremos en qué consiste la planificación de tareas Round Robin y al final pondré un par de programas de prueba con vídeos incluidos. Seguir leyendo →
Control de tareas en RobotC
El objetivo principal del procesador es ejecutar la secuencia de instrucciones de los programas de entre un posible conjunto de programas. Cuando es uno sólo el programa a ejecutar, podemos intuir fácilmente cuál es la secuencia de operaciones que se está ejecutando sin más que seguir la traza del proceso en curso. La ayuda de los entornos de programación puede ser de valor incalculable cuando nuestra aplicación se complica y son varios los procesos que deben ser procesados. Seguir leyendo →
Robot Multiproceso en NXT-G
Hoy queremos presentar un pequeño experimento realizado por nuestros alumnos en uno de nuestros talleres de robótica. Se trata de un robot que utiliza dos ladrillos NXT que se comunican entre sí mediante bluetooth. Este experimento nos permitirá explorar aún más las posibilidades de interacción bluetooth entre ladrillos, es decir, un robot Multiproceso en NXT-G, fundamental para controles remotos (como ya hemos visto en varios artículos). Pero también para robots que tengan más de un NXT. Seguir leyendo →
LabVIEW para usuarios del NXT (III)
En esta tercera entrega de los artículos tutoriales sobre LabVIEW para usuarios del NXT (III) vamos a ver nuevos sensores, como el de ultrasonido, nuevas estructuras, y otros métodos para usar los motores. Esto nos servirá para ampliar los conocimientos que ya tenemos y así poder crear programas más complejos. Seguir leyendo →
Problema de la deriva en NXT y LeJOS
Estudiamos hoy el problema de la deriva en NXT y LeJOS. Se trata de uno de los problemas que tienen cualquier sistema que tenga que desplazarse, y en particular un robot NXT móvil: la deriva en la navegación. La deriva es el desvío de la trayectoria real respecto de la trayectoria prevista, y se debe a diversos factores. Cuanto menos deriva tenga un robot más preciso será su desplazamiento y menos se desviará de su destino objetivo al finalizar el movimiento. Este problema es muy común con los LEGO Mindstorms NXT debido a que no son robots con una forma única, sino que hay muchos montajes diferentes de robots móviles. La forma en que estén implementados los programas también influye en esta deriva. Seguir leyendo →