FuelTech ManualsGlosarioBuscar

3. Señales: del valor físico a los bits

Versión 1.2Software: FuelTech Vision 3.0Firmware: 00.03.00.01Productos: FT700, FT470, VisionFT2026-10-13

#Mensaje y señal

Una trama CAN tiene hasta 8 bytes (64 bits) de datos. Raramente un único valor ocupa la trama entera: el fabricante divide los bytes en varias señales. Una trama de motor puede traer, por ejemplo, las RPM en 16 bits, la temperatura en 8 bits, la posición del acelerador en 8 bits y algunos interruptores de 1 bit.

Para leer o escribir una señal es necesario saber exactamente:

#Valor bruto y valor físico

Lo que viaja por la red es siempre un número entero, el valor bruto. El valor físico (rpm, °C, bar, %) sale de un cálculo simple:

valor físico = valor bruto × factor + offset

Conversión del valor bruto en valor físico.
Conversión del valor bruto en valor físico.

El factor define la resolución. Un factor 0,1 en una presión en bar significa que cada unidad del valor bruto vale 0,1 bar. El offset desplaza el rango. La temperatura con offset −40 permite transmitir desde −40 °C hacia arriba usando solo números positivos. Para transmitir, el cálculo es el inverso: valor bruto = (valor físico − offset) ÷ factor.

#Orden de bytes: Intel y Motorola

Cuando una señal ocupa más de un byte, es necesario saber qué byte viene primero.

El bit de inicio también cambia de significado. En la convención usada por los archivos DBC, en Intel el bit de inicio es el bit menos significativo de la señal; en Motorola es el bit más significativo, y la numeración sigue byte a byte.

La misma señal de 12 bits en los dos órdenes de bytes, en la numeración de bits del DBC.
La misma señal de 12 bits en los dos órdenes de bytes, en la numeración de bits del DBC.

Equivocarse en el orden de bytes no genera un error: genera un número absurdo. Una señal de 16 bits con los bytes invertidos transforma 1000 rpm en 59395 rpm. Si el valor leído salta de forma extraña o queda enorme, la primera sospecha es el orden de los bytes.

#Señales con signo (negativas)

Los valores que pueden ser negativos, como el avance de ignición, la corrección de combustible o la aceleración lateral, suelen transmitirse en complemento a dos, la forma estándar de escribir números negativos en binario: la mitad superior del rango de valores brutos cuenta como negativa. En una señal de 8 bits con signo, los valores brutos 0 a 127 valen 0 a 127 y 128 a 255 valen de −128 a −1; el valor bruto 255 (0xFF) significa −1. Si la señal se configura sin signo, el mismo dato aparece como 255. En el DBC, el signo + indica sin signo y − indica con signo.