miércoles, 1 de junio de 2011

ROBOTICA


La ro-botica es una ciencia  o rama de la tecnología, que estudia el diseño y construcción de maquinas capaces de desempeñar tareas realizadas por el ser humano o que requieren del uso de inteligencia. Las ciencias y tecnologías de las que deriva podrían ser: el álgebra, los autómatas programables, las maquinas de estados, la mecánica o la informática.
De forma general, la ro-botica se define como: el conjunto de conocimientos teóricos y prácticos que permiten concebir, realizar y automatizar sistemas basados en estructuras mecánicas poli articulados, dotados de un determinado grado de "inteligencia" y destinados a la producción industrial o a la sustitución del hombre en muy diversas tareas.




CLASIFICACION DE LOS ROBOTS

Según su cronología:
La que a continuación se presenta es la clasificación más común:
 1ª Generación.
Manipuladores. Son sistemas mecánicos multifuncionales con un sencillo sistema de control, bien manual, de secuencia fija o de secuencia variable.

  2ª Generación.
Robots de aprendizaje. Repiten una secuencia de movimientos que ha sido ejecutada previamente por un operador humano. El modo de hacerlo es a través de un dispositivo mecánico. El operador realiza los movimientos requeridos mientras el robot le sigue y los memoriza.

3ª Generación.
Robots con control sensorizado. El controlador es una computadora que ejecuta las órdenes de un programa y las envía al manipulador para que realice los movimientos necesarios.

 4ª Generación.
Robots inteligentes. Son similares a los anteriores, pero además poseen sensores que envían información a la computadora de control sobre el estado del proceso. Esto permite una toma inteligente de decisiones y el control del proceso en tiempo real.

Según su arquitectura
La arquitectura, es definida por el tipo de configuración general del Robot, puede ser metamórfica. El concepto de metamorfismo, de reciente aparición, se ha introducido para incrementar la flexibilidad funcional de un Robot a través del cambio de su configuración por el propio Robot. El metamorfismo admite diversos niveles, desde los más elementales (cambio de herramienta o de efecto terminal), hasta los más complejos como el cambio o alteración de algunos de sus elementos o subsistemas estructurales. Los dispositivos y mecanismos que pueden agruparse bajo la denominación genérica del Robot, tal como se ha indicado, son muy diversos y es por tanto difícil establecer una clasificación coherente de los mismos que resista un análisis crítico y riguroso. La subdivisión de los Robots, con base en su arquitectura, se hace en los siguientes grupos: Poliarticulados, Móviles, Androides, Zoomórficos e Híbridos.
  1. Poliarticulados
En este grupo están los Robots de muy diversa forma y configuración cuya característica común es la de ser básicamente sedentarios (aunque excepcionalmente pueden ser guiados para efectuar desplazamientos limitados) y estar estructurados para mover sus elementos terminales en un determinado espacio de trabajo según uno o más sistemas de coordenadas y con un número limitado de grados de libertad. En este grupo se encuentran los manipuladores, los Robots industriales, los Robots cartesianos y se emplean cuando es preciso abarcar una zona de trabajo relativamente amplia o alargada, actuar sobre objetos con un plano de simetría vertical o reducir el espacio ocupado en el suelo.

§  2. Móviles
Son Robots con gran capacidad de desplazamiento, basados en carros o plataformas y dotados de un sistema locomotor de tipo rodante. Siguen su camino por telemando o guiándose por la información recibida de su entorno a través de sus sensores. Estos Robots aseguran el transporte de piezas de un punto a otro de una cadena de fabricación. Guiados mediante pistas materializadas a través de la radiación electromagnética de circuitos empotrados en el suelo, o a través de bandas detectadas fotoeléctricamente, pueden incluso llegar a sortear obstáculos y están dotados de un nivel relativamente elevado de inteligencia.

§  3. Androides
Son Robots que intentan reproducir total o parcialmente la forma y el comportamiento cinemática del ser humano. Actualmente los androides son todavía dispositivos muy poco evolucionados y sin utilidad práctica, y destinados, fundamentalmente, al estudio y experimentación. Uno de los aspectos más complejos de estos Robots, y sobre el que se centra la mayoría de los trabajos, es el de la locomoción bípeda. En este caso, el principal problema es controlar dinámica y coordinadamente en el tiempo real el proceso y mantener simultáneamente el equilibrio del Robot.

§  4. Zoomórficos
Los Robots zoomórficos, que considerados en sentido no restrictivo podrían incluir también a los androides, constituyen una clase caracterizada principalmente por sus sistemas de locomoción que imitan a los diversos seres vivos. A pesar de la disparidad morfológica de sus posibles sistemas de locomoción es conveniente agrupar a los Robots zoomórficos en dos categorías principales: caminadores y no caminadores. El grupo de los Robots zoomórficos no caminadores está muy poco evolucionado. Los experimentados efectuados en Japón basados en segmentos cilíndricos biselados acoplados axialmente entre sí y dotados de un movimiento relativo de rotación. Los Robots zoomórficos caminadores multípedos son muy numeroso y están siendo experimentados en diversos laboratorios con vistas al desarrollo posterior de verdaderos vehículos terrenos, piloteando o autónomos, capaces de evolucionar en superficies muy accidentadas. Las aplicaciones de estos Robots serán interesantes en el campo de la exploración espacial y en el estudio de los volcanes.

  5. Híbridos
corresponden a aquellos de difícil clasificación cuya estructura se sitúa en combinación con alguna de las anteriores ya expuestas, bien sea por conjunción o por yuxtaposición. Por ejemplo, un dispositivo segmentado articulado y con ruedas, es al mismo tiempo uno de los atributos de los Robots móviles y de los Robots zoomórficos. De igual forma pueden considerarse híbridos algunos Robots formados por la yuxtaposición de un cuerpo formado por un carro móvil y de un brazo semejante al de los Robots industriales. En parecida situación se encuentran algunos Robots antropomorfos y que no pueden clasificarse ni como móviles ni como androides, tal es el caso de los Robots personales.

CONCLUSION

CUANDO LAS MAQUINAS IMITAN A LOS HOMBRES
Si bien el hombre ha buscado crear maquinas que puedan realizar las mismas tareas que el, ahora su meta va mas allá: lograr que estas no solo reproduzcan conductas inteligentes, sino que lo hagan utilizando  los mismo principios que se han descubierto en los seres vivos y en particular el hombre. 
Esta ciencia llamada ro botica etológica o fisiológica pretende que la naturaleza indique los caminos. Estos robots permiten a los investigadores entender algunas funciones imposibles de desentrañar directamente a través de la experimentación animal.

LEGO MINDSTORMS




Lego Mindstorms es un juego de robótica para niños fabricado por la empresa Lego, el cual posee elementos básicos de las teorías robóticas, como la unión de piezas y la programación de acciones, en forma interactiva. Este robot fue comercializado por primera vez en septiembre de 1998.
Comercialmente se publicita como «Robotic Invention System», en español Sistema de Invención Robotizado (RIS). También se vende como herramienta educacional, lo que originalmente se pensó en una sociedad entre Lego y el MIT. La versión educativa se llama «Lego Mindstorms for Schools», en español Lego Mindstorms para la escuela y viene con un software de programación basado en la GUI de Robolab.
Lego Mindstorms puede ser usado para construir un modelo de sistema integrado con partes electromecánicas controladas por computador. Prácticamente todo puede ser representado con las piezas tal como en la vida real, como un elevador o robots industriales.

BLOQUE RCX




El bloque RCX es la parte central del Lego Mindstorms, ya que aquí se encuentra toda la parte lógica y electrónica que permite la mayoría de las acciones del robot, almacenándose hasta 5 programas que se pueden cargar en su memoria interna, y guardándose allí el firmware básico para el control de los distintos dispositivos que se pueden conectar al bloque.
El bloque RCX tiene tres versiones oficiales: 1.0, 1.5 y 2.0, las cuales presentan mejoras en el software sin verse afectado mayormente el hardware que se vende con el bloque, sin embargo, la parte electrónica de los bloques no es compatible, ya que las tres versiones poseen distintas regulaciones de voltaje, pero aun así no afecta el hardware que posee el bloque.
Micro controlador
Su micro controlador interno es Hitachi H8/3292, que funciona a 5 volts y una velocidad aproximada de 16 Mhz, siendo esa su velocidad máxima para la serie de Hitachi H8/3000. Posee una memoria ROM de 16 Kb, una memoria RAM externa de 32 Kb y posee un decodificador Analógico Digital que permite transformar las distintas entradas de energía en bits. Su empaque original es de un circuito impreso, que carece de zócalos de conexión, y se encuentra soldada a la base del circuito impreso del bloque. Este microcontrolador puede procesar varias instrucciones por segundos, pero su mayor desventaja comparado con el Lego Mindstorms NXT es la baja capacidad de mantener hilos de procesos, es decir, no puede ejecutar dos instrucciones al mismo tiempo, y a pesar que el programador o usuario compruebe que si puede, no es así, sino que la velocidad de proceso impide distinguir el retardo producido.
Entradas y salidas
Como medio de entradas posee tres conectores que permite capturar la información que proviene del los distintos sensores. Las entradas se conforma por un bloque de 2x2, que sus cabezas se encuentran rodeadas de un material conductor que permite la lectura del sensor. Las entradas se ubican en la parte superior de la pantalla de LCD, son de color gris y se distinguen por los números 1, 2 y 3.
Las salidas del bloque RCX son para energizar los motores que se pueden conectar al robot y así darle movimiento. El voltaje que provee es de 9 volts, haciendo que cada motor que se conecte al bloque pueda moverse acorde a las instrucciones del programa. Las salidas de energía se encuentran en la parte inferior de la pantalla de LCD, son de color negro y se distinguen por las letras A, B y C.
Pantalla LCD                                          
La pantalla de LCD que trae el Lego Mindstorms permite visualizar tres zonas de datos:
§  Superior, detección en las entradas de los sensores y el nivel de carga de las baterías.
§  Central, zona alfanumérica que permite ver el contador, temporizador o valores registrados por un sensor.
§  Inferior, indica el sentido de movimiento de los motores.
§  Lateral izquierdo, muestra si hay conexión inalámbrica mediante el puerto infrarrojo
En su modo de operación, la pantalla de LCD posee un contador de ejecución de despliegue las veces y el tiempo que se ha ejecutado el programa, indica el número del programa que se está ejecutando y muestra la imagen de una persona que se encuentra de dos posibles formas, en estado de detención, la representación de la persona está detenida, y cuando se ejecuta un programa, ésta se encuentra en movimiento.
Además, si se selecciona un sensor, permite ver el valor registrado por el sensor, en una medida de RAW que se despliega sin importar el tipo de sensor que se encuentre conectado a la entrada.
Si el bloque no posee el firmware básico, no se muestra el contador de programa ni se ejecutan los programas 2, 3, 4 y 5, sólo permitiendo que el primer programa muestre que funciona la salida de corriente y entrada de datos. Además, la persona se mantiene fija aunque se encuentre en ejecución el programa 1 del bloque.
Esta salida de LCD ayuda al programador en caso que quiera hacer reemplazo del framework, ya que permite la salida de datos en pantalla, para generar una salida de estado de cualquier elemento interno del bloque.
Puerto infrarrojo y comunicación
En la parte delantera del bloque RCX, el Lego Mindstorms trae un puerto infrarrojo que le permite la comunicación con el computador para transferir el firmware y los programas. Funciona a una frecuencia de 37 Khz, que se asemeja a un control remoto de un televisor, transmitiendo datos a una velocidad aproximada de 2.400 bps, lo que implica que cada bit se transmite a 417 us.
Una de las cualidades del puerto infrarrojo es la capacidad de conectarse a otro dispositivo que posea el puerto, como Palms, computadores portátiles y algunos modelos de teléfonos móviles, lo que permite realizar pequeñas plataformas de comunicaciones para lugares recónditos o muy pequeños.
La distancia de separación entre el RCX y el receptor es como máximo a 30 cm, funcionando a su máxima capacidad desde la base de la torre y sin objetos que interfieran la visual entre ambos instrumentos. Sin embargo, la distancia es menor debido a la contaminación lumínica que puede existir en el cuarto.
Alimentación eléctrica
La alimentación eléctrica del bloque es mediante 6 baterías AA de 1,5 volts, las cuales se conectan en la parte posterior del bloque. Las baterías se conectan en paralelo y proporcionan energía tanto al bloque como a los motores que se conectan al mismo bloque.
Una advertencia que se realiza en el manual de Lego Mindstorms es el reemplazo de las baterías, que ella alimenta a la pila que se encuentra dentro del bloque, permitiendo almacenar los distintos programas y el firmware básico. Si el reemplazo demora más de 1 minuto, la información almacenada se pierde. Otra advertencia que se realiza a los usuarios es que se evite utilizar baterías recarga bles debido a que entregan menor o mayor potencia el bloque, produciendo que el sistema eléctrico sea susceptible a fallos.
Se puede programar la desconexión de la alimentación eléctrica mediante el software incluido en el juego de Lego Mindstorms, donde se puede especificar el tiempo de apagado, desde 1 minuto hasta 99 minutos, e inclusive deshabilitar el apagado automático. Además, el mismo programa indica el nivel de carga que poseen las baterías del robot, mostrado por una barra de color verde cuando está cargado y ésta varía hasta rojo cuando se descarga completamente.
Cuando se descarga la batería del robot, este emite un sonido constante hasta que se presiona la tecla de apagado, indicando que las baterías se han agotado.

BLOQUE NXT




El bloque NXT es una versión mejorada a partir de Lego Mindstorms RCX, que generalmente se considera la predecesora y precursora de los bloques programables de Lego.
Debido a la comercialización de los bloque programables, Lego vendió la generación NXT en dos versiones: Retail Version y Education Base Set. Una ventaja de la versión Educacional es que se incluía las baterías recargables y el cargador, pero esta misma versión debía comprar el software según el tipo de licencia: Personal, Sala de clases, Sitio.
Además, Lego dispuso de varios kits para desarrolladores según las características de los programas que estuvieran desarrollando,
  • Software Developer Kit (SDK), que incluía los controladores del puerto de USB, archivos ejecutables y referencia a los bytecodes.
  • Hardware Developer Kit (HDK), incluía la documentación y esquemas para los sensores de NXT.
  • Bluetooth Developer Kit (BDK), documentos de los protocolos usados para la comunicación Bluetooth.

Microcontrolador
El microcontrolador que posee es un ARM7 de 32 bits, que incluye 256 Kb de memoria Flash y 64 Kb de RAM externa, la cual a diferencia del bloque RCX, posee mayores capacidades de ejecución de programas, evitando que los procesos inherentes de varios paquetes de datos colisionen y produzcan errores y un posible error en la ejecución del software. Su presentación es similar al Hitachi H8 ya que se encuentra en el circuito impreso del bloque, junto a la memoria FLASH.
Entradas y salidas
En el bloque de NXT existen cuatro entradas para los sensores, pero los conectores son distintos de los del RCX, lo que impide la conexión de sus motores o sensores, sin embargo, el kit de NXT incluye el adaptador para que los sensores de RCX sean compatibles con NXT.
Las salidas de energía aún son tres localizadas en la parte posterior del bloque, haciendo que la conexión para los motores y partes móviles sean de más fácil acceso.
Comunicaciones
El bloque de NXT puede comunicarse con el computador mediante la interfaz de USB que posee, la cual ya viene en la versión 2.0. Además, para comunicarse con otros robots en las cercanías posee una interfaz Bluetooth que es compatible con al Clase II v 2.0. Esta conectividad con Bluetooth no tan sólo permite conectarse con otros bloques, sino también con computadores, palms, teléfonos móviles, y otros aparatos con esta interfaz de comunicación.
Dentro de las posibilidades de conexión se encuentran
  •   Conectar hasta tres dispositivos distintos,
  •  Buscar y conectarse a otros dispositivos que posean Bluetooth,
  •   Recordar dispositivos con los cuales se ha conectado anteriormente para conectarse más rápidamente,
  •   Establecer el bloque NXT como visible o invisible para el resto de los dispositivos.

FIRMWARE

El firmware del Lego Mindstorms consta de las instrucciones básicas que posee el bloque para hacer las distintas tareas que se le pueden programar en el bloque RCX. El firmware viene en el CD-ROM que se adjunta en el empaque original y debe ser cargado todas las veces que el robot se inicialice o se cambien las baterías y la memoria se borra.
Si no se carga el firmware, el robot queda en modo de arranque, lo cual hace que se pueda jugar con un programa que viene en forma nativa dentro del robot. Para cargar el firmware debe ejecutarse el programa adjunto y luego esperar cerca de 3 minutos para que se cargue completamente el firmware básico.
Las versiones más actuales de Lego Mindstorms RCX, como la versión 2.0, es compatible con las versiones anteriores del bloque, haciendo que los programas escritos en versiones más nuevas también puedan ser ejecutadas en las generaciones previas.

TORRE DE COMUNICACION

Para transferir los programas incluidos o los programados por los usuarios, Lego Mindstorms cuenta con una torre que posee un rayo infrarrojo que se conecta al computador, que junto al software, se puede enviar el firmware y los programas. Esta torre se encuentra disponible en dos versiones:
Torre serial
La torre serial se conecta a un puerto COM del computador, transmitiendo las instrucciones hasta una distancia máxima de 15 cm., en condiciones normales, desde la base de la torre hasta el bloque. Debido a su tipo de conexión, requiere una batería AA alcalina de 1,5 volts, la cual se conecta en la parte posterior de la misma.
El software que controla la conexión de la torre serial se encuentra dentro del mismo software incluido en el juego de Lego Mindstorms y requiere un conector de 9 pines para ser aceptado.
Torre USB
La torre USB fue incluida en las versiones de Lego Mindstorms que poseían el RCX 2.0, la cual se conecta al puerto USB del computador. A diferencia de la torre serial, la torre USB posee alimentación desde el computador, por lo cual no requiere de baterías para su funcionamiento. La distancia máxima a toda la potencia es de 30 cm en condiciones de luminosidad normal.
El software de control no se incluye dentro del paquete de Lego Mindstorms, pero se puede configurar en el Panel de Control de Windows 98 para realizar las pruebas de alcance y ajustar la potencia.

MOTORES

Los motores de la serie Lego Robotics han sido de tres tipos, los cuales son independientes al bloque, lo que entrega movilidad al sistema dinámico según las necesidades de construcción.
En la tabla de medición, el motor estándar es más veloz que el de 9 volts, pero este último posee más fuerza para mover el robot, ya que pueden levantar cerca de 240 piezas de 8x8, pero es más lento y a la vez más preciso. El motor Micro es sólo para funciones menores debido a su escaso torque y la mínima velocidad de rotación.
Los motores desmontables son alimentados mediante cables que poseen conductores eléctricos que transmiten la energía a los inductores. Como son motores paso a paso, el sentido de conexión no entrega la misma dirección de movimiento.
Los motores integrados al bloque sin menos versátiles, pero no dependen de conexiones externas, lo cual visualmente ayuda al robot en su presentación.
El modelo NXT usa servo motores, los cuales permiten la detección de giros de la rueda, indicando los giros completos o medios giros, que es controlado por el software.

PIEZAS ESPECIALES

El Lego Mindstorms, a diferencia de algunas de los juegos que vende Lego, trae algunas piezas extras que permiten entregar flexibilidad y movimiento al robot que se este construyendo.
Para clasificar las piezas, se sugiere una clasificación entre las piezas móviles, flexibles y de fijación, las cuales son las que incluye el Lego Mindstorms para desarrollar cualquier robot en especial.
Piezas móviles
Las piezas móviles que dispone Lego Mindstorms se centran principalmente en la rotación de bloque, para lograr que las ruedas se muevan en un movimiento circular con respecto al bloque completo. Estas piezas móviles se pueden clasificar en dos:
1.    Pieza de rotación, permite rotar un bloque de Lego con respecto a otro, siendo hueco en el centro del mismo, y con la patas de conexión; lo cual permite añadir más piezas en la parte superior del bloque de rotación. Este bloque se usa fundamentalmente en los robots de movimiento o donde se realiza un cinta de transporte de materiales, y se conecta a uno de los motores para que provea el giro del bloque
2.    Pieza de giro, a diferencia de la pieza de rotación, la pieza de giro permite girar un bloque en el espacio, permitiendo una simulación de ojos de un robot. Esta pieza no posee una utilidad real, pero sirve de adorno para el robot.
Piezas flexibles
Las piezas flexibles permiten recrear una articulación de un sistema articulado, donde se requiere que el robot deba realizar un movimiento no rígido en forma específica, como el brazo robot o el brazo clasificador de piezas. Las piezas flexibles por lo general son tubos de plástico capaces de conectarse con dos bloques que no se encuentren separados a una distancia mayor de 4 cm
Piezas de fijación
Las piezas de fijación, son aquellas que sirven para fijar los ejes de rotación producidos por las piezas de rotación, lo cual implica que son usadas en el centro de las ruedas que posee el Lego. Por lo general, son tubos de 0.5 mm de diámetro el cual se puede poner en la punta de una barra que actúa como eje central de la rueda, fijando que la misma no se salga durante la ejecución de un programa.
Ruedas
Uno de los principales componentes de Lego Mindstorms, y que le da mayor dinamismo a la construcción de robots son las ruedas, ya que permiten que el bloque lógico pueda moverse en un espacio real e interactúe con el medio que lo rodea.

Existen distintas versiones de ruedas, que vienen desde las llantas más anchas, que permiten mayor estabilidad y velocidad; hasta las ruedas más pequeñas que permiten el movimiento del robot en zonas más pequeñas. Se incluye además una cinta que simula el efecto de oruga que poseen los tanques, para que el usuario pueda crear tanques, o una cinta transportadora de objetos.
Una de las connotaciones más destacadas para los fanáticos de la robótica son las mediciones físicas de cada tipo de rueda, donde algunos sitios webs han realizado las pruebas para distintas superficies, incluyendo en caso de mayor peso, velocidad o cantidad de ruedas.

METODOLOGÍA DE DESARROLLO

Construcción
La construcción del robot se basa en la unión de bloques de plástico, característicos de Lego, junto con piezas plegables y algunas piezas que permiten la rotación de ruedas o piezas. El modelo se debe centrar en el bloque programable, ya que este bloque provee la energía necesaria para el movimiento del robot creado. Además, se pueden fijar los sensores que se adjuntan en el kit, para que sean útiles en el desarrollo del robot.
Una de las principales estrategias de construcción se basa en determinar el tipo de robot y si el software proporcionado sirve para construir el robot. Una vez determinado esto, se puede comenzar a construir siempre en bloques de función, como por ejemplo, ensamblar las ruedas a un eje o los sensores en las bases que puedan ser útiles. Tras esto, comienza la fase de unión entorno al bloque, que es fase más critica, debido a que el sensor  infrarrojo, en el bloque RCX, no debe ser tapado para que se pueda cargar el software. Una vez ensamblado el robot, se procede al envío del programa y ejecución de las sentencias programadas, y a continuación se procede similar a la programación de un software, a probar y corregir fallos.
Los fallos más comunes en la construcción se debe a la falta de movilidad de las piezas o que los sensores no detectan los valores correctos o simplemente no se mueve. Las estrategias de solución son variadas, pero a la larga, sugieren seguir el camino del rehacer el proceso de pensar y armar y luego ejecutar, es por esto último, que Lego es un juego de robótica que desarrolla la lógica.
Programación
La programación del Lego Mindstorms se realiza mediante el software que se adjunta en el empaque original, el cual trae el firmware del robot y un programa que emula un árbol de decisiones, para los cuales, el usuario debe programar las acciones a seguir por el robot. El software se encuentra dividido por cada tipo de robot que se puede construir, y que viene recomendado en el empaque.
Una de las principales características de este software de programación, es su entorno visual, el cual emula la construcción por bloques, dando la posibilidad a cualquier usuario aprendiz acostumbrarse rápidamente a la programación de bloque.
Este lenguaje permite las instrucciones secuenciales, instrucciones de ciclos e instrucciones de decisiones, éstas últimas, basadas en los datos reportados por los sensores que se puede añadir al robot.
Lenguajes alternativos de programación
El bloque del Lego Mindstorms como un producto de hardware y software integrado, puede ser programado con varias interfaces, pero todos logrando el mismo fin. Esto se puede realizar mediante la torre de comunicación y utilizando las herramientas correctas para poder acceder al firmware básico de Lego.
Algunas personas han podido ingresar por medio de interfaces rudimentarias a obtener el código básico de la memoria de ROM que posee el Lego y así poder tener acceso a programación mediante asamblea para poder controlar por ellos mismos el bloque.
Algunos de frameworks más conocidos con el Brickos, Lejos y Not Quite C.

Problemas de la adaptación
Un problema generado por el cambio del framework a otro lenguaje es el retardo que pueda existir entre las instrucciones, debido a la emulación de las instrucciones que el conjunto de programas le entrega al bloque. Este retardo fue registrado por Dick Swan y tras algunas pruebas de rendimiento y emulación en software permitió descubrir que el retardo medio para la ejecución de cualquier instrucción, con o sin motor encendido es de 1,75 mseg.
La prueba que realizó fue realizar muchas tareas en la misma cantidad de tiempo, notando la relación lineal de las instrucciones ejecutadas, por lo cual, a mayor cantidad de instrucciones, mayor el tiempo de espera para ejecutar la instrucción.

SENSORES

SENSOR DE LUZ
El sensor de luz permite tomar una muestra de luz mediante un bloque modificado que un extremo trae un conductor eléctrico y por el otro una cámara oscura que capta las luces. Esta cámara es capaz de captar luces entre los rangos de 0,6 a 760 lux. Este valor lo considera como un porcentaje, el cual es procesado por el bloque lógico, obteniendo un porcentaje aproximado de luminosidad.
El bloque RCX calcula con la fórmula Luz = 146 − RAW / 7 para determinar el porcentaje obtenido por la lectura de la luz, tomando una muestra cada 2,9 ms, siendo leído en 100 us. el valor que se lee a partir del sensor.
Debido a que este sensor capta grados de luminosidad, no es capaz de distinguir colores, solo captando la existencia del blanco (claridad), negro (oscuridad) y los tonos de grises que corresponden a los distintos porcentajes de luz existentes en el medio.

SENSOR DE TEMPERATURA
El sensor de temperatura permite leer el valor aproximado de la temperatura, mediante la interacción de un termistor en uno de los extremos, generando un campo magnético que permite la detección aproximada de la temperatura del bloque que lo contiene. El bloque original de Lego posee un termistor de 12.2 kohms a 25°C con un coeficiente de corrección aproximado de un -3,7%/°C.
La formula Temp = (785 - RAW) / 8 puede determinar la temperatura detectada por el sensor.
SENSOR DE CONTACTO
El sensor de contacto permite detectar si el bloque que lo posee ha colisionado o no con algún objeto que se encuentre en su trayectoria inmediata. Al tocar una superficie, una pequeña cabeza externa se contrae, permitiendo que una pieza dentro del bloque cierre un circuito eléctrico comience a circular energía  provocando una variación de energía de 0 a 5 V.
En este caso, si la presión supera una medida estándar de 450, mostrando en la pantalla de LCD, se considera que el sensor esta presionado, de otro modo, se considera que está sin presión.
SENSOR DE GIRO
El sensor de giro permite conocer la posición del robot en cualquier instante. Para conocer la posición del robot, el sensor produce una variación de energía entre cuatro estados, los cuales son detectados cada 2,9 ms. y procesados por el bloque RCX durante 100 us, en los cuales pasa entre cuatro estados de energía:
2,0 volts → 4,5 volts → 1,3 volts → 3,3 volts (en sentido horario)
3,3 volts → 1,3 volts → 4,5 volts → 2,0 volts (en sentido anti horario)
Con estos estados se permite verificar cuantas variaciones de energía han sucedido desde la lectura. Cada voltaje representa un giro aproximado de 22,6º del sensor, por lo tanto existiendo cerca de 16 ciclos de voltaje para detectar un giro completo. El problema de esta lectura es a bajas velocidades, debido a que genera unas minúsculas variaciones de energía, debido a que los valores intermedios no son considerados como movimiento válido.
SENSOR ULTRASONICO
El sensor Ultrasónico sólo se incluye en el empaque de Lego Mindstorms NXT, y su principal función detectar las distancias y el movimiento de un objeto que se interponga en el camino del robot, mediante el principio de la detección ultrasónica. Este sensor es capaz de detectar objetos que se encuentren desde 0 a 255 cm, con una precisión relativa de +/- 3 cm
Mediante el principio del eco, el sensor es capaz de recibir la información de los distintos objetos que se encuentren en el campo de detección. El sensor funciona mejor cuando las señales ultrasónicas que recibe, provienen de objetos que sean grandes, planos o de superficies duras. Los objetos pequeños, curvos o suaves, como pelotas, pueden ser muy difíciles de detectar. Si en el cuarto se encuentra más de un sensor ultrasónico, los dispositivos pueden interferir entre ellos, resultando en detecciones pobres.