Mündəricat:

Real vaxt GPS izləmə: 3 addım
Real vaxt GPS izləmə: 3 addım

Video: Real vaxt GPS izləmə: 3 addım

Video: Real vaxt GPS izləmə: 3 addım
Video: Kim nə başa düşdü ❓ 2024, Iyul
Anonim

Müəllif tərəfindən daha çox izlənilir:

Pumpkin Pi Trick-or-Treat Tracker
Pumpkin Pi Trick-or-Treat Tracker
Pumpkin Pi Trick-or-Treat Tracker
Pumpkin Pi Trick-or-Treat Tracker
Bir Raspberry Pi İstilik Monitorunu necə qurmaq olar
Bir Raspberry Pi İstilik Monitorunu necə qurmaq olar
Bir Raspberry Pi İstilik Monitorunu necə qurmaq olar
Bir Raspberry Pi İstilik Monitorunu necə qurmaq olar
Google Cədvəllərindən Tablosuna məlumat axını
Google Cədvəllərindən Tablosuna məlumat axını
Google Cədvəllərindən Tablosuna məlumat axını
Google Cədvəllərindən Tablosuna məlumat axını

Bu təlimatda, BerryGPS-GSM, Raspberry Pi Sıfır və Başlanğıc Vəziyyəti istifadə edərək real vaxtda yer izləmənin necə aparılacağını sizə göstərəcəyik. Boylam, Enlem və Sürəti BerryGPS-GSM ilə 3G vasitəsilə İlkin Vəziyyətə göndərəcəyik.

Təchizat

  • Moruq Pi Sıfır
  • BerryGPS-GSM
  • İlkin vəziyyət

Addım 1: İlkin vəziyyət

İlkin vəziyyət
İlkin vəziyyət

Bütün uzunluq, enlik və sürət məlumatlarımızı bir bulud xidmətinə ötürmək və bu xidmətin məlumatlarımızı dizüstü kompüterimizdən və ya mobil cihazımızdan əldə edə biləcəyimiz gözəl bir tablosuna çevirməsini istəyirik. Başlanğıc vəziyyətdən istifadə edəcəyik.

Addım 1: İlkin Dövlət Hesabına Qeydiyyat

Https://iot.app.initialstate.com saytına daxil olun və yeni bir hesab yaradın. 14 günlük pulsuz sınaq əldə edirsiniz və bir edu e -poçt ünvanı olan hər kəs pulsuz bir tələbə planına qeydiyyatdan keçə bilər.

Addım 2: ISStreamer qurun

Baş Dövlət Python modulunu Raspberry Pi -yə quraşdırın. Əmr əmrində aşağıdakı əmri işlədin:

$ cd/ev/pi/

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

Addım 3: Bir az Automagic olun

Addım 2 -dən sonra ekranda aşağıdakı çıxışa bənzər bir şey görəcəksiniz:

pi@raspberrypi ~ $ / curl -sSL https://get.initialstate.com/python -o -| sudo bashPassword: ISStreamer Python Asan Quraşdırmaya Başlayın! Bu bir neçə dəqiqə çəkə bilər, bir az qəhvə götürün:) Ancaq geri dönməyi unutmayın, sonra suallarım olacaq! Easy_install tapıldı: setuptools 1.1.6 Tapılan pip: pip 1.5.6 /Library/Python/2.7/site-packages/pip-1.5.6- py2.7.egg (python 2.7) pip əsas versiyası: 1 pip kiçik versiya: 5 ISStreamer tapıldı, yenilənir … Tələb artıq yenidir: Kitabxana/Python/2.7/sayt paketlərində ISStreamer Təmizlənir … Avtomatik olaraq bir nümunə skript əldə etmək istəyirsiniz? [y/N] Nümunəni harada saxlamaq istəyirsiniz? [default:./is_example.py] Zəhmət olmasa istifadə etdiyiniz İlkin Dövlət tətbiqini seçin: 1. app.initialstate.com 2. [YENİ!] iot.app.initialstate.com Seçim 1 və ya 2 daxil edin: iot.app daxil edin.initialstate.com istifadəçi adı: iot.app.initialstate.com parolunu daxil edin:

Bir nümunə skriptini avtomatik olaraq əldə etmək istədiyinizi soruşduqda bəli "y" qoyun və skriptinizi standart yerdə saxlamaq üçün enter düyməsini basın. Hansı tətbiqdən istifadə etdiyinizə dair sual üçün 2 -ni seçin (2018 -ci ilin noyabrından əvvəl qeydiyyatdan keçməmisinizsə) və istifadəçi adınızı və şifrənizi daxil edin.

Addım 4: Nümunə Skriptini işə salın

Başlanğıc Vəziyyət hesabınıza məlumat axını yarada biləcəyimizdən əmin olmaq üçün test skriptini işə salın. Aşağıdakı əmri yazın:

$ python is_example.py

Addım 5: Nümunə Məlumat

Veb brauzerinizdə İlkin Dövlət hesabınıza qayıdın. Günlük rafınızda solda "Python Stream Örneği" adlı yeni bir məlumat paketi görünməli idi (səhifəni yeniləməyiniz lazım ola bilər). Verilərinizə baxmaq üçün bu kovanı vurun.

Addım 2: BerryGPS-GSM və Raspberry Pi Zero

BerryGPS-GSM və Raspberry Pi Zero
BerryGPS-GSM və Raspberry Pi Zero

Bir BerryGPS-GSM istifadə edirsinizsə, GPS-in işləməsi və Pi-nin PPP-dən istifadə edərək 3G vasitəsilə qoşulması üçün bu təlimatı izləyə bilərsiniz.

Əlaqəli bələdçi, Pi açıldıqda avtomatik olaraq daşıyıcı şəbəkəsinə necə qoşulacağınızı da göstərir. Uzaqdan izləməyi planlaşdırırsınızsa buna ehtiyacınız olacaq.

Kitabxanaları quraşdırın

Aşağıdakı kitabxanaları quraşdırmalısınız:

$ sudo apt-get python-pip quraşdırın

$ sudo pip install pynmea2 $ sudo pip ISStreamer qurur

Əsas Python Script

Burada GPS məlumatlarını Başlanğıc vəziyyətinə axın edəcək əsas skript yaradacağıq. Aşağıdakı kod serial portunu izləmək üçün istifadə olunan ayrı bir mövzu yaradır. Əsas döngədə fasilə verdiyimiz üçün buna ehtiyac var. 3G üzərindən nə qədər məlumat yüklədiyimizi məhdudlaşdırmaq üçün fasilə var.

Fasilə zamanı hər şeyi eyni mövzuda etsəydik, serial tamponu dolacaqdı (FIFO -dur) və tampondan növbəti dəyəri alanda bir neçə saniyə köhnə olacaq. Bu hər döngədə olur və nəticədə məlumatlar bir neçə dəqiqə və ya saat geridə qalacaq.

Python skriptini yaratmaq və mətn redaktorunu açmaq üçün aşağıdakı əmri daxil edin:

$ nano GPStracker.py

Aşağıdakı kodu kopyalayın və mətn redaktoruna yapışdırın. 11 -ci sətirdə "GİRİŞ KEYİNİZƏ GİRİN" yazılan İlkin Dövlət Giriş Açarını daxil etməlisiniz:

#! /usr/bin/pythonfrom gps import * zaman idxalından * ISStreamer -dən datetime idxalı idxal edin. Axın idxalı Streamer gpsd = Yoxdur #qlobal dəyişəni qurun #Başlanğıc Vəziyyətini qurun, giriş açarınızı aşağı daxil edin streamer = Streamer (bucket_name = "GPS_Tracker) ", bucket_key =" GPS_TRACKER ", access_key =" ERİŞİM ANA ÇIXARI ") sinif GPSDcollector (threading. Thread): def _init _ (self, threadID): threading. Thread._ init _ (self) self.threadID = threadID qlobal gpsd #bring gpsd = gps (mode = WATCH_ENABLE) #Start GPSD self.running = True #Bu mövzunu işə salmağa başla def run (öz): qlobal gpsd isə gpsdThread.running: gpsd.next () əgər _name_ == '_main_': gpsdThread = GPSDcollector (1) # məlumat toplamaq üçün bir mövzu yaradın: gpsdThread.start () # True olarkən işə salın: 'GPS', gpsd.utc, 'CPU time->', datetime.datetime.now () yazın.time (), əgər (gpsd.fix.longitude0) və (gpsd.fix.longitude'nan '): streamer.log ("Yer", "{lat}, {lon}". format) (lat = gpsd.fix.lam, lon = gpsd.fix.longitu de)) streamer.log ("sürət", gpsd.fix.speed) "lat", gpsd.fix.latitude, "lon", gpsd.fix.longitude, "speed", gpsd.fix.speed yuxu çap et (5) (KeyboardInterrupt, SystemExit) istisna olmaqla: # ctrl+c düymələrinə basdığınızda "\ nKill Thread…" gpsdThread.running = False gpsdThread.join () # işin bitməsini gözləyin "Bitti. / NÇıxış."

Saxla və CTRL + X, Y düymələrinə basaraq mətn redaktorundan çıx.

Yükləmə zamanı skriptə avtomatik olaraq başlayın

Uzaqdan izləmə edirsinizsə, skriptin açılışda işləməsini istərdiniz. Bunu etmək üçün əsas python proqramına başlayacaq kiçik bir skript yaradacağıq. Aşağıdakı əmri daxil edin:

$ nano GPStrackerStart.sh

Satırları mətn redaktoruna kopyalayın:

#!/bin/bash

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

Yuxarıdakı fasilə, Pi -yə PPP vasitəsi ilə açılmaq və qoşulmaq üçün vaxt vermək üçündür.

Skriptin icra olunmasını təmin edin:

$ chmod +x ~/GPStrackerStart.sh

Pi hər dəfə çəkəndə skriptə başlamaq üçün cron istifadə edəcəyik:

$ crontab -e

Aşağıdakı xətti aşağıya əlavə edin:

@reboot /home/pi/GPStrackerStart.sh &

Addım 3: Yer və Sürət Tablosu

Məkan və Sürət Tablosu
Məkan və Sürət Tablosu

Layihənizi işə saldıqdan sonra məlumatlar İlkin Dövlətə göndərilməlidir. GPS məlumatlarınız və sürət məlumatlarınız olacaq. Məkanı izləmək üçün xəritədəki GPS məlumatlarından istifadə edə bilərsiniz. Çini xəritəsi üçün, yer izləmənizin yuxarıdakı tablosuna bənzər şəkildə tərtib edilməsi üçün Çizmə Yolu onay qutusunu yoxladığınızdan əmin olun. Zamanla sürəti görmək üçün sürət məlumatlarınızı bir xətt qrafikinə qoya bilərsiniz.

Tövsiyə: