Mündəricat:
- Addım 1: Parça siyahısı
- Addım 2: Alt Sistem 1: Mövqe İzləmə
- Addım 3: Server Quraşdırması
- Addım 4: Alt Sistem 2: Telemetrik Giriş
- Addım 5: Sistem İnteqrasiyası
- Addım 6: Qapaq
- Addım 7: Nəticə
Video: Roket Telemetri/Mövqe İzləyicisi: 7 addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:46
Bu layihə 9 DOF sensor modulundan SD karta uçuş məlumatlarını daxil etmək və eyni zamanda GPS yerini mobil şəbəkələr vasitəsilə bir serverə ötürmək üçün nəzərdə tutulmuşdur. Bu sistem, sistemin enmə sahəsi LOS -dan kənarda olarsa, raketin tapılmasına imkan verir.
Addım 1: Parça siyahısı
Telemetriya Sistemi:
1x ATmega328 Mikro nəzarətçi (Arduino UNO, Nano)
1x Micro SD Breakout -
1x Micro SD Kart - (ölçüsü FAT 16/32 formatında deyil) - Amazon Link
1x Gy -86 IMU - Amazon Link
Vəzifə İzləmə:
1x ATmega328 Mikrodenetleyici (Arduino UNO, Nano) (hər sistemin öz mikroları lazımdır)
1x Sim800L GSM GPRS Modulu - Amazon Link
1x SİM Kart (məlumat planı olmalıdır) - https://ting.com/ (yalnız istifadə etdiyiniz üçün ödəniş edilir)
1x NEO 6M GPS Modulu - Amazon LInk
Ümumi hissələr:
1x 3.7v lipo batareya
1x 3.7-5v artırıcı çevirici (pcb qurmasanız)
1x Raspberry pi və ya bir php serverinə sahib ola biləcək hər hansı bir kompüter
-3D printerə giriş
PCB üçün BOM elektron tabloda verilmişdir
-Gerbers github repo'dadır -https://github.com/karagenit/maps-gps
Addım 2: Alt Sistem 1: Mövqe İzləmə
Test:
Sistemin hissələri (NEO-6M GPS, Sim800L) əlinizdə olduqda, sistemlərin funksionallığını müstəqil olaraq yoxlamalısınız, belə ki, sistemləri birləşdirərkən nəyin işləmədiyini anlamağa çalışan baş ağrınız olmayacaq.
GPS Testi:
GPS qəbuledicisini sınamaq üçün ya Ublox (U-Center Software) tərəfindən verilən proqramdan istifadə edə bilərsiniz.
və ya github repo ilə əlaqəli test eskizi (GPS Testi)
1. U-mərkəzi proqramı ilə test etmək üçün GPS qəbuledicisini USB vasitəsi ilə bağlayın və U-mərkəzdəki com portunu seçin, bundan sonra sistem avtomatik olaraq yerinizi izləməyə başlamalıdır.
2. Mikro nəzarətçi ilə test etmək üçün GPS test eskizini IDE vasitəsi ilə bir arduinoya yükləyin. Sonra 5V və GND -ni alıcıdakı etiketli sancaqlara arduino və GPS RX pinini rəqəmsal 3 -ə və TX pinini arduino üzərindəki rəqəmsal 4 -ə bağlayın. Nəhayət, arduino IDE -də seriyalı monitoru açın və baud sürətini 9600 olaraq təyin edin və alınan koordinatların düzgün olduğunu yoxlayın.
Qeyd: NEO-6M modulundakı peyk kilidinin vizual identifikatoru, qırmızı led göstəricinin bir neçə saniyədə bir yanıb-sönməsini göstərərək əlaqəni göstərir.
SIM800L Testi:
Hüceyrə modulunu sınamaq üçün aktiv bir məlumat planında qeydiyyatdan keçmiş bir sim kartınız olmalıdır, Ting -i tövsiyə edirəm, çünki onlar yalnız aylıq məlumat planı əvəzinə istifadə etdiyiniz pulu alırlar.
Sim modulunun məqsədi, serverə GPS qəbuledicisinin qəbul etdiyi yerlə birlikdə HTTP GET sorğusu göndərməkdir.
1. Hüceyrə modulunu sınamaq üçün simkartı yivli ucu kənara baxaraq modula daxil edin
2. Sim modulunu GND və 3.7-4.2v mənbəyinə qoşun, 5v istifadə etməyin !!!! modul 5v -də işləyə bilməz. Sim modulu RX -ni Arduino -da Analog 2 -yə və TX -ı Analog 3 -ə qoşun
3. Hüceyrə moduluna əmr göndərə bilmək üçün github-dan serial keçmə eskizini yükləyin.
4. bu təlimatı izləyin və ya HTTP GET funksionallığını sınamaq üçün AT Command Tester sınaqını yükləyin
İcra:
Hər iki sistemin müstəqil işlədiyini təsdiqlədikdən sonra tam eskizi mikro nəzarətçi github -a yükləməyə davam edə bilərsiniz. Sistemin veb serverə məlumat göndərdiyini yoxlamaq üçün serial monitoru 9600 baudda aça bilərsiniz.
*serverin ip və portunu özünüzə dəyişdirməyi və istifadə etdiyiniz hüceyrə təminatçısı üçün APN tapdığınızdan əmin olun.
Serveri qurduğumuz növbəti addıma keçin
Addım 3: Server Quraşdırması
Raketin yerini göstərmək üçün bir server qurmaq üçün ev sahibi olaraq bir moruq pi istifadə etdim, ancaq hər hansı bir kompüterdən istifadə edə bilərsiniz.
Bir RPI -də lightphp qurmaq üçün bu təlimatı izləyin və sonra php fayllarını github -dan RPI -nin/var/www/html qovluğuna kopyalayın. Yalnız əmrdən istifadə edin
sudo xidməti lighttpd yenidən yükləyin
serveri yenidən yükləmək üçün.
Məlumatlara uzaqdan daxil olmaq üçün marşrutlaşdırıcınızdakı serverlə əlaqəli portları yönləndirdiyinizə əmin olun. Rpi -də 80 portu olmalıdır və xarici port ixtiyari bir rəqəm ola bilər.
RPI üçün statik bir ip təyin etmək yaxşı bir fikirdir, buna görə irəli sürdüyünüz portlar həmişə RPI ünvanına işarə edir.
Addım 4: Alt Sistem 2: Telemetrik Giriş
Telemetriya proqramı, mövqe izləmə sistemindən ayrı bir mikrokontrolör üzərində işləyir. Bu qərar, hər iki proqramın bir sistemdə işləməsinə mane olan ATmega328 yaddaş məhdudiyyətləri səbəbindən verildi. Təkmilləşdirilmiş spesifikasiyalara malik başqa bir mikro nəzarətçi seçimi bu problemi həll edə bilər və bir mərkəzi prosessorun istifadəsinə icazə verə bilər, amma istifadə rahatlığı üçün əlimdə olan hissələrdən istifadə etmək istəyirdim.
Xüsusiyyətlər: Bu proqram burada tapdığım başqa bir nümunəyə əsaslanır.
- Proqram yerli nisbi hündürlüyü (başlanğıcda sıfıra endirilən hündürlük), temperaturu, təzyiqi, X istiqamətindəki sürətlənməni (sensorun fiziki oriyentasiyasına əsaslanaraq oxunma sürətinin istiqamətini dəyişməli olacaqsınız) və vaxt damğasını (milisaniyədə) oxuyur.).
- Başlatma səthində oturarkən və saxlama yerini israf edərkən məlumatların qeyd edilməsinin qarşısını almaq üçün, sistem yalnız yüksəklik dəyişikliyini (proqramda konfiqurasiya oluna bilər) algıladıqdan sonra məlumat yazmağa başlayacaq və raketin orijinal vəziyyətinə qayıtdığını aldıqdan sonra məlumat yazmağı dayandıracaq. yüksəklikdə və ya uçuşdan sonra 5 dəqiqəlik vaxt keçdi.
- Sistem, tək bir göstərici LED vasitəsilə işlədiyini və məlumat yazdığını göstərəcək.
Test:
Sistemi sınamaq üçün əvvəlcə SD kartın qırılmasını bağlayın
Arduino SD kartı
Pin 4 ---------------- CS
Pin 11 -------------- DI
Pin 13 -------------- SCK
Pin 12 -------------- DO
İndi GY-86 sisteminə I^2C vasitəsilə qoşun
Arduino GY-86
Pin A4 -------------- SDA
Pin A5 -------------- SCL
Pin 2 ---------------- INTA
SD kartda datalog.txt adlı əsas qovluqda bir fayl yaradın, bura sistem məlumat yazacaq.
Data_Logger.ino eskizini mikro nəzarətçiyə yükləməzdən əvvəl ALT_THRESHOLD dəyərini 0 olaraq dəyişdirin, beləliklə sistem test üçün yüksəkliyi görməyəcək. Yüklədikdən sonra, sistemin çıxışını görmək üçün 9600 baudda serial monitoru açın. Sistemin sensora qoşulduğundan və məlumatların SD karta yazıldığından əmin olun. Məlumatların kartda yazıldığını yoxlamaq üçün sistemi ayırın və SD kartı kompüterinizə daxil edin.
Addım 5: Sistem İnteqrasiyası
Sistemin hər bir hissəsinin əsas PCB -də istifadə olunan eyni konfiqurasiyada işlədiyini yoxladıqdan sonra hamısını bir araya gətirmək və işə salmaq üçün hazır olmaq vaxtıdır! PCB üçün Gerbers və EAGLE fayllarını github -a daxil etdim. Gerberləri istehsal etmək üçün OSH parkı və ya JLC kimi bir istehsalçıya yükləməlisiniz. Bu lövhələr iki təbəqədən ibarətdir və ucuz lövhələr üçün əksər istehsalçılar 10cmx10cm kateqoriyasına sığacaq qədər kiçikdir.
Lövhələri istehsaldan geri qaytardıqdan sonra, elektron tabloda olan bütün komponentləri və hissələr siyahısını lehimləmə vaxtı gəldi.
Proqramlaşdırma:
Hər şey lehimləndikdən sonra proqramları iki mikro nəzarətçiyə yükləməlisiniz. Lövhə boşluğuna qənaət etmək üçün heç bir USB funksiyası daxil etmədim, ancaq proqramı yükləyə və izləyə biləcəyiniz üçün ICSP -ni və serial portlarını sındırdım.
- Proqramı yükləmək üçün Arduino lövhəsini proqramçı kimi istifadə etmək üçün bu təlimatı izləyin. SimGpsTransmitter.ino'yu ICSP_GPS portuna və Data_Logger.ino'yu ICSP_DL limanına yükləyin (PCB üzərindəki ICSP portu, standart Arduino UNO lövhələrində olduğu kimi düzülür).
-
Bütün proqramlar yükləndikdən sonra cihazı batareyanın girişindən 3.7-4.2V ilə təchiz edə və sistemin işlədiyini yoxlamaq üçün 4 göstərici işıqdan istifadə edə bilərsiniz.
- İlk iki işıq 5V_Ok və VBATT_OK, batareyanın və 5v raylarının işlədiyini göstərir.
- Üçüncü işıq DL_OK, hər 1 saniyədə bir yanıb -sönərək telemetrik qeydlərin aktiv olduğunu göstərir.
- SIM_Transmit son işığı mobil və GPS modulları qoşulduqda və məlumatlar serverə göndərildikdə açılacaq.
Addım 6: Qapaq
Bu layihəni hazırladığım raket, elektronikanı qorumaq və qurğunun raketin silindrik gövdəsinə daxil olmasını təmin etmək üçün daxili diametri 29 mm -dir, bir -birinə bərkidilmiş və iki hissədən ibarət olan 3D çaplı korpus düzəltdim. göstərici işıqlar üçün portlara baxmaq. Çap üçün STL sənədləri və orijinal.ipt faylları github repo -dadır. O zaman istifadə edəcəyim batareyadan əmin olmadığım üçün bunu model etmədim, amma 120 mAh batareya üçün korpusun dibinə uyğun oturmaq üçün əl ilə bir girinti yaratdım. Bu batareyanın ~ 200mA enerji istehlakı ilə sistem üçün ~ 45 dəqiqəlik maksimum işləmə müddəti verəcəyi təxmin edilir (Bu, məlumat ötürülməsi üçün prosessorun istifadəsindən və gücün çəkilməsindən asılıdır, ünsiyyət zamanı partlayışlarda SIM800L 2A -dan yuxarı çəkilir).
Addım 7: Nəticə
Bu layihə, Amazon -da olan ayrı -ayrı modullardan istifadə etdiyimi nəzərə alaraq, iki ayrı sistemin olduqca sadə bir şəkildə həyata keçirilməsidir, çünki layihənin ümumi ölçüsü gördüyü işlərə görə olduqca böyükdür. Bəzi istehsalçıların təkliflərinə baxaraq həm mobil, həm də GPS daxil olan bir SIP -dən istifadə etmək ümumi paketin ölçüsünü xeyli azaldar.
Əminəm ki, uçuş testlərindən sonra proqramda bəzi dəyişikliklər etməli olacağam və hər hansı bir dəyişikliklə Github repo -nu yeniləyəcəyimə əminəm.
Ümid edirəm bu layihədən zövq aldınız, suallarınız olarsa mənimlə əlaqə saxlaya bilərsiniz.
Tövsiyə:
Xüsusi Sterling Təkər (Mövqe Sensoru Olaraq Qazan): 10 Addım
Xüsusi Sterling Təkər (mövqe sensoru olaraq qazan): imtina: bu addımın göstərilməməsi üçün məni addım -addım göstərməməkdə günahlandırmayın və mən nə etdiyimi və nəticəni deyirəm, bunun kimi bəzi əsas qüsurları var. səs -küy, etdiyim kimi etmə və üstün bir nəticə gözləməyin və f
Mövqe əsaslı çoxfunksiyalı kub saatı: 5 addım (şəkillərlə)
Vəzifəyə əsaslanan çoxfunksiyalı kub saatı: Bu tarixlə saat, yuxu taymeri və gecə işığı kimi işləyən OLED ekranı olan Arduino əsaslı bir saatdır. Fərqli " funksiyalar " bir akselerometr tərəfindən idarə olunur və kub saatını fırladaraq seçilir
Arduino ilə Servo Mövqe Əlaqə Sistemi: 4 addım
Arduino ilə Servo Vəzifə Əlaqə Sistemi: Hey, bu mənim ilk təlimatımdır. MY layihəm, Arduino IDE -nin seriyalı monitorunuzda və ya serial qurucunuzda servo mövqeyini almağa imkan verir. Bu, humanoid robotlar kimi servo mühərriklərdən istifadə edən arduino robotlarını proqramlaşdırmağı asanlaşdırır
8Ch PWM -ni Pulse Mövqe Modulyasiyasına necə çevirmək olar: 4 addım
8Ch PWM-ni Pulse Mövqe Modulyasiyasına necə çevirmək olar: Radio nəzarətli modellər (və ya RC modelləri) üçün radio qəbuledicilərinin 2 çıxış siqnal formatını nəzərdən keçirəcəyik. Ənənəvi və ən çox yayılmış qəbuledici siqnal növü PWM -dir və ümumiyyətlə PWM hər kanal üçün yalnız bir tel tələb edir. PPM siqnalizasiyası artıq sürətlə gedir
Mövqe və Sürət Nəzarəti üçün DC Motor və Enkoder: 6 Addım
Vəzifə və Sürət Nəzarəti üçün DC Motor və Enkoder: Giriş Biz Universiti Tun Hussei Onn Malaysia (UTHM) UQD10801 (Robocon I) tələbəsindən ibarət bir qrupuq. Bu kursda 9 qrupumuz var. Qrupumuz 2. qrupdur. Qrupumuzun fəaliyyəti DC -dir. mövqe və sürət nəzarəti üçün motor və kodlayıcı. Qrupumuzun obyekti