¿Cómo interactúo con OBD-II?

5

Me han asignado la tarea de interactuar con los diagnósticos a bordo de un vehículo.

Algunos sistemas usan señalización de 7V, algunos usan señalización de 5V, algunos señalizan hasta el voltaje de la batería (que puede ser tan alto como 28 V en algunos vehículos más grandes). Necesito alguna forma de manejar estas entradas de alto voltaje que pueden exceder la clasificación de 5V de mi microcontrolador. Estaba pensando en un sistema optoaislado pero las comunicaciones deben ser bidireccionales y rápidas (segundo máximo de 100 kbits). Como es OBD-II, necesitaré dos canales; algunos vehículos usan canales de transmisión y recepción, mientras que otros usan un canal para transmitir y recibir. ¿Hay alguna opción para que yo considere?

    
pregunta Thomas O

2 respuestas

3

Tal vez piense en usar una solución de chip comercial, como ELM327 . Parece que manejará todos los diversos problemas de voltaje y protocolo.

    
respondido por el timrorr
1

Para leer desde un voltaje más alto solo usa un divisor de voltaje.

Para escribir en un voltaje más alto, use un controlador de línea con una desactivación. Dos MOSFET harán el trabajo. posiblemente un extra en cada compuerta para ayudar a aumentar el voltaje de salida para que el mosfet final esté más cerca de un corto.

En su lado del divisor de tensión, use un dispositivo Zener o similar para protegerse contra la sobretensión y use resistencias grandes en el divisor para que la disipación de potencia sea muy baja. Esto protegerá sus entradas. Yo usaría un diodo Schottky a la inversa para protegerme contra el voltaje inverso, su bajo voltaje de activación protegerá su micro.

    
respondido por el Kortuk

Lea otras preguntas en las etiquetas