Primero, y antes de comenzar, desear a todos los lectores un
feliz año 2013, que podamos continuar compartiendo horas en el blog y seguir
aumentando nuestros conocimientos como lo hemos hecho desde el inicio del blog
a finales de 2012. Feliz año y mucho animo para todos.
Alimentación:
La alimentación de un robot no se suele hacer con combustibles fósiles,
principalmente porque la energía que genera ese motor de combustión tiene que
ser canalizada a unas baterías para poder usar esa energía mecánica, acumulada
como energía eléctrica en las baterías para los motores eléctricos o incluso
para el control de la neumática o hidráulica. En esta sección se hablará de los
tipos de baterías que podemos usar para nuestro robot, sus ventajas e
inconvenientes.
Plomo-Acido: Son las típicas baterías usadas en los automóviles. Su mayor problema
son su gran tamaño ya que por su capacidad de carga y durabilidad son bastante
útiles. No tienen efecto memoria* pero al descargarse pueden los electrodos
pueden convertirse en sulfato de plomo y el electrolito en agua por lo que
puede congelarse con facilidad al estar descargada.
Una variación de estas son baterías con electrodo de gel. La diferencia
es que el electrodo está recubierto con un gel que evita que se sulfate y las
celdas están selladas por lo que no tiene problemas de orientación.
Ni-Cd: Son las clásicas pilas recargables, tienen una gran durabilidad de
1000 a 1500 cargas y existen de muchos modelos. Su mayor inconveniente es que
son dañinas para el medio ambiente, y pueden tener un fuerte efecto memoria*.
Ni-MH: Son iguales que las anteriores, pero en vez de usar Cd, que es raro y
caro, usan Hidruro metálico que es amigable con el medio ambiente. Tienen mayor
capacidad que las anteriores (Hasta un 30% más) y no sufren tanto el efecto
memoria. Se requiere cargador especifico para este tipo de batería.
Li-Ion: Tienen una mayor carga y cantidad de carga por celda, 3,6 V por celda=
3 celdas de 1,2 de Ni-Cd. No sufren de efecto memoria pero son inflamables, y
su durabilidad es muy baja, de 300 a 600 veces más baja que las Ni-Cd. Pero al
tener mayor capacidad y durabilidad por carga 1 carga dura más que una carga de
Ni-Cd.
NI-Cd VS Ni-MH:
Las Baterías de Ni-MH tienen mayor capacidad (de un 40 a un 70% más) no
contienen cadmio y el efecto memoria es mínimo.
Las baterías de Ni-MH tienen una resistencia interna superior que
limita su uso en aplicaciones de alta potencia, pero la industria ha ido
solucionando este problema durante los últimos años.
Las baterías de Ni-MH no se pueden cargar tan rápido como clas Ni-Cd
con riesgo a deteriorarlas. Además las baterías de Ni-Mh son sensibles al calor
como las Ni-Cd y un sobrecalentamiento podría producir gases y altas presiones
internas que pueden conllevar a escapes que pueden reducir la vida útil de la
batería.
Se recomienda usar cargadores específicos para las baterías de Ni-MH.
La cantidad de ciclos de carga de las baterías de Ni-Cd es de 1000 a
1500 ciclos siendo las de Ni-Mh alrededor de 500 veces menor que las Ni-Cd.
*Efecto Memoria: El efecto memoria se da principalmente en baterías de
Ni-Cd y Ni-MH. Esto efecto se debe a una mala carga y descarga de la batería.
Se produce cuando estando la batería sin terminar de descargar se carga la
batería hasta el 100%, la cual recuerda el último punto donde empezó a ser
cargada debido a que se produce en la parte que no se ha descargado unos
cristales que reducen la capacidad máxima. También se debe por un largo tiempo
sin uso de las mismas, pero el principio es el mismo.
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjVSDBk1mHjB9Sg5Wn79nmmngSkmCKRlnvuR_n_8Vy1TzHn-Qrw4MJQ26sgQ0Es9vBBFLyjd1EU1n5aNJRBxC-ZjWhibV0yWvimXGviUrT_vIRt3TaYaUhtyVf2Km_bTEKJrIlcM2gUzlE/s400/bateria-pilas.png) |
Esquema efecto memoria |
Para solucionar este problema, o más bien evitarlo, se recomienda que
cada cierto tiempo se realice una descarga completa de la batería y una carga
lenta o carga completa de la misma.
¿Qué tipo de batería o
alimentación es la idónea?
La batería o Alimentación que usaremos dependerá de los elementos que
tenga nuestro robot. Sobre todo habrá que fijarse en los motores ya que serán
los elementos que mayor energía necesitarán. Tenemos distintos tipos de
baterías tanto en el número de amperios hora como de los voltios que
proporciona al igual que hay distintos elementos que consumen distintas
cantidades. Por ello, es conveniente usar una batería que al menos proporcione
la mínima cantidad que requiere el motor para su funcionamiento. Por ejemplo:
Un motor a 1000mAh y 4 Voltios al colocarle una batería de 750 mAh y 6
Voltios, sí dispone de la tensión que requiere, pero el flujo es decir, la corriente
por hora de la que requiere el dispositivo, en este caso el robot es inferior la que proporciona la batería que
la requiere el motor por lo que podemos tener varios casos, que no se mueva,
que se mueva muy lentamente, o que se mueva pero que en pocos minutos nos
quedemos sin batería. Si le proporcionamos el suficiente flujo de energía (mAh)
no tendremos problema en el funcionamiento del motor o motores.
Sensorización
de un robot:
La sensorización de un robot dependerá de qué queremos hacer con el
mismo, en qué tipo de espacio nos vamos a mover, que capacidad tiene mi placa,
la utilidad de los sensores en distintos medios o situaciones, etc.
Los sensores simulan los sentidos de un ser humano, desde la visión, la
presión, el oido, el olfato hasta el equilibrio. Solo hay que exceptuar el
gusto, que aunque se investiga en ese campo, aún no está muy desarrollado pero
en los próximos años veremos avances muy interesantes.
Separamos los sensores en:
Vista:
- Cámara.
- Infrarrojo.
- Sonar.
- Sensor
de color.
Oído: Micrófono.
Olfato: Detectores de humo y de
componentes químicos específicos.
Presión: Sensores de presión
capaces de detectar variaciones en la presión del sensor gracias a diferencias
de potencial.
Equilibrio y orientación:
- Tilt.
- Acelerómetro de 2
ejes/3 ejes.
- Brújulas.
- Giroscopio.
Habla: Altavoz.
Cámara: La cámara sirve principalmente para el control del robot desde un
puesto remoto o para saber que está viendo el mismo robot, sin necesidad de
estar en la misma zona que el robot. Estas cámaras también pueden usarse para
la detección de ciertos objetos o colores, siendo ya la capacidad del
programador la principal para gestionar este sensor. La cámara suele ser el
“sensor” más complejo de programar.
Infrarrojo: Se recomienda utilizar en espacios cerrados y con luz tenue o
artificial ya que necesita el sensor recibir la onda del infrarrojo que puede
ser disipada en cierta medida por la luz natural, por eso en medio muy
brillantes el infrarrojo no es un buen aliado. Se usa para detectar objeto a
corta distancia. La mayor limitación que tienen es la distancia de uso, no
superior normalmente a 1’20 m-1’50m. Sin embargo la mayoría de infrarrojos
alrededor de unos 5 centímetros ya detectan el objeto.
Sonar: Este sensor se utiliza también para detectar objetos como si fuera un
murciélago, utiliza el sonido para crear una imagen mental del entorno. La ventaja de estos
sensores es que pueden usarse tanto en el exterior como en el interior y tienen
un gran alcance, los de robotica pueden llegar a más de 10 metros. El
inconveniente es que en muchos casos, la distancia mínima que necesitan para
detectar un objeto es de 40 o 50 centimetros por lo que se hay una zona que es
prácticamente ciego.
Sensor
de color: Estos sensores detectan la longitud de onda
que emite el objeto detectado, por lo que si el programador programa el sensor
para detectar la longitud de onda del color rojo, (620-750 nm) el sensor
detectará todos los objetos con dicha longitud de onda.
Micrófono: El micrófono recibe una onda de sonido haciendo vibrar un material ya
sea un diafragma, un piezoeléctrico, etc. y generando una diferencia de
potencial. Esa diferencia de potencial será distinta para cada instrucción que
mandemos por el micrófono, por lo que el robot podrá detectar esas diferencias
de potencial y asociarlas a distintos parámetros.
Tilt: El Tilt, es un sensor capaz de detectar la posición de un objeto en un
eje, ya sea el x o el y. Funciona con un condensador variable, dependiendo de
la tensión que envie el Tilt estará indicando que el objeto se desplaza hacia
delante, hacia atrás, o si está colocado en el eje y hacia alguno de sus lados.
Acelerómetro
de 2 ejes: Funciona a través de sensores de
temperatura, 4 exactamente que varían por el calentamiento o enfriamiento de un
capsula en su interior. Cuando los 4 sensores tienen los mismos valores de
temperatura el sensor está nivelado, en cuanto los sensores varían, quiere
decir que ha variado la posición y mandan una señal en forma de tensión a la placa
principal, indicando ese valor de variación.
Brújulas: Son brújulas electrónicas que detectan el campo magnético terrestre y
transforman esa detección del campo en una magnitud eléctrica que interpreta el
robot. Se usan como bien se sabe para saber en qué posición con respecto al
norte magnético estamos.
Giroscópios:
Sirven para compensar movimientos bruscos realizados
por un robot, helicóptero o avión radiocontrol. En el caso de los robots, la salida en lugar de conectarse a
un servo, se conecta a un microcontrolador que puede leer la anchura del pulso
del giróscopo y así saber cuando se produce un giro. Los giróscopos son
esenciales en los robots de tipo balancín y el los sistemas de guiado de
precisión en el que hay que medir y compensar el momento de giro.
Programación:
Para el control de un robot se necesita la
programación del sistema hardware del robot. El sistema hardware se comprende por
la placa y el microcontrolador o PIC que se utilice. Dicho PIC se programará
con el programa que lleve consigo el PIC, posiblemente oficial y capado u otro
que sea de sistema libre y sin limitaciones en la propia programación. Indicar
que cuando hablamos de programación, no estamos hablando de comunicación. Tema
que se tratará en el apartado siguiente.
Los programas para programar un PIC
utilizan normalmente C++ como lenguaje de programación, rara vez se utiliza
otro lenguaje como Basic o Ensamblador, ya que Basic es un lenguaje de más bajo
nivel que C++ y Ensamblador es directamente el paso intermedio entre el
lenguaje de alto nivel y el lenguaje maquina, por lo que la programación se
hace muy tediosa y compleja, además de que requiere un tiempo de progamación
muy largo.
Por lo que normalmente se utilizará un
sistema basado en C++, por su comodidad y rapidez en realizar los programas.
Dentro de la programación normal de un
robot en C++ existen dos maneras distintas de programar un robot.
1. Programar los movimientos escribiendo directamente en el programa, la
posición de servos, sensorización, etc.
2. Aprendizaje por Kinestesia, basado en un aprendizaje por repetición.
Este sistema se utiliza de forma que el robot aprende de lo enseñado por el
programador a base de ensayo y error, como por ejemplo, una persona aprende a
montar en bicicleta.
Comunicaciones:
A la hora de comunicarnos con un robot, lo
podemos hacer de distintas maneras.
1. USB
2. RS232
3. TCP/IP
4. BLUETOOTH
5. RADIO
6. ETC
Utilizaremos la que más nos convenga en
nuestro caso. Pero hay que diferenciar dos cosas, el concepto de comunicación a
la hora de programar y comunicación cuando mi robot está ya programado. En el
primer caso, normalmente realizaremos una comunicación por cable, ya sea USB o
por RS232, ya que llega a ser más cómoda y solo la utilizamos para enviar la
información o el archivo creado para el uso de nuestro robot. Sin embargo
cuando queremos utilizar una comunicación inalámbrica esta va preprogramada, es
decir, que se ha establecido que la comunicación desde el puesto del
programador al robot se realizará sin cables. Está comunicación desde el robot
al puesto del programador se realiza para controlar ciertos parámetros del
robot o para darle ciertas instrucciones concretas.