Arduino GPS-Tracker

Mit dem GPS-Tracker auf Basis eines Arduino kann der Standort von Einsatzmitteln an die Mobile-Lagekarte Online-Plattform übertragen werden.


Inhaltsverzeichnis

  1. Einleitung
  2. Verwendete Bauteile
  3. Aufbau der Hardware
  4. Benötigte Software
  5. Vorbereitungen in der Arduino IDE
  6. Source-Import und Konfiguration
  7. Vorbereitung der SIM-Karte
  8. Fragen und Antworten

1. Einleitung

In dieser Anleitung beschreiben wir das Arduino GPS-Tracker Selbstbauprojekt. Mit dem GPS-Tracker kann der Standort von Einsatzmitteln an die Mobile-Lagekarte Online-Plattform übertragen werden. Für die Nutzung des GPS-Trackers mit der Online-Plattform muss der Plus-Tarif gebucht sein. Der GPS-Tracker wurde als Aufsatzplatine für das SIM808-GSM-GPS Modul entwickelt.


2. Verwendete Bauteile

In der Tabelle werden alle verwendeten Bauteile dargestellt. Die Teile können in den jeweiligen Shops bestellt werden. Alternativ bieten wir auch einen AAR-Bausatz (Almost Ready to Run) an, bei dem nur das SIM808-Modul und ein passender Akku selber bestellt werden muss.

NrAARBauteilLink
1MLO-GPT-M1S PlatineShop
2SIM808 GPRS/GPS-Modul Makershop
3 Arduino Pro Mini ATmega328P (3.3V/8MHz) Amazon
4TP4056 LademodulAmazon
5 18650 Akku (min. 3000 mAh) Amazon
6 Gehäuse
7 Winkeladapter (optional)
8 LED 3mm, Vorwiderstände 200 Ohm (optional)
9Akku-HalterAmazon

Für den Aufbau und die Programmierung werden zusätzliche noch folgende Werkzeuge und Hilfsmittel empfohlen:

NrWerkzeug/HilfsmittelLink
1Lötkolben/LötstationAmazon
2PräzisionszangeAmazon
3FTDI-Adapter zur ProgrammierungAmazon
4Breadboard (optional)Amazon

3. Aufbau der Hardware

3.1 Arduino Pro mini
Im ersten Schritt werden die Pinleisten mit dem Arduino Pro mini (nachfolgend nur noch Arduino genannt) verlötet. Ich habe den Arduino dazu auf ein Breadboard aufgesteckt und somit eine gerade Ausrichtung erzielt.

Im nächsten Schritt wird der Arduino auf die Platine aufgelötet. Dazu bitte auf folgende Einbau-Richtung achten.

Nach dem Auflöten des Arduino die überstehenden Pins auf der Unterseite der Platine einkürzen. Aufgrund der Sandwich-Bauweise ist dieser Schritt unbedingt erforderlich, es könnte sonst zu Kurzschlüssen mit der SIM808 Platine kommen.

3.1 TP4056 Laderegler
Im nächsten Schritt wird der TP4056 Laderegler auf die Platine aufgelötet. Dazu im ersten Schritt die 4 Lötpunkte auf der Platine mit Lötzinn zerzinnen.

Im nächsten Schritt legen wir den Laderegler sauber auf die Lötpunkte und verlöten den Laderegler von oben mit Lötzinn mit den Lötpunkten auf der Platine. Dabei darauf achten, dass auch wirklich alle 4 Lötpunkte verbunden sind. Die unteren beiden Lötpunkte (In+, In-) werden nicht benötigt, hier kann eine optionale Ladequelle für den Laderegler angeschlossen werden.

3.2 Widerstände und LEDs
Im nächsten Schritt biegen wir die Widerstände und löten Sie in die davor vorgesehen Lötpunkte. Die Einbau-Richtung spielt hier keine Rolle. Anschließend wieder die überstehenden Pins auf der Unterseite kürzen. Nach dem die Widerstände verlötet sind, werden nun die Status-LEDs auf der Platine verlötet. Dazu die LEDs so einbauen, dass der Minus-Anschluss an der Oberseite der Platine sitzt.

3.3 Anschlussleitungen an das SIM808 Modul

Die einzelnen Pins des SIM808 Moduls werden über entsprechende Anschlusskabel mit der Platine verbunden.

Auf der Rückseite des SIM808 Moduls muss zudem eine SIM-Karte für die Nutzung der GSM/GPRS-Verbindung eingesetzt werden.


4. Benötigte Software

Für die Programmierung des GPS-Trackers wird die Arduino Software benötigt. Die kostenlose Software können Sie auf der offiziellen Arduino-Webseite unter https://www.arduino.cc/en/Main/Software herunterladen. Nach der Installation werden wir im nächsten Schritt die Arduino Umgebung einrichten und benötigte Bibliotheken installieren.


5. Vorbereitung der Arduino IDE

Für die Verwendung des SIM808 GSM/GPS Moduls müssen noch zusätzliche Bibliotheken installiert werden. Dazu öffnen wir nun das folgende Github-Projekt:

https://github.com/yurisliepins/ModuleSerial

Über die Download Funktion können wir die Bibliothek als ZIP-Datei herunteladen.

Nach dem Herunterladen gehen wir zurück in die Arduino IDE und klicken im leeren Sketch auf Sketch -> Bibliothek einbinden – > .Zip-Bibliothek hinzufügen.

Im Download-Ordner wählen wir jetzt die gerade heruntergeladene Zip-Datei aus.

6. Source-Import und Konfiguration

Im nächsten Schritt muss die Software des GPS-Trackers (nachfolgend als „Sketch“ bezeichnet) heruntergeladen und gespeichert werden. Dazu auf den Download-Link klicken, den Sketch speichern und die Zip-Datei in ein Verzeichnis Ihrer Wahl entpacken.

MLO-GPT-M1S (189 Downloads)

Die entpackte (Ino-Datei) können wir nun mit der Arduino IDE öffnen. Dazu klicken wir in Arduino auf Datei – Öffnen und wählen die Ino-Datei aus.

Im Sketch müssen nun noch folgende Anpassungen gemacht werden

  • SIM_APN
  • SIM_APN_USERNAME
  • SIM_APN_PASSWORD
  • MLO_USERNAME
  • MLO_TID
#define SIM_APN "web.vodafone.de"
#define SIM_APN_USERNAME ""
#define SIM_APN_PASSWORD ""

String MLO_USERNAME = "Organisation";
String MLO_TID = "Id";

#define PIN_RX 2
#define PIN_TX 3
#define PIN_START_SIM808 9

#define PIN_STEPS 1024.0
#define PIN_VOLTAGE A0
#define PIN_STATUS_GPRS 4
#define PIN_STATUS_GPS 5
#define PIN_STATUS_SEND 6

Im nächsten Schritt müssen wir die Software auf den Arduino flashen. Dazu müssen in der Arduino IDE folgende Einstellungen getroffen werden:

Nach dem das Board sowie der Prozessor konfiguriert wurde können wir nun mit dem FTDI-Adapter den Flash-Vorgang beginnen. Bevor wir beginnen bitte noch den Jumper des FTDI-Adapter auf 3,3V einstellen.

7. Vorbereitung der SIM-Karte

Der GPS-Tracker benötigt zur Übertragung der GPS-Positionen ein SIM-Karte ohne SIM-PIN. Um den SIM-PIN deaktivieren zu können, müssen Sie die SIM-Karten in Ihr Smartphone einlegen und je nach Betriebssystem die folgenden Schritte durchführen:

Anleitung für iOS:

  • Öffnen Sie in die Einstellungen.
  • Anschließend in die Telefoneinstellungen.
  • In den Telefoneinstellungen, klicken Sie bitte auf SIM-PIN.
  • Drücken Sie anschließend auf den grünen Button.
  • Sie werden nun aufgefordert den PIN-Code der SIM-Karte einzugeben. Nachdem Sie den PIN-Code eingeben haben, wurde der SIM-PIN deaktiviert.

Anleitung für Android:

  • Gehen Sie in das Menü.
  • Anschließend in die Einstellungen.
  • Dort klicken Sie bitte auf den Punkt Sicherheit.
  • Im Punkt Sicherheit gehen Sie bitte in Andere Sicherheitseinstellungen.
  • Anschließend auf den Punkt SIM-PIN Optionen.
  • Sie werden nun aufgefordert den PIN-Code der SIM-Karte einzugeben. Nachdem Sie den PIN-Code eingeben haben, wurde der SIM-PIN deaktiviert.

8. Fragen und Antworten

8 Gedanken zu „Arduino GPS-Tracker

  • 12. Oktober 2019 um 20:49
    Permalink

    Guten Abend,

    wir haben aktuell 5 Tracker zusammengebaut, die sehr zuverlässig funktionieren.
    Allerdings war nach einem Aufenthalt in einer Tiefgarage die serielle Schnittstelle zwischen Arduino und SIM808 unterbrochen.

    Ich habe daher zwei Funktionen zur Statusabfrage in die ModuleSerial Bibliothek integriert und das Sketch enstprechend abgeändert, sodass erst die Bereitschaft des Moduls geprüft wird und andernfalls die setup()-Funktion neu aufgerufen wird.

    Hier meine Änderungen:
    https://gist.github.com/nr23730/ac619a17ad14c8336ceac888988b902a
    https://github.com/nr23730/ModuleSerial/commit/5b578fcb57d9879f3f56d4d46bfbfa33a3a4c8c4

    Viele Grüße
    Niklas Reimer

    Antwort
    • 13. Oktober 2019 um 21:03
      Permalink

      Hallo Niklas,

      cool, vielen Dank für Deine Erweiterung des Sketches, ich werde das mal in meine Test-Software übernehmen in ebenfalls testen 🙂

      Viele Grüße,
      Matthias

      Antwort
  • 28. Oktober 2019 um 10:17
    Permalink

    Hallo,
    der Amazon-Link zur Batterie funktioniert nicht mehr.

    Wenn ich es richtig verstehe, kann an den Micro-USB-Anschluss auch ein passendes Netzteil von einer 12V DC Kfz-Batterie angeschlossen werden? Richtig?!

    Vielen Dank für die Hardware-Lösung. Die App zieht dann doch auf dauer ziemlich viel Akku, wenn keine Lademöglichkeit zur Verfügung steht (Motorrad).

    Schöne Grüße, Stefan

    Antwort
    • 29. Oktober 2019 um 6:04
      Permalink

      Hallo,

      Danke für den Hinweis, der Anschluss wird zum Laden verwendet. Der GPS-Tracker benötigt einen Akku, da der Strombedarf beim Netzaufbau (GSM) ziemlich groß ist. Ich werde den Link gleich anpassen.

      Viele Grüße,
      Matthias Korte

      Antwort
  • 20. Dezember 2019 um 16:38
    Permalink

    Hey, ich bin grade dran ein Test-Gerät für unseren DRK Ortsverein zu bauen und vielleicht dann auf lange Sicht hin alle Autos und Fußtrupps auszustatten. Jetzt habe ich nur eine Frage, wie ist das gemeint das noch Änderungen im Programm vorgenommen werden müssen was muss ich jetzt im Index für den USERNAME und das PASSWORT eintragen?

    Antwort
  • 20. Januar 2020 um 10:01
    Permalink

    Guten Morgen!

    Zwei Anregungen von meiner Seite:

    1. Die ModuleSerial Bibliothek bietet die Möglichkeit auf dem SIM808, den Ladestand der Batterie direkt in Prozent auszulesen: https://github.com/yurisliepins/ModuleSerial/blob/master/src/ModuleSerialGsm.cpp#L8 ( currentBatteryStatus().capacity )

    2. Das SIM808 Modul besitzt neben der seriellen Schnittstelle einen Gleichstromeingang, der zwischen 5V und 26V akzeptiert. Wenn dieser genutzt wird, liegen an den Pins, die mit der MLO-GPT-M1S Platine verbunden werden 3,3V an. Wenn der Tracker fest eingebaut wird (Auto, Boot), kann er also direkt mit dem Bordnetz betrieben werden und würde keine Batterie benötigen.

    Viele Grüße
    Niklas Reimer

    Antwort
  • 10. März 2020 um 13:21
    Permalink

    Hallo,

    ich hätte noch mal eine Frage, da ich mich mit Arduino nicht gut auskenne.

    Kann ich für einen Kfz-Einbau auch folgenden Aufbau verwenden:
    – Arduino Pro Mini 5V statt 3,3V
    – Kein Lademodul und kein Akku
    – DC-Wandler 12V DC > 5V DC, 6A, 30W

    Auf Grund der dauerhaften Versorgung von 5V DC könnte ich doch auf Akku und Lademodul verzichten. Und der Arduino 5V, der FTDI-Adapter und das GPRS/GPS-Modul können ja alle 5V DC verarbeiten. Oder sehe ich daran etwas falsch?

    Insbesondere gibt es momentan die 3,3V Variante vom Arduino nirgends, nur die 5V Variante. Und der Pro Mini wurde ja bereits abgekündigt.

    Antwort
  • 27. August 2020 um 1:04
    Permalink

    Hallo zusammen,
    wir die DLRG Köln-Dünnwald integrien gerade in unsere Einsatzfahrzeuge den hier vorgestellten GPS Tracker.
    Wir haben die gesamte Hardware in ein passendes Gehäuse nebst 12v Volt auf 5 Volt Spannungswandler verbaut. Den Spannungswandler für die Ladeerhaltung auf Zündung 12v+ gelegt, den Schalter durch ein Relais ersetzt das ebenfalls auf Zündung gelegt ist.
    Somit startet der Tracker sobald die Zündung des KFZ betätigt wird , gleichzeitig erfolgt die Ladeerhaltung des Trackers..
    Das System arbeitet einwandfrei.

    Ich werde in den nächsten Tagen noch drei weitere Fahrzeuge ausstatten und ein System für Testzwecke auf einem Boot verbauen.

    Sobald die neuen Tracker die auf der Startseite gezeigt werden verfügbar sind werden wir unsere EInsatzdrohnen ebenfalls damit ausstatten.

    Ich hätte noch eine Idee die vielleicht jemand hier aus der Runde umsetzen könnte, mir fehlt hier die Ahnung was das programmieren angeht.
    Wir würden gerne über das Modul noch den Status übermitteln.
    Vielleicht hat jemand von euch einen Vorschlag wie man eine 10er Tastatur für die Statuseingabe anschliessen kann. und den dazunotwendigen Sketch schreibt.

    Abschliessend kann ich nur sagen das wir kein anderes oder besseres Lageführungsprogramm gefunden haben das soviele Möglichkeiten und dieses Preis/Leistungsverhältnis bietet und ganz zu schweigen von den Support den Mathias uns angedeihen lässt.

    Beste Grüsse
    Andreas Schmidt DLRG Köln-Dünnwald

    Antwort

Schreibe einen Kommentar zu Niklas Reimer Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.