Агуулгын хүснэгт:
- Хангамж
- Алхам 1: Анхны төлөв
- Алхам 2: BerryGPS-GSM & Raspberry Pi Zero
- Алхам 3: Байршил ба хурдны самбар
Видео: Бодит цагийн GPS хянах: 3 алхам
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:02
Зохиогчийн бусад зүйлийг дагаж мөрдөх:
Энэхүү гарын авлагад бид BerryGPS-GSM, Raspberry Pi Zero, Initial State ашиглан бодит цагийн байршлыг хэрхэн хянах талаар танд үзүүлэх болно. Бид BerryGPS-GSM-ийн тусламжтайгаар уртраг, өргөрөг, хурдыг 3G-ээр анхны төлөв рүү илгээх болно.
Хангамж
- Raspberry Pi Zero
- BerryGPS-GSM
- Анхны төлөв
Алхам 1: Анхны төлөв
Бид бүх уртраг, өргөрөг, хурдныхаа өгөгдлийг үүлний үйлчилгээ рүү дамжуулахыг хүсч байгаа бөгөөд энэ үйлчилгээ нь бидний өгөгдлийг зөөврийн компьютер эсвэл хөдөлгөөнт төхөөрөмжөөсөө нэвтрэх боломжтой сайхан самбар болгон хувиргахыг хүсч байна. Бид анхны төлөвийг ашиглах болно.
Алхам 1: Анхны улсын данс бүртгүүлэх
Https://iot.app.initialstate.com хаягаар орж шинэ данс үүсгэнэ үү. Та 14 хоногийн үнэгүй туршилтыг авах бөгөөд eu имэйл хаягтай хүн үнэгүй оюутны төлөвлөгөөнд бүртгүүлж болно.
Алхам 2: ISStreamer -ийг суулгана уу
Анхны төлөв Python модулийг Raspberry Pi дээрээ суулгаарай. Тушаалын мөрөнд дараах тушаалыг ажиллуулна уу.
$ cd/home/pi/
$ / curl -sSL https://get.initialstate.com/python -o -| sudo bash
Алхам 3: Автомашин хийх
2 -р алхамыг хийсний дараа дэлгэцэн дээрх дараах гаралттай төстэй зүйлийг харах болно.
pi@raspberrypi ~ $ / curl -sSL https://get.initialstate.com/python -o -| sudo bashPassword: ISStreamer Python хялбар суулгалтыг эхлүүлж байна! Суулгахад хэдэн минут шаардагдах болно, кофе аваарай:) Гэхдээ буцаж ирэхээ бүү мартаарай, дараа нь надад асуулт байна! Easy_install олдсон: setuptools 1.1.6 pip: pip/1.5.6 from /Library/Python/2.7/site-packages/pip-1.5.6- py2.7.egg (python 2.7) pip major version: 1 pip minor version: 5 ISStreamer олсон, шинэчлэгдэж байна … Шаардлага аль хэдийн шинэчлэгдсэн байна: Номын сан дахь ISStreamer/Python/2.7/сайтын багцууд Цэвэрлэж байна … Та жишээ скриптийг автоматаар авахыг хүсч байна уу? [y/N] Жишээг хаана хадгалахыг хүсч байна вэ? [анхдагч:./is_example.py] Та ашиглаж буй анхны төлөвийн програмыг сонгоно уу: 1. app.initialstate.com 2. [ШИНЭ!] iot.app.initialstate.com 1 эсвэл 2 -р сонголтыг оруулна уу: iot.app оруулна уу..initialstate.com хэрэглэгчийн нэр: iot.app.initialstate.com нууц үгийг оруулна уу:
Та скриптийн жишээг автоматаар авахыг хүсч байна уу гэж асуухад "y" гэж бичээд enter дарж скриптийг анхдагч байршилд хадгална уу. Та ямар апп ашиглаж байгаа талаар асуухын тулд 2 -г сонгоод (2018 оны 11 -р сараас өмнө бүртгүүлээгүй бол) хэрэглэгчийн нэр, нууц үгээ оруулна уу.
Алхам 4: Жишээ скриптийг ажиллуулна уу
Туршилтын скриптийг ажиллуулснаар бид таны анхны төлөвт өгөгдөл дамжуулах боломжтой болно. Дараах тушаалыг бичнэ үү.
$ python is_example.py
Алхам 5: Жишээ өгөгдөл
Вэб хөтөч дээрээ анхны төлөв рүүгээ буцна уу. "Python урсгалын жишээ" нэртэй шинэ өгөгдлийн сав таны бүртгэлийн тавиур дээр зүүн талд гарч ирэх ёстой байсан (та хуудсыг шинэчлэх шаардлагатай байж магадгүй юм). Өгөгдлөө харахын тулд энэ хувин дээр дарна уу.
Алхам 2: BerryGPS-GSM & Raspberry Pi Zero
Хэрэв та BerryGPS-GSM ашиглаж байгаа бол энэхүү гарын авлагыг дагаж GPS-ийг ажиллуулж, PP-ээ ашиглан Pi ашиглан 3G-ээр холбогдож болно.
Холбогдсон гарын авлага нь таны Pi -г ачаалах үед операторын сүлжээнд хэрхэн автоматаар холбохыг харуулдаг. Хэрэв та алсын удирдлага хийхээр төлөвлөж байгаа бол танд энэ хэрэгтэй болно.
Номын сан суулгах
Та дараах сангуудыг суулгах хэрэгтэй болно.
$ sudo apt-get python-pip суулгана уу
$ sudo pip install pynmea2 $ sudo pip ISStreamer суулгана
Үндсэн Python скрипт
Энд бид GPS өгөгдлийг анхны төлөвт дамжуулах үндсэн скриптийг үүсгэх болно. Доорх код нь цуваа портыг хянахад ашигладаг тусдаа хэлхээ үүсгэдэг. Үндсэн гогцоонд түр завсарлага байгаа тул энэ шаардлагатай байна. Түр зогсоох нь 3G дээр хэр их өгөгдөл байршуулахыг хязгаарлахад оршино.
Хэрэв бид түр завсарлагааны явцад бүх зүйлийг ижил утсаар хийвэл цуваа буфер дүүрэх болно (энэ нь FIFO) бөгөөд бид буферээс дараагийн утгыг авахад хэдхэн секундын дотор хуучирна. Энэ нь давталт бүрт тохиолддог бөгөөд эцэст нь өгөгдөл хэдэн минут эсвэл хэдэн цагаар хоцордог.
Питон скрипт үүсгээд текст засварлагчийг нээхийн тулд дараах тушаалыг оруулна уу.
$ nano GPStracker.py
Дараах кодыг хуулж аваад текст засварлагч руу буулгана уу. Та "Нэвтрэх түлхүүрээ оруулна уу" гэсэн 11 -р мөрөнд анхны төлөвт нэвтрэх түлхүүрээ оруулах шаардлагатай болно.
#! /usr/bin/pythonfrom gps import * цаг хугацааны импортоос * ISStreamer -аас урсгал импорт хийх урсгал урсгал. Streamer import Streamer gpsd = Байхгүй #Глобал хувьсагчийг тохируулах #Анхны төлөвийн урсгалыг тохируулах, нэвтрэх түлхүүрээ доор оруулна уу = Streamer (bucket_name = "GPS_Tracker) ", bucket_key =" GPS_TRACKER ", access_key =" ХАНДАХ ТҮЛХҮҮРЭЭ ОРУУЛАХ ") ангийн GPSDcollector (threading. Thread): def _init _ (self, threadID): threading. Thread._ init _ (self) self.threadID = threadID дэлхийн gpsd #bring Энэ нь gpsd = gps (mode = WATCH_ENABLE) #Start GPSD self.running = True #Start this thread run def (self): global gpsd while gpsdThread.running: gpsd.next () if _name_ == '_main_': gpsdThread = GPSDcollector (1) # өгөгдөл цуглуулах утас үүсгэж үзээрэй: gpsdThread.start () # үүнийг эхлүүлж байхад True: 'GPS', gpsd.utc, 'CPU time->', datetime.datetime.now () хэвлэх.time (), хэрэв (gpsd.fix.longitude0) ба (gpsd.fix.longitude'nan '): streamer.log ("Байршил", "{лат}, {lon}". формат) (лат = gpsd.fix.хаян, lon = gpsd.fix.longitu de)) streamer.log ("хурд", gpsd.fix.speed) 'lat', gpsd.fix.latitude, 'lon', gpsd.fix.longitude, 'speed' хэвлэх, gpsd.fix.speed унтах (5) (KeyboardInterrupt, SystemExit) -ээс бусад: # ctrl+c дарахад "\ nKilling Thread…" gpsdThread.running = False gpsdThread.join () # утас хийж байгаа зүйлээ дуустал хүлээнэ үү "Дууссан. / NГарах."
Текст засварлагчийг хадгалаад CTRL + X, Y дарж оруулна уу.
Ачаалах үед скриптийг автоматаар эхлүүлнэ үү
Хэрэв та алсын удирдлага хийж байгаа бол скриптийг ачаалах үед ажиллуулахыг хүсч байна. Үүнийг хийхийн тулд бид үндсэн питон програмыг эхлүүлэх жижиг скрипт үүсгэх болно. Дараах тушаалыг оруулна уу.
$ nano GPStrackerStart.sh
Текст засварлагч руу мөрүүдийг хуулж ав:
#!/bin/bash
унтах 15 python /home/pi/GPStracker.py &
Дээрх завсарлага нь PP -ээр дамжуулан ачаалах, холбогдоход Пи -д хугацаа өгөх болно.
Скриптийг ажиллуулах боломжтой болгох:
$ chmod +x ~/GPStrackerStart.sh
Pi ачаалах бүрт скриптийг эхлүүлэхийн тулд бид cron ашиглана.
$ crontab -e
Доорх мөрийг доод талд нэмнэ үү.
@reboot /home/pi/GPStrackerStart.sh &
Алхам 3: Байршил ба хурдны самбар
Та одоо төслөө ажиллуулж эхэлмэгц өгөгдлийг анхны төлөв рүү илгээх ёстой. Та GPS өгөгдөл, хурдны өгөгдөлтэй болно. Та GPS өгөгдлийг газрын зургийн хавтан дээр ашиглаж байршлыг хянах боломжтой. Газрын зургийн хавтангийн хувьд зурах замыг сонгох хайрцгийг шалгаарай, ингэснээр таны байршлыг хянах самбар дээрх самбар шиг харагдаж байна. Цаг хугацааны хурдыг харахын тулд та хурдны өгөгдлөө шугаман график дээр байрлуулж болно.
Зөвлөмж болгож буй:
Бодит цагийн цагийн модулийг (DS3231) хэрхэн ашиглах вэ: 5 алхам
Бодит цагийн цагны модулийг (DS3231) хэрхэн ашиглах вэ: DS3231 бол өртөг багатай, туйлын нарийвчлалтай I2C бодит цаг (RTC) бөгөөд температурыг нөхсөн болор осциллятор (TCXO), болортой. Төхөөрөмж нь батерейны оролттой бөгөөд үндсэн хүчдэлийн үед цагийг зөв хэмждэг
Бөөрөлзгөнө Pi ба OpenCV ашиглан бодит цагийн Рубик шоо нүдийг нь тагласан уусгагч: 4 алхам
Бөөрөлзгөнө Pi болон OpenCV ашиглан бодит цагийн Rubik's Cube нүдний боолттой уусгагч: Энэ бол нүдний харцаар шийдэхэд зориулагдсан Рубикийн шоо хэрэгслийн 2 дахь хувилбар юм. Эхний хувилбарыг javascript боловсруулсан бөгөөд та RubiksCubeBlindfolded1 төслийг харах боломжтой.Өмнөх хувилбараас ялгаатай нь энэ хувилбар нь өнгийг илрүүлэхийн тулд OpenCV номын санг ашигладаг
Бодит цагийн худгийн усны түвшин хэмжигч: 6 алхам (зурагтай)
Бодит цагийн худгийн усны түвшин хэмжигч: Эдгээр заавар нь ухсан худагт ашиглахын тулд хямд үнэтэй, бодит цагийн усны түвшний тоолуурыг хэрхэн бүтээх талаар тайлбарласан болно. Усны түвшин хэмжигч нь ухсан худгийн дотор өлгөх, усны түвшинг өдөрт нэг удаа хэмжих, WiFi эсвэл үүрэн холболтоор дамжуулан өгөгдлийг илгээх зориулалттай
Бодит цагийн худгийн усны температур, цахилгаан дамжуулах чанар ба усны түвшин хэмжигч: 6 алхам (зурагтай)
Бодит цагийн худгийн усны температур, цахилгаан дамжуулах чанар ба усны түвшин хэмжигч: Эдгээр заавар нь температур, цахилгаан дамжуулах чанар (EC), ухсан худаг дахь усны түвшинг хянах зориулалттай хямд, бодит цагийн усны тоолуурыг хэрхэн яаж хийхийг тайлбарласан болно. Тоолуур нь ухсан худгийн дотор өлгөх, усны температурыг хэмжих, EC ба
Гэрийн бодит цагийн GPS Tracker (SIM800L, Ublox NEO-6M, Arduino): 8 алхам
Гэрийн бодит цагийн GPS Tracker (SIM800L, Ublox NEO-6M, Arduino): Тэгэхээр GSM модуль над шиг хэвтэж байна уу? Бас GPS-трекер үү? Бид ч бас тэгж бодож байна! Энэхүү зааварчилгаанд би өөрийн зорилгоо хэрхэн дөнгөж эхэлж буй хүний үүднээс хэрхэн яаж хэрэгжүүлэх талаар заавар өгөхийг хичээх болно