Mündəricat:
- Addım 1: Parçalar, Alətlər, Təchizatlar
- Addım 2: Dövrə Şeması və Kodu
- Addım 3: Prototipdən Lehimlənmiş Dövrə Tikintisi
- Addım 4: Forma və Material
- Addım 5: İndi Kristal Evlərdən istifadə edək
Video: Kristal Ev: 5 addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:44
Uzun məsafələrə görə ayrılan cütlüklər və ailələr tez -tez əlaqə həsrətini hiss edirlər. Crystal House, cütlər və ailələr üçün işıqlar vasitəsilə bir -biri ilə əlaqə qurmaq üçün inşa edilmişdir. Kristal Evlər wifi siqnalları ilə bağlıdır. Bir Crystal House -un düyməsini basdığınız zaman, digər Crystal House -un işıqları siqnalı alır və yandırılır. Hazırlanması asan və əyləncəlidir! İstifadə olunan materiallardan/alətlərdən, Arduino istifadə edərək dövrə qurma/sınaqdan keçirmə və Kristal Evin quruluşunu qurma mərhələlərini keçəcəyəm.
Addım 1: Parçalar, Alətlər, Təchizatlar
- Quraşdırılmış Tüy Huzzah ESP8266 (iki)
- Perma-Proto Yarım ölçülü çörək taxtası (iki)
- Lityum Batareya -3.7 1200 mAh (iki)
- Mini açma/söndürmə düyməli keçid (dörd)
- NeoPixel Mini Düymə (dörd)
- Çörək taxtası teli
- Lehimləmə Dəmiri və Lehim
- Tel çıxarıcı
- Üçüncü Əl Aləti
- Kvadrat taxta çubuq
- Akril təbəqə
- Şəffaf kristal daş
- Şəffaf kağız
- Super yapışqan
Addım 2: Dövrə Şeması və Kodu
// Təlim edilə bilən Şeylər İnterneti sinif nümunə kodu // Giriş və Çıxışları birləşdirmək // İki düymə AIO yeminə əmr göndərir // LED və titrəmə motoru (və ya hər hansı bir rəqəmsal çıxış) flah/buzz yem məlumatlarına görə // // Becky tərəfindən dəyişdirilmişdir Stern 2017 // Adafruit IO Arduino Kitabxanasının nümunələrinə əsaslanaraq: // https://github.com/adafruit/Adafruit_IO_Arduino // // Adafruit bu açıq mənbə kodunu təmin etmək üçün vaxt və qaynaqlar yatırır. // Zəhmət olmasa Adafruit -dən // məhsulları alaraq Adafruit və açıq mənbə aparatlarına dəstək olun! // // Adafruit Industries üçün Todd Treece tərəfindən yazılmışdır // Müəlliflik hüququ (c) 2016 Adafruit Industries // MIT lisenziyası altında lisenziyalıdır. // // Yuxarıdakı bütün mətnlər hər hansı bir yenidən paylamaya daxil edilməlidir. #daxil edin
-
#define NeoPIN1 15
// Parametr 1 = zolaqdakı piksellərin sayı // Parametr 2 = Arduino pin nömrəsi (əksəriyyəti etibarlıdır) // Parametr 3 = piksel tipli bayraqlar, lazım olduqda əlavə edin: // NEO_KHZ800 800 KHz bit axını (ən NeoPixel məhsulları w/WS2812 ilə) LEDlər) // NEO_KHZ400 400 KHz (klassik 'v1' (v2 deyil) FLORA pikselləri, WS2811 sürücüləri) // NEO_GRB Piksellər GRB bit axını üçün bağlanmışdır (əksər NeoPixel məhsulları) // NEO_RGB Piksellər RGB bit axını üçün bağlanmışdır (v1 FLORA pikselləri, v2 deyil) // NEO_RGBW Pikselləri RGBW bit axını üçün bağlanır (NeoPixel RGBW məhsulları) Adafruit_NeoPixel şeridi = Adafruit_NeoPixel (2, NeoPIN1, NEO_GRB + NEO_KHZ800);
/************************ Adafruit IO Konfiqurasiyası ********************** *********
/ Bir hesab yaratmalısınızsa və ya Adafruit IO açarınız lazımdırsa io.adafruit.com saytına daxil olun. #IO_USERNAME "istifadəçi adınızı" təyin edin #IO_KEY "Sizin IO_KEY" ni təyin edin
/******************************* WIFI Konfiqurasiyası **************** **********************/
#WIFI_SSID "Wi -Fi" nı təyin et #WIFI_PASS "Şifrəni" təyin et
#"AdafruitIO_WiFi.h" daxil edin AdafruitIO_WiFi io (IO_USERNAME, IO_KEY, WIFI_SSID, WIFI_PASS);
/************************ Əsas Kod Buradan Başlayır ********************* **********/
#daxil edin #əlavə edin #daxil edin
// #LED_PIN 15 təyin edin #BUTTON1_PIN 4 təyin edin #BUTTON2_PIN 14 təyin edin // #MOTOR_PIN 5 təyin edin // bu pin PWM qabiliyyətinə ehtiyac duyur
// düymə vəziyyəti int button1current = 0; int button1last = 0; int button2current = 0; int button2last = 0;
// 'rəqəmsal' yem qurun AdafruitIO_Feed *əmri = io.feed ("əmr"); AdafruitIO_Feed *command2 = io.feed ("command2");
boş quraşdırma () {strip.setBrightness (60); strip.begin (); strip.show (); // Bütün pikselləri "söndürmək" üçün başladın // düymə pinlərini daxili açılan müqavimət pinMode (BUTTON1_PIN, INPUT_PULLUP) ilə giriş olaraq təyin edin; pinMode (BUTTON2_PIN, INPUT_PULLUP); // led pin və motor pinini rəqəmsal çıxış kimi təyin edin // pinMode (MOTOR_PIN, ÇIXIŞ); // pinMode (LED_PIN, ÇIXIŞ);
// Serial.begin (115200) serial bağlantısına başlayın;
// io.adafruit.com saytına qoşul Serial.print ("Adafruit IO -ya qoşulma"); io.connect (); // 'əmr' lenti üçün bir mesaj işləyicisi qurun. // handleMessage funksiyası (aşağıda müəyyən edilmişdir) // adafruit io -dan bir mesaj alındıqda // çağırılacaq. command-> onMessage (handleButton1); command2-> onMessage (handleButton2);
// əlaqəni gözləyin (io.status () <AIO_CONNECTED) {Serial.print ("."); gecikmə (500); }
// bağlıyıq Serial.println (); Serial.println (io.statusText ());
// bütün feed-lərin cari dəyərlərini dərhal əldə etməsinə əmin olun-> get (); command2-> get (); }
boşluq döngəsi () {
// io.run (); bütün eskizlər üçün tələb olunur. // həmişə loop // funksiyanızın üstündə olmalıdır. müştərini // io.adafruit.com ilə əlaqəli saxlayır və gələn məlumatları emal edir. io.run ();
// düymənin cari vəziyyətini tutun. // məntiqi çevirmək məcburiyyətindəyik, çünki INPUT_PULLUP istifadə edirik. əgər (digitalRead (BUTTON1_PIN) == LOW) {button1current = 1; } if (digitalRead (BUTTON2_PIN) == LOW) {button2current = 1; } if (digitalRead (BUTTON2_PIN) == YÜKSEK && digitalRead (BUTTON1_PIN) == YÜKSEK) {button1current = 0; button2current = 0; }
// əgər dəyər dəyişməyibsə, qayıt (button1current == button1last && button2current == button2last) return;
// indiki vəziyyəti adafruit io Serial.print üzərindəki 'rəqəmsal' yemdə qeyd edin ("göndərmə düyməsi 1 status ->"); Serial.println (button1cari); əmr-> saxla (düymə1 cari);
// indiki vəziyyəti adafruit io Serial.print üzərindəki 'rəqəmsal' yemdə qeyd edin ("göndərmə düyməsi 2 statusu ->"); Serial.println (button2current); command2-> saxlamaq (button2current);
// son düyməni saxla düymə vəziyyəti1 düyməsi = düymə1 cari; button2last = button2current; }
// bu funksiya Adafruit IO -dan 'əmr' mesajı // alındıqda çağırılır. yuxarıdakı setup () funksiyasındakı // əmr yeminə əlavə edilmişdir. void handleButton1 (AdafruitIO_Data *data) {
int command = data-> toInt ();
if (command == 1) {// ilk piksel Serial.print ("əmrdən alındı (düymə 1) <-"); Serial.println (əmr); // analogWrite (MOTOR_PIN, 200); // gecikmə (500); // analogWrite (MOTOR_PIN, 0); strip.setPixelColor (0, strip. Color (200, 100, 0)); // Sarı zolaq.show (); } başqa {Serial.print ("əmrdən alındı (düymə 1) <-"); Serial.println (əmr); strip.setPixelColor (0, strip. Color (0, 0, 0)); // off strip.show (); }} // bu funksiya Adafruit IO -dan 'əmr' mesajı // alındıqda çağırılır. yuxarıdakı setup () funksiyasındakı // əmr yeminə əlavə edilmişdir. void handleButton2 (AdafruitIO_Data *data) {
int command2 = data-> toInt ();
if (command2 == 1) {// ilk pikselini yandır Serial.print ("command2-dən alındı (düymə 2) <-"); Serial.println (command2); // analogWrite (MOTOR_PIN, 200); // gecikmə (500); // analogWrite (MOTOR_PIN, 0); strip.setPixelColor (1, strip. Color (255, 128, 128)); // Sarı zolaq.show (); } başqa {Serial.print ("command2-dən alındı (düymə 2) <-"); Serial.println (command2); strip.setPixelColor (1, strip. Color (0, 0, 0)); // off strip.show (); }}
Addım 3: Prototipdən Lehimlənmiş Dövrə Tikintisi
Dövrəni sınamaq üçün bir çörək taxtası sınamağı təşviq edərdim. İki cihaz qurduğumuz üçün iki çörək taxtasında test edə bilərik. İstifadəsi daha asan olduğu üçün Neopixel və on.off düyməsini prototipləşdirmə telinə lehimlədim. Daha sonra, prototipləşdirmə tellərini asanlıqla lehimləyə bilərsiniz.
Prototipləşdirmə dövrəsi ilə uğur qazandıqdan sonra əsl dövrəmizi qurmağın vaxtı gəldi. Perma-proto çörək taxtasından istifadə edirəm, çünki daha kiçikdir və dövrə bağlantısı prototipləşdirmə sxemindən daha yaxşı olacaq. Lehimə gəldikdə, çox səbr tələb olunur. Hələ təslim olmayın! Sən ora çatırsan!
Dövrünüzü bitirdikdən və kodu ESP8266 -ya yüklədikdən sonra iki cihaz əvvəldə qeyd etdiyimiz kimi işləməlidir.
Addım 4: Forma və Material
İndi Kristal Evimizi düzəldək!
Taxta çubuğu 6 düym kəsin. Ümumilikdə 18 ədəd lazımdır. Bu iki büllur evdən bir az dəyişiklik istədiyim üçün birində 7 ədəd, digərində 9 ədəd istifadə etdim. Parçaları bir qutu quruluşuna yapışdırın. İki akril təbəqəni 6 ilə 6 düym arasında kəsdim və Kristal Evlərin altına yapışdırdım.
Evlərin quruluşunu bitirdikdən sonra. Evləri bəzəyək! Şəffaf rəngli bir kağız parçasını kəsib akril lövhəyə yapışdırdım. Bundan sonra bir neçə şəffaf plastik kristal istifadə etdim və bazaya yapışdırdım. Kristalların altındakı şəffaf rəngli kağızım olduğundan, kristallar fərqli rənglərə əks olunur.
Addım 5: İndi Kristal Evlərdən istifadə edək
Sevdiyiniz insana büllur evi bəxş edin. Onlara vacib olduqlarını söyləyin! Həmişə fərqli material və rənglərdən istifadə edərək xarici quruluşu dəyişdirə bilərsiniz. Necə getdiyini mənə bildir!
Tövsiyə:
Səs və Musiqi Algılayan Kvars Kristal Broş Oyun Parkı Dövrə Ekspres: 8 addım (şəkillərlə)
Oyun Sahəsi Circuit Express ilə Səs və Musiqi Algılayan Kvars Kristal Broş: Bu səs-reaktiv broş, oyun meydançası ekspresindən, ucuz toplu kvars kristallarından, teldən, kartondan, tapılan plastikdən, təhlükəsizlik pinindən, iynədən və ipdən, isti yapışqan, parça, və müxtəlif alətlər. Bu, bir prototip və ya ilk layihədir
Arduno istifadə edərək maye kristal ekran: 4 addım
Liquid Cristal Display Arduno istifadə edərək: LCD (Liquid Crystal Display) əsas görüntüləyici olaraq maye kristal istifadə edən bir ekran mediasıdır. Bu yazıda 2x16 LCD istifadə edəcəyəm. Bu tip LCD -lər əsasən bazarda tapıldığından Xüsusiyyət: Fiziki forma, şəkilə baxın Sütun sayı
Kristal Osilatör və Flip Floplardan istifadə edərək rəqəmsal saat: 3 addım
Kristal Osilatör və Flip Floplardan istifadə edən Rəqəmsal Saat: Saatlar demək olar ki, hər növ elektronikada olur, hər hansı bir kompüterin ürək döyüntüsüdür. Bütün ardıcıl dövrələri sinxronizasiya etmək üçün istifadə olunur. vaxt və tarixi izləmək üçün sayğac kimi də istifadə olunur. Bu təlimatda siz öyrənəcəksiniz
Kristal Radio Bobini Forması hazırlayın: 7 addım
Bir Kristal Radio Bobini Formu hazırlayın: Bu Təlimat, tel bobini saracaq güclü və möhkəm bir boru düzəltməyə kömək edəcək. Kristal radiolar və ya "tülkü" radioları, oğlan və qızların radionun ilk illərində düzəltməyə başlamasından yüz il sonra hələ də əyləncəlidir. Çox şey olsa da
Kristal Top: Gələcəyinizə Baxın !: 7 addım
Kristal Top: Gələcəyinizə Baxın !: Kainatın sirlərini bilmək istəyirsinizmi? Yaxşı, edə bilməzsən! Bununla birlikdə, öz kristal topunuzu hazırlayaraq gələcəyinizin nə olacağını öyrənə bilərsiniz. Yəni itirəcək nə var ki? Birini düzəldə bilərəmsə, siz də LCD monitordan istifadə edə bilərsiniz