Skip to Content

AK protokolo dekodavimas su PicoScope: ABS rato greičio jutiklio analizė

Šiuolaikinė ABS diagnostika žengia kur kas toliau nei paprastas impulsų skaičiavimas. Nors indukcinius ir Holo efekto jutiklius jau seniai puikiai išmanome, AK protokolo rato greičio jutiklis atveria naują automobilinių nuosekliųjų duomenų sritį. Šie 2 laidų MRE jutikliai perduoda ne vien greitį: jie pateikia 9 bitus itin svarbių duomenų, įskaitant sukimosi kryptį, oro tarpo rezervą ir vidines klaidų žymas.

Šiame vadove išmoksime dekoduoti AK protokolą PicoScope osciloskopu ir taip užpildyti atotrūkį tarp neapdorotos įtampos ir prasmingų duomenų. Aptarsime, kaip išvengti dažnų ryklio peleko tipo matavimo klaidų, kaip pritaikyti tikslius Math kanalus dažniui grafiškai atvaizduoti ir kaip įvaldyti Manchester dekodavimą, kad matytume būtent tai, ką mato ABS ECU.

Žvelgiant į pastaruosius metus, mūsų vedamųjų testų (Guided Test) meniu jau turime aprašytus šiuos rato greičio jutiklius: https://www.picoauto.com/library/automotive-guided-tests/sensors/

  • Indukcinis (pasyvusis)
  • Holo efekto (aktyvusis)
  • Magnetorezistyvinis elementas [MRE] (aktyvusis, su sukimosi krypties nuoroda)
  • MRE (aktyvusis, su PWM sukimosi krypčiai ir magnetinio lauko stiprumui nurodyti)

Po viso to sunku patikėti, kad „naujausias ir pažangiausias“ aktyvusis MRE / Holo efekto greičio jutiklis, gebantis perduoti dar daugiau duomenų (naudojant AK protokolą), egzistuoja jau nuo 2008 metų!

AK protokolo signalų analizė: realūs PicoScope osciloskopo įrašai

PicoScope 7 ekrano vaizdas iš Mercedes A klasės, kai ratas iš pradžių stovi, o paskui pasukamas ranka. Naudojamas PicoScope osciloskopas

Aukščiau pateiktas įrašas padarytas su Mercedes A klase, kai ratas iš pradžių stovėjo, o paskui buvo pasuktas ranka.

  • Pradėkime nuo Scope 1 lango: nors ratas stovi, mūsų greičio jutiklis vis tiek perduoda duomenis kas 147 ms. (Žr. priartintą vaizdą Scope 2 lange.) Čia matome 9 duomenų bitus (0–8) po pradinio (platesnio) greičio impulso; jie perduoda informaciją ABS ECU ir aiškią žinutę: esu gyvas, prisijungęs, tvarkingas, klaidų nėra.
  • Pereikime prie Scope 3 lango: matome, kaip pradinio greičio impulso amplitudė smarkiai išaugo – tai žymi rato sukimąsi ir greitį (žr. priartintą vaizdą Scope 4 lange). Atkreipkite dėmesį, kaip didėjant rato greičiui didėja ir greičio impulsų dažnis (impulsai suartėja).

Ar vis dar galime grafiškai atvaizduoti šių jutiklių greitį Math kanalu?

Taip, galime – tik reikia šiek tiek pakoreguoti Math kanalo formulę, nes mums svarbus tik pirmojo greičio impulso dažnis, o ne duomenų bitai.

PicoScope 7 ekrano vaizdas: duomenų bitų viršūnės siekia 60 mV, o greičio impulso vidurio taškas atitinka 110 mV

Aukščiau esančiame paveikslėlyje matome, kad duomenų bitų viršūnės siekia 60 mV, o greičio impulso vidurio taškas atitinka 110 mV. Kadangi PicoScope dažnį skaičiuoja pagal tai, kaip dažnai signalas kerta 0 V, signalo formą turime nuleisti 110 mV, kad 0 V liniją kirstų tik greičio impulsas (žr. rausvą etaloninę signalo formą aukščiau – ji nuleista 110 mV).

Naudojant Math kanalą freq(A-0.11), A kanalo signalas nuleidžiamas 110 mV (0,11 V), todėl 0 V liniją kerta tik greičio impulsas, ir PicoScope gali grafiškai atvaizduoti vien greičio impulso, taigi ir rato, dažnį.

AK protokolas paaiškintas: 9 bitų nuosekliųjų duomenų paketo analizė

Tai priklauso nuo kelių veiksnių: nuo jutiklio gamintojo (Infineon ar Allegro) iki nuosavų (proprietary) bitų, kuriuos priskiria automobilio gamintojas.

Jei pažiūrėsite AK protokolą naudojančio rato greičio jutiklio nuosekliųjų duomenų sąrašą, pamatysite ne tik rato greitį, bet ir sukimosi kryptį, krypties validumą, jutiklio oro tarpo vertę, oro tarpo validumą, magnetinio lauko stiprumą, mechaninės klaidos žymą ir kalibravimo duomenis. (Ir visa tai – iš 2 laidų rato greičio jutiklio.)     

Kuo daugiau gilinsitės į AK protokolą, tuo tikslesnės informacijos rasite apie kiekvieno bito paskirtį tiriamame jutiklyje (žemiau esantis paveikslėlis yra tik pavyzdys) 

Stovėjimo (standstill) bitų (0–8) suvestinė

Stovėjimo bitų (0–8) suvestinė. Lentelė su bito numeriu, bito pavadinimu ir paskirtimi stovint

Ar galime dekoduoti AK protokolą? Nuosekliųjų duomenų įvaldymas 2 laidų jutikliuose

Atsakymas – taip, bet tam reikia suprasti Manchester kodavimą/dekodavimą, nes žiūrint į įtampos ir loginių lygių ryšį ne viskas yra taip, kaip atrodo.

Paprastai diferencinėje magistralėje (pavyzdžiui, CAN) sakome, kad kai įtampa aukšta, būsena yra dominuojanti, o kai žema – recesyvinė. Naudojant Manchester kodavimą, AK protokolo duomenų paketas dalijamas į 50 µs pločio bitų periodus. Bito periodo viduryje (ties 25 µs) garantuotai įvyksta įtampos perėjimas, ir būtent šiame taške matuojame įtampą, kad nustatytume loginį lygį (aukšta įtampa = loginis 1, žema įtampa = loginis 0).

Pritaikykime tai praktiškai su žemiau esančiu Mercedes ekrano įrašu, naudodami 20 mV kirtimo tašką duomenų pakete (žr. dekoderio nustatymus paveikslėlio apačioje dešinėje)

PicoScope 7 ekrano vaizdas su Mercedes įrašu, naudojant 20 mV kirtimo tašką duomenų pakete

Atkreipkite dėmesį: greičio impulso plotis (apytiksliai 50 µs) apibrėžia 19,2 kBd duomenų perdavimo spartą. Dekoderis nustatytas ignoruoti greičio impulsą (pradžios bitą 1) ir dekoduoti į dvejetaines reikšmes tik 9 duomenų bitus (0–8). Kaip matome, dekoderio funkcija nesuveikė dėl mano paties klaidos (atminkite: jei manote, kad radote kažką negero, pirmiausia kaltinkite savo matavimo metodiką ir konfigūraciją!)

Atkreipkite dėmesį, kaip duomenų bitai primena ryklio peleką ir atrodo suapvalinti, o ne aiškiai apibrėžti, kaip būna kituose tinkluose. Taip yra dėl matavimo klaidos – buvau įjungęs pralaidumo juostos ribojimą (20 kHz), kurio po įrašymo išjungti nebeįmanoma, kad būtų atskleisti neapdoroti duomenys (skirtingai nei mūsų DSP / žemų dažnių filtro atveju).

Kadangi mūsų duomenų perdavimo sparta yra 19,2 kHz, signalui tiksliai atkurti osciloskopo lange reikia 5 kartus didesnės pralaidumo juostos (5 × 19,2 = 96 kHz).

Nieko baisaus – žemiau turiu kitą ekrano įrašą iš Volvo XC60, kuriame pritaikiau 100 kHz žemų dažnių filtrą; jis pašalina triukšmą pernelyg neapvalindamas duomenų bitų.

PicoScope 7 ekrano vaizdas iš Volvo XC60, kuriame pritaikytas 100 kHz žemų dažnių filtras

Būtent žemų dažnių filtravimo derinys su galimybe tiksliai derinti nuosekliojo dekoderio slenkstį (bito kirtimo tašką) daro PicoScope nepakeičiamu įrankiu dekoduojant nuosekliuosius duomenis, nes galime prisitaikyti prie beveik bet kokio signalo, nepaisant aplinkos triukšmo ir įtampos lygių.

Dabar, kad giliau suprastume įtampos ir loginių lygių sąsają, atidžiai pažvelkime į dekoduotą duomenų lauką (0–8 bitai)

PicoScope 7 ekrano vaizdas: 50 µs greičio impulsas, po kurio eina 25 µs ramybės periodas. Nuo šio taško duomenų laukas dalijamas į 50 µs bitų periodus.

Atkreipkite dėmesį, kad aukščiau esančiame paveikslėlyje turime 50 µs greičio impulsą, po kurio eina 25 µs ramybės periodas. Nuo šio taško duomenų laukas dalijamas į 50 µs bitų periodus. Žemiau pridėjau 18 dalijimo liniuočių, kad būtų lengviau įsivaizduoti bito periodą, įtampos perėjimo tašką (jis įvyksta ties 25 µs) ir vietą, kurioje matuojama įtampa loginiam lygiui nustatyti (aukšta įtampa = loginis 1, žema įtampa = loginis 0) 

PicoScope 7 ekrano vaizdas su pridėtomis 18 dalijimo liniuočių, padedančių įsivaizduoti bito periodą.

Kitas metodas, padedantis tada, kai frontus sunku apibrėžti, yra sign Math kanalo taikymas. Čia naudojame panašų būdą kaip ir dažnio Math kanale: signalo formą nuleidžiame taip, kad duomenų laukas kirstų 0 V (−164 mV).

Tuomet mūsų sign Math kanalas kiekvieną vertę virš 0 V pavers +1 V, o kiekvieną vertę žemiau 0 V – −1 V (žr. paveikslėlį žemiau) 

PicoScope 7 ekrano vaizdas, kuriame naudojamas sign Math kanalas

Aukščiau rausva spalva matome sign Math kanalą sign(A-0.164), kuriame kiekvienas bitas aiškiai apibrėžtas, nes Math kanalo logika ties 0 V kirtimu priskiria aiškias reikšmes (+1, −1).

Atkreipkite dėmesį, kad AK protokolo rato greičio jutiklių galima rasti visų tipų transporto priemonėse – papildomi jutiklio laidais perduodami duomenys naudingi visiems. Žemiau matome Iveco S-Way vilkiką; remdamiesi pirmiau pateikta informacija, manau, visi galime atspėti, koks tai rato greičio jutiklis.

PicoScope 7 ekrano vaizdas su Iveco S-Way vilkiko rato greičio jutikliu

Šį jutiklį nusprendžiau įrašyti šiek tiek kitaip nei Mercedes ir Volvo automobilių atveju, kur matavau per jutiklį AC (kintamosios srovės) sąsaja.

Čia jutiklį prijungiau DC sąsaja, kad atskleisčiau nuolatinės srovės poslinkį (1,206 V), kurio nevalia ignoruoti (žr. šį atvejo tyrimą https://www.youtube.com/watch?v=xr4dicP8mBA)


Pastaba: įtraukiau ir srovę, nes būtent ji yra tikrasis šių jutiklių signalizavimo būdas. Kadangi įtampa ir srovė yra proporcingos viena kitai, bet koks srovės (apkrovos) pokytis atsispindės ir įtampoje (tai įrodėme su Mercedes ir Volvo). Vis dėlto, jei galite matuoti srovę, užfiksuojate atliktą darbą ir kartu įvertinate sistemos vientisumą.

Vienintelis niuansas, kurį reikia suvaldyti, – maža šių jutiklių srovė (specifikacija: 7 mA, 14 mA ir 28 mA).

Kaip ir aukščiau pateiktame vaizdo įraše, naudojant srovės daugiklį matuojama srovė padidinama 10 kartų, kad replės galėtų šias vertes lengvai užfiksuoti ir parodyti. Math kanalo (B/10) pagalba vėliau atkuriame pradines srovės vertes.

Aukščiau matome atitinkamai 7 ir 17 mA tarp duomenų bitų viršūnių ir greičio impulso, kur būtina įvertinti replių dreifo ir poslinkio paklaidas.

Straipsnis išverstas iš Pico Technology bibliotekos su gamintojo leidimu. Originalas: picoauto.com. PicoScope įrangą rasite mūsų kataloge.

Užvėrimo kampas: uždegimo įvykių supratimas su PicoScope (MIC#7)