Talaan ng mga Nilalaman:
- Hakbang 1: Mga Bahagi, Kagamitan, Suplay
- Hakbang 2: Circuit Diagram at Code
- Hakbang 3: Konstruksiyon ng Circuit Mula sa Prototype hanggang sa Soldered
- Hakbang 4: Form at Materyal
- Hakbang 5: Ngayon Gawin Natin ang Mga Bahay na Crystal
Video: Crystal House: 5 Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:11
Ang mga mag-asawa at pamilya na pinaghiwalay dahil sa mahabang distansya ay madalas makaramdam ng pananabik sa koneksyon. Ang Crystal House ay binuo para sa mga mag-asawa at pamilya na makakonekta sa bawat isa sa pamamagitan ng mga ilaw. Ang mga Crystal House ay konektado sa mga signal ng wifi. Kapag pinindot mo ang pindutan sa isang Crystal House, ang iba pang mga ilaw ng Crystal House ay tumatanggap ng signal at bubukas. Ito ay madali at masaya upang gawin! Dadaan ako sa bawat hakbang mula sa mga ginamit na materyales / tool, gusali / pagsubok sa circuit gamit ang Arduino at pagbuo ng istraktura ng Crystal House
Hakbang 1: Mga Bahagi, Kagamitan, Suplay
- Pinagsama ang Feather Huzzah ESP8266 (dalawa)
- Perma-Proto Half-size na breadboard (dalawa)
- Baterya ng Lithium -3.7 1200mAh (dalawa)
- Mini On / Off Push-Button Switch (apat)
- NeoPixel Mini Button (apat)
- Wire ng Breadboard
- Panghinang na Bakal at Panghinang
- Wire stripper
- Tool na Pangatlong Kamay
- Square stick na kahoy
- Sheet na acrylic
- Malinaw na kristal na bato
- Transparent na papel
- Super pandikit
Hakbang 2: Circuit Diagram at Code
// Instructables Internet of Things Class sample code // Pagsasama-sama ng Mga Input at Output // Dalawang pushbutton ang nagpapadala ng mga utos sa AIO feed // LED at vibrating motor (o anumang digital output) flah / buzz ayon sa feed data // // Binago ni Becky Ang Stern 2017 // batay sa mga halimbawa mula sa Adafruit IO Arduino Library: // https://github.com/adafruit/Adafruit_IO_Arduino // // Ininvest ng Adafruit ang oras at mga mapagkukunan na nagbibigay ng bukas na code ng mapagkukunan. // Mangyaring suportahan ang Adafruit at buksan ang mapagkukunan ng hardware sa pamamagitan ng pagbili ng // mga produkto mula sa Adafruit! // // Sinulat ni Todd Treece para sa Adafruit Industries // Copyright (c) 2016 Adafruit Industries // Lisensyado sa ilalim ng lisensya ng MIT. // // Lahat ng teksto sa itaas ay dapat na isama sa anumang muling pamamahagi. # isama
-
# tukuyin ang NeoPIN1 15
// Parameter 1 = bilang ng mga pixel sa strip // Parameter 2 = Arduino pin number (karamihan ay may bisa) // Parameter 3 = mga flag na uri ng pixel, idagdag nang sama-sama kung kinakailangan: // NEO_KHZ800 800 KHz bitstream (karamihan sa mga produktong NeoPixel na w / WS2812 Mga LED) // NEO_KHZ400 400 KHz (klasiko 'v1' (hindi v2) FLORA pixel, mga driver ng WS2811) // Ang NEO_GRB Pixels ay naka-wire para sa GRB bitstream (karamihan sa mga produktong NeoPixel) // NEO_RGB Pixels ay naka-wire para sa RGB bitstream (v1 FLORA pixel, hindi v2) // NEO_RGBW Ang mga pixel ay naka-wire para sa RGBW bitstream (mga produktong NeoPixel RGBW) Adafruit_NeoPixel strip = Adafruit_NeoPixel (2, NeoPIN1, NEO_GRB + NEO_KHZ800);
/ ***** *********
/ bisitahin ang io.adafruit.com kung kailangan mong lumikha ng isang account, // o kung kailangan mo ang iyong Adafruit IO key. #define IO_USERNAME "Ang iyong username" # tukuyin ang IO_KEY "Ang iyong IO_KEY"
/ ***** *****
#define WIFI_SSID "Ang iyong wifi" # tukuyin ang WIFI_PASS "Ang iyong password"
# isama ang "AdafruitIO_WiFi.h" AdafruitIO_WiFi io (IO_USERNAME, IO_KEY, WIFI_SSID, WIFI_PASS);
/ ***** ********* /
# isama # isama # isama # isama
// # tukuyin ang LED_PIN 15 # tukuyin ang BUTTON1_PIN 4 # tukuyin ang BUTTON2_PIN 14 // # tukuyin ang MOTOR_PIN 5 // ang pin na ito ay nangangailangan ng kakayahang PWM
// button state int button1current = 0; int button1last = 0; int button2current = 0; int button2last = 0;
// set up the 'digital' feed AdafruitIO_Feed * command = io.feed ("command"); AdafruitIO_Feed * command2 = io.feed ("command2");
void setup () {strip.setBrightness (60); strip.begin (); strip.show (); // Initialize all pixel to 'off' // set button pins as inputs with internal pull-up resistor pinMode (BUTTON1_PIN, INPUT_PULLUP); pinMode (BUTTON2_PIN, INPUT_PULLUP); // set led pin and motor pin as a digital outputs // pinMode (MOTOR_PIN, OUTPUT); // pinMode (LED_PIN, OUTPUT);
// simulan ang serial connection Serial.begin (115200);
// kumonekta sa io.adafruit.com Serial.print ("Pagkonekta sa Adafruit IO"); io.connect (); // mag-set up ng isang handler ng mensahe para sa feed na 'command'. // ang function ng handleMessage (tinukoy sa ibaba) // ay tatawagan tuwing ang isang mensahe ay // natanggap mula sa adafruit io. utos-> onMessage (hawakan1 Button1); command2-> onMessage (hawakan Button2);
// maghintay para sa isang koneksyon habang (io.status () <AIO_CONNected) {Serial.print ("."); pagkaantala (500); }
// kami ay konektado sa Serial.println (); Serial.println (io.statusText ());
// siguraduhin na ang lahat ng mga feed makuha ang kanilang kasalukuyang mga halaga kaagad command-> get (); utos2-> kumuha (); }
void loop () {
// io.run (); ay kinakailangan para sa lahat ng mga sketch. // dapat itong palaging naroroon sa tuktok ng iyong loop // function. pinapanatili nitong nakakonekta ang kliyente sa // io.adafruit.com, at pinoproseso ang anumang papasok na data. io.run ();
// grab ang kasalukuyang estado ng pindutan. // kailangan nating i-flip ang lohika dahil // gumagamit kami ng INPUT_PULLUP. kung (digitalRead (BUTTON1_PIN) == LOW) {button1current = 1; } kung (digitalRead (BUTTON2_PIN) == LOW) {button2current = 1; } kung (digitalRead (BUTTON2_PIN) == TAAS && digitalRead (BUTTON1_PIN) == TAAS) {button1current = 0; button2current = 0; }
// return kung hindi nagbago ang halaga kung (button1current == button1last && button2current == button2last) bumalik;
// save the current state to the 'digital' feed on adafruit io Serial.print ("status ng pagpapadala ng pindutan 1 ->"); Serial.println (button1current); utos-> i-save (button1current);
// i-save ang kasalukuyang estado sa feed na 'digital' sa adafruit io Serial.print ("status ng pagpapadala ng pindutan 2 ->"); Serial.println (button2current); command2-> i-save (button2current);
// store last button state button1last = button1current; button2last = button2current; }
// ang pagpapaandar na ito ay tinatawag tuwing isang mensahe na 'utos' // ay natanggap mula sa Adafruit IO. nakalakip ito sa // ang command feed sa pag-andar ng setup () sa itaas. walang bisa ang handlebutton1 (AdafruitIO_Data * data) {
int utos = data-> toInt ();
kung (command == 1) {// light up first pixel Serial.print ("natanggap mula sa utos (pindutan 1) <-"); Serial.println (utos); // analogWrite (MOTOR_PIN, 200); // pagkaantala (500); // analogWrite (MOTOR_PIN, 0); strip.setPixelColor (0, strip. Color (200, 100, 0)); // Yellow strip.show (); } iba pa {Serial.print ("natanggap mula sa utos (pindutan 1) <-"); Serial.println (utos); strip.setPixelColor (0, strip. Color (0, 0, 0)); // off strip.show (); }} // ang pagpapaandar na ito ay tinatawag tuwing isang mensahe na 'utos' // ay natanggap mula sa Adafruit IO. nakalakip ito sa // ang command feed sa pag-andar ng setup () sa itaas. walang bisa ang handlebutton2 (AdafruitIO_Data * data) {
int command2 = data-> toInt ();
kung (command2 == 1) {// light up first pixel Serial.print ("natanggap mula sa command2 (pindutan 2) <-"); Serial.println (utos2); // analogWrite (MOTOR_PIN, 200); // pagkaantala (500); // analogWrite (MOTOR_PIN, 0); strip.setPixelColor (1, strip. Color (255, 128, 128)); // Yellow strip.show (); } iba pa {Serial.print ("natanggap mula sa command2 (pindutan 2) <-"); Serial.println (utos2); strip.setPixelColor (1, strip. Color (0, 0, 0)); // off strip.show (); }}
Hakbang 3: Konstruksiyon ng Circuit Mula sa Prototype hanggang sa Soldered
Hinihikayat ko kayo na subukan sa isang breadboard upang subukan ang circuit. Dahil nagtatayo kami ng dalawang aparato, maaari kaming subukan sa dalawang breadboard. Inhinang ko ang Neopixel at ang on.off button sa isang prototyping wire dahil mas madaling gamitin ito. Sa paglaon, maaari mong madaling maghinang ang mga prototyping wires.
Pagkatapos naming magtagumpay sa prototyping circuit, oras na upang buuin ang aming totoong circuit. Gumagamit ako ng Perma-proto breadboard dahil mas maliit ito at ang koneksyon ng circuit ay magiging mas mahusay kaysa sa prototyping circuit. Pagdating sa paghihinang, nangangailangan ito ng maraming pasyente. Huwag ka nang susuko! Papunta ka na diyan!
Kapag natapos mo ang iyong circuit at na-upload ang code sa iyong ESP8266, dapat gumana ang dalawang aparato tulad ng nabanggit namin sa simula.
Hakbang 4: Form at Materyal
Ngayon ay gawin natin ang ating Crystal House!
Gupitin ang stick ng kahoy sa 6 pulgada. Kailangan namin ng 18 piraso sa kabuuan. Dahil gusto ko ng ilang pagkakaiba-iba mula sa dalawang kristal na bahay na ito, gumamit ako ng 7 piraso sa isa at 9 na piraso sa isa pa. Ipako ang mga piraso sa isang istraktura ng kahon. Pinutol ko ang dalawang acrylic sheet na 6 by 6 pulgada at idinikit sa ilalim ng mga Crystal House.
Kapag natapos mo na ang istraktura ng mga bahay. Palamutihan natin ang mga bahay! Pinutol ko ang isang piraso ng transparent na may kulay na papel at idinikit ang mga ito sa acrylic sheet. Pagkatapos nito, gumamit ako ng ilang mga malinaw na plastik na kristal at idinikit ang mga ito sa base. Dahil mayroon akong isang transparent na may kulay na papel sa ilalim ng mga kristal, ang mga kristal ay makikita sa iba't ibang mga kulay.
Hakbang 5: Ngayon Gawin Natin ang Mga Bahay na Crystal
Bigyan ang iyong minamahal ng isang kristal na bahay na iyong ginawa. Sabihin sa kanila na sila ay mahalaga! Maaari mong palaging baguhin ang istraktura sa labas gamit ang iba't ibang mga materyales at kulay. Ipaalam sa akin kung paano ito pupunta!
Inirerekumendang:
Smart Crystal Light String: 9 Hakbang (na may Mga Larawan)
Smart Crystal Light String: Habang papalapit ang Pasko at buong pagsasaliksik ako sa diy automation sa bahay at mga smart object, nagpasya ako ngayong taon na subukan na gumawa ng isang matalino, maganda ang hitsura, RGB light string. Gumawa ako ng maraming pagsasaliksik tungkol sa mga solusyon sa DIY sa paligid ng web, sa isang banda ilang mga pr
Programming ATmega328 Sa Arduino IDE Paggamit ng 8MHz Crystal: 4 Hakbang
Programming ATmega328 Sa Arduino IDE Gamit ang 8MHz Crystal: Sa Instuctable na ito ay sasaklawin ko ang isang hakbang-hakbang na gabay ng pag-program ng isang ATmega328P IC (Ang parehong microcontroller na naroroon sa Arudino UNO) na gumagamit ng Arduino IDE at isang Arduino UNO bilang isang programmer upang gawin ang iyong sarili pasadyang Arduino, upang gawin ang iyong mga proyekto
Super Easy Crystal Mood Light: 6 na Hakbang
Super Easy Crystal Mood Light: Kamusta Mga Gumagawa! Ito ay isang sobrang duper na madaling arduino na proyekto na gagana bilang isang tool sa pag-aaral pati na rin isang masamang kasindak-sindak na ilaw ng mood. Ilang piraso lamang ito, kaya maaari mo itong latiin nang magkasama sa oras na kinakailangan upang mai-print ang base. Gumagawa ng isang mahusay na aralin a
Sound and Music Sensing Quartz Crystal Brooch With Playground Circuit Express: 8 Hakbang (na may Mga Larawan)
Sound and Music Sensing Quartz Crystal Brooch With Playground Circuit Express: Ang sound-reactive brooch na ito ay ginawa gamit ang isang playground circuit express, murang maramihan na kristal na quartz, wire, karton, nahanap na plastik, isang safety pin, karayom at sinulid, mainit na pandikit, tela, at iba`t ibang mga kagamitan. Ito ay isang prototype, o unang draft, ng
Digital Clock Gamit ang Crystal Oscillator & Flip Flops: 3 Hakbang
Digital Clock Gamit ang Crystal Oscillator & Flip Flops: Ang mga orasan ay matatagpuan sa halos lahat ng mga uri ng electronics, sila ang tibok ng puso ng anumang computer. Ginagamit ang mga ito upang pagsabayin ang lahat ng sunud-sunod na circuitry. ginagamit din ang mga ito bilang mga counter upang subaybayan ang oras at petsa. Sa pagtuturo na ito matututunan mo