Obsah: Všeobecné informácie ↓ Hlavný účel ↓ Schéma ovládača na prepojenie… ↓ Odporúčania na použitie ↓ Všeobecné princípy výmeny údajov ↓ Inicializácia ovládača a palubného… ↓ Nadviazanie spojenia ↓ Inicializácia ↓ Postup výmeny údajov ↓ Úpravy vykonané v najnovších… ↓ Nadviazanie spojenia ↓ Výber protokolu ↓ Poznámka a komentáre ↓
Upozornenie: Norma VPW sa vzťahuje na modely GM, norma PWM sa vzťahuje na modely Ford, norma ISO 9141-2 sa vzťahuje na ázijské a európske modely.
Všeobecné informácie
Uvažované zariadenie je mikrokontrolér vyrobený pomocou technológie CMOS.
Upozornenie: Regulátor 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 systému OBD II (otáčky motora, teplota chladiacej kvapaliny a nasávaného vzduchu, charakteristika zaťaženia, prietok vzduchu motora atď.) v rámci normy SAE J1979 cez akýkoľvek typ zbernice (PWM, VPW a ISO 9141-2).
Hlavný účel
Na pripojenie k počítaču postačuje 3-žilový kábel, pripojenie k diagnostickému konektoru je realizované 6-žilovým káblom. Napájacie napätie je privádzané do ovládača cez 16-pinový diagnostický konektor OBD. Schematický diagram regulátora je uvedený nižšie.
Schéma ovládača na prepojenie osobného počítača s palubným autodiagnostickým systémom OBD II

Odporúčania na použitie
Na pripojenie zariadenia k autu je možné použiť netienený kábel nie dlhší ako 1,2 m, čo je obzvlášť dôležité pri použití protokolu PWM. Pri použití dlhšieho kábla by sa mal znížiť odpor rezistorov na vstupe zariadenia (R8 a R9 alebo R15). Pri použití tieneného kábla by sa malo tienenie odpojiť, aby sa znížila kapacita.
Kábel na pripojenie k sériovému portu počítača môže byť tiež netienený. Zariadenie pracuje stabilne s dĺžkou kábla do 9 m Pre výrazne dlhšie káble treba použiť výkonnejší komunikátor RS 232.
Topológia elektrických spojení je ľubovoľná. V podmienkach vysokej vlhkosti použite prídavné obtokové kondenzátory.
Bezplatný softvér (prehliadač) na čítanie kódov a údajov je možné stiahnuť z webových stránok výrobcov a je určený na použitie pod DOSom. Malá veľkosť softvérovej aplikácie vo verzii "DOS" umožňuje umiestniť ju na bootovaciu disketu DOS a používať aj na počítačoch vybavených softvérom nekompatibilným s DOS. Dokonca nie je potrebné mať v počítači ani pevný disk.
Všeobecné princípy výmeny údajov
Zrieknutie sa zodpovednosti: Pokiaľ nie je uvedené inak, všetky čísla sú v hexadecimálnom formáte (hex).
Desatinný formát je označený štítkom dec.
Výmena dát prebieha cez trojvodičové sériové pripojenie, bez použitia inicializačnej výmeny servisných správ (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 opúšťajúce kontrolér sú organizované ako reťazec sekvenčných bajtov, z ktorých prvý je riadiaci. Typicky je riadiacim bajtom číslo medzi 0 a 15 dec (alebo 0-F hex), popisujúci počet informačných bajtov, ktoré nasledujú. Napríklad 3-bajtový príkaz by vyzeral takto: 03 (riadiaci 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 sú použité iba štyri najmenej významné bity, pričom najvýznamnejšie bity sú vyhradené pre niektoré špeciálne príkazy a môžu ich použiť PC pri inicializácii spojenia s kontrolérom a vyjednávanie protokolu prenosu dát, ako aj kontrolér na kontrolu chýb prenosu. Najmä v prípade chyby prenosu ovládač nastaví najvýznamnejší bit (MSB) riadiaceho bajtu na jednu. Pri úspešnom prenose sú všetky štyri bity vyššieho rádu nastavené na nulu.
Upozornenie: Existuje niekoľko výnimiek z pravidiel používania riadiaceho bajtu.
Inicializácia ovládača a palubného autodiagnostického systému
Na spustenie 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ý riadiaca jednotka vníma ako príkaz na vytvorenie spojenia. V odpovedi radič pošle jeden FF hex bajt (255 dec) namiesto riadiaceho bajtu a prejde do pohotovostného režimu príjmu dát. Teraz môže počítač pokračovať v inicializácii dátového kanála.
Upozornenie: Toto je jeden z mála prípadov, kedy ovládač nepoužíva riadiaci bajt.
Inicializácia
V tejto fáze sa inicializuje protokol, ktorým sa bude vykonávať výmena dát a v prípade ISO protokolu 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).
Upozornenie: Existuje mnoho výnimiek, napríklad pri prieskume určitých modelov áut Mazda je možné použiť protokol Ford PWM. Preto, ak narazíte na problémy s prenosom, mali by ste najprv skúsiť použiť nejaký iný protokol.
Výber protokolu sa uskutočňuje prenosom kombinácie pozostávajúcej z riadiaceho bajtu 41 (hexadecimálny) a bajt bezprostredne za ním, ktorý určuje typ protokolu: 0 = VPW, 1 = PWM, 2 = ISO 9141. Napríklad príkaz 41(hex) 02(hex) inicializuje protokol ISO 9141.
Ako odpoveď radič pošle riadiaci bajt a stavový bajt. Nastavenie MSB riadiaceho bajtu indikuje, že sa vyskytol problém a nasledujúci stavový bajt bude obsahovať zodpovedajúce informácie. Ak je inicializácia úspešná, odošle sa riadiaci bajt 01 (hex), ktorý indikuje, že nasleduje bajt stavu overenia. V prípade protokolov VPW a PWM je overovací bajt jednoduchou odozvou bajtu výberu protokolu (0 alebo 1), pri inicializácii protokolu ISO 9141 to bude digitálny kľúč vrátený zabudovaným procesorom OBD, ktorý určuje, ktorá z dvoch mierne odlišných verzií protokolu sa použije.
Upozornenie: Digitálny kľúč slúži len na informačné účely.
Treba poznamenať, že inicializácia protokolov VPW a PWM prebieha podstatne rýchlejšie, pretože vyžaduje iba prenos príslušných informácií do kontroléra. Na modeloch vyhovujúcich norme ISO trvá inicializácia približne 5 sekúnd, pričom sa vymieňajú informácie medzi ovládačom a zabudovaným procesorom rýchlosťou 5 baudov. Čitateľ by si mal uvedomiť, že na niektorých vozidlách rodiny ISO 9141 je inicializácia protokolu pozastavená, ak sa požiadavka na dáta neodošle do 5-sekundového intervalu – to znamená, že PC musí automaticky vydávať požiadavky každých pár sekúnd, dokonca aj v nečinnom režime.
Po nadviazaní spojenia a inicializácii protokolu sa začne pravidelná výmena dát, pozostávajúca z požiadaviek prijatých z PC a odpovedí vydaných kontrolérom.
Postup výmeny údajov
Regulátor pracuje v niekoľkých rôznych scenároch pri použití protokolov ISO 9141-2 a SAE (VPW a PWM).
Výmena cez protokoly SAE (VPW a PWM)
Pri výmene údajov pomocou týchto protokolov sa vyrovnáva iba jeden rámec údajov, čo znamená, že je potrebné špecifikovať rámec, ktorý sa má zachytiť alebo vrátiť. V niektorých (zriedkavých) prípadoch môže integrovaný 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 kontroly 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 kontrolného bajtu a čísla rámca je čip rozhrania.
Ak je postup úspešne dokončený, zobrazí sa správa s odpoveďou má vždy nasledujúci formát: [Control Byte], [SAE Response]. Riadiaci bajt, ako predtým, určuje počet informačných bajtov, ktoré za ním nasledujú. Odpoveď, ako to vyžaduje štandard SAE, pozostáva z hlavičky (3 bajty), reťazca informačných bajtov a bajtu CRC.
V prípade zlyhania 2-bajt je odoslaný 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 nevydával údaje, ako aj odosielal nesprávne údaje v prípadoch, keď požiadavka nezodpovedá norme podporovanej výrobcami vozidiel. Je tiež možné, že požadované údaje nie sú momentálne dostupné v pamäti RAM procesora. Keď čip nedostane očakávanú odpoveď alebo dostane poškodené dáta, nastaví sa MSB riadiaceho bajtu a stavový bajt sa vypíše za riadiaci 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. Táto situácia môže nastať pomerne často, keď je zbernica vozidla zaťažená správami s vyššou prioritou ako sú diagnostické údaje - výpočtové zariadenie musí zopakovať pôvodnú požiadavku.
Výmena podľa protokolov ISO 9141-2
Normu ISO 9141-2 používa väčšina ázijských a európskych výrobcov automobilov. Štruktúra vygenerovanej požiadavky PC sa len málo líši od štruktúry používanej v štandardoch SAE, len s tým rozdielom, že čip nepotrebuje informáciu o čísle rámca a zodpovedajúca informácia by nemala byť prítomná v pakete. teda, žiadosť vždy pozostáva z riadiaceho bajtu, za ktorým nasleduje reťaz informačných bajtov vrátane kontrolného súčtu. Ako odpoveď na správu čip jednoducho prenáša signály generované palubným procesorom. V správe s odpoveďou nie je žiadny riadiaci bajt, takže PC prijíma prichádzajúce informácie nepretržite, až kým reťaz nepreruší 55-milisekundová pauza, ktorá 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 v súlade s požiadavkami špecifikácií SAE J1979. Čip 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.
Upozornenie: Odpovede na väčšinu dopytov pozostávajú z jedného rámca.
Úpravy vykonané v najnovších verziách ovládačov rozhrania
Nižšie sú uvedené hlavné rozdiely v procese prenosu údajov pomocou protokolov SAE a ISO 9141, typických pre najnovšie verzie ovládačov rozhrania, ako aj postup pri prenose údajov pomocou protokolu ISO 14230: 1. Norma ISO 9141: Pridaný bajt adresy;
2. ISO 9141: Vráti nielen jeden, ale oba kľúčové bajty; (bajt navyše sa vráti aj v režimoch SAE, ale tu sa nepoužíva).
3. Pridaná podpora pre protokol ISO 14230.
Upozornenie: Všetky dátové bajty sa prenášajú v hexadecimálnom formáte.
Upozornenie: Znak XX predstavuje nedefinovaný, rezervovaný alebo nerozpoznaný bajt.
Nadviazanie spojenia
Postup nastavenia pripojenia sa nezmenil:
| Odoslanie: | 20 |
| Recepcia: | FF |
Výber protokolu
|
VPW:
|
|
|
Odoslanie: |
41, 00 |
|
Recepcia: |
02, 01, XX |
|
PWM: |
|
|
Odoslanie: |
41, 01 |
|
Recepcia: |
02, 01, XX |
|
ISO 9141: |
|
|
Odoslanie: |
42, 02, adr, kde: adr je 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, ……… - Správy s odpoveďou na nastavenie pripojenia ISO 14230 |
Upozornenie: Viac ako jedna ECU môže byť prenášaná v sérii. 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ámka a komentáre
Ak sa plánuje použitie kontroléra na prenos údajov iba prostredníctvom jedného alebo dvoch protokolov, nepotrebné komponenty možno vylúčiť (pozri diagram vyššie). Napríklad pri organizovaní okruhu pre protokol VPW (GM) budú potrebné iba tri vodiče elektrického vedenia v vodiči spájajúcom ovládač s autom (svorky 16, 5 a 2).
Ak sa nepoužíva protokol PWM, prvky R4, R6, R7, R8, R9, R10, T1, T2 a D1 možno vylúčiť.
Pri odmietnutí výmeny prostredníctvom protokolu ISO podliehajú vylúčeniu tieto prvky: R15, R16, R17, R18, R19, R21, T4 a T5.
Nepoužitím protokolu VPW je možné eliminovať tieto 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 auta (procesor rozhrania sa automaticky reštartuje). Reštartovanie softvéru na PC má za následok novú inicializáciu rozhrania.
