Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Manufacturing Technology >> Productieproces

IoT4Car: Voertuigtelemetrie Vastleggen & Analyseren met Arduino MKR1000

Onderdelen en benodigdheden

Arduino MKR1000 1
SparkFun Logic Level Converter - Bi-directioneel 1
SparkFun OBD-II UART 1
SparkFun OBD-II naar DB9 Kabel 1

Apps en online diensten

  • Arduino IDE
  • freeboard.io
  • dweet.io

Over dit project

Achtergrond

Bij rijden naar je dashboard: ooit gedacht om meterstandjes te verzamelen en te analyseren? Deze data bevat verborgen schatten: rijgedrag, gemiddelde verbruik, aantal verkeerslichten, wachttijden. Voor bedrijven cruciaal voor real-time vlootbeheer: voertuigstatus, belastingverdeling, brandstofefficiëntie, locatie. Met Arduino MKR-boards (IoT-gericht) bouw je zelf een apparaat dat met je auto praat en telemetrie naar de cloud stuurt.

Communiceren met een voertuig

Wat is OBD-II? On-Board Diagnostics is de ingebouwde zelfdiagnostiek van een voertuig. Standaard op alle US-auto's vanaf 1996, later wereldwijd. OBD-II heeft 5 signaleringsprotocollen, CAN-bus is er één van (verplicht in US vanaf 2008). Toegang via 16-pins OBD-II-interface.

Controller: Arduino MKR WiFi 1000 (WiFi-mogelijkheden). Alternatief: MKR GSM 1400 (breder bereik). Workaround: smartphone als persoonlijke hotspot.

Interpretatieboard: SparkFun OBD-II UART Board met STN1110-chip. Vertaalt OBD-protocollen naar UART (ELM327-commando's). Ondersteunt alle grote OBD-II-standaarden inclusief CAN.

Niveauschakelaar nodig: Interpretatieboard is 5V, MKR1000 is 3.3V. Gebruik SparkFun Logic Level Converter (bi-directioneel).

Aansluiten

MKR pin 13 (Rx) en pin 14 (Tx) → OBD-II UART Tx/Rx via niveauschakelaar. Grounds verbinden. Optioneel: LCD 1602 voor real-time weergave.

Belangrijk: Gebruik Serial1 (pins 13/14), niet Serial (USB-poort). Initialiseer in setup(): Serial1.begin(9600);

OBD-commando's

Commando's zijn hexadecimale codes in ASCII. Eerste twee cijfers = servicemode. We gebruiken 01 (huidige data). Parameter IDs (PIDs):

  • 010D – wagensnelheid
  • 010C – motortoer (RPM)
  • 012F – brandstofniveau
  • 0105 – koelvloeistof-temperatuur

Responsformaat: >1 Herhaalde_PID Data. Data begint bij 6e karakter. Decodering: RPM = (hex/4), Snelheid = hex (km/h), Brandstof = hex/255*100%, Temp = hex - 40°C.

Data naar de Cloud

Arduino MKR's voordeel: internettoegang. Gebruik dweet.io (API) en freeboard.io (visualisatie). Push data elke 10 seconden via HTTP POST naar dweet.io. Freeboard dashboard toont SPEED, RPM, FUEL LEVEL, COOLANT TEMPERATURE.

Code

IoT4Car_code

Volledige C++ code voor OBD-II UART communicatie, LCD-weergave en dweet.io/freeboard.io upload. Beschikbaar in de bron. Belangrijkste functies: getRPM(), getSpeed(), getFuel(), getCoolTemp(), getResponse(), httpRequest().

Schema

Verbind Arduino MKR WiFi 1000, SparkFun OBD-II UART, Logic Level Shifter, LCD 1602. Fritzing-schema beschikbaar.

Productieproces

  1. De Uitgebreide Gids voor Voertuigkentekenplaten: Geschiedenis, Ontwerp en Toekomst
  2. Antiblokkeersysteem (ABS): Uw Voertuig Beveiligen op Gladde Wegen
  3. AI-gestuurd obstakelvermijdingssysteem met Arduino en ultrasone sensoren
  4. DIY Arduino USB Gaming Controller – Bouw Je Eigen High-Performance Gamepad
  5. DIY Wolk Kostuum: LED-strip, Arduino Nano & SparkFun Onderdelen
  6. Pixie: Een Arduino-gebaseerde NeoPixel-polshorloge – Modern, DIY LED-tijdstuk
  7. Voertuig-Chassis Indeling: Motorpositie & Aandrijfconfiguraties Uitgelegd
  8. Voertuigbedrading Ontcijferd: Sleutelconcepten voor Betrouwbare Autoprestaties
  9. Een aandrijflijn begrijpen: hoe het uw voertuig aandrijft
  10. De dynamo begrijpen: hoe het uw auto voedt en defectherkenning
  11. Chassis-aarding begrijpen: doel, functie en belang