Obsah: Všeobecné informácie ↡ Hlavný účel ↡ Odporúčania na použitie ↡ Všeobecné princípy výmeny údajov ↡ Úpravy vykonané v najnovšej verzii…↡ Poznámky a komentáre ↡
Ovládač na spárovanie osobného počítača s palubným systémom autodiagnostiky OBD II podľa noriem SAE (PWM a VPW) a protokolov ISO 9141-2.
Poznámka. Modely vyrábané GM sú v súlade s normou VPW, Ford s normou PWM a ázijské a európske modely s normou ISO 9141-2.
Všeobecné informácie
Ide o mikrokontrolér vyrobený pomocou technológie CMOS.
Pozor! Ovládač NIE JE určený na pripojenie k palubným autodiagnostickým systémom prvej generácie (OBD I)!
Zariadenie funguje ako jednoduchý skener a je určené na čítanie diagnostických kódov a údajov zo systému OBD II (otáčky motora, teplota chladiacej kvapaliny a nasávaného vzduchu, charakteristika zaťaženia, prúdenie vzduchu do motora a pod.) v rámci normy SAE J1979 prostredníctvom akéhokoľvek dizajnu zbernice (PWM, VPW a ISO 9141-2).
Hlavný účel
Na pripojenie k počítaču (PC) stačí 3-vodičové pripojenie k diagnostickému konektoru pomocou 6-vodičového kábla. Napájanie je napájané cez 16-pinový OBD diagnostický konektor.
Schéma ovládača pre párovanie PC so systémom OBD II
Odporúčania na použitie
Na pripojenie zariadenia k autu je možné použiť netienený kábel s dĺžkou maximálne 1,2 m, čo je obzvlášť dôležité pri použití protokolu PWM. Pri použití dlhšieho kábla znížte odpor rezistorov na vstupe zariadenia (R8 a R9 alebo R15). Pri použití tieneného kábla by malo byť tienenie vypnuté, aby sa znížila kapacita.
Kábel na pripojenie k sériovému portu počítača môže byť tiež odtienený. Zariadenie pracuje spoľahlivo s dĺžkou kábla až 9 m Pre výrazne väčšie dĺžky kábla je potrebné použiť výkonnejší komunikátor RS 232.
Topológia elektrických spojení je ľubovoľná. Ak je vlhkosť vysoká, použite dodatočné obtokové kondenzátory.
Bezplatný softvér (prehliadač) na čítanie kódov a údajov je určený na použitie pod DOSom. Malá veľkosť softvérovej aplikácie vo verzii "DOS" umožňuje jej umiestnenie na zavádzaciu disketu DOS a používanie aj na počítačoch vybavených softvérom nekompatibilným s DOS. Voliteľnou podmienkou je dokonca aj prítomnosť pevného disku v počítači.
Všeobecné princípy výmeny údajov
Poznámka. Ak nie je uvedené inak, všetky čísla sú v hexadecimálnom (hexadecimálnom) formáte a sú označené ako dec.
Výmena dát prebieha cez trojvodičové sériové pripojenie, bez použitia výmeny správ inicializačnej služby (handshaking). Zariadenie počúva správy na kanáli, vykonáva prijaté príkazy a odosiela výsledky do osobného počítača (PC), po ktorom sa okamžite vráti do režimu počúvania. Údaje vstupujúce a vystupujúce z kontroléra sú organizované vo forme reťazca sekvenčných bajtov, z ktorých prvý je riadiaci. Kontrolný bajt je zvyčajne číslo od 0 do 15 dec (alebo 0-F hex), popisujúci počet nasledujúcich informačných bajtov. Napríklad 3-bajtový príkaz by vyzeral takto: 03 (kontrolný bajt), 1. bajt, 2. bajt, 3. bajt. Podobný formát sa používa ako pre prichádzajúce príkazy na vyžiadanie palubného autodiagnostického systému, tak aj pre odchádzajúce správy obsahujúce požadované informácie. Je potrebné poznamenať, že v riadiacom byte sa používajú iba štyri bity nižšieho rádu - bity vyššieho rádu sú vyhradené pre niektoré špeciálne príkazy a môžu byť použité počítačom pri inicializácii spojenia s kontrolérom a vyjednávaní protokolu prenosu dát, ako aj ovládač na kontrolu chýb prenosu. Najmä v prípade chyby prenosu ovládač nastaví najvýznamnejší bit (MSB) riadiaceho bajtu na jednu. Po úspešnom prenose sa všetky štyri najdôležitejšie bity nastavia na nulu.
Poznámka. Existuje niekoľko výnimiek z pravidiel používania kontrolného bajtu.
Inicializácia ovládača a palubného systému autodiagnostiky
Na začatie výmeny údajov musí počítač vytvoriť spojenie s kontrolérom a potom inicializovať kontrolér a dátový kanál OBD II.
Nadviazanie spojenia
Po pripojení ovládača k PC a diagnostickému konektoru OBD je potrebné ho inicializovať, aby sa predišlo zamrznutiu spojenému so šumom v sériových linkách, ak boli pripojené pred zapnutím napájania ovládača. Zároveň sa vykonáva jednoduchá kontrola aktivity rozhrania. Najprv sa odošle jednobajtový signál 20 (hex), ktorý kontrolér vníma ako príkaz na vytvorenie spojenia. V odpovedi radič pošle jeden bajt FF hex (255 dec) namiesto riadiaceho a prejde do pohotovostného režimu pre príjem dát. Počítač môže teraz pokračovať v inicializácii dátového kanála.
(Článok bol získaný z portálu MercedesMan)
Poznámka. Tento prípad je jedným z mála, kedy radič nepoužíva riadiaci bajt.
Inicializácia
V tejto fáze sa inicializuje protokol, prostredníctvom ktorého sa budú vymieňať údaje, a v prípade protokolu ISO sa inicializuje palubný systém. Výmena dát sa vykonáva pomocou jedného z troch protokolov: VPW (General Motors), PWM (Ford) a ISO 9141-02 (ázijských/európskych výrobcov).
Poznámka. Existuje mnoho výnimiek: napríklad pri prieskume niektorých modelov áut Mazda sa môže použiť protokol PWM od spoločnosti Ford. Ak sa teda vyskytnú problémy s prenosom, mali by ste najprv skúsiť použiť nejaký iný protokol.
Protokol sa volí odoslaním kombinácie pozostávajúcej z riadiaceho bajtu 41(hex) a bajtu bezprostredne za ním, ktorý určuje typ protokolu: 0 = VPW, 1 = PWM, 2 = ISO 9141. Takže napríklad príkazom 41 (hex) 02(hex) je inicializovaný protokol ISO 9141.
Ako odpoveď radič pošle riadiaci bajt a stavový bajt. Nastavenie riadiaceho bajtu MSB indikuje prítomnosť problémov a nasledujúci stavový bajt bude obsahovať zodpovedajúce informácie. Po úspešnej inicializácii sa odošle riadiaci bajt 01 (hex), čo znamená, že nasleduje bajt stavu overenia. V prípade protokolov VPW a PWM je overovací bajt jednoduchou odozvou bajtu výberu protokolu (0 alebo 1), keď sa inicializuje protokol ISO 9141, bude to digitálny kľúč vrátený zabudovaným procesorom, ktorý určuje, ktorá z dvoch mierne odlišných verzií protokolu sa použije.
Poznámka. Digitálny kľúč má čisto informačný účel.
Treba poznamenať, že inicializácia protokolov VPW a PWM je oveľa rýchlejšia, pretože vyžaduje iba prenos relevantných informácií do kontroléra. Na modeloch, ktoré spĺňajú normu ISO, inicializácia trvá približne 5 sekúnd, strávených výmenou informácií medzi radičom a palubným procesorom, vykonávaná rýchlosťou 5 baudov. Čitateľ by si mal uvedomiť, že na niektorých modeloch vozidiel podľa normy ISO 9141 sa inicializácia protokolu pozastaví, ak sa žiadosť o údaje neodošle do 5-sekundového intervalu – to znamená, že počítač musí automaticky vydávať požiadavky každých pár sekúnd, aj keď je nečinný.
Po nadviazaní spojenia a inicializácii protokolu sa začne normálna výmena dát, ktorá pozostáva z požiadaviek prijatých z PC a odpovedí vydaných kontrolérom.
Postup výmeny údajov
Fungovanie kontroléra pri použití protokolov ISO 9141-2 a rodiny SAE (VPW a PWM) prebieha podľa mierne odlišných scenárov.
Výmena cez protokoly SAE (VPW a PWM)
Pri výmene údajov pomocou týchto protokolov sa vyrovnáva iba jeden dátový rámec, čo znamená, že je potrebné špecifikovať rámec, ktorý sa má zachytiť alebo vrátiť. V niektorých (zriedkavých) prípadoch môže palubný procesor prenášať pakety pozostávajúce z viac ako jedného rámca. V takejto situácii sa musí požiadavka opakovať, kým sa neprijmú všetky rámce v pakete.
Žiadosť sa vždy tvorí takto: [Control byte], [SAE štandard request], [Frame number]. Ako je uvedené vyššie, riadiaci bajt je zvyčajne číslo, ktoré sa rovná celkovému počtu bajtov, ktoré za ním nasledujú. Požiadavka je naformátovaná v súlade so špecifikáciami SAE J1950 a J1979 a pozostáva z hlavičky (3 bajty), sekvencie informačných bajtov a bajtu riadenia chýb (CRC). Všimnite si, že zatiaľ čo informácie o požiadavke sú generované v prísnom súlade so špecifikáciami SAE, spotrebiteľom riadiaceho bajtu a čísla rámca je ovládač rozhrania.
Po úspešnom dokončení postupu sa zobrazí správa s odpoveďou má vždy nasledujúci formát: [Control byte], [SAE štandard response]. Riadiaci bajt, ako predtým, určuje počet informačných bajtov za ním. Odpoveď v súlade s požiadavkami normy SAE pozostáva z hlavičky (3 bajty), reťazca informačných bajtov a bajtu CRC.
Pri neúspechu odošle sa 2-bajtová správa odpoveď na správu: [Control byte], [Status byte]. V tomto prípade je MSB nastavený v riadiacom byte. Štyri najmenej významné bity tvoria číslo 001, čo znamená, že za riadiacim bytom nasleduje jeden bajt, stavový bajt. Táto situácia môže nastať pomerne často, pretože špecifikácie umožňujú, aby palubný procesor nevydal údaje, ako aj prenos nesprávnych údajov v prípade, že požiadavka nezodpovedá norme podporovanej výrobcami vozidiel. Je tiež možné, že požadované údaje sa momentálne nenachádzajú v pamäti RAM procesora. Keď radič nedostane očakávanú odpoveď alebo prijme poškodené dáta, nastaví sa riadiaci bajt MSB, za ktorým nasleduje stavový bajt.
V prípade kolízií na zbernici vytvára rozhranie jeden bajt 40 (hex), čo je riadiaci bajt s vymazaným najmenej významným bitom. Podobná situácia môže nastať pomerne často, keď je autobusová zbernica zaťažená správami s vyššou prioritou, ako sú diagnostické dáta – výpočtové zariadenie musí zopakovať pôvodnú požiadavku.
Výmena pomocou protokolov ISO 9141-2
Normu ISO 9141-2 používa väčšina ázijských a európskych výrobcov automobilov. Štruktúra požiadavky generovanej PC sa príliš nelíši od štruktúry používanej v štandardoch SAE, len s tým rozdielom, že kontrolér nepotrebuje informácie o čísle rámca a príslušné informácie by nemali byť prítomné v pakete. teda, žiadosť vždy pozostáva z kontrolného bajtu, za ktorým nasleduje reťaz informačných bajtov vrátane kontrolného súčtu. Ako odpoveď na správu ovládač jednoducho prenáša signály generované integrovaným procesorom. V správe s odpoveďou nie je žiadny riadiaci bajt, takže PC vníma prichádzajúce informácie nepretržite, až kým sa reťaz nepreruší pauzou 55 milisekúnd, čo indikuje dokončenie informačného paketu. Takže správa s odpoveďou môže pozostávať z jedného alebo viacerých rámcov, ako to vyžaduje špecifikácia SAE J1979. Kontrolér neanalyzuje snímky, nevyraďuje nediagnostické snímky atď. Počítač musí spracovať prichádzajúce dáta sám, aby izoloval jednotlivé rámce analýzou bajtov hlavičky.
Poznámka. Odpovede na väčšinu otázok pozostávajú z jedného rámca.
Úpravy vykonané v najnovšej verzii ovládačov rozhrania
Nižšie sú uvedené hlavné rozdiely v procese prenosu údajov pomocou protokolov SAE a ISO 9141, ktoré sú charakteristické pre najnovšie ovládače rozhrania, ako aj poradie prenosu údajov pomocou protokolu ISO 14230:
- Norma ISO 9141: Pridaný bajt adresy;
- ISO 9141: Vráti nielen jeden, ale oba kľúčové bajty (dodatočný bajt sa vráti aj v režimoch SAE, ale tu sa nepoužíva);
- Pridaná podpora pre protokol ISO 14230.
Poznámka. Všetky informačné bajty sa prenášajú v hexadecimálnom formáte.
Poznámka. Znak XX označuje nešpecifikovaný, rezervovaný alebo neidentifikovaný bajt.
Nadviazanie spojenia
Postup nastavenia pripojenia sa nezmenil:
- Odoslanie: 20
- Recepcia: FF
Výber protokolu
Platí nasledujúca schéma:
- VPW:
- Odoslanie: 41, 00
- Recepcia: 02, 01, XX
- PWM:
- Odoslanie: 41, 01
- Recepcia: 02, 01, XX
- ISO 9141:
- Odoslanie: 42, 02, adr, kde: adr - bajt adresy (zvyčajne 33 hex)
- Recepcia: 02, K1, K2, kde K1, K2 sú kľúčové bajty ISO
- Alebo: 82, XX, XX (chyba inicializácie ISO 9141)
- ISO 14230 (rýchla inicializácia):
- Odoslanie: 46, 03, R1, R2, R3, R4, R5, kde: R1÷R5 - správa o začiatku požiadavky ISO 14230 na nadviazanie spojenia, zvyčajne R1÷R5 = C1, 33, F1, 81, 66
- Recepcia: S1, S2, ………, kde S1, S2, ……… je správa o začatí reakcie ISO 14230 na nadviazanie spojenia
Poznámka. Postupne je možné prenášať viac ako jednu ECU. Ako odpoveď možno použiť záporný kód odpovede.
- Typická pozitívna odpoveď vyzerá takto: S1, S2,... ... = 83, F1, 10, C1, E9, 8F, BD
- ISO 14230 (pomalá inicializácia): Podobne ako ISO 9141
Poznámky a komentáre
Ak plánujete použiť kontrolér na prenos údajov iba cez jeden alebo dva z protokolov, môžete eliminovať nepotrebné komponenty (pozri diagram vyššie). Napríklad pri organizovaní okruhu pre protokol VPW (GM) v kábli pripájajúcom ovládač k autu budú potrebné iba tri vodiče (svorky 16, 5 a 2).
Ak sa nepoužíva protokol PWM, prvky R4, R6, R7, R8, R9, R10, T1, T2 a D1 môžu byť vylúčené.
Ak sa výmena podľa protokolu ISO odmietne, vylúčia sa tieto prvky: R15, R16, R17, R18, R19, R21, T4 a T5.
Odmietnutie použitia protokolu VPW vám umožňuje vylúčiť nasledujúce prvky: R13, R14, R23, R24, D2, D3 a T3.
Používajú sa rezistory s uhlíkovým filmom s toleranciou odporu 5 %.
Upozorňujeme, že neexistuje tlačidlo núdzového resetu (RESET), v prípade potreby je možné takýto reset vykonať odpojením ovládača od konektora automobilu (procesor rozhrania sa automaticky reštartuje). Reštartovanie softvéru na PC má za následok novú inicializáciu rozhrania.
