El servicio 0x01 del protocolo OBD2 en el toyobaru (IV)

Analizando los PIDs 15º al 21º ...

Seguimos descodificando los siguientes PIDs soportados por el toyobaru ...

15) 0x15 Sensor de oxígeno. Banco 1 - sensor 2

Llama la atención que la consulta al PID 0x13 responda con la presencia de dos sensores de oxígeno (como vimos en la anterior entrada de este blog sobre este tema) y sin embargo no esté disponible la consulta OBDII sobre el banco 1 - sensor 1, que le correspondería el PID 0x14.

Sin embargo si disponemos de esta consulta del banco 1 - sensor 2, mediante el PID 0x15.

Veremos más adelante que podemos obtener información sobre el sensor 1 de oxigeno del banco 1 mediante el PID 0x24, y sin embargo no disponemos del PID equivalente 0x25 para el sensor 2. No se muy bien a que obedece esta "asimetría" en la obtención de información de los sensores de oxígeno.

Esta consulta devuelve 2 bytes de datos.

>> 7DF: 02 01 15 00 00 00 00 00
<< 7E8: 04 41 15 00 80 00 00 00

El primer byte (0x00 en el ejemplo) indica la tensión de salida del sensor de oxigeno, valor que se obtiene multiplicando el valor obtenido por 0.005, obteniendo el valor en voltios de la salida de la sonda y que estará comprendido entre 0 y 1,275 V.

En el ejemplo, y dado que el coche estaba con el motor parado el resultado obtenido ha sido 0 V.

El segundo byte (0x80 en el ejemplo) indica la actuación a corto plazo sobre riqueza de la mezcla aire/gasolina. Se calcula (en porcentaje) mediante la fórmula: -100 + Byte * 100 / 128, de modo que oscila entre un -100% (empobrecer la mezcla al máximo) y un +99,22% (enriquecer la mezcla al máximo).

El valor obtenido en el ejemplo (0x80) se corresponde con el 0 (no actuar sobre la mezcla).

16) 0x1C Estándar OBD implementado en este vehículo

La solicitud del PID 0x1C devuelve un único byte de información

>> 7DF: 02 01 1C 00 00 00 00 00
<< 7E8: 03 41 1C 06 00 00 00 00

mediante el cual se codifica los requerimientos OBDII para los cuales se ha diseñado el vehículo. El valor 0x06 que devuelve el toyobaru se corresponde con la norma EOBD, la variación europea de la norma OBD2.

No conozco las diferencias ni lo que suponen estas variaciones, pero probablemente por aquí empiecen las justificaciones de por que los toyobarus europeos tienen 200 CV. y los americanos, japoneses y australianos tienen 205 CV. ...

17) 0x1F Tiempo desde que se puso en marcha el motor

La solicitud del PID 0x1F devuelve dos bytes de información

>> 7DF: 02 01 1F 00 00 00 00 00
<< 7E8: 04 41 1F 00 00 00 00 00

que codifican cuanto tiempo lleva encendido el motor. Para calcularlo, basta multiplicar el primer byte por 256 y sumarle el segundo byte para obtener el tiempo en segundo. De esta forma se puede codificar un máximo de 65.535 segundos, que permiten hasta un máximo de 18 horas, 12 minutos y 15 segundos. Tiempo que, a priori, debería ser más que suficiente para cualquier ciclo continuo de conducción (por lo menos en el toyobaru, que seguro que se queda sin gasolina antes), pero aun así la norma especifica que si ese tiempo se supera, la ECU debe seguir mandando el valor máximo y no volver a empezar desde cero.

18) 0x21 Distancia recorrida con la luz indicadora de fallo (MIL) encendida

La solicitud del PID 0x21 también devuelve dos bytes de información

>> 7DF: 02 01 21 00 00 00 00 00
<< 7E8: 04 41 21 00 0A 00 00 00

que codifican la distancia recorrida por el vehículo con la luz MIL (Malfunction indicator light) encendida. Se calcula como en el PID anterior, multiplicando el primer byte recibido por 256 y sumando el segundo byte, representando ahora el valor obtenido kilómetros.

En el ejemplo vemos que se ha recibido 0x00 y 0x0A, lo que significa que en el momento de la prueba mi coche había recorrido 10 km. con la luz MIL encendida.

La norma indica, que como en el caso del PID 0x1F, en el caso de alcanzar el valor máximo (0xFF y 0xFF, o sea, 65.535 km.) el contador no debe reiniciarse y debe permanecer en el valor máximo.

La forma de reiniciar el valor, es mediante el uso del servicio 0x04 de OBDII, o si tras poner 40 veces en servicio el vehículo, la ECU no encuentra ningún error.

19) 0x23 Presión del circuito de combustible (inyección directa de gasolina)

La solicitud del PID 0x23 devuelve de nuevo dos bytes de información

>> 7DF: 02 01 23 00 00 00 00 00
<< 7E8: 04 41 23 00 1E 00 00 00

que codifican el valor de la presión del circuito de combustible de la inyección directa. Para obtener el valor en kPa, hay que multiplicar el primer byte recibido por 2560 y sumarle el segundo byte multiplicado por 10.

En la prueba, y con el motor parado, hemos recibido 0x00 como primer byte y 0x1E en el segundo byte, lo cual indica una presión de 300 kPa en el circuito de inyección. Eso supone unas 3 veces la presión atmosférica, con el motor parado. En funcionamiento se alcanzan valores bastante más elevados.

20) 0x24 Sensor de oxígeno 1

La solicitud del PID 0x24 devuelve hasta 4 bytes de información

>> 7DF: 02 01 24 00 00 00 00 00
<< 7E8: 06 41 24 80 00 46 67 00

que nos permiten obtener información sobre el funcionamiento del sensor de oxigeno #1 del banco 1. En particular los dos primeros bytes nos permiten obtener la relación aire/combustible (lambda) que está midiendo la sonda. Para ello hay que multiplicar el primer byte por 512 y sumarle el segundo byte multiplicado por 2 y dividir todo ello por 65.635. Ello nos dará un valor entre 0 y 2 que indica el factor lambda que mide la sonda.

En la prueba realizada, hemos obtenido 0x80 y 0x00 respectivamente, que ( (512 * 128 + 2 * 0)/65.525) nos da un valor de 1 para el factor lambda (recordemos que durante la prueba el coche tenía el motor parado).

Los otros dos bytes que se reciben indican la tensión en voltios que está midiendo la sonda. Para obtener dicho valor, hay que multiplicar el tercer byte por 2.048 y sumarle el cuarto byte multiplicado por 8 y dividir el resultado por 65.535, lo cual nos dará un valor entre 0 y 8 voltios.

En la prueba realizada, hemos obtenido 0x46 y 0x67 respectivamente, que ( (2.048 * 70 + 8 * 103) / 65.525 ) da un valor de 2,2 v. como medida del sensor.

21) 0x2E EGR ordenado

La solicitud del PID 0x2E devuelve un único byte

>> 7DF: 02 01 2E 00 00 00 00 00
<< 7E8: 03 41 2E 00 00 00 00 00

que indica el porcentaje de recirculación de gases de escape a la admisión ordenado por la ECU.

La primera vez que vi esto me quedé bastante perplejo. ¿ Un EGR en el toyobaru ?. La recirculación de gases de escape a la admisión es típica de los motores diésel para controlar temas de emisiones y penaliza el rendimiento del motor. ¿ como iba a tener una válvula EGR el toyobaru ?

Y no, no tiene una válvula EGR física como tal, que conecte escape con admisión, pero simula el efecto por software.

No he podido encontrar mucha información al respecto, pero al parecer, la centralita del toyobaru juega con la sincronización las válvulas de los cilindros para crear un efecto similar al EGR, es decir, juega con la apertura y cierre de las válvulas de admisión y de escape para que parte de los gases de escape se devuelvan al cilindro (o ni siquiera salgan de él, no se exactamente como lo hace), creando así una función similar al EGR.

Y el PID 0x2C nos indica el porcentaje en el que la ECU aplica este efecto. Para obtener el valor (en porcentaje) basta con multiplicar el byte recibido por 100 y dividirlo por 255.

En la prueba realizada, y dado que el motor está parado, se obtiene un valor de 0.

Añadir un comentario

El código HTML se muestra como texto y las direcciones web se transforman automáticamente.

Page top