Autohacks met Arduino: 4 stappen
Autohacks met Arduino: 4 stappen
Anonim
Autohacks met Arduino
Autohacks met Arduino
Autohacks met Arduino
Autohacks met Arduino

Deze documentatie presenteert een eenvoudige en kosteneffectieve manier om de OBD-stroom van auto's te hacken. Hierin probeer ik de algemene manier te tonen om de OBD-informatie te krijgen.

Hier gebruik ik Arduino UNO, CAN-Bus-schild (1.2), DB9-kabel voor aansluiting op de OBD-poort en voor het programmeren van Arduino IDE (wat helpt om de code gemakkelijk naar uno te branden).

Ik ben dit project begonnen voor het instellen van automatische deurvergrendeling wanneer het voertuig een snelheid van 20 KM haalt en het automatisch oprollen van alle ramen wanneer de auto van buitenaf wordt vergrendeld.

Voor het vinden van de gegevens die uit de OBD-poort zijn geproduceerd, moet u de gegevens analyseren en begrijpen voordat u met dit project begint. (Meer geduld en continue verwerking nodig).

Hier begint het verhaal. (Ik probeer Hyundai Grand i10, Magna, 2019 - Merk in India, gegevens variëren afhankelijk van fabrikanten / varianten enz.).

Stap 1: Hardaware inkooplinks

Hardaware inkooplinks
Hardaware inkooplinks
Hardaware inkooplinks
Hardaware inkooplinks
Hardaware inkooplinks
Hardaware inkooplinks
Hardaware inkooplinks
Hardaware inkooplinks
  1. CAN-bus arduino-afscherming - CAN-bus-afscherming
  2. Arduino UNO - Arduino UNO
  3. OBD-poort naar DB9-kabel - DB9-kabel

Stap 2: Organiseer hardware, IDE en andere noodzakelijke dingen

Organiseer hardware, IDE en andere noodzakelijke dingen
Organiseer hardware, IDE en andere noodzakelijke dingen

Voordat we met het project beginnen, moeten we ervoor zorgen dat alle hardware die voor dit project wordt gebruikt, moet controleren en werken zoals verwacht. Dus we moeten de hardware aansluiten op de OBD-poort en ervoor zorgen dat er geen rook of onnodige warmte wordt geproduceerd door de hardware, dan moeten we de voorbeeldcode branden om ervoor te zorgen dat de hardware de gegevensstroom van OBD kan lezen.

De eerste stap begint hier, stel Arduino IDE in op de machine en zorg ervoor dat de benodigde bibliotheken erop zijn geïnstalleerd. Nadat we arduino uno op de computer hebben aangesloten, hebben we de aangesloten seriële poort en het bordtype in Arduino IDE geselecteerd.

Voorbeeldcode moet worden gedownload van git-repository en code naar Arduino Uno branden, dan moeten we het schild aansluiten op de OBD-poort en beginnen met het lezen van de gegevensstroom.

Git-opslagplaats -

github.com/JijovarghesePunalur/CarHacks.git

U kunt voorbeeldcode en bibliotheek krijgen voor het aansluiten en extraheren van de Can-bus-gegevensstroom. Na het klonen van het project, kunt u de bibliotheekbestanden in de arduino-bestandsmap kopiëren en het compileer- en brandproces in arduino IDE uitvoeren.

Voordat u de code naar Arduino Uno brandt, moet u de Arduino op de computer aansluiten en vervolgens de seriële poort en het bordtype in Arduino IDE selecteren.

In de voorbeeldmap kunt u de leesbewerking, schrijfbewerking en seriële berichtenbestanden zien, in feite inhoud die is gemaakt met behulp van algemene bibliotheekbestanden. Serial-Message verschilt met Read-programma op basis van het uitvoerformaat, dat wil zeggen dat ik in dit project can-utils in linux probeerde te gebruiken voor het sorteren van de terugkerende berichten.

Gebruik en uitvoering van can-utils, je kunt het vinden in het Readme.md bestand van CarHaks.

Stap 3: Videolink

Deze video geeft u een exact idee van de CAN-bus-gegevensstroom (OBD-poort). Het is misschien eenvoudig omdat ik alleen essentiële informatie heb opgenomen.

Stap 4: Doe het zelf en verras

Schrijf terug naar CAN-bus met behulp van de geëxtraheerde gegevens met behulp van Serial Message, dit zal je echt verbazen. (Je kunt het schrijfprogramma vinden in de repository, probeer het nu).

U kunt alles bedienen dat met ECU / BCM is verbonden, u hoeft alleen de gegevens te analyseren en vervolgens terug te schrijven.

Het volgende project zal gebaseerd zijn op deze studie - Auto besturen met behulp van een smartphone.