<b>Interfaccia OBD</b>: ce l'ho fatta! [FOTO]

Kontorotsui

Nuovo Alfista
12 Ottobre 2004
7,714
0
36
Pisa - Toscana Virtual Club
Mi sono permesso di mettere il titolo in grassetto perche' penso sia una notizia che molti aspettavano.

Senza tanti preamboli: vi ricordate che qualche tempo fa annunciai che avrei fatto il tentativo di interfacciarmi alla porta OBD della 147? Ebbene, domenica pomeriggio ci sono riuscito :fiori) :fiori) :fiori)

Ho ordinato la scheda di interfaccia alla ScanTool, che e' arrivata sabato scorso.
Il giorno dopo, insieme a Scott147, ho inserito i connettori e attivato il software e... funziona :A)

Tramite la porta OBDII si riescono a leggere in tempo reale valori quali gli RPM, la velocita', la temperatura dell'acqua, il carico del motore, la quantita' e pressione dell'aria che entra nel motore, quanto e' premuto l'acceleratore, lo stato dell'EGR e la pressione del carburante.

Il software e' piuttosto rozzo, ma ci ha permesso di leggere dati molto interessanti.
Scott147 ha fatto le foto, che mettero' su quanto prima (penso domani) ma per capirsi, ecco da alcune immagini prese dal sito che illustrano come ci comparivano i dati.

(Tenete conto che queste sono immagini del sito, a noi ci comparivano i dati giusti e soprattutto in unita' metriche non americane...)

sensor_data_pg1.png

sensor_data_pg2.png


Il bello e' stato quando siamo andati in giro con la mia 147 a provare dal vivo i dati sul portatile mentre ci si muoveva in auto.
Oltretutto, un altro software ha un'interfaccia grafica assai piu' carina:

in6.jpg


Stupendo, eh? :elio)

Vi anticipo che ci sara' ancora da lavorare un bel po', sia sull'hardware che sul software, ma intanto i risultati parziali della prima ricognizione sono i seguenti:

1) La nostra 147 ha un'interfaccia OBD che aderisce perfettamente agli standard diagnostici richiesti/imposti dalla UE.
Purtroppo, la brutta notizia e' che i dati effettivamente disponibili sono piuttosto pochi rispetto a quanti potrebbero essere visualizzati. Su almeno 80 disponibili, ne vediamo nemmeno 20 :mecry)
Lo standard non obbliga le case a rendere disponibile ogni genere di informazione, ed esiste una apposita modalita' diagnostica che elenca quali di queste informazioni sono effettivamente disponibili sulla OBD.
Nel caso della 147, almeno al primo tentativo che si e' fatto, i dati sono appunto relativamente pochi, e ve li ho gia' elencati sopra.
Pero' bastano per fare un sacco di belle cose... come registrare (modello scatola nera) la velocita' dell'auto in ogni istante, farsi un display completamente digitale (vedi immagine sopra), leggere l'effettiva temperatura dell'acqua (e non quella approssimata) e soprattutto (vedi punto 2) quella che a quanto pare e' l'"effettiva" velocita'. :elio)

2) Come accennato nel punto 1, una delle prime scoperte che abbiamo fatto e' che a quanto pare dalla OBD si legge la velocita' in gran parte depurata dal famoso scarto del tachimetro. Infatti, andando a 50, la OBD segnava tipo 46, andando a 100, circa 94. Si tratta dunque di uno scarto tra il 6 e l'8%, che e' quello mediamente lamentato da chi ha confrontato la velocita' indicata con quella reale.
C'e' da precisare, a scanso di equivoci, che la centralina non ha un GPS da cui capisce la sua effettiva velocita'... quindi si basa comunque sul numero di giri delle ruote e, di conseguenza, sulla presunta circonferenza del pneumatico.
Vista la ben piu' credibile misurazione fornita dalla centralina, con Scott abbiamo fatto l'ipotesi che la centralina sappia, e tenga conto, di quali cerchi siano stati montati sull'auto. Naturalmente, questo vale sulla mia che e' nata coi cerchi da 17... e quindi, sempre in ipotesi, presumiamo che in fabbrica in qualche modo impostino la dimensione dei cerchi nella centralina.
In alternativa, potrebbe trattarsi di uno scarto introdotto dalla strumentazione analogica (la lancetta) del cruscotto.

3) Interessante e' l'indicazione del carico sul motore. Scott147 ha notato, durante le nostre prove in movimento, che tale indicatore cambia quando, a velocita' costante, l'auto e' in salita o in discesa.
Abbiamo ipotizzato che si tratti di un feedback sulla contro-coppia che il motore subisce a causa del momento di inerzia quando si accelera, del peso dell'auto quando si e' in salita (e negativo in discesa) e della resistenza dell'aria.
In pratica, dovrebbe misurare quanto il motore "lavora" per accelerare, contrastare i vari attriti e il peso dell'auto in salita.
Abbiamo anche ipotizzato che sia proprio la combinazione di questo carico sul motore e il numero di giri, a fornire l'indicazione del consumo istantaneo sul B/C.
Per inciso, questa indicazione e' quella in basso a destra nell'ultima immagine qui sopra.... quella del cruscotto digitale.

4) Secondo me, ci sono un sacco di altri dati, in formato riservato Alfa Romeo, che passano attraverso la OBD. Infatti lo standard lascia ampi spazi vuoti nella codifica dei vari comandi, per dare alle case automobilistiche la possibilita' di estendere il protocollo con altri parametri e valori specifici della casa.
Tutto sta nello scoprirli, e non sara' facile...

5) E' preoccupante la velocita' di aggiornamento dei dati. Se vedete le immagini del software, c'e' indicata la frequenza di aggiornamento... che si attesta, almeno sul portatile di Scott147, sui 3 Hz... cioe' 3 volte al secondo. Che e' molto poco per una porta come la OBD che va a 10400 baud (e l'interfaccia col PC a 9600), quando lo scambio di dati e' dell'ordine di 4-5 byte per ogni lettura.
Suppongo, e spero, che con il software che sto scrivendo io si riesca a leggere i dati moooolto piu' velocemente, ma finche' non ho modo di provare non vi posso fare promesse :ka)


Per adesso e' tutto, spero di avervi dato una buona notizia e vi confermo che col gruppetto di 147isti che si e' offerto per lavorare alla OBD ci impegneremo per andare a fondo della vicenda.
Se ci sono altri volontari, fatemelo sapere che vi iscrivo al mini-forum nascosto della OBD che ho appositamente creato su FFZ.

:ciao)
 
awe":1357uqeb ha detto:
ma questa interfacccia funziona anche sul benza ??

Non c'e' assolutamente nessun motivo per cui non dovrebbe, anzi... in teoria sicuramente si, dato che l'aderenza allo standard OBD per i benzina e' stata imposta molto prima dei diesel.

Se ci fosse uno dalle mie parti che ha un benzina su cui provare...

(Noooos, ti fischiano le orrecchie? :asd) Porta la tua bambina dal dottor Kontorotsui, che dobbiamo analizzarla :asd) :elio) :asd) )
 
lelesch81":389trg5t ha detto:
Potresti risolvere il problema di molti Connect After-Market... :nod)

Effettivamente ho letto proprio i vari dati sul CAN e si parlava di vari dispositivi non riconosciuti/individuati. E' del tutto possibile che ci sia il modo di correggere quel problema :nod)

Fatemici lavorare un po' poi vi sapro' dire :D
 
awe":3dcxgzg5 ha detto:
ma puoi modificare anche i paramentri ? :asd) :elio)

Eheh... allora, sul bus OBD tutto e' in lettura... quindi non si puo'.

Cosa si puo' fare, e' cancellare gli errori riportati sulla centralina. Quindi se vi da' avaria controllo motore, e' possibile verificare il motivo (sulla OBD, che c'e' apposta per questo!) e cancellarlo come si fa con l'examiner.

Infatti, credo volutamente, questa possibilita' l'hanno messa sul bus pubblico (e' il servizio 3... clear DTC codes... che sono appunto i codici di errore memorizzati nella centralina) per permettere a tutti i meccanici, e non solo quelli della casa, di intervenire sugli errori segnalato/memorizzati dalla centralina.
 
Kontorotsui":2oczaw3j ha detto:
awe":2oczaw3j ha detto:
ma puoi modificare anche i paramentri ? :asd) :elio)

Eheh... allora, sul bus OBD tutto e' in lettura... quindi non si puo'.

Cosa si puo' fare, e' cancellare gli errori riportati sulla centralina.
e riazzerare il conto alla rovescia dei tagliandi si potrebbe ?
 
giangirm":28u2wsyl ha detto:
Kontorotsui":28u2wsyl ha detto:
awe":28u2wsyl ha detto:
ma puoi modificare anche i paramentri ? :asd) :elio)

Eheh... allora, sul bus OBD tutto e' in lettura... quindi non si puo'.

Cosa si puo' fare, e' cancellare gli errori riportati sulla centralina.
e riazzerare il conto alla rovescia dei tagliandi si potrebbe ?

Quello credo che sia uno dei parametri particolari dell'alfa romeo... se si fa con l'examiner, si, si puo'. Pero' bisogna sapere quali sono i dati da inviare alal porta... e non credo sia un'informazione che l'Alfa Romeo rende pubblica :ka)

Quindi le soluzioni sono un reverse engineering, torturare un ingegnere Alfa Romeo per farcelo dire, oppure cracckare il software dell'examiner.
Peccato che tutte e tre siano illegali... :asd)

Beh... oddio... se l'ingegnere lo si seduce in qualche modo... :culo)
 
bella prova....
io la mia interfaccia non ho ancora avuto modo di provarla, ma penso comunque di rifarla un pò meglio

potreste farmi un'elenco del materiane usato compreso il Software che ho visto diverso dal mio?

ciao e grazie
 
Bravissimo!!!

Ma non stavi organizzando una mailing list per gli interessati?

Il SW che hai mostrato e' specifico per l'interfaccia che hai acquistato, o va bene con una interfaccia autocostruita?
 
Complimenti davvero...interessantissimo!! Gia mi vedo col display digitale in macchina! :elio)
 
Shynji":3bhz2ndn ha detto:
bella prova....
io la mia interfaccia non ho ancora avuto modo di provarla, ma penso comunque di rifarla un pò meglio

potreste farmi un'elenco del materiane usato compreso il Software che ho visto diverso dal mio?

ciao e grazie

Hardware: Elmscan della Scantool
Software: quello della Scantool e altri free e/o opensource trovati in rete.
 
bigno72":1a1zfplc ha detto:
Bravissimo!!!

Ma non stavi organizzando una mailing list per gli interessati?

Il SW che hai mostrato e' specifico per l'interfaccia che hai acquistato, o va bene con una interfaccia autocostruita?

Di piu', ho creato un forum riservato (anche per leggere bisogna essere iscritti) su FFZ.
Chi e' interessato a partecipare, si iscriva (se non l'ha gia' fatto) a FreeForumZone e poi mi mandi il suo userID che lo iscrivo al forum per poterci accedere.
Occhio che se non mi mandate lo userID il forum vi apparira' senza cartelle!

Il software che ti ho mostrato e' specifico per l'interfaccia, che contiene un chip (ELM232) che si occupa di buona parte dei dettagli di comunicazione tediosi (inizializzazione, keep-alive, header, CRC, ecc.) dando al programmatore una ben piu' comoda interfaccia tipo terminale/modem.
Un'interfaccia uguale te la puoi fare anche da solo, ci sono pochi componenti oltre questo ELM232 che comunque puoi comprare.
Se invece ti costruisci un'interfaccia piu' primitiva, cioe' che traduce solo i livelli di segnale, devi fare via software tutto il casino della inizializzazione a 3 (tre) baud, la comunicazione a 10400 baud, gli header, il CRC finale, ecc.

Per inciso, il MIO software (in Java) che sto scrivendo, ha una architettura modulare per cui, a patto di scrivere il modulo di basso livello per la specifica interfaccia, potrai usarlo per qualsiasi interfaccia con la OBD tu compri. Anche una delle altre che contiene un chip diverso (tipo la R3) o quelle primitive che si costruiscono con un paio di diodi, optoelettronici e resistenze.


Ah, grazie agli altri per i complimenti :D
Comunque c'e' ancora molto da lavorare...
Vi avverto che per adesso mi concentrero' sulla OBD, poi passero' a studiare la rete CAN.
Per non accendere troppe speranze che poi potrei deludere, vi avviso anche che non e' detto che si possa intervenire sui vari problemi del connect (lampeggio contaKm, suppongo)... visto che la OBD e' in sola lettura a parte l'utilissima possibilita' di cancellare gli errori dalla centralina. E' del tutto possibile che anche la rete CAN sia in sola lettura, ma non vi posso dire niente al momento.

Quindi datemi tempo di lavorarci su e appena ci saranno novita' state certi che vi faro' sapere :nod)
 
Kontorotsui":fhtx7mtc ha detto:
Per non accendere troppe speranze che poi potrei deludere, vi avviso anche che non e' detto che si possa intervenire sui vari problemi del connect (lampeggio contaKm, suppongo)... visto che la OBD e' in sola lettura a parte l'utilissima possibilita' di cancellare gli errori dalla centralina. E' del tutto possibile che anche la rete CAN sia in sola lettura, ma non vi posso dire niente al momento.

non credo sia possibile, altrimenti anche le officine/concessionarie sarebbero in grado di eliminare il lampeggio :ka) :ka)
 
Top