Controladoras

Las controladoras son el "cerebro del robot".  Se encargan de reconocer la información que viene del exterior a través de los sensores (que serían como los sentidos) y  hacer funcionar los actuadores (motores, bombillas,...) conforme a un programa almacenado en su memoria.

Entradas:

Por las entradas de la controladora, el robot recibe información del exterior  a través de sensores. Se diferencia entre entradas analógicas y digitales, pero la terminología es confusa, porque, normalmente, en los robots todas las entradas son digitales. 

Entradas digitales

Llamamos entradas digitales a las que solo pueden interpretar dos valores (sensor activado/ sensor desactivado). En realidad se trata de entradas lógicas. En ellas, por ejemplo, se conectan los sensores de tacto que no son más que interruptores. Sus posibles estados son pulsado/no pulsado.

En las controladoras PICAXE conviene conectarla de la siguiente manera:

esquema de coexión

Cuando se pulsa el botón, la controladora interpreta la entrada como uno, pero si no se pulsa, lo interpreta como cero. Se puede conectar invirtiendo la polaridad, pero entonces la interpretación de la controladora es la inversa

Entradas analógicas

Llamamos entradas analógicas a entradas capaces de interpretar muchos valores. En ellas se pueden conectar sensores analógicos (por eso recibén este nombre) pero la controladora interpreta el valor analógico como un  número digital. Dependiendo del tamaño del registro donde se almacenará el valor medido por el sensor, así se puede distinguir más o menos valores  diferentes. Por ejemplo,  si los registos son de 4 bits se pueden diferenciar  16 (24) valores diferentes. 

El sensor traducirá un impulso exterior en una tensión que varía entre un valor máximo y uno mínimo. La controladora  mide esa tensión y asigna un número tanto mayor cuanto más alta sea la tensión que ha medido el sensor. Por ejemplo, en el caso anterior de registros de 4 bits (16 valores) si los valores máximos y minimos de tensión son 0 y 4 voltios, la controladora almacenará un 0 (0000, en el registro) si la tensión del sensor es 0, un 15 (el máximo, 1111 en el registro), y un  8 a una tensión de 2 voltios ( que coresponde al número binario 1000).

En una sola entrada analógica se pueden conectar una, o varias entradas digitales, teóricamente tantas como numero de valores distintos se pueden meter en el registro de datos. En el caso anterior, serían 16 sensores en una sola entrada analógica. Normalmente es dificil alcanzar el valor máximo de sensores digitales que se conectan en una sola entrada analógica, pero también es cierto que el tamaño de los registros suele ser mayor, de 8 bits,  que pueden tener 256 valores distintos.

Los sensores analógicos tienen tres cables uno se conecta al polo positivo, otro al negativo  (esta es la alimentación del sensor) y el tercero  (el que tiene la tensión que puede tener varios valores) a la entrada analógica.  Cada cable debe  conectarse a su sitio, no se pueden intercambiar.

Salidas

Las salidas  de la controladora  permiten controlar actuadores, esto es receptores eléctricos como motores, bombillas, resistencias... Existen varios tipos de salidas: ce conexión/desconexión, reversibles y analógicas. 

Salidas digitales  conexión/desconexión

Permiten conectar un receptor que sólo se alimentará con una polaridad. Por tanto los motores conectados a ellas no podrán cambiar su sentido se giro. Se comportan como un interruptor. En algunos casos son salidas a relé (que permiten bastante potencia) y en otros casos están activadas por interruptores electrónicos (en este caso hay una pequeña pérdida de la tensión de alimentación). Si el receptor tiene polaridad, habrá que tenerla en cuenta ya que entonces no se podrá conectar de cualquier manera. El la placa PICAXE de alta potencia, las salidas 5,6,7  y 8 son de este tipo. En ellas los receptores deben conectarde por un lado al polo positivo y por otro a la salida. 

Salidas digitales reversibles

Son salidas  con dos conexiones que permiten invertir la polaridad y por tanto controlar el cambio de giro de un motor. En la placa PICAXE de alta potencia, las salidas 1, 2, 3 y 4 son de este tipo. Si ponemos en alta estas salidas sería como conectar al polo positivo y si las ponemos en baja como conectar al polo  negativo.

Salidas analógicas

Al igual que en las entradas, el termino analógico es engañoso, se trata en realidad de salidas digitales, pero que pueden tener varios valores. Permiten controlar la potencia del receptor. La controladora puede  alimentar dicha salida con distintas tensiones. Nos permitirían controlar la velocidad de un motor. En algunos casos, las salidas analógicas no son tales, sino que lo que hace la controladora es apagar y encender la salida muy rápido. 

Las controladoras PICAXE no tienen salidas analógicas. Algunos chips como el 18X tienen una salida analógogica simulada (en este caso en el pin 3) que se control a con la instrucción pwmout.

A través de la programación de la controladora, siempre se podrá simular las salidas analógicas encendiendo y apagando la salida correspondiente como se ve es este trabajo:

Unión al ordenador

Las controladoras deben conectarse a  un ordenador para introducirles el programa. En algunos casos, la misma tarjeta no tiene memoria de forma que el programa reside en el ordenador. Esto tiene la ventaja de que se puede utilizar toda la memoria y capacidad de cálculo de un ordenador que suele ser muy superior al de las controladoras autónomas, pero el grave inconveniente de que el robot tiene que estar unido al ordenador mediante cables y esto limita su movimiento o se trata de robots muy grandes.  En estos casos, las controladoras simplemente son targetas que permiten introducir información en el ordenador o que pueden disparar relés como resultado de órdenes del mismo.

En otros casos , la unión al ordenador se hace sólo para sercargar el programa ya que la propia controladora tiene su memoria para almacenar el programa y su CPU para gestionarlo. El inconveniente es que la memoria y la potencia de cálculo están muy limitados, pero la ventaja de la independencia del robot que no tiene el anterior "cordón umbilical". Las controladoras PICAXE son de este tipo.

Algunas controladoras

PICAXE
picaxe

El entorno PICAXE es el que principalmente hemos investigado en este trabajo. Es el más barato (lascontroladoras más baratas están en torno a 5€ aunque nosotros recomendamos una de 15€ para introducirse) y muy potente. Se dispone de una variedad de chips muy grande y el cabeado de las placas es tan sencillo que está al alcance de cualquiera fabricarse una tarjeta completa. Permite controlar servos que pueden dar movimientos muy precisos y fuertes a nuestro robot. Este entorno nos parece el más adecuado para aprender por ese motivo, se puede llegar al disello de las placas.  En esta página web encontraras muchos recursos para trabajar con ellas. Por ejemplo, en el siguiente vídeo se muestra un brazo robótico controlado por un chip PICAXE pero con una tarjeta casera diseñada  y construida por nosotros

Tiene inconvenientes, como el que no tiene distribuidor en España, la mayor parte de la documentación está en inglés y no siempre está clara, prácticamente en todas las placas hay que realizar soldaduras.

Este entorno tiene varias posibilidades, estas son algunas de ellas:

Legonxt

rcx         Lego tiene dos sistemas muy avanzados  y potentes, el ladrillo RCX y el ladrillo NXT (que sustituye al anterior). Es muy fácil montar el robot sobre ellos porque tienen el concepto de montaje de lego mediante piezas ensamblables. Tiene el inconveniente del precio pues los equipos están entorno a los 300 €.

El ladrillo RCX tiene tres entradas analógicas y 3 salidas también analógicas La coexión al ordenador se hace por un puerto de infrarojos.

El ladrillo NXT tiene  cuatro entradas analógicas y tres salidas tamibén analógicas. Hay en el mercado un conjunto muy interesante de sensores que funcionan muy bien. La conexión al ordenador se hace por un puerto USB.. Una vez descargado el programa, el robot es autónomo.

Arduino

Es una controladora pequeña, potente y barata. Su precio está en torno a 20€ (enlace a una tienda).  El Arduino Duemilanove  es una placa que tiene 14 pines con entradas/salidas digitales (6 de las cuales pueden ser usadas como salidas PWM), 6 entradas analógicas. Se conecta al ordenador mediante una conexión USB. Una vez descargado el programa, el robot es autónomo.

Aquí tienes unos enlaces a tutoriales  para comenzar con esta tarjeta:

En esta imagen puedes ver la disposición de las entradas y salidas:
arduino

Cnicecnice

La controladora del CNICE está desarrollada por el MEC. Los esquemas y fotolitos te los puedes descargar. Es potente y se puede programar con winlogo y mslogo, lenguajes de programación educativos que los chicos aprenden fácilmente. Son leguajes traducidos, es decir, se ejecutan instrucción a instrucción. Si el programa tiene fallos, empieza a ejecutarse y se detiene en los errores, lo que permite depurarlos de manera mucho más sencilla que los lenguajes compilados.

El CNICE ha elaborado un montón de documentación para esta placa incluyendo simuladores que permiten trabajar la robótica de manera virtual. Aquí tienes un ellace a esta documentación.

 La limitación fundamental de esta placa es que debe estar conectada al ordenador  durante el funcionamiento del robot.

Enconor

enconor

Es una controladora muy voluminosa y que necesita estar conectada al ordenador. Su precio está en torno a los 200€.  Se puede controlar con winlogo o mslogo (este gratuito) que son lenguajes de programación  educativos fáciles de aprender.

En el observatorio tecnológico del CNICE también puedes encorntrar información sobre esta controladora.