La tensione del modulo di controllo e la tensione della batteria sono uguali?


8

La tensione del modulo di controllo (dalla modalità OBD 01 PID 42) e la tensione della batteria sono uguali? In caso contrario, qual è la relazione tra loro? Perché il valore massimo della tensione del modulo di controllo (dalla modalità OBD 01 PID 42) è 65.535 V, quando la tensione della batteria può essere al massimo di 14 V in un'automobile?


Per chiarimenti: stai effettivamente ricevendo 65.535 V come lettura, o ti stai solo chiedendo perché la lettura massima possibile è quel particolare numero?
user253751

1
Se fosse un valore massimo di 99.999, il ragionamento sarebbe abbastanza chiaro (5 cifre, con il punto decimale dopo il secondo). 65535 è in binario quello che 99999 è in decimale.
user253751

Risposte:


9

Sembra che il problema sia con il segnale in arrivo.

A meno che il tuo veicolo non sia dotato di un condensatore di flusso , 65 V attraverso la batteria è un po 'troppo. Anche i camion pesanti non gestiscono quella tensione per quanto ne sappia.

65535 è il numero intero massimo a 16 bit senza segno.

Guardando la pagina wiki OBD-II sembra che la formula utilizzata dal PID OBD-II secondo SAE J1979 sia:

( A * 256 + B ) / 1000

Dove A sono i primi due byte, B sono i successivi due byte. Se A e B sono entrambi 255 (quindi 11111111 in binario) otterrai la massima tensione possibile, 65.535 V


Se questo risultato proviene da un simulatore, darei la colpa lì. Se questo è il segnale proveniente da un veicolo reale, verificherei un cortocircuito della ECU (non sono sicuro però). Assicurati di eseguire il polling dell'indirizzo giusto per escluderlo come una possibilità per la tensione insolita.

La tensione del modulo di controllo è la tensione fornita alla ECU. Non è il voltaggio della batteria ma di solito è abbastanza vicino quando il veicolo è in moto.


1
Non come il software automobilistico è così buono per cominciare. Questa è una risposta fantastica, comunque. :)
febbre da corsa

6

Penso che quello che vedi sia solo un artefatto del modo in cui funzionano i computer. Il numero che dai è solo 65535 con un decimale inserito al suo interno. Questo è un numero speciale per i computer: è il valore più grande che può essere contenuto in un numero intero a 16 bit (2 byte). Quindi, in poche parole, questo è il valore più grande che può essere restituito per quella particolare misurazione a causa della variabile del computer che hanno deciso di utilizzare. È frutto della programmazione: non si aspettano che misurino mai 65 volt. Se questo fosse un valore che potrebbe essere positivo o negativo, potresti vedere un valore massimo di 32.767.

Un altro numero che potresti vedere molto è 255. Questo è il valore massimo di un numero senza segno a 8 bit (singolo byte). Se il valore può essere positivo o negativo, il valore massimo è 127.


Vedi la mia risposta Penso di essere su qualcosa ...
Zaid,

Di solito 12 7 sarà il valore massimo di un intero a 8 bit con segno.
user253751

@immibis, Mi hai preso - avevo "firmato" nella mia testa e stavo pensando -128. Grazie.
JPhi1618,

1

Quando il motore è in funzione, la tensione dovrebbe tracciare l'uscita dell'alternatore / regolatore di tensione (che è anche la tensione di carica della batteria). Quando il motore non è in funzione, seguirà la tensione della batteria.

Posso solo speculare sul motivo dell'ampia gamma di tensioni. L'uscita dell'alternatore non regolato può superare i 48 V, quindi potrebbe essere un utile dato diagnostico. Oppure, potrebbe essere solo un artefatto della codifica digitale, che l'intervallo di valori supera ciò che è necessario.


1
Se il CMV raggiunge 65 + vdc, come sta monitorando la tensione dell'alternatore? Ciò friggerebbe completamente una batteria in pochissimo tempo. La maggior parte di un veicolo in esecuzione dovrebbe leggere sull'alternatore è ~ 14vdc. C'è qualcosa di troppo passato ed è un arrivederci-batteria.
Pᴀᴜʟsᴛᴇʀ2

@ Paulster2 Ho aggiornato la mia risposta per rispondere alle tue domande.
kmarsh

1

La tensione del modulo di controllo è la tensione della batteria, meno l'eventuale caduta di volt nel cablaggio tra la batteria e la ECU. 65535 è un registro completo a 16 bit. La centralina probabilmente funzionerà con numeri interi (calcola più velocemente) ma converte l'output finale dei suoi calcoli per OBD in forma 'a virgola mobile' o 'reale' (numeri che possono usare punti decimali).

Il motivo per cui il massimo non è 65535, 6553.5 o 655.35 è che con il punto decimale posto a due a sinistra consente la massima precisione nello stadio intero di calcolo fornendo allo stesso tempo abbastanza posizioni a sinistra del decimale per visualizzare tutti i valori probabili. In sostanza, consente alla ECU di lavorare con 3 cifre decimali in numeri interi. Forse non è così importante per la tensione della batteria, ma presumo che sia il principio.

Potrebbe non esserci stata la possibilità di applicare artificialmente un valore massimo inferiore a 65535, ma anche se non ci fosse alcun vantaggio nel farlo.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.