Go Down

Topic: Como leer todos los datos del puerto Can-bus (Read 4 times) previous topic - next topic

Igor R

#5
May 15, 2012, 11:03 pm Last Edit: May 15, 2012, 11:20 pm by Igor R Reason: 1
Hola,

No es genérico, cada fabricante usa diferentes mensajes... Esto no lo hice mediante acceso al bus de diagnosis del coche (OBD), si no que me conecte directamente a la red en la que las diferentes centralitas se comunican entre ellas. En el caso del grupo Volkswagen y de mi coche (GOLF MK IV) , existen 3 redes CAN y 1 diagnosis (que no es CAN). Lo que hice primero es "escuchar" en la red que estan conectados los modulos de las puertas y ver que mensajes cambiaban cuando le daba a los mandos de subir/bajar.... Una vez que saque como iban los mensajes, lo que hice es enviarlos yo en dicha red mucho más rápido que lo hace el módulo que normalmente envia dichos mensajes y de esta forma "me hacia caso".

La librería no está descargable (se entrega con el HW), pero lo más díficil e importante, que es cómo lo hice (mensajes a enviar, ID, etc) está en el repositorio que puedes ver en dicha web.
Es decir, da igual que librería CAN para Arduino estas usando, sólo tienes que adaptar el código de las funciones de enviar, recibir, etc mensajes, pero toda la "miga" la tienes publicada allí, ya que lo más díficil es sacar como van los mensajes ,que se tiene que enviar y en que identificador vienen.
Por ejemplo: https://github.com/IgorReal/SECUduino/blob/master/Golf_MK4_Remote_Rolling_Windows/RemoteControlRollingWindow.pde

Y también hice un video auto-explicativo de como son los mensajes en dicha red y precisamente con ejemplos de cuando subes/bajas las ventanillas:
http://www.youtube.com/watch?v=EyzLMTIWAow


Saludos


Igor

fjramirez

Igor, creo que eres el creador de SECUduino no? Enhorabuena por tu trabajo, y muchas gracias por tu ayuda.

Yo lo que quería hacer es un dispositivo de control y alarma para el coche. Estoy por la parte de control, y bueno quería poner algunas funciones a mi opel astra h que no tiene. Una de ellas es cerrar las ventanillas del coche al bloquear el coche, suelo dejarlas abierta jejeje soy muy despistado. En un principio pensé hacerlo de manera básica, con un rele que me cerrara el circuito de las ventanillas como si se pulsaran los botones. Pero trasteando por Internet vi esos vídeos. Pero según me comentas Igor, la cosa es complicada y especifica, y bueno ya que dedico tiempo a esto pues me gustaría compartirlo con los demás, creo que lo voy hacer de la manera sencilla.

Pero ya por curiosidad, según dices Igor, por el puerto OBDII no podría tener el control de los dispositivos? A las lineas que te has conectado son independientes y usa el típico protocolo CAN no?

Si te das cuenta, el primer vídeo que he puesto, los datos de la radio los esta sacando del puerto de diagnosis OBDII.

Igor, ¿podrías decirme cual es el programa que has usado para ver los mensajes?

Igor R

Para ver los mensajes CAN que se ven en ese video he usado un sniffer con un conversor USB<--> CAN. Esto lo podrías hacer con un Arduino + mcp2515-mcp2551, pero como dispongo de uno, pues me es más cómodo y rápido para según que cosas.

Saludos


Igor

ASTROCAR

Oye el problema para mi siempre ha sido no perder tramas ya que segun la velocidad del bus que en ford si mal no recuerdo es de 500 se hace muy dificil no perder tramas ya que la velocidad maxima que podemos manejar por puerto serial es 115 cosa que nos dificulta poder capturar todas las tramas de can bus y poder ir monitorandola serialmente.

Saludos y danos el truco estimado igor.

Go Up