Telesketch NXT

telesketchTelesketch o Sketch es un juguete inventado en durante los años 50 por el francés Arthur Granjean, fue presentado en la Exhibición Internacional de Juguetes de Nuremburg, Alemania en 1959. Tardaría solamente un año en ser comercializado en Estados Unidos con el nombre de Etch-A-Sketch por Ohio Art Company y en España por Borrás. Granjean lo llamó originalmente “la Pantalla Mágica”.
Seguir leyendo →

Control de prioridad de tareas en RobotC

Round RobinEn 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 →

Las posibilidades del DataLog, by Erling

ExcelAl hablar de robótica inmediatamente nos imaginamos máquinas capaces de andar, de moverse o de actuar de forma inteligente. Muchas de ellas solo están, aún, en nuestra imaginación, otras las vamos realizando a pequeña escala con nuestro NXT. En este artículo trabajamos algo menos conocido, pero necesario, las posibilidades del DataLog. Seguir leyendo →

Deteccion y esquiva de obstáculos: RobotC

DistanciaDeteccion y navegación esquivando objetos

En artículos anteriores como el artículo sobre reconocimiento básico de objetos con OpenCV y el artículo sobre segmentación básica en OpenCV hemos visto cómo realizar una deteccion de objetos de un determinado color en una imagen, e incluso calcular sus puntos medios y distancias entre ellos. En el artículo de hoy vamos a aplicar todos estos conocimientos para realizar un ejemplo práctico en el que gracias a dos imágenes tomadas por la cámara sabremos dónde se encuentran dos bolas rojas respecto al Robot, y lograremos esquivarlas con el robot mientras se mueve en línea recta. Seguir leyendo →

NXT Sonar 3D en RobotC con coordenadas esféricas

Coord_sysEl objetivo de este experimento es lograr una representación de la visión que obtiene el robot mediante un movimiento del sonar en dos ejes. Para ello se ha situado al sensor ultrasónico en una plataforma capaz de moverse con dos grados de libertad y se han realizado lecturas medidas en varias posiciones. NXT Sonar 3D en RobotC con coordenadas esféricas: haremos una representación transformando los datos obtenidos anteriormente a coordenadas esféricas. Seguir leyendo →

Manejo de Ficheros en robotC

ficheros en robotc - electricbricksUna de las funcionalidades más pobres, peor implementadas, y con menor documentación de robotC es el manejo de ficheros. El manejo de ficheros es una herramienta muy útil que nos puede servir para guardar información y usarla con otros programas, independientemente de su lenguaje de programación. Por tanto es la universalidad de los ficheros la que nos permitiría comunicar robotC con otro programa de cualquier lenguaje. Sin embargo los creadores de robotC no vieron está utilidad cómo algo importante, y por tanto no han implementado la funcionalidad necesaria para el correcto manejo de ficheros. Seguir leyendo →

Vehículos de Braitenberg en RobotC

FrontalLos vehículos de Braitenberg fueron concebidos por el investigador Italo-Autriaco Valentino Braitenberg para ilustrar de manera evolutiva las habilidades de agentes simples. Los vehículos representan la forma más simple de inteligencia artificial basada en comportamientos o conocimiento corporal, por ejemplo el comportamiento inteligente que surje de la interacción sensor-motor entre el agente y su entorno, sin necesidad de una memoria interna, representación del entorno, o inferencia. Hoy probamos los vehículos de Braitenberg en RobotC. Seguir leyendo →