Mi coche conectado 2.0.1

Mi coche conectado 2.0

1. Introducción.

En una entada anterior “Transmisión de datos por infrarrojos en el automóvil. (Puesta en marcha del motor de combustión con mando a distancia)” pudimos ver como arrancar el coche con el canal de comunicación de infrarrojos. Comentamos que la transmisión de datos infrarrojos se utiliza en el automóvil para el desbloqueo y bloqueo de puertas (cierre centralizado) y apertura de verano.

Pues bien, en esta entrada, vamos a ver como arrancar el motor de combustión del coche y sonar el claxón utilizando como canal de comunicación bluethooh. “No son aplicaciones del coche real” o “sí”, pero como quiera que son atractivas al alumno, despierta su interés y aumenta la motivación, a la vez que se explica el tema de transmisión de datos, se realiza el montaje.

Arranque del coche con mando a distancia.

Bluethoot se utiliza en el automóvil para comunicar dispositivos móviles (teléfono, ordenador, tableta…) ó para comunicar distintos vehículos entre sí o con señales de tráfico.

En ¨Mi coche conectado 2.0″ hemos utilizado por una parte Arduino+modulo de comunicación bluethooh HC-05 y por otra un dispositivo móvil (en este caso tableta) con el sistema operativo Android.

Hemos implementado una aplicación con APP Inventor 2 para comunicar la tableta con Arduino, y en el vehículo, hemos colocado una “cablería paralela”, la cual es controlada por Arduino. Esta cablería, esta conectada a “terminal 15” (positivo de encendido, inyección y bomba de combustible eléctrica). “Terminal 50” (positivo de motor de arranque). Posivos de claxon y positivo de luces de carretera.

Básicamente, lo que hace Arduino es controlar el estado de cuatro reles. Cada uno de estos reles tiene una función distinta. Igualmente hemos utilizado el módulo de comunicación HC-05 de Arduino para establecer la comunicación.

2. La aplicación Android para controlar el vehículo.

Consta de una pantalla en la que aparece un botón para vincular el bluethooh del teléfono con el HC-05 de Arduino.

Por otra parte dispone de los cuatro botones que comentamos a continuación: 

  • Botón Contacto—Para el coche (controla terminal 15)
  • Botón  Arranque (50) (controla el positivo de arranque)
  • Bocina Al pulsarlo suena la bocina, al soltarlo de sonar
  • Rafagas, al pulsarlo enciende la luz de carretera, al soltarlo se apagan.

La aplicación manda vía bluethooh los siguiente comandos:

  • Contacto (+15) (terminal 15 on) (pulsación corta en el primer botón de la aplicación)
  • Arranque (+50) (terminal 50 on) (pulsando en el segundo botón) 
  • Paro (cortamos +15) (terminal 15 off) Pulsación larga en el primer botón de la aplicación.
  • Claxón (bocina on, bocina off) (pulsando su botón o soltándolo).
  • Ráfagas,(Ráfagas on, Ráfagas off) pulsando o soltando el botón de ráfagas.
Menú de control de coche.

2.1. Conexión teléfono-arduino. Aspecto de los botones.

Básicamente con estos bloques, conseguimos establecer la conexión teléfono-arduino y darle colorido al texto.

Sí no hay conexión, los textos de los botones aparecen en gris, mientras que sí se ha establecido la conexión, aparecen en rojo.

Igualmente, en el encabezado de la pantalla aparece el texto “No conectado al coche” si no se ha establecido la conexión y “Conectado al coche” si se ha establecido la conexión.

Para poner en marcha el vehículo, debemos realizar “Clic” sobre el botón “Contacto-Para el coche”.

De esta manera el móvil manda los comandos AT “Terminal 15 on”, arduino cerrará el relé pertinente y mandará +12 voltios de contacto.

Para parar el motor, hay que realizar una pulsación larga sobre este mismo botón. Se manda desde el móvil el comando AT “Terminal50 off” cortando arduino los +12 voltios de contacto.

Observese que el botón esta habilitado si el motor de combustión no esta en marcha.  

El botón de contacto

Obsérvese, que al soltar el pulsador “Arranque (50)” se deshabilita. Igualmente se colorea el fondo del botón de color amarillo.

Los botones de bocinas y ráfagas

Tanto el botón e ráfgas como el de bocina se comportan como simples pulsadores, es decir, no presentan función especial como lo hace el del “terminal 50”.

Mientras se mantiene pulsado el botón de bocina, el móvil manda vía bluethooh el texto “bocina on” y al soltar (botón no pulsado) el teléfono manda el texto “bocina off”, es decir, el botón actúa como un simple pulsador.

Nota: en el vehículo no se han realizado las conexiones eléctricas para activar las ráfagas (encendido de las luces de carretera)

Descrgate la aplicación si te interesa:

Archivos .aia y .apk de la aplicación y

ino de Arduino

3. El circuito eléctrico.

El circuito a montar es este.
Aspecto del circuito montado.

4. El código de arduino:

/* Mi coche conectado 2.0/

 

/* Mi coche conectado 2.0/

/*http://sistemaselectricosdelautomovil.com/
Arduino + Bluetooth + Arranque del vehículo*/

#include <SoftwareSerial.h>

//Librería que permite establecer comunicación serie en otros pins
//Aquí conectamos los pins RXD,TDX del módulo Bluetooth.

SoftwareSerial BT(10,11); //10 RX, 11 TX.

int Terminal15=4;
int Terminal50=5;
int bocina=6;
int Rafagas=7;
char cadena[255]; //Creamos un array de caracteres de 256 cposiciones
int i=0; //Tamaño actual del array

void setup(){
BT.begin(9600);
Serial.begin(9600);
pinMode(Terminal15,OUTPUT);
pinMode(Terminal50,OUTPUT);
pinMode(bocina,OUTPUT);
pinMode(Rafagas,OUTPUT);}

void loop(){
//Cuando haya datos disponibles
if(BT.available()){
char dato=BT.read(); //Guarda los datos carácter a carácter en la variable “dato”
cadena[i++]=dato; //Vamos colocando cada carácter recibido en el array “cadena”
//Cuando reciba una nueva línea (al pulsar enter en la app) entra en la función
if(dato==’\n’){
Serial.print(cadena); //Visualizamos el comando recibido en el Monitor Serial

//Rele Terminal 15
if(strstr(cadena,”Terminal15 on”)!=0)
{digitalWrite(Terminal15,HIGH); }
if(strstr(cadena,”Terminal15 off”)!=0){
digitalWrite(Terminal15,LOW);}

//Rele termianl 50
if(strstr(cadena,”Terminal50 on”)!=0){
digitalWrite(Terminal50,HIGH);}
if(strstr(cadena,”Terminal50 off”)!=0){
digitalWrite(Terminal50,LOW);}

//Rele bocina
if(strstr(cadena,”bocina on”)!=0)
{digitalWrite(bocina,HIGH);}
if(strstr(cadena,”bocina off”)!=0)
{digitalWrite(bocina,LOW);}

//Rele Rafagas
if(strstr(cadena,”Rafagas on”)!=0)
{digitalWrite(Rafagas,HIGH);}
if(strstr(cadena,”Rafagas off”)!=0)
{digitalWrite(Rafagas,LOW);}

BT.write(“\r”); //Enviamos un retorno de carro de la app. La app ya crea una línea nueva
clean(); //Ejecutamos la función clean() para limpiar el array
}
}
}
//Limpia el array
void clean()

{for (int cl=0; cl<=i; cl++)
{cadena[cl]=0;}
i=0;}

43 Comentarios en “Mi coche conectado 2.0.1
  1. Avatar Alvaro Guerrero dice:

    Hola, pasame tu paypal te voy a donar 10 euros porque me acabas de salvar la vida con el proyecto de final de cruso, gracias.

    • Sistemas Electrónicos del Automóvil Sistemas Electrónicos del Automóvil dice:

      Hola Alvaro. Gracias de antemano por tus intenciones,
      La página, actualmente tiene un carácter divulgativo y sin ánimo de lucro. Vamos, para mí es un pasatiempo.
      Me alegro de que te sirvan los contenidos para el proyecto. Supongo que estas terminado los estudios de Automoción.
      En cualquier caso, si te parece bien, me gustaría (cuando tengas tiempo) que comentases (aquí mismo) en que consiste tu proyecto, si es este mismo o has hecho alguna modificación, si te funciona o deja de funcionar, las dificultades encontradas...

      Un saludo, Jose Antonio.

      • Avatar Álvaro Guerrero dice:

        Hola José, todo el circuito y todo me funciona porque cuando Le doy alimentación se enciende todo el único problema es que el móvil no me detecta Bluetooth puede ser por la versión de Android o porque? Es urgente gracias

      • Avatar Álvaro Guerrero dice:

        O hay que poner un código aparte para el módulo o algo

        • Sistemas Electrónicos del Automóvil Sistemas Electrónicos del Automóvil dice:

          Claro está que el módulo de bluetooth necesita su código de control, tanto en la aplicación como en el programa de arduino.

          Tal y como los tienes en los archivos funciona correctamente. Ya sabes que si cambias aunque sea una coma en el software, dejará de funcionar.

          RECUERDA DESCARGAR los archivos, NO HAGAS UN COPIA Y PEGA.

          En cuanto la versión de Android, no tiene nada que ver.

          Verifica que has activado el bluetooth del móvil.

          Enlaza los dispositivos (teléfono y arduino)

          Una vez enlazados, te aparecerá en la pantalla en azul "conectado al coche"

          Espero te funcione.
          Un saludo.

          • Avatar Álvaro Guerrero dice:

            Hola,
            Ya he hecho todos esos paso, he descargado tu aplicacion y el código, el código lo puse en arduino y lo deje apagado sin alimentar durante 3 días, puede ser que haya perdido la memoria arduino o algo parecido?

          • Sistemas Electrónicos del Automóvil Sistemas Electrónicos del Automóvil dice:

            No, arduino graba en memoria el programa y a no ser que lo resetees (pulsando durante tres segundo, me parece recordar) o graves otro programa, el programa no se borra.
            Si te funciono una vez, revisa todas las conexiones (todo el cableado). Incluso desmontalo todo y vuelve a montarlo si fuese necesario.
            Es fácil que algún cablecillo no haga buen contacto.

          • Avatar Álvaro Guerrero dice:

            Hola de nuevo Jose Antonio, se que puedo ser un poco pesado... pero esque es bastante importante ya lo he desmontado montado todo de nuevo y nada sigue sin funcionar, el único problema que tengo es que no se enlaza móvil y modem bluetooth porque en la placa protoboard todo se me enciende incluido el módulo bluetooth, arduino y placa de reles. Si me pudieses mandar por correo tu skype o discord para intentar solucionar lo que puede ser te lo agradecería. Es para fin de curso y estoy haciendo esto ya que mi antiguo proyecto salio mal y voy a correcamino.
            O que puede ser. Gracias

          • Sistemas Electrónicos del Automóvil Sistemas Electrónicos del Automóvil dice:

            Hola Avaro, pasame por correo tu numero de teléfono y te llamo esta tarde. ¿Estas en España?

            sistemaselectricosdelautomovil@gmail.com

            Ahora mismo no tengo: skype o discord

          • Avatar Álvaro Guerrero dice:

            He encontrado el problema y es que mi módulo Bluetooth está una luz roja parpadeando en rojo lentamente y eso quiere decir que esperando a que lo configure como se configura?

          • Sistemas Electrónicos del Automóvil Sistemas Electrónicos del Automóvil dice:

            Hola, el módulo no tiene configuración de hardware. La luz está en ese color porque no está enlazado con el teléfono.
            Cunado se enlazan, se emiten destellos de color violeta. (ver vídeo minuto 9:58)

            Evidentemente, los dispositivos no los tienes enlazados.
            Una pregunta ¿Alguna vez los has llegado a enlazar, te ha funcionado? ¿De ser así, fue antes de actualizar SO Android?

            Una consideración muy muy importante: SÍ ALIMENTAS LOS CIRCUITOS CON UNA PILA DE 9V, PON UNA PILA NUEVA, DE CALIDAD Y CONFIANZA.
            Si el módulo de bluetooch no recibe la suficiente energía, no funciona correctamente.

  2. Avatar Juan dice:

    Hola buenas porque cuando desconecto Arduino se me conecta el relé y se queda encendido..aver si me podéis ayudar

    • Sistemas Electrónicos del Automóvil Sistemas Electrónicos del Automóvil dice:

      Hola Juan, aportas poca información sobre el problema, supongo que utilizas reles conmutados (no interruptores), por lo que debes cambiar uno de los cables del conmutador del rele. El del contacto móvil estaría bien puesto, es el otro el que debes de cambiar de lugar en el rele. Un saludo.

      • Avatar Juan dice:

        Hola Sistemas Electrónicos del Automóvil esque sin video no vas a poder verlo para entenderlo... tendrias algun correo electrónico para que veas lo que me sucede y darme una respuesta respecto al video..
        Muchas Gracias y espero vuestra respuesta
        que tengas un cordial saludo

  3. Avatar Manuel dice:

    Buenas,hay alguna manera de contactar con vosotros telefonicamente?
    Tenemos un proyecto en mente.Gracias.

  4. Avatar Leonel dice:

    Hola amigo estoy siguiendo tu proyecto
    Tengo una deuda esa juego de relays que viene en 4 como se llama para poder comprarlo
    Y tendrás un video de los pasos a hacer la instalación?
    Eh leído en los comentarios que la compilación la tengo que escribir para que no vote errores

    • Sistemas Electrónicos del Automóvil Sistemas Electrónicos del Automóvil dice:

      Hola Leonel
      El juego de reles que utilizo está descatalogado donde lo compre:
      https://tienda.bricogeek.com/descatalogado/338-arduino-relay-shield.html
      Ahora venden uno similar.
      https://tienda.bricogeek.com/interruptores/886-modulo-4-reles-5v.html

      Supongo que en amazon o bangood o .... lo puedes encontrar y mas económico.
      En cuanto al vídeo donde se especifiquen los pasos de instalación, no lo tengo, no hice en su día. Yo te aconsejo que sigas el circuito a montar. Si tienes algún problema siempre puedes consultarme.

      En cuanto al asunto de la compilación, en esta misma página tienes el enlace para descargar tanto la aplicación para el móvil como el programa de arduino. Solo tienes que subirlo al teléfono y a arduino, al no ser que quieras realizar modificaciones. Por tanto no hay porque escribir de nuevo el programa.
      Un saludo.

      • Avatar leonel dice:

        hola buenas noches eh compilado y me vota muchos errrores

        he sketch name had to be modified.
        Sketch names must start with a letter or number, followed by letters,
        numbers, dashes, dots and underscores. Maximum length is 63 characters.

        una consulta si solo quiero usar el terminal 15 y 50 lo demas normal lo puedo anular?

        • Avatar leonel dice:

          disculpa ya lo acabo de compilar bien gracias mas bien una duda maestro, si no consigo ese juego de relay que puedo usar yo tengo arduino los relays pero no consigo ese juego de relay que tu has usado

          • Sistemas Electrónicos del Automóvil Sistemas Electrónicos del Automóvil dice:

            Hola, puedes usar cualquier relé compatible con arduino, (de 5 voltios). Te haría falta dos cablecitos más, para conectar un terminal de la bobina a GND de arduino y el otro a la salida digital seleccionada.

        • Sistemas Electrónicos del Automóvil Sistemas Electrónicos del Automóvil dice:

          Si solo te interesa 15 y 50, lo demás no lo conectes ni uses.. y a funcionar.

          • Avatar Leonel dice:

            Consulte maestro
            Los cables negros que salen de el Arduino hacia los relay que son y xq lleva resistencia el RX Y NO TX
            OTRA tengo unos relay de 5 Volt que los alimentare de Arduino pero esos relay pueden levantar al los de 12 osea el 87 del relay de 5 Volt lo mando al 30 del relay de 12 Volt verdad,es mi proyecto final y lo quiero hacer bien espero su respuesta gracias

          • Sistemas Electrónicos del Automóvil Sistemas Electrónicos del Automóvil dice:

            Hola. Los cables negros son negativo de batería y de arduino (GND). Deben estar unidos ambos negativos.
            Las resitencias las utilizo para hacer un divisor de tensión (me parece recordar a 3,5V) ya que el módulo de bluethoo no se alimenta con 5V
            En cuanto a las conexiones de los relés, no son como dices, ya que el 87 del relé de arduino, comanda la bobina del relé del coche, es decir 85 u 86 del relé del coche.

          • Avatar Leonel dice:

            Una más podía decir los nombre de los pines de relays con su respectivo color osea 87 negro

          • Sistemas Electrónicos del Automóvil Sistemas Electrónicos del Automóvil dice:

            Relés de coche
            30 rojo + de batería
            87 salida de positivo (30) hacia motor de arranque 50 rosa, hacia marrón 15 ...
            85 negativo (recuerda negativo de batería y arduino unidos GND)
            86 positivo activación bobina relés por ejemplo amarillo 15 ...

          • Avatar leonel dice:

            consulta porque unes negativo de bat y negativo de arduino, es necesario, yo eh probado con un foco led y normal funciona pero lo eh conectado diferente a lo que tu has conectado no habra problema?

          • Sistemas Electrónicos del Automóvil Sistemas Electrónicos del Automóvil dice:

            Si te funciona, no lo modifiques.
            Los negativos de ambos circuitos se unen para cerrar el paso de las corrientes.
            Un saludo.

  5. Avatar Luis V dice:

    Hola buenas noches soy Luis me interesa tu proyecto ya que elegí hacer algo similar a este buen proyecto me gustaría saber de los materiales que que usan y las conecciones. Sería genial si me puedes brindar mas información te agradecería mucho.

    • Sistemas Electrónicos del Automóvil Sistemas Electrónicos del Automóvil dice:

      Hola Luis.
      En el vídeo se describen todos los materiales que he utilizado. En esta mismas página puedes ver el esquema.Te puedes descargar el software, tanto la aplicación para el móvil, como el programa a cargar en arduino.

      Si tienes dudas, no dudes en preguntarme.

      Un saludo.

  6. Avatar Fernando De La O dice:

    Hola amigo, buenos días.
    Primeramente me gustaría felicitarte por este maravilloso proyecto, pero tengo dos dudas, ¿Podrías explicarme cómo funciona la terminal 15 y 30?. Mi otra duda es, ¿Qué relevadores usaste?.

    Muchas gracias y un saludo

  7. Avatar Franco dice:

    Podrías dar más información acerca de los relés de 12 v y los pines 15 y 50. Y la conexión eléctrica.

    • Sistemas Electrónicos del Automóvil Sistemas Electrónicos del Automóvil dice:

      Hola Franco.

      Los vehículos utilizan 12 voltios para alimentar a los distintos consumidores, bombillas, motores eléctricos, calentadores, unidades de control.... ver vídeo por si necesitas aclaraciones https://youtu.be/w7x7wCZ3vXE

      Muchos de esos dispositivos son activados por simples revés, al objeto de controlar grades corrientes sin necesidad de utilizar grandes conmutadores, pulsadores....

      En automoción, una antigua norma alemana DIN... nombra al positivo del circuito de encendido con el número 15 y al positivo de arranque con el número 50

      +15 Alimenta al calculador de inyección el circuito de encendido y la bomba de combustible eléctrica.

      +50 Alimenta al relé ("automático, contactor...") del motor de arranque. Esta corriente es relativamente grande (20...25 Amperios) por lo que precisa un relé especial que pueda controlarla.

      En cuanto al circuito del vehículo, es un poco variable y depende la si la llave tiene dos o tres posiciones.

      Ver vídeo de llave de contacto o interruptor de encendido https://youtu.be/pr6EhDqzwkE

      En mi caso, la llave, (en el interior del bombin) tiene tres posiciones.

      La segunda posición da positivo de 15 (ahí conecto el positivo que entrega el relé auxiliar 15)

      En la tercera posición da positivo 50 (ahí conecto el positivo que entrega el relé auxiliar 50)

      Espero te sirva de ayuda.

      Un saludo.

  8. Avatar Juan Luis Máynez Chávez dice:

    Hola que tal, espero me puedas responder! Aun no entiendo lo de los reveladores, si se para lo que funcionan y como, pero a la hora de encender el carro cual se queda prendido? el del piloto o el de la llave? Tengo solo esa duda

    • Sistemas Electrónicos del Automóvil Sistemas Electrónicos del Automóvil dice:

      Hola Juan luis.

      Para arrancar el coche necesitamos:
      1º Contacto (+15) (terminal 15 on) (pulsación corta en el primer botón de la aplicación). ESTE RELÉ SE QUEDA CERRADO, ya que alimenta la bomba eléctrica de combustible, el encendido y la ECU de inyección. Para parar el motor, ESTE RELÉ HA DE ABRIRSE. Paro (cortamos +15) (terminal 15 off) Pulsación larga en el primer botón de la aplicación.

      2º Arranque (+50) (terminal 50 on) (pulsando en el segundo botón). Este relé pone en marcha el motor de arranque eléctrico. SOLO ESTA ACTIVO MIENTRAS SE ESTÁ PULSANDO EL BOTÓN DE LA APLICACIÓN, es decir actúa como pulsador. Una vez puesto en marcha el motor de combustión, el relé debe de quedarse abierto, esto se consigue al sotar el botón de la aplicación. (Por medida de seguridad, observese que el Botón Arranque (50) queda inactivo hasta que para el motor de combustión)

      Espero haber contestado a tu pregunta y te sirva de ayuda.

      Un saludo.

  9. Avatar dardo dice:

    Date cuenta que queres poner la libreria y no te deja, es por la web que usas.
    vas a tener que cambian el editor de la web
    saludos
    Pd, decime como puedo subir un RAR, y lo subo
    yo ya lo hice, y me parece que tenes un error en el void clean
    por que esta com dentro del void loop y deberia estar afuera
    saludos

    • Sistemas Electrónicos del Automóvil Sistemas Electrónicos del Automóvil dice:

      Hola.

      Efectivamente, la librería no estaba incluida, eso por una parte.

      Por otro lado, efectivamente, al copiar y pegar el código de la web, da muchos errores porque por ejemplo, las comillas " de la web no son de la misma fuente que las del IDE.

      He dejado para descargar el archivo .ino. Ésta depurado, por lo menos ami no me da errores.

      Un saludo.

  10. Avatar dardo dice:

    Hola, bien los errores que tira es por incompatibilidad de fuente (letra), si no lo cambia en la publicación , el que lo quiera usar va a tener que escribirlo y no copiarlo. saludos dardo

  11. Avatar dardo dice:

    perdon no puse la libreria

    #include

    Me parece que el tema de los errores se da cuando uno copia y pega su codigo
    Deberia cambiar el formato de editor
    SAludos

  12. Avatar dardo dice:

    Hola, el codigo para arduino tira muchos errores.
    El primero es que falta incluir la libreria
    creo que por lo que dice debe ser asi:

    #include

    despues de incluir la libreria se llena de errores.
    No se por que no incluis la libreria y solo pones

    #include

    //Librería que permite establecer comunicación serie en otros pins
    //Aquí conectamos los pins RXD,TDX del módulo Bluetooth.

    Saludos

  13. Avatar cristian dice:

    hola buenas noches soy cristian, tengo todo para hacer el proyecto pero no puedo cargar el código a mi arduino. le agradecería que me ayude.

    • Sistemas Electrónicos del Automóvil Sistemas Electrónicos del Automóvil dice:

      Hola Cristian, para poder ayudarte tienes que darme más pistas de lo que está ocurriendo.
      Cuando intentas subir el programa a la placa, te dará algún mensaje de error. ¿Cual es o son?
      Si no carga el programa puede ser por que no has seleccionado el puerto adecuado, la placa, las librerías...

Deja un comentario

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

*

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.