Sisukord:

Reaalajas GPS-i jälgimine: 3 sammu
Reaalajas GPS-i jälgimine: 3 sammu

Video: Reaalajas GPS-i jälgimine: 3 sammu

Video: Reaalajas GPS-i jälgimine: 3 sammu
Video: ⚫ Планшет HEADWOLF WPad 3 - ОБЗОР и ТЕСТЫ 2024, November
Anonim

Jälgi autori lisateavet:

Pumpkin Pi Trick-or-Treat Tracker
Pumpkin Pi Trick-or-Treat Tracker
Pumpkin Pi Trick-or-Treat Tracker
Pumpkin Pi Trick-or-Treat Tracker
Kuidas ehitada Raspberry Pi temperatuurimonitor
Kuidas ehitada Raspberry Pi temperatuurimonitor
Kuidas ehitada Raspberry Pi temperatuurimonitor
Kuidas ehitada Raspberry Pi temperatuurimonitor
Andmete voogesitamine Google'i arvutustabelitest juhtpaneelile
Andmete voogesitamine Google'i arvutustabelitest juhtpaneelile
Andmete voogesitamine Google'i arvutustabelitest juhtpaneelile
Andmete voogesitamine Google'i arvutustabelitest juhtpaneelile

Selles õpetuses näitame teile, kuidas teha reaalajas asukoha jälgimist, kasutades BerryGPS-GSM-i, Raspberry Pi Zero ja esialgset olekut. Saadame BerryGPS-GSM-iga 3G kaudu pikkuskraadi, laiuskraadi ja kiiruse algolekusse.

Tarvikud

  • Vaarika Pi Zero
  • BerryGPS-GSM
  • Esialgne riik

1. etapp: algseisund

Esialgne riik
Esialgne riik

Tahame voogesitada kõiki oma pikkus-, laius- ja kiiruseandmeid pilveteenusesse ning lasta sellel teenusel muuta meie andmed toredaks armatuurlauaks, millele pääseme juurde oma sülearvutist või mobiilseadmest. Kasutame algseisundit.

Samm: registreerige esmase riigi konto

Minge aadressile https://iot.app.initialstate.com ja looge uus konto. Saate 14 -päevase tasuta prooviperioodi ja igaüks, kellel on edu e -posti aadress, saab registreeruda tasuta õpilaspaketile.

Samm: installige ISStreamer

Installige algseisundi Pythoni moodul oma Raspberry Pi -le. Käsurealt käivitage järgmine käsk:

$ cd/home/pi/

$ / curl -sSL https://get.initialstate.com/python -o -| sudo bash

3. samm: tehke automaatika

Pärast 2. sammu näete ekraanile midagi sarnast järgmise väljundiga:

pi@raspberrypi ~ $ / curl -sSL https://get.initialstate.com/python -o -| sudo bashParool: ISStreamer Python lihtne paigaldamine! Selle paigaldamiseks võib kuluda paar minutit, haarake kohvi:) Aga ärge unustage tagasi tulla, mul on hiljem küsimusi! Leiti easy_install: setuptools 1.1.6 Leiti pip: pip 1.5.6 /Library/Python/2.7/site-packages/pip-1.5.6- py2.7.egg (python 2.7) pip peamine versioon: 1 pip kõrvalversioon: 5 ISStreamer leiti, värskendatakse… Nõue on juba ajakohane: ISStreamer raamatukogus/Python/2.7/saidipaketid Puhastamine … Kas soovite automaatse näiteskripti hankida? [y/N] Kuhu soovite näite salvestada? [vaikimisi:./is_example.py] Palun valige, millist algse oleku rakendust kasutate: 1. app.initialstate.com 2. [UUS!] iot.app.initialstate.com Sisestage valik 1 või 2: Sisestage iot.app.initialstate.com kasutajanimi: sisestage iot.app.initialstate.com parool:

Kui teilt küsitakse, kas soovite automaatselt skriptide näite saada, kirjutage jah ja vajutage sisestusklahvi, et skript vaikimisi asukohta salvestada. Küsimuse kohta, millist rakendust te kasutate, valige 2 (kui te pole registreerunud enne novembrit 2018) ja sisestage oma kasutajanimi ja parool.

Samm: käivitage näidiskript

Käivitage testskript, et veenduda, kas suudame teie algse oleku kontole andmevoo luua. Kirjutage järgmine käsk:

$ python is_example.py

5. samm: näiteandmed

Minge oma veebibrauseris tagasi algse riigi kontole. Teie logiriiuli vasakul küljel oleks pidanud ilmuma uus andmekogum nimega „Python Streami näide” (peate võib -olla lehte värskendama). Oma andmete vaatamiseks klõpsake sellel ämbril.

2. samm: BerryGPS-GSM ja Raspberry Pi Zero

BerryGPS-GSM ja Raspberry Pi Zero
BerryGPS-GSM ja Raspberry Pi Zero

Kui kasutate BerryGPS-GSM-i, siis järgige seda juhendit, et saada GPS tööle ja oma Pi ühendada PPP-ga 3G kaudu.

Lingitud juhend näitab ka seda, kuidas panna Pi käivitamisel automaatselt võrguühendusega ühendust. Seda vajate, kui kavatsete kaugjälgimist teostada.

Installige teegid

Peate installima järgmised teegid:

$ sudo apt-get install python-pip

$ sudo pip install pynmea2 $ sudo pip install ISStreamer

Peamine Pythoni skript

Siin loome peamise skripti, mis edastab GPS -i andmed algolekusse. Allolev kood loob eraldi lõime, mida kasutatakse jadapordi jälgimiseks. Seda on vaja, sest meil on põhiahelas paus. Paus on selleks, et piirata, kui palju andmeid 3G kaudu üles laadime.

Kui me teeksime pausi ajal kõik samas lõimes, täidaks jadapuhver (see on FIFO) ja kui saame puhvrist järgmise väärtuse, on see mõne sekundi võrra vana. See juhtub igal silmusel ja lõpuks jäävad andmed minutite või tundide taha.

Pythoni skripti loomiseks ja tekstiredaktori avamiseks sisestage järgmine käsk:

$ nano GPStracker.py

Kopeerige ja kleepige järgmine kood tekstiredaktorisse. Peate sisestama oma algse oleku juurdepääsuvõtme reale 11, kus on kiri "SISESTAGE JUURDEPÄÄSU VÕTI":

#! /usr/bin/pythonfrom gps import * ajast impordist * impordi lõimingu importimise kuupäev ja aeg ISStreamerist. Streami import Streamer gpsd = Puudub #Seadista globaalne muutuja #Seadista algseisundi voog, sisesta oma juurdepääsuvõti alla streamer = Streamer (bucket_name = "GPS_Tracker ", bucket_key =" GPS_TRACKER ", access_key =" ENTER YOUR ACCESS KEY ") klassi GPSDcollector (threading. Thread): def _init _ (self, threadID): threading. Thread._ init _ (self) self.threadID = threadID global gpsd #bring see ulatuses gpsd = gps (mode = WATCH_ENABLE) #Start GPSD self.running = True #Start running this thread def run (self): global gpsd while gpsdThread.running: gpsd.next () if _name_ == '_main_': gpsdThread = GPSDcollector (1) # looge lõim andmete kogumiseks proovige: gpsdThread.start () # käivitage see tõesega: printige 'GPS', gpsd.utc, 'CPU time->', datetime.datetime.now ().time (), if (gpsd.fix.longitude0) ja (gpsd.fix.longitude'nan '): streamer.log ("Asukoht", "{lat}, {lon}". formaat (lat = gpsd.fix.laiuskraad, lon = gpsd.fix.longitu de)) streamer.log ("kiirus", gpsd.fix.speed) print "lat", gpsd.fix.latitude, print "lon", gpsd.fix.longitude, print "speed", gpsd.fix.speed sleep (5) välja arvatud (KeyboardInterrupt, SystemExit): # kui vajutate klahvikombinatsiooni ctrl+c print "\ nTeebi tapmine …" gpsdThread.running = Vale gpsdThread.join () # oodake, kuni lõng lõpetab printimise "Valmis. / NVäljavõtmine."

Salvestage ja väljuge tekstiredaktorist, vajutades klahvikombinatsiooni CTRL + X, Y, sisestusklahvi.

Käivitage skript käivitamisel automaatselt

Kui teete kaugseiret, soovite, et skript käivitataks. Selleks loome väikese skripti, mis käivitab peamise pythoni programmi. Sisestage järgmine käsk:

$ nano GPStrackerStart.sh

Kopeerige read tekstiredaktorisse:

#!/bin/bash

uni 15 python /home/pi/GPStracker.py &

Ülaltoodud paus on selleks, et anda Pi -le aega PPP -ga käivitamiseks ja ühendamiseks.

Muutke skript käivitatavaks:

$ chmod +x ~/GPStrackerStart.sh

Me kasutame skripti käivitamiseks cronit iga kord, kui Pi saabub:

$ crontab -e

Lisage alumine rida allapoole:

@reboot /home/pi/GPStrackerStart.sh &

3. samm: asukoha ja kiiruse juhtpaneel

Asukoha ja kiiruse juhtpaneel
Asukoha ja kiiruse juhtpaneel

Nüüd, kui olete oma projekti käivitanud, peaksid andmed saatma algseisundisse. Teil on GPS -andmed ja kiiruse andmed. Asukoha jälgimiseks saate kasutada GPS -andmeid kaardil Tile. Kaardipaani puhul märkige kindlasti märkeruut Joonista tee, et teie asukoha jälgimine oleks kaardistatud nagu ülaltoodud armatuurlaud. Kiiruse andmed aja jooksul saate joonegraafikusse panna.

Soovitan: