Articulo de referencia

PIDs OBD-II

Los PID ( identificadores de parámetros de diagnóstico a bordo ) del OBD-II son códigos que se utilizan para solicitar datos de un vehículo y sirven como herramienta de diagnóst...

Los PID ( identificadores de parámetros de diagnóstico a bordo ) del OBD-II son códigos que se utilizan para solicitar datos de un vehículo y sirven como herramienta de diagnóstico.

La norma SAE J1979 define muchos PID de OBD-II. Todos los vehículos y camiones que circulan por carretera en Norteamérica deben ser compatibles con un subconjunto de estos códigos, principalmente para las inspecciones de emisiones obligatorias por ley . Los fabricantes también definen PID adicionales específicos para sus vehículos. Si bien no es obligatorio, muchas motocicletas también son compatibles con los PID de OBD-II.

En 1996, los vehículos ligeros (menos de 8500 lb o 3900 kg ) fueron los primeros en ser obligatorios, seguidos por los vehículos medianos ( 8500–14 000 lb o 3900–6400 kg ) en 2005. [ 1 ] Ambos deben ser accesibles a través de un conector de enlace de datos estandarizado definido por SAE J1962 .    

Los vehículos pesados ​​(de más de 14 000 lb o 6400 kg ) fabricados después de 2010, [ 1 ] para la venta en los EE. UU. pueden admitir diagnósticos OBD-II a través del estándar SAE J1939-13 (un conector de diagnóstico redondo) según CARB en el título 13 CCR 1971.1. Algunos camiones pesados ​​en América del Norte usan el conector de diagnóstico OBD-II SAE J1962 que es común en los automóviles de pasajeros, en particular Mack y Volvo Trucks , sin embargo, usan identificadores CAN de 29 bits (a diferencia de los encabezados de 11 bits que usan los automóviles de pasajeros).  

Servicios / Modos

En la última norma OBD-II SAE J1979 se describen 10 servicios de diagnóstico. Antes de 2002, la norma J1979 se refería a estos servicios como "modos". Son los siguientes:

Los fabricantes de vehículos no están obligados a brindar soporte para todos los servicios. Cada fabricante puede definir servicios adicionales por encima del n.° 9 (por ejemplo, el servicio 22 según lo define la norma SAE J2190 para Ford/GM, el servicio 21 para Toyota) para obtener otra información, como el voltaje de la batería de tracción en un vehículo eléctrico híbrido (HEV). [ 2 ]

Los servicios UDS que no son OBD comienzan en 0x10 para evitar la superposición de rangos de ID.

Controladores PID estándar

La tabla a continuación muestra los PID estándar de OBD-II definidos por la norma SAE J1979. Se indica la respuesta esperada para cada PID, junto con información sobre cómo interpretarla. Cabe destacar que no todos los vehículos son compatibles con todos los PID y que puede haber PID personalizados definidos por el fabricante que no estén contemplados en el estándar OBD-II.

Tenga en cuenta que los servicios 01 y 02 son prácticamente idénticos, salvo que el servicio 01 proporciona información actualizada, mientras que el servicio 02 proporciona una instantánea de los mismos datos tomada en el momento en que se registró el último código de diagnóstico de avería. Las excepciones son el PID 01, que solo está disponible en el servicio 01, y el PID 02, que solo está disponible en el servicio 02. Si el PID 02 del servicio 02 devuelve cero, no hay instantánea y todos los demás datos del servicio 02 carecen de sentido.

Cuando se utiliza la notación codificada por bits, cantidades como C4 significan el bit 4 del byte de datos C. Cada bit está numerado del 0 al 7, por lo que 7 es el bit más significativo y 0 es el bit menos significativo ( véase más abajo ).

Servicio 01 - Mostrar datos actuales

Servicio 02 - Mostrar datos de fotograma congelado

El servicio 02 acepta los mismos PID que el servicio 01 , con el mismo significado, [ 5 ] pero la información proporcionada corresponde al momento en que se creó el cuadro congelado [ 6 ] . Tenga en cuenta que el PID $02 se utiliza para obtener el DTC que activó el cuadro congelado.

La persona debe enviar el número de trama en la sección de datos del mensaje.

Servicio 03 - Mostrar códigos de diagnóstico de avería (DTC) almacenados

Servicio 04 - Borrar códigos de diagnóstico de averías y valores almacenados

Servicio 05 - Resultados de la prueba, monitoreo del sensor de oxígeno (solo para sistemas sin CAN)

Servicio 09 - Solicitar información del vehículo

  1. 1 2 3 4 5 6 7 8 En la columna de fórmula, las letras A, B, C, etc. representan el primer, segundo, tercer, etc. byte de los datos. Por ejemplo, para dos bytes de datos0F 19,A = 0FyB = 19. Donde aparece un (?), la información disponible era contradictoria o incompleta.
  2. A partir del año modelo 2010, la Junta de Recursos del Aire de California exigió que todos los vehículos diésel deben proporcionar las horas totales del motor [ 4 ].
  3. A partir del año modelo 2019, la Junta de Recursos del Aire de California ordenó que todos los vehículos deben proporcionar odómetro [ 4 ].

PID codificados bit a bit

Algunos de los PID de la tabla anterior no pueden explicarse con una fórmula sencilla. Aquí se proporciona una explicación más detallada de estos datos:

Servicio 01 PID 00 - Mostrar PID compatibles

Una solicitud para este PID devuelve 4 bytes de datos ( Big-endian ). Cada bit, desde el bit más significativo (MSB) hasta el menos significativo (LSB) , representa uno de los siguientes 32 PID e indica si ese PID es compatible.

Por ejemplo, si la respuesta del automóvil es BE1FA813 , se puede decodificar de esta manera:

Por lo tanto, los PID admitidos son: 01 , 03 , 04 , 05 , 06 , 07 , 0C , 0D , 0E , 0F , 10 , 11 , 13 , 15 , 1C , 1F y 20

Servicio 01 PID 01 - Monitorear el estado desde que se borraron los DTC.

Una solicitud para este PID devuelve 4 bytes de datos, etiquetados como A, B, C y D.

El primer byte (A) contiene dos datos. El bit A7 ( el bit más significativo del byte A) indica si la luz indicadora de avería (MIL, por sus siglas en inglés ) está encendida o no. Los bits A6 a A0 representan la cantidad de códigos de diagnóstico de avería registrados en la ECU.

Los bytes segundo, tercero y cuarto (B, C y D) proporcionan información sobre la disponibilidad y la completitud de ciertas pruebas a bordo ("comprobaciones de preparación OBD"). El tercer y cuarto byte se interpretan de forma diferente según si el motor es de encendido por chispa (por ejemplo, motores Otto o Wankel) o de encendido por compresión (por ejemplo, motores diésel). En el segundo byte (B), el bit 3 indica el tipo de motor y, por lo tanto, cómo interpretar los bytes C y D, donde 0 corresponde a encendido por chispa (Otto o Wankel) y 1 (activado) a encendido por compresión (diésel). Los bits B6 a B4 y B2 a B0 se utilizan para información sobre pruebas que no son específicas del tipo de motor y, por lo tanto, se denominan pruebas comunes . Cabe destacar que, para los bits que indican la disponibilidad de la prueba, un bit activado ( 1) indica disponibilidad, mientras que para los bits que indican la completitud de la prueba, un bit activado ( 0) indica completitud.

Los bits del byte B que representan indicadores de prueba comunes (aquellos que no son específicos del tipo de motor) se asignan de la siguiente manera:

Los bytes C y D se asignan de la siguiente manera para los tipos de motores de encendido por chispa (por ejemplo, motores Otto o Wankel):

Los bytes C y D se asignan alternativamente de la siguiente manera para los tipos de motores de encendido por compresión (motores diésel):

  1. Una idea errónea común es que el C4/D4 era refrigerante de aire acondicionado, [ 7 ] sin embargo, había estado listado como reservado en J1979 durante años, y recientemente se definió como GPF.
  2. NMHC podría significar hidrocarburos no metánicos, pero J1979 no nos aclara esto. La traducción sería el sensor de amoníaco en el catalizador SCR.

Servicio 01 PID 41 - Monitorear el estado de este ciclo de accionamiento

Una solicitud para este PID devuelve 4 bytes de datos. Los datos devueltos tienen el mismo formato que los devueltos para el PID 01 , con una excepción: el primer byte siempre es cero.

Servicio 01 PID 78 y 79 - Temperatura de los gases de escape (EGT) Banco 1 y Banco 2

Una solicitud para uno de estos dos PID devolverá 9 bytes de datos. El PID 78 devuelve datos relacionados con los sensores EGT del banco 1, mientras que el PID 79 devuelve datos similares para el banco 2. El primer byte es un campo codificado en bits que indica qué sensores EGT son compatibles con el banco correspondiente.

El primer byte se codifica en bits de la siguiente manera:

Los bytes B a I proporcionan enteros de 16 bits que indican las temperaturas de los sensores. Los valores de temperatura se interpretan en grados Celsius en el rango de -40 a 6513,5 (escala 0,1), utilizando el método habitual.(A×256+B)/1040{\displaystyle (A\times 256+B)/10-40}fórmula (MSB es A, LSB es B). Solo son válidos los valores para los que el sensor correspondiente es compatible.

Servicio 03 (no requiere PID): muestra los códigos de diagnóstico de averías almacenados.

Una solicitud para este servicio devuelve una lista de los códigos de diagnóstico de fallas (DTC) que se han registrado. La lista está encapsulada utilizando el protocolo ISO 15765-2 .

Si hay dos o menos códigos de diagnóstico de fallas (DTC, por sus siglas en inglés) (hasta 4 bytes), se devuelven en una trama única ISO-TP (SF). Si hay tres o más DTC en la lista, se informan en varias tramas, y el número exacto de tramas depende del tipo de comunicación y de los detalles de direccionamiento.

Cada código de avería requiere 2 bytes para su descripción. En estos bytes se codifican una categoría y un número. Normalmente se muestra decodificado en un formato de cinco caracteres como " U0158 ", donde el primer carácter (en este caso, 'U') representa la categoría a la que pertenece el DTC, y los cuatro caracteres restantes son una representación hexadecimal del número dentro de esa categoría. Los dos primeros bits ( A7 y A6 ) del primer byte (A) representan la categoría. Los 14 bits restantes representan el número. Cabe destacar que , dado que el segundo carácter se forma a partir de solo dos bits, solo puede estar dentro del rango 0-3 .

  1. Si bien comúnmente se la conoce como la categoría de red, originalmente pudo haber sido la categoría "indefinida", de ahí el uso de la letra "U" en lugar de "N".

Un ejemplo de código de diagnóstico de avería (DTC) de " U0158 " se decodificaría de la siguiente manera:

El código resultante de cinco caracteres, por ejemplo " U0158 ", se puede consultar en una tabla de códigos de diagnóstico de averías (DTC) OBD-II para obtener una descripción precisa de lo que representa. Cabe destacar que, si bien algunos rangos de códigos DTC tienen significados genéricos que se aplican a todos los vehículos y fabricantes, el significado de otros puede variar según el fabricante o incluso el modelo.

También cabe destacar que los DTC a veces pueden aparecer en formato de cuatro caracteres, por ejemplo, " C158 ", que es simplemente la representación hexadecimal de los dos bytes, sin que se haya realizado la decodificación adecuada con respecto a la categoría.

Servicio 09 PID 08 - Seguimiento del rendimiento en uso para motores de encendido por chispa

Proporciona información sobre el rendimiento en pista de los bancos de catalizadores, los bancos de sensores de oxígeno , los sistemas de detección de fugas por evaporación, los sistemas EGR y el sistema de aire secundario.

El numerador de cada componente o sistema registra la cantidad de veces que se han dado todas las condiciones necesarias para que un monitor específico detecte una avería. El denominador de cada componente o sistema registra la cantidad de veces que el vehículo ha funcionado en las condiciones especificadas.

El recuento de elementos de datos debe indicarse al principio (el primer byte).

Todos los elementos de datos del registro de Seguimiento del rendimiento en uso constan de dos bytes y se informan en este orden (cada mensaje contiene dos elementos, por lo tanto, la longitud del mensaje es 4).

Servicio 09 PID 0B - Seguimiento del rendimiento en uso para motores de encendido por compresión

Proporciona información sobre el rendimiento en pista durante su uso para el catalizador NMHC, el monitor del catalizador de NOx, el monitor del adsorbente de NOx , el monitor del filtro de partículas, el monitor del sensor de gases de escape, el monitor EGR/VVT, el monitor de presión de sobrealimentación y el monitor del sistema de combustible.

Todos los elementos de datos constan de dos bytes y se informan en este orden (cada mensaje contiene dos elementos, por lo tanto, la longitud del mensaje es 4):

PID enumerados

Algunos PID deben interpretarse de manera especial y no necesariamente están codificados bit a bit de forma exacta ni en ninguna escala. Los valores de estos PID se enumeran .

Servicio 01 PID 03 - Estado del sistema de combustible

Una solicitud para este PID devuelve 2 bytes de datos. El primer byte describe el sistema de combustible n.° 1. El segundo byte describe el sistema de combustible n.° 2 (si existe) y está codificado de forma idéntica al primero. El significado asignado al valor de cada byte es el siguiente:

Cualquier otro valor es una respuesta no válida.

Servicio 01 PID 12 - Estado del aire secundario ordenado

Una solicitud para este PID devuelve un único byte de datos que describe el estado del aire secundario.

Cualquier otro valor es una respuesta no válida.

Servicio 01 PID 1C - Normas OBD a las que se ajusta este vehículo

Una solicitud para este PID devuelve un único byte de datos que describe con qué estándares OBD se diseñó para cumplir esta ECU. Los diferentes valores que puede contener el byte de datos se muestran a continuación, junto con su significado:

Servicio 01 PID 51 - Codificación del tipo de combustible

Este PID devuelve un valor de una lista enumerada que indica el tipo de combustible del vehículo. El tipo de combustible se devuelve como un solo byte, y el valor viene dado por la siguiente tabla:

Cualquier otro valor está reservado por ISO/SAE. Actualmente no existen definiciones para vehículos de combustible flexible .

Controladores PID no estándar

La mayoría de los PID de OBD-II en uso no son estándar. En la mayoría de los vehículos modernos, la interfaz OBD-II admite muchas más funciones de las que cubren los PID estándar, y existe una superposición relativamente pequeña entre los fabricantes de vehículos en lo que respecta a estos PID no estándar.

Existe muy poca información disponible públicamente sobre PID no estándar. La principal fuente de información sobre PID no estándar de diferentes fabricantes la mantiene el Equipment and Tool Institute ( ETI), con sede en EE. UU ., y solo está disponible para sus miembros. El precio de la membresía del ETI para acceder a los códigos de diagnóstico varía según el tamaño de la empresa, definido por las ventas anuales de herramientas y equipos automotrices en Norteamérica.

Sin embargo, ni siquiera la membresía en ETI proporcionará documentación completa para PID no estándar. ETI afirma: [ 8 ] [ 9 ]

Algunos fabricantes de equipos originales (OEM) se niegan a utilizar ETI como fuente única de información sobre herramientas de diagnóstico. Prefieren trabajar con cada fabricante de herramientas por separado. Estas empresas también exigen la firma de un contrato. Los precios varían, pero a continuación se muestra un resumen de los precios anuales al 13 de abril de 2015:

Formato de bus CAN (11 bits)

Según la norma ISO 15765-4, los protocolos de emisiones (incluidos OBD-II, EOBD, UDS, etc.) utilizan la capa de transporte ISO-TP (ISO 15765-2). Todas las tramas CAN enviadas mediante ISO-TP tienen una longitud de datos de 8 bytes (y un DLC de 8). Se recomienda rellenar los bytes de datos no utilizados con 0xCC.

La consulta y respuesta del PID se produce en el bus CAN del vehículo. Las solicitudes y respuestas OBD estándar utilizan direcciones funcionales. El lector de diagnóstico inicia una consulta utilizando el ID CAN 7DFh, que actúa como dirección de difusión , y acepta respuestas de cualquier ID en el rango de 7E8h a 7EFh. Las ECU que pueden responder a las consultas OBD escuchan tanto el ID de difusión funcional 7DFh como un ID asignado en el rango de 7E0h a 7E7h. Su respuesta tiene un ID igual a su ID asignado más 8, por ejemplo, de 7E8h a 7EFh.

Este enfoque permite hasta ocho ECU, cada una respondiendo de forma independiente a las consultas OBD. El lector de diagnóstico puede usar la ID en la trama de respuesta de la ECU para continuar la comunicación con una ECU específica. En particular, la comunicación multitrama requiere una respuesta a la ID específica de la ECU en lugar de a la ID 7DFh.

El bus CAN también puede utilizarse para la comunicación más allá de los mensajes OBD estándar. El direccionamiento físico utiliza identificadores CAN específicos para módulos concretos (por ejemplo, 720h para el cuadro de instrumentos en los Ford) con tramas de datos propietarias.

Consulta

La consulta PID funcional se envía al vehículo a través del bus CAN con ID 7DFh, utilizando 8 bytes de datos. Los bytes son:

Respuesta

El vehículo responde a la consulta PID en el bus CAN con identificadores de mensaje que dependen del módulo que haya respondido. Normalmente, la ECU del motor o principal responde con el identificador 7E8h. Otros módulos, como el controlador híbrido o el controlador de la batería en un Prius, responden con los identificadores 07E9h, 07EAh, 07EBh, etc. Estos son 8h superiores a la dirección física a la que responde el módulo. Aunque el número de bytes en el valor devuelto es variable, el mensaje utiliza 8 bytes de datos independientemente ( protocolo del bus CAN en formato de trama con 8 bytes de datos). Los bytes son:

Véase también

Referencias

  1. 1 2 "Información básica | Diagnóstico a bordo (OBD)" . US EPA. 16 de marzo de 2015. Consultado el 24 de junio de 2015 .
  2. "Escape PHEV TechInfo - PIDs" . Electric Auto Association - Vehículo eléctrico híbrido enchufable . Consultado el 11 de diciembre de 2013 .
  3. 1 2 "PID extendidos - Variables con signo" . Torque-BHP . Consultado el 17 de marzo de 2016 .
  4. 1 2 "Orden de regulación final" (PDF) . EE. UU.: Junta de Recursos del Aire de California. 2015. Recuperado el 4 de septiembre de 2021 .
  5. "Códigos y significados OBD2" . Lituania: Baltic Automotive Diagnostic Systems . Consultado el 11 de junio de 2020 .
  6. "Datos de cuadro congelado OBD2: ¿Qué son? ¿Cómo leerlos?" . OBD Advisor . 28-02-2018 . Consultado el 14-03-2020 .
  7. Programa de autoaprendizaje 942600: Diagnóstico avanzado del rendimiento del motor (PDF) . Audi of America. 1996. pág. 53. Consultado el 8 de mayo de 2026. Y para 1996, OBD-II también tendrá que monitorear estos sistemas: [...] CFC : esto solo se aplica si el vehículo usa CFC en sus sistemas de aire acondicionado: para 1996, es muy dudoso que algún fabricante siga usando CFC. 
  8. "Preguntas frecuentes sobre la membresía completa de ETI" . The Equipment and Tool Institute. Archivado del original el 10 de marzo de 2017. Consultado el 29 de noviembre de 2013 . mostrando el costo de acceso a la documentación PID de OBD-II
  9. "Requisitos especiales de licencia OEM" . The Equipment and Tool Institute. Archivado del original el 3 de mayo de 2017. Consultado el 13 de abril de 2015 .

Lecturas adicionales

  • "Modos de prueba de diagnóstico E/E". Comité de estándares de diagnóstico del sistema EE del vehículo. SAE J1979 . SAE International. 16 de febrero de 2017. doi : 10.4271/J1979_201702 .
  • "Anexo digital de modos de prueba de diagnóstico E/E". Comité de estándares de diagnóstico del sistema EE del vehículo. SAE J1979-Da . SAE International. 16 de febrero de 2017. doi : 10.4271/J1979DA_201702 .
  • Wagner, Bernhard. "El ciclo de vida de un código de diagnóstico de avería (DTC)" . KPIT . Alemania . Consultado el 29 de agosto de 2020 .