Mundarija:
- 1 -qadam: Uskuna
- 2 -qadam: dasturiy ta'minot (Arduino dasturi)
- 3-qadam: Qo'shimcha dasturiy ta'minot (Gps manzillarini server tomonidan qabul qilish)
- 4 -qadam: Yana dasturiy ta'minot (mobil ilova)
- 5 -qadam: Kelgusi ish
Video: To'liq Arduino-ga asoslangan avtomobil GPS+GPRS o'g'irlikka qarshi tizimi: 5 qadam (rasmlar bilan)
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:28
Hammaga salom!
Men GPS-avtomashinalarni o'g'irlashga qarshi qurilma uchun to'liq echim yaratmoqchi edim:
iloji boricha arzonroq
iloji boricha to'liq
iloji boricha boshqa hech narsa yo'q, u faqat ishlaydi
Shunday qilib, men Arduino-ga asoslangan qarorni ishlab chiqdim, bu menga umumiy qiymati 25 dollarga tushdi.
Videodan ko'rinib turibdiki, bu faqat ishlaydi! Siz mashinani ishga tushirasiz, siz mobil telefoningizga mashina harakatlanayotgani to'g'risida bildirishnoma olasiz, keyin siz mobil ilovani ochasiz va siz mashinaning real vaqtda harakatlanishini ko'rasiz (10 soniya yangilanish kechikishi bilan).
Ushbu qo'llanma sizga barcha bosqichlar bo'yicha yo'l -yo'riq beradi, shuni yodda tutingki, yechimning bir nechta komponentlari mavjud:
1) apparat (Arduino -ga asoslangan)
2) dasturiy ta'minot (Arduino dasturi)
3) ko'proq dasturiy ta'minot (gps manzillarini server tomonidan qabul qilish)
4) undan ham ko'proq dasturiy ta'minot (mobil ilova)
Boshlaylik..
1 -qadam: Uskuna
Xaridlar ro'yxati:
1) Arduino Uno R3 yoki klon. Men "DCcEle DCcduino uno" klonidan foydalandim, u endi mavjud emas. Mana ekvivalenti: Aliexpress -da - 3,75 $
2) Arduino uchun GPS birligi (GY-NEO6MV2 yangi GPS moduli, parvoz nazorati EEPROM MWC APM2.5 katta antennasi NEO6MV2). Men buni qo'lladim: Aliexpress -da - 6,66 dollar
3) Arduino uchun GPRS / GSM birligi (SIM800L V2.0 5V simsiz GSM GPRS moduli to'rt bandli antennali kabel qopqog'i). Men buni ishlatdim: Aliexpress -da - 6,71 dollar
4) Shu kabi zaxira dupont kabellari: Aliexpress -da - 0,89 $
5) IoT ma'lumot sim -kartasi (yoki ma'lumotlar aloqasi bo'lgan boshqa sim -karta). Men buni ishlatganman: Hologram.io dan. Menda bepul ishlab chiquvchi bor, faqat pullik etkazib berish - 7,50 $
Hammasi: 25,51 $, lekin menda kabellar bor edi, shuning uchun u 25 $ dan kam!
Ikkita rasmda montajdan oldin komponentlar va yakuniy mahsulot ko'rsatilgan. Siz qilishingiz kerak bo'lgan ulanishlar:
Arduino - SIM800L
10 - SIFIRLASH
GND - GND (ulardan 2 tasi)
5V - 5V
7 - SIM_TXD
8 - SIM_RXD
Arduino-GY-NEO6MV2
GND - GND
5V - VCC
3 - RX
4 - TX
Barcha kabellar va antennalarni ulang va Arduino -ni 2A cho'qqisiga chiqa oladigan manbadan quvvatlantirganingizga ishonch hosil qiling. Kompyuter usb zo'rg'a yaxshi (men MacBook Pro -dan foydalanayapman), "tasodifiy" telefon zaryadlovchi qurilmasi etarli bo'lmaydi. Aksariyat avtomobillarning usb rozetkalari ham 1A dan past. Agar bu sizning holatingiz bo'lsa, sizga kamida 2A bo'lgan 12Vli 5V quvvat manbai kerak bo'ladi.
Sim -kartani joylashtiring. Agar siz Hologram.io sim -kartasidan foydalansangiz, uning boshqaruv panelida ro'yxatdan o'tganingizga ishonch hosil qiling va sim -kartani faollashtiring (bu bir necha daqiqa / soat davom etadi).
2 -qadam: dasturiy ta'minot (Arduino dasturi)
Menimcha, siz Arduino dasturini yaxshi bilasiz. Aks holda, iltimos, ushbu qo'llanmadan boshlang: Instructables -da.
Sizga faqat bitta tashqi kutubxona kerak, men uni qo'lda o'rnatishim kerak edi. Bu erga o'ting: TinyGPS, kutubxonani eksport qiling va uni mahalliy Arduino papkasiga o'rnating.
U erdan biz ularning asosiy misolidan ba'zi kodlarni "o'g'irlaymiz" va uni o'z maqsadlarimizga o'zgartirmoqchimiz.
Keyin biz ushbu qo'llanmadan "o'g'irlaymiz" va kodni maqsadimizga muvofiq o'zgartiramiz.
Natijada biriktirilgan.ino dasturi.
Siz qila oladigan va o'zgartirishingiz kerak bo'lgan ikkita narsa bor:
"SECONDS" aniqlaydi va "SERVER" aniqlaydi.
Men SECONDS ni 10 ga qo'ydim, shuning uchun ham: Hologram.io ishlab chiqaruvchi dasturi sizga oyiga 1 mb bepul ma'lumot beradi. Bu shuni anglatadiki, biz yuborilgan baytlarni minimallashtirishni xohlaymiz, lekin biz o'z pozitsiyamizni tez -tez yangilab turishimiz kerak. Biz UDP paketlarini serverga yuborish uchun standart AT modem buyruqlaridan foydalanamiz, har biri 4 baytdan va har biri 1 baytdan foydalanadigan lat/lon. Shunday qilib, umumiy GPS yangilanishi 20 bayt (IP sarlavhasi) va 8 bayt (UDP sarlavhasi) va 9 bayt (yuk). Bu 37 bayt. Agar mening mashinam kuniga 2 soatdan ko'p bo'lmagan vaqt faol bo'lsa, men har 10 soniyada yangilanishga qodirman va oyiga atigi 806kb (31 kun) sarflayman. Bu menga o'z vaqtimdan, ya'ni avtomobil o'g'risidan, haydash vaqti uchun 218kb beradi. Bu menga haydash vaqtimdan tashqari 16,76 soatlik GPS kuzatuvini beradi, har 10 soniyada bitta yangilanish.
Endi, bu UDP paketlari bir joyga borishi kerak. Men CloudAtCost bulutida joylashgan Ubuntu serveridan foydalanayapman, uni 80% chegirma bilan 8 dollarga sotib oldim va boshqa maqsadlarga xizmat qilyapman, shuning uchun xarajatlar hisobiga kirmaydi. Agar siz server uchun pul to'lashni xohlamasangiz, Amazon AWS -ning 12 oylik bepul namunasini olishingiz va unga Ubuntu -ni o'rnatishingiz mumkin. Serverni o'rnatganingizdan so'ng (keyingi bosqichga qarang), uning statik IP manzilini oling va uni SERVER ta'rifi yoniga qo'ying.
3-qadam: Qo'shimcha dasturiy ta'minot (Gps manzillarini server tomonidan qabul qilish)
CloudAtCost ham, Amazon ham oldindan tuzilgan Ubuntu tasviri bilan birga keladi (CloudAtCost Ubuntu 14.04 da). Men Ubuntu -ni o'rnatish bosqichlarini o'tmayman, chunki sizga kerak bo'lmaydi. Agar siz CloudAtCost -dan foydalanayotgan bo'lsangiz, Ubuntu 16.04 -ga o'tishni xohlashingiz mumkin
sudo apt-get update && sudo apt-get upgrade && sudo apt-get dist-upgrade
Keyin LAMP -ni o'rnatishingiz kerak (bu ko'rsatmaga qarang: bu erda), lekin biz PHP -dan foydalanmaymiz.
Python -ni o'rnatish
sudo apt-get install python-minimal pip
Keyin bir nechta modul qo'shing:
pip install --user urllib3 so'rovlari
Siz /var /www ni siz yozadigan qilib sozlashimiz kerak, shunday qilaylik:
sudo adduser YOUR_USER www-ma'lumotlar to'plami -R www-ma'lumotlar: www-ma'lumotlar /var /www
sudo chmod -R g+rwX /var /www
Endi, bizga "server" kerak, u) UDP paketlarini qabul qiladi, ii) trekni quradi, iii) mobil telefonimizga bildirishnoma yuboradi va yaratilgan gps trekka xizmat ko'rsatadigan "server" (bu apache bo'ladi).
Birinchi server uchun biriktirilgan python kodini nusxa ko'chiring. Siz quyidagi narsalarni sozlashingiz kerak:
iftttuser = "IFTTT FOYDALANISHINGIZ"
iftttpass = "Sizning IFTTT parolingiz"
iftttappletid = "IFTTT BILDIRISHINGIZ QO'LLANILGAN"
iftttkey = "Sizning IFTTT kalitingiz"
iftttevent = "SIZNING IFTTT VOQEASI"
Siz taxmin qilganingizdek, biz mobil telefonlarimizga real vaqtda bildirishnomalarni yuborish uchun IFTTT-dan foydalanamiz. Bu yo'riqnomaga amal qiling: bu erda, lekin "menga sms yuborish" o'rniga "ilova xabarnomasini yuborish" -ni tanlang. Applet identifikatorini oling (ko'rish uchun applet konfiguratsiyasining pastki qismiga o'ting) va yuqoridan foydalaning. Yuqoridagi sozlamalarda shunday yaratilgan kalitdan ham foydalaning. IFTTT tadbiri - bu sizning appletga bergan ismingiz, men uni "harakatlanuvchi" deb ataganman.
AFAIK-hozirda real vaqtda bepul xabarnomalar platformasi yo'q. Agar siz ulardan birini bilsangiz, menga xabar bering. IFTTT kechiktirildi. Agar siz elektron pochta tetikidan foydalansangiz, bu kechikishni bir necha soniyagacha kamaytirish mumkin. Afsuski, bu ishonchli emas. Yangi yaratilgan webhook 15 daqiqaga kechikdi. Lekin biz mashinamiz o'g'irlanganini bilish uchun 15 daqiqa kutishni xohlamaymiz, to'g'rimi? Bu yuqoridagi barcha sozlamalarni o'rnatishingizni so'rash uchun parol. Agar siz python kodini aylantirsangiz, IFTTT-ning "hozir tekshirish" funksiyasini avtomatlashtirish uchun bir nechta satrlar borligini ko'rasiz, bu tetiklarni to'satdan tekshirishga majbur qiladi va bildirishnomani 1 soniyadan kamroq vaqt ichida ishga tushiradi! Salomat bo'ling:)
Python kodingizni biror joyga o'rnatganingizdan so'ng, uni ishga tushiring. Agar siz professional foydalanuvchi bo'lsangiz, uni server yuklanishidan boshlang. Buni qanday qilish kerakligi haqida Internetda ko'plab bepul qo'llanmalarga qarang, masalan.
4 -qadam: Yana dasturiy ta'minot (mobil ilova)
Oldingi bosqichda server yangilangan gps -trekni tasavvur qilishning bizga tez va sodda usuli kerak. Ehtimol, u har qanday smartfonda ishlashi kerak.
Keling, Ionic/Cordova kabi o'zaro faoliyat platformali mobil ilovalar to'plamidan foydalanaylik. Men Ionic v1 dan foydalanmoqdaman, uni Ionic Native yoki Ionic v2 bilan aralashtirmang, bu boshqa narsa.
Ionic -da birinchi loyihangizni boshlash uchun quyidagi oddiy qadamlarni bajaring.
Keyin, Google Maps sdk -ga asoslangan yangi loyihani boshlashingiz kerak, masalan:
ion start myapp xaritalari
"Resurslar" papkasiga o'ting va katta avtomobil tasvirini bu erdan "icon.png" nusxa ko'chiring. Kichik piktogrammalarni "car2.png" va "start.png" sifatida yuklang. Sizga ilovada marker sifatida kerak bo'ladi.
Biriktirilgan index.html (index.html.txt nomini index.html qilib o'zgartiring), directives.js va controllers.js fayllaridan foydalaning va ularni www (index.html), www/js (hamma js) ga joylashtiring.
platformangizni quyidagicha qo'shing:
ionic plaftorm android qo'shish
shunday qurish:
Android -ning ionli qurilishi
keyin ionic sizga.apk qayerda qurilganligini aytib beradi, uni mobil telefoningizga o'rnatishingiz mumkin.
IOS -ni yaratish uchun sizga Mac va Xcode kerak bo'ladi. ionic keyin Xcode -da ochish va telefoningiz uchun qurish mumkin bo'lgan Xcode loyihasini saqlashi mumkin. Agar sizda iOS dasturchi hisobi bo'lmasa, siz telefoningizni Xcode -ga ulashingiz va dasturni o'sha erga o'rnatish uchun uni ishlab chiqish uchun sozlashingiz kerak bo'ladi. Bu ko'rsatma berish doirasidan tashqarida.
Har xil js fayllarida siz "car2.png" va "start.png" ga mos keladigan satrlarni topishingiz va ularni rasmlaringiz yo'li bilan o'zgartirishingiz kerak bo'ladi. "Plan.json" uchun ham xuddi shunday.
Bo'ldi shu!!
5 -qadam: Kelgusi ish
1) Men hamma narsani karton qutiga joylashtirdim, uni usb rozetkasiga yaqin joyda yashirishim mumkin. Eng yaxshisi, 12v-> 5v konvertorli, kaput ostiga yaxshi korpus o'rnatish.
2) Bluetooth sensori yordamida, agar siz mashinada bo'lsangiz, "sezishingiz" mumkin, shuning uchun gps tizimi yoqilmaydi.
3) Sim-ma'lumotlar rejasi uchun pul to'lang va SECONDS-ni 1-ga qo'ying, real vaqt rejimida kuzatishni yoqtiring:)
Umid qilamanki, sizga bu birinchi ko'rsatmam yoqdi!
Tavsiya:
Batareya bilan ishlaydigan ofis. Quyosh panellari va shamol turbinasi: Sharq/G'arbni avtomatik almashtirish bilan quyosh tizimi: 11 qadam (rasmlar bilan)
Batareya bilan ishlaydigan ofis. Quyosh tizimi Sharq/G'arbning avtomatik panellari va shamol turbinasi bilan almashinuvi bilan: Loyiha: 200 kvadrat metrli ofis batareyali bo'lishi kerak. Ofis, shuningdek, ushbu tizim uchun zarur bo'lgan barcha tekshirgichlar, batareyalar va komponentlarni o'z ichiga olishi kerak. Quyosh va shamol energiyasi batareyalarni zaryad qiladi. Faqat kichik muammo bor
A9G GPS va GPRS moduli bo'yicha qo'llanma - Ai-Thinker - Buyruqlar: 7 qadam
A9G GPS va GPRS moduli bo'yicha qo'llanma | Ai-Thinker | AT buyruqlari: Hey, nima bo'ldi, bolalar! Akarsh bu erda CETech -dan.Bugun biz AI Thinker -dan A9G GPS, GSM va GPRS moduli orqali o'tmoqchimiz. AI Thinker -dan A9 va A6 kabi bir nechta boshqa modullar ham bor, ular o'xshash GSM va GPRS imkoniyatlariga ega, lekin
NaTaLia ob -havo stantsiyasi: Arduino quyosh energiyasi bilan ishlaydigan ob -havo stantsiyasi to'g'ri yo'l bilan amalga oshirildi: 8 qadam (rasmlar bilan)
NaTaLia ob -havo stantsiyasi: Arduino quyosh energiyasi bilan ishlaydigan ob -havo stantsiyasi to'g'ri yo'lga qo'yildi: 1 yil davomida 2 xil joyda muvaffaqiyatli ishlaganimdan so'ng, men quyosh energiyasi bilan ishlaydigan ob -havo stantsiyasining loyiha rejalari bilan bo'lishaman va uning qanday qilib uzoq vaqt yashay oladigan tizimga aylanganini tushuntiraman. quyosh energiyasidan o'tgan davrlar. Agar ergashsangiz
Twinky bilan eng zo'r Arduino robot bilan tanishing: 7 qadam (rasmlar bilan)
Twinky bilan eng zo'r Arduino roboti bilan tanishing: Salom, men sizga "Jibo" ni o'zim qanday yaratganimni o'rgataman. lekin "Twinky" deb nomlangan, men buni ochib bermoqchiman … Bu nusxa emas! Men ikkiyuzlamachilik bilan qurardim va shundan keyingina shunga o'xshash narsaning mavjudligini tushundim: bu erda
Vaqt o'tishi bilan rasmlar uchun kamera osonlashtirildi: 22 qadam (rasmlar bilan)
Vaqt o'tishi bilan suratga olish uchun kamera osonlashtirildi. Men boshqa ko'rsatmalarni vaqtni tez suratga olish filmlarini suratga olishni tekshirib ko'rdim. U kino qismini juda yaxshi yoritgan. U filmlar yaratish uchun yuklab olishingiz mumkin bo'lgan bepul dasturiy ta'minot haqida gapirib berdi. Men o'z -o'zimga aytdim, men o'ylaymanki, agar men qila olsam