domingo, 15 de diciembre de 2013

Resultado final - Cámara de seguimiento

Tras casi dos meses con este proyecto en el que hemos tenido que lidiar con bastantes problemas y teníamos en manos otros proyectos también importantes, damos por concluido este Proyecto G22. El camino para llegar al resultado ha sido duro, pero gracias a él hemos aprendido mucho sobre todo lo relacionado con arduino, ya que nunca lo habíamos utilizado. Pero no nos enrollemos, aquí les enseñamos cómo ha quedado finalmente la cámara de seguimiento.






Ha sido un honor y un placer haber podido compartir con ustedes nuestros avances.

Si alguna vez necesitan ayuda sobre el temario que hemos llevado a cabo, contacten con este correo: grupo22media@gmail.com

Intentaremos contestar con la mayor brevedad.

martes, 26 de noviembre de 2013

Tutorial para conectar Arduino a Windows

Hola de nuevo seguidores del proyecto G22. Hoy os ofrecemos un tutorial para comenzar con Arduino. Este tutorial es el más básico de todos, y si no lo llevamos a cabo no podremos realizar nada con arduino de lo que comentamos con anterioridad. Comentaros que está dirigido a las placas Arduino Uno, Arduino Duemilanove, Nano, Arduino Mega 2560 o Diecimila.

En primer lugar vamos a descargar el IDE de Arduino. Esto lo podemos realizar desde la página oficial.


Una vez lo hayamos descargado, conectamos la placa al ordenador mediante el cable USB. El led indicador de la alimentación (VERDE) deberá de quedar encendido a partir de entonces.

Si es la primera vez que conectamos una placa arduino al ordenador, se instalarán los drivers automáticamente. Así que si os aparece este mensaje, NO lo canceléis.

Ahora extraemos el archivo .rar que nos hemos descargado a una carpeta y posteriormente ejecutamos la aplicación.









A continuación seleccionaremos la placa. Para ello necesitamos leer en nuestro chip de la placa el texto escrito. Nos dirigimos a Tools->Board y seleccionamos:

Si utiliza el chip ATmega168 (el cual es el antiguo) seleccionaremos Arduino Diecimila, Duemilanove, or Nano w/ ATmega168.
Si por el contrario empleamos el chip ATmega328 seleccionaremos la opción Arduino Duemilanove or Nano w/ ATmega328.

El chip del que yo dispongo es el antiguo (ATmega168), por lo que seleccionaré la primera opción.


A continación seleccionaremos el puerto serie. Vamos a Tools->Serial Port. COM1 Y COM2 se reservan para puertos serie de hardware, por lo que seguramente sea el COM3 u otro mayor. Para asegurarnos, desconectaremos la placa y volveremos a mirar el menú. El puerto de la placa ya no aparecerá en la lista. Por tanto ese será el que hayamos de seleccionar.


El último paso es subir el sketch a la placa. Para ello simplemente pulsaremos el botón "Upload" (marcado en rojo), Esperamos unos segundos mientras parpadean los leds RX y TX de la placa. Una vez se haya subido el código aparecerá el mensaje "Done uploading" en la barra de estado.


Si ocurre esto es que ¡lo hemos conseguido! Ya tenemos listo Arduino y el software para poder utilizarlo. Ahora sólo quedará la parte más divertida. Desarrollar nuestros propios códigos. ¡Mucha suerte!

Gracias por leer este tutorial del Grupo 22 Media. Sigue atento porque continuaremos subiendo tutoriales y avanzando noticias interesantes sobre nuestro proyecto.

Un saludo amigos.

martes, 12 de noviembre de 2013

Tutorial para utilizar Java OpenCV con Eclipse

Tras haber realizado el tutorial anterior de extraer OpenCV en nuestro PC y haber modificado el PATH, seguimos con el tutorial para poder usar esta librería con Java en Eclipse. El tutorial anterior podéis encontrarlo aquí.

En primer lugar os mostramos el videotutorial de lo que está explicado más abajo. Podéis seguir los pasos de cualquiera de los dos, ¡son los mismos!



 En primer lugar lo que debemos hacer es añadir la librería a Eclipse. Para ello lo que haremos tras abrir Eclipse será seleccionar la pestaña "Window" y vamos a "Preferences".




A continuación se nos desplegará la ventana de Preferencias. A la izquierda podemos observar un menú. Seleccionamos Java -> Build Path -> User Libraries.



Le damos a New y en la ventana que se nos abre escribimos el nombre que deseamos para nuestra librería. Yo en mi caso he puesto: OpenCV-2.4.6





Una vez la tenemos creada seleccionamos "Add External JARs".



Ahora vamos a nuestra ruta donde hemos extraído el opencv. En mi caso como os recuerdo es C:\opencv\. Ahí buscamos el archivo ejecutable JAR. Lo encontraréis en la siguiente ruta. C:\opencv\build\java\ y seleccionamos opencv-246.jar.

A continuación se nos abrirán una serie de opciones. Pinchamos en "Native library location: (None)" y clickamos en "Edit".


Se nos abrirá una nueva ventana. Seleccionamos "External Folder" y buscamos para seleccionar la carpeta C:\OpenCV-2.4.6\build\java\x64. Si tienes un sistema de 32 bits necesitarás seleccionar la carpeta x86 en lugar de x64.

Aceptamos todo y ya tenemos la librería en Eclipse.

¿Cómo podemos seleccionarla a la hora de configurar nuestro proyecto?

Para ello vamos a File -> New -> Java Project. Escribimos el nombre del proyecto (el que sea) y le damos a "Next".

Se nos abre otra ventana con cuatro pestañas. Seleccionamos "Libraries" y pinchamos en "Add Library".




Seleccionamos "User Library" y pinchamos en "Next".



Marcamos la librería de opencv y finalizamos.



Ahora debería aparecer algo así:




Creamos el proyecto y... ¡eso es todo! Seguiremos con más tutoriales interesantes sobre programación, arduino, etc. ¡Atentos a las redes sociales!

Nuestro Twitter - Nuestro Facebook


lunes, 11 de noviembre de 2013

Objetivos principales del Proyecto G22

¿Cuáles son principalmente los objetivos de este proyecto?

El proyecto consiste en la creación de un prototipo de un animatronic basado en arduino el cual a través de una webcam buscará un objeto al que se la haya colocado un marcador y seguirá sus movimientos sin dejar de grabar y apuntándole con un láser para identificar el objeto que se ha seleccionado.

Es un proyecto sin objetivo de ser comercializado (a corto plazo), pero que se podría introducir dentro del mundo de la seguridad, ya que tendría controlado en todo momento el objeto que nosotros decidamos.

El animatronic que se pretende crear realizará unas acciones concretas :

Detectar mediante la webcam cual es el objeto seleccionado para ser seguido a través de un marcador que tendrá éste colocado.

Seguir lo movimientos del objeto con la cámara y el láser, los cuales girarán sobre si mismos gracias a un servomotor que conectaremos con la placa arduino.

Aprovechando la gran cantidad de posibilidades que nos ofrece la placa arduino introduciremos también una alarma que aumentará la frecuencia de encendido y apagado de un led a medida que nos acercamos a la webcam.

¿Por qué escogemos un objeto con un marcador y no reconocimiento facial? ¿No es más útil el reconocimiento facial?

A la hora de elegir entre realizar una o las dos cosas hemos pensado que el reconocimiento facial podría ser más importante y de mayor utilidad. No obstante, en cuanto nos ponemos a indagar un poco por la red nos damos cuenta que llevar a cabo reconocimiento facial con OpenCV es muy sencillo. Hay muchísimas webs con información y códigos que hacen todo el trabajo por ti.

Es por esto que hemos pensado que ponerle un marcador a un objeto es muy práctico para determinadas aplicaciones y en internet no se encuentra demasiada información. Por ello mientras desarrollamos nuestro proyecto y trabajamos con arduino vamos a ir contando todo lo que hacemos, para que podáis seguir vosotros los mismos pasos y conseguir los mismos objetivos.

Además iremos haciendo tutoriales de temas relacionados con el arduino y otros interesantes. Como podéis ver ya hemos empezado... Estar atentos a las redes sociales que seguiremos actualizando!

Facebook: Grupo 22 Media
Twitter: Grupo 22 Media


miércoles, 6 de noviembre de 2013

Tutorial para instalar OpenCV en Windows.

Buenas tardes amigos. Para todos aquellos que no sabéis cómo o que habéis tenido problemas, hoy vamos a enseñarles un tutorial para poder instalar OpenCV en Windows y poder utilizarlo con Eclipse de una manera sencilla y rápida.

En primer lugar os mostramos el videotutorial y más abajo tenéis el mismo tutorial escrito. Podéis seguirlo como queráis.


En primer lugar necesitaremos descargar la librería de la página web oficial. Podéis descarla desde aquí.


Desde ahí elegimos nuestro sistema operativo (que será Windows) y la versión que deseemos descargar. Nosotros recomendamos instalar la última que NO ESTÉ EN VERSIÓN DE PRUEBA (BETA). El archivo no suele pesar mucho (unos 300 MB).

Una vez se ha descargado el archivo lo ejecutamos y nos pedirá que seleccionemos el lugar donde deseamos que se extraiga.



En el lugar que hayamos seleccionado podremos encontrar los directorios con los archivos. En nuestro caso lo hemos instalado en C:/, por tanto podemos encontrar los directorios de OpenCV en C:/OpenCV.

A continuación lo que debemos hacer es registrar los directorios de OpenCV en las variables del sistema. Para realizarlo, dependiendo en que versión de Windows estemos trabajando, lo haremos de una manera o de otra.


El tutorial está orientado hacia Windows 8 pero si trabajáis en otras versiones de Windows no cambia mucho el proceso, así que seguramente os sirva.

Desplegamos el menú de la derecha de Windows y seleccionamos "Buscar". Dentro escribimos: "variables del sistema" y seleccionamos la pestaña de "Editar variables de entorno del sistema".





Clickamos en "Variables de entorno".


Buscamos la palabra PATH y pinchamos encima. Vamos a la ventana "Editar" y modificamos PATH agregando a la ubicación de la clase el "build" de OpenCV. AGREGAR, NO SUSTITUIR!!!!. En mi caso sería: C\xxxxxxxx\xxxxxxx\xxxxx ;C:\opencv;C:\opencv\build;



Si no existe PATH  lo que debemos hacer es añadir una variable nueva y poner PATH como nombre y la ubicación de "build" de OpenCV.




Ahora ya tenemos el OpenCV instalado en nuestro Windows. En el próximo tutorial os enseñaremos cómo hacerlo funcionar con Eclipse. Podéis continuar aquí.


martes, 5 de noviembre de 2013

Hacer sonar una melodía con Arduino

Buenas a todos, hoy les traemos después de un tiempo sin actualizar un sencillo tutorial sobre arduino que sale en el libro de ejemplos. Tras un período en el que hemos estado un poco ocupados volvemos a jugar con la placa arduino, y esta vez os enseñamos cómo hacer funcionar una melodía con la placa. Para llevarlo acabo necesitaremos un elemento piezoeléctrico, los cables de conexiones y el programa.


Los distintos elementos los colocaremos de la siguiente manera:





El código que hemos de ejecutar es el siguiente:


int speakerPin = 9;

int length = 15; // the number of notes
char notes[] = “ccggaagffeeddc “; // a space represents a rest
int beats[] = { 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 2, 4 };
int tempo = 300;

void playTone(int tone, int duration) {
  for (long i = 0; i < duration * 1000L; i += tone * 2) {
    digitalWrite(speakerPin, HIGH);
    delayMicroseconds(tone);
    digitalWrite(speakerPin, LOW);
    delayMicroseconds(tone);
  }
}
void playNote(char note, int duration) {
  char names[] = { 'c', 'd', 'e', 'f', 'g', 'a', 'b', 'C' };
  int tones[] = { 1915, 1700, 1519, 1432, 1275, 1136, 1014, 956 };
  
  // play the tone corresponding to the note name
  for (int i = 0; i < 8; i++) {
    if (names[i] == note) {
      playTone(tones[i], duration);
    }
  }
}
void setup() {
  pinMode(speakerPin, OUTPUT);
}
void loop() {
  for (int i = 0; i < length; i++) {
    if (notes[i] == ' ') {
      delay(beats[i] * tempo); // rest
    } else {
      playNote(notes[i], beats[i] * tempo);
    }
    
    // pause between notes
    delay(tempo / 2);
  }
}

El resultado será el siguiente:



Iremos haciendo más y más tutoriales, ¡estar atentos!

jueves, 24 de octubre de 2013

Array de LEDs

El primero de nuestros pequeños programas para aprender arduino es éste. Una vez hemos conseguido hacer parpadear un led, algo muy sencillo con simplemente cuatro lineas de código y un par de conexiones, hemos llevado a cabo uno de los programas básicos de aprendizaje que nos ayudará a profundizar en el código de arduino, se trata de un array de leds. Esta vez hemos conectado 8 leds. Para que podáis ir empezando os facilitamos cómo llevarlo a cabo. Es muy sencillo.

Aquí os dejamos una foto de las conexiones:








Y aquí podéis encontrar el código del programa: CÓDIGO




Resultado:







miércoles, 23 de octubre de 2013

Introducción al Arduino

Arduino es una plataforma de hardware libre, basada en una placa con un microcontrolador y un entorno de desarrollo, diseñada para facilitar el uso de la electrónica en proyectos multidisciplinares.

El hardware consiste en una placa con un microcontrolador Atmel AVR y puertos de entrada/salida.4 Los microcontroladores más usados son el Atmega168, Atmega328, Atmega1280, ATmega8 por su sencillez y bajo coste que permiten el desarrollo de múltiples diseños. Por otro lado el software consiste en un entorno de desarrollo que implementa el lenguaje de programación Processing/Wiring y el cargador de arranque (boot loader) que corre en la placa.

Placa Arduino que se nos ha proporcionado


Desde octubre de 2012, Arduino se usa también con microcontroladoras CortexM3 de ARM de 32 bits , que coexistirán con las más limitadas, pero también económicas AVR de 8 bits. ARM y AVR no son plataformas compatibles a nivel binario, pero se pueden programar con el mismo IDE de Arduino y hacerse programas que compilen sin cambios en las dos plataformas. Eso sí, las microcontroladoras CortexM3 usan 3.3V, a diferencia de la mayoría de las placas con AVR que usan mayoriamente 5V. Sin embargo ya anteriormente se lanzaron placas Arduino con Atmel AVR a 3.3V como la Arduino Fio y existen clónicos de Arduino Nano y Pro como Meduino en que se puede conmutar el voltaje.

Arduino se puede utilizar para desarrollar objetos interactivos autónomos o puede ser conectado a software del ordenador (por ejemplo: Macromedia Flash, Processing, Max/MSP, Pure Data). Las placas se pueden montar a mano o adquirirse. El entorno de desarrollo integrado libre se puede descargar gratuitamente.

Arduino es una plataforma de electrónica abierta para la creación de prototipos basada en software y hardware flexibles muy fáciles de usar, debido a que el IDE con el que trabaja es fácil de aprender a utilizar, y el lenguaje de programación con el que trabaja es simple, pues se creó para artistas, diseñadores, aficionados y cualquier interesado en crear entornos u objetos interactivos. Arduino puede tomar información del entorno a través de sus pines de entrada de toda una gama de sensores y puede afectar aquello que le rodea controlando luces, motores y otros actuadores.

El microcontrolador en la placa Arduino se programa mediante el lenguaje de programación Arduino (basasdo en Wiring) y el entorno de desarrollo Arduino (basado en Processing). Los proyectos hechos con Arduino pueden ejecutarse sin necesidad de conectar a un ordenador, si bien tienen la posibilidad de hacerlo y comunicar con diferentes tipos de software (p.ej. Flash, Processing, MaxMSP). Las placas pueden ser hechas a mano o compradas montadas de fábrica; el software puede ser descargado de forma gratuita. Los ficheros de diseño de referencia (CAD) están disponibles bajo una licencia abierta, así pues eres libre de adaptarlos a tus necesidades.

El proyecto Arduino recibió una mención honorífica en la categoría de Comunidades Digital en el Prix Ars Electrónica de 2006.

Fuente: Wikipedia

Comienza el proyecto G22


Comenzamos este proyecto con mucha ilusión y con ganas de alcanzar nuestros objetivos. En esta primera semana estamos introduciéndonos en el mundo de arduino. Desde el principio vamos observando la gran cantidad de posibilidades que nos ofrece la placa y somos muy optimistas de cara al futuro con este proyecto. Muchas gracias a todos los que nos están apoyando desde este momento. Estén atentos porque empezamos, si parpadean se lo pierden.

Componentes del Grupo 22 Media