Diferencia entre revisiones de «Butia2»

De Proyecto Butiá
Saltar a: navegación, buscar
(Butiá 2.0)
(Butiá 2.0)
 
(No se muestran 2 ediciones intermedias del mismo usuario)
Línea 2: Línea 2:
  
 
Como resultado de más de un año de experiencia de uso, soporte y mantenimiento, en el marco del proyecto Butiá 2.0, se plantean diferentes áreas donde mejorar la plataforma Butia 1.0 [http://www.fing.edu.uy/inco/proyectos/butia].
 
Como resultado de más de un año de experiencia de uso, soporte y mantenimiento, en el marco del proyecto Butiá 2.0, se plantean diferentes áreas donde mejorar la plataforma Butia 1.0 [http://www.fing.edu.uy/inco/proyectos/butia].
 +
 +
Este proyecto es llevado adelante gracias a la cooperación con ANTel.
  
 
Algunas de estas mejoras están vinculadas con el hardware, otras con los aspectos mecánicos de la plataforma y otras con el software.
 
Algunas de estas mejoras están vinculadas con el hardware, otras con los aspectos mecánicos de la plataforma y otras con el software.
Línea 11: Línea 13:
 
''Interacción con sensores y actuadores''
 
''Interacción con sensores y actuadores''
  
La plataforma robótica Butiá permite aumentar las capacidades sensoriales y de actuación de la XO. Mediante electrónica en formato de una placa de entrada/salida (E/S)#, la cual se conecta al puerto USB de la XO, permite controlar motores, sensores y otros elementos electrónicos que la XO no es capaz de controlar por si sola. De este modo, el estudiante -a través de la XO- puede decidir qué elementos electrónicos controlar y de qué forma, siendo la robótica una de las aplicaciones posibles, pero existiendo otras vinculadas como sistemas embebidos, laboratorio de física o química, entre otras.
+
La plataforma robótica Butiá permite aumentar las capacidades sensoriales y de actuación de la XO. Mediante electrónica en formato de una placa de entrada/salida (E/S), la cual se conecta al puerto USB de la XO, permite controlar motores, sensores y otros elementos electrónicos que la XO no es capaz de controlar por si sola. De este modo, el estudiante -a través de la XO- puede decidir qué elementos electrónicos controlar y de qué forma, siendo la robótica una de las aplicaciones posibles, pero existiendo otras vinculadas como sistemas embebidos, laboratorio de física o química, entre otras.
  
 
Existen diferentes placas de E/S, algunas utilizadas con fines académicos, otras orientadas al prototipado rápido de productos. Al momento de diseñar el robot Butiá tuvimos especial cuidado para que no existiera una dependencia tecnológica con una placa de E/S particular a nivel de la arquitectura. Se realizaron diferentes prototipos para validar su funcionamiento en diferentes configuraciones, pero finalmente y debido a la necesidad de cumplir con los plazos fijados por el proyecto se utilizó la placa Arduino Mega [http://arduino.cc/es/Main/ArduinoBoardMega] dado que resolvía ciertos aspectos que podían (según lo estimado) tomar tiempo y afectar los plazos estipulados si se utilizaban otras alternativas. Dado que la placa Arduino es de propósito general requirió que el equipo diseñara hardware para permitir adaptar la placa a las necesidades del proyecto Butiá mediante un circuito llamado Shield Arduino Butiá [http://www.fing.edu.uy/inco/proyectos/butia/mediawiki/index.php/Construccion_shield_v1.0].
 
Existen diferentes placas de E/S, algunas utilizadas con fines académicos, otras orientadas al prototipado rápido de productos. Al momento de diseñar el robot Butiá tuvimos especial cuidado para que no existiera una dependencia tecnológica con una placa de E/S particular a nivel de la arquitectura. Se realizaron diferentes prototipos para validar su funcionamiento en diferentes configuraciones, pero finalmente y debido a la necesidad de cumplir con los plazos fijados por el proyecto se utilizó la placa Arduino Mega [http://arduino.cc/es/Main/ArduinoBoardMega] dado que resolvía ciertos aspectos que podían (según lo estimado) tomar tiempo y afectar los plazos estipulados si se utilizaban otras alternativas. Dado que la placa Arduino es de propósito general requirió que el equipo diseñara hardware para permitir adaptar la placa a las necesidades del proyecto Butiá mediante un circuito llamado Shield Arduino Butiá [http://www.fing.edu.uy/inco/proyectos/butia/mediawiki/index.php/Construccion_shield_v1.0].
Línea 21: Línea 23:
 
Este producto fue el resultado de un proyecto de grado del año 2006 y desde entonces se ha continuado su desarrollo y testeo mediante otros proyectos de grado [http://www.fing.edu.uy/~asabigue/prgrado/informeDomoticaTenzerPicerno.pdf] y trabajos dentro del grupo MINA, como también en comunidades independientes debido a que fue liberado con licencia de código abierto.
 
Este producto fue el resultado de un proyecto de grado del año 2006 y desde entonces se ha continuado su desarrollo y testeo mediante otros proyectos de grado [http://www.fing.edu.uy/~asabigue/prgrado/informeDomoticaTenzerPicerno.pdf] y trabajos dentro del grupo MINA, como también en comunidades independientes debido a que fue liberado con licencia de código abierto.
  
Una de las ventajas de la placa de E/S USB4all es su fácil fabricación, pudiéndose incluso fabricar manualmente. Desde el punto de vista del firmware#, el sistema USB4all está diseñado con un enfoque modular el cual trata de abstraer al máximo los detalles particulares del hardware subyacente (USB#, otros componentes), permitiendo que sea sencillo controlar nuevos dispositivos o realizar mantenimiento de lo existente.
+
Una de las ventajas de la placa de E/S USB4all es su fácil fabricación, pudiéndose incluso fabricar manualmente. Desde el punto de vista del firmware, el sistema USB4all está diseñado con un enfoque modular el cual trata de abstraer al máximo los detalles particulares del hardware subyacente (USB, otros componentes), permitiendo que sea sencillo controlar nuevos dispositivos o realizar mantenimiento de lo existente.
  
 
Se propone modificar el diseño actual para incluir la placa USB4all, brindando las siguientes ventajas:
 
Se propone modificar el diseño actual para incluir la placa USB4all, brindando las siguientes ventajas:
Línea 48: Línea 50:
 
Esta ventaja no fue totalmente explotada en el Butiá 1.0 debido a la falta de documentación para que el proceso de construcción de sensores pudiese replicarse por terceros.
 
Esta ventaja no fue totalmente explotada en el Butiá 1.0 debido a la falta de documentación para que el proceso de construcción de sensores pudiese replicarse por terceros.
  
Se propone la realización de un diseño más sencillo y robusto del sensor/actuador Butiá e incluir documentación online -al estilo de lo que actualmente existe en la sección tutoriales de la wiki# [http://www.fing.edu.uy/inco/proyectos/butia/mediawiki]- para permitir que los estudiantes puedan crear sus propios sensores, haciendo énfasis en el reciclado de materiales electrónicos de desecho. Como también el dictado de tutoriales para armado de sensores.  
+
Se propone la realización de un diseño más sencillo y robusto del sensor/actuador Butiá e incluir documentación online -al estilo de lo que actualmente existe en la sección tutoriales de la wiki [http://www.fing.edu.uy/inco/proyectos/butia/mediawiki]- para permitir que los estudiantes puedan crear sus propios sensores, haciendo énfasis en el reciclado de materiales electrónicos de desecho. Como también el dictado de tutoriales para armado de sensores.  
 
Alimentación
 
Alimentación
  
Línea 80: Línea 82:
 
] para el lenguaje Lua [http://www.lua.org/]. Butialo es una buena alternativa para estudiantes con conocimientos previos de programación.
 
] para el lenguaje Lua [http://www.lua.org/]. Butialo es una buena alternativa para estudiantes con conocimientos previos de programación.
  
TortugaButiá: es un plugin# para Tortugarte [http://wiki.sugarlabs.org/go/Activities/TurtleArt]. Tortugarte es un lenguaje de programación para niños orientado a bloques. Permite que rápidamente tomen contacto con estructuras y conceptos fundamentales para la programación. Es una herramienta que los estudiantes utilizan con frecuencia y, por consiguiente, el TortugaButiá ha sido muy aceptado en los talleres que hemos realizado.
+
TortugaButiá: es un plugin para Tortugarte [http://wiki.sugarlabs.org/go/Activities/TurtleArt]. Tortugarte es un lenguaje de programación para niños orientado a bloques. Permite que rápidamente tomen contacto con estructuras y conceptos fundamentales para la programación. Es una herramienta que los estudiantes utilizan con frecuencia y, por consiguiente, el TortugaButiá ha sido muy aceptado en los talleres que hemos realizado.
  
 
Los planes a futuro son continuar brindando soporte a estas tres actividades y desarrollar nuevas, como ser soporte para Etoys [http://www.squeakland.org/], soporte para un IDE Python [http://python.org/] y un simulador Butiá para que los alumnos puedan programar sin tener el robot Butiá.
 
Los planes a futuro son continuar brindando soporte a estas tres actividades y desarrollar nuevas, como ser soporte para Etoys [http://www.squeakland.org/], soporte para un IDE Python [http://python.org/] y un simulador Butiá para que los alumnos puedan programar sin tener el robot Butiá.
Línea 86: Línea 88:
 
Compatibilidad con XO 1.75 y nuevos modelos
 
Compatibilidad con XO 1.75 y nuevos modelos
  
Actualmente OLPC [http://one.laptop.org/] está moviéndose a prototipos con una arquitectura de hardware compatible con el diseño de procesadores ARM# y en sus nuevos prototipos también está incluyendo nuevos sensores que pueden ser provechosos para utilizar en aplicaciones de robótica, como ser acelerómetro y sensor de luz. Se explorará estas nuevas opciones mejorando el diseño actual.
+
Actualmente OLPC [http://one.laptop.org/] está moviéndose a prototipos con una arquitectura de hardware compatible con el diseño de procesadores ARM y en sus nuevos prototipos también está incluyendo nuevos sensores que pueden ser provechosos para utilizar en aplicaciones de robótica, como ser acelerómetro y sensor de luz. Se explorará estas nuevas opciones mejorando el diseño actual.
 
Glosario
 
Glosario
  

Revisión actual del 14:13 7 mar 2013

Butiá 2.0

Como resultado de más de un año de experiencia de uso, soporte y mantenimiento, en el marco del proyecto Butiá 2.0, se plantean diferentes áreas donde mejorar la plataforma Butia 1.0 [1].

Este proyecto es llevado adelante gracias a la cooperación con ANTel.

Algunas de estas mejoras están vinculadas con el hardware, otras con los aspectos mecánicos de la plataforma y otras con el software.

A continuación se desarrollan cada uno de los diferentes aspectos en los que se pretende trabajar con la plataforma Butiá 2.0

Mejoras en el hardware

Interacción con sensores y actuadores

La plataforma robótica Butiá permite aumentar las capacidades sensoriales y de actuación de la XO. Mediante electrónica en formato de una placa de entrada/salida (E/S), la cual se conecta al puerto USB de la XO, permite controlar motores, sensores y otros elementos electrónicos que la XO no es capaz de controlar por si sola. De este modo, el estudiante -a través de la XO- puede decidir qué elementos electrónicos controlar y de qué forma, siendo la robótica una de las aplicaciones posibles, pero existiendo otras vinculadas como sistemas embebidos, laboratorio de física o química, entre otras.

Existen diferentes placas de E/S, algunas utilizadas con fines académicos, otras orientadas al prototipado rápido de productos. Al momento de diseñar el robot Butiá tuvimos especial cuidado para que no existiera una dependencia tecnológica con una placa de E/S particular a nivel de la arquitectura. Se realizaron diferentes prototipos para validar su funcionamiento en diferentes configuraciones, pero finalmente y debido a la necesidad de cumplir con los plazos fijados por el proyecto se utilizó la placa Arduino Mega [2] dado que resolvía ciertos aspectos que podían (según lo estimado) tomar tiempo y afectar los plazos estipulados si se utilizaban otras alternativas. Dado que la placa Arduino es de propósito general requirió que el equipo diseñara hardware para permitir adaptar la placa a las necesidades del proyecto Butiá mediante un circuito llamado Shield Arduino Butiá [3].

Luego de terminar la financiación del proyecto, muchas escuelas y liceos han solicitado robots Butiá, pero la decisión de utilizar la placa Arduino Mega genera una dependencia con un producto que no es de fácil adquisición en mercado local y de costos relativamente elevados, en particular si tenemos en cuenta el costo del Shield.

Por otro lado, en el grupo de investigación MINA [4] se ha trabajado en el desarrollo de un sistema basado en una placa de E/S llamado USB4all. [5]

Este producto fue el resultado de un proyecto de grado del año 2006 y desde entonces se ha continuado su desarrollo y testeo mediante otros proyectos de grado [6] y trabajos dentro del grupo MINA, como también en comunidades independientes debido a que fue liberado con licencia de código abierto.

Una de las ventajas de la placa de E/S USB4all es su fácil fabricación, pudiéndose incluso fabricar manualmente. Desde el punto de vista del firmware, el sistema USB4all está diseñado con un enfoque modular el cual trata de abstraer al máximo los detalles particulares del hardware subyacente (USB, otros componentes), permitiendo que sea sencillo controlar nuevos dispositivos o realizar mantenimiento de lo existente.

Se propone modificar el diseño actual para incluir la placa USB4all, brindando las siguientes ventajas:

  • Disminución de los costos, ya que evita tanto la necesidad de utilizar un circuito Shield como de importar placas de E/S.
  • Eliminación de dependencia tecnológica con un producto de difícil adquisición para una escuela o liceo público. Todos los componentes que componen la placa USB4all son adquiribles en el mercado local.
  • Permite que el alumno pase de ser solo usuario de la plataforma a ser desarrollador de la misma. Mediante un diseño fácil de comprender y fabricar permite experimentar el proceso de desarrollo de hardware facilitando la transferencia de conocimiento y fomentando la apropiación de la tecnología.
  • Aprovecha mejor las capacidades instaladas, tanto en conocimiento como en equipamiento.
  • Fomenta la industria electrónica nacional.


Así mismo se desea garantizar compatibilidad hacia atrás, manteniendo compatibilidad con la placa Arduino. Actuadores de bajo costo

En la línea de disminuir los costos construcción del robot y colaborar en el cuidado del medio ambiente, una de las mejoras importantes a realizar en la nueva versión es el uso de material reciclado, en particular, los motores y leds.

En tal sentido es necesario, investigar y ensayar con los diferentes tipos de motores (motores de continua y paso a paso) comúnmente presentes en los equipos en desuso para confeccionar documentación técnica que permita el reuso de dichas componentes. Creando sensores

Una de las ventajas de la plataforma Butiá 1.0 es la facilidad para crear sensores a partir de componentes considerados como desecho tecnológico. Esto permite bajar los costos de construcción y a su vez plantea otro proceso de aprendizaje para el estudiante. A diferencia de lo que ocurre con los kits robóticos comerciales, este enfoque permite y fomenta que el usuario sea creador de la plataforma en contraste con ser solo usuario de la misma.

Esta ventaja no fue totalmente explotada en el Butiá 1.0 debido a la falta de documentación para que el proceso de construcción de sensores pudiese replicarse por terceros.

Se propone la realización de un diseño más sencillo y robusto del sensor/actuador Butiá e incluir documentación online -al estilo de lo que actualmente existe en la sección tutoriales de la wiki [7]- para permitir que los estudiantes puedan crear sus propios sensores, haciendo énfasis en el reciclado de materiales electrónicos de desecho. Como también el dictado de tutoriales para armado de sensores. Alimentación

Un aspecto básico en el uso de robots e importante para mantener el dinamismo y la motivación de los estudiantes es la alimentación.

En tal sentido, se pretende desarrollar un nuevo mecanismo que permita recargar las baterías mediante el uso de los mismos cargadores de la XO y que permita utilizar el robot conectado a la corriente de forma segura. Mejoras en la mecánica

Originalmente, el kit buscaba un enfoque constructivo donde el estudiante pudiera elegir en qué lugar ubicar los sensores para completar un desafío dado.

En la práctica, fue uno de los puntos menos trabajados en la arquitectura Butiá 1.0 y dónde se puede mejorar mucho.

Se procurará dotar a la plataforma de:

  • capacidades de manipulación de objetos
  • compatibilidad con kits comerciales (Lego NXT [8], FischerTechnics [9], otros)
  • uso de materiales de desecho (madera, aluminio, chapa, plástico, otros)

Mejoras en el software

Desde su concepción la plataforma Butiá se diseñó para que estuviera adaptado a la realidad de la sociedad uruguaya, integrándose fuertemente al Plan Ceibal. En particular se buscó la integración con su sistema operativo Sugar [10] basado en GNU/Linux y el conjunto de programas que incluye, los cuales en el contexto de Sugar son llamados con el nombre de Actividades. Soporte a actividades existentes y creación de nuevas

Hoy día desarrollamos y mantenemos tres Actividades en el repositorio de software de Sugar [11]: FollowMe Butiá [12], Butialo [13] y TortugaButiá [14].

Follow me Butiá: es una actividad que busca utilizar la cámara de la XO como un sensor para el robot, permitiendo el reconocimiento de objetos de colores.

Butialo: Brinda un IDE de programación similar a Pippy [http://wiki.laptop.org/go/Pippy ] para el lenguaje Lua [15]. Butialo es una buena alternativa para estudiantes con conocimientos previos de programación.

TortugaButiá: es un plugin para Tortugarte [16]. Tortugarte es un lenguaje de programación para niños orientado a bloques. Permite que rápidamente tomen contacto con estructuras y conceptos fundamentales para la programación. Es una herramienta que los estudiantes utilizan con frecuencia y, por consiguiente, el TortugaButiá ha sido muy aceptado en los talleres que hemos realizado.

Los planes a futuro son continuar brindando soporte a estas tres actividades y desarrollar nuevas, como ser soporte para Etoys [17], soporte para un IDE Python [18] y un simulador Butiá para que los alumnos puedan programar sin tener el robot Butiá.

Compatibilidad con XO 1.75 y nuevos modelos

Actualmente OLPC [19] está moviéndose a prototipos con una arquitectura de hardware compatible con el diseño de procesadores ARM y en sus nuevos prototipos también está incluyendo nuevos sensores que pueden ser provechosos para utilizar en aplicaciones de robótica, como ser acelerómetro y sensor de luz. Se explorará estas nuevas opciones mejorando el diseño actual. Glosario

ARM: es una familia de microprocesadores RISC (del inglés reduced instruction set computer), originalmente del inglés Advanced RISC Machine, actualmente su diseño se ha convertido en uno de los más utilizados del mundo.

Firmware: Rutinas de software almacenadas en una memoria volátil (ROM, EEPROM, flash). Software embebido en un dispositivo de hardware. Es una combinación de software y hardware.

IDE: Entorno de desarrollo integrado, del inglés Integrated Development Environment, refiere a una aplicación/programa, que da soporte al programador brindándole acceso a un conjunto de herramientas de programación. De este modo el programador dispone usualmente de editores de código y de interfaces gráficas, compiladores y depuradores en una misma aplicación.

Placa de entrada/salida: Circuito electrónico de propósito específico para controlar las operaciónes de entrada y salida.

Plugin: Del inglés plug-in, hace referencia a una aplicación que extiende o complementa a otra.

USB: Del inglés Universal Serial Bus, es un estándar desarrollado a mediados de los ‘90 que define los cables, conectores y protocolos usados en el bus de comunicación.

wiki: Un wiki o una wiki (del hawaiano wiki, «rápido») es un sitio web cuyas páginas pueden ser editadas por múltiples voluntarios a través del navegador web. Los usuarios pueden crear, modificar o borrar un mismo texto que comparten.