OBD II interfész Bluetooth-on keresztül
A HC-05 modul lehetővé teszi a master vagy a slave összeköttetését egy kompatibilis bluetooth eszközzel (elméletileg a HC-06, amely csak egy slave).
A HC-05-et AT parancsnokság alatt pilotálják. 3,3 V-ot használ, ezért legyen óvatos, ha 5 V-os arduinóval használja. 3.3V-ban ez nagyon alkalmas egy STM32F401RE kártyára (az általam használt).

A HC-05 2 üzemmóddal rendelkezik:
- egy AT mód, amely lehetővé teszi a konfigurálását,
- adatmód vagy átlátszó mód, amely lehetővé teszi az adatok közvetlen továbbítását a soros kapcsolaton keresztül.
A 2 mód közül az egyik kiválasztásához a modulnak van egy KEY nevű csapja, amely lehetővé teszi az egyik módról a másikra való váltást. Esetünkben AT módban kell elindítanunk a modult, majd a bluetooth bekapcsolása után a modul automatikusan adatmódba kapcsol. Ezután nincs többé szükség visszatérni AT módba, mivel csatlakozunk az OBD eszközhöz és párbeszédet folytatunk a járművel.
- AT mód: Kulcs = 1
- Adat mód: Kulcs = 0
| A HC-05 kártyának 2 változata létezik: az egyik a "KEY" tűvel és a másik nélkül. jobb, ha egy modult veszünk ezzel a csapszeggel. Ha a modul nem rendelkezik vele, akkor meg kell forrasztania egy vezetéket a Bluetooth modul csatlakozócsapján: (a jobb felső sarokban található 34. tű) | |
A kapcsolat létrehozásához be kell szereznie annak a Bluetooth modulnak a Mac címét, amellyel kommunikálni kíván.
Ekkor az AT parancsban végrehajtandó sorrend (KEY = 1) a következő:
Csatlakozási parancsfájl egy Bluetooth modulhoz
Minden sornak "\ r \ n" betűvel kell végződnie, különben a HC-05 modul nem veszi figyelembe a parancsokat.
E parancssor végén, ha a Mac cím a helyes (itt 88: 18: 56: 68: 98: EB), akkor csatlakoznia kell a HC-06 slave bluetooth moduljához vagy máshoz (itt a OBD modul és különösen az ELM327).
Mostantól át kell váltani átlátszó módra, nevezetesen arra, hogy a távoli szolga modullal való kommunikációhoz a "KEY" csapot 0-ra kell állítania.
OBD és ELM327
Az ELM327 az OBD protokollnak dedikált chip. Arra szolgál, hogy az OBD-csatlakozó különféle buszait egyetlen soros kommunikációs kapcsolathoz illessze.
Az ELM327 2 módban működik:
- AT mód: ezek speciális parancsok az ELM327 konfigurálásához (például az alkalmazott CAN protokoll konfigurálásához), vagy bizonyos paraméterek kérésére, például az akkumulátor feszültségére
- OBD mód: ez egy sajátos szintaxis, amely lehetővé teszi az OBD értékek olvasását/írását. Ezeket a parancsokat a sebesség, a motor fordulatszámának stb.
Az első lépés az ELM327 inicializálása:
| Mielőtt kommunikálni tudna az ELM327-gyel, és az inicializálni tudja a protokollt a jármű számítógépével, tanácsos elindítani a járművet. Egyes járműveknél be kell indítani a motort, másokban a gyújtás kiegészítőként elegendő. |
A számítógéppel való kommunikációhoz meg kell adnia a használandó protokollt, amelynek meg kell egyeznie a jármű protokolljával. A Renault Lagune 2 modellem esetében az 5. protokoll (FAST).
- 0 - Automatikus
- 1 - SAE J1850 PWM (41,6 kbaud)
- 2 - SAE J1850 VPW (10,4 kbaud)
- 3 - ISO 9141-2 (5 baud init, 10,4 kbaud)
- 4 - ISO 14230-4 KWP (5 baud init, 10,4 kbaud)
- 5 - ISO 14230-4 KWP (gyorsindítás, 10,4 kbaud)
- 6 - ISO 15765-4 CAN (11 bites ID, 500 kbaud)
- 7 - ISO 15765-4 CAN (29 bites azonosító, 500 kbaud)
- 8 - ISO 15765-4 CAN (11 bites ID, 250 kbaud)
- 9 - ISO 15765-4 CAN (29 bites ID, 250 kbaud)
- A - SAE J1939 CAN (29 bites ID, 250 * kbaud)
- B - USER1 CAN (11 * bit ID, 125 * kbaud)
- C - USER2 CAN (11 * bit ID, 50 * kbaud)
| Az ELM327 parancsnak meg kell adnia, hogy automatikusan keresse meg a használni kívánt protokollt. Részemről ez a mód soha nem működött és rendetlenséget okozott a buszon, és a számítógép hamis hibákat jelzett. A jármű gyújtásának és újbóli gyújtásának egyszerű kikapcsolása helyreállítja a számítógép működését, nem romboló hatású (amire megfigyeltem) |
Az elküldendő parancsok a következők:
ELM327 inicializáló szkript
Minden alkalommal, amikor egy parancs "\ n" -re végződik, az ELM327 szöveges formátumban adja vissza a válaszát, és ezt a választ ">" -val fejezi be. Ez a figyelmeztetés jelzi, hogy új megrendelés küldhető.
Miután az inicializálás befejeződött, áttérhetünk a komoly kérdésekre: az OBD-információk olvasására.
A jobb megértés érdekében az ELM327 dokumentumban keresse meg a 30-31. Oldalon található protokollt, de itt van egy összefoglaló:
Az OBD-adatok elolvasásához tudnia kell, hogy melyik módban szeretne dolgozni: (az információ a wikipédiából származik):
- 01 Jelenlegi adatok megjelenítése
- 02 A keret rögzített adatainak megjelenítése
- 03 Tárolt diagnosztikai hibakódok megjelenítése
- 04 A diagnosztikai hibakódok és a tárolt értékek törlése
- 05 Teszt eredmények, oxigénérzékelő monitorozása (csak nem CAN)
- 06 Vizsgálati eredmények, egyéb alkatrészek/rendszerek monitorozása (Vizsgálati eredmények, oxigénérzékelő monitorozás csak CAN esetén)
- 07 Függőben lévő diagnosztikai hibakódok megjelenítése (az aktuális vagy az utolsó menetciklus során észlelték)
- 08 A fedélzeti alkatrész/rendszer vezérlése
- 09 Gépjárművel kapcsolatos információk kérése
- 0A Állandó diagnosztikai hibakódok (DTC-k) (Törölt DTC-k)