Mundarija:
2025 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2025-01-13 06:58
Bu yo'riqnomada men RC transport vositalari, xususan RC samolyotlari uchun arduino asosidagi jangovar ma'lumotlarni yozish qurilmasini qurmoqchiman. Ma'lumotni yozish uchun arduino pro mini va SD -karta ekraniga ulangan UBlox Neo 6m GPS modulidan foydalanmoqchiman. Bu loyiha kenglik, uzunlik, tezlik, balandlik va batareya zo'riqishini boshqa narsalar qatorida qayd etadi. Bu ma'lumotlar Google Earth Pro yordamida yaxshiroq ko'rish tajribasi uchun boyitiladi.
1 -qadam: asboblar va ehtiyot qismlar
Qismlar
- Ublox NEO 6m GPS moduli: ebay/amazon
- Micro SD karta moduli: ebay/amazon
- Micro SD karta (yuqori tezlik yoki sig'im shart emas): amazon
- Arduino pro mini: ebay/amazon
- FTDI dasturchisi va unga mos keladigan simi: ebay/amazon
- Takliflar paneli: ebay/amazon
- Bog'lanish simlari: ebay/amazon
- Sarlavha pinlari: ebay/amazon
- Tuzatuvchi diod: ebay/amazon
- 2x 1K ohmli qarshilik: ebay/amazon
- 1500 mikronli karton
Asboblar
- Lehimlash temir va lehim
- Issiq yopishtiruvchi qurol
- Noutbuk yoki kompyuter
- Multimetr (juda zarur emas, lekin juda foydali)
- Yordam qo'llari (yana kerak emas, lekin yordamchi)
- Hunarmand pichoq
Majburiy emas
- Prototiplash uchun ishlatiladigan elementlar kerak emas, lekin juda foydali
- Non paneli
- Arduino Uno
- Jumper simlari
2 -qadam: nazariya va sxema
Qurilmaning miyasi Arduino pro mini bo'lib, u RC transport vositalaridan (mening holatimda samolyot) Li-Po batareyasi balansi portidan ishlaydi. Menda 2s batareya uchun o'rnatilgan, lekin uni boshqa batareyalar hajmiga mos ravishda o'zgartirish mumkin.
Bu qism to'liq emas, men nazorat yuzasini o'qish tugagach, men bu ko'rsatmalarni yangilayman
Servo1 - bu samolyotlarning elevon dvigateli, servo 2 - mening parvoz boshqaruvchisi servo chiqishi
GPS moduli GPS sun'iy yo'ldoshlaridan NMEA satrlari ko'rinishidagi ma'lumotlarni oladi. Bu satrda joylashuv ma'lumoti mavjud, lekin aniq vaqt, tezlik, sarlavha, balandlik va boshqa ko'plab foydali ma'lumotlar. Bir qator qabul qilingandan so'ng, ushbu loyiha uchun foydali bo'lgan ma'lumotlar TinyGPS kodlar kutubxonasi yordamida chiqariladi.
Bu ma'lumotlar batareya zo'riqishi va ko'tarilish holati bilan birga SD kartaga 1 Gts tezlikda yoziladi. Bu ma'lumotlar CSV (vergul bilan ajratilgan qiymat) formatida yozilgan va parvoz yo'lini tuzish uchun google xaritalari yordamida talqin qilinadi.
3 -qadam: prototip yaratish
QAYD: GPS moduli ulanishlari yuqorida ko'rsatilmagan. GPS quyidagicha ulanadi:
GND Arduino maydonchasiga
Arduino 5V uchun VCC
RX dan Arduino raqamli pin 3
TX dan Arduino raqamli pin 2
Barcha komponentlarning to'g'ri ishlashini tekshirish uchun hamma narsani non taxtasiga joylashtirishdan boshlagan ma'qul, chunki siz hamma narsani yig'ib bo'lgandan keyin sizda nuqsonli qism borligini bilishni xohlamaysiz. Qo'shimcha kodlar kutubxonasi - bu havolani quyida topishingiz mumkin bo'lgan TinyGPS kutubxonasi.
kichik GPS
Quyidagi kuchlanish tekshirgich kodi faqat kuchlanishni o'lchash sxemasini sinovdan o'tkazadi. Arduino to'g'ri kuchlanishni o'qishi uchun sozlash qiymatini o'zgartirish kerak.
Fayllar kodi SD -karta moduli va micro SD -kartani sinab ko'rish uchun ishlatiladi, bu ikkalasi ham to'g'ri o'qish va yozish.
GpsTest kodi gps ma'lumotlarning to'g'ri qabul qilinishiga va to'g'ri sozlanganligiga ishonch hosil qilish uchun ishlatiladi. Bu kod sizning kenglik, uzunlik va boshqa jonli ma'lumotlarni chiqaradi.
Agar bu qismlarning barchasi to'g'ri ishlayotgan bo'lsa, siz keyingi bosqichga o'tishingiz mumkin.
4 -qadam: Lehimlash va simlarni ulash
Lehimlash yoki simlarni ulashdan oldin, barcha komponentlaringizni kartonga joylashtiring va uni tashqi o'lchamlari bo'yicha kesib oling. Bu sizning barcha qismlaringiz uchun o'rnatish plitasi bo'ladi.
Perfor taxtasini eng kichik o'lchamdagi kesish orqali elektron kartani yasang, chunki vazni va o'lchami ustuvor. Sarlavha pimlari kesilgan perfort taxtasi chetiga o'rnatiladi, bu erda batareya balansi porti va kelajakda boshqaruv yuzasi servo va parvoz boshqaruvchisi ulanadi. 2 1k Ohmli rezistorlarni va to'g'rilash diyotini sxemaga muvofiq lehimlang.
Micro SD karta modulini arduino pinlariga elektron sxemaga muvofiq lehimlang, AWG 24 sim yordamida ulanishni amalga oshiring.
Perfboard va arduino o'rtasidagi ulanishni sxemaga muvofiq va yana bir xil turdagi simlardan foydalaning.
ESLATMA: GPS - bu elektrostatik sezgir qurilma, lehimlashda ehtiyot bo'ling va ulanishda hech qachon simlardan hech qanday oqim o'tmaydi
Taxminan 3-4 sm (1-1,5 dyuym) uzunlikdagi simlar yordamida GPS modullarini arduino-dagi mos keladigan pinlarga lehimlang, bu esa GPS-modulni qo'llab-quvvatlash kartasining boshqa tomoniga o'ralishi uchun etarli bo'shliqni beradi.
Hammasi to'g'ri ulanganligiga ishonch hosil qilish uchun barcha ulanishlarning uzluksizligini tekshiring va qayta tekshiring.
Issiq yopishtiruvchi yordamida SD -karta moduli, Arduino Pro Mini va siz kartonning bir tomonida, boshqa tomonida esa GPS -modul va antennani o'rnatasiz.
Agar siz hamma narsani to'g'ri simga ulab, kartonga o'rnatgan bo'lsangiz, kodga o'tish vaqti keldi.
5 -qadam: Kod
Bu oxirgi qurilmada ishlaydigan kod. Bu kod ishlayotganda GPS modulidagi LED yonib -o'chib turadi, gps 3 dan ortiq yo'ldoshli tuzatishga ega bo'lganda. Arduino kartasidagi LED bir zumda yonib -o'chadi, arduino ishga tushishi bilan CSV fayli muvaffaqiyatli yaratilganligini ko'rsatadi, so'ngra u micro SD -kartaga muvaffaqiyatli yozilganda GPS LED bilan yonadi. Agar micro SD -kartaning svetodiodida qolsa, uni ishga tushirish mumkin emas va ehtimol sizning simingizda yoki micro SD -kartangizda muammo bor.
Bu kod har safar dastur ishga tushganda yangi CSV faylini yaratadi va ularga "flightxx" deb yoziladi, bu erda xx 00 dan 99 gacha bo'lgan raqam bo'lib, u har safar ishga tushganda ko'payadi.
Jadvaldagi joriy vaqt maydonini to'g'rilash uchun siz UTC (muvofiqlashtirilgan universal vaqt) vaqtini siz uchun to'g'ri vaqt zonasiga o'zgartirishingiz kerak. Men uchun qiymat UTC +2.0, chunki bu men joylashgan vaqt zonasi, lekin uni "vaqt zonasi" o'zgarishini o'zgartirish orqali kodda o'zgartirish mumkin.
6 -qadam: Sinov, test, sinov
Hozircha sizda ishchi tizim bo'lishi kerak, uni sinab ko'rish vaqti keldi, hamma narsa kutilganidek ishlayotganiga ishonch hosil qiling.
Hamma narsa ishlayotganda va siz elektron jadvalga chiqishni olasiz, bu esa har qanday nozik sozlashlarni amalga oshirish vaqti to'g'ri ko'rinadi. Masalan, dastlab men qurilmani samolyotimning pastki qismiga simi rishtalari bilan o'rnatgan edim, lekin bir muncha tergovdan so'ng shuni aniqladimki, bu GPS yo'ldoshlari bir vaqtning o'zida 40%ga kamayishi mumkin.
Tizimni tekshiring, hamma narsa ishlayotganiga ishonch hosil qiling va kerak bo'lganda uni yaxshilang.
7 -qadam: Ma'lumotlaringizni boyitish
Endi siz ishonchli tizimga ega bo'lsangiz, bu ma'lumotni yanada o'qiydigan tarzda qanday ko'rsatishni aniqlash vaqti keldi. Agar siz bir vaqtning o'zida aniq tezlikni xohlasangiz yoki ma'lum bir harakatni amalga oshirganingizda mashinangiz qanday harakat qilayotganini aniq tekshirmoqchi bo'lsangiz, elektron jadval yaxshi, lekin xaritada butun parvozni rejalashtirmoqchi bo'lsangiz yoki har bir ma'lumot nuqtasini ko'rishni istasangiz nima bo'ladi? ko'proq o'qiladigan tarzda, bu erda ma'lumotlarni boyitish foydali bo'ladi
Google Earth pro -dan foydalanmoqchi bo'lgan ma'lumotlarimizni o'qilishi mumkin bo'lgan tarzda ko'rish uchun siz bu erni bosib, yuklab olishingiz mumkin.
Endi siz CSV faylini GPX faylga aylantirishingiz kerak, uni GPS vizualizator yordamida google Earth osonroq o'qishi mumkin. Chiqish GPX -ni tanlang, CSV faylingizni yuklang va o'zgartirilgan faylni yuklab oling. Keyin Google Earth -da GPX faylini oching va u avtomatik ravishda barcha ma'lumotlarni yaxshi parvoz yo'liga kiritishi va tuzishi kerak. Bu shuningdek, har qanday vaqtda sarlavha kabi qo'shimcha ma'lumotlarni o'z ichiga oladi.
QAYD: Men fotosuratlardan uzoq va uzoq ma'lumotlarni olib tashladim, chunki men o'z joyimni oshkor qilmoqchi emasman
8 -qadam: Xulosa va ijobiy yaxshilanishlar
Umuman olganda, men bu loyihaning qanday amalga oshganidan juda xursandman. Menga barcha parvozlarim haqidagi ma'lumotlar yoqadi. lekin men ishlamoqchi bo'lgan ba'zi narsalar bor.
Shubhasiz, men boshqaruv yuzalarining aniq holatini o'qishni xohlayman. Buning uchun menda qo'shimcha qurilmalar bor, lekin men uni kodda ishlatishni yoqishim kerak. Hali ham ba'zi texnik qiyinchiliklarni engish kerak.
Men aniqroq balandlik ma'lumotlari uchun barometrni qo'shmoqchiman, chunki hozirda GPS balandligi ma'lumotlari ma'lumotli taxminlardan ko'ra ko'proq ko'rinmaydi.
Menimcha, uch o'qli akselerometrni qo'shish juda yaxshi bo'lardi, shunda men samolyot har qanday vaqtda qancha g-kuchga bardosh bera olishini aniq ko'ra olardim.
Ehtimol, har qanday turdagi korpus yarating. Hozirgi vaqtda ochiq komponentlar va simlar bilan u juda oqlangan va mustahkam emas.
Iltimos, agar siz dizaynga biron bir o'zgartirish yoki o'zgartirish kiritgan bo'lsangiz, menga xabar bering, men ularni ko'rishni juda xohlardim.