Radarduino

 RADARDUINO
         ~Sistema Empotrados y de Tiempo Real~


Grupo 23:
Manuel Belver
Prieto
Vanesa Maseli
Martín
Maria Santiago
Corral

Índice

1. Introducción
2. Componentes y precio
3. Esquema de conexión
4. Proceso de montaje
5. Funcionamiento
6.
Problemas y soluciones

7. Posibles mejoras
8. Anexos


1. Introducción

Radarduino es el
nombre que recibe el proyecto por el que nuestro grupo de trabajo se ha
decantado. Como se puede intuir a través de su nombre, se trata de un radar de
velocidad para vehículos.
La decisión de
llevar a cabo dicho proyecto y no otro, se tomó por unanimidad de todos los
componentes del grupo. Nos decantamos por esta opción ya que no resultaba
interesante el hecho de tratarse de una situación cotidiana y poder ver de forma
directa su aplicación real, además de que contribuye a salvar vidas y
accidentes ya que presiona más a respetar los límites de velocidad.
Nuestro radar está
pensado para ser utilizado en zonas de propiedad privada tales como industrias,
parkings, urbanizaciones privadas, entre otros. El motivo de esto es que
nuestro proyecto está diseñado para carreteras unidireccionales.
Además, nuestro Radarduino
no tiene un fin sancionador sino que esta ideado con el objetivo de garantizar
la seguridad vial dentro de un recinto privado.

2. Componentes y precio

COMPONENTE
CANTIDAD
PRECIO
UNITARIO
GASTOS DE ENVÍO
PRECIO TOTAL COMPONENTE
2
4,13 €
8,26 €
1
3,75 €
3,75 €
1
2,70 €
1,49 €
4,19 €
1
8,79 €
2,10 €
10,89 €
10
2,36 €
2,36 €
1
2,08 €
2,08 €
1
1,08 €
0,90 €
1,98 €
65
1,82 €
0,65 €
2,47 €
1
3,18 €
3,18 €
15
2,38 €
2,38 €
40
2,95 €
2,95 €
Materiales maqueta
20 €
20 €
PRECIO TOTAL
64,49 €

Como podemos observar en la tabla el precio total de nuestro
proyecto es de 64.49
€.
3. Esquema de conexión


  • Diodos láser:
    • Necesario:
      • 2 diodo láser LED
      • 2 resistencias de 100 Ω
      • Cable
    • Proceso de montaje e
      incorporación en práctica
      • Se unen el diodo láser y la resistencia. El
        polo positivo de cada LED se une con el pin (en nuestro proyecto, el pin
        digital 26 y el 28, respectivamente). El polo negativo se une a GND (tierra).

  • LDR (fotorresistencias)
    • Necesario:
      • 2 fotorresistencias LDR
      • 2 resistencias de 10K
      • Cable
    • Proceso
      de montaje e incorporación en práctica:
      • Para poder usar la fotorresistencia usamos un
        divisor de tensión clásico, para ello unimos la fotorresistencia y la
        resistencia. Conectamos la pata sobrante de la resistencia a GND (tierra) y la
        pata de la fotorresistencia a VCC (+5V).
      • En la unión entre la resistencia y la LDR
        (fotorresistencia), soldamos un cable  que irá hasta nuestro pin de Arduino (A0,
        en caso de la primera y A1, en la segunda).



  • Modulo wifi ESP8266:
    • Necesario
      • Módulo
        WiFi ESP8266
      • Cables
    • Proceso de montaje e incorporación en
      práctica
      • Existe
        mucha bibliografía y discusiones sobre el montaje y conexiones de este módulo
        con Arduino: divisores de tensión, fuente de alimentación externa, etc.
      • Nosotros
        hemos seguido las conexiones que hemos encontrado en el siguiente esquema, con
        modificaciones, ya que el Arduino utilizado por nosotros se trata de un Arduino
        Mega.
      • Las
        conexiones que aparecen rojas en el dibujo se conectan a 3.3V y la conexión
        GND, lógicamente a GND. Los mayores cambios se aplican tanto a TxD (conectado a
        RX1, pin 18 en Mega) y RxD (coectado a TX1, pin 19 en Arduino Mega), para que
        podamos comunicarnos con este módulo por el Serial1.

  • Pantalla LCD:
    • Necesario:
      • Pantalla LCD
      • Módulo I2C controller
      • Cables
    • Proceso
      de montaje e incorporación en práctica:
      • Soldamos la pantalla LCD al módulo I2C y como
        resultado sólo tendremos 4 pines finales.
      • Estos pines son VCC, GND, SDA y SCL que van a
        los pines con el mismo nombre en Arduino Mega. Los pines SDA y SCL son el 20 y
        el 21, respectivamente.

  • Matriz LED RGB 8×8
    • Necesario:
      • Matriz LED RGB 8X8
      • Soldador de estaño y estaño
      • Resistencias
      • Cable
    • Proceso
      de montaje e incorporación en práctica:
      • Queremos controlar la matriz solamente con 4
        pines, por lo que soldamos o unimos los pines de la matriz de tal forma que con
        sólo estos 4, podamos controlar que se encienda entera de un color RGB (o
        combinaciones de ellos).
      • Para ello, analizamos el esquema de la matriz.

                                       

        • Podemos observar que los pines
          17,18,19,20,29,30,31 y 32 son los que alimentan el positivo de los diodos. Se
          trata de los pines que apagan y encienden las filas de la matriz
        • Los pines 9,10,11,12,13,14,15 y 16, controlan
          las columnas del color rojo (si están en   LOW se encenderá el color) .
        • Los pines 1,2,3,4,5,6,7 y 8, controlan las
          columnas del color azul (si están en LOW se encenderá el color).
        • Los pines 28,27,26,25,24,23,22 y 21,
          controlan las columnas del color verde (si están en LOW se encenderá el color).
        • Cada uno de estos colores se une a una
          resistencia y se unen a los pines correspondientes de la matriz.
4.Proceso de montaje

Para poder realizar la demostración de nuestro
proyecto Arduino hemos elaborado una maqueta. En las siguientes fotografías se
pueden apreciar algunos de los pasos que hemos seguidos durante este proceso.

                

5. Funcionamiento
El proyecto consiste en
dos diodos láser, uno que detectara la entrada del vehículo y otro  la salida. Ambos diodos  nos aportarán los datos necesarios para el
cálculo de la velocidad a la que circula dicho vehículo. Una vez que el automóvil
pasa por el último diodo laser, se mostrará por la pantalla LCD la velocidad a
la que circula  y, a través de una matriz
de LEDs, se mostrara un color indicativo dependiendo de la velocidad a la que
circula. Este color es rojo si supera la velocidad del límite establecido,
verde si circula por debajo del límite y amarillo si circula a un margen del
10% superior o inferior al límite.
Además, hemos hecho que Arduino
funcione como un servidor web a través delmódulo ESP8266, de tal manera que la
persona que se encarga de controlar el radar podrá cambiar el límite velocidad,
el espacio y poder encender o apagar el radar.

6.
Problemas y soluciones

Como es habitual en el
desarrollo de cualquier proyecto nos hemos tenido que enfrentar a diversos
problemas que nos han ido surgiendo a lo largo de todo el proceso y buscar una
solución optima para los mismos.
A continuación vamos a
explicar los problemas más relevantes que hemos tenido:

  • En un principio no podíamos controlar la
    velocidad máxima, es decir,  era una
    constante y eso no siempre es así dado que dependiendo las circunstancias puede
    variar. Así mismo, tampoco podíamos variar el espacio ni apagar o encender el
    radar a voluntad. La solución que hemos desarrollado a esto fue crear un
    servidor web a través del módulo ESP8266 de tal manera que estos valores se
    envíen a través de un formulario al programa de Arduino y pueda ser manejado
    por la persona encargada de controlar el radar.
  • No había ninguna manera de avisar al
    conductor sobre si su  velocidad  es apropiada o no de acuerdo al límite de
    velocidad permitido. Como solución a esto decidimos usar dos matrices LED RGB
    que se encenderán de color rojo, verde o amarillo dependiendo de la velocidad a
    la que circule.
  • Para usar las dos matrices LED RGB
    necesitábamos 64 pines digitales y Arduino no cuenta con tantos pines digitales
    por tanto una solución podría haber sido usar desplazadores de registro. Sin embargo,
    la mejor opción para nuestro caso es modificar la matriz para que se pudiera
    controlar con solo 4 pines pero reduciendo sus prestaciones, es decir, solo
    podremos encender la matriz entera del mismo color. Como nuestra idea es usar
    la matriz  a modo de semáforo es la mejor
    opción y, por tanto, la que hemos aplicado.
  • No trabajar con tipos de datos float ya que
    aumenta el tiempo de procesamiento. Como consecuencia de esto hemos modificado
    las operaciones del cálculo de velocidad y el coeficiente para que el resultado
    fuese un número entero.

7.
Posibles mejoras

Al analizar nuestro proyecto
una vez finalizado somos conscientes de que se podrían llevar a cabo una serie
de mejoras para optimizar su funcionamiento. 

Estas mejoras podrían ser
las siguientes.

  • Usar Radarduino en una carretera
    bidireccional. Para hacer esto habría que poner dos Radarduino, es decir, uno
    en cada carril.  Esto no sería óptimo ya
    que lo apropiado seria que una misma placa de Arduino controlase los dos
    carriles.
  • Todo vehículo que exceda el límite de
    velocidad será fotografiado por Radarduino. Para ello habría que conectar una
    cámara a Arduino.
  • Mientras se está mostrando la velocidad en el
    LCD y la matriz, Radarduino no detecta el paso de ningún coche. Para solucionar
    esto, podríamos usar multitarea mediante threads.


8.
Anexos

También te podría gustar...

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *