viernes, 18 de abril de 2008

Robots

Existen una gran cantidad de robots ya montados, con diferentes placas. Se pueden adquirir, por ejemplo, los robots de Parallax, en MSE, Bilbao. También hay una gran cantidad de sensores. Los robots más importantes y conocidos son: El Boe-bot, el Scribbler y el Sumo-bot.

Scribbler:

Es un robot muy compacto y característico por su color azul. Es ideal para niños o principiantes ya que su programación es muy sencilla ya que no utiliza lenguaje textual sino con dibujos. Es muy fácil de programar y manejar, pero también es restringido su uso. No se le pueden añadir muchos sensores ya que está atornillado y tiene sus limitaciones en cuanto a velocidad y potencia de sus motores se refiere. Es el robot más barato (80 €) y sólo es recomendable para el aprendizaje, aunque es posible que pudiese participar en la modalidad de seguidor de líneas aunque no con muy buenos resultados. No tiene muchos sensores (3 sensores de luz, 2 sensores infrarrojos para detectar obstáculos y 2 sensores infrarrojos para la detección de líneas en el suelo.


Boe-bot:

Este robot es posiblemente el más interesante y con más posibilidades de transformación. Se le pueden añadir muchos sensores debido a que utiliza la placa BS2, la cual está situada en la parte superior y tiene fácil acceso. Este robot tiene dos partes: la estructura y la placa. Estas dos cosas pueden comprarse por separado. Tiene unos cuantos sensores y puede utilizarse para todo con la adecuada adaptación. En la modalidad de seguidor de líneas se utiliza mucho aunque también se ve alguno en la de sumo. Es un robot de precio asequible y con muchas posibilidades por lo que sería uno de los más recomendables.


Sumo-bot:

Este robot está especialmente preparado para la modalidad de mini-sumo. Es más caro (164 €). No tiene tanta capacidad de adaptación como el boe-bot y debido a su elevado precio es menos recomendable. En mi opinión sería más interesante comprar los sensores y la placa y construirte tu propio robot a utilizar este.


Otros robots son The Toddler robot (robot bípedo) , picbot 2 y 3 (plataformas con una gran cantidad de sensores), moway, penguin bot (bípedo) , RCX y NXT (Lego).

Aquí tenéis el enlace a la página web dónde podréis encontrar varios de estos robots.
Moway:
El robot Moway es un pequeño robot de bajo coste (80 €) fácilmente programable mediante una interfaz gráfica. Se necesita una pequeña targeta para programarlo que cuesta 20 € más. Además se le pueden incorporar módulos de radiofrecuencia para programarlo o para que se comunique con otros robots. Cada módulo cuesta 25 € y se acopla fácilmente al Moway. Tiene sensores infrarrojos delanteros para detectar objetos, en la base para detectar líneas y un sensore de luz.



RCX y NXT:

Estos robots han sido elaborados por LEGO Mindstorms en colaboración con el MIT. Ambos están pensados para pequeños o iniciados, ya que se programan por un sistema de ladrillos, una interfaz gráfica. El NXT (la versión nueva) cuesta 250 €, el RCX, el antiguo, ya no se vende. Tienen varios sensores (sobre todo el nuevo). El RCX tiene 2 servos, 2 bumpers y un sensor infrarrojo. El NXT tiene 3 servos, un bumper, un sensor ultrasónico, uno de luz y otro de sonido. Además tiene bluetooth y numerosos sensores que pueden comprarse por separado (acelerómetros, por ejemplo). Estos robots tienen la ventaja de que pueden realizarse numerosos proyectos gracias a la gran cantidad de piezas LEGO. Pueden mezclarse además con los productos LEGO Technic.

RCX

NXT

Robots ``artesanales´´:



Robot Barcineitor



Robot LEGO Mindstorms de Sergio

Robot de Alex para sumo

Robot de Iñaki para seguidor de líneas

Hay infinidad de sensores dependiendo del uso que se les vaya a dar. También hay muchos complementos disponibles. Hay sensores para medir distancias, receptores GPS, sensores de sonido, sensores de reflexión, sensores de luz, sensores de obstáculos infrarrojos y ultrasonidos, sensores de temperatura, brújulas... Hay una gran cantidad donde elegir, y hay que escoger en función de nuestras necesidades (por ejemplo, la longitud a la que vaya a estar el objeto con un sensor ultrasónico) y del presupuesto.
Como complementos podemos encontrar unas ruedas más gruesas e incluso unas ruedas de oruga. También podemos comprar más motores para otorgarle una potencia mayor. Haré algún artículo sobre sensores disponibles y sus usos, así como mi propia valoración.

Conocimientos previos

Acerca de su funcionamiento:

Los robots son como ordenadores, es decir, computadoras. Son máquinas capaces de realizar numerosas tareas con una precisión inalcanzable para el ser humano y sin cometer fallos debido al cansancio u otros factores. Eso sí, por el momento no son capaces de pensar (como los seres humanos) o aprender, sino que lo que hacen es tomar decisiones lógicas. Es decir, dependiendo de cómo estén programados actuarán en consecuencia a estímulos externos. Por ejemplo, si un robot está programado para que cuando detecte un ruido superior a 60 dB emita un pitido, al gritar alguien cerca éste pitará, pero no porque lo haya pensado, sino porque según su programación es lo que debe hacer. Si nadie grita, no emite ningún pitido: una decisión lógica. Los aparatos electrónicos y por consecuencia los ordenadores, microcontroladores, robots… funcionan con un sistema binario, es decir, trabajan con 1 y 0. Con tan solo dos estados se puede conseguir que los ordenadores actuales hagan infinidad de cálculos. La ventaja de los computadores reside en la velocidad con la que trabajan con estos 1 y 0. Trabajan con bits, unidad que puede tener estos dos estados. 1 y 0 significan que pasa corriente o no, es decir un 1 será un pulso de corriente y un 0 no tendrá corriente eléctrica, tensión alta y tensión baja. Por esto las computadoras basan su trabajo en la electricidad. Los ordenadores realizan operaciones con estos dos estados. No explicaré como funciona o como se realizan estas operaciones debido a su complejidad (álgebra de Boole) ni tampoco hablaré sobre los transistores, osciladores, silicio etc. Que se utilizan en los procesadores, memoria… de las computadoras.
Por ello se debe tener en cuenta a la hora de programar el funcionamiento binario de los robots mediante los bits (aunque últimamente se habla del qubit (aún en desarrollo), capaz de poseer los dos estados a la vez).

Acerca de su hardware:

Los robots tienen varias partes, yo los clasificaría en dos: La parte estructural y la parte electrónica. La parte estructural es la parte a la cual pertenece la estructura del robot, es decir: ruedas, tornillos, placas metálicas, materiales… que forman toda su estructura y sobre la cual se colocara la parte electrónica. Esta parte puede ser construida sin necesidad de comprar nada utilizando piezas de LEGO, Mecano u artesanalmente con madera, metal, plástico etc. La parte eléctrica incluiría los sensores, motores, cables, leds… y por supuesto el controlador. El controlador es la única parte insustituible y más importante, ya que es el que maneja los motores y sensores dependiendo de la programación que tenga. Se pueden utilizar numerosos controladores o placas, pero nosotros utilizamos las placas Basic Stamp, concretamente la BS2, ya que hay varios modelos que varían algo entre sí. Otros controladores serían las placas Arduino o algún PIC. Para conectar la placa al ordenador y transmitir así el programa se conecta con un cable serial (también se puede poner un adaptador para el USB). El ordenador es necesario para escribir el programa y después enviarlo al robot (se escribe en el editor PBasic). Aparte de la placa el robot puede tener sensores (dependiendo de cual sea su aplicación hay una gran cantidad) y motores. Dependiendo de la información captada por los sensores el robot tomará decisiones lógicas. Además dependiendo del hardware que se vaya a utilizar (sensores, motores…) se deberá modificar algo la placa. Los sensores, motores y en definitiva todo lo controlado por el controlador está conectado a él, y dependiendo de que sea, deberá conectarse de un modo u otro. Para ello se emplearán leds, resistencias, capacitores, potenciómetros e incluso circuitos integrados (CI). La placa BS2 del Basic Stamp tiene muchos puntos de conexión y habrá que conectar cada cosa en el lugar correcto. La energía la extraerá de una pila de 9 voltios o de 4 de 1.5 voltios.

Los diferentes sensores y robots los comentaré más adelante, al igual que las partes de la placa y su función.

BS2 rev B


Acerca de su software:

Para programarlo se utiliza el programa Basic Stamp, el cual se puede descargar de la página web de Parallax. Utiliza un lenguaje PBasic con unos comandos determinados aunque muy similares a los de otros programas como el lenguaje Basic. Como ya hemos dicho, una vez ya escrito el programa sólo habrá que descargarlo en el robot. Habrá que tener en cuenta el modelo de la placa (BS1, BS2…) ya que hay pequeñas diferencias en la programación entre ellas.

Una vez explicado esto ya podéis aprender a programar.

--------------------------------------------------------------------------------

Autor: Sergio Porres González http://roboticamaselectronica.blogspot.com/

Este documento ha sido realizado para orientar a posibles personas interesadas en la programación de un robot, sobre todo para aquellos iniciados. Si alguien quiere publicarlo, que contacte con su autor: sergioporresgonzalez@gmail.com

--------------------------------------------------------------------------------

miércoles, 16 de abril de 2008

¿Qué es la robótica? Aplicaciones

La robótica es una rama de la ingeniería. Pero la parte más atractiva de ella es que mezcla muchos aspectos diferentes. Es necesaria la programación, la electrónica, la mecánica y por supuesto una gran cantidad de esfuerzo y dedicación. Las ideas probablemente sean lo más importante en un futuro (sino lo son ya) por lo que las personas con más imaginación y creatividad serán fundamentales en este campo aún por desarrollar. En mi opinión, la robótica tendrá una gran importancia en no mucho tiempo, sufriendo una revolución e implantación masiva como la que sufrió el ordenador en todos los hogares.


Las aplicaciones actuales de la robótica son grandes pero en parte por la falta de conocimiento por parte de la mayoría de la población aún no se ha implantado completamente. Bueno, en realidad si lo ha hecho, pero la mayoría de la gente no lo sabe. ¿Como funciona el microondas, o el mando a distancia, o la parte electrónica de un coche? Realmente todo está robotizado (responde de cierta forma a un estímulo determinado), aunque generalmente esto se considera como electrónica. Un robot se suele llamar a algo que se mueve.

Ultimamente la domótica es cada vez más interesante y ya se implanta en algunas casas nuevas. En tareas de precisión y peligrosas es más que necesario (para la desactivación de bombas) y a medio plazo será fundamental para la exploración del espacio (ya se usan algunos en Marte, como el rover Opportunity).


Como conclusión, considero que dado el grado de avance tecnológico que hay en la actualidad en breves no nos parecerá tan extraño tener un robot deambulando por casa (con alguna función útil, por supuesto).

Aprender a programar

Actualmente millones de personas usan el ordenador a diario pero no muchas saben programar. El campo de la programación abre muchas puertas y un mundo de posibilidades mucho mayor. Por lo general no suele ser sencillo, pero con constancia se puede llegar a dominar un lenguaje. En seguida publicaré algunos consejos y guías para programar. De momento mirar estas dos webs:

http://www1.ceit.es/asignaturas/Informat1/AyudaInf/Index.htm#Office

Tiene varios manuales, tanto sobre Linux, ofimática como diferentes lenguajes (Visual Basic, C, CSS, html...). De la Universidad de Navarra, muy recomendable. Es parecido a 1º en la uni...

Este es de HTML, también de la Universidad de Navarra.
http://www.tecnun.es/asignaturas/Informat1/Ayudainf/CursoHTML/Curso01.htm