Vehículo Conectado mediante Raspberry PI (I)

Hoy os traemos el primer post de cómo dotar de conectividad a nuestro coche y actualizarlo a la versión 2.0 😯 A quién no le gustaría montarse en su coche y que estuviera repleto de tecnología, una pantalla que muestre información del vehículo, GPS, entorno multimedia, Wi-Fi, control remoto… lo que no nos gusta tanto es cuando vamos al concesionario y el comercial nos dice el precio por añadir el paquete tecnológico, eso duele!

El objetivo de estos post es ir poco a poco añadiendo funcionalidades así podréis sugerir mejoras o cambios. Comenzaremos por uno de los platos fuertes, cómo obtener la información relevante del vehículo como rpm, velocidad, inyección de combustible, averías… tal y como menciona el título, el sistema central será una Raspberry PI (la que más os guste).

Vamos con un poco de teoría 😴, a raíz de controlar las emisiones de dióxido de carbono de los automóviles, la Unión Europea obligó a los fabricantes a incluir la interfaz OBDII (On Board Diagnostics) en los gasolina en el 2000 y diesel 2005, esta interfaz permite un acceso libre y directo a la red del vehículo y entre otras cosas se pueden consultar ciertos valores muy útiles al coche (ISO 15031-5). Este estándar define 10 modos de funcionamiento, nosotros por el momento nos centraremos solamente en 2.

  • Modo 01: Acceso a datos en tiempo real de valores analógicos o digitales de salidas y entradas a la ECU (Electronic Control Unit).
  • Modo 03: Permite extraer de la memoria todos los códigos de fallo DTC (Diagnostic Trouble Code).

La interfaz OBDII se instaló varios años antes, lo cual no garantiza que teniendo un coche más antiguo del 2000-Gasolina o 2005-Diesel puedas conseguir esta información de una forma “abierta”.

Especificar que el modo 01 permite la obtención 196 PID (ParameterID), entre los que están velocidad, rpm, inyección… en este documento encontraréis toda la especificación.

La obtención de esos 196 PID está condicionada por el fabricante, ya que no liberan el acceso libre al 100% de los parámetros.

Llegados a este punto, ya hemos visto de donde podemos extraer la información y a que tenemos acceso. Ahora sólo nos falta el dispositivo que enviará la información del coche a nuestra Raspberry PI. Y estos son los Dongles OBDII, los hay con muchos tipos de conectividad, yo me decanto por el Bluetooth.A parte del tipo de conectividad, es necesario un circuito integrado (IC) que gestione toda la comunicación con el protocolo implementado en la red del vehículo, los ICs más famosos son los que llevan chipset de ELM Electronics y particularmente el ELM 327 por la cantidad de protocolos que soporta.

esquema_obd_rpi

A continuación os describo todas las configuraciones necesarias, partimos de la base de que ya tenéis una distribución instalada en vuestra RPI (en mi caso uso Raspbian) y como he mencionado en primer lugar realizaremos la comunicación por Bluetooth, por lo que es necesario que tengáis instalados los drivers correspondientes, normalmente con esto se soluciona:

Antes de poder establecer la comunicación bluetooth, como es habitual hay que realizar la vinculación de los dispositivos, que se realiza de la siguiente forma:

De esta forma ya tenemos pareados nuestros dispositivos para todas las conexiones futuras!

Tenedlo preparado todo para el siguiente post porque nos pondremos a programar! 😎

¡¡Hasta la próxima!!

 

Tweet about this on TwitterShare on FacebookShare on Google+Email this to someone

También te podría gustar...

4 Respuestas

  1. titipepe dice:

    Expectante me quedo. Me encantaría que hubiese un sistema de suscripción para ser advertido de nuevas publicaciones.

  2. titipepe dice:

    Según explicas, a través de la interfaz OBD2 podría hacerme mi propia aplicación para leer los mismos datos que dispongo actualmente en mi peugeot 5008: http://s346.photobucket.com/user/Calculin69/media/DSC05454_zpsc37598d5.jpg.html

    ¿es así?

    • Javi dice:

      Estas en lo correcto titipepe, siempre y cuando no sea más antiguo del 2005 en el caso de los diésel y del 2000 en gasolina.
      También hay que tener en cuenta las limitaciones impuestas por el fabricante a la hora de facilitar datos de forma libre.
      Puedes empezar por comprar el dongle OBDII y utilizar el software para PC o Smartphone existente y luego ya a programar!!
      Te animo a que lo pruebes y nos lo comentes.

      Un saludo!

Deja un comentario

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