CAN BUS: Red de Arduinos

Hola a todos,
Quería comentaros lo que he estado haciendo con CAN-BUS esta semana junto con la ayuda de Igor. Tras comprar uno de los bricks en http://secuduino.blogspot.com/ he conseguido
conectarme al OBD de mi Ford Focus 2007 1.8 tdi.

Estoy intentando montar una pequeña web para subir todos mis avances y descubrimientos pero aun no tiene un mínimo necesario para ser presentable, espero poder echarle
un par de horas y por lo menos meter la información básica hasta ahora así como algunas fotos y vídeos.
(Si alguien tiene conocimientos de creación de paginas web y tiene tiempo libre para ayudarme se lo agradecería ya que mis conocimientos se basan en html y php pero programación pura y dura, vamos que la web va a ser bastante poco atractiva a la vista. O me conformo con algún enlace a una plantilla atractiva pero sencilla que permita tener sección de fotos, blog, etc...)

Me gustaría agradecer a Igor su ayuda ya que sin su librería para el brick, todos los emails que me ha contestado y la colaboración cuando fui a conectarme por primera vez, no habría conseguido ni la mitad de lo realizado hasta ahora.

os dejo un par de fotos pero en cuestión de 1 o 2 días espero poder presentar una humilde web para tenerlo todo organizado.








un saludo

(Si alguien tiene conocimientos de creación de paginas web y tiene tiempo libre para ayudarme se lo agradecería ya que mis conocimientos se basan en html y php pero programación pura y dura, vamos que la web va a ser bastante poco atractiva a la vista. O me conformo con algún enlace a una plantilla atractiva pero sencilla que permita tener sección de fotos, blog, etc...)

Sergegsx, encantado de poder ayudarte con la pagina.

Salu2

bokeauss,

Mide a ver si tienes 60 ohm entre los pines del 6 y 14 del conector OBD de tu Fiesta.
Si en un Focus del 2007 tiene la diagnosis por CAN, apostaria que tambien lo tendras en tu coche....

A ver si tienes diagnosis por CAN y te animas a unirte a Sergegsx, que por cierto, va avanzando muy rapido ]:smiley:
Una vez con rpm, velocidad,aceleraciones y yaw..... se pueden empezar a hacer cosillas interesantes: calculo de ratios de marcha, aproximacion de potencia, aerodinamica, .....y mucho mas!!! :fearful:

Ya nos contaras!!!

:wink:

bokeauss el conector del obd esta debajo del volante en mi focus, supongo que el tuyo estara cerca, o debajo de los pies del conductor. pero vamos apostaria por que si que tienes conector, y siendo 1 año mas actual, seguro que es CAN asi que esto 99% seguro que puedes.

flico, en serio? es que soy un desastre diseñando y me esta quedando la web francamente chapuzas jajaja, si te parece bien meto unos contenidos basicos y te paso mi nombre de usuario y contraseña para el hosting y le echas un vistazo. no tiene que ser nada espectacular simplemente algo sencillo para poder meter los avances.
me gustaria incluir:

  • blog (o algo parecido para que cada dia que hago un avance puede añadir una entrada con texto, imagenes, y codigo)
  • rss para que la gente pueda suscribirse
  • menu superior, lateral donde sea con acceso a las distintas partes de la web.
    todo ello muy sencillito.
    a ver si puedo avanzar un poco con el contenido y os paso la direccion para que lo veais.

Igor, el calculo de relacion de marchas tambien lo tengo hecho :wink: me falta implementarlo en el arduino para que me lo muestre por lcd y por serial. siento la presentación pero voy corto de tiempo, prometo que lo trabajare un poco mas jeje

pequeño Quiz...a ver quien adivina porque hay esos picos en la grafica... :wink: venga que es muy facil.

mira...

Bokeauss como bien dice Sergio, en muchos coches el OBD está debajo del voltante.
Sin embargo, en otros lo he visto por ejemplo detrás del freno de mano debajo de un plasico que se puede quitar con unas pestañas.

Como puedes ver aquí

Aqui hablan como que el ford fiesta lo tiene debajo de la guantera, cerca de los pies del copiloto tambien debajo de un plastico, que normalmente están mecanizados y son muy fáciles de quitar con un destorinillador metiendolo por un lateral y haciendo palanca.....

OBD seguro que tienes, solo es cuestión de hechar un vistazo en los sitios típicos:
Debajo el volante
Debajo de la guantera
Cerca del freno de mano/cambio de marchas
En un lateral también lo he visto, en el salpicadero cerca de donde cierra la puerta.....

Sergio eres impresionante, sinceramente como me jode estas hasta el culo como estoy en el curro!!!Pero espero en unas semanas estara tope!!!!

pues hoy no creo que me de tiempo pero entre mañana y el lunes tendre la pagina donde podras ver las cosas que te pueden hacer falta.
pero vamos, basicamente puedes hacerlo funcionar con:
-arduino (yo tengo el UNO)

  • CAN brick (SECUduino: HARDWARE)
  • libreria para el brick (te lo pasara Igor cuando compres el CAN brick)
  • conector DB9 para conectarte al brick
  • cablecillos para puentear 3 pines del conector OBD y llevarlos al CAN brick DB9 (te recomiendo inviertas un poco de tiempo en hacer esto bien para evitar problemas de conexión y tenerlo mas aseado)
  • ordenador portatil para conectarte cuando estas en el coche.

con esto y con los ejemplos que voy a poner en mi web podras conectarte al coche en 5 minutos y empezar a recibir datos (yo tarde unas 3 horas jeje pero fue porque Igor y yo estabamos trasteando con los mensajes que nos llegaban...que no eran pocos....hasta que conseguimos depurar el codigo).

si tienes dudas, me avisas.

Sergegsx

flico, en serio?

Sin problemas, hago un poco de tiempo y te ayudo.

Xao

He subido las fotos que me mando Sergegsx asi como una pequeaña explicación del OBD a SECUduino: Comunicación OBD con Ford Focus 2007

]:smiley:

Igor R. los bytes que contienesn las rpm son 0x0D | 0x50.

Usando esta formula lo sacas, pero si quisiera hechar yo la cuenta que habria que hacer pasarlos a decimal?

rpm=((Byte3*256)+Byte4)/4= 852 rpm.

Salu2

0x0D=13d
0x50=80d
rpm=((13*256)+80)/4= 852 rpm.

Por cierto, para ver cómo se calcula la relación de marchas usando rpm y velocidad, hace bastante tiempo escribí esto: Tinkering with Electronics...: Cálculo de número de marcha con RPM y Velocidad

Un gráfico interesante, es eje X=velocidad y eje Y=rpm. A ver si Sergegsx se anima y nos lo pone (por cierto, para hacerlo intenta cambiar de marchas a las mismas revoluciones, ejemplo 4000 y la misma prueba unas cuantas veces para tener una buena "nube de puntos"). Tan solo con grabar lo que te envia tu Arduino usando un terminal de serie, preparar que los datos esten separados con punto y como para que Excel lo pueda abrir directo, y en 5 minutillos lo tienes!!!

Aunque todo ésto y mucho más se ira viendo con detalle en SECUduino.

]:smiley:

Hoy me he "enchufado" a la CAN confort de mi coche (grupo volkswagen). Es donde están las centralitas de cada puerta, clima, alarma, etc.

Esta bien para empezar, ya que no hay muchos mensajes, y asi ir calentando motores para la más interesante, CAN tracción. Iré ampliando información ahi acerca de los avances.

Salu2

]:smiley:

me alegro que hayas podido conectarte Igor ! ahora viene el reto de verdad...que son esos numeritos jeje

informanos de tus progresos.
yo apenas he tenido tiempo de avanzar nada, y el poco tiempo que tenia lo he dedicado a meter todo en una caja mas robusta y pequeña, cablear mejor las cosas y añadir otro LCD. compre uno por ebay y como la 4ª linea no funcionaba el vendedor me envio gratis otra pantalla LCD, como tienen el mismo address por I2C he dejado la pantalla de 3lineas integrada en la caja, y la de 4 lineas va a ir en algun sitio visible para el conductor :wink:

si quieres que haga alguna prueba dimelo, mientras intentare resolver mas PIDs, por cierto, tengo que pasarte un programita para leer muchos PIDs de forma automatica, te vendra bien cuando vayas a la CAN de la ecu.

Me estoy conectando directamente a las redes del coche, nada que ver con la de diagnosis y PIDs.
Es decir, en teoría, si envio el mensaje adecuado emulando lo que hace alguna de las centralitas, por ejemplo,podría cerrar/abrir el coche.

]:slight_smile:

Suena genial !!
pues suerte y a por ello!

Pues lo prometido es deuda... Con un poco más de tiempo libre.... Ya tengo unos cuantos mensajes descifrados de Volkswagen!!

RPM:

Control ventanillas:

El ejemplo del video es por tiempo, pero también he descubierto la posición actual de las ventanillas, mensaje del cierre de puertas, mensaje con el reloj del coche, ....

Saludos!!

Igor R.

Enhorabuena por los avances Igor !!

Ahora me toca a mi ver si mi Focus tiene red confort o algo parecido.

Buen trabajo Igor. R.
Una pregunta, se puede posicionar la ventanilla en una posición concreta, es decir darle un valor y que la ventanilla siempre vaya a ese sitio.7

Saludos.

flico por lo que he hablado con Igor, no se si se podra decir, "ves a la posición X"

pero si hay un parametro que dice la posición de la ventanilla, se puede hacer un bucle que mueva la ventanilla hasta que la posición sea la deseada.

resumiendo...que si se puede (creo) :stuck_out_tongue:

Flico, copio del post que he escrito en el blog... =(

También existen mensajes que disponen de la posición actual de las ventanillas, por lo que se podría hacer un control en lazo cerrado para tener la ventanilla en la posición deseada.

Fijate que he diseccionado elevalunas en el desguace y nunca me he percatado de la existencia de algun encoder o barrera optica para posicionarlo.
La proxima vez que vaya indagare.

Saludos.