Mundarija:

Haqiqiy vaqtda GPS kuzatuvi: 3 qadam
Haqiqiy vaqtda GPS kuzatuvi: 3 qadam

Video: Haqiqiy vaqtda GPS kuzatuvi: 3 qadam

Video: Haqiqiy vaqtda GPS kuzatuvi: 3 qadam
Video: Telefonizga kimdur #ulanganligini aniqlash va ulanganlarni qanday uchurish /КАК ОТКЛЮЧИТЬ СЛЕЖКА 2024, Iyul
Anonim

Muallif tomonidan batafsil:

Qovoq Pi Trick-or-Treat Tracker
Qovoq Pi Trick-or-Treat Tracker
Qovoq Pi Trick-or-Treat Tracker
Qovoq Pi Trick-or-Treat Tracker
Raspberry Pi harorat monitorini qanday qurish mumkin
Raspberry Pi harorat monitorini qanday qurish mumkin
Raspberry Pi harorat monitorini qanday qurish mumkin
Raspberry Pi harorat monitorini qanday qurish mumkin
Google jadvallaridan ma'lumotlarni boshqaruv paneliga o'tkazing
Google jadvallaridan ma'lumotlarni boshqaruv paneliga o'tkazing
Google jadvallaridan ma'lumotlarni boshqaruv paneliga o'tkazing
Google jadvallaridan ma'lumotlarni boshqaruv paneliga o'tkazing

Ushbu qo'llanmada biz sizga BerryGPS-GSM, Raspberry Pi Zero va boshlang'ich holati yordamida real vaqtda manzilni kuzatishni ko'rsatamiz. Biz BerryGPS-GSM yordamida 3G orqali uzunlik, kenglik va tezlikni dastlabki holatga yuboramiz.

Ta'minotlar

  • Raspberry Pi Zero
  • BerryGPS-GSM
  • Boshlang'ich davlat

1 -qadam: dastlabki holat

Boshlang'ich davlat
Boshlang'ich davlat

Biz barcha uzunlik, kenglik va tezlik ma'lumotlarini bulutli xizmatga o'tkazmoqchimiz va bu xizmat bizning ma'lumotlarimizni noutbukdan yoki mobil qurilmadan kira oladigan yaxshi boshqaruv paneliga aylantirishini xohlaymiz. Biz boshlang'ich holatidan foydalanamiz.

1 -qadam: Boshlang'ich davlat hisobiga ro'yxatdan o'ting

Https://iot.app.initialstate.com saytiga o'ting va yangi hisob yarating. Siz 14 kunlik bepul sinov muddatiga ega bo'lasiz va elektron pochta manziliga ega bo'lganlar bepul talabalar rejasiga yozilishlari mumkin.

2 -qadam: ISStreamer -ni o'rnating

Raspberry Pi -ga boshlang'ich holat Python modulini o'rnating. Buyruq satrida quyidagi buyruqni bajaring:

$ CD/uy/pi/

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

3 -qadam: Automagic -ni yarating

2 -qadamdan so'ng siz ekranga quyidagi chiqishga o'xshash narsani ko'rasiz:

pi@raspberrypi ~ $ / curl -sSL https://get.initialstate.com/python -o -| sudo bashPassword: ISStreamer Python -ni oson o'rnatishni boshlang! Bu o'rnatish uchun bir necha daqiqa vaqt ketishi mumkin, qahva oling:) Lekin qaytib kelishni unutmang, keyinroq savollarim bor! Easy_install topildi: setuptools 1.1.6 pip topildi: pip 1.5.6 dan /Library/Python/2.7/site-packages/pip-1.5.6- py2.7.egg (python 2.7) pip asosiy versiyasi: 1 pip kichik versiyasi: 5 ISStreamer topildi, yangilanmoqda … Talab allaqachon yangilangan: Kutubxonadagi ISStreamer/Python/2.7/sayt-paketlar Tozalash … Siz avtomatik tarzda misol skriptini olishni xohlaysizmi? [y/N] Misolni qayerda saqlamoqchisiz? [standart:./is_example.py] Iltimos, qaysi shtat dasturidan foydalanayotganingizni tanlang: 1. app.initialstate.com 2. [YANGI!] iot.app.initialstate.com 1 yoki 2 -variantni kiriting: iot.app -ga kiring..initialstate.com foydalanuvchi nomi: iot.app.initialstate.com parolini kiriting:

Agar siz avtomatik skript namunasini olishni xohlaysizmi, degan savolga "y" ni "ha" deb qo'ying va skriptni standart joyga saqlash uchun enter tugmasini bosing. Qaysi ilovadan foydalanayotganingiz haqidagi savol uchun 2 -ni tanlang (agar siz 2018 yil noyabrgacha ro'yxatdan o'tmagan bo'lsangiz) va foydalanuvchi nomingiz va parolingizni kiriting.

4 -qadam: Misol skriptini ishga tushiring

Boshlang'ich davlat hisob qaydnomangizga ma'lumotlar oqimini yaratishimiz uchun test skriptini ishga tushiring. Quyidagi buyruqni yozing:

$ python is_example.py

5 -qadam: Ma'lumot namunasi

Veb -brauzerda boshlang'ich davlat hisobingizga qayting. "Python oqimining namunasi" deb nomlangan yangi ma'lumotlar to'plami jurnal javonining chap tomonida ko'rsatilishi kerak edi (ehtimol siz sahifani yangilashingiz kerak bo'ladi). Ma'lumotlaringizni ko'rish uchun bu chelakka bosing.

2-qadam: BerryGPS-GSM va Raspberry Pi Zero

BerryGPS-GSM va Raspberry Pi Zero
BerryGPS-GSM va Raspberry Pi Zero

Agar siz BerryGPS-GSM-dan foydalanayotgan bo'lsangiz, GPS-ni ishga tushirish va Pi-ni PPP yordamida 3G orqali ulanish uchun ushbu qo'llanmani bajarishingiz mumkin.

Bog'langan qo'llanma, shuningdek, yuklash paytida Pi -ni avtomatik ravishda operator tarmog'iga qanday ulashni ko'rsatadi. Agar siz masofadan kuzatishni amalga oshirishni rejalashtirmoqchi bo'lsangiz, bu sizga kerak bo'ladi.

Kutubxonalarni o'rnating

Siz quyidagi kutubxonalarni o'rnatishingiz kerak bo'ladi:

$ sudo apt-get python-pip ni o'rnating

$ sudo pip install pynmea2 $ sudo pip install ISStreamer

Asosiy Python skript

Bu erda biz GPS ma'lumotlarini boshlang'ich holatiga o'tkazadigan asosiy skriptni yaratamiz. Quyidagi kod ketma -ket portni kuzatish uchun ishlatiladigan alohida ipni yaratadi. Bu kerak, chunki bizda asosiy tsiklda pauza bor. To'xtatish 3G orqali qancha ma'lumot yuklashni cheklash uchun mavjud.

Agar biz pauza paytida hamma narsani bir xil mavzuda bajargan bo'lsak, ketma -ket bufer to'ldiriladi (bu FIFO) va biz buferdan keyingi qiymatni olsak, u bir necha soniyalarga eskiradi. Bu har bir tsiklda sodir bo'ladi va oxir -oqibat ma'lumotlar bir necha daqiqa yoki soat orqada qoladi.

Python skriptini yaratish va matn muharririni ochish uchun quyidagi buyruqni kiriting:

$ nano GPStracker.py

Quyidagi kodni nusxa ko'chiring va matn muharririga joylashtiring. Siz "kirish kalitini kiriting" deb yozilgan 11 -qatorga dastlabki kirish kalitini kiritishingiz kerak bo'ladi.

#! /usr/bin/pythonfrom gps import * vaqtdan import * ISStreamer -dan ma'lumotlarni uzatish vaqtini import qilish. Streamer import Streamer gpsd = Yo'q #Global o'zgaruvchini o'rnatish #Boshlang'ich holatini sozlash, kirish kalitini streamer ostiga kiriting = Streamer (bucket_name = "GPS_Tracker) ", bucket_key =" GPS_TRACKER ", access_key =" KIRISH KEYINGIZGA KIRING ") sinf GPSDcollector (threading. Thread): def _init _ (self, threadID): threading. Thread._ init _ (self) self.threadID = threadID global gpsd #bring u gpsd = gps (mode = WATCH_ENABLE) #Start GPSD self.running = True #Bu ishni bajarishni boshlang def run (self): global gpsd while gpsdThread.running: gpsd.next () if _name_ == '_main_': gpsdThread = GPSDcollector (1) # ma'lumotlarni yig'ish uchun mavzu yarating, harakat qilib ko'ring: gpsdThread.start () # rost bo'lganda uni ishga tushiring: 'GPS', gpsd.utc, 'CPU time->', datetime.datetime.now () ni chop eting..time (), agar (gpsd.fix.longitude0) va (gpsd.fix.longitude'nan '): streamer.log ("Manzil", "{lat}, {lon}". format) (lat = gpsd.fix. Latitude, lon = gpsd.fix.longitu de)) streamer.log ("tezlik", gpsd.fix.speed) "lat", gpsd.fix.latitude, "lon", gpsd.fix.longitude, "tezlik", gpsd.fix.speed uyqu (5) tashqari (KeyboardInterrupt, SystemExit): # ctrl+c tugmachalarini bosganingizda "\ nKilling Thread…" gpsdThread.running = False gpsdThread.join () # ip nima qilayotganini tugatguncha kutib turing "Bajarildi. / NExit."

Matn tahrirlovchisini saqlang va CTRL + X, Y tugmalarini bosing va kiriting.

Yuklash paytida skriptni avtomatik ravishda ishga tushiring

Agar siz masofadan turib kuzatayotgan bo'lsangiz, skript yuklashda ishlashini xohlaysiz. Buning uchun biz asosiy python dasturini ishga tushiradigan kichik skript yaratamiz. Quyidagi buyruqni kiriting:

$ nano GPStrackerStart.sh

Satrlarni matn muharririga nusxalash:

#!/bin/bash

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

Yuqoridagi pauza Pi -ga PPP orqali yuklash va ulanish uchun vaqt berish uchun mavjud.

Skriptni bajariladigan qilib qo'ying:

$ chmod +x ~/GPStrackerStart.sh

Biz har safar Pi yuklashda skriptni ishga tushirish uchun cron -dan foydalanamiz:

$ crontab -e

Pastki qatorga quyidagi qatorni qo'shing:

@reboot /home/pi/GPStrackerStart.sh &

3 -qadam: Joylashuv va tezlikni boshqarish paneli

Joylashuv va tezlikni boshqarish paneli
Joylashuv va tezlikni boshqarish paneli

Endi siz loyihangizni ishga tushirganingizdan so'ng, ma'lumotlar dastlabki holatga yuborilishi kerak. Sizda GPS va tezlik ma'lumotlari bo'ladi. Joylashuvni kuzatish uchun siz GPS ma'lumotlarini xaritalarda ishlatishingiz mumkin. Plitka xaritasi uchun "Yo'l chizish" katagiga belgi qo'yganingizga ishonch hosil qiling, shunda sizning joylashuvingizni kuzatish yuqoridagi asboblar paneliga o'xshab ko'rinadi. Vaqt o'tishi bilan tezlikni ko'rish uchun siz tezlik ma'lumotlarini chiziqli grafikga qo'yishingiz mumkin.

Tavsiya: