sábado, 18 de abril de 2015

DroneCar S.L.

Somos Axular Iparragirre, David Cartón y Borja De La Iglesia, nuestro grupo de estudios es el responsable del proyecto de crear un coche dirigido mediante un teléfono móvil. Para ello hemos utilizado un coche que ya tenia uno de nosotros en casa y el cual hemos desmontado para hacerle los cambios planteados para sacar adelante el proyecto.





Principalmente nos hemos dedicado a la programación y a la creación de la placa que hará que funcione el coche.

A continuación explicaremos el hardware y el software que hemos utilizado para crear nuestro proyecto.




HARDWARE

Para empezar, hemos creado nosotros  mismos nuestra placa, utilizando el programa ISIS y después el ARES para poder crear la PCB con la cual funcionamos. Le conectaremos la Raspberry Pi, que es la que hace que funcione la conexión wifi a la cual nos conectamos con el móvil, es la que transmite la información a nuestra placa. En ella esta el Atmega328p, el cual hemos programado con Arduino, donde damos la ordenes para que funcionen los diferentes elementos conectados a la placa.



Para las pruebas antes de iniciar con nuestra placa hemos utilizado un Arduino UNO, del cual hemos sacado las ideas principales para poder hacer después nuestra placa.
En el siguiente enlace podréis encontrar todas las características del Arduino UNO


A continuación diseñamos nuestra placa.


       El Micro-controlador ATMEGA328P, es el elemento principal de nuestro proyecto, gracias a el podremos controlar todos los elementos salvo la cámara que estará conectada a la Raspberry pi, con la cual mediante el teléfono móvil mandaremos la distintas ordenes que interpretara nuestro Atmega.



Dependiendo de la señal que le llegue a nuestro micro-controlador, activara distintas salidas con las que haremos funcionar, luces, motores, modulo de audio y los sensores, dependiendo de su programación.
Para que todo esto llegue a funcionar, en nuestra placa junto con el micro-controlador, tendremos  un regulador LM3940 para conseguir una salida de 3,3v, que sera de donde se alimentara el somo14D, gracias al cual podremos seleccionar y reproducir cualquier reproducción de audio que nosotros queramos.



El botón de Reset es para Resetear el micro -controlador. El oscilador sirve para que a la hora de programar podamos calcular el tiempo que tarda en realizar cada operación, para conseguir una onda constante se filtra la señal por dos condensadores. El condensador que esta en la alimentación del micro controlador es para evitar los picos de tensión repentinos que pueden llegar a aparecer. El led del Power indicara cuando este funcionando el ATMEGA y el otro led será el que encenderá cuando se active alguna de las salidas.
Los motores están conectados al Atmega mediante el circuito integrado L293D, con el cual nos permite controlar la potencia de los motores bi-direccionales con los dos puentes H que forma, para ayudar a su frenada mediante su propia inercia y que no frenen bruscamente evitando cualquier posible daño en ellos.






Para evitar que el coche se choque contra los obstáculos, no nos vale solo con el l293d sino que hemos introducido dos sensores sfr05, son sensores que funcionan mediante ultrasonido, los cuales utilizan los pines echo y trigger para leer la distancia que hay hacia el obstáculo y si es inferior a la de seguridad se pararan los motores.

Para conseguir que todo esto funcione es necesario tres tipos de programación, los cuales explicaremos en el siguiente apartado.

SOFTWARE

Para que nuestro proyecto funcione hemos seguido unas pautas a la ora de lograr su funciona miento. Lo primero que hemos hecho a sido la programación de los elementos por separado y probarlos con el Arduino.
Ejemplo:

Una vez probados los componentes del proyecto nos introducimos a la programación en Python, para poder hacer luego la conexión Tx-Rx entre la Raspberry Pi y el Arduino y así probar que la comunicación entre el Atmega y la Raspberry Pi se establece con el único problema de un ligero retardo entre el envío de la orden y su ejecución.


Después de que todos los programas funcionen bien, los juntamos en uno solo y nos ponemos con la programación en android mediante la aplicación app inventor 2, a la cual se accede por Internet, esta consiste en una programación por bloques con la cual mandamos las señales a la Raspberry Pi, la cual los interpretara y mandara las ordenes al Atmega.



Con el simulador que trae el programa logramos los mismos resultados que si lo hiciéramos mediante el móvil.
Aquí esta el enlace para bajar la aplicación --> http://goo.gl/N5SDQl



PRODUCTO:


Aquí os dejamos los enlaces de los programas:


   Este es el programa de Arduino que con el que esta programado el Atmega  -- http://goo.gl/FUt9pO

   Este es el programa con el que mediante urls le indicamos a la Raspberry Pi que parte del programa tiene que ejecutar -- http://goo.gl/4OQtFt
   Programa con el que esta programada la Raspberry Pi  -- http://goo.gl/T7ooGS
 

No hay comentarios:

Publicar un comentario