<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="es">
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Grupobutia</id>
		<title>Proyecto Butiá - Contribuciones del usuario [es]</title>
		<link rel="self" type="application/atom+xml" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Grupobutia"/>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php/Especial:Contribuciones/Grupobutia"/>
		<updated>2026-04-05T21:54:21Z</updated>
		<subtitle>Contribuciones del usuario</subtitle>
		<generator>MediaWiki 1.26.2</generator>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5976</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5976"/>
				<updated>2014-09-17T15:01:44Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: /* Brújula con Follow Me */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Objetivos===&lt;br /&gt;
*Investigación de kits educativos actuales&lt;br /&gt;
*Implementación de sensores nuevos (y de utilidad) para el kit Butiá&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Cámara&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 ([http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf]); y el de temperatura y humedad DHT11 ([http://akizukidenshi.com/download/ds/aosong/DHT11.pdf]). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, además no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
=====Brújula con Follow Me=====&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son caros y difíciles de conseguir en el medio local, por lo que se tendrían que traer del exterior y esto trae consigo demoras que no podemos afrontar, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
Hemos hecho una implementación con la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. &lt;br /&gt;
La implementación de esto es:&lt;br /&gt;
*Follow me “sigue” el color rojo&lt;br /&gt;
*Se utiliza una Brújula que tiene aguja que apunta al norte en rojo&lt;br /&gt;
*Se centra la brújula con la camara tal que queden alineados sus puntos medios&lt;br /&gt;
*Se toma que la posición actual es desde el medio (0,0) &amp;quot;mirando&amp;quot; hacia la derecha&lt;br /&gt;
Luego con la posición dada por el follow me se realizan los siguientes cálculos:&lt;br /&gt;
*Se toma el coseno del ángulo, dado por la coordenada x del circulo trigonométrico. En este caso para obtener esta x se hace x-160/160 ya que el diámetro total tomado por el follow me es de 320, por lo que el radio del círculo sería 160, entonces si la x es 160 sería la x 0 del cículo y el coseno sería 0&lt;br /&gt;
*Se calcula el arcoseno de x se pasa el resultado a grados, luego dependiendo de la coordenada y, el ángulo sera mayor o menor a 180 grados&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.png]]&lt;br /&gt;
&lt;br /&gt;
==Implementación==&lt;br /&gt;
&lt;br /&gt;
A continuación se detallan los pasos seguidos para incorporar dichos sensores al Butiá:&lt;br /&gt;
*Crear User Module&lt;br /&gt;
*Reconocimiento PnP&lt;br /&gt;
*Crear Driver&lt;br /&gt;
*Grabar Firmware&lt;br /&gt;
&lt;br /&gt;
===Crear User Module===&lt;br /&gt;
&lt;br /&gt;
Un usermodule debe cumplir con una API determinada, de esta manera es posible agregar las funcionalidades que el módulo expone. Las operaciones principales que se deben implementar son las encargadas de atender los eventos de:&lt;br /&gt;
*inicialización&lt;br /&gt;
*liberación de recursos&lt;br /&gt;
*configuración&lt;br /&gt;
&lt;br /&gt;
El siguiente es el codigo del UserModule del sensor Temperatura:&lt;br /&gt;
&lt;br /&gt;
Codigo User Module Temperatura[http://www.fing.edu.uy/inco/proyectos/butia/mediawiki/images/b/be/Temp_usermodule.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Reconocimiento PnP===&lt;br /&gt;
&lt;br /&gt;
Se toma un valor de resistencia no utilizado en la cartilla [https://docs.google.com/spreadsheet/ccc?key=0AvO96_3p52-AdFdtaE1YbzV1ZmhVRldjSVE0OUtEZGc#gid=0)] y se agregan sus respectivas constantes (por ejemplo en el caso de la temperatura R_TEMP_MIN, R_TEMP_MAX), con los valores dados por dicha tabla, también se debe aumentar la cantidad de dispositivos (MAX_DEVICES) del archivo pnp.h.&lt;br /&gt;
&lt;br /&gt;
Luego en el pnp.c en la función table_device_id_resistance se debe agregar el modulo nuevo con las constantes definidas anteriormente&lt;br /&gt;
&lt;br /&gt;
     rom const device_resistance table_device_id_resistance[MAX_DEVICES] = {&lt;br /&gt;
           ...&lt;br /&gt;
           { &amp;quot;temp&amp;quot;, R_TEMP_MIN, R_TEMP_MAX}&lt;br /&gt;
     };&lt;br /&gt;
&lt;br /&gt;
===Crear Driver===&lt;br /&gt;
&lt;br /&gt;
A continuación se encuentra el driver del sensor temperatura:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
    import math &lt;br /&gt;
&lt;br /&gt;
    RD_VERSION = 0x00&lt;br /&gt;
    GET_VALUE = 0x01 &lt;br /&gt;
    VCC = 65536 &lt;br /&gt;
&lt;br /&gt;
    def getVersion(dev):&lt;br /&gt;
        dev.send([RD_VERSION])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        return raw[1] + raw[2] * 256&lt;br /&gt;
 &lt;br /&gt;
    def getValue(dev):&lt;br /&gt;
        dev.send([GET_VALUE])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        volt = (raw[1] + raw[2] * 256) * 5.0 / VCC&lt;br /&gt;
        return math.floor(volt * 1000.0) / 10.0&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde el getValue hace la traducción de la salida del sensor a grados celsius tal como se especificó en la sección del sensor Temperatura.&lt;br /&gt;
&lt;br /&gt;
===Grabar Firmware===&lt;br /&gt;
&lt;br /&gt;
El microcontrolador contiene un bootloader que permite grabar el firmware sin necesidad de un programador por hardware.&lt;br /&gt;
Para grabar el firmware se utiliza el siguiente comando: ./fsusb --force_program usb4all2.hex. Donde usb4all2.hex es el binario generado como resultado de compilar el proyecto (con los usermodules nuevos agregados) y fsusb es un programa que implementa el protocolo de grabación de firmware de microchip.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Demos==&lt;br /&gt;
===Sensor Temperatura===&lt;br /&gt;
Para esta demo se utilió un programa Python que muestra en consola la temperatura tomada.&lt;br /&gt;
&amp;lt;code&amp;gt;	&lt;br /&gt;
   print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
   while 1:&lt;br /&gt;
        temperature=robot.getTemperature(1)&lt;br /&gt;
        if temperature == -1:&lt;br /&gt;
            print &amp;quot;OH NO! ERROR&amp;quot;&lt;br /&gt;
        else:&lt;br /&gt;
            clear() &lt;br /&gt;
            print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
            print (str(temperature) + &amp;quot; C&amp;quot;) &lt;br /&gt;
        time.sleep(2)&lt;br /&gt;
&amp;lt;/code&amp;gt;	&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;youtube&amp;gt;PrNPiMWmwY0&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sensor Movimiento===&lt;br /&gt;
Para esta demo se utilió un programa Python que muestra en consola cuando se detectó movimiento.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
   print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
   while 1:        &lt;br /&gt;
        sensor=robot.getMotion(1)        &lt;br /&gt;
        if sensor == 1:&lt;br /&gt;
           clear() &lt;br /&gt;
           print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
           print &amp;quot;NOS MOVEMOS!!&amp;quot;&lt;br /&gt;
        else:&lt;br /&gt;
           if sensor == -1:&lt;br /&gt;
              print &amp;quot;OH NO! ERROR&amp;quot;&lt;br /&gt;
           else:&lt;br /&gt;
              clear()&lt;br /&gt;
              print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
        time.sleep(0.5)&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;youtube&amp;gt;mSEpZyIHv64&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Conclusiones==&lt;br /&gt;
*Se implementaron dos sensores nuevos, útiles y de bajo costo: Temperatura y Movimiento.&lt;br /&gt;
El de temperatura nos parece de gran utilidad para la estación meteorológica que se está intentando construir, ya que a demás la temperatura es una magnitud fácilmente comprendida por niños.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
El de movimiento nos pareció un sensor que puede llegar a ser entretenido para niños, ya que programando algo relativamente sencillo se puede llegar a algo interesante. Por ejemplo que se prenda una luz cuando alguien se mueve.&lt;br /&gt;
&lt;br /&gt;
*Se investigaron posibles sensores brújulas existentes en el mercado para un gran posible proyecto futuro&lt;br /&gt;
El costo de estas varía según el componente pero mas o menos rondan por los 40 dolares&lt;br /&gt;
&lt;br /&gt;
*Se logró implementar utilizando un plugin ya existente (Follow Me) una primer experiencia de brújula en Butiá&lt;br /&gt;
&lt;br /&gt;
==Trabajo a Futuro==&lt;br /&gt;
*Realizar el diseño de las placas para los módulos implementados&lt;br /&gt;
*Implementar sensor de Gas&lt;br /&gt;
Esto no se pudo realizar ya que no encontramos documentación de como conectar el sensor con la placa. Pero una vez que esto se conozca sería seguir el procedimiento hecho para los otros sensores.&lt;br /&gt;
*Investigar los dispositivos seriales y su conexión con la placa para implementar los sensores de temperatura y humedad seriales&lt;br /&gt;
*Continuar con la Brújula&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5975</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5975"/>
				<updated>2014-09-17T15:00:18Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: /* Brújula con Follow Me */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Objetivos===&lt;br /&gt;
*Investigación de kits educativos actuales&lt;br /&gt;
*Implementación de sensores nuevos (y de utilidad) para el kit Butiá&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Cámara&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 ([http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf]); y el de temperatura y humedad DHT11 ([http://akizukidenshi.com/download/ds/aosong/DHT11.pdf]). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, además no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
=====Brújula con Follow Me=====&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son caros y difíciles de conseguir en el medio local, por lo que se tendrían que traer del exterior y esto trae consigo demoras que no podemos afrontar, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
Hemos hecho una implementación con la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. &lt;br /&gt;
La implementación de esto es:&lt;br /&gt;
*Follow me “sigue” el color rojo&lt;br /&gt;
*Ae utiliza una Brújula que tiene aguja que apunta al norte en rojo&lt;br /&gt;
*Se centra la brújula con la camara tal que queden alineados sus puntos medios&lt;br /&gt;
*Se toma que la posición actual es desde el medio (0,0) &amp;quot;mirando&amp;quot; hacia la derecha&lt;br /&gt;
Luego con la posición dada por el follow me se realizan los siguientes cálculos:&lt;br /&gt;
*Se toma el coseno del ángulo, dado por la coordenada x del circulo trigonométrico. En este caso para obtener esta x se hace x-160/160 ya que el diámetro total tomado por el follow me es de 320, entonces el radio del círculo sería 160 por lo tanto si la x es 160 sería la x 0 del cículo y el coseno sería 0&lt;br /&gt;
*Se calcula el arcoseno de x se pasa el resultado a grados, luego dependiendo de la coordenada y, el ángulo sera mayor o menor a 180 grados&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.png]]&lt;br /&gt;
&lt;br /&gt;
==Implementación==&lt;br /&gt;
&lt;br /&gt;
A continuación se detallan los pasos seguidos para incorporar dichos sensores al Butiá:&lt;br /&gt;
*Crear User Module&lt;br /&gt;
*Reconocimiento PnP&lt;br /&gt;
*Crear Driver&lt;br /&gt;
*Grabar Firmware&lt;br /&gt;
&lt;br /&gt;
===Crear User Module===&lt;br /&gt;
&lt;br /&gt;
Un usermodule debe cumplir con una API determinada, de esta manera es posible agregar las funcionalidades que el módulo expone. Las operaciones principales que se deben implementar son las encargadas de atender los eventos de:&lt;br /&gt;
*inicialización&lt;br /&gt;
*liberación de recursos&lt;br /&gt;
*configuración&lt;br /&gt;
&lt;br /&gt;
El siguiente es el codigo del UserModule del sensor Temperatura:&lt;br /&gt;
&lt;br /&gt;
Codigo User Module Temperatura[http://www.fing.edu.uy/inco/proyectos/butia/mediawiki/images/b/be/Temp_usermodule.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Reconocimiento PnP===&lt;br /&gt;
&lt;br /&gt;
Se toma un valor de resistencia no utilizado en la cartilla [https://docs.google.com/spreadsheet/ccc?key=0AvO96_3p52-AdFdtaE1YbzV1ZmhVRldjSVE0OUtEZGc#gid=0)] y se agregan sus respectivas constantes (por ejemplo en el caso de la temperatura R_TEMP_MIN, R_TEMP_MAX), con los valores dados por dicha tabla, también se debe aumentar la cantidad de dispositivos (MAX_DEVICES) del archivo pnp.h.&lt;br /&gt;
&lt;br /&gt;
Luego en el pnp.c en la función table_device_id_resistance se debe agregar el modulo nuevo con las constantes definidas anteriormente&lt;br /&gt;
&lt;br /&gt;
     rom const device_resistance table_device_id_resistance[MAX_DEVICES] = {&lt;br /&gt;
           ...&lt;br /&gt;
           { &amp;quot;temp&amp;quot;, R_TEMP_MIN, R_TEMP_MAX}&lt;br /&gt;
     };&lt;br /&gt;
&lt;br /&gt;
===Crear Driver===&lt;br /&gt;
&lt;br /&gt;
A continuación se encuentra el driver del sensor temperatura:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
    import math &lt;br /&gt;
&lt;br /&gt;
    RD_VERSION = 0x00&lt;br /&gt;
    GET_VALUE = 0x01 &lt;br /&gt;
    VCC = 65536 &lt;br /&gt;
&lt;br /&gt;
    def getVersion(dev):&lt;br /&gt;
        dev.send([RD_VERSION])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        return raw[1] + raw[2] * 256&lt;br /&gt;
 &lt;br /&gt;
    def getValue(dev):&lt;br /&gt;
        dev.send([GET_VALUE])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        volt = (raw[1] + raw[2] * 256) * 5.0 / VCC&lt;br /&gt;
        return math.floor(volt * 1000.0) / 10.0&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde el getValue hace la traducción de la salida del sensor a grados celsius tal como se especificó en la sección del sensor Temperatura.&lt;br /&gt;
&lt;br /&gt;
===Grabar Firmware===&lt;br /&gt;
&lt;br /&gt;
El microcontrolador contiene un bootloader que permite grabar el firmware sin necesidad de un programador por hardware.&lt;br /&gt;
Para grabar el firmware se utiliza el siguiente comando: ./fsusb --force_program usb4all2.hex. Donde usb4all2.hex es el binario generado como resultado de compilar el proyecto (con los usermodules nuevos agregados) y fsusb es un programa que implementa el protocolo de grabación de firmware de microchip.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Demos==&lt;br /&gt;
===Sensor Temperatura===&lt;br /&gt;
Para esta demo se utilió un programa Python que muestra en consola la temperatura tomada.&lt;br /&gt;
&amp;lt;code&amp;gt;	&lt;br /&gt;
   print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
   while 1:&lt;br /&gt;
        temperature=robot.getTemperature(1)&lt;br /&gt;
        if temperature == -1:&lt;br /&gt;
            print &amp;quot;OH NO! ERROR&amp;quot;&lt;br /&gt;
        else:&lt;br /&gt;
            clear() &lt;br /&gt;
            print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
            print (str(temperature) + &amp;quot; C&amp;quot;) &lt;br /&gt;
        time.sleep(2)&lt;br /&gt;
&amp;lt;/code&amp;gt;	&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;youtube&amp;gt;PrNPiMWmwY0&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sensor Movimiento===&lt;br /&gt;
Para esta demo se utilió un programa Python que muestra en consola cuando se detectó movimiento.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
   print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
   while 1:        &lt;br /&gt;
        sensor=robot.getMotion(1)        &lt;br /&gt;
        if sensor == 1:&lt;br /&gt;
           clear() &lt;br /&gt;
           print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
           print &amp;quot;NOS MOVEMOS!!&amp;quot;&lt;br /&gt;
        else:&lt;br /&gt;
           if sensor == -1:&lt;br /&gt;
              print &amp;quot;OH NO! ERROR&amp;quot;&lt;br /&gt;
           else:&lt;br /&gt;
              clear()&lt;br /&gt;
              print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
        time.sleep(0.5)&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;youtube&amp;gt;mSEpZyIHv64&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Conclusiones==&lt;br /&gt;
*Se implementaron dos sensores nuevos, útiles y de bajo costo: Temperatura y Movimiento.&lt;br /&gt;
El de temperatura nos parece de gran utilidad para la estación meteorológica que se está intentando construir, ya que a demás la temperatura es una magnitud fácilmente comprendida por niños.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
El de movimiento nos pareció un sensor que puede llegar a ser entretenido para niños, ya que programando algo relativamente sencillo se puede llegar a algo interesante. Por ejemplo que se prenda una luz cuando alguien se mueve.&lt;br /&gt;
&lt;br /&gt;
*Se investigaron posibles sensores brújulas existentes en el mercado para un gran posible proyecto futuro&lt;br /&gt;
El costo de estas varía según el componente pero mas o menos rondan por los 40 dolares&lt;br /&gt;
&lt;br /&gt;
*Se logró implementar utilizando un plugin ya existente (Follow Me) una primer experiencia de brújula en Butiá&lt;br /&gt;
&lt;br /&gt;
==Trabajo a Futuro==&lt;br /&gt;
*Realizar el diseño de las placas para los módulos implementados&lt;br /&gt;
*Implementar sensor de Gas&lt;br /&gt;
Esto no se pudo realizar ya que no encontramos documentación de como conectar el sensor con la placa. Pero una vez que esto se conozca sería seguir el procedimiento hecho para los otros sensores.&lt;br /&gt;
*Investigar los dispositivos seriales y su conexión con la placa para implementar los sensores de temperatura y humedad seriales&lt;br /&gt;
*Continuar con la Brújula&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5974</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5974"/>
				<updated>2014-09-17T14:54:17Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: /* Brújula con Follow Me */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Objetivos===&lt;br /&gt;
*Investigación de kits educativos actuales&lt;br /&gt;
*Implementación de sensores nuevos (y de utilidad) para el kit Butiá&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Cámara&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 ([http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf]); y el de temperatura y humedad DHT11 ([http://akizukidenshi.com/download/ds/aosong/DHT11.pdf]). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, además no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
=====Brújula con Follow Me=====&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son caros y difíciles de conseguir en el medio local, por lo que se tendrían que traer del exterior y esto trae consigo demoras que no podemos afrontar, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
Hemos hecho una implementación con la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. &lt;br /&gt;
La implementación de esto es:&lt;br /&gt;
*Follow me “sigue” el color rojo&lt;br /&gt;
*Ae utiliza una Brújula que tiene aguja que apunta al norte en rojo&lt;br /&gt;
*Se centra la brújula con la camara tal que queden alineados sus puntos medios&lt;br /&gt;
*Se toma que la posición actual es desde el medio (0,0) &amp;quot;mirando&amp;quot; hacia la derecha&lt;br /&gt;
Luego con la posición dada por el follow me se realizan los siguientes cálculos:&lt;br /&gt;
*Se toma el coseno del ángulo, dado por la coordenada x del circulo trigonométrico. En este caso para obtener esta x se hace x-160/160 ya que el diámetro total tomado por el follow me es de 320, entonces el radio del círculo sería 160 por lo tanto si la x es 160 el coseno sería 1 &lt;br /&gt;
*Se calcula el arcoseno de x se pasa el resultado a grados, luego dependiendo de la coordenada y, el ángulo sera mayor o menor a 180 grados&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.png]]&lt;br /&gt;
&lt;br /&gt;
==Implementación==&lt;br /&gt;
&lt;br /&gt;
A continuación se detallan los pasos seguidos para incorporar dichos sensores al Butiá:&lt;br /&gt;
*Crear User Module&lt;br /&gt;
*Reconocimiento PnP&lt;br /&gt;
*Crear Driver&lt;br /&gt;
*Grabar Firmware&lt;br /&gt;
&lt;br /&gt;
===Crear User Module===&lt;br /&gt;
&lt;br /&gt;
Un usermodule debe cumplir con una API determinada, de esta manera es posible agregar las funcionalidades que el módulo expone. Las operaciones principales que se deben implementar son las encargadas de atender los eventos de:&lt;br /&gt;
*inicialización&lt;br /&gt;
*liberación de recursos&lt;br /&gt;
*configuración&lt;br /&gt;
&lt;br /&gt;
El siguiente es el codigo del UserModule del sensor Temperatura:&lt;br /&gt;
&lt;br /&gt;
Codigo User Module Temperatura[http://www.fing.edu.uy/inco/proyectos/butia/mediawiki/images/b/be/Temp_usermodule.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Reconocimiento PnP===&lt;br /&gt;
&lt;br /&gt;
Se toma un valor de resistencia no utilizado en la cartilla [https://docs.google.com/spreadsheet/ccc?key=0AvO96_3p52-AdFdtaE1YbzV1ZmhVRldjSVE0OUtEZGc#gid=0)] y se agregan sus respectivas constantes (por ejemplo en el caso de la temperatura R_TEMP_MIN, R_TEMP_MAX), con los valores dados por dicha tabla, también se debe aumentar la cantidad de dispositivos (MAX_DEVICES) del archivo pnp.h.&lt;br /&gt;
&lt;br /&gt;
Luego en el pnp.c en la función table_device_id_resistance se debe agregar el modulo nuevo con las constantes definidas anteriormente&lt;br /&gt;
&lt;br /&gt;
     rom const device_resistance table_device_id_resistance[MAX_DEVICES] = {&lt;br /&gt;
           ...&lt;br /&gt;
           { &amp;quot;temp&amp;quot;, R_TEMP_MIN, R_TEMP_MAX}&lt;br /&gt;
     };&lt;br /&gt;
&lt;br /&gt;
===Crear Driver===&lt;br /&gt;
&lt;br /&gt;
A continuación se encuentra el driver del sensor temperatura:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
    import math &lt;br /&gt;
&lt;br /&gt;
    RD_VERSION = 0x00&lt;br /&gt;
    GET_VALUE = 0x01 &lt;br /&gt;
    VCC = 65536 &lt;br /&gt;
&lt;br /&gt;
    def getVersion(dev):&lt;br /&gt;
        dev.send([RD_VERSION])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        return raw[1] + raw[2] * 256&lt;br /&gt;
 &lt;br /&gt;
    def getValue(dev):&lt;br /&gt;
        dev.send([GET_VALUE])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        volt = (raw[1] + raw[2] * 256) * 5.0 / VCC&lt;br /&gt;
        return math.floor(volt * 1000.0) / 10.0&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde el getValue hace la traducción de la salida del sensor a grados celsius tal como se especificó en la sección del sensor Temperatura.&lt;br /&gt;
&lt;br /&gt;
===Grabar Firmware===&lt;br /&gt;
&lt;br /&gt;
El microcontrolador contiene un bootloader que permite grabar el firmware sin necesidad de un programador por hardware.&lt;br /&gt;
Para grabar el firmware se utiliza el siguiente comando: ./fsusb --force_program usb4all2.hex. Donde usb4all2.hex es el binario generado como resultado de compilar el proyecto (con los usermodules nuevos agregados) y fsusb es un programa que implementa el protocolo de grabación de firmware de microchip.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Demos==&lt;br /&gt;
===Sensor Temperatura===&lt;br /&gt;
Para esta demo se utilió un programa Python que muestra en consola la temperatura tomada.&lt;br /&gt;
&amp;lt;code&amp;gt;	&lt;br /&gt;
   print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
   while 1:&lt;br /&gt;
        temperature=robot.getTemperature(1)&lt;br /&gt;
        if temperature == -1:&lt;br /&gt;
            print &amp;quot;OH NO! ERROR&amp;quot;&lt;br /&gt;
        else:&lt;br /&gt;
            clear() &lt;br /&gt;
            print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
            print (str(temperature) + &amp;quot; C&amp;quot;) &lt;br /&gt;
        time.sleep(2)&lt;br /&gt;
&amp;lt;/code&amp;gt;	&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;youtube&amp;gt;PrNPiMWmwY0&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sensor Movimiento===&lt;br /&gt;
Para esta demo se utilió un programa Python que muestra en consola cuando se detectó movimiento.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
   print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
   while 1:        &lt;br /&gt;
        sensor=robot.getMotion(1)        &lt;br /&gt;
        if sensor == 1:&lt;br /&gt;
           clear() &lt;br /&gt;
           print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
           print &amp;quot;NOS MOVEMOS!!&amp;quot;&lt;br /&gt;
        else:&lt;br /&gt;
           if sensor == -1:&lt;br /&gt;
              print &amp;quot;OH NO! ERROR&amp;quot;&lt;br /&gt;
           else:&lt;br /&gt;
              clear()&lt;br /&gt;
              print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
        time.sleep(0.5)&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;youtube&amp;gt;mSEpZyIHv64&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Conclusiones==&lt;br /&gt;
*Se implementaron dos sensores nuevos, útiles y de bajo costo: Temperatura y Movimiento.&lt;br /&gt;
El de temperatura nos parece de gran utilidad para la estación meteorológica que se está intentando construir, ya que a demás la temperatura es una magnitud fácilmente comprendida por niños.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
El de movimiento nos pareció un sensor que puede llegar a ser entretenido para niños, ya que programando algo relativamente sencillo se puede llegar a algo interesante. Por ejemplo que se prenda una luz cuando alguien se mueve.&lt;br /&gt;
&lt;br /&gt;
*Se investigaron posibles sensores brújulas existentes en el mercado para un gran posible proyecto futuro&lt;br /&gt;
El costo de estas varía según el componente pero mas o menos rondan por los 40 dolares&lt;br /&gt;
&lt;br /&gt;
*Se logró implementar utilizando un plugin ya existente (Follow Me) una primer experiencia de brújula en Butiá&lt;br /&gt;
&lt;br /&gt;
==Trabajo a Futuro==&lt;br /&gt;
*Realizar el diseño de las placas para los módulos implementados&lt;br /&gt;
*Implementar sensor de Gas&lt;br /&gt;
Esto no se pudo realizar ya que no encontramos documentación de como conectar el sensor con la placa. Pero una vez que esto se conozca sería seguir el procedimiento hecho para los otros sensores.&lt;br /&gt;
*Investigar los dispositivos seriales y su conexión con la placa para implementar los sensores de temperatura y humedad seriales&lt;br /&gt;
*Continuar con la Brújula&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5953</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5953"/>
				<updated>2014-09-15T05:33:20Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: /* Conclusiones */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Objetivos===&lt;br /&gt;
*Investigación de kits educativos actuales&lt;br /&gt;
*Implementación de sensores nuevos (y de utilidad) para el kit Butiá&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Cámara&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 ([http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf]); y el de temperatura y humedad DHT11 ([http://akizukidenshi.com/download/ds/aosong/DHT11.pdf]). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, además no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
=====Brújula con Follow Me=====&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son caros y difíciles de conseguir en el medio local, por lo que se tendrían que traer del exterior y esto trae consigo demoras que no podemos afrontar, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. La implementación de esto sería:&lt;br /&gt;
Follow me “sigue” el color rojo, se utiliza una Brújula que tiene aguja que apunta al norte en rojo, se centra la brújula con el punto de coordenadas 0,0 de la cámara y luego con la posición dada por el follow me se realizan los siguientes cálculos:&lt;br /&gt;
*Se toma el coseno del ángulo, dado por la coordenada x del follow me &lt;br /&gt;
*Se calcula el arcoseno y se hacen otros cálculos para obtener el ángulo en grados (dependiendo de la coordenada y, el ángulo sera mayor o menor a 180 grados)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.png]]&lt;br /&gt;
&lt;br /&gt;
==Implementación==&lt;br /&gt;
&lt;br /&gt;
A continuación se detallan los pasos seguidos para incorporar dichos sensores al Butiá:&lt;br /&gt;
*Crear User Module&lt;br /&gt;
*Reconocimiento PnP&lt;br /&gt;
*Crear Driver&lt;br /&gt;
*Grabar Firmware&lt;br /&gt;
&lt;br /&gt;
===Crear User Module===&lt;br /&gt;
&lt;br /&gt;
Un usermodule debe cumplir con una API determinada, de esta manera es posible agregar las funcionalidades que el módulo expone. Las operaciones principales que se deben implementar son las encargadas de atender los eventos de:&lt;br /&gt;
*inicialización&lt;br /&gt;
*liberación de recursos&lt;br /&gt;
*configuración&lt;br /&gt;
&lt;br /&gt;
El siguiente es el codigo del UserModule del sensor Temperatura:&lt;br /&gt;
&lt;br /&gt;
Codigo User Module Temperatura[http://www.fing.edu.uy/inco/proyectos/butia/mediawiki/images/b/be/Temp_usermodule.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Reconocimiento PnP===&lt;br /&gt;
&lt;br /&gt;
Se toma un valor de resistencia no utilizado en la cartilla [https://docs.google.com/spreadsheet/ccc?key=0AvO96_3p52-AdFdtaE1YbzV1ZmhVRldjSVE0OUtEZGc#gid=0)] y se agregan sus respectivas constantes (por ejemplo en el caso de la temperatura R_TEMP_MIN, R_TEMP_MAX), con los valores dados por dicha tabla, también se debe aumentar la cantidad de dispositivos (MAX_DEVICES) del archivo pnp.h.&lt;br /&gt;
&lt;br /&gt;
Luego en el pnp.c en la función table_device_id_resistance se debe agregar el modulo nuevo con las constantes definidas anteriormente&lt;br /&gt;
&lt;br /&gt;
     rom const device_resistance table_device_id_resistance[MAX_DEVICES] = {&lt;br /&gt;
           ...&lt;br /&gt;
           { &amp;quot;temp&amp;quot;, R_TEMP_MIN, R_TEMP_MAX}&lt;br /&gt;
     };&lt;br /&gt;
&lt;br /&gt;
===Crear Driver===&lt;br /&gt;
&lt;br /&gt;
A continuación se encuentra el driver del sensor temperatura:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
    import math &lt;br /&gt;
&lt;br /&gt;
    RD_VERSION = 0x00&lt;br /&gt;
    GET_VALUE = 0x01 &lt;br /&gt;
    VCC = 65536 &lt;br /&gt;
&lt;br /&gt;
    def getVersion(dev):&lt;br /&gt;
        dev.send([RD_VERSION])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        return raw[1] + raw[2] * 256&lt;br /&gt;
 &lt;br /&gt;
    def getValue(dev):&lt;br /&gt;
        dev.send([GET_VALUE])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        volt = (raw[1] + raw[2] * 256) * 5.0 / VCC&lt;br /&gt;
        return math.floor(volt * 1000.0) / 10.0&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde el getValue hace la traducción de la salida del sensor a grados celsius tal como se especificó en la sección del sensor Temperatura.&lt;br /&gt;
&lt;br /&gt;
===Grabar Firmware===&lt;br /&gt;
&lt;br /&gt;
El microcontrolador contiene un bootloader que permite grabar el firmware sin necesidad de un programador por hardware.&lt;br /&gt;
Para grabar el firmware se utiliza el siguiente comando: ./fsusb --force_program usb4all2.hex. Donde usb4all2.hex es el binario generado como resultado de compilar el proyecto (con los usermodules nuevos agregados) y fsusb es un programa que implementa el protocolo de grabación de firmware de microchip.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Demos==&lt;br /&gt;
===Sensor Temperatura===&lt;br /&gt;
Para esta demo se utilió un programa Python que muestra en consola la temperatura tomada.&lt;br /&gt;
&amp;lt;code&amp;gt;	&lt;br /&gt;
   print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
   while 1:&lt;br /&gt;
        temperature=robot.getTemperature(1)&lt;br /&gt;
        if temperature == -1:&lt;br /&gt;
            print &amp;quot;OH NO! ERROR&amp;quot;&lt;br /&gt;
        else:&lt;br /&gt;
            clear() &lt;br /&gt;
            print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
            print (str(temperature) + &amp;quot; C&amp;quot;) &lt;br /&gt;
        time.sleep(2)&lt;br /&gt;
&amp;lt;/code&amp;gt;	&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;youtube&amp;gt;PrNPiMWmwY0&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sensor Movimiento===&lt;br /&gt;
Para esta demo se utilió un programa Python que muestra en consola cuando se detectó movimiento.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
   print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
   while 1:        &lt;br /&gt;
        sensor=robot.getMotion(1)        &lt;br /&gt;
        if sensor == 1:&lt;br /&gt;
           clear() &lt;br /&gt;
           print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
           print &amp;quot;NOS MOVEMOS!!&amp;quot;&lt;br /&gt;
        else:&lt;br /&gt;
           if sensor == -1:&lt;br /&gt;
              print &amp;quot;OH NO! ERROR&amp;quot;&lt;br /&gt;
           else:&lt;br /&gt;
              clear()&lt;br /&gt;
              print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
        time.sleep(0.5)&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;youtube&amp;gt;mSEpZyIHv64&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Conclusiones==&lt;br /&gt;
*Se implementaron dos sensores nuevos, útiles y de bajo costo: Temperatura y Movimiento.&lt;br /&gt;
El de temperatura nos parece de gran utilidad para la estación meteorológica que se está intentando construir, ya que a demás la temperatura es una magnitud fácilmente comprendida por niños.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
El de movimiento nos pareció un sensor que puede llegar a ser entretenido para niños, ya que programando algo relativamente sencillo se puede llegar a algo interesante. Por ejemplo que se prenda una luz cuando alguien se mueve.&lt;br /&gt;
&lt;br /&gt;
*Se investigaron posibles sensores brújulas existentes en el mercado para un gran posible proyecto futuro&lt;br /&gt;
El costo de estas varía según el componente pero mas o menos rondan por los 40 dolares&lt;br /&gt;
&lt;br /&gt;
*Se logró implementar utilizando un plugin ya existente (Follow Me) una primer experiencia de brújula en Butiá&lt;br /&gt;
&lt;br /&gt;
==Trabajo a Futuro==&lt;br /&gt;
*Realizar el diseño de las placas para los módulos implementados&lt;br /&gt;
*Implementar sensor de Gas&lt;br /&gt;
Esto no se pudo realizar ya que no encontramos documentación de como conectar el sensor con la placa. Pero una vez que esto se conozca sería seguir el procedimiento hecho para los otros sensores.&lt;br /&gt;
*Investigar los dispositivos seriales y su conexión con la placa para implementar los sensores de temperatura y humedad seriales&lt;br /&gt;
*Continuar con la Brújula&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5952</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5952"/>
				<updated>2014-09-15T05:32:55Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: /* Brújula con Follow Me */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Objetivos===&lt;br /&gt;
*Investigación de kits educativos actuales&lt;br /&gt;
*Implementación de sensores nuevos (y de utilidad) para el kit Butiá&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Cámara&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 ([http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf]); y el de temperatura y humedad DHT11 ([http://akizukidenshi.com/download/ds/aosong/DHT11.pdf]). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, además no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
=====Brújula con Follow Me=====&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son caros y difíciles de conseguir en el medio local, por lo que se tendrían que traer del exterior y esto trae consigo demoras que no podemos afrontar, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. La implementación de esto sería:&lt;br /&gt;
Follow me “sigue” el color rojo, se utiliza una Brújula que tiene aguja que apunta al norte en rojo, se centra la brújula con el punto de coordenadas 0,0 de la cámara y luego con la posición dada por el follow me se realizan los siguientes cálculos:&lt;br /&gt;
*Se toma el coseno del ángulo, dado por la coordenada x del follow me &lt;br /&gt;
*Se calcula el arcoseno y se hacen otros cálculos para obtener el ángulo en grados (dependiendo de la coordenada y, el ángulo sera mayor o menor a 180 grados)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.png]]&lt;br /&gt;
&lt;br /&gt;
==Implementación==&lt;br /&gt;
&lt;br /&gt;
A continuación se detallan los pasos seguidos para incorporar dichos sensores al Butiá:&lt;br /&gt;
*Crear User Module&lt;br /&gt;
*Reconocimiento PnP&lt;br /&gt;
*Crear Driver&lt;br /&gt;
*Grabar Firmware&lt;br /&gt;
&lt;br /&gt;
===Crear User Module===&lt;br /&gt;
&lt;br /&gt;
Un usermodule debe cumplir con una API determinada, de esta manera es posible agregar las funcionalidades que el módulo expone. Las operaciones principales que se deben implementar son las encargadas de atender los eventos de:&lt;br /&gt;
*inicialización&lt;br /&gt;
*liberación de recursos&lt;br /&gt;
*configuración&lt;br /&gt;
&lt;br /&gt;
El siguiente es el codigo del UserModule del sensor Temperatura:&lt;br /&gt;
&lt;br /&gt;
Codigo User Module Temperatura[http://www.fing.edu.uy/inco/proyectos/butia/mediawiki/images/b/be/Temp_usermodule.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Reconocimiento PnP===&lt;br /&gt;
&lt;br /&gt;
Se toma un valor de resistencia no utilizado en la cartilla [https://docs.google.com/spreadsheet/ccc?key=0AvO96_3p52-AdFdtaE1YbzV1ZmhVRldjSVE0OUtEZGc#gid=0)] y se agregan sus respectivas constantes (por ejemplo en el caso de la temperatura R_TEMP_MIN, R_TEMP_MAX), con los valores dados por dicha tabla, también se debe aumentar la cantidad de dispositivos (MAX_DEVICES) del archivo pnp.h.&lt;br /&gt;
&lt;br /&gt;
Luego en el pnp.c en la función table_device_id_resistance se debe agregar el modulo nuevo con las constantes definidas anteriormente&lt;br /&gt;
&lt;br /&gt;
     rom const device_resistance table_device_id_resistance[MAX_DEVICES] = {&lt;br /&gt;
           ...&lt;br /&gt;
           { &amp;quot;temp&amp;quot;, R_TEMP_MIN, R_TEMP_MAX}&lt;br /&gt;
     };&lt;br /&gt;
&lt;br /&gt;
===Crear Driver===&lt;br /&gt;
&lt;br /&gt;
A continuación se encuentra el driver del sensor temperatura:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
    import math &lt;br /&gt;
&lt;br /&gt;
    RD_VERSION = 0x00&lt;br /&gt;
    GET_VALUE = 0x01 &lt;br /&gt;
    VCC = 65536 &lt;br /&gt;
&lt;br /&gt;
    def getVersion(dev):&lt;br /&gt;
        dev.send([RD_VERSION])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        return raw[1] + raw[2] * 256&lt;br /&gt;
 &lt;br /&gt;
    def getValue(dev):&lt;br /&gt;
        dev.send([GET_VALUE])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        volt = (raw[1] + raw[2] * 256) * 5.0 / VCC&lt;br /&gt;
        return math.floor(volt * 1000.0) / 10.0&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde el getValue hace la traducción de la salida del sensor a grados celsius tal como se especificó en la sección del sensor Temperatura.&lt;br /&gt;
&lt;br /&gt;
===Grabar Firmware===&lt;br /&gt;
&lt;br /&gt;
El microcontrolador contiene un bootloader que permite grabar el firmware sin necesidad de un programador por hardware.&lt;br /&gt;
Para grabar el firmware se utiliza el siguiente comando: ./fsusb --force_program usb4all2.hex. Donde usb4all2.hex es el binario generado como resultado de compilar el proyecto (con los usermodules nuevos agregados) y fsusb es un programa que implementa el protocolo de grabación de firmware de microchip.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Demos==&lt;br /&gt;
===Sensor Temperatura===&lt;br /&gt;
Para esta demo se utilió un programa Python que muestra en consola la temperatura tomada.&lt;br /&gt;
&amp;lt;code&amp;gt;	&lt;br /&gt;
   print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
   while 1:&lt;br /&gt;
        temperature=robot.getTemperature(1)&lt;br /&gt;
        if temperature == -1:&lt;br /&gt;
            print &amp;quot;OH NO! ERROR&amp;quot;&lt;br /&gt;
        else:&lt;br /&gt;
            clear() &lt;br /&gt;
            print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
            print (str(temperature) + &amp;quot; C&amp;quot;) &lt;br /&gt;
        time.sleep(2)&lt;br /&gt;
&amp;lt;/code&amp;gt;	&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;youtube&amp;gt;PrNPiMWmwY0&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sensor Movimiento===&lt;br /&gt;
Para esta demo se utilió un programa Python que muestra en consola cuando se detectó movimiento.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
   print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
   while 1:        &lt;br /&gt;
        sensor=robot.getMotion(1)        &lt;br /&gt;
        if sensor == 1:&lt;br /&gt;
           clear() &lt;br /&gt;
           print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
           print &amp;quot;NOS MOVEMOS!!&amp;quot;&lt;br /&gt;
        else:&lt;br /&gt;
           if sensor == -1:&lt;br /&gt;
              print &amp;quot;OH NO! ERROR&amp;quot;&lt;br /&gt;
           else:&lt;br /&gt;
              clear()&lt;br /&gt;
              print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
        time.sleep(0.5)&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;youtube&amp;gt;mSEpZyIHv64&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Conclusiones==&lt;br /&gt;
*Se implementaron dos sensores nuevos, útiles y de bajo costo: Temperatura y Movimiento.&lt;br /&gt;
El de temperatura nos parece de gran utilidad para la estación meteorológica que se está intentando construir, ya que a demás la temperatura es una magnitud fácilmente comprendida por niños.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
El de movimiento nos pareció un sensor que puede llegar a ser entretenido para niños, ya que programando algo relativamente sencillo se puede llegar a algo interesante. Por ejemplo que se prenda una luz cuando alguien se mueve.&lt;br /&gt;
&lt;br /&gt;
*Se investigaron posibles sensores brújulas existentes en el mercado para un gran posible proyecto futuro&lt;br /&gt;
El costo de estas varía según el componente pero mas o menos rondan por los 40 dolares&lt;br /&gt;
&lt;br /&gt;
*Se logro implementar utilizando un plugin ya existente (Follow Me) una primer experiencia de brujula en Butia&lt;br /&gt;
&lt;br /&gt;
==Trabajo a Futuro==&lt;br /&gt;
*Realizar el diseño de las placas para los módulos implementados&lt;br /&gt;
*Implementar sensor de Gas&lt;br /&gt;
Esto no se pudo realizar ya que no encontramos documentación de como conectar el sensor con la placa. Pero una vez que esto se conozca sería seguir el procedimiento hecho para los otros sensores.&lt;br /&gt;
*Investigar los dispositivos seriales y su conexión con la placa para implementar los sensores de temperatura y humedad seriales&lt;br /&gt;
*Continuar con la Brújula&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5951</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5951"/>
				<updated>2014-09-15T05:22:47Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: /* Conclusiones */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Objetivos===&lt;br /&gt;
*Investigación de kits educativos actuales&lt;br /&gt;
*Implementación de sensores nuevos (y de utilidad) para el kit Butiá&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Cámara&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 ([http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf]); y el de temperatura y humedad DHT11 ([http://akizukidenshi.com/download/ds/aosong/DHT11.pdf]). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, además no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
=====Brújula con Follow Me=====&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son caros y difíciles de conseguir en el medio local, por lo que se tendrían que traer del exterior y esto trae consigo demoras que no podemos afrontar, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. La implementación de esto sería:&lt;br /&gt;
Follow me “sigue” el color rojo, se utiliza una Brújula que tiene aguja que apunta al norte en rojo, se centra la brújula con el punto de coordenadas 0,0 de la cámara y luego con la posición dada por el follow me se realizan los siguientes cálculos:&lt;br /&gt;
*Se toma el coseno del angulo, dado por la coordenada x del follow me &lt;br /&gt;
*Se calcula el arcoseno y se hacen otros calculos para obtener el angulo en grados (dependiendo de la coordenada y, el angulo sera mayor o menor a 180 grados)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.png]]&lt;br /&gt;
&lt;br /&gt;
==Implementación==&lt;br /&gt;
&lt;br /&gt;
A continuación se detallan los pasos seguidos para incorporar dichos sensores al Butiá:&lt;br /&gt;
*Crear User Module&lt;br /&gt;
*Reconocimiento PnP&lt;br /&gt;
*Crear Driver&lt;br /&gt;
*Grabar Firmware&lt;br /&gt;
&lt;br /&gt;
===Crear User Module===&lt;br /&gt;
&lt;br /&gt;
Un usermodule debe cumplir con una API determinada, de esta manera es posible agregar las funcionalidades que el módulo expone. Las operaciones principales que se deben implementar son las encargadas de atender los eventos de:&lt;br /&gt;
*inicialización&lt;br /&gt;
*liberación de recursos&lt;br /&gt;
*configuración&lt;br /&gt;
&lt;br /&gt;
El siguiente es el codigo del UserModule del sensor Temperatura:&lt;br /&gt;
&lt;br /&gt;
Codigo User Module Temperatura[http://www.fing.edu.uy/inco/proyectos/butia/mediawiki/images/b/be/Temp_usermodule.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Reconocimiento PnP===&lt;br /&gt;
&lt;br /&gt;
Se toma un valor de resistencia no utilizado en la cartilla [https://docs.google.com/spreadsheet/ccc?key=0AvO96_3p52-AdFdtaE1YbzV1ZmhVRldjSVE0OUtEZGc#gid=0)] y se agregan sus respectivas constantes (por ejemplo en el caso de la temperatura R_TEMP_MIN, R_TEMP_MAX), con los valores dados por dicha tabla, también se debe aumentar la cantidad de dispositivos (MAX_DEVICES) del archivo pnp.h.&lt;br /&gt;
&lt;br /&gt;
Luego en el pnp.c en la función table_device_id_resistance se debe agregar el modulo nuevo con las constantes definidas anteriormente&lt;br /&gt;
&lt;br /&gt;
     rom const device_resistance table_device_id_resistance[MAX_DEVICES] = {&lt;br /&gt;
           ...&lt;br /&gt;
           { &amp;quot;temp&amp;quot;, R_TEMP_MIN, R_TEMP_MAX}&lt;br /&gt;
     };&lt;br /&gt;
&lt;br /&gt;
===Crear Driver===&lt;br /&gt;
&lt;br /&gt;
A continuación se encuentra el driver del sensor temperatura:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
    import math &lt;br /&gt;
&lt;br /&gt;
    RD_VERSION = 0x00&lt;br /&gt;
    GET_VALUE = 0x01 &lt;br /&gt;
    VCC = 65536 &lt;br /&gt;
&lt;br /&gt;
    def getVersion(dev):&lt;br /&gt;
        dev.send([RD_VERSION])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        return raw[1] + raw[2] * 256&lt;br /&gt;
 &lt;br /&gt;
    def getValue(dev):&lt;br /&gt;
        dev.send([GET_VALUE])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        volt = (raw[1] + raw[2] * 256) * 5.0 / VCC&lt;br /&gt;
        return math.floor(volt * 1000.0) / 10.0&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde el getValue hace la traducción de la salida del sensor a grados celsius tal como se especificó en la sección del sensor Temperatura.&lt;br /&gt;
&lt;br /&gt;
===Grabar Firmware===&lt;br /&gt;
&lt;br /&gt;
El microcontrolador contiene un bootloader que permite grabar el firmware sin necesidad de un programador por hardware.&lt;br /&gt;
Para grabar el firmware se utiliza el siguiente comando: ./fsusb --force_program usb4all2.hex. Donde usb4all2.hex es el binario generado como resultado de compilar el proyecto (con los usermodules nuevos agregados) y fsusb es un programa que implementa el protocolo de grabación de firmware de microchip.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Demos==&lt;br /&gt;
===Sensor Temperatura===&lt;br /&gt;
Para esta demo se utilió un programa Python que muestra en consola la temperatura tomada.&lt;br /&gt;
&amp;lt;code&amp;gt;	&lt;br /&gt;
   print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
   while 1:&lt;br /&gt;
        temperature=robot.getTemperature(1)&lt;br /&gt;
        if temperature == -1:&lt;br /&gt;
            print &amp;quot;OH NO! ERROR&amp;quot;&lt;br /&gt;
        else:&lt;br /&gt;
            clear() &lt;br /&gt;
            print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
            print (str(temperature) + &amp;quot; C&amp;quot;) &lt;br /&gt;
        time.sleep(2)&lt;br /&gt;
&amp;lt;/code&amp;gt;	&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;youtube&amp;gt;PrNPiMWmwY0&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sensor Movimiento===&lt;br /&gt;
Para esta demo se utilió un programa Python que muestra en consola cuando se detectó movimiento.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
   print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
   while 1:        &lt;br /&gt;
        sensor=robot.getMotion(1)        &lt;br /&gt;
        if sensor == 1:&lt;br /&gt;
           clear() &lt;br /&gt;
           print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
           print &amp;quot;NOS MOVEMOS!!&amp;quot;&lt;br /&gt;
        else:&lt;br /&gt;
           if sensor == -1:&lt;br /&gt;
              print &amp;quot;OH NO! ERROR&amp;quot;&lt;br /&gt;
           else:&lt;br /&gt;
              clear()&lt;br /&gt;
              print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
        time.sleep(0.5)&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;youtube&amp;gt;mSEpZyIHv64&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Conclusiones==&lt;br /&gt;
*Se implementaron dos sensores nuevos, útiles y de bajo costo: Temperatura y Movimiento.&lt;br /&gt;
El de temperatura nos parece de gran utilidad para la estación meteorológica que se está intentando construir, ya que a demás la temperatura es una magnitud fácilmente comprendida por niños.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
El de movimiento nos pareció un sensor que puede llegar a ser entretenido para niños, ya que programando algo relativamente sencillo se puede llegar a algo interesante. Por ejemplo que se prenda una luz cuando alguien se mueve.&lt;br /&gt;
&lt;br /&gt;
*Se investigaron posibles sensores brújulas existentes en el mercado para un gran posible proyecto futuro&lt;br /&gt;
El costo de estas varía según el componente pero mas o menos rondan por los 40 dolares&lt;br /&gt;
&lt;br /&gt;
*Se logro implementar utilizando un plugin ya existente (Follow Me) una primer experiencia de brujula en Butia&lt;br /&gt;
&lt;br /&gt;
==Trabajo a Futuro==&lt;br /&gt;
*Realizar el diseño de las placas para los módulos implementados&lt;br /&gt;
*Implementar sensor de Gas&lt;br /&gt;
Esto no se pudo realizar ya que no encontramos documentación de como conectar el sensor con la placa. Pero una vez que esto se conozca sería seguir el procedimiento hecho para los otros sensores.&lt;br /&gt;
*Investigar los dispositivos seriales y su conexión con la placa para implementar los sensores de temperatura y humedad seriales&lt;br /&gt;
*Continuar con la Brújula&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5950</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5950"/>
				<updated>2014-09-15T05:17:58Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: /* Conclusiones */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Objetivos===&lt;br /&gt;
*Investigación de kits educativos actuales&lt;br /&gt;
*Implementación de sensores nuevos (y de utilidad) para el kit Butiá&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Cámara&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 ([http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf]); y el de temperatura y humedad DHT11 ([http://akizukidenshi.com/download/ds/aosong/DHT11.pdf]). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, además no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
=====Brújula con Follow Me=====&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son caros y difíciles de conseguir en el medio local, por lo que se tendrían que traer del exterior y esto trae consigo demoras que no podemos afrontar, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. La implementación de esto sería:&lt;br /&gt;
Follow me “sigue” el color rojo, se utiliza una Brújula que tiene aguja que apunta al norte en rojo, se centra la brújula con el punto de coordenadas 0,0 de la cámara y luego con la posición dada por el follow me se realizan los siguientes cálculos:&lt;br /&gt;
*Se toma el coseno del angulo, dado por la coordenada x del follow me &lt;br /&gt;
*Se calcula el arcoseno y se hacen otros calculos para obtener el angulo en grados (dependiendo de la coordenada y, el angulo sera mayor o menor a 180 grados)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.png]]&lt;br /&gt;
&lt;br /&gt;
==Implementación==&lt;br /&gt;
&lt;br /&gt;
A continuación se detallan los pasos seguidos para incorporar dichos sensores al Butiá:&lt;br /&gt;
*Crear User Module&lt;br /&gt;
*Reconocimiento PnP&lt;br /&gt;
*Crear Driver&lt;br /&gt;
*Grabar Firmware&lt;br /&gt;
&lt;br /&gt;
===Crear User Module===&lt;br /&gt;
&lt;br /&gt;
Un usermodule debe cumplir con una API determinada, de esta manera es posible agregar las funcionalidades que el módulo expone. Las operaciones principales que se deben implementar son las encargadas de atender los eventos de:&lt;br /&gt;
*inicialización&lt;br /&gt;
*liberación de recursos&lt;br /&gt;
*configuración&lt;br /&gt;
&lt;br /&gt;
El siguiente es el codigo del UserModule del sensor Temperatura:&lt;br /&gt;
&lt;br /&gt;
Codigo User Module Temperatura[http://www.fing.edu.uy/inco/proyectos/butia/mediawiki/images/b/be/Temp_usermodule.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Reconocimiento PnP===&lt;br /&gt;
&lt;br /&gt;
Se toma un valor de resistencia no utilizado en la cartilla [https://docs.google.com/spreadsheet/ccc?key=0AvO96_3p52-AdFdtaE1YbzV1ZmhVRldjSVE0OUtEZGc#gid=0)] y se agregan sus respectivas constantes (por ejemplo en el caso de la temperatura R_TEMP_MIN, R_TEMP_MAX), con los valores dados por dicha tabla, también se debe aumentar la cantidad de dispositivos (MAX_DEVICES) del archivo pnp.h.&lt;br /&gt;
&lt;br /&gt;
Luego en el pnp.c en la función table_device_id_resistance se debe agregar el modulo nuevo con las constantes definidas anteriormente&lt;br /&gt;
&lt;br /&gt;
     rom const device_resistance table_device_id_resistance[MAX_DEVICES] = {&lt;br /&gt;
           ...&lt;br /&gt;
           { &amp;quot;temp&amp;quot;, R_TEMP_MIN, R_TEMP_MAX}&lt;br /&gt;
     };&lt;br /&gt;
&lt;br /&gt;
===Crear Driver===&lt;br /&gt;
&lt;br /&gt;
A continuación se encuentra el driver del sensor temperatura:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
    import math &lt;br /&gt;
&lt;br /&gt;
    RD_VERSION = 0x00&lt;br /&gt;
    GET_VALUE = 0x01 &lt;br /&gt;
    VCC = 65536 &lt;br /&gt;
&lt;br /&gt;
    def getVersion(dev):&lt;br /&gt;
        dev.send([RD_VERSION])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        return raw[1] + raw[2] * 256&lt;br /&gt;
 &lt;br /&gt;
    def getValue(dev):&lt;br /&gt;
        dev.send([GET_VALUE])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        volt = (raw[1] + raw[2] * 256) * 5.0 / VCC&lt;br /&gt;
        return math.floor(volt * 1000.0) / 10.0&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde el getValue hace la traducción de la salida del sensor a grados celsius tal como se especificó en la sección del sensor Temperatura.&lt;br /&gt;
&lt;br /&gt;
===Grabar Firmware===&lt;br /&gt;
&lt;br /&gt;
El microcontrolador contiene un bootloader que permite grabar el firmware sin necesidad de un programador por hardware.&lt;br /&gt;
Para grabar el firmware se utiliza el siguiente comando: ./fsusb --force_program usb4all2.hex. Donde usb4all2.hex es el binario generado como resultado de compilar el proyecto (con los usermodules nuevos agregados) y fsusb es un programa que implementa el protocolo de grabación de firmware de microchip.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Demos==&lt;br /&gt;
===Sensor Temperatura===&lt;br /&gt;
Para esta demo se utilió un programa Python que muestra en consola la temperatura tomada.&lt;br /&gt;
&amp;lt;code&amp;gt;	&lt;br /&gt;
   print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
   while 1:&lt;br /&gt;
        temperature=robot.getTemperature(1)&lt;br /&gt;
        if temperature == -1:&lt;br /&gt;
            print &amp;quot;OH NO! ERROR&amp;quot;&lt;br /&gt;
        else:&lt;br /&gt;
            clear() &lt;br /&gt;
            print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
            print (str(temperature) + &amp;quot; C&amp;quot;) &lt;br /&gt;
        time.sleep(2)&lt;br /&gt;
&amp;lt;/code&amp;gt;	&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;youtube&amp;gt;PrNPiMWmwY0&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sensor Movimiento===&lt;br /&gt;
Para esta demo se utilió un programa Python que muestra en consola cuando se detectó movimiento.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
   print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
   while 1:        &lt;br /&gt;
        sensor=robot.getMotion(1)        &lt;br /&gt;
        if sensor == 1:&lt;br /&gt;
           clear() &lt;br /&gt;
           print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
           print &amp;quot;NOS MOVEMOS!!&amp;quot;&lt;br /&gt;
        else:&lt;br /&gt;
           if sensor == -1:&lt;br /&gt;
              print &amp;quot;OH NO! ERROR&amp;quot;&lt;br /&gt;
           else:&lt;br /&gt;
              clear()&lt;br /&gt;
              print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
        time.sleep(0.5)&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;youtube&amp;gt;mSEpZyIHv64&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Conclusiones==&lt;br /&gt;
*Se implementaron dos sensores nuevos, útiles y de bajo costo: Temperatura y Movimiento.&lt;br /&gt;
El de temperatura nos parece de gran utilidad para la estación meteorológica que se está intentando construir, ya que a demás la temperatura es una magnitud fácilmente comprendida por niños.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
El de movimiento nos pareció un sensor que puede llegar a ser entretenido para niños, ya que programando algo relativamente sencillo se puede llegar a algo interesante. Por ejemplo que se prenda una luz cuando alguien se mueve.&lt;br /&gt;
&lt;br /&gt;
*Se investigaron posibles sensores brújulas existentes en el mercado para un gran posible proyecto futuro&lt;br /&gt;
El costo de estas varía según el componente pero mas o menos rondan por los 40 dolares&lt;br /&gt;
&lt;br /&gt;
*Se logro implementar utilizando un plugin ya existente (Follow Me) como primer experiencia de brujula en Butia&lt;br /&gt;
&lt;br /&gt;
==Trabajo a Futuro==&lt;br /&gt;
*Realizar el diseño de las placas para los módulos implementados&lt;br /&gt;
*Implementar sensor de Gas&lt;br /&gt;
Esto no se pudo realizar ya que no encontramos documentación de como conectar el sensor con la placa. Pero una vez que esto se conozca sería seguir el procedimiento hecho para los otros sensores.&lt;br /&gt;
*Investigar los dispositivos seriales y su conexión con la placa para implementar los sensores de temperatura y humedad seriales&lt;br /&gt;
*Continuar con la Brújula&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5949</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5949"/>
				<updated>2014-09-15T05:14:16Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: /* Brújula con Follow Me */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Objetivos===&lt;br /&gt;
*Investigación de kits educativos actuales&lt;br /&gt;
*Implementación de sensores nuevos (y de utilidad) para el kit Butiá&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Cámara&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 ([http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf]); y el de temperatura y humedad DHT11 ([http://akizukidenshi.com/download/ds/aosong/DHT11.pdf]). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, además no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
=====Brújula con Follow Me=====&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son caros y difíciles de conseguir en el medio local, por lo que se tendrían que traer del exterior y esto trae consigo demoras que no podemos afrontar, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. La implementación de esto sería:&lt;br /&gt;
Follow me “sigue” el color rojo, se utiliza una Brújula que tiene aguja que apunta al norte en rojo, se centra la brújula con el punto de coordenadas 0,0 de la cámara y luego con la posición dada por el follow me se realizan los siguientes cálculos:&lt;br /&gt;
*Se toma el coseno del angulo, dado por la coordenada x del follow me &lt;br /&gt;
*Se calcula el arcoseno y se hacen otros calculos para obtener el angulo en grados (dependiendo de la coordenada y, el angulo sera mayor o menor a 180 grados)&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.png]]&lt;br /&gt;
&lt;br /&gt;
==Implementación==&lt;br /&gt;
&lt;br /&gt;
A continuación se detallan los pasos seguidos para incorporar dichos sensores al Butiá:&lt;br /&gt;
*Crear User Module&lt;br /&gt;
*Reconocimiento PnP&lt;br /&gt;
*Crear Driver&lt;br /&gt;
*Grabar Firmware&lt;br /&gt;
&lt;br /&gt;
===Crear User Module===&lt;br /&gt;
&lt;br /&gt;
Un usermodule debe cumplir con una API determinada, de esta manera es posible agregar las funcionalidades que el módulo expone. Las operaciones principales que se deben implementar son las encargadas de atender los eventos de:&lt;br /&gt;
*inicialización&lt;br /&gt;
*liberación de recursos&lt;br /&gt;
*configuración&lt;br /&gt;
&lt;br /&gt;
El siguiente es el codigo del UserModule del sensor Temperatura:&lt;br /&gt;
&lt;br /&gt;
Codigo User Module Temperatura[http://www.fing.edu.uy/inco/proyectos/butia/mediawiki/images/b/be/Temp_usermodule.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Reconocimiento PnP===&lt;br /&gt;
&lt;br /&gt;
Se toma un valor de resistencia no utilizado en la cartilla [https://docs.google.com/spreadsheet/ccc?key=0AvO96_3p52-AdFdtaE1YbzV1ZmhVRldjSVE0OUtEZGc#gid=0)] y se agregan sus respectivas constantes (por ejemplo en el caso de la temperatura R_TEMP_MIN, R_TEMP_MAX), con los valores dados por dicha tabla, también se debe aumentar la cantidad de dispositivos (MAX_DEVICES) del archivo pnp.h.&lt;br /&gt;
&lt;br /&gt;
Luego en el pnp.c en la función table_device_id_resistance se debe agregar el modulo nuevo con las constantes definidas anteriormente&lt;br /&gt;
&lt;br /&gt;
     rom const device_resistance table_device_id_resistance[MAX_DEVICES] = {&lt;br /&gt;
           ...&lt;br /&gt;
           { &amp;quot;temp&amp;quot;, R_TEMP_MIN, R_TEMP_MAX}&lt;br /&gt;
     };&lt;br /&gt;
&lt;br /&gt;
===Crear Driver===&lt;br /&gt;
&lt;br /&gt;
A continuación se encuentra el driver del sensor temperatura:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
    import math &lt;br /&gt;
&lt;br /&gt;
    RD_VERSION = 0x00&lt;br /&gt;
    GET_VALUE = 0x01 &lt;br /&gt;
    VCC = 65536 &lt;br /&gt;
&lt;br /&gt;
    def getVersion(dev):&lt;br /&gt;
        dev.send([RD_VERSION])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        return raw[1] + raw[2] * 256&lt;br /&gt;
 &lt;br /&gt;
    def getValue(dev):&lt;br /&gt;
        dev.send([GET_VALUE])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        volt = (raw[1] + raw[2] * 256) * 5.0 / VCC&lt;br /&gt;
        return math.floor(volt * 1000.0) / 10.0&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde el getValue hace la traducción de la salida del sensor a grados celsius tal como se especificó en la sección del sensor Temperatura.&lt;br /&gt;
&lt;br /&gt;
===Grabar Firmware===&lt;br /&gt;
&lt;br /&gt;
El microcontrolador contiene un bootloader que permite grabar el firmware sin necesidad de un programador por hardware.&lt;br /&gt;
Para grabar el firmware se utiliza el siguiente comando: ./fsusb --force_program usb4all2.hex. Donde usb4all2.hex es el binario generado como resultado de compilar el proyecto (con los usermodules nuevos agregados) y fsusb es un programa que implementa el protocolo de grabación de firmware de microchip.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Demos==&lt;br /&gt;
===Sensor Temperatura===&lt;br /&gt;
Para esta demo se utilió un programa Python que muestra en consola la temperatura tomada.&lt;br /&gt;
&amp;lt;code&amp;gt;	&lt;br /&gt;
   print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
   while 1:&lt;br /&gt;
        temperature=robot.getTemperature(1)&lt;br /&gt;
        if temperature == -1:&lt;br /&gt;
            print &amp;quot;OH NO! ERROR&amp;quot;&lt;br /&gt;
        else:&lt;br /&gt;
            clear() &lt;br /&gt;
            print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
            print (str(temperature) + &amp;quot; C&amp;quot;) &lt;br /&gt;
        time.sleep(2)&lt;br /&gt;
&amp;lt;/code&amp;gt;	&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;youtube&amp;gt;PrNPiMWmwY0&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sensor Movimiento===&lt;br /&gt;
Para esta demo se utilió un programa Python que muestra en consola cuando se detectó movimiento.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
   print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
   while 1:        &lt;br /&gt;
        sensor=robot.getMotion(1)        &lt;br /&gt;
        if sensor == 1:&lt;br /&gt;
           clear() &lt;br /&gt;
           print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
           print &amp;quot;NOS MOVEMOS!!&amp;quot;&lt;br /&gt;
        else:&lt;br /&gt;
           if sensor == -1:&lt;br /&gt;
              print &amp;quot;OH NO! ERROR&amp;quot;&lt;br /&gt;
           else:&lt;br /&gt;
              clear()&lt;br /&gt;
              print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
        time.sleep(0.5)&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;youtube&amp;gt;mSEpZyIHv64&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Conclusiones==&lt;br /&gt;
*Se implementaron dos sensores nuevos, útiles y de bajo costo: Temperatura y Movimiento.&lt;br /&gt;
El de temperatura nos parece de gran utilidad para la estación meteorológica que se está intentando construir, ya que a demás la temperatura es una magnitud fácilmente comprendida por niños.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
El de movimiento nos pareció un sensor que puede llegar a ser entretenido para niños, ya que programando algo relativamente sencillo se puede llegar a algo interesante. Por ejemplo que se prenda una luz cuando alguien se mueve.&lt;br /&gt;
&lt;br /&gt;
*Se investigaron posibles sensores brújulas existentes en el mercado&lt;br /&gt;
El costo de estas varía según el componente pero mas o menos rondan por los 40 dolares&lt;br /&gt;
&lt;br /&gt;
==Trabajo a Futuro==&lt;br /&gt;
*Realizar el diseño de las placas para los módulos implementados&lt;br /&gt;
*Implementar sensor de Gas&lt;br /&gt;
Esto no se pudo realizar ya que no encontramos documentación de como conectar el sensor con la placa. Pero una vez que esto se conozca sería seguir el procedimiento hecho para los otros sensores.&lt;br /&gt;
*Investigar los dispositivos seriales y su conexión con la placa para implementar los sensores de temperatura y humedad seriales&lt;br /&gt;
*Continuar con la Brújula&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Archivo:Brujula.png&amp;diff=5948</id>
		<title>Archivo:Brujula.png</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Archivo:Brujula.png&amp;diff=5948"/>
				<updated>2014-09-15T05:13:48Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: Brujula con Follow Me&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Brujula con Follow Me&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5947</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5947"/>
				<updated>2014-09-15T05:09:38Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: /* Brújula con Follow Me */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Objetivos===&lt;br /&gt;
*Investigación de kits educativos actuales&lt;br /&gt;
*Implementación de sensores nuevos (y de utilidad) para el kit Butiá&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Cámara&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 ([http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf]); y el de temperatura y humedad DHT11 ([http://akizukidenshi.com/download/ds/aosong/DHT11.pdf]). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, además no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
=====Brújula con Follow Me=====&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son caros y difíciles de conseguir en el medio local, por lo que se tendrían que traer del exterior y esto trae consigo demoras que no podemos afrontar, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. La implementación de esto sería:&lt;br /&gt;
Follow me “sigue” el color rojo, se utiliza una Brújula que tiene aguja que apunta al norte en rojo, se centra la brújula con el punto de coordenadas 0,0 de la cámara y luego con la posición dada por el follow me se realizan los siguientes cálculos:&lt;br /&gt;
*Se toma el coseno del angulo, dado por la coordenada x del follow me &lt;br /&gt;
*Se calcula el arcoseno y se hacen otros calculos para obtener el angulo en grados (dependiendo de la coordenada y, el angulo sera mayor o menor a 180 grados)&lt;br /&gt;
&lt;br /&gt;
==Implementación==&lt;br /&gt;
&lt;br /&gt;
A continuación se detallan los pasos seguidos para incorporar dichos sensores al Butiá:&lt;br /&gt;
*Crear User Module&lt;br /&gt;
*Reconocimiento PnP&lt;br /&gt;
*Crear Driver&lt;br /&gt;
*Grabar Firmware&lt;br /&gt;
&lt;br /&gt;
===Crear User Module===&lt;br /&gt;
&lt;br /&gt;
Un usermodule debe cumplir con una API determinada, de esta manera es posible agregar las funcionalidades que el módulo expone. Las operaciones principales que se deben implementar son las encargadas de atender los eventos de:&lt;br /&gt;
*inicialización&lt;br /&gt;
*liberación de recursos&lt;br /&gt;
*configuración&lt;br /&gt;
&lt;br /&gt;
El siguiente es el codigo del UserModule del sensor Temperatura:&lt;br /&gt;
&lt;br /&gt;
Codigo User Module Temperatura[http://www.fing.edu.uy/inco/proyectos/butia/mediawiki/images/b/be/Temp_usermodule.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Reconocimiento PnP===&lt;br /&gt;
&lt;br /&gt;
Se toma un valor de resistencia no utilizado en la cartilla [https://docs.google.com/spreadsheet/ccc?key=0AvO96_3p52-AdFdtaE1YbzV1ZmhVRldjSVE0OUtEZGc#gid=0)] y se agregan sus respectivas constantes (por ejemplo en el caso de la temperatura R_TEMP_MIN, R_TEMP_MAX), con los valores dados por dicha tabla, también se debe aumentar la cantidad de dispositivos (MAX_DEVICES) del archivo pnp.h.&lt;br /&gt;
&lt;br /&gt;
Luego en el pnp.c en la función table_device_id_resistance se debe agregar el modulo nuevo con las constantes definidas anteriormente&lt;br /&gt;
&lt;br /&gt;
     rom const device_resistance table_device_id_resistance[MAX_DEVICES] = {&lt;br /&gt;
           ...&lt;br /&gt;
           { &amp;quot;temp&amp;quot;, R_TEMP_MIN, R_TEMP_MAX}&lt;br /&gt;
     };&lt;br /&gt;
&lt;br /&gt;
===Crear Driver===&lt;br /&gt;
&lt;br /&gt;
A continuación se encuentra el driver del sensor temperatura:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
    import math &lt;br /&gt;
&lt;br /&gt;
    RD_VERSION = 0x00&lt;br /&gt;
    GET_VALUE = 0x01 &lt;br /&gt;
    VCC = 65536 &lt;br /&gt;
&lt;br /&gt;
    def getVersion(dev):&lt;br /&gt;
        dev.send([RD_VERSION])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        return raw[1] + raw[2] * 256&lt;br /&gt;
 &lt;br /&gt;
    def getValue(dev):&lt;br /&gt;
        dev.send([GET_VALUE])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        volt = (raw[1] + raw[2] * 256) * 5.0 / VCC&lt;br /&gt;
        return math.floor(volt * 1000.0) / 10.0&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde el getValue hace la traducción de la salida del sensor a grados celsius tal como se especificó en la sección del sensor Temperatura.&lt;br /&gt;
&lt;br /&gt;
===Grabar Firmware===&lt;br /&gt;
&lt;br /&gt;
El microcontrolador contiene un bootloader que permite grabar el firmware sin necesidad de un programador por hardware.&lt;br /&gt;
Para grabar el firmware se utiliza el siguiente comando: ./fsusb --force_program usb4all2.hex. Donde usb4all2.hex es el binario generado como resultado de compilar el proyecto (con los usermodules nuevos agregados) y fsusb es un programa que implementa el protocolo de grabación de firmware de microchip.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Demos==&lt;br /&gt;
===Sensor Temperatura===&lt;br /&gt;
Para esta demo se utilió un programa Python que muestra en consola la temperatura tomada.&lt;br /&gt;
&amp;lt;code&amp;gt;	&lt;br /&gt;
   print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
   while 1:&lt;br /&gt;
        temperature=robot.getTemperature(1)&lt;br /&gt;
        if temperature == -1:&lt;br /&gt;
            print &amp;quot;OH NO! ERROR&amp;quot;&lt;br /&gt;
        else:&lt;br /&gt;
            clear() &lt;br /&gt;
            print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
            print (str(temperature) + &amp;quot; C&amp;quot;) &lt;br /&gt;
        time.sleep(2)&lt;br /&gt;
&amp;lt;/code&amp;gt;	&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;youtube&amp;gt;PrNPiMWmwY0&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sensor Movimiento===&lt;br /&gt;
Para esta demo se utilió un programa Python que muestra en consola cuando se detectó movimiento.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
   print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
   while 1:        &lt;br /&gt;
        sensor=robot.getMotion(1)        &lt;br /&gt;
        if sensor == 1:&lt;br /&gt;
           clear() &lt;br /&gt;
           print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
           print &amp;quot;NOS MOVEMOS!!&amp;quot;&lt;br /&gt;
        else:&lt;br /&gt;
           if sensor == -1:&lt;br /&gt;
              print &amp;quot;OH NO! ERROR&amp;quot;&lt;br /&gt;
           else:&lt;br /&gt;
              clear()&lt;br /&gt;
              print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
        time.sleep(0.5)&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;youtube&amp;gt;mSEpZyIHv64&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Conclusiones==&lt;br /&gt;
*Se implementaron dos sensores nuevos, útiles y de bajo costo: Temperatura y Movimiento.&lt;br /&gt;
El de temperatura nos parece de gran utilidad para la estación meteorológica que se está intentando construir, ya que a demás la temperatura es una magnitud fácilmente comprendida por niños.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
El de movimiento nos pareció un sensor que puede llegar a ser entretenido para niños, ya que programando algo relativamente sencillo se puede llegar a algo interesante. Por ejemplo que se prenda una luz cuando alguien se mueve.&lt;br /&gt;
&lt;br /&gt;
*Se investigaron posibles sensores brújulas existentes en el mercado&lt;br /&gt;
El costo de estas varía según el componente pero mas o menos rondan por los 40 dolares&lt;br /&gt;
&lt;br /&gt;
==Trabajo a Futuro==&lt;br /&gt;
*Realizar el diseño de las placas para los módulos implementados&lt;br /&gt;
*Implementar sensor de Gas&lt;br /&gt;
Esto no se pudo realizar ya que no encontramos documentación de como conectar el sensor con la placa. Pero una vez que esto se conozca sería seguir el procedimiento hecho para los otros sensores.&lt;br /&gt;
*Investigar los dispositivos seriales y su conexión con la placa para implementar los sensores de temperatura y humedad seriales&lt;br /&gt;
*Continuar con la Brújula&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5946</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5946"/>
				<updated>2014-09-15T05:09:14Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: /* Brújula con Follow Me */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Objetivos===&lt;br /&gt;
*Investigación de kits educativos actuales&lt;br /&gt;
*Implementación de sensores nuevos (y de utilidad) para el kit Butiá&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Cámara&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 ([http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf]); y el de temperatura y humedad DHT11 ([http://akizukidenshi.com/download/ds/aosong/DHT11.pdf]). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, además no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
======Brújula con Follow Me======&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son caros y difíciles de conseguir en el medio local, por lo que se tendrían que traer del exterior y esto trae consigo demoras que no podemos afrontar, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. La implementación de esto sería:&lt;br /&gt;
Follow me “sigue” el color rojo, se utiliza una Brújula que tiene aguja que apunta al norte en rojo, se centra la brújula con el punto de coordenadas 0,0 de la cámara y luego con la posición dada por el follow me se realizan los siguientes cálculos:&lt;br /&gt;
*Se toma el coseno del angulo, dado por la coordenada x del follow me &lt;br /&gt;
*Se calcula el arcoseno y se hacen otros calculos para obtener el angulo en grados (dependiendo de la coordenada y, el angulo sera mayor o menor a 180 grados)&lt;br /&gt;
&lt;br /&gt;
==Implementación==&lt;br /&gt;
&lt;br /&gt;
A continuación se detallan los pasos seguidos para incorporar dichos sensores al Butiá:&lt;br /&gt;
*Crear User Module&lt;br /&gt;
*Reconocimiento PnP&lt;br /&gt;
*Crear Driver&lt;br /&gt;
*Grabar Firmware&lt;br /&gt;
&lt;br /&gt;
===Crear User Module===&lt;br /&gt;
&lt;br /&gt;
Un usermodule debe cumplir con una API determinada, de esta manera es posible agregar las funcionalidades que el módulo expone. Las operaciones principales que se deben implementar son las encargadas de atender los eventos de:&lt;br /&gt;
*inicialización&lt;br /&gt;
*liberación de recursos&lt;br /&gt;
*configuración&lt;br /&gt;
&lt;br /&gt;
El siguiente es el codigo del UserModule del sensor Temperatura:&lt;br /&gt;
&lt;br /&gt;
Codigo User Module Temperatura[http://www.fing.edu.uy/inco/proyectos/butia/mediawiki/images/b/be/Temp_usermodule.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Reconocimiento PnP===&lt;br /&gt;
&lt;br /&gt;
Se toma un valor de resistencia no utilizado en la cartilla [https://docs.google.com/spreadsheet/ccc?key=0AvO96_3p52-AdFdtaE1YbzV1ZmhVRldjSVE0OUtEZGc#gid=0)] y se agregan sus respectivas constantes (por ejemplo en el caso de la temperatura R_TEMP_MIN, R_TEMP_MAX), con los valores dados por dicha tabla, también se debe aumentar la cantidad de dispositivos (MAX_DEVICES) del archivo pnp.h.&lt;br /&gt;
&lt;br /&gt;
Luego en el pnp.c en la función table_device_id_resistance se debe agregar el modulo nuevo con las constantes definidas anteriormente&lt;br /&gt;
&lt;br /&gt;
     rom const device_resistance table_device_id_resistance[MAX_DEVICES] = {&lt;br /&gt;
           ...&lt;br /&gt;
           { &amp;quot;temp&amp;quot;, R_TEMP_MIN, R_TEMP_MAX}&lt;br /&gt;
     };&lt;br /&gt;
&lt;br /&gt;
===Crear Driver===&lt;br /&gt;
&lt;br /&gt;
A continuación se encuentra el driver del sensor temperatura:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
    import math &lt;br /&gt;
&lt;br /&gt;
    RD_VERSION = 0x00&lt;br /&gt;
    GET_VALUE = 0x01 &lt;br /&gt;
    VCC = 65536 &lt;br /&gt;
&lt;br /&gt;
    def getVersion(dev):&lt;br /&gt;
        dev.send([RD_VERSION])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        return raw[1] + raw[2] * 256&lt;br /&gt;
 &lt;br /&gt;
    def getValue(dev):&lt;br /&gt;
        dev.send([GET_VALUE])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        volt = (raw[1] + raw[2] * 256) * 5.0 / VCC&lt;br /&gt;
        return math.floor(volt * 1000.0) / 10.0&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde el getValue hace la traducción de la salida del sensor a grados celsius tal como se especificó en la sección del sensor Temperatura.&lt;br /&gt;
&lt;br /&gt;
===Grabar Firmware===&lt;br /&gt;
&lt;br /&gt;
El microcontrolador contiene un bootloader que permite grabar el firmware sin necesidad de un programador por hardware.&lt;br /&gt;
Para grabar el firmware se utiliza el siguiente comando: ./fsusb --force_program usb4all2.hex. Donde usb4all2.hex es el binario generado como resultado de compilar el proyecto (con los usermodules nuevos agregados) y fsusb es un programa que implementa el protocolo de grabación de firmware de microchip.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Demos==&lt;br /&gt;
===Sensor Temperatura===&lt;br /&gt;
Para esta demo se utilió un programa Python que muestra en consola la temperatura tomada.&lt;br /&gt;
&amp;lt;code&amp;gt;	&lt;br /&gt;
   print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
   while 1:&lt;br /&gt;
        temperature=robot.getTemperature(1)&lt;br /&gt;
        if temperature == -1:&lt;br /&gt;
            print &amp;quot;OH NO! ERROR&amp;quot;&lt;br /&gt;
        else:&lt;br /&gt;
            clear() &lt;br /&gt;
            print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
            print (str(temperature) + &amp;quot; C&amp;quot;) &lt;br /&gt;
        time.sleep(2)&lt;br /&gt;
&amp;lt;/code&amp;gt;	&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;youtube&amp;gt;PrNPiMWmwY0&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sensor Movimiento===&lt;br /&gt;
Para esta demo se utilió un programa Python que muestra en consola cuando se detectó movimiento.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
   print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
   while 1:        &lt;br /&gt;
        sensor=robot.getMotion(1)        &lt;br /&gt;
        if sensor == 1:&lt;br /&gt;
           clear() &lt;br /&gt;
           print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
           print &amp;quot;NOS MOVEMOS!!&amp;quot;&lt;br /&gt;
        else:&lt;br /&gt;
           if sensor == -1:&lt;br /&gt;
              print &amp;quot;OH NO! ERROR&amp;quot;&lt;br /&gt;
           else:&lt;br /&gt;
              clear()&lt;br /&gt;
              print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
        time.sleep(0.5)&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;youtube&amp;gt;mSEpZyIHv64&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Conclusiones==&lt;br /&gt;
*Se implementaron dos sensores nuevos, útiles y de bajo costo: Temperatura y Movimiento.&lt;br /&gt;
El de temperatura nos parece de gran utilidad para la estación meteorológica que se está intentando construir, ya que a demás la temperatura es una magnitud fácilmente comprendida por niños.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
El de movimiento nos pareció un sensor que puede llegar a ser entretenido para niños, ya que programando algo relativamente sencillo se puede llegar a algo interesante. Por ejemplo que se prenda una luz cuando alguien se mueve.&lt;br /&gt;
&lt;br /&gt;
*Se investigaron posibles sensores brújulas existentes en el mercado&lt;br /&gt;
El costo de estas varía según el componente pero mas o menos rondan por los 40 dolares&lt;br /&gt;
&lt;br /&gt;
==Trabajo a Futuro==&lt;br /&gt;
*Realizar el diseño de las placas para los módulos implementados&lt;br /&gt;
*Implementar sensor de Gas&lt;br /&gt;
Esto no se pudo realizar ya que no encontramos documentación de como conectar el sensor con la placa. Pero una vez que esto se conozca sería seguir el procedimiento hecho para los otros sensores.&lt;br /&gt;
*Investigar los dispositivos seriales y su conexión con la placa para implementar los sensores de temperatura y humedad seriales&lt;br /&gt;
*Continuar con la Brújula&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5945</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5945"/>
				<updated>2014-09-15T05:03:48Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: /* Temperatura */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Objetivos===&lt;br /&gt;
*Investigación de kits educativos actuales&lt;br /&gt;
*Implementación de sensores nuevos (y de utilidad) para el kit Butiá&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Cámara&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 ([http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf]); y el de temperatura y humedad DHT11 ([http://akizukidenshi.com/download/ds/aosong/DHT11.pdf]). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, además no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
======Brújula con Follow Me======&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son caros y difíciles de conseguir en el medio local, por lo que se tendrían que traer del exterior y esto trae consigo demoras que no podemos afrontar, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. La implementación de esto sería:&lt;br /&gt;
Follow me “sigue” el color rojo, se utiliza una Brújula que tiene aguja que apunta al norte en rojo, se centra la brújula con el punto de coordenadas 0,0 de la cámara y luego con la posición dada por el follow me se realizan los siguientes cálculos:&lt;br /&gt;
*Se calcula la hipotenusa del trángulo generado por las coordenadas x, y y el punto 0,0 &lt;br /&gt;
*Se calcula el coseno del angulo entre 0,0 y x,y&lt;br /&gt;
*Se calcula el arcoseno de lo anterior para obtener el ángulo&lt;br /&gt;
&lt;br /&gt;
==Implementación==&lt;br /&gt;
&lt;br /&gt;
A continuación se detallan los pasos seguidos para incorporar dichos sensores al Butiá:&lt;br /&gt;
*Crear User Module&lt;br /&gt;
*Reconocimiento PnP&lt;br /&gt;
*Crear Driver&lt;br /&gt;
*Grabar Firmware&lt;br /&gt;
&lt;br /&gt;
===Crear User Module===&lt;br /&gt;
&lt;br /&gt;
Un usermodule debe cumplir con una API determinada, de esta manera es posible agregar las funcionalidades que el módulo expone. Las operaciones principales que se deben implementar son las encargadas de atender los eventos de:&lt;br /&gt;
*inicialización&lt;br /&gt;
*liberación de recursos&lt;br /&gt;
*configuración&lt;br /&gt;
&lt;br /&gt;
El siguiente es el codigo del UserModule del sensor Temperatura:&lt;br /&gt;
&lt;br /&gt;
Codigo User Module Temperatura[http://www.fing.edu.uy/inco/proyectos/butia/mediawiki/images/b/be/Temp_usermodule.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Reconocimiento PnP===&lt;br /&gt;
&lt;br /&gt;
Se toma un valor de resistencia no utilizado en la cartilla [https://docs.google.com/spreadsheet/ccc?key=0AvO96_3p52-AdFdtaE1YbzV1ZmhVRldjSVE0OUtEZGc#gid=0)] y se agregan sus respectivas constantes (por ejemplo en el caso de la temperatura R_TEMP_MIN, R_TEMP_MAX), con los valores dados por dicha tabla, también se debe aumentar la cantidad de dispositivos (MAX_DEVICES) del archivo pnp.h.&lt;br /&gt;
&lt;br /&gt;
Luego en el pnp.c en la función table_device_id_resistance se debe agregar el modulo nuevo con las constantes definidas anteriormente&lt;br /&gt;
&lt;br /&gt;
     rom const device_resistance table_device_id_resistance[MAX_DEVICES] = {&lt;br /&gt;
           ...&lt;br /&gt;
           { &amp;quot;temp&amp;quot;, R_TEMP_MIN, R_TEMP_MAX}&lt;br /&gt;
     };&lt;br /&gt;
&lt;br /&gt;
===Crear Driver===&lt;br /&gt;
&lt;br /&gt;
A continuación se encuentra el driver del sensor temperatura:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
    import math &lt;br /&gt;
&lt;br /&gt;
    RD_VERSION = 0x00&lt;br /&gt;
    GET_VALUE = 0x01 &lt;br /&gt;
    VCC = 65536 &lt;br /&gt;
&lt;br /&gt;
    def getVersion(dev):&lt;br /&gt;
        dev.send([RD_VERSION])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        return raw[1] + raw[2] * 256&lt;br /&gt;
 &lt;br /&gt;
    def getValue(dev):&lt;br /&gt;
        dev.send([GET_VALUE])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        volt = (raw[1] + raw[2] * 256) * 5.0 / VCC&lt;br /&gt;
        return math.floor(volt * 1000.0) / 10.0&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde el getValue hace la traducción de la salida del sensor a grados celsius tal como se especificó en la sección del sensor Temperatura.&lt;br /&gt;
&lt;br /&gt;
===Grabar Firmware===&lt;br /&gt;
&lt;br /&gt;
El microcontrolador contiene un bootloader que permite grabar el firmware sin necesidad de un programador por hardware.&lt;br /&gt;
Para grabar el firmware se utiliza el siguiente comando: ./fsusb --force_program usb4all2.hex. Donde usb4all2.hex es el binario generado como resultado de compilar el proyecto (con los usermodules nuevos agregados) y fsusb es un programa que implementa el protocolo de grabación de firmware de microchip.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Demos==&lt;br /&gt;
===Sensor Temperatura===&lt;br /&gt;
Para esta demo se utilió un programa Python que muestra en consola la temperatura tomada.&lt;br /&gt;
&amp;lt;code&amp;gt;	&lt;br /&gt;
   print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
   while 1:&lt;br /&gt;
        temperature=robot.getTemperature(1)&lt;br /&gt;
        if temperature == -1:&lt;br /&gt;
            print &amp;quot;OH NO! ERROR&amp;quot;&lt;br /&gt;
        else:&lt;br /&gt;
            clear() &lt;br /&gt;
            print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
            print (str(temperature) + &amp;quot; C&amp;quot;) &lt;br /&gt;
        time.sleep(2)&lt;br /&gt;
&amp;lt;/code&amp;gt;	&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;youtube&amp;gt;PrNPiMWmwY0&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sensor Movimiento===&lt;br /&gt;
Para esta demo se utilió un programa Python que muestra en consola cuando se detectó movimiento.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
   print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
   while 1:        &lt;br /&gt;
        sensor=robot.getMotion(1)        &lt;br /&gt;
        if sensor == 1:&lt;br /&gt;
           clear() &lt;br /&gt;
           print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
           print &amp;quot;NOS MOVEMOS!!&amp;quot;&lt;br /&gt;
        else:&lt;br /&gt;
           if sensor == -1:&lt;br /&gt;
              print &amp;quot;OH NO! ERROR&amp;quot;&lt;br /&gt;
           else:&lt;br /&gt;
              clear()&lt;br /&gt;
              print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
        time.sleep(0.5)&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;youtube&amp;gt;mSEpZyIHv64&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Conclusiones==&lt;br /&gt;
*Se implementaron dos sensores nuevos, útiles y de bajo costo: Temperatura y Movimiento.&lt;br /&gt;
El de temperatura nos parece de gran utilidad para la estación meteorológica que se está intentando construir, ya que a demás la temperatura es una magnitud fácilmente comprendida por niños.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
El de movimiento nos pareció un sensor que puede llegar a ser entretenido para niños, ya que programando algo relativamente sencillo se puede llegar a algo interesante. Por ejemplo que se prenda una luz cuando alguien se mueve.&lt;br /&gt;
&lt;br /&gt;
*Se investigaron posibles sensores brújulas existentes en el mercado&lt;br /&gt;
El costo de estas varía según el componente pero mas o menos rondan por los 40 dolares&lt;br /&gt;
&lt;br /&gt;
==Trabajo a Futuro==&lt;br /&gt;
*Realizar el diseño de las placas para los módulos implementados&lt;br /&gt;
*Implementar sensor de Gas&lt;br /&gt;
Esto no se pudo realizar ya que no encontramos documentación de como conectar el sensor con la placa. Pero una vez que esto se conozca sería seguir el procedimiento hecho para los otros sensores.&lt;br /&gt;
*Investigar los dispositivos seriales y su conexión con la placa para implementar los sensores de temperatura y humedad seriales&lt;br /&gt;
*Continuar con la Brújula&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5944</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5944"/>
				<updated>2014-09-14T02:03:49Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Objetivos===&lt;br /&gt;
*Investigación de kits educativos actuales&lt;br /&gt;
*Implementación de sensores nuevos (y de utilidad) para el kit Butiá&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Cámara&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 ([http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf]); y el de temperatura y humedad DHT11 ([http://akizukidenshi.com/download/ds/aosong/DHT11.pdf]). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, a demás no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
======Brújula con Follow Me======&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son caros y difíciles de conseguir en el medio local, por lo que se tendrían que traer del exterior y esto trae consigo demoras que no podemos afrontar, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. La implementación de esto sería:&lt;br /&gt;
Follow me “sigue” el color rojo, se utiliza una Brújula que tiene aguja que apunta al norte en rojo, se centra la brújula con el punto de coordenadas 0,0 de la cámara y luego con la posición dada por el follow me se realizan los siguientes cálculos:&lt;br /&gt;
*Se calcula la hipotenusa del trángulo generado por las coordenadas x, y y el punto 0,0 &lt;br /&gt;
*Se calcula el coseno del angulo entre 0,0 y x,y&lt;br /&gt;
*Se calcula el arcoseno de lo anterior para obtener el ángulo&lt;br /&gt;
&lt;br /&gt;
==Implementación==&lt;br /&gt;
&lt;br /&gt;
A continuación se detallan los pasos seguidos para incorporar dichos sensores al Butiá:&lt;br /&gt;
*Crear User Module&lt;br /&gt;
*Reconocimiento PnP&lt;br /&gt;
*Crear Driver&lt;br /&gt;
*Grabar Firmware&lt;br /&gt;
&lt;br /&gt;
===Crear User Module===&lt;br /&gt;
&lt;br /&gt;
Un usermodule debe cumplir con una API determinada, de esta manera es posible agregar las funcionalidades que el módulo expone. Las operaciones principales que se deben implementar son las encargadas de atender los eventos de:&lt;br /&gt;
*inicialización&lt;br /&gt;
*liberación de recursos&lt;br /&gt;
*configuración&lt;br /&gt;
&lt;br /&gt;
El siguiente es el codigo del UserModule del sensor Temperatura:&lt;br /&gt;
&lt;br /&gt;
Codigo User Module Temperatura[http://www.fing.edu.uy/inco/proyectos/butia/mediawiki/images/b/be/Temp_usermodule.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Reconocimiento PnP===&lt;br /&gt;
&lt;br /&gt;
Se toma un valor de resistencia no utilizado en la cartilla [https://docs.google.com/spreadsheet/ccc?key=0AvO96_3p52-AdFdtaE1YbzV1ZmhVRldjSVE0OUtEZGc#gid=0)] y se agregan sus respectivas constantes (por ejemplo en el caso de la temperatura R_TEMP_MIN, R_TEMP_MAX), con los valores dados por dicha tabla, también se debe aumentar la cantidad de dispositivos (MAX_DEVICES) del archivo pnp.h.&lt;br /&gt;
&lt;br /&gt;
Luego en el pnp.c en la función table_device_id_resistance se debe agregar el modulo nuevo con las constantes definidas anteriormente&lt;br /&gt;
&lt;br /&gt;
     rom const device_resistance table_device_id_resistance[MAX_DEVICES] = {&lt;br /&gt;
           ...&lt;br /&gt;
           { &amp;quot;temp&amp;quot;, R_TEMP_MIN, R_TEMP_MAX}&lt;br /&gt;
     };&lt;br /&gt;
&lt;br /&gt;
===Crear Driver===&lt;br /&gt;
&lt;br /&gt;
A continuación se encuentra el driver del sensor temperatura:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
    import math &lt;br /&gt;
&lt;br /&gt;
    RD_VERSION = 0x00&lt;br /&gt;
    GET_VALUE = 0x01 &lt;br /&gt;
    VCC = 65536 &lt;br /&gt;
&lt;br /&gt;
    def getVersion(dev):&lt;br /&gt;
        dev.send([RD_VERSION])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        return raw[1] + raw[2] * 256&lt;br /&gt;
 &lt;br /&gt;
    def getValue(dev):&lt;br /&gt;
        dev.send([GET_VALUE])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        volt = (raw[1] + raw[2] * 256) * 5.0 / VCC&lt;br /&gt;
        return math.floor(volt * 1000.0) / 10.0&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde el getValue hace la traducción de la salida del sensor a grados celsius tal como se especificó en la sección del sensor Temperatura.&lt;br /&gt;
&lt;br /&gt;
===Grabar Firmware===&lt;br /&gt;
&lt;br /&gt;
El microcontrolador contiene un bootloader que permite grabar el firmware sin necesidad de un programador por hardware.&lt;br /&gt;
Para grabar el firmware se utiliza el siguiente comando: ./fsusb --force_program usb4all2.hex. Donde usb4all2.hex es el binario generado como resultado de compilar el proyecto (con los usermodules nuevos agregados) y fsusb es un programa que implementa el protocolo de grabación de firmware de microchip.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Demos==&lt;br /&gt;
===Sensor Temperatura===&lt;br /&gt;
Para esta demo se utilió un programa Python que muestra en consola la temperatura tomada.&lt;br /&gt;
&amp;lt;code&amp;gt;	&lt;br /&gt;
   print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
   while 1:&lt;br /&gt;
        temperature=robot.getTemperature(1)&lt;br /&gt;
        if temperature == -1:&lt;br /&gt;
            print &amp;quot;OH NO! ERROR&amp;quot;&lt;br /&gt;
        else:&lt;br /&gt;
            clear() &lt;br /&gt;
            print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
            print (str(temperature) + &amp;quot; C&amp;quot;) &lt;br /&gt;
        time.sleep(2)&lt;br /&gt;
&amp;lt;/code&amp;gt;	&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;youtube&amp;gt;PrNPiMWmwY0&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sensor Movimiento===&lt;br /&gt;
Para esta demo se utilió un programa Python que muestra en consola cuando se detectó movimiento.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
   print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
   while 1:        &lt;br /&gt;
        sensor=robot.getMotion(1)        &lt;br /&gt;
        if sensor == 1:&lt;br /&gt;
           clear() &lt;br /&gt;
           print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
           print &amp;quot;NOS MOVEMOS!!&amp;quot;&lt;br /&gt;
        else:&lt;br /&gt;
           if sensor == -1:&lt;br /&gt;
              print &amp;quot;OH NO! ERROR&amp;quot;&lt;br /&gt;
           else:&lt;br /&gt;
              clear()&lt;br /&gt;
              print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
        time.sleep(0.5)&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;youtube&amp;gt;mSEpZyIHv64&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Conclusiones==&lt;br /&gt;
*Se implementaron dos sensores nuevos, útiles y de bajo costo: Temperatura y Movimiento.&lt;br /&gt;
El de temperatura nos parece de gran utilidad para la estación meteorológica que se está intentando construir, ya que a demás la temperatura es una magnitud fácilmente comprendida por niños.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
El de movimiento nos pareció un sensor que puede llegar a ser entretenido para niños, ya que programando algo relativamente sencillo se puede llegar a algo interesante. Por ejemplo que se prenda una luz cuando alguien se mueve.&lt;br /&gt;
&lt;br /&gt;
*Se investigaron posibles sensores brújulas existentes en el mercado&lt;br /&gt;
El costo de estas varía según el componente pero mas o menos rondan por los 40 dolares&lt;br /&gt;
&lt;br /&gt;
==Trabajo a Futuro==&lt;br /&gt;
*Realizar el diseño de las placas para los módulos implementados&lt;br /&gt;
*Implementar sensor de Gas&lt;br /&gt;
Esto no se pudo realizar ya que no encontramos documentación de como conectar el sensor con la placa. Pero una vez que esto se conozca sería seguir el procedimiento hecho para los otros sensores.&lt;br /&gt;
*Investigar los dispositivos seriales y su conexión con la placa para implementar los sensores de temperatura y humedad seriales&lt;br /&gt;
*Continuar con la Brújula&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5943</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5943"/>
				<updated>2014-09-14T01:58:41Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: /* Características */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Objetivos===&lt;br /&gt;
*Investigación de kits educativos actuales&lt;br /&gt;
*Implementación de sensores nuevos (y de utilidad) para el kit Butiá&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Cámara&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 ([http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf]); y el de temperatura y humedad DHT11 ([http://akizukidenshi.com/download/ds/aosong/DHT11.pdf]). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, a demás no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
======Brújula con Follow Me======&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son muy caros y difíciles de conseguir en el medio local, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. La implementación de esto sería:&lt;br /&gt;
Follow me “sigue” el color rojo, se utiliza una Brújula que tiene aguja que apunta al norte en rojo, se centra la brújula con el punto de coordenadas 0,0 de la cámara y luego con la posición dada por el follow me se realizan los siguientes cálculos:&lt;br /&gt;
*Se calcula la hipotenusa del trángulo generado por las coordenadas x, y y el punto 0,0 &lt;br /&gt;
*Se calcula el coseno del angulo entre 0,0 y x,y&lt;br /&gt;
*Se calcula el arcoseno de lo anterior para obtener el ángulo&lt;br /&gt;
&lt;br /&gt;
==Implementación==&lt;br /&gt;
&lt;br /&gt;
A continuación se detallan los pasos seguidos para incorporar dichos sensores al Butiá:&lt;br /&gt;
*Crear User Module&lt;br /&gt;
*Reconocimiento PnP&lt;br /&gt;
*Crear Driver&lt;br /&gt;
*Grabar Firmware&lt;br /&gt;
&lt;br /&gt;
===Crear User Module===&lt;br /&gt;
&lt;br /&gt;
Un usermodule debe cumplir con una API determinada, de esta manera es posible agregar las funcionalidades que el módulo expone. Las operaciones principales que se deben implementar son las encargadas de atender los eventos de:&lt;br /&gt;
*inicialización&lt;br /&gt;
*liberación de recursos&lt;br /&gt;
*configuración&lt;br /&gt;
&lt;br /&gt;
El siguiente es el codigo del UserModule del sensor Temperatura:&lt;br /&gt;
&lt;br /&gt;
Codigo User Module Temperatura[http://www.fing.edu.uy/inco/proyectos/butia/mediawiki/images/b/be/Temp_usermodule.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Reconocimiento PnP===&lt;br /&gt;
&lt;br /&gt;
Se toma un valor de resistencia no utilizado en la cartilla [https://docs.google.com/spreadsheet/ccc?key=0AvO96_3p52-AdFdtaE1YbzV1ZmhVRldjSVE0OUtEZGc#gid=0)] y se agregan sus respectivas constantes (por ejemplo en el caso de la temperatura R_TEMP_MIN, R_TEMP_MAX), con los valores dados por dicha tabla, también se debe aumentar la cantidad de dispositivos (MAX_DEVICES) del archivo pnp.h.&lt;br /&gt;
&lt;br /&gt;
Luego en el pnp.c en la función table_device_id_resistance se debe agregar el modulo nuevo con las constantes definidas anteriormente&lt;br /&gt;
&lt;br /&gt;
     rom const device_resistance table_device_id_resistance[MAX_DEVICES] = {&lt;br /&gt;
           ...&lt;br /&gt;
           { &amp;quot;temp&amp;quot;, R_TEMP_MIN, R_TEMP_MAX}&lt;br /&gt;
     };&lt;br /&gt;
&lt;br /&gt;
===Crear Driver===&lt;br /&gt;
&lt;br /&gt;
A continuación se encuentra el driver del sensor temperatura:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
    import math &lt;br /&gt;
&lt;br /&gt;
    RD_VERSION = 0x00&lt;br /&gt;
    GET_VALUE = 0x01 &lt;br /&gt;
    VCC = 65536 &lt;br /&gt;
&lt;br /&gt;
    def getVersion(dev):&lt;br /&gt;
        dev.send([RD_VERSION])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        return raw[1] + raw[2] * 256&lt;br /&gt;
 &lt;br /&gt;
    def getValue(dev):&lt;br /&gt;
        dev.send([GET_VALUE])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        volt = (raw[1] + raw[2] * 256) * 5.0 / VCC&lt;br /&gt;
        return math.floor(volt * 1000.0) / 10.0&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde el getValue hace la traducción de la salida del sensor a grados celsius tal como se especificó en la sección del sensor Temperatura.&lt;br /&gt;
&lt;br /&gt;
===Grabar Firmware===&lt;br /&gt;
&lt;br /&gt;
El microcontrolador contiene un bootloader que permite grabar el firmware sin necesidad de un programador por hardware.&lt;br /&gt;
Para grabar el firmware se utiliza el siguiente comando: ./fsusb --force_program usb4all2.hex. Donde usb4all2.hex es el binario generado como resultado de compilar el proyecto (con los usermodules nuevos agregados) y fsusb es un programa que implementa el protocolo de grabación de firmware de microchip.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Demos==&lt;br /&gt;
===Sensor Temperatura===&lt;br /&gt;
Para esta demo se utilió un programa Python que muestra en consola la temperatura tomada.&lt;br /&gt;
&amp;lt;code&amp;gt;	&lt;br /&gt;
   print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
   while 1:&lt;br /&gt;
        temperature=robot.getTemperature(1)&lt;br /&gt;
        if temperature == -1:&lt;br /&gt;
            print &amp;quot;OH NO! ERROR&amp;quot;&lt;br /&gt;
        else:&lt;br /&gt;
            clear() &lt;br /&gt;
            print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
            print (str(temperature) + &amp;quot; C&amp;quot;) &lt;br /&gt;
        time.sleep(2)&lt;br /&gt;
&amp;lt;/code&amp;gt;	&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;youtube&amp;gt;PrNPiMWmwY0&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sensor Movimiento===&lt;br /&gt;
Para esta demo se utilió un programa Python que muestra en consola cuando se detectó movimiento.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
   print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
   while 1:        &lt;br /&gt;
        sensor=robot.getMotion(1)        &lt;br /&gt;
        if sensor == 1:&lt;br /&gt;
           clear() &lt;br /&gt;
           print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
           print &amp;quot;NOS MOVEMOS!!&amp;quot;&lt;br /&gt;
        else:&lt;br /&gt;
           if sensor == -1:&lt;br /&gt;
              print &amp;quot;OH NO! ERROR&amp;quot;&lt;br /&gt;
           else:&lt;br /&gt;
              clear()&lt;br /&gt;
              print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
        time.sleep(0.5)&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;youtube&amp;gt;mSEpZyIHv64&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Conclusiones==&lt;br /&gt;
*Se implementaron dos sensores nuevos, útiles y de bajo costo: Temperatura y Movimiento.&lt;br /&gt;
El de temperatura nos parece de gran utilidad para la estación meteorológica que se está intentando construir, ya que a demás la temperatura es una magnitud fácilmente comprendida por niños.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
El de movimiento nos pareció un sensor que puede llegar a ser entretenido para niños, ya que programando algo relativamente sencillo se puede llegar a algo interesante. Por ejemplo que se prenda una luz cuando alguien se mueve.&lt;br /&gt;
&lt;br /&gt;
*Se investigaron posibles sensores brújulas existentes en el mercado&lt;br /&gt;
El costo de estas varía según el componente pero mas o menos rondan por los 40 dolares&lt;br /&gt;
&lt;br /&gt;
==Trabajo a Futuro==&lt;br /&gt;
*Realizar el diseño de las placas para los módulos implementados&lt;br /&gt;
*Implementar sensor de Gas&lt;br /&gt;
Esto no se pudo realizar ya que no encontramos documentación de como conectar el sensor con la placa. Pero una vez que esto se conozca sería seguir el procedimiento hecho para los otros sensores.&lt;br /&gt;
*Investigar los dispositivos seriales y su conexión con la placa para implementar los sensores de temperatura y humedad seriales&lt;br /&gt;
*Continuar con la Brújula&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5942</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5942"/>
				<updated>2014-09-14T00:08:25Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: /* Trabajo a Futuro */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Objetivos===&lt;br /&gt;
*Investigación de kits educativos actuales&lt;br /&gt;
*Implementación de sensores nuevos (y de utilidad) para el kit Butiá&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Cámara&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 ([http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf]); y el de temperatura y humedad DHT11 ([http://akizukidenshi.com/download/ds/aosong/DHT11.pdf]). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, a demás no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son muy caros y difíciles de conseguir en el medio local, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. No pudimos &amp;quot;traducir&amp;quot; la imagen a valores útiles para analizar la orientación.&lt;br /&gt;
Consideramos dos alternativas, la primera (con una brújula que mide el angulo con respecto al norte) esto no lo vimos posible ya que no encontramos forma de leer este dato con la cámara. &lt;br /&gt;
La segunda opción fue imprimir en pantalla donde se encuentra el norte, utilizando una brújula con el norte en color rojo, y de esta forma el follow me lo puede &amp;quot;ver&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
En conclusión, sería muy interesante la incorporación de este sensor a la plataforma, pero los altos precios de los sensores brújulas se oponen a la accesibilidad objetivo del proyecto. Una posible implementación a través del procesamiento de imágenes, no está al alcance de nuestros conocimientos. Es posible que teniendo en cuenta el lento pero incesante avance en el desempeño de las herramientas de procesamiento de imagen, en un futuro se alcance una solución por este camino.&lt;br /&gt;
&lt;br /&gt;
==Implementación==&lt;br /&gt;
&lt;br /&gt;
A continuación se detallan los pasos seguidos para incorporar dichos sensores al Butiá:&lt;br /&gt;
*Crear User Module&lt;br /&gt;
*Reconocimiento PnP&lt;br /&gt;
*Crear Driver&lt;br /&gt;
*Grabar Firmware&lt;br /&gt;
&lt;br /&gt;
===Crear User Module===&lt;br /&gt;
&lt;br /&gt;
Un usermodule debe cumplir con una API determinada, de esta manera es posible agregar las funcionalidades que el módulo expone. Las operaciones principales que se deben implementar son las encargadas de atender los eventos de:&lt;br /&gt;
*inicialización&lt;br /&gt;
*liberación de recursos&lt;br /&gt;
*configuración&lt;br /&gt;
&lt;br /&gt;
El siguiente es el codigo del UserModule del sensor Temperatura:&lt;br /&gt;
&lt;br /&gt;
Codigo User Module Temperatura[http://www.fing.edu.uy/inco/proyectos/butia/mediawiki/images/b/be/Temp_usermodule.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Reconocimiento PnP===&lt;br /&gt;
&lt;br /&gt;
Se toma un valor de resistencia no utilizado en la cartilla [https://docs.google.com/spreadsheet/ccc?key=0AvO96_3p52-AdFdtaE1YbzV1ZmhVRldjSVE0OUtEZGc#gid=0)] y se agregan sus respectivas constantes (por ejemplo en el caso de la temperatura R_TEMP_MIN, R_TEMP_MAX), con los valores dados por dicha tabla, también se debe aumentar la cantidad de dispositivos (MAX_DEVICES) del archivo pnp.h.&lt;br /&gt;
&lt;br /&gt;
Luego en el pnp.c en la función table_device_id_resistance se debe agregar el modulo nuevo con las constantes definidas anteriormente&lt;br /&gt;
&lt;br /&gt;
     rom const device_resistance table_device_id_resistance[MAX_DEVICES] = {&lt;br /&gt;
           ...&lt;br /&gt;
           { &amp;quot;temp&amp;quot;, R_TEMP_MIN, R_TEMP_MAX}&lt;br /&gt;
     };&lt;br /&gt;
&lt;br /&gt;
===Crear Driver===&lt;br /&gt;
&lt;br /&gt;
A continuación se encuentra el driver del sensor temperatura:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
    import math &lt;br /&gt;
&lt;br /&gt;
    RD_VERSION = 0x00&lt;br /&gt;
    GET_VALUE = 0x01 &lt;br /&gt;
    VCC = 65536 &lt;br /&gt;
&lt;br /&gt;
    def getVersion(dev):&lt;br /&gt;
        dev.send([RD_VERSION])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        return raw[1] + raw[2] * 256&lt;br /&gt;
 &lt;br /&gt;
    def getValue(dev):&lt;br /&gt;
        dev.send([GET_VALUE])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        volt = (raw[1] + raw[2] * 256) * 5.0 / VCC&lt;br /&gt;
        return math.floor(volt * 1000.0) / 10.0&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde el getValue hace la traducción de la salida del sensor a grados celsius tal como se especificó en la sección del sensor Temperatura.&lt;br /&gt;
&lt;br /&gt;
===Grabar Firmware===&lt;br /&gt;
&lt;br /&gt;
El microcontrolador contiene un bootloader que permite grabar el firmware sin necesidad de un programador por hardware.&lt;br /&gt;
Para grabar el firmware se utiliza el siguiente comando: ./fsusb --force_program usb4all2.hex. Donde usb4all2.hex es el binario generado como resultado de compilar el proyecto (con los usermodules nuevos agregados) y fsusb es un programa que implementa el protocolo de grabación de firmware de microchip.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Demos==&lt;br /&gt;
===Sensor Temperatura===&lt;br /&gt;
Para esta demo se utilió un programa Python que muestra en consola la temperatura tomada.&lt;br /&gt;
&amp;lt;code&amp;gt;	&lt;br /&gt;
   print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
   while 1:&lt;br /&gt;
        temperature=robot.getTemperature(1)&lt;br /&gt;
        if temperature == -1:&lt;br /&gt;
            print &amp;quot;OH NO! ERROR&amp;quot;&lt;br /&gt;
        else:&lt;br /&gt;
            clear() &lt;br /&gt;
            print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
            print (str(temperature) + &amp;quot; C&amp;quot;) &lt;br /&gt;
        time.sleep(2)&lt;br /&gt;
&amp;lt;/code&amp;gt;	&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;youtube&amp;gt;PrNPiMWmwY0&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sensor Movimiento===&lt;br /&gt;
Para esta demo se utilió un programa Python que muestra en consola cuando se detectó movimiento.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
   print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
   while 1:        &lt;br /&gt;
        sensor=robot.getMotion(1)        &lt;br /&gt;
        if sensor == 1:&lt;br /&gt;
           clear() &lt;br /&gt;
           print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
           print &amp;quot;NOS MOVEMOS!!&amp;quot;&lt;br /&gt;
        else:&lt;br /&gt;
           if sensor == -1:&lt;br /&gt;
              print &amp;quot;OH NO! ERROR&amp;quot;&lt;br /&gt;
           else:&lt;br /&gt;
              clear()&lt;br /&gt;
              print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
        time.sleep(0.5)&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;youtube&amp;gt;mSEpZyIHv64&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Conclusiones==&lt;br /&gt;
*Se implementaron dos sensores nuevos, útiles y de bajo costo: Temperatura y Movimiento.&lt;br /&gt;
El de temperatura nos parece de gran utilidad para la estación meteorológica que se está intentando construir, ya que a demás la temperatura es una magnitud fácilmente comprendida por niños.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
El de movimiento nos pareció un sensor que puede llegar a ser entretenido para niños, ya que programando algo relativamente sencillo se puede llegar a algo interesante. Por ejemplo que se prenda una luz cuando alguien se mueve.&lt;br /&gt;
&lt;br /&gt;
*Se investigaron posibles sensores brújulas existentes en el mercado&lt;br /&gt;
El costo de estas varía según el componente pero mas o menos rondan por los 40 dolares&lt;br /&gt;
&lt;br /&gt;
==Trabajo a Futuro==&lt;br /&gt;
*Realizar el diseño de las placas para los módulos implementados&lt;br /&gt;
*Implementar sensor de Gas&lt;br /&gt;
Esto no se pudo realizar ya que no encontramos documentación de como conectar el sensor con la placa. Pero una vez que esto se conozca sería seguir el procedimiento hecho para los otros sensores.&lt;br /&gt;
*Investigar los dispositivos seriales y su conexión con la placa para implementar los sensores de temperatura y humedad seriales&lt;br /&gt;
*Continuar con la Brújula&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5941</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5941"/>
				<updated>2014-09-14T00:01:02Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: /* Sensor Movimiento */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Objetivos===&lt;br /&gt;
*Investigación de kits educativos actuales&lt;br /&gt;
*Implementación de sensores nuevos (y de utilidad) para el kit Butiá&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Cámara&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 ([http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf]); y el de temperatura y humedad DHT11 ([http://akizukidenshi.com/download/ds/aosong/DHT11.pdf]). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, a demás no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son muy caros y difíciles de conseguir en el medio local, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. No pudimos &amp;quot;traducir&amp;quot; la imagen a valores útiles para analizar la orientación.&lt;br /&gt;
Consideramos dos alternativas, la primera (con una brújula que mide el angulo con respecto al norte) esto no lo vimos posible ya que no encontramos forma de leer este dato con la cámara. &lt;br /&gt;
La segunda opción fue imprimir en pantalla donde se encuentra el norte, utilizando una brújula con el norte en color rojo, y de esta forma el follow me lo puede &amp;quot;ver&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
En conclusión, sería muy interesante la incorporación de este sensor a la plataforma, pero los altos precios de los sensores brújulas se oponen a la accesibilidad objetivo del proyecto. Una posible implementación a través del procesamiento de imágenes, no está al alcance de nuestros conocimientos. Es posible que teniendo en cuenta el lento pero incesante avance en el desempeño de las herramientas de procesamiento de imagen, en un futuro se alcance una solución por este camino.&lt;br /&gt;
&lt;br /&gt;
==Implementación==&lt;br /&gt;
&lt;br /&gt;
A continuación se detallan los pasos seguidos para incorporar dichos sensores al Butiá:&lt;br /&gt;
*Crear User Module&lt;br /&gt;
*Reconocimiento PnP&lt;br /&gt;
*Crear Driver&lt;br /&gt;
*Grabar Firmware&lt;br /&gt;
&lt;br /&gt;
===Crear User Module===&lt;br /&gt;
&lt;br /&gt;
Un usermodule debe cumplir con una API determinada, de esta manera es posible agregar las funcionalidades que el módulo expone. Las operaciones principales que se deben implementar son las encargadas de atender los eventos de:&lt;br /&gt;
*inicialización&lt;br /&gt;
*liberación de recursos&lt;br /&gt;
*configuración&lt;br /&gt;
&lt;br /&gt;
El siguiente es el codigo del UserModule del sensor Temperatura:&lt;br /&gt;
&lt;br /&gt;
Codigo User Module Temperatura[http://www.fing.edu.uy/inco/proyectos/butia/mediawiki/images/b/be/Temp_usermodule.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Reconocimiento PnP===&lt;br /&gt;
&lt;br /&gt;
Se toma un valor de resistencia no utilizado en la cartilla [https://docs.google.com/spreadsheet/ccc?key=0AvO96_3p52-AdFdtaE1YbzV1ZmhVRldjSVE0OUtEZGc#gid=0)] y se agregan sus respectivas constantes (por ejemplo en el caso de la temperatura R_TEMP_MIN, R_TEMP_MAX), con los valores dados por dicha tabla, también se debe aumentar la cantidad de dispositivos (MAX_DEVICES) del archivo pnp.h.&lt;br /&gt;
&lt;br /&gt;
Luego en el pnp.c en la función table_device_id_resistance se debe agregar el modulo nuevo con las constantes definidas anteriormente&lt;br /&gt;
&lt;br /&gt;
     rom const device_resistance table_device_id_resistance[MAX_DEVICES] = {&lt;br /&gt;
           ...&lt;br /&gt;
           { &amp;quot;temp&amp;quot;, R_TEMP_MIN, R_TEMP_MAX}&lt;br /&gt;
     };&lt;br /&gt;
&lt;br /&gt;
===Crear Driver===&lt;br /&gt;
&lt;br /&gt;
A continuación se encuentra el driver del sensor temperatura:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
    import math &lt;br /&gt;
&lt;br /&gt;
    RD_VERSION = 0x00&lt;br /&gt;
    GET_VALUE = 0x01 &lt;br /&gt;
    VCC = 65536 &lt;br /&gt;
&lt;br /&gt;
    def getVersion(dev):&lt;br /&gt;
        dev.send([RD_VERSION])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        return raw[1] + raw[2] * 256&lt;br /&gt;
 &lt;br /&gt;
    def getValue(dev):&lt;br /&gt;
        dev.send([GET_VALUE])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        volt = (raw[1] + raw[2] * 256) * 5.0 / VCC&lt;br /&gt;
        return math.floor(volt * 1000.0) / 10.0&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde el getValue hace la traducción de la salida del sensor a grados celsius tal como se especificó en la sección del sensor Temperatura.&lt;br /&gt;
&lt;br /&gt;
===Grabar Firmware===&lt;br /&gt;
&lt;br /&gt;
El microcontrolador contiene un bootloader que permite grabar el firmware sin necesidad de un programador por hardware.&lt;br /&gt;
Para grabar el firmware se utiliza el siguiente comando: ./fsusb --force_program usb4all2.hex. Donde usb4all2.hex es el binario generado como resultado de compilar el proyecto (con los usermodules nuevos agregados) y fsusb es un programa que implementa el protocolo de grabación de firmware de microchip.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Demos==&lt;br /&gt;
===Sensor Temperatura===&lt;br /&gt;
Para esta demo se utilió un programa Python que muestra en consola la temperatura tomada.&lt;br /&gt;
&amp;lt;code&amp;gt;	&lt;br /&gt;
   print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
   while 1:&lt;br /&gt;
        temperature=robot.getTemperature(1)&lt;br /&gt;
        if temperature == -1:&lt;br /&gt;
            print &amp;quot;OH NO! ERROR&amp;quot;&lt;br /&gt;
        else:&lt;br /&gt;
            clear() &lt;br /&gt;
            print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
            print (str(temperature) + &amp;quot; C&amp;quot;) &lt;br /&gt;
        time.sleep(2)&lt;br /&gt;
&amp;lt;/code&amp;gt;	&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;youtube&amp;gt;PrNPiMWmwY0&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sensor Movimiento===&lt;br /&gt;
Para esta demo se utilió un programa Python que muestra en consola cuando se detectó movimiento.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
   print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
   while 1:        &lt;br /&gt;
        sensor=robot.getMotion(1)        &lt;br /&gt;
        if sensor == 1:&lt;br /&gt;
           clear() &lt;br /&gt;
           print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
           print &amp;quot;NOS MOVEMOS!!&amp;quot;&lt;br /&gt;
        else:&lt;br /&gt;
           if sensor == -1:&lt;br /&gt;
              print &amp;quot;OH NO! ERROR&amp;quot;&lt;br /&gt;
           else:&lt;br /&gt;
              clear()&lt;br /&gt;
              print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
        time.sleep(0.5)&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;youtube&amp;gt;mSEpZyIHv64&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Conclusiones==&lt;br /&gt;
*Se implementaron dos sensores nuevos, útiles y de bajo costo: Temperatura y Movimiento.&lt;br /&gt;
El de temperatura nos parece de gran utilidad para la estación meteorológica que se está intentando construir, ya que a demás la temperatura es una magnitud fácilmente comprendida por niños.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
El de movimiento nos pareció un sensor que puede llegar a ser entretenido para niños, ya que programando algo relativamente sencillo se puede llegar a algo interesante. Por ejemplo que se prenda una luz cuando alguien se mueve.&lt;br /&gt;
&lt;br /&gt;
*Se investigaron posibles sensores brújulas existentes en el mercado&lt;br /&gt;
El costo de estas varía según el componente pero mas o menos rondan por los 40 dolares&lt;br /&gt;
&lt;br /&gt;
==Trabajo a Futuro==&lt;br /&gt;
*Realizar el diseño de las placas para los módulos implementados&lt;br /&gt;
*Implementar sensor de Gas&lt;br /&gt;
Esto no se pudo realizar ya que no encontramos documentación de como conectar el sensor con la placa. Pero una vez que esto se conozca sería seguir el procedimiento hecho para los otros sensores.&lt;br /&gt;
*Continuar con la Brújula&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5940</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5940"/>
				<updated>2014-09-13T23:59:33Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: /* Sensor Temperatura */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Objetivos===&lt;br /&gt;
*Investigación de kits educativos actuales&lt;br /&gt;
*Implementación de sensores nuevos (y de utilidad) para el kit Butiá&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Cámara&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 ([http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf]); y el de temperatura y humedad DHT11 ([http://akizukidenshi.com/download/ds/aosong/DHT11.pdf]). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, a demás no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son muy caros y difíciles de conseguir en el medio local, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. No pudimos &amp;quot;traducir&amp;quot; la imagen a valores útiles para analizar la orientación.&lt;br /&gt;
Consideramos dos alternativas, la primera (con una brújula que mide el angulo con respecto al norte) esto no lo vimos posible ya que no encontramos forma de leer este dato con la cámara. &lt;br /&gt;
La segunda opción fue imprimir en pantalla donde se encuentra el norte, utilizando una brújula con el norte en color rojo, y de esta forma el follow me lo puede &amp;quot;ver&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
En conclusión, sería muy interesante la incorporación de este sensor a la plataforma, pero los altos precios de los sensores brújulas se oponen a la accesibilidad objetivo del proyecto. Una posible implementación a través del procesamiento de imágenes, no está al alcance de nuestros conocimientos. Es posible que teniendo en cuenta el lento pero incesante avance en el desempeño de las herramientas de procesamiento de imagen, en un futuro se alcance una solución por este camino.&lt;br /&gt;
&lt;br /&gt;
==Implementación==&lt;br /&gt;
&lt;br /&gt;
A continuación se detallan los pasos seguidos para incorporar dichos sensores al Butiá:&lt;br /&gt;
*Crear User Module&lt;br /&gt;
*Reconocimiento PnP&lt;br /&gt;
*Crear Driver&lt;br /&gt;
*Grabar Firmware&lt;br /&gt;
&lt;br /&gt;
===Crear User Module===&lt;br /&gt;
&lt;br /&gt;
Un usermodule debe cumplir con una API determinada, de esta manera es posible agregar las funcionalidades que el módulo expone. Las operaciones principales que se deben implementar son las encargadas de atender los eventos de:&lt;br /&gt;
*inicialización&lt;br /&gt;
*liberación de recursos&lt;br /&gt;
*configuración&lt;br /&gt;
&lt;br /&gt;
El siguiente es el codigo del UserModule del sensor Temperatura:&lt;br /&gt;
&lt;br /&gt;
Codigo User Module Temperatura[http://www.fing.edu.uy/inco/proyectos/butia/mediawiki/images/b/be/Temp_usermodule.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Reconocimiento PnP===&lt;br /&gt;
&lt;br /&gt;
Se toma un valor de resistencia no utilizado en la cartilla [https://docs.google.com/spreadsheet/ccc?key=0AvO96_3p52-AdFdtaE1YbzV1ZmhVRldjSVE0OUtEZGc#gid=0)] y se agregan sus respectivas constantes (por ejemplo en el caso de la temperatura R_TEMP_MIN, R_TEMP_MAX), con los valores dados por dicha tabla, también se debe aumentar la cantidad de dispositivos (MAX_DEVICES) del archivo pnp.h.&lt;br /&gt;
&lt;br /&gt;
Luego en el pnp.c en la función table_device_id_resistance se debe agregar el modulo nuevo con las constantes definidas anteriormente&lt;br /&gt;
&lt;br /&gt;
     rom const device_resistance table_device_id_resistance[MAX_DEVICES] = {&lt;br /&gt;
           ...&lt;br /&gt;
           { &amp;quot;temp&amp;quot;, R_TEMP_MIN, R_TEMP_MAX}&lt;br /&gt;
     };&lt;br /&gt;
&lt;br /&gt;
===Crear Driver===&lt;br /&gt;
&lt;br /&gt;
A continuación se encuentra el driver del sensor temperatura:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
    import math &lt;br /&gt;
&lt;br /&gt;
    RD_VERSION = 0x00&lt;br /&gt;
    GET_VALUE = 0x01 &lt;br /&gt;
    VCC = 65536 &lt;br /&gt;
&lt;br /&gt;
    def getVersion(dev):&lt;br /&gt;
        dev.send([RD_VERSION])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        return raw[1] + raw[2] * 256&lt;br /&gt;
 &lt;br /&gt;
    def getValue(dev):&lt;br /&gt;
        dev.send([GET_VALUE])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        volt = (raw[1] + raw[2] * 256) * 5.0 / VCC&lt;br /&gt;
        return math.floor(volt * 1000.0) / 10.0&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde el getValue hace la traducción de la salida del sensor a grados celsius tal como se especificó en la sección del sensor Temperatura.&lt;br /&gt;
&lt;br /&gt;
===Grabar Firmware===&lt;br /&gt;
&lt;br /&gt;
El microcontrolador contiene un bootloader que permite grabar el firmware sin necesidad de un programador por hardware.&lt;br /&gt;
Para grabar el firmware se utiliza el siguiente comando: ./fsusb --force_program usb4all2.hex. Donde usb4all2.hex es el binario generado como resultado de compilar el proyecto (con los usermodules nuevos agregados) y fsusb es un programa que implementa el protocolo de grabación de firmware de microchip.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Demos==&lt;br /&gt;
===Sensor Temperatura===&lt;br /&gt;
Para esta demo se utilió un programa Python que muestra en consola la temperatura tomada.&lt;br /&gt;
&amp;lt;code&amp;gt;	&lt;br /&gt;
   print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
   while 1:&lt;br /&gt;
        temperature=robot.getTemperature(1)&lt;br /&gt;
        if temperature == -1:&lt;br /&gt;
            print &amp;quot;OH NO! ERROR&amp;quot;&lt;br /&gt;
        else:&lt;br /&gt;
            clear() &lt;br /&gt;
            print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
            print (str(temperature) + &amp;quot; C&amp;quot;) &lt;br /&gt;
        time.sleep(2)&lt;br /&gt;
&amp;lt;/code&amp;gt;	&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;youtube&amp;gt;PrNPiMWmwY0&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sensor Movimiento===&lt;br /&gt;
Para esta demo se utilió un programa Python que muestra en consola cuando se detectó movimiento.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
   print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
   while 1:        &lt;br /&gt;
        sensor=robot.getMotion(1)&lt;br /&gt;
        &lt;br /&gt;
        if sensor == 1:&lt;br /&gt;
		clear() &lt;br /&gt;
		print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
		print &amp;quot;NOS MOVEMOS!!&amp;quot;&lt;br /&gt;
	else:&lt;br /&gt;
		if sensor == -1:&lt;br /&gt;
			print &amp;quot;OH NO! ERROR&amp;quot;&lt;br /&gt;
		else:&lt;br /&gt;
			clear()&lt;br /&gt;
			print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
        time.sleep(0.5)&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;youtube&amp;gt;mSEpZyIHv64&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Conclusiones==&lt;br /&gt;
*Se implementaron dos sensores nuevos, útiles y de bajo costo: Temperatura y Movimiento.&lt;br /&gt;
El de temperatura nos parece de gran utilidad para la estación meteorológica que se está intentando construir, ya que a demás la temperatura es una magnitud fácilmente comprendida por niños.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
El de movimiento nos pareció un sensor que puede llegar a ser entretenido para niños, ya que programando algo relativamente sencillo se puede llegar a algo interesante. Por ejemplo que se prenda una luz cuando alguien se mueve.&lt;br /&gt;
&lt;br /&gt;
*Se investigaron posibles sensores brújulas existentes en el mercado&lt;br /&gt;
El costo de estas varía según el componente pero mas o menos rondan por los 40 dolares&lt;br /&gt;
&lt;br /&gt;
==Trabajo a Futuro==&lt;br /&gt;
*Realizar el diseño de las placas para los módulos implementados&lt;br /&gt;
*Implementar sensor de Gas&lt;br /&gt;
Esto no se pudo realizar ya que no encontramos documentación de como conectar el sensor con la placa. Pero una vez que esto se conozca sería seguir el procedimiento hecho para los otros sensores.&lt;br /&gt;
*Continuar con la Brújula&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5939</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5939"/>
				<updated>2014-09-13T23:55:35Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: /* LSM303 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Objetivos===&lt;br /&gt;
*Investigación de kits educativos actuales&lt;br /&gt;
*Implementación de sensores nuevos (y de utilidad) para el kit Butiá&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Cámara&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 ([http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf]); y el de temperatura y humedad DHT11 ([http://akizukidenshi.com/download/ds/aosong/DHT11.pdf]). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, a demás no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son muy caros y difíciles de conseguir en el medio local, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. No pudimos &amp;quot;traducir&amp;quot; la imagen a valores útiles para analizar la orientación.&lt;br /&gt;
Consideramos dos alternativas, la primera (con una brújula que mide el angulo con respecto al norte) esto no lo vimos posible ya que no encontramos forma de leer este dato con la cámara. &lt;br /&gt;
La segunda opción fue imprimir en pantalla donde se encuentra el norte, utilizando una brújula con el norte en color rojo, y de esta forma el follow me lo puede &amp;quot;ver&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
En conclusión, sería muy interesante la incorporación de este sensor a la plataforma, pero los altos precios de los sensores brújulas se oponen a la accesibilidad objetivo del proyecto. Una posible implementación a través del procesamiento de imágenes, no está al alcance de nuestros conocimientos. Es posible que teniendo en cuenta el lento pero incesante avance en el desempeño de las herramientas de procesamiento de imagen, en un futuro se alcance una solución por este camino.&lt;br /&gt;
&lt;br /&gt;
==Implementación==&lt;br /&gt;
&lt;br /&gt;
A continuación se detallan los pasos seguidos para incorporar dichos sensores al Butiá:&lt;br /&gt;
*Crear User Module&lt;br /&gt;
*Reconocimiento PnP&lt;br /&gt;
*Crear Driver&lt;br /&gt;
*Grabar Firmware&lt;br /&gt;
&lt;br /&gt;
===Crear User Module===&lt;br /&gt;
&lt;br /&gt;
Un usermodule debe cumplir con una API determinada, de esta manera es posible agregar las funcionalidades que el módulo expone. Las operaciones principales que se deben implementar son las encargadas de atender los eventos de:&lt;br /&gt;
*inicialización&lt;br /&gt;
*liberación de recursos&lt;br /&gt;
*configuración&lt;br /&gt;
&lt;br /&gt;
El siguiente es el codigo del UserModule del sensor Temperatura:&lt;br /&gt;
&lt;br /&gt;
Codigo User Module Temperatura[http://www.fing.edu.uy/inco/proyectos/butia/mediawiki/images/b/be/Temp_usermodule.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Reconocimiento PnP===&lt;br /&gt;
&lt;br /&gt;
Se toma un valor de resistencia no utilizado en la cartilla [https://docs.google.com/spreadsheet/ccc?key=0AvO96_3p52-AdFdtaE1YbzV1ZmhVRldjSVE0OUtEZGc#gid=0)] y se agregan sus respectivas constantes (por ejemplo en el caso de la temperatura R_TEMP_MIN, R_TEMP_MAX), con los valores dados por dicha tabla, también se debe aumentar la cantidad de dispositivos (MAX_DEVICES) del archivo pnp.h.&lt;br /&gt;
&lt;br /&gt;
Luego en el pnp.c en la función table_device_id_resistance se debe agregar el modulo nuevo con las constantes definidas anteriormente&lt;br /&gt;
&lt;br /&gt;
     rom const device_resistance table_device_id_resistance[MAX_DEVICES] = {&lt;br /&gt;
           ...&lt;br /&gt;
           { &amp;quot;temp&amp;quot;, R_TEMP_MIN, R_TEMP_MAX}&lt;br /&gt;
     };&lt;br /&gt;
&lt;br /&gt;
===Crear Driver===&lt;br /&gt;
&lt;br /&gt;
A continuación se encuentra el driver del sensor temperatura:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
    import math &lt;br /&gt;
&lt;br /&gt;
    RD_VERSION = 0x00&lt;br /&gt;
    GET_VALUE = 0x01 &lt;br /&gt;
    VCC = 65536 &lt;br /&gt;
&lt;br /&gt;
    def getVersion(dev):&lt;br /&gt;
        dev.send([RD_VERSION])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        return raw[1] + raw[2] * 256&lt;br /&gt;
 &lt;br /&gt;
    def getValue(dev):&lt;br /&gt;
        dev.send([GET_VALUE])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        volt = (raw[1] + raw[2] * 256) * 5.0 / VCC&lt;br /&gt;
        return math.floor(volt * 1000.0) / 10.0&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde el getValue hace la traducción de la salida del sensor a grados celsius tal como se especificó en la sección del sensor Temperatura.&lt;br /&gt;
&lt;br /&gt;
===Grabar Firmware===&lt;br /&gt;
&lt;br /&gt;
El microcontrolador contiene un bootloader que permite grabar el firmware sin necesidad de un programador por hardware.&lt;br /&gt;
Para grabar el firmware se utiliza el siguiente comando: ./fsusb --force_program usb4all2.hex. Donde usb4all2.hex es el binario generado como resultado de compilar el proyecto (con los usermodules nuevos agregados) y fsusb es un programa que implementa el protocolo de grabación de firmware de microchip.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Demos==&lt;br /&gt;
===Sensor Temperatura===&lt;br /&gt;
Para esta demo se utilió un programa Python que muestra en consola la temperatura tomada.&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
   print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
   while 1:&lt;br /&gt;
        temperature=robot.getTemperature(1)&lt;br /&gt;
	&lt;br /&gt;
	if temperature == -1:&lt;br /&gt;
		print &amp;quot;OH NO! ERROR&amp;quot;&lt;br /&gt;
	else:&lt;br /&gt;
		clear() &lt;br /&gt;
		print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
		print (str(temperature) + &amp;quot; C&amp;quot;) &lt;br /&gt;
        time.sleep(2)&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;youtube&amp;gt;PrNPiMWmwY0&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sensor Movimiento===&lt;br /&gt;
Para esta demo se utilió un programa Python que muestra en consola cuando se detectó movimiento.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
   print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
   while 1:        &lt;br /&gt;
        sensor=robot.getMotion(1)&lt;br /&gt;
        &lt;br /&gt;
        if sensor == 1:&lt;br /&gt;
		clear() &lt;br /&gt;
		print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
		print &amp;quot;NOS MOVEMOS!!&amp;quot;&lt;br /&gt;
	else:&lt;br /&gt;
		if sensor == -1:&lt;br /&gt;
			print &amp;quot;OH NO! ERROR&amp;quot;&lt;br /&gt;
		else:&lt;br /&gt;
			clear()&lt;br /&gt;
			print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
        time.sleep(0.5)&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;youtube&amp;gt;mSEpZyIHv64&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Conclusiones==&lt;br /&gt;
*Se implementaron dos sensores nuevos, útiles y de bajo costo: Temperatura y Movimiento.&lt;br /&gt;
El de temperatura nos parece de gran utilidad para la estación meteorológica que se está intentando construir, ya que a demás la temperatura es una magnitud fácilmente comprendida por niños.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
El de movimiento nos pareció un sensor que puede llegar a ser entretenido para niños, ya que programando algo relativamente sencillo se puede llegar a algo interesante. Por ejemplo que se prenda una luz cuando alguien se mueve.&lt;br /&gt;
&lt;br /&gt;
*Se investigaron posibles sensores brújulas existentes en el mercado&lt;br /&gt;
El costo de estas varía según el componente pero mas o menos rondan por los 40 dolares&lt;br /&gt;
&lt;br /&gt;
==Trabajo a Futuro==&lt;br /&gt;
*Realizar el diseño de las placas para los módulos implementados&lt;br /&gt;
*Implementar sensor de Gas&lt;br /&gt;
Esto no se pudo realizar ya que no encontramos documentación de como conectar el sensor con la placa. Pero una vez que esto se conozca sería seguir el procedimiento hecho para los otros sensores.&lt;br /&gt;
*Continuar con la Brújula&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5938</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5938"/>
				<updated>2014-09-13T23:55:17Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: /* Temperatura */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Objetivos===&lt;br /&gt;
*Investigación de kits educativos actuales&lt;br /&gt;
*Implementación de sensores nuevos (y de utilidad) para el kit Butiá&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Cámara&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 ([http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf]); y el de temperatura y humedad DHT11 ([http://akizukidenshi.com/download/ds/aosong/DHT11.pdf]). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, a demás no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son muy caros y difíciles de conseguir en el medio local, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. No pudimos &amp;quot;traducir&amp;quot; la imagen a valores útiles para analizar la orientación.&lt;br /&gt;
Consideramos dos alternativas, la primera (con una brújula que mide el angulo con respecto al norte) esto no lo vimos posible ya que no encontramos forma de leer este dato con la cámara. &lt;br /&gt;
La segunda opción fue imprimir en pantalla donde se encuentra el norte, utilizando una brújula con el norte en color rojo, y de esta forma el follow me lo puede &amp;quot;ver&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
En conclusión, sería muy interesante la incorporación de este sensor a la plataforma, pero los altos precios de los sensores brújulas se oponen a la accesibilidad objetivo del proyecto. Una posible implementación a través del procesamiento de imágenes, no está al alcance de nuestros conocimientos. Es posible que teniendo en cuenta el lento pero incesante avance en el desempeño de las herramientas de procesamiento de imagen, en un futuro se alcance una solución por este camino.&lt;br /&gt;
&lt;br /&gt;
==Implementación==&lt;br /&gt;
&lt;br /&gt;
A continuación se detallan los pasos seguidos para incorporar dichos sensores al Butiá:&lt;br /&gt;
*Crear User Module&lt;br /&gt;
*Reconocimiento PnP&lt;br /&gt;
*Crear Driver&lt;br /&gt;
*Grabar Firmware&lt;br /&gt;
&lt;br /&gt;
===Crear User Module===&lt;br /&gt;
&lt;br /&gt;
Un usermodule debe cumplir con una API determinada, de esta manera es posible agregar las funcionalidades que el módulo expone. Las operaciones principales que se deben implementar son las encargadas de atender los eventos de:&lt;br /&gt;
*inicialización&lt;br /&gt;
*liberación de recursos&lt;br /&gt;
*configuración&lt;br /&gt;
&lt;br /&gt;
El siguiente es el codigo del UserModule del sensor Temperatura:&lt;br /&gt;
&lt;br /&gt;
Codigo User Module Temperatura[http://www.fing.edu.uy/inco/proyectos/butia/mediawiki/images/b/be/Temp_usermodule.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Reconocimiento PnP===&lt;br /&gt;
&lt;br /&gt;
Se toma un valor de resistencia no utilizado en la cartilla [https://docs.google.com/spreadsheet/ccc?key=0AvO96_3p52-AdFdtaE1YbzV1ZmhVRldjSVE0OUtEZGc#gid=0)] y se agregan sus respectivas constantes (por ejemplo en el caso de la temperatura R_TEMP_MIN, R_TEMP_MAX), con los valores dados por dicha tabla, también se debe aumentar la cantidad de dispositivos (MAX_DEVICES) del archivo pnp.h.&lt;br /&gt;
&lt;br /&gt;
Luego en el pnp.c en la función table_device_id_resistance se debe agregar el modulo nuevo con las constantes definidas anteriormente&lt;br /&gt;
&lt;br /&gt;
     rom const device_resistance table_device_id_resistance[MAX_DEVICES] = {&lt;br /&gt;
           ...&lt;br /&gt;
           { &amp;quot;temp&amp;quot;, R_TEMP_MIN, R_TEMP_MAX}&lt;br /&gt;
     };&lt;br /&gt;
&lt;br /&gt;
===Crear Driver===&lt;br /&gt;
&lt;br /&gt;
A continuación se encuentra el driver del sensor temperatura:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
    import math &lt;br /&gt;
&lt;br /&gt;
    RD_VERSION = 0x00&lt;br /&gt;
    GET_VALUE = 0x01 &lt;br /&gt;
    VCC = 65536 &lt;br /&gt;
&lt;br /&gt;
    def getVersion(dev):&lt;br /&gt;
        dev.send([RD_VERSION])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        return raw[1] + raw[2] * 256&lt;br /&gt;
 &lt;br /&gt;
    def getValue(dev):&lt;br /&gt;
        dev.send([GET_VALUE])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        volt = (raw[1] + raw[2] * 256) * 5.0 / VCC&lt;br /&gt;
        return math.floor(volt * 1000.0) / 10.0&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde el getValue hace la traducción de la salida del sensor a grados celsius tal como se especificó en la sección del sensor Temperatura.&lt;br /&gt;
&lt;br /&gt;
===Grabar Firmware===&lt;br /&gt;
&lt;br /&gt;
El microcontrolador contiene un bootloader que permite grabar el firmware sin necesidad de un programador por hardware.&lt;br /&gt;
Para grabar el firmware se utiliza el siguiente comando: ./fsusb --force_program usb4all2.hex. Donde usb4all2.hex es el binario generado como resultado de compilar el proyecto (con los usermodules nuevos agregados) y fsusb es un programa que implementa el protocolo de grabación de firmware de microchip.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Demos==&lt;br /&gt;
===Sensor Temperatura===&lt;br /&gt;
Para esta demo se utilió un programa Python que muestra en consola la temperatura tomada.&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
   print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
   while 1:&lt;br /&gt;
        temperature=robot.getTemperature(1)&lt;br /&gt;
	&lt;br /&gt;
	if temperature == -1:&lt;br /&gt;
		print &amp;quot;OH NO! ERROR&amp;quot;&lt;br /&gt;
	else:&lt;br /&gt;
		clear() &lt;br /&gt;
		print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
		print (str(temperature) + &amp;quot; C&amp;quot;) &lt;br /&gt;
        time.sleep(2)&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;youtube&amp;gt;PrNPiMWmwY0&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sensor Movimiento===&lt;br /&gt;
Para esta demo se utilió un programa Python que muestra en consola cuando se detectó movimiento.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
   print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
   while 1:        &lt;br /&gt;
        sensor=robot.getMotion(1)&lt;br /&gt;
        &lt;br /&gt;
        if sensor == 1:&lt;br /&gt;
		clear() &lt;br /&gt;
		print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
		print &amp;quot;NOS MOVEMOS!!&amp;quot;&lt;br /&gt;
	else:&lt;br /&gt;
		if sensor == -1:&lt;br /&gt;
			print &amp;quot;OH NO! ERROR&amp;quot;&lt;br /&gt;
		else:&lt;br /&gt;
			clear()&lt;br /&gt;
			print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
        time.sleep(0.5)&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;youtube&amp;gt;mSEpZyIHv64&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Conclusiones==&lt;br /&gt;
*Se implementaron dos sensores nuevos, útiles y de bajo costo: Temperatura y Movimiento.&lt;br /&gt;
El de temperatura nos parece de gran utilidad para la estación meteorológica que se está intentando construir, ya que a demás la temperatura es una magnitud fácilmente comprendida por niños.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
El de movimiento nos pareció un sensor que puede llegar a ser entretenido para niños, ya que programando algo relativamente sencillo se puede llegar a algo interesante. Por ejemplo que se prenda una luz cuando alguien se mueve.&lt;br /&gt;
&lt;br /&gt;
*Se investigaron posibles sensores brújulas existentes en el mercado&lt;br /&gt;
El costo de estas varía según el componente pero mas o menos rondan por los 40 dolares&lt;br /&gt;
&lt;br /&gt;
==Trabajo a Futuro==&lt;br /&gt;
*Realizar el diseño de las placas para los módulos implementados&lt;br /&gt;
*Implementar sensor de Gas&lt;br /&gt;
Esto no se pudo realizar ya que no encontramos documentación de como conectar el sensor con la placa. Pero una vez que esto se conozca sería seguir el procedimiento hecho para los otros sensores.&lt;br /&gt;
*Continuar con la Brújula&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5937</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5937"/>
				<updated>2014-09-13T23:54:41Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Objetivos===&lt;br /&gt;
*Investigación de kits educativos actuales&lt;br /&gt;
*Implementación de sensores nuevos (y de utilidad) para el kit Butiá&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Cámara&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 ([http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf]); y el de temperatura y humedad DHT11 ([http://akizukidenshi.com/download/ds/aosong/DHT11.pdf]). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, a demás no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son muy caros y difíciles de conseguir en el medio local, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. No pudimos &amp;quot;traducir&amp;quot; la imagen a valores útiles para analizar la orientación.&lt;br /&gt;
Consideramos dos alternativas, la primera (con una brújula que mide el angulo con respecto al norte) esto no lo vimos posible ya que no encontramos forma de leer este dato con la cámara. &lt;br /&gt;
La segunda opción fue imprimir en pantalla donde se encuentra el norte, utilizando una brújula con el norte en color rojo, y de esta forma el follow me lo puede &amp;quot;ver&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
En conclusión, sería muy interesante la incorporación de este sensor a la plataforma, pero los altos precios de los sensores brújulas se oponen a la accesibilidad objetivo del proyecto. Una posible implementación a través del procesamiento de imágenes, no está al alcance de nuestros conocimientos. Es posible que teniendo en cuenta el lento pero incesante avance en el desempeño de las herramientas de procesamiento de imagen, en un futuro se alcance una solución por este camino.&lt;br /&gt;
&lt;br /&gt;
==Implementación==&lt;br /&gt;
&lt;br /&gt;
A continuación se detallan los pasos seguidos para incorporar dichos sensores al Butiá:&lt;br /&gt;
*Crear User Module&lt;br /&gt;
*Reconocimiento PnP&lt;br /&gt;
*Crear Driver&lt;br /&gt;
*Grabar Firmware&lt;br /&gt;
&lt;br /&gt;
===Crear User Module===&lt;br /&gt;
&lt;br /&gt;
Un usermodule debe cumplir con una API determinada, de esta manera es posible agregar las funcionalidades que el módulo expone. Las operaciones principales que se deben implementar son las encargadas de atender los eventos de:&lt;br /&gt;
*inicialización&lt;br /&gt;
*liberación de recursos&lt;br /&gt;
*configuración&lt;br /&gt;
&lt;br /&gt;
El siguiente es el codigo del UserModule del sensor Temperatura:&lt;br /&gt;
&lt;br /&gt;
Codigo User Module Temperatura[http://www.fing.edu.uy/inco/proyectos/butia/mediawiki/images/b/be/Temp_usermodule.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Reconocimiento PnP===&lt;br /&gt;
&lt;br /&gt;
Se toma un valor de resistencia no utilizado en la cartilla [https://docs.google.com/spreadsheet/ccc?key=0AvO96_3p52-AdFdtaE1YbzV1ZmhVRldjSVE0OUtEZGc#gid=0)] y se agregan sus respectivas constantes (por ejemplo en el caso de la temperatura R_TEMP_MIN, R_TEMP_MAX), con los valores dados por dicha tabla, también se debe aumentar la cantidad de dispositivos (MAX_DEVICES) del archivo pnp.h.&lt;br /&gt;
&lt;br /&gt;
Luego en el pnp.c en la función table_device_id_resistance se debe agregar el modulo nuevo con las constantes definidas anteriormente&lt;br /&gt;
&lt;br /&gt;
     rom const device_resistance table_device_id_resistance[MAX_DEVICES] = {&lt;br /&gt;
           ...&lt;br /&gt;
           { &amp;quot;temp&amp;quot;, R_TEMP_MIN, R_TEMP_MAX}&lt;br /&gt;
     };&lt;br /&gt;
&lt;br /&gt;
===Crear Driver===&lt;br /&gt;
&lt;br /&gt;
A continuación se encuentra el driver del sensor temperatura:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
    import math &lt;br /&gt;
&lt;br /&gt;
    RD_VERSION = 0x00&lt;br /&gt;
    GET_VALUE = 0x01 &lt;br /&gt;
    VCC = 65536 &lt;br /&gt;
&lt;br /&gt;
    def getVersion(dev):&lt;br /&gt;
        dev.send([RD_VERSION])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        return raw[1] + raw[2] * 256&lt;br /&gt;
 &lt;br /&gt;
    def getValue(dev):&lt;br /&gt;
        dev.send([GET_VALUE])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        volt = (raw[1] + raw[2] * 256) * 5.0 / VCC&lt;br /&gt;
        return math.floor(volt * 1000.0) / 10.0&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde el getValue hace la traducción de la salida del sensor a grados celsius tal como se especificó en la sección del sensor Temperatura.&lt;br /&gt;
&lt;br /&gt;
===Grabar Firmware===&lt;br /&gt;
&lt;br /&gt;
El microcontrolador contiene un bootloader que permite grabar el firmware sin necesidad de un programador por hardware.&lt;br /&gt;
Para grabar el firmware se utiliza el siguiente comando: ./fsusb --force_program usb4all2.hex. Donde usb4all2.hex es el binario generado como resultado de compilar el proyecto (con los usermodules nuevos agregados) y fsusb es un programa que implementa el protocolo de grabación de firmware de microchip.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Demos==&lt;br /&gt;
===Sensor Temperatura===&lt;br /&gt;
Para esta demo se utilió un programa Python que muestra en consola la temperatura tomada.&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
   print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
   while 1:&lt;br /&gt;
        temperature=robot.getTemperature(1)&lt;br /&gt;
	&lt;br /&gt;
	if temperature == -1:&lt;br /&gt;
		print &amp;quot;OH NO! ERROR&amp;quot;&lt;br /&gt;
	else:&lt;br /&gt;
		clear() &lt;br /&gt;
		print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
		print (str(temperature) + &amp;quot; C&amp;quot;) &lt;br /&gt;
        time.sleep(2)&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;youtube&amp;gt;PrNPiMWmwY0&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Sensor Movimiento===&lt;br /&gt;
Para esta demo se utilió un programa Python que muestra en consola cuando se detectó movimiento.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
   print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
   while 1:        &lt;br /&gt;
        sensor=robot.getMotion(1)&lt;br /&gt;
        &lt;br /&gt;
        if sensor == 1:&lt;br /&gt;
		clear() &lt;br /&gt;
		print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
		print &amp;quot;NOS MOVEMOS!!&amp;quot;&lt;br /&gt;
	else:&lt;br /&gt;
		if sensor == -1:&lt;br /&gt;
			print &amp;quot;OH NO! ERROR&amp;quot;&lt;br /&gt;
		else:&lt;br /&gt;
			clear()&lt;br /&gt;
			print &amp;quot;Iniciado..&amp;quot;&lt;br /&gt;
        time.sleep(0.5)&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;youtube&amp;gt;mSEpZyIHv64&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Conclusiones==&lt;br /&gt;
*Se implementaron dos sensores nuevos, útiles y de bajo costo: Temperatura y Movimiento.&lt;br /&gt;
El de temperatura nos parece de gran utilidad para la estación meteorológica que se está intentando construir, ya que a demás la temperatura es una magnitud fácilmente comprendida por niños.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
El de movimiento nos pareció un sensor que puede llegar a ser entretenido para niños, ya que programando algo relativamente sencillo se puede llegar a algo interesante. Por ejemplo que se prenda una luz cuando alguien se mueve.&lt;br /&gt;
&lt;br /&gt;
*Se investigaron posibles sensores brújulas existentes en el mercado&lt;br /&gt;
El costo de estas varía según el componente pero mas o menos rondan por los 40 dolares&lt;br /&gt;
&lt;br /&gt;
==Trabajo a Futuro==&lt;br /&gt;
*Realizar el diseño de las placas para los módulos implementados&lt;br /&gt;
*Implementar sensor de Gas&lt;br /&gt;
Esto no se pudo realizar ya que no encontramos documentación de como conectar el sensor con la placa. Pero una vez que esto se conozca sería seguir el procedimiento hecho para los otros sensores.&lt;br /&gt;
*Continuar con la Brújula&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5936</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5936"/>
				<updated>2014-09-13T23:46:15Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: /* Conclusiones */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Objetivos===&lt;br /&gt;
*Investigación de kits educativos actuales&lt;br /&gt;
*Implementación de sensores nuevos (y de utilidad) para el kit Butiá&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Cámara&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 ([http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf]); y el de temperatura y humedad DHT11 ([http://akizukidenshi.com/download/ds/aosong/DHT11.pdf]). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, a demás no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son muy caros y difíciles de conseguir en el medio local, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. No pudimos &amp;quot;traducir&amp;quot; la imagen a valores útiles para analizar la orientación.&lt;br /&gt;
Consideramos dos alternativas, la primera (con una brújula que mide el angulo con respecto al norte) esto no lo vimos posible ya que no encontramos forma de leer este dato con la cámara. &lt;br /&gt;
La segunda opción fue imprimir en pantalla donde se encuentra el norte, utilizando una brújula con el norte en color rojo, y de esta forma el follow me lo puede &amp;quot;ver&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
En conclusión, sería muy interesante la incorporación de este sensor a la plataforma, pero los altos precios de los sensores brújulas se oponen a la accesibilidad objetivo del proyecto. Una posible implementación a través del procesamiento de imágenes, no está al alcance de nuestros conocimientos. Es posible que teniendo en cuenta el lento pero incesante avance en el desempeño de las herramientas de procesamiento de imagen, en un futuro se alcance una solución por este camino.&lt;br /&gt;
&lt;br /&gt;
==Implementación==&lt;br /&gt;
&lt;br /&gt;
A continuación se detallan los pasos seguidos para incorporar dichos sensores al Butiá:&lt;br /&gt;
*Crear User Module&lt;br /&gt;
*Reconocimiento PnP&lt;br /&gt;
*Crear Driver&lt;br /&gt;
*Grabar Firmware&lt;br /&gt;
&lt;br /&gt;
===Crear User Module===&lt;br /&gt;
&lt;br /&gt;
Un usermodule debe cumplir con una API determinada, de esta manera es posible agregar las funcionalidades que el módulo expone. Las operaciones principales que se deben implementar son las encargadas de atender los eventos de:&lt;br /&gt;
*inicialización&lt;br /&gt;
*liberación de recursos&lt;br /&gt;
*configuración&lt;br /&gt;
&lt;br /&gt;
El siguiente es el codigo del UserModule del sensor Temperatura:&lt;br /&gt;
&lt;br /&gt;
Codigo User Module Temperatura[http://www.fing.edu.uy/inco/proyectos/butia/mediawiki/images/b/be/Temp_usermodule.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Reconocimiento PnP===&lt;br /&gt;
&lt;br /&gt;
Se toma un valor de resistencia no utilizado en la cartilla [https://docs.google.com/spreadsheet/ccc?key=0AvO96_3p52-AdFdtaE1YbzV1ZmhVRldjSVE0OUtEZGc#gid=0)] y se agregan sus respectivas constantes (por ejemplo en el caso de la temperatura R_TEMP_MIN, R_TEMP_MAX), con los valores dados por dicha tabla, también se debe aumentar la cantidad de dispositivos (MAX_DEVICES) del archivo pnp.h.&lt;br /&gt;
&lt;br /&gt;
Luego en el pnp.c en la función table_device_id_resistance se debe agregar el modulo nuevo con las constantes definidas anteriormente&lt;br /&gt;
&lt;br /&gt;
     rom const device_resistance table_device_id_resistance[MAX_DEVICES] = {&lt;br /&gt;
           ...&lt;br /&gt;
           { &amp;quot;temp&amp;quot;, R_TEMP_MIN, R_TEMP_MAX}&lt;br /&gt;
     };&lt;br /&gt;
&lt;br /&gt;
===Crear Driver===&lt;br /&gt;
&lt;br /&gt;
A continuación se encuentra el driver del sensor temperatura:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
    import math &lt;br /&gt;
&lt;br /&gt;
    RD_VERSION = 0x00&lt;br /&gt;
    GET_VALUE = 0x01 &lt;br /&gt;
    VCC = 65536 &lt;br /&gt;
&lt;br /&gt;
    def getVersion(dev):&lt;br /&gt;
        dev.send([RD_VERSION])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        return raw[1] + raw[2] * 256&lt;br /&gt;
 &lt;br /&gt;
    def getValue(dev):&lt;br /&gt;
        dev.send([GET_VALUE])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        volt = (raw[1] + raw[2] * 256) * 5.0 / VCC&lt;br /&gt;
        return math.floor(volt * 1000.0) / 10.0&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde el getValue hace la traducción de la salida del sensor a grados celsius tal como se especificó en la sección del sensor Temperatura.&lt;br /&gt;
&lt;br /&gt;
===Grabar Firmware===&lt;br /&gt;
&lt;br /&gt;
El microcontrolador contiene un bootloader que permite grabar el firmware sin necesidad de un programador por hardware.&lt;br /&gt;
Para grabar el firmware se utiliza el siguiente comando: ./fsusb --force_program usb4all2.hex. Donde usb4all2.hex es el binario generado como resultado de compilar el proyecto (con los usermodules nuevos agregados) y fsusb es un programa que implementa el protocolo de grabación de firmware de microchip.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Demos==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;youtube&amp;gt;PrNPiMWmwY0&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;youtube&amp;gt;mSEpZyIHv64&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Conclusiones==&lt;br /&gt;
*Se implementaron dos sensores nuevos, útiles y de bajo costo: Temperatura y Movimiento.&lt;br /&gt;
El de temperatura nos parece de gran utilidad para la estación meteorológica que se está intentando construir, ya que a demás la temperatura es una magnitud fácilmente comprendida por niños.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
El de movimiento nos pareció un sensor que puede llegar a ser entretenido para niños, ya que programando algo relativamente sencillo se puede llegar a algo interesante. Por ejemplo que se prenda una luz cuando alguien se mueve.&lt;br /&gt;
&lt;br /&gt;
*Se investigaron posibles sensores brújulas existentes en el mercado&lt;br /&gt;
El costo de estas varía según el componente pero mas o menos rondan por los 40 dolares&lt;br /&gt;
&lt;br /&gt;
==Trabajo a Futuro==&lt;br /&gt;
*Realizar el diseño de las placas para los módulos implementados&lt;br /&gt;
*Implementar sensor de Gas&lt;br /&gt;
Esto no se pudo realizar ya que no encontramos documentación de como conectar el sensor con la placa. Pero una vez que esto se conozca sería seguir el procedimiento hecho para los otros sensores.&lt;br /&gt;
*Continuar con la Brújula&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5935</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5935"/>
				<updated>2014-09-13T23:45:42Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Objetivos===&lt;br /&gt;
*Investigación de kits educativos actuales&lt;br /&gt;
*Implementación de sensores nuevos (y de utilidad) para el kit Butiá&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Cámara&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 ([http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf]); y el de temperatura y humedad DHT11 ([http://akizukidenshi.com/download/ds/aosong/DHT11.pdf]). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, a demás no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son muy caros y difíciles de conseguir en el medio local, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. No pudimos &amp;quot;traducir&amp;quot; la imagen a valores útiles para analizar la orientación.&lt;br /&gt;
Consideramos dos alternativas, la primera (con una brújula que mide el angulo con respecto al norte) esto no lo vimos posible ya que no encontramos forma de leer este dato con la cámara. &lt;br /&gt;
La segunda opción fue imprimir en pantalla donde se encuentra el norte, utilizando una brújula con el norte en color rojo, y de esta forma el follow me lo puede &amp;quot;ver&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
En conclusión, sería muy interesante la incorporación de este sensor a la plataforma, pero los altos precios de los sensores brújulas se oponen a la accesibilidad objetivo del proyecto. Una posible implementación a través del procesamiento de imágenes, no está al alcance de nuestros conocimientos. Es posible que teniendo en cuenta el lento pero incesante avance en el desempeño de las herramientas de procesamiento de imagen, en un futuro se alcance una solución por este camino.&lt;br /&gt;
&lt;br /&gt;
==Implementación==&lt;br /&gt;
&lt;br /&gt;
A continuación se detallan los pasos seguidos para incorporar dichos sensores al Butiá:&lt;br /&gt;
*Crear User Module&lt;br /&gt;
*Reconocimiento PnP&lt;br /&gt;
*Crear Driver&lt;br /&gt;
*Grabar Firmware&lt;br /&gt;
&lt;br /&gt;
===Crear User Module===&lt;br /&gt;
&lt;br /&gt;
Un usermodule debe cumplir con una API determinada, de esta manera es posible agregar las funcionalidades que el módulo expone. Las operaciones principales que se deben implementar son las encargadas de atender los eventos de:&lt;br /&gt;
*inicialización&lt;br /&gt;
*liberación de recursos&lt;br /&gt;
*configuración&lt;br /&gt;
&lt;br /&gt;
El siguiente es el codigo del UserModule del sensor Temperatura:&lt;br /&gt;
&lt;br /&gt;
Codigo User Module Temperatura[http://www.fing.edu.uy/inco/proyectos/butia/mediawiki/images/b/be/Temp_usermodule.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Reconocimiento PnP===&lt;br /&gt;
&lt;br /&gt;
Se toma un valor de resistencia no utilizado en la cartilla [https://docs.google.com/spreadsheet/ccc?key=0AvO96_3p52-AdFdtaE1YbzV1ZmhVRldjSVE0OUtEZGc#gid=0)] y se agregan sus respectivas constantes (por ejemplo en el caso de la temperatura R_TEMP_MIN, R_TEMP_MAX), con los valores dados por dicha tabla, también se debe aumentar la cantidad de dispositivos (MAX_DEVICES) del archivo pnp.h.&lt;br /&gt;
&lt;br /&gt;
Luego en el pnp.c en la función table_device_id_resistance se debe agregar el modulo nuevo con las constantes definidas anteriormente&lt;br /&gt;
&lt;br /&gt;
     rom const device_resistance table_device_id_resistance[MAX_DEVICES] = {&lt;br /&gt;
           ...&lt;br /&gt;
           { &amp;quot;temp&amp;quot;, R_TEMP_MIN, R_TEMP_MAX}&lt;br /&gt;
     };&lt;br /&gt;
&lt;br /&gt;
===Crear Driver===&lt;br /&gt;
&lt;br /&gt;
A continuación se encuentra el driver del sensor temperatura:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
    import math &lt;br /&gt;
&lt;br /&gt;
    RD_VERSION = 0x00&lt;br /&gt;
    GET_VALUE = 0x01 &lt;br /&gt;
    VCC = 65536 &lt;br /&gt;
&lt;br /&gt;
    def getVersion(dev):&lt;br /&gt;
        dev.send([RD_VERSION])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        return raw[1] + raw[2] * 256&lt;br /&gt;
 &lt;br /&gt;
    def getValue(dev):&lt;br /&gt;
        dev.send([GET_VALUE])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        volt = (raw[1] + raw[2] * 256) * 5.0 / VCC&lt;br /&gt;
        return math.floor(volt * 1000.0) / 10.0&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde el getValue hace la traducción de la salida del sensor a grados celsius tal como se especificó en la sección del sensor Temperatura.&lt;br /&gt;
&lt;br /&gt;
===Grabar Firmware===&lt;br /&gt;
&lt;br /&gt;
El microcontrolador contiene un bootloader que permite grabar el firmware sin necesidad de un programador por hardware.&lt;br /&gt;
Para grabar el firmware se utiliza el siguiente comando: ./fsusb --force_program usb4all2.hex. Donde usb4all2.hex es el binario generado como resultado de compilar el proyecto (con los usermodules nuevos agregados) y fsusb es un programa que implementa el protocolo de grabación de firmware de microchip.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Demos==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;youtube&amp;gt;PrNPiMWmwY0&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;youtube&amp;gt;mSEpZyIHv64&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Conclusiones==&lt;br /&gt;
*Se implementaron dos sensores nuevos, útiles y de bajo costo: Temperatura y Movimiento.&lt;br /&gt;
El de temperatura nos parece de gran utilidad para la estación meteorológica que se está intentando construir, ya que a demás la temperatura es una magnitud fácilmente comprendida por niños.&lt;br /&gt;
El de movimiento nos pareció un sensor que puede llegar a ser entretenido para niños, ya que programando algo relativamente sencillo se puede llegar a algo interesante. Por ejemplo que se prenda una luz cuando alguien se mueve.&lt;br /&gt;
&lt;br /&gt;
*Se investigaron posibles sensores brújulas existentes en el mercado&lt;br /&gt;
El costo de estas varía según el componente pero mas o menos rondan por los 40 dolares&lt;br /&gt;
&lt;br /&gt;
==Trabajo a Futuro==&lt;br /&gt;
*Realizar el diseño de las placas para los módulos implementados&lt;br /&gt;
*Implementar sensor de Gas&lt;br /&gt;
Esto no se pudo realizar ya que no encontramos documentación de como conectar el sensor con la placa. Pero una vez que esto se conozca sería seguir el procedimiento hecho para los otros sensores.&lt;br /&gt;
*Continuar con la Brújula&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5934</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5934"/>
				<updated>2014-09-13T23:16:10Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: /* Demos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Objetivos===&lt;br /&gt;
*Investigación de kits educativos actuales&lt;br /&gt;
*Implementación de sensores nuevos (y de utilidad) para el kit Butiá&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Cámara&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 ([http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf]); y el de temperatura y humedad DHT11 ([http://akizukidenshi.com/download/ds/aosong/DHT11.pdf]). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, a demás no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son muy caros y difíciles de conseguir en el medio local, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. No pudimos &amp;quot;traducir&amp;quot; la imagen a valores útiles para analizar la orientación.&lt;br /&gt;
Consideramos dos alternativas, la primera (con una brújula que mide el angulo con respecto al norte) esto no lo vimos posible ya que no encontramos forma de leer este dato con la cámara. &lt;br /&gt;
La segunda opción fue imprimir en pantalla donde se encuentra el norte, utilizando una brújula con el norte en color rojo, y de esta forma el follow me lo puede &amp;quot;ver&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
En conclusión, sería muy interesante la incorporación de este sensor a la plataforma, pero los altos precios de los sensores brújulas se oponen a la accesibilidad objetivo del proyecto. Una posible implementación a través del procesamiento de imágenes, no está al alcance de nuestros conocimientos. Es posible que teniendo en cuenta el lento pero incesante avance en el desempeño de las herramientas de procesamiento de imagen, en un futuro se alcance una solución por este camino.&lt;br /&gt;
&lt;br /&gt;
==Implementación==&lt;br /&gt;
&lt;br /&gt;
A continuación se detallan los pasos seguidos para incorporar dichos sensores al Butiá:&lt;br /&gt;
*Crear User Module&lt;br /&gt;
*Reconocimiento PnP&lt;br /&gt;
*Crear Driver&lt;br /&gt;
*Grabar Firmware&lt;br /&gt;
&lt;br /&gt;
===Crear User Module===&lt;br /&gt;
&lt;br /&gt;
Un usermodule debe cumplir con una API determinada, de esta manera es posible agregar las funcionalidades que el módulo expone. Las operaciones principales que se deben implementar son las encargadas de atender los eventos de:&lt;br /&gt;
*inicialización&lt;br /&gt;
*liberación de recursos&lt;br /&gt;
*configuración&lt;br /&gt;
&lt;br /&gt;
El siguiente es el codigo del UserModule del sensor Temperatura:&lt;br /&gt;
&lt;br /&gt;
Codigo User Module Temperatura[http://www.fing.edu.uy/inco/proyectos/butia/mediawiki/images/b/be/Temp_usermodule.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Reconocimiento PnP===&lt;br /&gt;
&lt;br /&gt;
Se toma un valor de resistencia no utilizado en la cartilla [https://docs.google.com/spreadsheet/ccc?key=0AvO96_3p52-AdFdtaE1YbzV1ZmhVRldjSVE0OUtEZGc#gid=0)] y se agregan sus respectivas constantes (por ejemplo en el caso de la temperatura R_TEMP_MIN, R_TEMP_MAX), con los valores dados por dicha tabla, también se debe aumentar la cantidad de dispositivos (MAX_DEVICES) del archivo pnp.h.&lt;br /&gt;
&lt;br /&gt;
Luego en el pnp.c en la función table_device_id_resistance se debe agregar el modulo nuevo con las constantes definidas anteriormente&lt;br /&gt;
&lt;br /&gt;
     rom const device_resistance table_device_id_resistance[MAX_DEVICES] = {&lt;br /&gt;
           ...&lt;br /&gt;
           { &amp;quot;temp&amp;quot;, R_TEMP_MIN, R_TEMP_MAX}&lt;br /&gt;
     };&lt;br /&gt;
&lt;br /&gt;
===Crear Driver===&lt;br /&gt;
&lt;br /&gt;
A continuación se encuentra el driver del sensor temperatura:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
    import math &lt;br /&gt;
&lt;br /&gt;
    RD_VERSION = 0x00&lt;br /&gt;
    GET_VALUE = 0x01 &lt;br /&gt;
    VCC = 65536 &lt;br /&gt;
&lt;br /&gt;
    def getVersion(dev):&lt;br /&gt;
        dev.send([RD_VERSION])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        return raw[1] + raw[2] * 256&lt;br /&gt;
 &lt;br /&gt;
    def getValue(dev):&lt;br /&gt;
        dev.send([GET_VALUE])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        volt = (raw[1] + raw[2] * 256) * 5.0 / VCC&lt;br /&gt;
        return math.floor(volt * 1000.0) / 10.0&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde el getValue hace la traducción de la salida del sensor a grados celsius tal como se especificó en la sección del sensor Temperatura.&lt;br /&gt;
&lt;br /&gt;
===Grabar Firmware===&lt;br /&gt;
&lt;br /&gt;
El microcontrolador contiene un bootloader que permite grabar el firmware sin necesidad de un programador por hardware.&lt;br /&gt;
Para grabar el firmware se utiliza el siguiente comando: ./fsusb --force_program usb4all2.hex. Donde usb4all2.hex es el binario generado como resultado de compilar el proyecto (con los usermodules nuevos agregados) y fsusb es un programa que implementa el protocolo de grabación de firmware de microchip.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Demos==&lt;br /&gt;
&amp;lt;youtube&amp;gt;PrNPiMWmwY0&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;youtube&amp;gt;mSEpZyIHv64&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5933</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5933"/>
				<updated>2014-09-13T23:13:00Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: /* Crear Driver */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Objetivos===&lt;br /&gt;
*Investigación de kits educativos actuales&lt;br /&gt;
*Implementación de sensores nuevos (y de utilidad) para el kit Butiá&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Cámara&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 ([http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf]); y el de temperatura y humedad DHT11 ([http://akizukidenshi.com/download/ds/aosong/DHT11.pdf]). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, a demás no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son muy caros y difíciles de conseguir en el medio local, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. No pudimos &amp;quot;traducir&amp;quot; la imagen a valores útiles para analizar la orientación.&lt;br /&gt;
Consideramos dos alternativas, la primera (con una brújula que mide el angulo con respecto al norte) esto no lo vimos posible ya que no encontramos forma de leer este dato con la cámara. &lt;br /&gt;
La segunda opción fue imprimir en pantalla donde se encuentra el norte, utilizando una brújula con el norte en color rojo, y de esta forma el follow me lo puede &amp;quot;ver&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
En conclusión, sería muy interesante la incorporación de este sensor a la plataforma, pero los altos precios de los sensores brújulas se oponen a la accesibilidad objetivo del proyecto. Una posible implementación a través del procesamiento de imágenes, no está al alcance de nuestros conocimientos. Es posible que teniendo en cuenta el lento pero incesante avance en el desempeño de las herramientas de procesamiento de imagen, en un futuro se alcance una solución por este camino.&lt;br /&gt;
&lt;br /&gt;
==Implementación==&lt;br /&gt;
&lt;br /&gt;
A continuación se detallan los pasos seguidos para incorporar dichos sensores al Butiá:&lt;br /&gt;
*Crear User Module&lt;br /&gt;
*Reconocimiento PnP&lt;br /&gt;
*Crear Driver&lt;br /&gt;
*Grabar Firmware&lt;br /&gt;
&lt;br /&gt;
===Crear User Module===&lt;br /&gt;
&lt;br /&gt;
Un usermodule debe cumplir con una API determinada, de esta manera es posible agregar las funcionalidades que el módulo expone. Las operaciones principales que se deben implementar son las encargadas de atender los eventos de:&lt;br /&gt;
*inicialización&lt;br /&gt;
*liberación de recursos&lt;br /&gt;
*configuración&lt;br /&gt;
&lt;br /&gt;
El siguiente es el codigo del UserModule del sensor Temperatura:&lt;br /&gt;
&lt;br /&gt;
Codigo User Module Temperatura[http://www.fing.edu.uy/inco/proyectos/butia/mediawiki/images/b/be/Temp_usermodule.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Reconocimiento PnP===&lt;br /&gt;
&lt;br /&gt;
Se toma un valor de resistencia no utilizado en la cartilla [https://docs.google.com/spreadsheet/ccc?key=0AvO96_3p52-AdFdtaE1YbzV1ZmhVRldjSVE0OUtEZGc#gid=0)] y se agregan sus respectivas constantes (por ejemplo en el caso de la temperatura R_TEMP_MIN, R_TEMP_MAX), con los valores dados por dicha tabla, también se debe aumentar la cantidad de dispositivos (MAX_DEVICES) del archivo pnp.h.&lt;br /&gt;
&lt;br /&gt;
Luego en el pnp.c en la función table_device_id_resistance se debe agregar el modulo nuevo con las constantes definidas anteriormente&lt;br /&gt;
&lt;br /&gt;
     rom const device_resistance table_device_id_resistance[MAX_DEVICES] = {&lt;br /&gt;
           ...&lt;br /&gt;
           { &amp;quot;temp&amp;quot;, R_TEMP_MIN, R_TEMP_MAX}&lt;br /&gt;
     };&lt;br /&gt;
&lt;br /&gt;
===Crear Driver===&lt;br /&gt;
&lt;br /&gt;
A continuación se encuentra el driver del sensor temperatura:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
    import math &lt;br /&gt;
&lt;br /&gt;
    RD_VERSION = 0x00&lt;br /&gt;
    GET_VALUE = 0x01 &lt;br /&gt;
    VCC = 65536 &lt;br /&gt;
&lt;br /&gt;
    def getVersion(dev):&lt;br /&gt;
        dev.send([RD_VERSION])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        return raw[1] + raw[2] * 256&lt;br /&gt;
 &lt;br /&gt;
    def getValue(dev):&lt;br /&gt;
        dev.send([GET_VALUE])&lt;br /&gt;
        raw = dev.read(3)&lt;br /&gt;
        volt = (raw[1] + raw[2] * 256) * 5.0 / VCC&lt;br /&gt;
        return math.floor(volt * 1000.0) / 10.0&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Donde el getValue hace la traducción de la salida del sensor a grados celsius tal como se especificó en la sección del sensor Temperatura.&lt;br /&gt;
&lt;br /&gt;
===Grabar Firmware===&lt;br /&gt;
&lt;br /&gt;
El microcontrolador contiene un bootloader que permite grabar el firmware sin necesidad de un programador por hardware.&lt;br /&gt;
Para grabar el firmware se utiliza el siguiente comando: ./fsusb --force_program usb4all2.hex. Donde usb4all2.hex es el binario generado como resultado de compilar el proyecto (con los usermodules nuevos agregados) y fsusb es un programa que implementa el protocolo de grabación de firmware de microchip.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Demos==&lt;br /&gt;
[https://www.youtube.com/watch?v=PrNPiMWmwY0 Título del enlace]&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5932</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5932"/>
				<updated>2014-09-13T23:09:07Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: /* Crear Driver */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Objetivos===&lt;br /&gt;
*Investigación de kits educativos actuales&lt;br /&gt;
*Implementación de sensores nuevos (y de utilidad) para el kit Butiá&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Cámara&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 ([http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf]); y el de temperatura y humedad DHT11 ([http://akizukidenshi.com/download/ds/aosong/DHT11.pdf]). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, a demás no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son muy caros y difíciles de conseguir en el medio local, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. No pudimos &amp;quot;traducir&amp;quot; la imagen a valores útiles para analizar la orientación.&lt;br /&gt;
Consideramos dos alternativas, la primera (con una brújula que mide el angulo con respecto al norte) esto no lo vimos posible ya que no encontramos forma de leer este dato con la cámara. &lt;br /&gt;
La segunda opción fue imprimir en pantalla donde se encuentra el norte, utilizando una brújula con el norte en color rojo, y de esta forma el follow me lo puede &amp;quot;ver&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
En conclusión, sería muy interesante la incorporación de este sensor a la plataforma, pero los altos precios de los sensores brújulas se oponen a la accesibilidad objetivo del proyecto. Una posible implementación a través del procesamiento de imágenes, no está al alcance de nuestros conocimientos. Es posible que teniendo en cuenta el lento pero incesante avance en el desempeño de las herramientas de procesamiento de imagen, en un futuro se alcance una solución por este camino.&lt;br /&gt;
&lt;br /&gt;
==Implementación==&lt;br /&gt;
&lt;br /&gt;
A continuación se detallan los pasos seguidos para incorporar dichos sensores al Butiá:&lt;br /&gt;
*Crear User Module&lt;br /&gt;
*Reconocimiento PnP&lt;br /&gt;
*Crear Driver&lt;br /&gt;
*Grabar Firmware&lt;br /&gt;
&lt;br /&gt;
===Crear User Module===&lt;br /&gt;
&lt;br /&gt;
Un usermodule debe cumplir con una API determinada, de esta manera es posible agregar las funcionalidades que el módulo expone. Las operaciones principales que se deben implementar son las encargadas de atender los eventos de:&lt;br /&gt;
*inicialización&lt;br /&gt;
*liberación de recursos&lt;br /&gt;
*configuración&lt;br /&gt;
&lt;br /&gt;
El siguiente es el codigo del UserModule del sensor Temperatura:&lt;br /&gt;
&lt;br /&gt;
Codigo User Module Temperatura[http://www.fing.edu.uy/inco/proyectos/butia/mediawiki/images/b/be/Temp_usermodule.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Reconocimiento PnP===&lt;br /&gt;
&lt;br /&gt;
Se toma un valor de resistencia no utilizado en la cartilla [https://docs.google.com/spreadsheet/ccc?key=0AvO96_3p52-AdFdtaE1YbzV1ZmhVRldjSVE0OUtEZGc#gid=0)] y se agregan sus respectivas constantes (por ejemplo en el caso de la temperatura R_TEMP_MIN, R_TEMP_MAX), con los valores dados por dicha tabla, también se debe aumentar la cantidad de dispositivos (MAX_DEVICES) del archivo pnp.h.&lt;br /&gt;
&lt;br /&gt;
Luego en el pnp.c en la función table_device_id_resistance se debe agregar el modulo nuevo con las constantes definidas anteriormente&lt;br /&gt;
&lt;br /&gt;
     rom const device_resistance table_device_id_resistance[MAX_DEVICES] = {&lt;br /&gt;
           ...&lt;br /&gt;
           { &amp;quot;temp&amp;quot;, R_TEMP_MIN, R_TEMP_MAX}&lt;br /&gt;
     };&lt;br /&gt;
&lt;br /&gt;
===Crear Driver===&lt;br /&gt;
&lt;br /&gt;
A continuación se encuentra el driver del sensor temperatura:&lt;br /&gt;
&lt;br /&gt;
import math&lt;br /&gt;
 &lt;br /&gt;
RD_VERSION = 0x00&lt;br /&gt;
GET_VALUE = 0x01&lt;br /&gt;
 &lt;br /&gt;
VCC = 65536&lt;br /&gt;
 &lt;br /&gt;
def getVersion(dev):&lt;br /&gt;
    dev.send([RD_VERSION])&lt;br /&gt;
    raw = dev.read(3)&lt;br /&gt;
    return raw[1] + raw[2] * 256&lt;br /&gt;
 &lt;br /&gt;
def getValue(dev):&lt;br /&gt;
    dev.send([GET_VALUE])&lt;br /&gt;
    raw = dev.read(3)&lt;br /&gt;
    volt = (raw[1] + raw[2] * 256) * 5.0 / VCC&lt;br /&gt;
    return math.floor(volt * 1000.0) / 10.0&lt;br /&gt;
&lt;br /&gt;
Donde el getValue hace la traducción de la salida del sensor a grados celsius tal como se especificó en la sección del sensor Temperatura.&lt;br /&gt;
&lt;br /&gt;
===Grabar Firmware===&lt;br /&gt;
&lt;br /&gt;
El microcontrolador contiene un bootloader que permite grabar el firmware sin necesidad de un programador por hardware.&lt;br /&gt;
Para grabar el firmware se utiliza el siguiente comando: ./fsusb --force_program usb4all2.hex. Donde usb4all2.hex es el binario generado como resultado de compilar el proyecto (con los usermodules nuevos agregados) y fsusb es un programa que implementa el protocolo de grabación de firmware de microchip.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Demos==&lt;br /&gt;
[https://www.youtube.com/watch?v=PrNPiMWmwY0 Título del enlace]&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5931</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5931"/>
				<updated>2014-09-13T23:07:07Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Objetivos===&lt;br /&gt;
*Investigación de kits educativos actuales&lt;br /&gt;
*Implementación de sensores nuevos (y de utilidad) para el kit Butiá&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Cámara&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 ([http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf]); y el de temperatura y humedad DHT11 ([http://akizukidenshi.com/download/ds/aosong/DHT11.pdf]). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, a demás no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son muy caros y difíciles de conseguir en el medio local, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. No pudimos &amp;quot;traducir&amp;quot; la imagen a valores útiles para analizar la orientación.&lt;br /&gt;
Consideramos dos alternativas, la primera (con una brújula que mide el angulo con respecto al norte) esto no lo vimos posible ya que no encontramos forma de leer este dato con la cámara. &lt;br /&gt;
La segunda opción fue imprimir en pantalla donde se encuentra el norte, utilizando una brújula con el norte en color rojo, y de esta forma el follow me lo puede &amp;quot;ver&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
En conclusión, sería muy interesante la incorporación de este sensor a la plataforma, pero los altos precios de los sensores brújulas se oponen a la accesibilidad objetivo del proyecto. Una posible implementación a través del procesamiento de imágenes, no está al alcance de nuestros conocimientos. Es posible que teniendo en cuenta el lento pero incesante avance en el desempeño de las herramientas de procesamiento de imagen, en un futuro se alcance una solución por este camino.&lt;br /&gt;
&lt;br /&gt;
==Implementación==&lt;br /&gt;
&lt;br /&gt;
A continuación se detallan los pasos seguidos para incorporar dichos sensores al Butiá:&lt;br /&gt;
*Crear User Module&lt;br /&gt;
*Reconocimiento PnP&lt;br /&gt;
*Crear Driver&lt;br /&gt;
*Grabar Firmware&lt;br /&gt;
&lt;br /&gt;
===Crear User Module===&lt;br /&gt;
&lt;br /&gt;
Un usermodule debe cumplir con una API determinada, de esta manera es posible agregar las funcionalidades que el módulo expone. Las operaciones principales que se deben implementar son las encargadas de atender los eventos de:&lt;br /&gt;
*inicialización&lt;br /&gt;
*liberación de recursos&lt;br /&gt;
*configuración&lt;br /&gt;
&lt;br /&gt;
El siguiente es el codigo del UserModule del sensor Temperatura:&lt;br /&gt;
&lt;br /&gt;
Codigo User Module Temperatura[http://www.fing.edu.uy/inco/proyectos/butia/mediawiki/images/b/be/Temp_usermodule.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Reconocimiento PnP===&lt;br /&gt;
&lt;br /&gt;
Se toma un valor de resistencia no utilizado en la cartilla [https://docs.google.com/spreadsheet/ccc?key=0AvO96_3p52-AdFdtaE1YbzV1ZmhVRldjSVE0OUtEZGc#gid=0)] y se agregan sus respectivas constantes (por ejemplo en el caso de la temperatura R_TEMP_MIN, R_TEMP_MAX), con los valores dados por dicha tabla, también se debe aumentar la cantidad de dispositivos (MAX_DEVICES) del archivo pnp.h.&lt;br /&gt;
&lt;br /&gt;
Luego en el pnp.c en la función table_device_id_resistance se debe agregar el modulo nuevo con las constantes definidas anteriormente&lt;br /&gt;
&lt;br /&gt;
     rom const device_resistance table_device_id_resistance[MAX_DEVICES] = {&lt;br /&gt;
           ...&lt;br /&gt;
           { &amp;quot;temp&amp;quot;, R_TEMP_MIN, R_TEMP_MAX}&lt;br /&gt;
     };&lt;br /&gt;
&lt;br /&gt;
===Crear Driver===&lt;br /&gt;
&lt;br /&gt;
A continuación se encuentra el driver del sensor temperatura:&lt;br /&gt;
&lt;br /&gt;
import math&lt;br /&gt;
 &lt;br /&gt;
RD_VERSION = 0x00&lt;br /&gt;
GET_VALUE = 0x01&lt;br /&gt;
 &lt;br /&gt;
VCC = 65536&lt;br /&gt;
 &lt;br /&gt;
def getVersion(dev):&lt;br /&gt;
    dev.send([RD_VERSION])&lt;br /&gt;
    raw = dev.read(3)&lt;br /&gt;
    return raw[1] + raw[2] * 256&lt;br /&gt;
 &lt;br /&gt;
def getValue(dev):&lt;br /&gt;
    dev.send([GET_VALUE])&lt;br /&gt;
    raw = dev.read(3)&lt;br /&gt;
    print &amp;quot;Raw[0]&amp;quot;+str(raw[0])&lt;br /&gt;
    print &amp;quot;Raw[1]&amp;quot;+str(raw[1])&lt;br /&gt;
    print &amp;quot;Raw[2]&amp;quot;+str(raw[2])&lt;br /&gt;
    volt = (raw[1] + raw[2] * 256) * 5.0 / VCC&lt;br /&gt;
    print &amp;quot;VOLT:&amp;quot;+str(volt)&lt;br /&gt;
    return math.floor(volt * 1000.0) / 10.0&lt;br /&gt;
&lt;br /&gt;
Donde el getValue hace la traducción de la salida del sensor a grados celsius tal como se especificó en la sección del sensor Temperatura.&lt;br /&gt;
&lt;br /&gt;
===Grabar Firmware===&lt;br /&gt;
&lt;br /&gt;
El microcontrolador contiene un bootloader que permite grabar el firmware sin necesidad de un programador por hardware.&lt;br /&gt;
Para grabar el firmware se utiliza el siguiente comando: ./fsusb --force_program usb4all2.hex. Donde usb4all2.hex es el binario generado como resultado de compilar el proyecto (con los usermodules nuevos agregados) y fsusb es un programa que implementa el protocolo de grabación de firmware de microchip.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Demos==&lt;br /&gt;
[https://www.youtube.com/watch?v=PrNPiMWmwY0 Título del enlace]&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5930</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5930"/>
				<updated>2014-09-13T22:45:19Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: /* Reconocimiento PnP */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Objetivos===&lt;br /&gt;
*Investigación de kits educativos actuales&lt;br /&gt;
*Implementación de sensores nuevos (y de utilidad) para el kit Butiá&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Cámara&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 ([http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf]); y el de temperatura y humedad DHT11 ([http://akizukidenshi.com/download/ds/aosong/DHT11.pdf]). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, a demás no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son muy caros y difíciles de conseguir en el medio local, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. No pudimos &amp;quot;traducir&amp;quot; la imagen a valores útiles para analizar la orientación.&lt;br /&gt;
Consideramos dos alternativas, la primera (con una brújula que mide el angulo con respecto al norte) esto no lo vimos posible ya que no encontramos forma de leer este dato con la cámara. &lt;br /&gt;
La segunda opción fue imprimir en pantalla donde se encuentra el norte, utilizando una brújula con el norte en color rojo, y de esta forma el follow me lo puede &amp;quot;ver&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
En conclusión, sería muy interesante la incorporación de este sensor a la plataforma, pero los altos precios de los sensores brújulas se oponen a la accesibilidad objetivo del proyecto. Una posible implementación a través del procesamiento de imágenes, no está al alcance de nuestros conocimientos. Es posible que teniendo en cuenta el lento pero incesante avance en el desempeño de las herramientas de procesamiento de imagen, en un futuro se alcance una solución por este camino.&lt;br /&gt;
&lt;br /&gt;
==Implementación==&lt;br /&gt;
&lt;br /&gt;
A continuación se detallan los pasos seguidos para incorporar dichos sensores al Butiá:&lt;br /&gt;
*Crear User Module&lt;br /&gt;
*Reconocimiento PnP&lt;br /&gt;
*Crear Driver&lt;br /&gt;
*Grabar Firmware&lt;br /&gt;
&lt;br /&gt;
===Crear User Module===&lt;br /&gt;
&lt;br /&gt;
Un usermodule debe cumplir con una API determinada, de esta manera es posible agregar las funcionalidades que el módulo expone. Las operaciones principales que se deben implementar son las encargadas de atender los eventos de:&lt;br /&gt;
*inicialización&lt;br /&gt;
*liberación de recursos&lt;br /&gt;
*configuración&lt;br /&gt;
&lt;br /&gt;
El siguiente es el codigo del UserModule del sensor Temperatura:&lt;br /&gt;
&lt;br /&gt;
Codigo User Module Temperatura[http://www.fing.edu.uy/inco/proyectos/butia/mediawiki/images/b/be/Temp_usermodule.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Reconocimiento PnP===&lt;br /&gt;
&lt;br /&gt;
Se toma un valor de resistencia no utilizado en la cartilla [https://docs.google.com/spreadsheet/ccc?key=0AvO96_3p52-AdFdtaE1YbzV1ZmhVRldjSVE0OUtEZGc#gid=0)] y se agregan sus respectivas constantes (por ejemplo en el caso de la temperatura R_TEMP_MIN, R_TEMP_MAX), con los valores dados por dicha tabla, también se debe aumentar la cantidad de dispositivos (MAX_DEVICES) del archivo pnp.h.&lt;br /&gt;
&lt;br /&gt;
Luego en el pnp.c en la función table_device_id_resistance se debe agregar el modulo nuevo con las constantes definidas anteriormente&lt;br /&gt;
&lt;br /&gt;
     rom const device_resistance table_device_id_resistance[MAX_DEVICES] = {&lt;br /&gt;
           ...&lt;br /&gt;
           { &amp;quot;temp&amp;quot;, R_TEMP_MIN, R_TEMP_MAX}&lt;br /&gt;
     };&lt;br /&gt;
&lt;br /&gt;
===Crear Driver===&lt;br /&gt;
&lt;br /&gt;
===Grabar Firmware===&lt;br /&gt;
&lt;br /&gt;
El microcontrolador contiene un bootloader que permite grabar el firmware sin necesidad de un programador por hardware.&lt;br /&gt;
Para grabar el firmware se utiliza el siguiente comando: ./fsusb --force_program usb4all2.hex. Donde usb4all2.hex es el binario generado como resultado de compilar el proyecto (con los usermodules nuevos agregados) y fsusb es un programa que implementa el protocolo de grabación de firmware de microchip.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Demos==&lt;br /&gt;
[https://www.youtube.com/watch?v=PrNPiMWmwY0 Título del enlace]&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5929</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5929"/>
				<updated>2014-09-13T22:44:04Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Objetivos===&lt;br /&gt;
*Investigación de kits educativos actuales&lt;br /&gt;
*Implementación de sensores nuevos (y de utilidad) para el kit Butiá&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Cámara&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 ([http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf]); y el de temperatura y humedad DHT11 ([http://akizukidenshi.com/download/ds/aosong/DHT11.pdf]). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, a demás no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son muy caros y difíciles de conseguir en el medio local, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. No pudimos &amp;quot;traducir&amp;quot; la imagen a valores útiles para analizar la orientación.&lt;br /&gt;
Consideramos dos alternativas, la primera (con una brújula que mide el angulo con respecto al norte) esto no lo vimos posible ya que no encontramos forma de leer este dato con la cámara. &lt;br /&gt;
La segunda opción fue imprimir en pantalla donde se encuentra el norte, utilizando una brújula con el norte en color rojo, y de esta forma el follow me lo puede &amp;quot;ver&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
En conclusión, sería muy interesante la incorporación de este sensor a la plataforma, pero los altos precios de los sensores brújulas se oponen a la accesibilidad objetivo del proyecto. Una posible implementación a través del procesamiento de imágenes, no está al alcance de nuestros conocimientos. Es posible que teniendo en cuenta el lento pero incesante avance en el desempeño de las herramientas de procesamiento de imagen, en un futuro se alcance una solución por este camino.&lt;br /&gt;
&lt;br /&gt;
==Implementación==&lt;br /&gt;
&lt;br /&gt;
A continuación se detallan los pasos seguidos para incorporar dichos sensores al Butiá:&lt;br /&gt;
*Crear User Module&lt;br /&gt;
*Reconocimiento PnP&lt;br /&gt;
*Crear Driver&lt;br /&gt;
*Grabar Firmware&lt;br /&gt;
&lt;br /&gt;
===Crear User Module===&lt;br /&gt;
&lt;br /&gt;
Un usermodule debe cumplir con una API determinada, de esta manera es posible agregar las funcionalidades que el módulo expone. Las operaciones principales que se deben implementar son las encargadas de atender los eventos de:&lt;br /&gt;
*inicialización&lt;br /&gt;
*liberación de recursos&lt;br /&gt;
*configuración&lt;br /&gt;
&lt;br /&gt;
El siguiente es el codigo del UserModule del sensor Temperatura:&lt;br /&gt;
&lt;br /&gt;
Codigo User Module Temperatura[http://www.fing.edu.uy/inco/proyectos/butia/mediawiki/images/b/be/Temp_usermodule.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Reconocimiento PnP===&lt;br /&gt;
&lt;br /&gt;
Se toma un valor de resistencia no utilizado en la cartilla ([https://docs.google.com/spreadsheet/ccc?key=0AvO96_3p52-AdFdtaE1YbzV1ZmhVRldjSVE0OUtEZGc#gid=0)] y se agregan sus respectivas constantes (por ejemplo en el caso de la temperatura R_TEMP_MIN,R_TEMP_MAX), con los valores dados por dicha tabla, también se debe aumentar la cantidad de dispositivos (MAX_DEVICES) del archivo pnp.h.&lt;br /&gt;
&lt;br /&gt;
Luego en el pnp.c en la función table_device_id_resistance se debe agregar el modulo nuevo con las constantes definidas anteriormente&lt;br /&gt;
&lt;br /&gt;
     rom const device_resistance table_device_id_resistance[MAX_DEVICES] = {&lt;br /&gt;
           ...&lt;br /&gt;
           { &amp;quot;temp&amp;quot;, R_TEMP_MIN, R_TEMP_MAX}&lt;br /&gt;
     };&lt;br /&gt;
&lt;br /&gt;
===Crear Driver===&lt;br /&gt;
&lt;br /&gt;
===Grabar Firmware===&lt;br /&gt;
&lt;br /&gt;
El microcontrolador contiene un bootloader que permite grabar el firmware sin necesidad de un programador por hardware.&lt;br /&gt;
Para grabar el firmware se utiliza el siguiente comando: ./fsusb --force_program usb4all2.hex. Donde usb4all2.hex es el binario generado como resultado de compilar el proyecto (con los usermodules nuevos agregados) y fsusb es un programa que implementa el protocolo de grabación de firmware de microchip.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Demos==&lt;br /&gt;
[https://www.youtube.com/watch?v=PrNPiMWmwY0 Título del enlace]&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5928</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5928"/>
				<updated>2014-09-13T22:38:18Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Objetivos===&lt;br /&gt;
*Investigación de kits educativos actuales&lt;br /&gt;
*Implementación de sensores nuevos (y de utilidad) para el kit Butiá&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Cámara&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 ([http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf]); y el de temperatura y humedad DHT11 ([http://akizukidenshi.com/download/ds/aosong/DHT11.pdf]). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, a demás no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son muy caros y difíciles de conseguir en el medio local, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. No pudimos &amp;quot;traducir&amp;quot; la imagen a valores útiles para analizar la orientación.&lt;br /&gt;
Consideramos dos alternativas, la primera (con una brújula que mide el angulo con respecto al norte) esto no lo vimos posible ya que no encontramos forma de leer este dato con la cámara. &lt;br /&gt;
La segunda opción fue imprimir en pantalla donde se encuentra el norte, utilizando una brújula con el norte en color rojo, y de esta forma el follow me lo puede &amp;quot;ver&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
En conclusión, sería muy interesante la incorporación de este sensor a la plataforma, pero los altos precios de los sensores brújulas se oponen a la accesibilidad objetivo del proyecto. Una posible implementación a través del procesamiento de imágenes, no está al alcance de nuestros conocimientos. Es posible que teniendo en cuenta el lento pero incesante avance en el desempeño de las herramientas de procesamiento de imagen, en un futuro se alcance una solución por este camino.&lt;br /&gt;
&lt;br /&gt;
==Implementación==&lt;br /&gt;
&lt;br /&gt;
A continuación se detallan los pasos seguidos para incorporar dichos sensores al Butiá:&lt;br /&gt;
*Crear User Module&lt;br /&gt;
*Reconocimiento PnP&lt;br /&gt;
*Crear Driver&lt;br /&gt;
*Grabar Firmware&lt;br /&gt;
&lt;br /&gt;
===Crear User Module===&lt;br /&gt;
&lt;br /&gt;
Un usermodule debe cumplir con una API determinada, de esta manera es posible agregar las funcionalidades que el módulo expone. Las operaciones principales que se deben implementar son las encargadas de atender los eventos de:&lt;br /&gt;
*inicialización&lt;br /&gt;
*liberación de recursos&lt;br /&gt;
*configuración&lt;br /&gt;
&lt;br /&gt;
El siguiente es el codigo del UserModule del sensor Temperatura:&lt;br /&gt;
&lt;br /&gt;
Codigo User Module Temperatura[http://www.fing.edu.uy/inco/proyectos/butia/mediawiki/images/b/be/Temp_usermodule.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Reconocimiento PnP===&lt;br /&gt;
&lt;br /&gt;
Se toma un valor de resistencia no utilizado en la cartilla ([https://docs.google.com/spreadsheet/ccc?key=0AvO96_3p52-AdFdtaE1YbzV1ZmhVRldjSVE0OUtEZGc#gid=0)] y se agregan sus respectivas constantes (por ejemplo en el caso de la temperatura R_TEMP_MIN,R_TEMP_MAX), con los valores dados por dicha tabla, también se debe aumentar la cantidad de dispositivos (MAX_DEVICES) del archivo pnp.h.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Crear Driver===&lt;br /&gt;
===Grabar Firmware===&lt;br /&gt;
==Demos==&lt;br /&gt;
[https://www.youtube.com/watch?v=PrNPiMWmwY0 Título del enlace]&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5927</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5927"/>
				<updated>2014-09-13T22:38:11Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: /* Demos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Objetivos===&lt;br /&gt;
*Investigación de kits educativos actuales&lt;br /&gt;
*Implementación de sensores nuevos (y de utilidad) para el kit Butiá&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Cámara&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 (http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf); y el de temperatura y humedad DHT11 (http://akizukidenshi.com/download/ds/aosong/DHT11.pdf). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, a demás no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son muy caros y difíciles de conseguir en el medio local, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. No pudimos &amp;quot;traducir&amp;quot; la imagen a valores útiles para analizar la orientación.&lt;br /&gt;
Consideramos dos alternativas, la primera (con una brújula que mide el angulo con respecto al norte) esto no lo vimos posible ya que no encontramos forma de leer este dato con la cámara. &lt;br /&gt;
La segunda opción fue imprimir en pantalla donde se encuentra el norte, utilizando una brújula con el norte en color rojo, y de esta forma el follow me lo puede &amp;quot;ver&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
En conclusión, sería muy interesante la incorporación de este sensor a la plataforma, pero los altos precios de los sensores brújulas se oponen a la accesibilidad objetivo del proyecto. Una posible implementación a través del procesamiento de imágenes, no está al alcance de nuestros conocimientos. Es posible que teniendo en cuenta el lento pero incesante avance en el desempeño de las herramientas de procesamiento de imagen, en un futuro se alcance una solución por este camino.&lt;br /&gt;
&lt;br /&gt;
==Implementación==&lt;br /&gt;
&lt;br /&gt;
A continuación se detallan los pasos seguidos para incorporar dichos sensores al Butiá:&lt;br /&gt;
*Crear User Module&lt;br /&gt;
*Reconocimiento PnP&lt;br /&gt;
*Crear Driver&lt;br /&gt;
*Grabar Firmware&lt;br /&gt;
&lt;br /&gt;
===Crear User Module===&lt;br /&gt;
&lt;br /&gt;
Un usermodule debe cumplir con una API determinada, de esta manera es posible agregar las funcionalidades que el módulo expone. Las operaciones principales que se deben implementar son las encargadas de atender los eventos de:&lt;br /&gt;
*inicialización&lt;br /&gt;
*liberación de recursos&lt;br /&gt;
*configuración&lt;br /&gt;
&lt;br /&gt;
El siguiente es el codigo del UserModule del sensor Temperatura:&lt;br /&gt;
&lt;br /&gt;
Codigo User Module Temperatura[http://www.fing.edu.uy/inco/proyectos/butia/mediawiki/images/b/be/Temp_usermodule.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Reconocimiento PnP===&lt;br /&gt;
&lt;br /&gt;
Se toma un valor de resistencia no utilizado en la cartilla (https://docs.google.com/spreadsheet/ccc?key=0AvO96_3p52-AdFdtaE1YbzV1ZmhVRldjSVE0OUtEZGc#gid=0) y se agregan sus respectivas constantes (por ejemplo en el caso de la temperatura R_TEMP_MIN,R_TEMP_MAX), con los valores dados por dicha tabla, también se debe aumentar la cantidad de dispositivos (MAX_DEVICES) del archivo pnp.h.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Crear Driver===&lt;br /&gt;
===Grabar Firmware===&lt;br /&gt;
==Demos==&lt;br /&gt;
&amp;lt;youtube&amp;gt;PrNPiMWmwY0&amp;lt;/youtube&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;youtube&amp;gt;mSEpZyIHv64&amp;lt;/youtube&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5926</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5926"/>
				<updated>2014-09-13T22:33:01Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: /* Demos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Objetivos===&lt;br /&gt;
*Investigación de kits educativos actuales&lt;br /&gt;
*Implementación de sensores nuevos (y de utilidad) para el kit Butiá&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Cámara&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 (http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf); y el de temperatura y humedad DHT11 (http://akizukidenshi.com/download/ds/aosong/DHT11.pdf). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, a demás no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son muy caros y difíciles de conseguir en el medio local, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. No pudimos &amp;quot;traducir&amp;quot; la imagen a valores útiles para analizar la orientación.&lt;br /&gt;
Consideramos dos alternativas, la primera (con una brújula que mide el angulo con respecto al norte) esto no lo vimos posible ya que no encontramos forma de leer este dato con la cámara. &lt;br /&gt;
La segunda opción fue imprimir en pantalla donde se encuentra el norte, utilizando una brújula con el norte en color rojo, y de esta forma el follow me lo puede &amp;quot;ver&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
En conclusión, sería muy interesante la incorporación de este sensor a la plataforma, pero los altos precios de los sensores brújulas se oponen a la accesibilidad objetivo del proyecto. Una posible implementación a través del procesamiento de imágenes, no está al alcance de nuestros conocimientos. Es posible que teniendo en cuenta el lento pero incesante avance en el desempeño de las herramientas de procesamiento de imagen, en un futuro se alcance una solución por este camino.&lt;br /&gt;
&lt;br /&gt;
==Implementación==&lt;br /&gt;
&lt;br /&gt;
A continuación se detallan los pasos seguidos para incorporar dichos sensores al Butiá:&lt;br /&gt;
*Crear User Module&lt;br /&gt;
*Reconocimiento PnP&lt;br /&gt;
*Crear Driver&lt;br /&gt;
*Grabar Firmware&lt;br /&gt;
&lt;br /&gt;
===Crear User Module===&lt;br /&gt;
&lt;br /&gt;
Un usermodule debe cumplir con una API determinada, de esta manera es posible agregar las funcionalidades que el módulo expone. Las operaciones principales que se deben implementar son las encargadas de atender los eventos de:&lt;br /&gt;
*inicialización&lt;br /&gt;
*liberación de recursos&lt;br /&gt;
*configuración&lt;br /&gt;
&lt;br /&gt;
El siguiente es el codigo del UserModule del sensor Temperatura:&lt;br /&gt;
&lt;br /&gt;
Codigo User Module Temperatura[http://www.fing.edu.uy/inco/proyectos/butia/mediawiki/images/b/be/Temp_usermodule.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Reconocimiento PnP===&lt;br /&gt;
&lt;br /&gt;
Se toma un valor de resistencia no utilizado en la cartilla (https://docs.google.com/spreadsheet/ccc?key=0AvO96_3p52-AdFdtaE1YbzV1ZmhVRldjSVE0OUtEZGc#gid=0) y se agregan sus respectivas constantes (por ejemplo en el caso de la temperatura R_TEMP_MIN,R_TEMP_MAX), con los valores dados por dicha tabla, también se debe aumentar la cantidad de dispositivos (MAX_DEVICES) del archivo pnp.h.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Crear Driver===&lt;br /&gt;
===Grabar Firmware===&lt;br /&gt;
==Demos==&lt;br /&gt;
&amp;lt;iframe width=&amp;quot;560&amp;quot; height=&amp;quot;315&amp;quot; src=&amp;quot;//www.youtube.com/embed/PrNPiMWmwY0&amp;quot; frameborder=&amp;quot;0&amp;quot; allowfullscreen&amp;gt;&amp;lt;/iframe&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5925</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5925"/>
				<updated>2014-09-13T22:32:49Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: /* Demos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Objetivos===&lt;br /&gt;
*Investigación de kits educativos actuales&lt;br /&gt;
*Implementación de sensores nuevos (y de utilidad) para el kit Butiá&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Cámara&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 (http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf); y el de temperatura y humedad DHT11 (http://akizukidenshi.com/download/ds/aosong/DHT11.pdf). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, a demás no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son muy caros y difíciles de conseguir en el medio local, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. No pudimos &amp;quot;traducir&amp;quot; la imagen a valores útiles para analizar la orientación.&lt;br /&gt;
Consideramos dos alternativas, la primera (con una brújula que mide el angulo con respecto al norte) esto no lo vimos posible ya que no encontramos forma de leer este dato con la cámara. &lt;br /&gt;
La segunda opción fue imprimir en pantalla donde se encuentra el norte, utilizando una brújula con el norte en color rojo, y de esta forma el follow me lo puede &amp;quot;ver&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
En conclusión, sería muy interesante la incorporación de este sensor a la plataforma, pero los altos precios de los sensores brújulas se oponen a la accesibilidad objetivo del proyecto. Una posible implementación a través del procesamiento de imágenes, no está al alcance de nuestros conocimientos. Es posible que teniendo en cuenta el lento pero incesante avance en el desempeño de las herramientas de procesamiento de imagen, en un futuro se alcance una solución por este camino.&lt;br /&gt;
&lt;br /&gt;
==Implementación==&lt;br /&gt;
&lt;br /&gt;
A continuación se detallan los pasos seguidos para incorporar dichos sensores al Butiá:&lt;br /&gt;
*Crear User Module&lt;br /&gt;
*Reconocimiento PnP&lt;br /&gt;
*Crear Driver&lt;br /&gt;
*Grabar Firmware&lt;br /&gt;
&lt;br /&gt;
===Crear User Module===&lt;br /&gt;
&lt;br /&gt;
Un usermodule debe cumplir con una API determinada, de esta manera es posible agregar las funcionalidades que el módulo expone. Las operaciones principales que se deben implementar son las encargadas de atender los eventos de:&lt;br /&gt;
*inicialización&lt;br /&gt;
*liberación de recursos&lt;br /&gt;
*configuración&lt;br /&gt;
&lt;br /&gt;
El siguiente es el codigo del UserModule del sensor Temperatura:&lt;br /&gt;
&lt;br /&gt;
Codigo User Module Temperatura[http://www.fing.edu.uy/inco/proyectos/butia/mediawiki/images/b/be/Temp_usermodule.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Reconocimiento PnP===&lt;br /&gt;
&lt;br /&gt;
Se toma un valor de resistencia no utilizado en la cartilla (https://docs.google.com/spreadsheet/ccc?key=0AvO96_3p52-AdFdtaE1YbzV1ZmhVRldjSVE0OUtEZGc#gid=0) y se agregan sus respectivas constantes (por ejemplo en el caso de la temperatura R_TEMP_MIN,R_TEMP_MAX), con los valores dados por dicha tabla, también se debe aumentar la cantidad de dispositivos (MAX_DEVICES) del archivo pnp.h.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Crear Driver===&lt;br /&gt;
===Grabar Firmware===&lt;br /&gt;
==Demos==&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&amp;lt;iframe width=&amp;quot;560&amp;quot; height=&amp;quot;315&amp;quot; src=&amp;quot;//www.youtube.com/embed/PrNPiMWmwY0&amp;quot; frameborder=&amp;quot;0&amp;quot; allowfullscreen&amp;gt;&amp;lt;/iframe&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5924</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5924"/>
				<updated>2014-09-13T22:31:53Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: /* Demos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Objetivos===&lt;br /&gt;
*Investigación de kits educativos actuales&lt;br /&gt;
*Implementación de sensores nuevos (y de utilidad) para el kit Butiá&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Cámara&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 (http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf); y el de temperatura y humedad DHT11 (http://akizukidenshi.com/download/ds/aosong/DHT11.pdf). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, a demás no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son muy caros y difíciles de conseguir en el medio local, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. No pudimos &amp;quot;traducir&amp;quot; la imagen a valores útiles para analizar la orientación.&lt;br /&gt;
Consideramos dos alternativas, la primera (con una brújula que mide el angulo con respecto al norte) esto no lo vimos posible ya que no encontramos forma de leer este dato con la cámara. &lt;br /&gt;
La segunda opción fue imprimir en pantalla donde se encuentra el norte, utilizando una brújula con el norte en color rojo, y de esta forma el follow me lo puede &amp;quot;ver&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
En conclusión, sería muy interesante la incorporación de este sensor a la plataforma, pero los altos precios de los sensores brújulas se oponen a la accesibilidad objetivo del proyecto. Una posible implementación a través del procesamiento de imágenes, no está al alcance de nuestros conocimientos. Es posible que teniendo en cuenta el lento pero incesante avance en el desempeño de las herramientas de procesamiento de imagen, en un futuro se alcance una solución por este camino.&lt;br /&gt;
&lt;br /&gt;
==Implementación==&lt;br /&gt;
&lt;br /&gt;
A continuación se detallan los pasos seguidos para incorporar dichos sensores al Butiá:&lt;br /&gt;
*Crear User Module&lt;br /&gt;
*Reconocimiento PnP&lt;br /&gt;
*Crear Driver&lt;br /&gt;
*Grabar Firmware&lt;br /&gt;
&lt;br /&gt;
===Crear User Module===&lt;br /&gt;
&lt;br /&gt;
Un usermodule debe cumplir con una API determinada, de esta manera es posible agregar las funcionalidades que el módulo expone. Las operaciones principales que se deben implementar son las encargadas de atender los eventos de:&lt;br /&gt;
*inicialización&lt;br /&gt;
*liberación de recursos&lt;br /&gt;
*configuración&lt;br /&gt;
&lt;br /&gt;
El siguiente es el codigo del UserModule del sensor Temperatura:&lt;br /&gt;
&lt;br /&gt;
Codigo User Module Temperatura[http://www.fing.edu.uy/inco/proyectos/butia/mediawiki/images/b/be/Temp_usermodule.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Reconocimiento PnP===&lt;br /&gt;
&lt;br /&gt;
Se toma un valor de resistencia no utilizado en la cartilla (https://docs.google.com/spreadsheet/ccc?key=0AvO96_3p52-AdFdtaE1YbzV1ZmhVRldjSVE0OUtEZGc#gid=0) y se agregan sus respectivas constantes (por ejemplo en el caso de la temperatura R_TEMP_MIN,R_TEMP_MAX), con los valores dados por dicha tabla, también se debe aumentar la cantidad de dispositivos (MAX_DEVICES) del archivo pnp.h.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Crear Driver===&lt;br /&gt;
===Grabar Firmware===&lt;br /&gt;
==Demos==&lt;br /&gt;
[https://www.youtube.com/watch?v=PrNPiMWmwY0 Título del enlace]&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5923</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5923"/>
				<updated>2014-09-13T22:31:37Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Objetivos===&lt;br /&gt;
*Investigación de kits educativos actuales&lt;br /&gt;
*Implementación de sensores nuevos (y de utilidad) para el kit Butiá&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Cámara&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 (http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf); y el de temperatura y humedad DHT11 (http://akizukidenshi.com/download/ds/aosong/DHT11.pdf). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, a demás no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son muy caros y difíciles de conseguir en el medio local, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. No pudimos &amp;quot;traducir&amp;quot; la imagen a valores útiles para analizar la orientación.&lt;br /&gt;
Consideramos dos alternativas, la primera (con una brújula que mide el angulo con respecto al norte) esto no lo vimos posible ya que no encontramos forma de leer este dato con la cámara. &lt;br /&gt;
La segunda opción fue imprimir en pantalla donde se encuentra el norte, utilizando una brújula con el norte en color rojo, y de esta forma el follow me lo puede &amp;quot;ver&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
En conclusión, sería muy interesante la incorporación de este sensor a la plataforma, pero los altos precios de los sensores brújulas se oponen a la accesibilidad objetivo del proyecto. Una posible implementación a través del procesamiento de imágenes, no está al alcance de nuestros conocimientos. Es posible que teniendo en cuenta el lento pero incesante avance en el desempeño de las herramientas de procesamiento de imagen, en un futuro se alcance una solución por este camino.&lt;br /&gt;
&lt;br /&gt;
==Implementación==&lt;br /&gt;
&lt;br /&gt;
A continuación se detallan los pasos seguidos para incorporar dichos sensores al Butiá:&lt;br /&gt;
*Crear User Module&lt;br /&gt;
*Reconocimiento PnP&lt;br /&gt;
*Crear Driver&lt;br /&gt;
*Grabar Firmware&lt;br /&gt;
&lt;br /&gt;
===Crear User Module===&lt;br /&gt;
&lt;br /&gt;
Un usermodule debe cumplir con una API determinada, de esta manera es posible agregar las funcionalidades que el módulo expone. Las operaciones principales que se deben implementar son las encargadas de atender los eventos de:&lt;br /&gt;
*inicialización&lt;br /&gt;
*liberación de recursos&lt;br /&gt;
*configuración&lt;br /&gt;
&lt;br /&gt;
El siguiente es el codigo del UserModule del sensor Temperatura:&lt;br /&gt;
&lt;br /&gt;
Codigo User Module Temperatura[http://www.fing.edu.uy/inco/proyectos/butia/mediawiki/images/b/be/Temp_usermodule.pdf]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Reconocimiento PnP===&lt;br /&gt;
&lt;br /&gt;
Se toma un valor de resistencia no utilizado en la cartilla (https://docs.google.com/spreadsheet/ccc?key=0AvO96_3p52-AdFdtaE1YbzV1ZmhVRldjSVE0OUtEZGc#gid=0) y se agregan sus respectivas constantes (por ejemplo en el caso de la temperatura R_TEMP_MIN,R_TEMP_MAX), con los valores dados por dicha tabla, también se debe aumentar la cantidad de dispositivos (MAX_DEVICES) del archivo pnp.h.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Crear Driver===&lt;br /&gt;
===Grabar Firmware===&lt;br /&gt;
==Demos==&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5922</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5922"/>
				<updated>2014-09-13T22:30:31Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Objetivos===&lt;br /&gt;
*Investigación de kits educativos actuales&lt;br /&gt;
*Implementación de sensores nuevos (y de utilidad) para el kit Butiá&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Cámara&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 (http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf); y el de temperatura y humedad DHT11 (http://akizukidenshi.com/download/ds/aosong/DHT11.pdf). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, a demás no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son muy caros y difíciles de conseguir en el medio local, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. No pudimos &amp;quot;traducir&amp;quot; la imagen a valores útiles para analizar la orientación.&lt;br /&gt;
Consideramos dos alternativas, la primera (con una brújula que mide el angulo con respecto al norte) esto no lo vimos posible ya que no encontramos forma de leer este dato con la cámara. &lt;br /&gt;
La segunda opción fue imprimir en pantalla donde se encuentra el norte, utilizando una brújula con el norte en color rojo, y de esta forma el follow me lo puede &amp;quot;ver&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
En conclusión, sería muy interesante la incorporación de este sensor a la plataforma, pero los altos precios de los sensores brújulas se oponen a la accesibilidad objetivo del proyecto. Una posible implementación a través del procesamiento de imágenes, no está al alcance de nuestros conocimientos. Es posible que teniendo en cuenta el lento pero incesante avance en el desempeño de las herramientas de procesamiento de imagen, en un futuro se alcance una solución por este camino.&lt;br /&gt;
&lt;br /&gt;
==Implementación==&lt;br /&gt;
&lt;br /&gt;
A continuación se detallan los pasos seguidos para incorporar dichos sensores al Butiá:&lt;br /&gt;
*Crear User Module&lt;br /&gt;
*Reconocimiento PnP&lt;br /&gt;
*Crear Driver&lt;br /&gt;
*Grabar Firmware&lt;br /&gt;
&lt;br /&gt;
===Crear User Module===&lt;br /&gt;
&lt;br /&gt;
Un usermodule debe cumplir con una API determinada, de esta manera es posible agregar las funcionalidades que el módulo expone. Las operaciones principales que se deben implementar son las encargadas de atender los eventos de:&lt;br /&gt;
*inicialización&lt;br /&gt;
*liberación de recursos&lt;br /&gt;
*configuración&lt;br /&gt;
&lt;br /&gt;
El siguiente es el codigo del UserModule del sensor Temperatura:&lt;br /&gt;
&lt;br /&gt;
[[http://www.fing.edu.uy/inco/proyectos/butia/mediawiki/images/b/be/Temp_usermodule.pdf]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Reconocimiento PnP===&lt;br /&gt;
&lt;br /&gt;
Se toma un valor de resistencia no utilizado en la cartilla (https://docs.google.com/spreadsheet/ccc?key=0AvO96_3p52-AdFdtaE1YbzV1ZmhVRldjSVE0OUtEZGc#gid=0) y se agregan sus respectivas constantes (por ejemplo en el caso de la temperatura R_TEMP_MIN,R_TEMP_MAX), con los valores dados por dicha tabla, también se debe aumentar la cantidad de dispositivos (MAX_DEVICES) del archivo pnp.h.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Crear Driver===&lt;br /&gt;
===Grabar Firmware===&lt;br /&gt;
==Demos==&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5921</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5921"/>
				<updated>2014-09-13T22:28:53Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Objetivos===&lt;br /&gt;
*Investigación de kits educativos actuales&lt;br /&gt;
*Implementación de sensores nuevos (y de utilidad) para el kit Butiá&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Cámara&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 (http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf); y el de temperatura y humedad DHT11 (http://akizukidenshi.com/download/ds/aosong/DHT11.pdf). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, a demás no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son muy caros y difíciles de conseguir en el medio local, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. No pudimos &amp;quot;traducir&amp;quot; la imagen a valores útiles para analizar la orientación.&lt;br /&gt;
Consideramos dos alternativas, la primera (con una brújula que mide el angulo con respecto al norte) esto no lo vimos posible ya que no encontramos forma de leer este dato con la cámara. &lt;br /&gt;
La segunda opción fue imprimir en pantalla donde se encuentra el norte, utilizando una brújula con el norte en color rojo, y de esta forma el follow me lo puede &amp;quot;ver&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
En conclusión, sería muy interesante la incorporación de este sensor a la plataforma, pero los altos precios de los sensores brújulas se oponen a la accesibilidad objetivo del proyecto. Una posible implementación a través del procesamiento de imágenes, no está al alcance de nuestros conocimientos. Es posible que teniendo en cuenta el lento pero incesante avance en el desempeño de las herramientas de procesamiento de imagen, en un futuro se alcance una solución por este camino.&lt;br /&gt;
&lt;br /&gt;
==Implementación==&lt;br /&gt;
&lt;br /&gt;
A continuación se detallan los pasos seguidos para incorporar dichos sensores al Butiá:&lt;br /&gt;
*Crear User Module&lt;br /&gt;
*Reconocimiento PnP&lt;br /&gt;
*Crear Driver&lt;br /&gt;
*Grabar Firmware&lt;br /&gt;
&lt;br /&gt;
===Crear User Module===&lt;br /&gt;
&lt;br /&gt;
Un usermodule debe cumplir con una API determinada, de esta manera es posible agregar las funcionalidades que el módulo expone. Las operaciones principales que se deben implementar son las encargadas de atender los eventos de:&lt;br /&gt;
*inicialización&lt;br /&gt;
*liberación de recursos&lt;br /&gt;
*configuración&lt;br /&gt;
&lt;br /&gt;
El siguiente es el codigo del UserModule del sensor Temperatura:&lt;br /&gt;
&lt;br /&gt;
[[UsermoduleTemp.pdf]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Reconocimiento PnP===&lt;br /&gt;
&lt;br /&gt;
Se toma un valor de resistencia no utilizado en la cartilla (https://docs.google.com/spreadsheet/ccc?key=0AvO96_3p52-AdFdtaE1YbzV1ZmhVRldjSVE0OUtEZGc#gid=0) y se agregan sus respectivas constantes (por ejemplo en el caso de la temperatura R_TEMP_MIN,R_TEMP_MAX), con los valores dados por dicha tabla, también se debe aumentar la cantidad de dispositivos (MAX_DEVICES) del archivo pnp.h.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Crear Driver===&lt;br /&gt;
===Grabar Firmware===&lt;br /&gt;
==Demos==&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5920</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5920"/>
				<updated>2014-09-13T22:27:40Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Objetivos===&lt;br /&gt;
*Investigación de kits educativos actuales&lt;br /&gt;
*Implementación de sensores nuevos (y de utilidad) para el kit Butiá&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Cámara&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 (http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf); y el de temperatura y humedad DHT11 (http://akizukidenshi.com/download/ds/aosong/DHT11.pdf). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, a demás no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son muy caros y difíciles de conseguir en el medio local, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. No pudimos &amp;quot;traducir&amp;quot; la imagen a valores útiles para analizar la orientación.&lt;br /&gt;
Consideramos dos alternativas, la primera (con una brújula que mide el angulo con respecto al norte) esto no lo vimos posible ya que no encontramos forma de leer este dato con la cámara. &lt;br /&gt;
La segunda opción fue imprimir en pantalla donde se encuentra el norte, utilizando una brújula con el norte en color rojo, y de esta forma el follow me lo puede &amp;quot;ver&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
En conclusión, sería muy interesante la incorporación de este sensor a la plataforma, pero los altos precios de los sensores brújulas se oponen a la accesibilidad objetivo del proyecto. Una posible implementación a través del procesamiento de imágenes, no está al alcance de nuestros conocimientos. Es posible que teniendo en cuenta el lento pero incesante avance en el desempeño de las herramientas de procesamiento de imagen, en un futuro se alcance una solución por este camino.&lt;br /&gt;
&lt;br /&gt;
==Implementación==&lt;br /&gt;
&lt;br /&gt;
A continuación se detallan los pasos seguidos para incorporar dichos sensores al Butiá:&lt;br /&gt;
*Crear User Module&lt;br /&gt;
*Reconocimiento PnP&lt;br /&gt;
*Crear Driver&lt;br /&gt;
*Grabar Firmware&lt;br /&gt;
&lt;br /&gt;
===Crear User Module===&lt;br /&gt;
&lt;br /&gt;
Un usermodule debe cumplir con una API determinada, de esta manera es posible agregar las funcionalidades que el módulo expone. Las operaciones principales que se deben implementar son las encargadas de atender los eventos de:&lt;br /&gt;
*inicialización&lt;br /&gt;
*liberación de recursos&lt;br /&gt;
*configuración&lt;br /&gt;
&lt;br /&gt;
El siguiente es el codigo del UserModule del sensor Temperatura:&lt;br /&gt;
&lt;br /&gt;
[[Temp_usermodule.pdf]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Reconocimiento PnP===&lt;br /&gt;
&lt;br /&gt;
Se toma un valor de resistencia no utilizado en la cartilla (https://docs.google.com/spreadsheet/ccc?key=0AvO96_3p52-AdFdtaE1YbzV1ZmhVRldjSVE0OUtEZGc#gid=0) y se agregan sus respectivas constantes (por ejemplo en el caso de la temperatura R_TEMP_MIN,R_TEMP_MAX), con los valores dados por dicha tabla, también se debe aumentar la cantidad de dispositivos (MAX_DEVICES) del archivo pnp.h.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Crear Driver===&lt;br /&gt;
===Grabar Firmware===&lt;br /&gt;
==Demos==&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5919</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5919"/>
				<updated>2014-09-13T22:25:17Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Objetivos===&lt;br /&gt;
*Investigación de kits educativos actuales&lt;br /&gt;
*Implementación de sensores nuevos (y de utilidad) para el kit Butiá&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Cámara&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 (http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf); y el de temperatura y humedad DHT11 (http://akizukidenshi.com/download/ds/aosong/DHT11.pdf). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, a demás no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son muy caros y difíciles de conseguir en el medio local, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. No pudimos &amp;quot;traducir&amp;quot; la imagen a valores útiles para analizar la orientación.&lt;br /&gt;
Consideramos dos alternativas, la primera (con una brújula que mide el angulo con respecto al norte) esto no lo vimos posible ya que no encontramos forma de leer este dato con la cámara. &lt;br /&gt;
La segunda opción fue imprimir en pantalla donde se encuentra el norte, utilizando una brújula con el norte en color rojo, y de esta forma el follow me lo puede &amp;quot;ver&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
En conclusión, sería muy interesante la incorporación de este sensor a la plataforma, pero los altos precios de los sensores brújulas se oponen a la accesibilidad objetivo del proyecto. Una posible implementación a través del procesamiento de imágenes, no está al alcance de nuestros conocimientos. Es posible que teniendo en cuenta el lento pero incesante avance en el desempeño de las herramientas de procesamiento de imagen, en un futuro se alcance una solución por este camino.&lt;br /&gt;
&lt;br /&gt;
==Implementación==&lt;br /&gt;
&lt;br /&gt;
A continuación se detallan los pasos seguidos para incorporar dichos sensores al Butiá:&lt;br /&gt;
*Crear User Module&lt;br /&gt;
*Reconocimiento PnP&lt;br /&gt;
*Crear Driver&lt;br /&gt;
*Grabar Firmware&lt;br /&gt;
&lt;br /&gt;
===Crear User Module===&lt;br /&gt;
&lt;br /&gt;
Un usermodule debe cumplir con una API determinada, de esta manera es posible agregar las funcionalidades que el módulo expone. Las operaciones principales que se deben implementar son las encargadas de atender los eventos de:&lt;br /&gt;
*inicialización&lt;br /&gt;
*liberación de recursos&lt;br /&gt;
*configuración&lt;br /&gt;
&lt;br /&gt;
El siguiente es el codigo del UserModule del sensor Temperatura:&lt;br /&gt;
&lt;br /&gt;
[[Temp_usermodule.pdf]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Reconocimiento PnP===&lt;br /&gt;
&lt;br /&gt;
Se toma un valor de resistencia no utilizado en la cartilla (https://docs.google.com/spreadsheet/ccc?key=0AvO96_3p52-AdFdtaE1YbzV1ZmhVRldjSVE0OUtEZGc#gid=0) y se agregan sus respectivas constantes (por ejemplo en el caso de la temperatura R_TEMP_MIN,R_TEMP_MAX), con los valores dados por dicha tabla, también se debe aumentar la cantidad de dispositivos (MAX_DEVICES) del archivo pnp.h.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Crear Driver===&lt;br /&gt;
===Grabar Firmware===&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Archivo:Temp_usermodule.pdf&amp;diff=5918</id>
		<title>Archivo:Temp usermodule.pdf</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Archivo:Temp_usermodule.pdf&amp;diff=5918"/>
				<updated>2014-09-13T22:24:39Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5917</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5917"/>
				<updated>2014-09-13T21:47:10Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Objetivos===&lt;br /&gt;
*Investigación de kits educativos actuales&lt;br /&gt;
*Implementación de sensores nuevos (y de utilidad) para el kit Butiá&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Cámara&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 (http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf); y el de temperatura y humedad DHT11 (http://akizukidenshi.com/download/ds/aosong/DHT11.pdf). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, a demás no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son muy caros y difíciles de conseguir en el medio local, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. No pudimos &amp;quot;traducir&amp;quot; la imagen a valores útiles para analizar la orientación.&lt;br /&gt;
Consideramos dos alternativas, la primera (con una brújula que mide el angulo con respecto al norte) esto no lo vimos posible ya que no encontramos forma de leer este dato con la cámara. &lt;br /&gt;
La segunda opción fue imprimir en pantalla donde se encuentra el norte, utilizando una brújula con el norte en color rojo, y de esta forma el follow me lo puede &amp;quot;ver&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
En conclusión, sería muy interesante la incorporación de este sensor a la plataforma, pero los altos precios de los sensores brújulas se oponen a la accesibilidad objetivo del proyecto. Una posible implementación a través del procesamiento de imágenes, no está al alcance de nuestros conocimientos. Es posible que teniendo en cuenta el lento pero incesante avance en el desempeño de las herramientas de procesamiento de imagen, en un futuro se alcance una solución por este camino.&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5913</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5913"/>
				<updated>2014-09-13T15:53:21Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: /* LEGO Mindstorm */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Cámara&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión acerca de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 (http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf); y el de temperatura y humedad DHT11 (http://akizukidenshi.com/download/ds/aosong/DHT11.pdf). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, a demás no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Sensor de gas====&lt;br /&gt;
[[Archivo:Gas.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de gas detecta la presencia de gases combustibles en el ambiente. Entre los gases combustibles detectables, se encuentran: butano (obtenido de un encendedor), etanol (a través de alcohol), acetona.&lt;br /&gt;
Actualmente, nos encontramos en proceso de sumar el módulo de gas del sensor NFI 1813.&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son muy caros y difíciles de conseguir en el medio local, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. No pudimos &amp;quot;traducir&amp;quot; la imagen a valores útiles para analizar la orientación.&lt;br /&gt;
Consideramos dos alternativas, la primera (con una brújula que mide el angulo con respecto al norte) esto no lo vimos posible ya que no encontramos forma de leer este dato con la cámara. &lt;br /&gt;
La segunda opción fue imprimir en pantalla donde se encuentra el norte, utilizando una brújula con el norte en color rojo, y de esta forma el follow me lo puede &amp;quot;ver&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
En conclusión, sería muy interesante la incorporación de este sensor a la plataforma, pero los altos precios de los sensores brújulas se oponen a la accesibilidad objetivo del proyecto. Una posible implementación a través del procesamiento de imágenes, no está al alcance de nuestros conocimientos. Es posible que teniendo en cuenta el lento pero incesante avance en el desempeño de las herramientas de procesamiento de imagen, en un futuro se alcance una solución por este camino.&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5912</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5912"/>
				<updated>2014-09-13T15:52:21Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: /* LEGO Mindstorm */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de camara&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión acerca de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 (http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf); y el de temperatura y humedad DHT11 (http://akizukidenshi.com/download/ds/aosong/DHT11.pdf). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, a demás no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Sensor de gas====&lt;br /&gt;
[[Archivo:Gas.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de gas detecta la presencia de gases combustibles en el ambiente. Entre los gases combustibles detectables, se encuentran: butano (obtenido de un encendedor), etanol (a través de alcohol), acetona.&lt;br /&gt;
Actualmente, nos encontramos en proceso de sumar el módulo de gas del sensor NFI 1813.&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son muy caros y difíciles de conseguir en el medio local, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. No pudimos &amp;quot;traducir&amp;quot; la imagen a valores útiles para analizar la orientación.&lt;br /&gt;
Consideramos dos alternativas, la primera (con una brújula que mide el angulo con respecto al norte) esto no lo vimos posible ya que no encontramos forma de leer este dato con la cámara. &lt;br /&gt;
La segunda opción fue imprimir en pantalla donde se encuentra el norte, utilizando una brújula con el norte en color rojo, y de esta forma el follow me lo puede &amp;quot;ver&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
En conclusión, sería muy interesante la incorporación de este sensor a la plataforma, pero los altos precios de los sensores brújulas se oponen a la accesibilidad objetivo del proyecto. Una posible implementación a través del procesamiento de imágenes, no está al alcance de nuestros conocimientos. Es posible que teniendo en cuenta el lento pero incesante avance en el desempeño de las herramientas de procesamiento de imagen, en un futuro se alcance una solución por este camino.&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5911</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5911"/>
				<updated>2014-09-13T15:47:47Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión acerca de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Opera a 5 Voltios de alimentación&lt;br /&gt;
*Tiempo ajustable de delay (de 0.3 a 18 segundos)&lt;br /&gt;
*Rango: hasta 120 grados a 7 metros&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 (http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf); y el de temperatura y humedad DHT11 (http://akizukidenshi.com/download/ds/aosong/DHT11.pdf). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
Su salida es lineal y cada grado equivale a 10 mV, a demás no requiere de circuitos adicionales para calibrarlo externamente.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Está calibrado en grados Celsius.&lt;br /&gt;
*La tensión de salida es proporcional a la temperatura.&lt;br /&gt;
*Opera entre 4 y 30 Voltios de alimentación.&lt;br /&gt;
*Precisión calibrada de 1ºC&lt;br /&gt;
*Su rango de medición abarca desde -55°C hasta 150°C&lt;br /&gt;
*Bajo costo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Sensor de gas====&lt;br /&gt;
[[Archivo:Gas.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de gas detecta la presencia de gases combustibles en el ambiente. Entre los gases combustibles detectables, se encuentran: butano (obtenido de un encendedor), etanol (a través de alcohol), acetona.&lt;br /&gt;
Actualmente, nos encontramos en proceso de sumar el módulo de gas del sensor NFI 1813.&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son muy caros y difíciles de conseguir en el medio local, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. No pudimos &amp;quot;traducir&amp;quot; la imagen a valores útiles para analizar la orientación.&lt;br /&gt;
Consideramos dos alternativas, la primera (con una brújula que mide el angulo con respecto al norte) esto no lo vimos posible ya que no encontramos forma de leer este dato con la cámara. &lt;br /&gt;
La segunda opción fue imprimir en pantalla donde se encuentra el norte, utilizando una brújula con el norte en color rojo, y de esta forma el follow me lo puede &amp;quot;ver&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
En conclusión, sería muy interesante la incorporación de este sensor a la plataforma, pero los altos precios de los sensores brújulas se oponen a la accesibilidad objetivo del proyecto. Una posible implementación a través del procesamiento de imágenes, no está al alcance de nuestros conocimientos. Es posible que teniendo en cuenta el lento pero incesante avance en el desempeño de las herramientas de procesamiento de imagen, en un futuro se alcance una solución por este camino.&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5910</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5910"/>
				<updated>2014-09-13T15:16:36Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: /* Movimiento */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión acerca de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 (http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf); y el de temperatura y humedad DHT11 (http://akizukidenshi.com/download/ds/aosong/DHT11.pdf). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
&lt;br /&gt;
====Sensor de gas====&lt;br /&gt;
[[Archivo:Gas.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de gas detecta la presencia de gases combustibles en el ambiente. Entre los gases combustibles detectables, se encuentran: butano (obtenido de un encendedor), etanol (a través de alcohol), acetona.&lt;br /&gt;
Actualmente, nos encontramos en proceso de sumar el módulo de gas del sensor NFI 1813.&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son muy caros y difíciles de conseguir en el medio local, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. No pudimos &amp;quot;traducir&amp;quot; la imagen a valores útiles para analizar la orientación.&lt;br /&gt;
Consideramos dos alternativas, la primera (con una brújula que mide el angulo con respecto al norte) esto no lo vimos posible ya que no encontramos forma de leer este dato con la cámara. &lt;br /&gt;
La segunda opción fue imprimir en pantalla donde se encuentra el norte, utilizando una brújula con el norte en color rojo, y de esta forma el follow me lo puede &amp;quot;ver&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
En conclusión, sería muy interesante la incorporación de este sensor a la plataforma, pero los altos precios de los sensores brújulas se oponen a la accesibilidad objetivo del proyecto. Una posible implementación a través del procesamiento de imágenes, no está al alcance de nuestros conocimientos. Es posible que teniendo en cuenta el lento pero incesante avance en el desempeño de las herramientas de procesamiento de imagen, en un futuro se alcance una solución por este camino.&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5909</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5909"/>
				<updated>2014-09-13T15:13:40Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: /* Movimiento */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión acerca de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 (http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf); y el de temperatura y humedad DHT11 (http://akizukidenshi.com/download/ds/aosong/DHT11.pdf). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
&lt;br /&gt;
====Sensor de gas====&lt;br /&gt;
[[Archivo:Gas.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de gas detecta la presencia de gases combustibles en el ambiente. Entre los gases combustibles detectables, se encuentran: butano (obtenido de un encendedor), etanol (a través de alcohol), acetona.&lt;br /&gt;
Actualmente, nos encontramos en proceso de sumar el módulo de gas del sensor NFI 1813.&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son muy caros y difíciles de conseguir en el medio local, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. No pudimos &amp;quot;traducir&amp;quot; la imagen a valores útiles para analizar la orientación.&lt;br /&gt;
Consideramos dos alternativas, la primera (con una brújula que mide el angulo con respecto al norte) esto no lo vimos posible ya que no encontramos forma de leer este dato con la cámara. &lt;br /&gt;
La segunda opción fue imprimir en pantalla donde se encuentra el norte, utilizando una brújula con el norte en color rojo, y de esta forma el follow me lo puede &amp;quot;ver&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
En conclusión, sería muy interesante la incorporación de este sensor a la plataforma, pero los altos precios de los sensores brújulas se oponen a la accesibilidad objetivo del proyecto. Una posible implementación a través del procesamiento de imágenes, no está al alcance de nuestros conocimientos. Es posible que teniendo en cuenta el lento pero incesante avance en el desempeño de las herramientas de procesamiento de imagen, en un futuro se alcance una solución por este camino.&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5908</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5908"/>
				<updated>2014-09-13T15:11:03Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: /* Movimiento */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión acerca de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 (http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf); y el de temperatura y humedad DHT11 (http://akizukidenshi.com/download/ds/aosong/DHT11.pdf). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
&lt;br /&gt;
====Sensor de gas====&lt;br /&gt;
[[Archivo:Gas.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de gas detecta la presencia de gases combustibles en el ambiente. Entre los gases combustibles detectables, se encuentran: butano (obtenido de un encendedor), etanol (a través de alcohol), acetona.&lt;br /&gt;
Actualmente, nos encontramos en proceso de sumar el módulo de gas del sensor NFI 1813.&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son muy caros y difíciles de conseguir en el medio local, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. No pudimos &amp;quot;traducir&amp;quot; la imagen a valores útiles para analizar la orientación.&lt;br /&gt;
Consideramos dos alternativas, la primera (con una brújula que mide el angulo con respecto al norte) esto no lo vimos posible ya que no encontramos forma de leer este dato con la cámara. &lt;br /&gt;
La segunda opción fue imprimir en pantalla donde se encuentra el norte, utilizando una brújula con el norte en color rojo, y de esta forma el follow me lo puede &amp;quot;ver&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
En conclusión, sería muy interesante la incorporación de este sensor a la plataforma, pero los altos precios de los sensores brújulas se oponen a la accesibilidad objetivo del proyecto. Una posible implementación a través del procesamiento de imágenes, no está al alcance de nuestros conocimientos. Es posible que teniendo en cuenta el lento pero incesante avance en el desempeño de las herramientas de procesamiento de imagen, en un futuro se alcance una solución por este camino.&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Archivo:PIR.jpg&amp;diff=5907</id>
		<title>Archivo:PIR.jpg</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Archivo:PIR.jpg&amp;diff=5907"/>
				<updated>2014-09-13T15:09:56Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: subió una nueva versión de «Archivo:PIR.jpg»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5906</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5906"/>
				<updated>2014-09-13T14:53:39Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: /* LEGO Mindstorm */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión acerca de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 (http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf); y el de temperatura y humedad DHT11 (http://akizukidenshi.com/download/ds/aosong/DHT11.pdf). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
&lt;br /&gt;
====Sensor de gas====&lt;br /&gt;
[[Archivo:Gas.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de gas detecta la presencia de gases combustibles en el ambiente. Entre los gases combustibles detectables, se encuentran: butano (obtenido de un encendedor), etanol (a través de alcohol), acetona.&lt;br /&gt;
Actualmente, nos encontramos en proceso de sumar el módulo de gas del sensor NFI 1813.&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son muy caros y difíciles de conseguir en el medio local, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. No pudimos &amp;quot;traducir&amp;quot; la imagen a valores útiles para analizar la orientación.&lt;br /&gt;
Consideramos dos alternativas, la primera (con una brújula que mide el angulo con respecto al norte) esto no lo vimos posible ya que no encontramos forma de leer este dato con la cámara. &lt;br /&gt;
La segunda opción fue imprimir en pantalla donde se encuentra el norte, utilizando una brújula con el norte en color rojo, y de esta forma el follow me lo puede &amp;quot;ver&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
En conclusión, sería muy interesante la incorporación de este sensor a la plataforma, pero los altos precios de los sensores brújulas se oponen a la accesibilidad objetivo del proyecto. Una posible implementación a través del procesamiento de imágenes, no está al alcance de nuestros conocimientos. Es posible que teniendo en cuenta el lento pero incesante avance en el desempeño de las herramientas de procesamiento de imagen, en un futuro se alcance una solución por este camino.&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Archivo:Lego-Grupo1.png&amp;diff=5905</id>
		<title>Archivo:Lego-Grupo1.png</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Archivo:Lego-Grupo1.png&amp;diff=5905"/>
				<updated>2014-09-13T14:53:21Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	<entry>
		<id>http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5904</id>
		<title>Grupo 1</title>
		<link rel="alternate" type="text/html" href="http://164.73.124.35/inco/proyectos/butia/mediawiki/index.php?title=Grupo_1&amp;diff=5904"/>
				<updated>2014-09-13T14:52:56Z</updated>
		
		<summary type="html">&lt;p&gt;Grupobutia: /* Butiá */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Integrantes ==&lt;br /&gt;
* Ignacio Betancurt - ibetancurt@gmail.com&lt;br /&gt;
* Alejandro Brusco - alejandrobi89@gmail.com&lt;br /&gt;
* Maite Ibarburu - maite2310@hotmail.com&lt;br /&gt;
&lt;br /&gt;
==Tutor==&lt;br /&gt;
* Gonzalo Tejera&lt;br /&gt;
&lt;br /&gt;
==Reseña==&lt;br /&gt;
&lt;br /&gt;
===Introducción===&lt;br /&gt;
* Un robot inteligente es por definición una máquina capaz de interactuar con su entorno de forma autónoma. Es un robot del cual se espera que aprenda y ejecute tareas aún en ambientes cambiantes. Para lograr esto, el robot debe poder recibir información sobre su entorno y actuar en base a ella, de una forma segura, cumpliendo un propósito y sentido. Es por este motivo que se necesitan los sensores. &lt;br /&gt;
* Un sensor es un dispositivo capaz de percibir magnitudes físicas y/o químicas con el fin de transformarlas en señales electrónicas, y así introducirlas al circuito de control, de modo que el robot sea capaz de cuantificarla y reaccionar en consecuencia.&lt;br /&gt;
&lt;br /&gt;
===Kits educativos actuales===&lt;br /&gt;
&lt;br /&gt;
====[http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com LEGO Mindstorm]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Lego.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa LEGO dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor barométrico&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de acelerómetro&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de infrarrojo&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de orientación/Brújula&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de temperatura&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor Dexter dIMU (combina giroscopio y acelerómetro)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.vexrobotics.com/vexiq VEX]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:VEX.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa VEX IQ dispone de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de giro (Giroscopio)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Touch LED (sensor/actuador que detecta el color del objeto, y enciende una luz del color leído)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[http://www.fing.edu.uy/inco/proyectos/butia/ Butiá]====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Butia-Grupo1.png|250px]]&lt;br /&gt;
&lt;br /&gt;
El kit de robótica educativa Butiá dispone actualmente de los siguientes sensores:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de color (escala de grises)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de contacto&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de distancia&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de imagen (cámara de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de intensidad lumínica&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-Sensor de sonido (micrófono de la XO)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Discusión acerca de qué sensores integrar al robot Butiá===&lt;br /&gt;
&lt;br /&gt;
En base a la investigación efectuada referente a los sensores disponibles en el kit educativo LEGO Mindstorm y VEX IQ, analizamos qué sensores sería interesante agregar al Proyecto Butiá.&lt;br /&gt;
&lt;br /&gt;
El giroscopio no es un sensor que esté presente actualmente en el Butiá. El mismo se utiliza para conocer la orientación en el espacio de algún dispositivo. Los altos precios de estos sensores, se enfrentan a la idea de que el Butiá sea un robot accesible para todos los contextos.&lt;br /&gt;
&lt;br /&gt;
El sensor de orientación o brújula se utiliza para orientarse basándose en los campos magnéticos terrestres. Su menor costo y su amplia difusión, clasifican a este sensor como uno de los candidatos a implementar.&lt;br /&gt;
&lt;br /&gt;
Conociendo que existen planes de construir una estación meteorológica en una escuela, resulta interesante poder incluir un sensor de temperatura al robot Butiá. Por otro lado, la temperatura es una magnitud que resulta muy intuitiva para el público en general y en particular, para los niños.&lt;br /&gt;
Complementando los sensores necesarios para una estación meteorológica, podemos incluir uno que sense la humedad y otro para sensar la presión.&lt;br /&gt;
&lt;br /&gt;
Luego de la segunda reunión se decidió implementar:  movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al sensor de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sensores a incorporar===&lt;br /&gt;
&lt;br /&gt;
====Movimiento====&lt;br /&gt;
[[Archivo:PIR.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de movimiento hace un relevamiento del ambiente y devuelve si en este encontró objetos en movimiento.&lt;br /&gt;
Hemos incorporado el sensor Flamingo EDA PIR 2.0.&lt;br /&gt;
&lt;br /&gt;
====Temperatura====&lt;br /&gt;
[[Archivo:LM35.png|150px]]&lt;br /&gt;
[[Archivo:DHT11.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de temperatura sensa la temperatura ambiente y la devuelve.&lt;br /&gt;
En una primer instancia, intentamos incorporar los sensores seriales de temperatura DS18B20 (http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf); y el de temperatura y humedad DHT11 (http://akizukidenshi.com/download/ds/aosong/DHT11.pdf). Tras un largo período de investigación y pruebas, concluímos que la integración de un sensor serial no estaba a nuestro alcance para los conocimientos y experiencia que teníamos.&lt;br /&gt;
Por lo tanto, optamos por integrar el sensor LM35 a la plataforma Butiá.&lt;br /&gt;
&lt;br /&gt;
====Sensor de gas====&lt;br /&gt;
[[Archivo:Gas.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de gas detecta la presencia de gases combustibles en el ambiente. Entre los gases combustibles detectables, se encuentran: butano (obtenido de un encendedor), etanol (a través de alcohol), acetona.&lt;br /&gt;
Actualmente, nos encontramos en proceso de sumar el módulo de gas del sensor NFI 1813.&lt;br /&gt;
&lt;br /&gt;
====Brújula====&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Brujula.jpg|250px]]&lt;br /&gt;
&lt;br /&gt;
El sensor de brújula, se utiliza para conocer la orientación y se basa en el magnetismo terrestre.&lt;br /&gt;
&lt;br /&gt;
En primera instacia, se empezó por investigar cuáles componentes electrónicos podrían ser utilizados para este fin.&lt;br /&gt;
&lt;br /&gt;
=====HMC6352=====&lt;br /&gt;
[[Archivo:1884-HMC6352chipeke.jpeg]]&lt;br /&gt;
&lt;br /&gt;
El sensor HCM63525 es un magnetómetro, ya que mide la fuerza de los campos magnéticos, pero también se le suele llamar compás o brújula digital.&lt;br /&gt;
Los magnetómetros nos permiten saber la dirección hacia la que se encuentra el Norte del campo magnético mas fuerte. Se suelen utilizar para obtener la orientación respecto al Norte magnético terrestre. Tienen mucha utilidad en robots para la navegación autónoma o para devolver datos de orientación a distancia.&lt;br /&gt;
======Características======&lt;br /&gt;
* Interfaz I2C por lo que se necesitaría 2 pines para obtener los datos&lt;br /&gt;
* Alimentación 2.7 - 5.2V.&lt;br /&gt;
* Refresco ajustable de 1 a 20Hz&lt;br /&gt;
* Resolución 0.5 grados.&lt;br /&gt;
* Consumo: 1mA (3V)&lt;br /&gt;
* Dimensiones: 15x15mm&lt;br /&gt;
* Permite calibrado&lt;br /&gt;
&lt;br /&gt;
=====LSM303=====&lt;br /&gt;
[[Archivo:LSM303.jpg|250px]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Contiene dos sensores, un acelerómetro que indica la dirección en que se está respecto a la tierra (midiendo la gravedad) y el otro es un magnetómetro que nos permiten conocer hacia donde se encuentra el campo magnético más fuerte (el norte magnético).&lt;br /&gt;
&lt;br /&gt;
======Características======&lt;br /&gt;
*Interfaz I2C&lt;br /&gt;
*3V - 5V&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Debido a que los sensores de brújulas son muy caros y difíciles de conseguir en el medio local, comenzamos una investigación para imitar el comportamiento utilizando una brújula tradicional y la webcam de las computadoras.&lt;br /&gt;
El procesamiento de imagen es una tarea ardua que aún no ha madurado lo suficiente como para poder ser implementado fácilmente y con una suficiente confiabilidad.&lt;br /&gt;
También hemos investigado la paleta &amp;quot;Follow Me&amp;quot; de Butiá y una brújula común. No pudimos &amp;quot;traducir&amp;quot; la imagen a valores útiles para analizar la orientación.&lt;br /&gt;
Consideramos dos alternativas, la primera (con una brújula que mide el angulo con respecto al norte) esto no lo vimos posible ya que no encontramos forma de leer este dato con la cámara. &lt;br /&gt;
La segunda opción fue imprimir en pantalla donde se encuentra el norte, utilizando una brújula con el norte en color rojo, y de esta forma el follow me lo puede &amp;quot;ver&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
En conclusión, sería muy interesante la incorporación de este sensor a la plataforma, pero los altos precios de los sensores brújulas se oponen a la accesibilidad objetivo del proyecto. Una posible implementación a través del procesamiento de imágenes, no está al alcance de nuestros conocimientos. Es posible que teniendo en cuenta el lento pero incesante avance en el desempeño de las herramientas de procesamiento de imagen, en un futuro se alcance una solución por este camino.&lt;br /&gt;
&lt;br /&gt;
==Actas==&lt;br /&gt;
===Primera reunión - 08/07/2014===&lt;br /&gt;
*En nuestra primera reunión nos informamos de cómo proceder con los materiales a utilizar. Se acordó para una segunda reunión, estudiar los diferentes kits que ya están implementados en el mercado y discutimos la utilidad para el proyecto de algunos sensores que ya teníamos pensados.&lt;br /&gt;
===Segunda reunión - 08/08/2014===&lt;br /&gt;
*En nuestra segunda reunión, ya estabamos informados de que sensores estaban implementados en varios kits diferentes. En esta reunión se concluyó que sensores para butiá sería de utilidad implementar, estos son: movimiento, temperatura y humedad. También se vió la posibilidad de implementar un sensor brújula y un sensor de gas. El primero es un sensor caro, por lo que se llegó a la alternativa de hacer una brújula artesanal y con un sensor existente ya en butiá, por ejemplo la camara, &amp;quot;ver&amp;quot; como está posicionada la brújula. En cuanto al segundo sensor: el de gas, decidimos dejarlo como último a implementar, si es posible, ya que le vimos mayor utilidad al resto de los sensores propuestos. &lt;br /&gt;
===09/08/2014===&lt;br /&gt;
*Recibimos los sensores&lt;/div&gt;</summary>
		<author><name>Grupobutia</name></author>	</entry>

	</feed>