en el link siguiente se ponen los archivos tanto de android como del microcontrolador usados para el proyecto, hay varias carpetas cada una indica el proceso llevado para realizar el proyecto, explicando esto es el numero inicial "#-" indica que entre menor sea este más fue los primeros archivos del proyecto hasta llegar a los últimos que son 8- iconos cámara, selección de color con frenado y 9- pwm half y full, en donde está el archivo en android y para freedom respectivamente.
las demás carpetas como se dijo es la evolución del proyecto donde mencionaré cada uno acontinuación
0- uart_freedom (freedom): Es la primera vez que conectamos el shield de bluetooth con el microcontrolador y poder prender leds mediante instrucciones por bluetooth desde el celular con la aplicación descargable de google play "blueterm".
1- conexion bluetooth serial, y seleccion de dos colores PDI (android): acá esta el programa Blueterm para android y el programa para seleccionar UN color también en android, son programas separados.
2- programas fuicionados (android): luego de un fuerte trabajo y el entender el funcionamiento de los hilos en android se logra poder pasar entre actividades del "blueterm" al "colorblob detector" los cuales son los programas ejemplo con los que iniciamos el proyecto.
3- dos colores centros y linea (android): por fin comenzamos a trabajar el procesamiento de la imagen sobre el programa ejemplo, usando librerías de openCV logramos detectar otro color y el centro de cada color, además imprimimos en pantalla el centro dibujando un circulo indicando este.
4-Detección y envío de datos (android): se logra hacer la detección del carro, y se logra enviar ordenes por bluetooth en donde el carro gira hasta encontrarse en linea recta con el punto en el centro de la pantalla, hasta el momento es muy torpe y hay muy poco control.
5- giro inteligente (android): se logra indicar al carro que gire a la izquierda o a la derecha según la cercanía al punto, así se logra un mejoramiento importante para que el carro llegue al punto de destino.
6- cámara completa (android): en todo el proceso anterior se estaba trabajando con la imagen en el celular pequeña ya con una imagen completa de la cámara se puede temer una visión aun mayor y el carro puede moverse con mayor libertad.
7- menú cámara y cambio de destino (android): hasta el momento el punto de destino del carro ha sido el centro de la pantalla, acá se logra cambiar de destino al cual el carro puede ir, pero para mejorar esto primero se seleccionan los colores los cuales indican la posición y dirección del carro, al dar un tercer toque el carro va hasta el punto indicado en la pantalla, para poder seleccionar de nuevo los colores indicadores, se crea un menú para poder volver.
8- iconos cámara, selección de color con frenado (android): se crean iconos, se mejora el frenado , también se mandan instrucciones en PWM para cuando esté lejos del punto el carro acelera y cuando esta cerca su velocidad es reducida mejorando bastante el control del carro.
9- pwm half y full (Freedom): con las instrucciones enviadas por el celular falta que esas instrucciones sean comprendidas por el carro y además generar el PWM así se programa en la freedom.
10- cambio pakete e inicio de gesture (android): se cambiar por fin el pakete se hacen ajustes pequeños y comenzamos a trabajar para poder generar un trazo sobre la pantalla para que el carro siga el recorrido trazado.
el link en donde se encuentran todos estos archivos bien comentados están en el siguiente
https://www.dropbox.com/sh/nzhzkae7ouwm4fu/0l6-RR9ile
dudas comentarios estamos pendientes para solucionar dudas acerca del proyecto.
jueves, 1 de agosto de 2013
Informe IEEE proyecto
Del proyecto hasta el punto que se ve en el vídeo anterior publicado en youtube se hizo un informe en formato IEEE explicando el funcionamiento del carro y los dispositivos involucrados, en el link a continuación se encuentra el informe en DropBox para el que quiera verlo.
https://www.dropbox.com/sh/nzhzkae7ouwm4fu/GaEU5Y1uiT/informe%20IEEE%20V1.0.pdf
martes, 16 de julio de 2013
VÍDEO DE AVANCE DEL PROYECTO
Bueno el carro ya cogió forma, el programa ya esta muy completo y este vídeo muestra un resultado del proyecto
http://www.youtube.com/watch?v=5sAjbJH8dc4
http://www.youtube.com/watch?v=5sAjbJH8dc4
miércoles, 12 de junio de 2013
Comunicación entre Bluetooth Bee y Microcontrolador KL25Z
Se creará un programa que, dependiendo del número recibido via Bluetooth, prenda o apague un LED.
La tarjeta FREEDOM trae integrado un LED RGB, el cual puede ser accedido mediante los pines 18 y 19 del puerto B (el primero rojo, el segundo verde) y por el pin 1 del puerto D, que corresponde al azul. Con base a esto, se crea el proyecto en CodeWarrior v. 10.4 con ayuda del Processor Expert que integrará como componentes la UART0, y tres bits para activar los respectivos colores del LED.
En la configuración de la UART0, (que se añade al proyecto utilizando el componente de serial asíncrono) se debe escoger el pin 1 del puerto A como el pin de recepción, y el pin 2 del mismo puerto como el pin de transmisión y la tasa de transmisión de 9600 baudios. Para la configuración de los 3 bits que se agregaron como componentes, se escogen los respectivos pines del LED RGB previamente descritos. No hay que olvidar generar el código de Processor Expert una vez realizada esta configuración.
Utilizando el método "RecvChar" de la UART, recibimos el caracter enviado por Bluetooth, se aconseja verificar el valor de retorno de esta función antes de usar el caracter que esta entrega. Posteriormente se compara el caracter recibido y según el número al que corresponda, se alterna uno de los colores del LED con ayuda del método "NegVal" que se encuentra en cada bit añadido al proyecto.
Finalmente, el Bees Shield debe tener el suiche en Atmega, el Bluetooth Bee debe estar en el espacio del Bee 2 y estar en modo Slave.
A continuación se puede ver el funcionamiento del programa:
lunes, 10 de junio de 2013
Comunicación entre Bluetooth Bee y PC
A continuación se agrega un link en el que se puede consultar mayor información acerca de la tarjeta FRDM-KL25Z: http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=FRDM-KL25Z
Se utilizará el Bees Shield, de Seeed Studio para conectar el módulo Bluetooth Bee al microcontrolador: http://www.seeedstudio.com/wiki/Bees_Shield
Y finalmente, el módulo Bluetooth Bee, de Didácticas Electrónicas: http://www.didacticaselectronicas.com/index.php?page=shop.product_details&flypage=flypage.tpl&product_id=1610&category_id=42&keyword=bluetooth+bee&option=com_virtuemart&Itemid=134
Se hicieron varias pruebas con el Bees Shield y el módulo Bluetooth para lograr comunicación con el computador. A partir de estas pruebas se concluyó que el Bluetooth Bee se debe ubicar en el espacio del Bee 2 del Bees Shield y el suiche debe ir en USB; además, el KL25Z no debe estar utilizando los pines de transmisión y recepción correspondientes (marcados como Rx y Tx).
El módulo está configurado por defecto para trabajar a 9600 baudios, responde al nombre "Bolutek", y debe estar configurado como Slave, (moviendo un suiche que tiene) para que pueda ser reconocido y contactado por el otro dispositivo, que en nuestro caso será el celular
Al hacer lo anterior, se podrá consultar en una terminal serial del PC lo que el módulo Bluetooth recibe del celular. El puerto serial es el mismo puerto OpenSDA que se usa para programar el microcontrolador. Para enviar el mensaje al módulo Bluetooth se utilizó la siguiente aplicación para Android: https://play.google.com/store/apps/details?id=es.pymasde.blueterm
martes, 14 de mayo de 2013
Preparación del estudio de Android
Para llegar al funcionamiento del proyecto se requiere un buen conocimiento en android, así mismo en java y programación orientada a objetos, para esto comenzaremos con tomar unos vídeos del MIT los cuales nos darán buenas bases para el inicio de la parte de la cámara y la transferencia de los datos por bluetooth.
la pagina donde se encuentran los vídeos es la siguiente:
todos los archivos como presentaciones, imágenes, y los programas desarrollados a través del curso se pueden obtener de la siguiente dirección
domingo, 5 de mayo de 2013
Descripción del proyecto
¿En qué consiste?
El título del Blog es muy explicativo, se trata de desarrollar una aplicación en Android que se comunique via Bluetooth a un carrito y le indique cómo movilizarse; esto como proyecto final de la materia "Sistemas Embebidos". Para que el carrito entienda la instrucción del celular, será necesario utilizar un microcontrolador con soporte Bluetooth el cual le indicará a la parte de potencia cómo funcionarán los motores del carrito.
Por ahora, se propone utilizar el microcontrolador de freescale Kinetics KL25Z que viene integrado en la tarjeta freedom. Esta tarjeta es fácilmente integrable con el sistema arduino, lo cual es muy beneficioso ya que el módulo Bluetooth - que esperamos conseguir prontamente - que traduce al protocolo del serial es también de arduino. Además la tarjeta es fácilmente portable y de baja potencia.
En cuanto a la aplicación de Android, pues inicialmente se pretende manejar unos botones como en un control remoto, más adelante se puede pensar en crear trayectorias con el dedo o mediante la cámara indicar al carrito dónde debería estar.
En cuanto a la aplicación de Android, pues inicialmente se pretende manejar unos botones como en un control remoto, más adelante se puede pensar en crear trayectorias con el dedo o mediante la cámara indicar al carrito dónde debería estar.
Suscribirse a:
Entradas (Atom)

