Mündəricat:

Voyager 1: 5 addım (şəkillərlə birlikdə)
Voyager 1: 5 addım (şəkillərlə birlikdə)

Video: Voyager 1: 5 addım (şəkillərlə birlikdə)

Video: Voyager 1: 5 addım (şəkillərlə birlikdə)
Video: Ən çətin məntiq testi.😉 Kim tapsa 1-ci yer. Yalnız 1 nəfər.❗❗ 2024, Noyabr
Anonim
Voyager 1
Voyager 1

1977 -ci ildə NASA Voyager 1 kosmik gəmisini boşluğa buraxdı. Bəzi təsadüfi planetlərin uyğunlaşması, zondun ulduzlararası kəşfiyyat kursuna qurulmuş Günəş sistemimizin yanından azmış kimi keçməsi demək idi. Qırx il sonra, Voyager 1 missiyası indi insanlığın kainatımıza çatmasının ən uzaq nöqtəsini qeyd edir. Hələ də məlumatları dünyaya ötürən Voyager 1, hər saniyə insan araşdırmalarının sərhədlərini itələyir.

Voyager missiyalarına şəxsi marağım var və onların ruhunu ələ alan bir nümayiş etmək istədim.

Ekranda bir rəqəm yanıb -sönəndə Voyager 1 ilə dünya arasındakı məsafəni insan təxəyyül imkanları üçün obyektiv bir ölçü kimi göstərir.

Ekran qısa bir müddət dayanır və sonra yenilənir.

Addım 1: Materiallar

Materiallar
Materiallar

Bədən:

(3) x 4 Rəqəmli 7 Segment Ekranı (30 dollar)

Voyager hazırda 13 milyard milin üzərində uçduğundan, bu rəqəmi ondalık / kilometr şəklində göstərmək üçün 11 rəqəmə ehtiyac var. Məsafəni necə təmsil etmək istədiyinizə görə, lazım olan rəqəmlərin sayı dəyişə bilər. Voyager hələ də səyahət etdiyindən və bu Adafruit displeyləri 4 rəqəmdən ibarət olduğundan, 12 rəqəmli ekran ən mənalı idi. Əlaqədar ekranların əlavə bir faydası, heç bir halda təmiz 7 seqment olmaması və I2C protokolu ilə məlumatların ötürülməsinə imkan yaratmaq üçün çoxlu modulun içərisində olmasıdır. Bu o deməkdir ki, əslində ekranı idarə etmək üçün mikrokontrollerinizdə yalnız iki sancaq var - SDA və SCL. Daha az mürəkkəb bir modul ilə ehtiyac duyulan pinlər sürətlə arta bilər.

(1) Çörək lövhəsi

Çörək taxtanızın və ya telləri gözəl bir şəkildə bağladığınızdan əmin olun. Mən ancaq eyni çörək taxtasındakı həm beyinləri, həm də lövhəni mənimki qədər böyük hesab edirdim.

(Bəzi) Tel

Lazımi əlaqələri qurmaq üçün əlinizdə bir az tel olduğundan əmin olun! Bir çox tel əlaqəsi yoxdur, ancaq rəng kodlaşdırması mütləq faydalı ola bilər.

Beyinlər: ($ 9.00)

Ətrafımda asan wifi bağlantısına imkan verən espressif esp8266 çipindən istifadə edən bir NodeMcu V 1.0 var idi. Kiçik və ucuz olduğu üçün bu çiplər əladır!

Müxtəlif Arduino lövhələri və ya moruq pi də yaxşı işləyəcək. Unutmayın ki, bu layihə üçün hansı lövhə seçsəniz də, I2C protokolunu bilməli və SDA (serial məlumatları) və SCL (serial saatı) üçün sancaqlar olmalıdır.

Yazdığım mənbə kodu Arduino IDE -dən istifadə edirdi, amma bu kodu fərqli cihazlara daşımaq çox çətin olmamalıdır. Arduino IDE ilə yazmağımın səbəbi, 7 seqment modulları üçün Adafruit -in rahat kitabxanasından istifadə etməyim idi.

Addım 2: NodeMcu -nun Kompüterlə Danışmasını Alın

NodeMcu -nu Kompüterlə Danışmağa Alınması
NodeMcu -nu Kompüterlə Danışmağa Alınması

Başladığınız hər hansı bir mikrokontrolörün fərqli bir kompüterə qoşulma üsulu fərqli olacaq, ancaq istifadə etdiyim NodeMcu üçün Arduinoda proqramlaşdırma ilə qurmaq üçün onu necə bağladığınız budur.

Əvvəlcə müvafiq sürücünü kompüterinizə yükləməlisiniz …

İşdə bir link:

Sürücü quraşdırıldıqdan sonra kompüteriniz inkişaf lövhəsini tanıya bilməlidir.

İndi lövhə bağlandıqdan sonra lövhəni proqramlaşdırmağa və ekranları bağlamağa hazırsınız!

Arduino IDE -nin esp8266 çipini proqramlaşdırması üçün lazım olan libariləri yükləmək üçün həqiqətən yaxşı bir təlimat var! Bu təlimatları izlədikdən sonra, kitabxana ilə birlikdə gələn yanıb -sönən işıq nümunəsini işə salmağa çalışın!

Addım 3: Hər şeyi bağlayın

Hər şeyi tel edin!
Hər şeyi tel edin!

Lövhə ilə uğurla danışa bildikdən sonra, ekran komponentlərini seçdiyiniz şəkildə bağlamağa hazırsınız (bir çörək taxtası istifadə etdim).

Adafruit yığımları ağır yükləri qaldırdığından, şükürlər olsun ki, naqillər heç də pis deyil!

Sahib olduğunuz hər şey, hər bir ekran üçün sırasıyla yerə və lövhədə 3.3V -ə bağlanmalı olan müsbət və mənfi teldir.

Hər bir ekran üçün bir SCL və SDATA teli də olacaq və hamısının lövhədəki SCL və SDATA telinə qoşulması lazımdır. Ekranlar həqiqətən I2C mesaj protokolu ilə ünsiyyət qurduğundan, lövhə tellərə qənaət edə və əvəzinə ünvanlar vasitəsi ilə ünsiyyət qura bilir. Mənim etdiyim eyni quruluş paketlərindən istifadə edirsinizsə, ekranda fərqli ünvanların təyin edilməsi ekranın arxasındakı bir lehim tullanan vasitəsi ilə edilir və burada gözəl şəkildə sənədləşdirilir.

Bu belədir! İndi proqramı lövhəyə yükləməyə hazırsınız!

Addım 4: Proqramı işə salın

Ekranı doldurmaq üçün istifadə olunan Arduino Sketch əlavə olunur!

Dəyişdiriləcək şeylər:

- Müvafiq hissəyə uyğun wifi ssid və parol daxil edin. Düzünü desəm, bunun təhlükəsizlik təsirlərindən əmin deyiləm, ancaq wifi etimadnaməsinin açıq mətndə olduğu fərziyyəsi ilə işləyirəm.

- Ekran modulu ünvanlarınızı necə seçdiyinizdən asılı olaraq, kodlaşdırılmış cari dəyərlər dəyişə bilər. Xüsusi bir ekrandan bir şey almırsınızsa və ya nömrələriniz sıradan çıxırsa, hər bir ünvanın atlayıcılarla sərt kodlaşdırıldığını və kodda düzgün istinad edildiyini iki dəfə yoxlayın.

Digər nöqtələr:

- Ekranın əsas kodu 0s ilə manipulyasiya və uyğun təbliğatdır. Bütün bunlar, adafruitin nümayişləri üçün yazdığı Arduino kitabxanası ilə edilir! Müvafiq kitabxananı https://github.com/adafruit/Adafruit_LED_Backpack və Adafruit -in böyük GFX kitabxanasında quraşdırdığınızdan əmin olun.

- Digər kod parçası, Heroku veb serverinə HTTP GET sorğusudur. Bu veb server, NASA -nın JPL veb saytından müvafiq məlumatları aldığım bir veb kazıyıcıdır. Kazıyıcının bir az yavaş olması və JPL -in ucunda kiçik bir dəyişiklik olması ilə problem yaratma potensialına sahib olduğu barədə ədalətli bir xəbərdarlıq. Burada mənbəyə bir keçid var.

Addım 5: Bitdi

Müvafiq kodu dəyişdirdikdən və naqillərin düzgün olduğunu iki dəfə yoxladıqdan sonra proqramı lövhəyə yükləyin. Hər hansı bir şans olsa, ekranda Voyagerin məsafəsinin yanıb -sönməsini/yenilənməsini görməlisiniz! Bəzən lövhənin wifi -yə qoşulmaqda çətinlik çəkdiyini gördüm, əgər ekranda ləkələnirsinizsə, serial monitoru açmaq və wifi -nin düzgün bağlandığından əmin olmaq faydalı ola bilər. Serverə göndərilən istəklər də gecikdirilə bilər. Əgər işlər həqiqətən çətinləşirsə, lövhədəki ilk düyməni basmaq bəzən problemi həll edə bilər.

Hazır məhsulun videosu əlavə olunur !!

Tövsiyə: