Mündəricat:
- Addım 1: Hardware
- Addım 2: Proqram təminatı (Arduino Proqramı)
- Addım 3: Daha çox proqram (server tərəfində GPS yerlərinin qəbulu)
- Addım 4: Daha Çox Proqram (Mobil Tətbiq)
- Addım 5: Gələcək İş
Video: Tam Arduino əsaslı avtomobil GPS+GPRS oğurluq əleyhinə sistem: 5 addım (şəkillərlə)
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:48
Hər kəsə salam!
Bir GPS avtomobil oğurluq əleyhinə cihaz üçün tam bir həll qurmaq istədim:
mümkün qədər ucuz
mümkün qədər tam
yalnız işlədiyi üçün mümkün olan başqa bir şey yoxdur
Beləliklə, Arduino əsaslı bir həll hazırladım və mənə 25 dollara başa gəldi.
Videodan da gördüyünüz kimi, sadəcə işləyir! Maşını işə salırsınız, cib telefonunuzda avtomobilin hərəkət etdiyi barədə bildiriş alırsınız, sonra mobil tətbiqini açırsınız və maşının real vaxtda hərəkət etdiyini görə bilərsiniz (10 saniyəlik yeniləmə gecikməsi ilə).
Bu təlimat, həll yolunda bir neçə komponent olduğunu nəzərə alaraq, bütün addımlar boyunca sizə yol göstərəcək:
1) aparat (Arduino əsaslı)
2) proqram (Arduino proqramı)
3) daha çox proqram təminatı (gps yerlərinin server tərəfində qəbulu)
4) daha çox proqram (mobil tətbiq)
Gəlin başlayaq..
Addım 1: Hardware
Alış-veriş siyahısı:
1) Arduino Uno R3 və ya klon. Artıq görünməyən "DCcEle DCcduino uno" klonundan istifadə etdim. Budur bir ekvivalent: Aliexpress -də - 3.75 $
2) Arduino üçün GPS vahidi (Uçuş İdarəetmə Uçuş İdarəetmə EEPROM MWC APM2.5 böyük anten NEO6MV2 ilə yeni GY-NEO6MV2 yeni GPS modulu). Bunu istifadə etdim: Aliexpress -də - 6.66 $
3) Arduino üçün GPRS / GSM vahidi (SIM800L V2.0 5V Simsiz GSM GPRS MODÜLÜ Dörd Bantlı W / Anten Kabel Qapağı). Bunu istifadə etdim: Aliexpress -də - 6.71 $
4) Bu kimi ehtiyat dupont kabelləri: Aliexpress -də - 0.89 $
5) IoT məlumat sim kartı (və ya məlumat bağlantısı olan hər hansı digər sim kart). Bunu istifadə etdim: Hologram.io -dan. Pulsuz bir inkişaf etdiricim var, yalnız ödənişli göndərmə - 7.50 dollar
Cəmi: 25.51 $, amma kabellər artıq məndə idi, buna görə də 25 $ -dan azdır!
İki şəkil montajdan əvvəl komponentləri və son məhsulu göstərir. Etməli olduğunuz əlaqələr bunlardır:
Arduino - SIM800L
10 - SIFIRLA
GND - GND (bunlardan 2 -si)
5v - 5v
7 - SIM_TXD
8 - SIM_RXD
Arduino-GY-NEO6MV2
GND - GND
5V - VCC
3 - RX
4 - TX
Bütün kabelləri və antenləri bağlayın və Arduino'yu 2A zirvələri verə biləcək bir mənbədən işə saldığınızdan əmin olun. Kompüterin usb -i çox yaxşı deyil (MacBook Pro istifadə edirəm), "təsadüfi" telefon şarj cihazı kifayət etməyəcək. Bir çox avtomobilin usb satış nöqtəsi də 1A -dan azdır. Bu sizin vəziyyətinizdirsə, ən azı 2A olan 12v avtomobil 5v enerji təchizatına da ehtiyacınız var.
Sim kartı daxil edin. Hologram.io sim kartından istifadə edirsinizsə, onların tablosunda qeydiyyatdan keçdiyinizə və sim kartı aktivləşdirdiyinizə əmin olun (bir neçə dəqiqə / saat çəkir).
Addım 2: Proqram təminatı (Arduino Proqramı)
Güman edirəm ki, Arduino proqramlaşdırması ilə tanışsınız. Əks təqdirdə, bu təlimatla başlayın: Təlimatlar.
Yalnız bir xarici kitabxanaya ehtiyacınız var, onu əl ilə qurmalıydım. Bura gedin: TinyGPS, kitabxananı ixrac edin və yerli Arduino qovluğuna quraşdırın.
Oradan, əsas nümunələrindən bəzi kodları "oğurlayacağıq" və məqsədlərimizə uyğun olaraq dəyişdirəcəyik.
Sonra bu təlimatdan "oğurlayacağıq" və kodu yenidən məqsədlərimizə dəyişdirəcəyik.
Nəticə əlavə olunan.ino proqramıdır.
Düzəltməli olduğunuz və edə biləcəyiniz bir neçə şey var:
"SECONDS" təyin edir və "SERVER" müəyyən edir.
SECONDS -i 10 olaraq təyin etdim və bunun səbəbi budur: Hologram.io geliştirici proqramı sizə ayda 1mb pulsuz məlumat verir. Bu o deməkdir ki, göndərilən baytları minimuma endirmək istəyirik, həm də mövqeyimizi tez -tez yeniləmək lazımdır. UDP paketlərini mesajları alan serverimizə göndərmək üçün standart AT modem əmrlərindən istifadə edəcəyik, hər biri 4 bayt və 1 bayt istifadə edərək lat/lon. Beləliklə, ümumi GPS yeniləməsi 20 bayt (IP başlığı) və 8 bayt (UDP başlığı) üstəgəl 9 bayt (yük) təşkil edir. Bu 37 baytdır. Avtomobilimin gündə 2 saatdan çox olmayaraq aktiv olduğunu düşünsəm, hər 10 saniyədə bir yeniləmə ala bilərəm və ayda (31 gün) yalnız 806kb istehlak edə bilərəm. Bu, sürücülük vaxtı üçün öz maşınımdan, yəni avtomobil oğrusundan 218kb verir. Sürüş vaxtım xaricində hər 10 saniyədə bir yeniləmə ilə 16.76 saat GPS izləmə imkanı verir.
İndi bu UDP paketləri bir yerə getməlidir. CloudAtCost buludunda yerləşdirilmiş, 80% endirimlə 8 dollara aldığım və mənə başqa məqsədlər üçün xidmət edən bir Ubuntu serverindən istifadə edirəm, buna görə də xərc hesablamalarına girmirəm. Bir server üçün pul ödəmək istəmirsinizsə, 12 ay ərzində pulsuz Amazon AWS nümunəsi əldə edə və üzərinə Ubuntu quraşdıra bilərsiniz. Serverinizi qurduqdan sonra (növbəti addıma baxın), statik IP ünvanını alın və SERVER təyininin yanına qoyun.
Addım 3: Daha çox proqram (server tərəfində GPS yerlərinin qəbulu)
Həm CloudAtCost, həm də Amazon əvvəlcədən konfiqurasiya edilmiş Ubuntu görüntüsü ilə gəlir (CloudAtCost Ubuntu 14.04-dədir). Buna görə də ehtiyacınız olmayacağı kimi Ubuntu qurmaq üçün addımlar atmıram. CloudAtCost istifadə edirsinizsə, bir Ubuntu 16.04 -ə yüksəltmək istəyə bilərsiniz
sudo apt-get update && sudo apt-get upgrade && sudo apt-get dist-upgrade
Sonra PHP istifadə etməyəcəyimizə baxmayaraq LAMP qurmalısınız (bu təlimata baxın: burada).
Python -u yükləyin
sudo apt-get python-minimal pip qurun
Sonra bir neçə modul əlavə edin:
pip install --user urllib3 sorğuları
Sizin yazdığınız /var /www qurmalıyıq, buna görə də edək:
sudo adduser YOUR_USER www-dataudo chown -R www-data: www-data /var /www
sudo chmod -R g+rwX /var /www
İndi, i) UDP paketlərini almaq, ii) treki qurmaq, iii) cib telefonumuza bildiriş göndərmək və yaradılan gps parçasına xidmət etmək üçün "server" (bu apache olacaq) üçün "server" ə ehtiyacımız var.
İlk server üçün əlavə edilmiş python kodunu kopyalayın. Aşağıdakıları konfiqurasiya etməlisiniz:
iftttuser = "IFTTT İSTİFADƏÇİNİZ"
iftttpass = "IFTTT PAROLUNUZ"
iftttappletid = "SİZİN IFTTT BİLDİRİMİNİZ APPLET"
iftttkey = "SİZİN IFTTT DÖVLƏTİNİZ"
iftttevent = "IFTTT TƏDBİRİNİZ"
Ehtimal etdiyiniz kimi, cib telefonlarımıza real vaxt bildirişlərini təqdim etmək üçün IFTTT-dən istifadə edirik. Bu təlimatı izləyin: burada ancaq "mənə bir sms göndər" seçimini yerinə "tətbiq bildirişi göndər" seçin. Applet id -nizi əldə edin (görmək üçün appletin konfiqurasiyasının aşağı hissəsinə gedin) və yuxarıdakılardan istifadə edin. Yuxarıdakı parametrlərdə belə yaradılmış düyməni istifadə edin. IFTTT tədbiri, tətbiqetməyinizə verdiyiniz addır, ona "carmoving" verdim.
İndi pulsuz olaraq real vaxt rejimində heç bir bildiriş platforması yoxdur, AFAIK. Birindən xəbəriniz varsa, mənə bildirin. IFTTT gecikməsi var. E -poçt tetikleyicisini istifadə etsəniz, bu gecikmə bir neçə saniyəyə qədər minimuma endirilə bilər. Təəssüf ki, bu etibarlı deyil. Yeni yaradılan webhookun 15 dəqiqə gecikməsi var. Amma maşınımızın oğurlandığını bilmək üçün 15 dəqiqə gözləmək istəmirik, elə deyilmi? Yuxarıdakı bütün parametrləri qurmağınızı istəməyin şifrəsidir. Python kodunu sürüşdürsəniz, IFTTT-in "indi yoxla" funksiyasını avtomatlaşdırmaq üçün tetikleyiciləri qəfil yoxlamağa məcbur edən və bildirişi 1 saniyədən az müddətdə işə salan 45-53 bir neçə sətir olduğunu görürsünüz! Buyurun:)
Python kodunuzu bir yerə qurduqdan sonra onu işə salın. Pro istifadəçisisinizsə, server açılışında başlamasını təmin edin. Bunun necə ediləcəyi ilə bağlı bir çox pulsuz onlayn bələdçiyə baxın, məsələn bu.
Addım 4: Daha Çox Proqram (Mobil Tətbiq)
Əvvəlki addımdakı serverin günümüzə qədər saxladığı gps izini görselleştirmek üçün sürətli və sadə bir yola ehtiyacımız var. Ola bilsin ki, hər cür smartfonda işləməlidir.
Daha sonra Ionic/Cordova kimi çarpaz platformalı bir mobil tətbiq paketindən istifadə edək. Ionic v1 istifadə edirəm, Ionic Native və ya Ionic v2 ilə qarışdırmayın, bu fərqli bir şeydir.
Ionic -də ilk layihənizi başlamaq üçün bu çox sadə addımları izləyin: burada.
Sonra, Google Maps sdk -ə əsaslanan yeni bir layihəyə başlamalısınız:
ionic start myapp xəritələri
"Resurslar" qovluğuna daxil olun və böyük avtomobil şəklini bura "icon.png" olaraq kopyalayın. Kiçik nişanları "car2.png" və "start.png" olaraq serverinizdə bir yerə yükləyin, məsələn https://yourserver/car2.png. Tətbiqinizdə marker olaraq bunlara ehtiyacınız olacaq.
Əlavə edilmiş index.html (index.html.txt adını index.html olaraq dəyişdirin), directives.js və controllers.js fayllarından istifadə edin və onları www (index.html), www/js (bütün js) fayllarına qoyun.
platformanızı belə əlavə edin:
ionic plaftorm android əlavə edin
belə qurun:
ion quruluşlu android
sonra ionic, mobil telefonunuza yükləyə biləcəyiniz.apkınızı harada qurduğunu sizə xəbər verəcəkdir.
İOS üçün qurmaq üçün Mac və Xcode lazımdır. ionic daha sonra Xcode -da açıb telefonunuz üçün qura biləcəyiniz bir Xcode layihəsini saxlaya bilər. Bir iOS geliştirici hesabınız yoxdursa, telefonunuzu Xcode -a bağlamalı və tətbiqin orada quraşdırılması üçün telefonunuzu inkişaf etdirmək üçün qurmalısınız. Bu təlimatlandırmanın əhatəsi xaricindədir.
Müxtəlif js fayllarında "car2.png" və "start.png" ilə əlaqəli sətirləri tapmalı və şəkillərinizin yolu ilə dəyişdirməlisiniz. Eyni "plan.json" üçün.
Bu belədir!!
Addım 5: Gələcək İş
1) Hər şeyi usb prizinin yanında gizlədə biləcəyim bir karton qutuya qoydum. Ən yaxşısı, 12v-> 5v çeviricisi olan avtomobilin kapotunun altına daha yaxşı bir korpus quraşdırmaq olar.
2) Bluetooth sensoru ilə, maşında olduğunuzu əslində "hiss edə" bilərsiniz, buna görə GPS sistemi açılmır.
3) Sadəcə bir sim məlumat planı üçün pul ödəyin və SECONDS-u 1 olaraq təyin edin ki, super-real vaxt izləmədən zövq alın:)
Ümid edirəm ki, mənim ilk təlimatımdan zövq aldınız!
Tövsiyə:
GPRS (SİM Kart) Məlumat Bağlantılı Kompakt Hava Sensoru: 4 addım
GPRS (SİM Kart) Məlumat Bağlantısı olan Kompakt Hava Sensoru: Layihənin xülasəsiBu BME280 temperatur/təzyiq/rütubət sensoru və ATMega328P MCU-ya əsaslanan akkumulyatorlu hava sensoru. İki ədəd 3.6 V lityum tionil AA batareyası ilə işləyir. 6 µA çox aşağı yuxu istehlakına malikdir. Məlumat göndərir
A9G GPS və GPRS Modulu Dərsliyi - Ai-Thinker - AT əmrləri: 7 addım
A9G GPS və GPRS Modulu Dərsliyi | Ai-Thinker | AT əmrləri: Hey, nə var, uşaqlar! Akarsh burada CETech -dən. Bu gün AI Thinker -dən A9G GPS, GSM və GPRS modulundan keçəcəyik. AI Thinker -dən A9 və A6 kimi oxşar GSM və GPRS imkanlarına malik bir neçə başqa modul da var, amma
Arduino Security 3G/GPRS E -poçt Kamerası ilə Hərəkət Algılama: 4 Addım
Arduino Security 3G/GPRS E -poçt Kamerası ilə Hərəkət Algılama: Bu təlimatda, hərəkət detektoru olan bir təhlükəsizlik nəzarət sistemi qurmağın və 3G/GPRS qalxanı vasitəsilə poçt qutusuna fotoşəkillər göndərməyin bir versiyasından bəhs etmək istəyirəm. digər təlimatlar: təlimat 1 və təlimat
Arduino və SIM900 GSM GPRS 3G Temperatur və Nəmlik Qeydiyyatı, Mobil İstatistikler: 4 Addım
Arduino və SIM900 GSM GPRS 3G Temperatur və Nəmlik Qeydiyyatı, Mobil İstatistikler: Arduino UNO R3, SIM900 Shield AND DHT22 ilə temperatur və rütubət məlumatlarını çöldə, otaqda, istixanada, laboratoriyada, soyutma otağında və ya başqa yerlərdə tamamilə pulsuz qeyd edə bilərsiniz. Bu nümunəni otaq temperaturu və rütubətini qeyd etmək üçün istifadə edəcəyik. Cihaz
GPRS üzərindən TCP/IP Bağlantısı: SIM900A Modulundan istifadə edərək məlumatları serverə necə göndərmək olar: 4 addım
GPRS üzərindən TCP/IP Bağlantısı: SIM900A Modulundan istifadə edərək Məlumatları Serverə Necə Göndərmək olar: Bu təlimatda sizə sim900 modulundan istifadə edərək məlumatları TCP serverinə necə göndərəcəyiniz barədə məlumat verəcəyəm. Serverdən müştəriyə məlumatı necə ala biləcəyimizi də görəcəyik (GSM modulu)