Autodiagnostika pod lupou

Datum: 3.2.2010
obrázek
Vážení čtenáři, připravili jsme pro vás nový seriál, ve kterém podrobněji rozebereme jednotlivé funkce sériové diagnostiky. Je nám jasné, že pro většinu z vás to jsou již dávno známé věci, my bychom však rádi tímto seriálem oslovili začínající diagnostiky a pootevřeli jim tak dvířka do světa praktické diagnostiky.

Z historie

Počátkem 70. let 20. století se díky vzniku integrovaných obvodů velice urychlil vývoj procesorů. Hlavním přínosem byla miniaturizace celého procesoru a zvýšení jeho rychlosti. Procesorové řízení začalo rychle ovlivňovat vývoj ve většině průmyslových odvětví, automobilový průmysl nevyjímaje. Řízení motoru a ostatních systémů ve vozidle je jako stvořené pro to, aby se o ně starala elektronika, která zajišťuje mnohonásobně větší přesnost než mechanické řízení například rozdělovačem nebo přerušovačem.

 

Procesor (CPU)

Procesor (CPU – Central Processing Unit) je ústřední výkonnou jednotkou, která vykonává nejrůznější operace, často v reakci na nějaké vnější vlivy neboli vstupy. Čte z paměti instrukce a na jejich základě vykonává předem určený program. V jednoduchosti lze říci, že procesor neustále kontroluje stavy na svých vstupech a na základě hodnot získaných z těchto vstupů reaguje svými výstupy. Procesor potřebuje ke své funkci různé druhy pamětí, v nichž jsou uloženy informace, jako je samotný program procesoru, případně další potřebná data. Řídicí jednotka se kromě řízení systému, pro který je určena, stará také o kontrolu správnosti přijatých signálů a o případnou komunikaci s diagnostickým přístrojem. Od snímačů jsou přijímány vstupní informace, ty se vyhodnocují a na jejich základě se vysílají příkazy k ovládacím prvkům – akčním členům.

Princip funkce řídicí jednotky

Funkci si popíšeme na příkladu snímání teploty chladicí kapaliny. Spalovací motor má při různé teplotě chladicí kapaliny odlišnou potřebu množství vstřikovaného paliva. Díky procesorovému řízení snímá procesor napěťový signál ze snímače teploty, který je umístěn na motoru. Neustále kontroluje, zda hodnota tohoto signálu leží v předepsaném intervalu, který je uložen v paměti FLASH. Pokud hodnota leží v předepsaném intervalu, a je tedy pro procesor „důvěryhodná“, zahrne ji do výpočtu přípravy a zážehu směsi. V případě, že hodnota ze snímače teploty leží mimo předepsaný interval (například hodnota odpovídá teplotě +250 °C), označí tento snímač za vadný tak, že uloží číselný kód dané závady do paměti EEPROM. Tento kód může být později přečten diagnostickým testerem, který k němu většinou přiřadí slovní hlášení. Procesor nadále přestane tomuto snímači „důvěřovat“ a pro výpočet začne používat buď svou náhradní, předem danou teplotu, nebo signál nahradí například signálem ze snímače teploty nasávaného vzduchu. Jakmile se testerem smaže chybový kód z paměti závad, začne procesor opět „důvěřovat“ signálu z tohoto snímače. V podobném duchu procesor neustále snímá, kontroluje a řídí celý chod motoru nebo jakéhokoliv jiného systému ve voze. Pomáhají mu v tom jeho externí paměti, v nichž jsou uložena data pro chod motoru (paměť FLASH) nebo konfigurační a identifikační data, jako je objednací číslo, VIN, konfigurační kód (paměť EEPROM).

Komunikace s ŘJ.

Komunikace s diagnostickým testerem

Aby bylo možné jednoduchým způsobem zjišťovat stav přijímaných signálů, simulovat vysílané signály, číst chybové kódy a případně měnit hodnoty uložené v pamětích, jsou řídicí jednotky vybaveny diagnostickým rozhraním. K tomuto rozhraní je možné připojit diagnostický přístroj, který je schopen komunikovat s procesorem. Komunikace je realizována speciálním protokolem (komunikačním jazykem), založeným na vzájemném posílání klíčových slov. Klíčová slova jsou hexadecimální čísla, tzv. bajty. Tester vyšle do diagnostické zásuvky adresní bajt procesoru/řídicí jednotky, se kterou se obsluha hodlá spojit. Na tuto výzvu testeru odpoví řídicí jednotka tak, že pošle zpět sekvenci bajtů, které identifikují protokol, kterým se bude komunikovat. Jakmile tester přijme poslední bajt této identifikační sekvence, pošle zpět potvrzující bajt, kterým procesoru/řídicí jednotce sděluje „Rozuměl jsem“, a poté zpravidla ŘJ pošle postupně celou svoji identifikaci, přičemž přijetí každého bajtu musí být potvrzeno testerem. Jakmile ŘJ vyšle celou svou identifikaci, přechází komunikace do takzvaného Idle režimu neboli volnoběžného režimu. V tomto režimu stále probíhá komunikace, ve které si ŘJ a tester vzájemně potvrzují přijaté bajty, ale jinak se nic neděje a čeká se na další příkaz obsluhy.

Přesná komunikace je důležitá

V komunikačním protokolu je přesně vymezen význam klíčových slov a to, jakou rychlostí se budou vysílat bajty, jak dlouho se bude čekat na bajt a jak dlouho po přijetí bajtu se začne vysílat další bajt. Byť jen malá nepřesnost v těchto časech znamená, že se komunikace tzv. rozpadne, tedy skončí, a je potřeba ji navázat znovu. Moderní diagnostické testery a především pak diagnostické softwary instalované do PC využívají pro komunikaci tzv. HEX rozhraní. To znamená, že v testeru (propojovacím kabelu k PC) je taktéž procesor, který řídí celou komunikaci a eliminuje nepřesnosti počítače. Zajišťuje tak bezproblémové spojení s řídicí jednotkou a celou komunikaci. Komunikačních protokolů dnes existuje celá řada, z nejznámějších jmenujme např. KW1281, KW1282, KWP2000, CAN nebo nejnovější UDS. Aby se diagnostický tester spojil s procesorem v řídicí jednotce, je nutné, aby používal stejný diagnostický protokol jako procesor.

Identifikace řídicí jednotky.

Rozšířená identifikace ŘJ. 

 

 

 

 

 

 

 

 Identifikace řídicí jednotky

Identifikace řídicí jednotky je jednou z prvních informací celé diagnostické relace, které řídicí jednotka posílá testeru. Jedná se o identifikační data – objednací číslo, název systému, jeho konfigurace, případně číslo předchozího nástroje, kterým bylo prováděno programování, a další upřesňující informace (číslo softwaru ŘJ, VIN, číslo imobilizéru a podobně). Tyto informace slouží nejen pro obsluhu diagnostického testeru, ale také si tester sám identifikuje a přizpůsobuje své chování konkrétní jednotce. Hodnoty identifikace jsou v řídicí jednotce uloženy v paměti EEPROM. Tato jednoduchá identifikace se do diagnostického testeru načítá automaticky po spojení s řídicí jednotkou. Dalším typem identifikace je tzv. rozšířená identifikace. Ta je přístupná až na žádost obsluhy, jedná se už tedy o klasickou diagnostickou funkci, která bývá zpravidla v jednotkách přístupná pouze v protokolu KWP2000, CAN nebo UDS. Po kliknutí na tlačítko „Rozšířená identifikace“ tester vyšle v Idle (volnoběžném) režimu komunikace bajt, kterým oznámí řídicí jednotce požadavek na funkci rozšířené identifikace. Řídicí jednotka pak začne vysílat testeru veškerá identifikační data, která má v sobě naprogramována. Kromě dat klasické identifikace (objednací číslo, název systému apod.) je to například datum programování jednotky, počet pokusů o programování, počet úspěšných pokusů o programování, počet neúspěšných pokusů o programování atd. Detailní informace jsou u každé ŘJ odlišné a do testeru se obvykle načítají jako textové pole.

 

 

 banner


banner


banner