Inhoudsopgave:

GPS-autotracker met sms-melding en Thingspeak-gegevensupload, op Arduino gebaseerd, domotica - Ajarnpa
GPS-autotracker met sms-melding en Thingspeak-gegevensupload, op Arduino gebaseerd, domotica - Ajarnpa

Video: GPS-autotracker met sms-melding en Thingspeak-gegevensupload, op Arduino gebaseerd, domotica - Ajarnpa

Video: GPS-autotracker met sms-melding en Thingspeak-gegevensupload, op Arduino gebaseerd, domotica - Ajarnpa
Video: Arduino voor de radioamateur deel 2 2024, November
Anonim
GPS-autotracker met sms-melding en Thingspeak-gegevensupload, op Arduino gebaseerd, domotica
GPS-autotracker met sms-melding en Thingspeak-gegevensupload, op Arduino gebaseerd, domotica
GPS-autotracker met sms-melding en Thingspeak-gegevensupload, op Arduino gebaseerd, domotica
GPS-autotracker met sms-melding en Thingspeak-gegevensupload, op Arduino gebaseerd, domotica

Ik heb deze GPS-tracker vorig jaar gemaakt en omdat hij goed werkt, publiceer ik hem nu op Instructable. Het is aangesloten op de accessoire-stekker in mijn kofferbak.

De GPS tracker uploadt de autopositie, snelheid, richting en de gemeten temperatuur via een mobiele data (GPRS) verbinding naar een Thingspeak-kanaal. Deze gegevens worden gelezen door mijn Openhab domotica om deze gegevens weer te geven. Ik gebruik Thingspeak om mijn gegevens lokaal in mijn Openhab Home Automation te krijgen via de MQTT-makelaar van Thingspeak. Misschien zijn er andere manieren, laat het me weten in de comments

Als je de tracker belt, stuurt hij je een sms met de locatie en status, met daarin een Google Maps-link naar de coördinaten.

Dit project werd geïnspireerd door enkele andere projecten, die ik hier en verderop vermeld.

  • Uploaden naar Thingspeak
  • Stuur een sms met een Google Maps-link

Ik zag onlangs deze Instructable van een autotracker die een vergelijkbare benadering voor de sms gebruikt.

In de volgende stappen laat ik je de

  1. Principe en de code
  2. Hardware
  3. samenkomst
  4. Integratie van domotica
  5. Verdere verbeteringen

Benodigdheden

Ik heb mijn componenten van Aliexpress. Hoofd onderdelen

  • Arduino Pro Mini 328P 5v: voorbeeldlink
  • GY-NEO6MV2 GPS-ontvanger: link
  • A6 GSM/GPRS-module of vergelijkbaar: link
  • Buck-converter: link

Stap 1: Het principe en de code

Het principe en de code
Het principe en de code
Het principe en de code
Het principe en de code

In de bijgevoegde flows wordt het werkingsprincipe van de GPS tracker getoond. De code is gepubliceerd op mijn Github-pagina.

Ik zal commentaar geven op sommige delen van de code.

Seriële communicatie

De Arduino communiceert via een seriële verbinding met zowel de GPS-ontvanger als de A6-module.

Ik kwam erachter dat de seriële communicatie tussen de A6-module en de Arduino pas volledig stabiel was toen ik de hardware-serieel van de Arduino pro mini gebruikte. Voor de communicatie tussen de Arduino en de GPS-ontvanger heb ik AltSoftSerial gebruikt. Houd er rekening mee dat de AltSoftSerial-bibliotheek vooraf gedefinieerde RX- en TX-pinnen gebruikt.

Tijdens de ontwikkeling heb ik geëxperimenteerd met een Arduino Mega, die 4 hardware-seriële verbindingen heeft, waarvan je er gemakkelijk een kunt gebruiken voor debug-doeleinden.

AT-opdrachten

Zie deze links voor informatie over de zeer belangrijke AT-commando's: Electrodragon, M2Msupport.net, Andreas Spiess.

Als je een andere GSM/GPRS-module gebruikt, zoals een SIM800 of SIM900, heb je waarschijnlijk andere AT-commando's nodig om een gegevensverbinding op te zetten en gegevens naar een site als Thingspeak te POST.

sms

De GSM module leest het telefoonnummer van de beller (AT+CLIP) en stuurt de SMS met de locatie (Google Maps link) en status naar de beller.

Temperatuur

Als de temperatuur in de GPS-tracker te hoog is, stuurt deze een alarm-sms.

Stap 2: Hardware

Hardware
Hardware
Hardware
Hardware
Hardware
Hardware

Ik heb alle componenten via vrouwelijke headers aangesloten op een perf-bord voor eenvoudig debuggen en repareren. Zie de foto's en de opmerkingen.

De buck-converter krijgt 12V van de auto en levert 5V volt (via de aan/uit-schakelaar) voor de Arduino Pro Mini, de A6-module en de GPS-ontvanger (waarvan ik dacht dat deze slechts 3,3V tolerant was, maar 5V werkt prima).

De A6-module heeft voldoende voeding nodig. Bij het verzenden via het GSM-netwerk geeft het wat stroompieken, daarom heb ik een 1000uF tantaalcondensator toegevoegd.

De temperatuur wordt gemeten via een 10K NTC thermistor.

Stap 3: Montage

samenkomst
samenkomst
samenkomst
samenkomst
samenkomst
samenkomst
samenkomst
samenkomst

Nadat alles is aangesloten en getest, worden de componenten op de female headers gemonteerd en worden de schakelaars en LED's in de behuizing gelijmd.

Stap 4: Integratie van domotica

Integratie van domotica
Integratie van domotica
Integratie van domotica
Integratie van domotica
Integratie van domotica
Integratie van domotica

Thingspeak

Ik gebruik een gratis account op Thingspeak. Helaas hebben ze het aantal kanalen voor een gratis account verminderd, maar het werkt nog steeds geweldig en dit project heeft slechts één kanaal en meerdere velden nodig. Voor het uploaden heb je de Write API key nodig, voor het lezen via MQTT heb je de Read API key nodig. Zie deze site voor documentatie over het gebruik van de Thingspeak MQTT.

Ik lees de gegevens in Node Red. Zie de afbeelding van de bijgevoegde stroom waarin ik de lat- en lon-waarden samenvoeg tot één string. Ik gebruik een vertraging om de lat- en lon-waarden in de juiste volgorde te krijgen.

Stap 5: Verdere verbeteringen

Verdere verbeteringen
Verdere verbeteringen

Voor de toekomst ben ik van plan om:

  • Sluit de tracker aan op mijn batterij, zodat de module altijd aan staat. Ik moet echter garanderen dat de batterij niet te vaak leegloopt.
  • Misschien wat geofencing in mijn domotica, zodat ik een melding krijg als de auto buiten het gedefinieerde bereik is.
  • Controleer of de beller bekend is, om te voorkomen dat sms-berichten naar onbekende bellers worden verzonden.
  • Heb je een leuk idee, laat het me dan weten in de comments

Aanbevolen: