Satura rādītājs:

Kristāla māja: 5 soļi
Kristāla māja: 5 soļi

Video: Kristāla māja: 5 soļi

Video: Kristāla māja: 5 soļi
Video: НЕ ВЫБРОСИЛА СТАРЫЙ ТЮЛЬ И ХОРОШО СЭКОНОМИЛА СЕМЕЙНЫЙ БЮДЖЕТ! 4 КРУТЫЕ ИДЕИ ИЗ ТЮЛЯ! 2024, Jūlijs
Anonim
Image
Image
Kristāla māja
Kristāla māja

Pāri un ģimenes, kas ir šķirti liela attāluma dēļ, bieži izjūt ilgas pēc savienojuma. Kristāla māja ir veidota, lai pāri un ģimenes varētu savienoties savā starpā, izmantojot gaismas. Kristāla mājas ir savienotas ar wifi signāliem. Nospiežot vienas kristāla mājas pogu, citas kristāla mājas gaismas saņem signālu un tiks ieslēgtas. To ir viegli un jautri pagatavot! Es pakāpeniski iziešu no izmantotajiem materiāliem/instrumentiem, būvēšu/pārbaudīšu ķēdi, izmantojot Arduino, un būvēšu Kristāla mājas struktūru

1. solis: detaļas, instrumenti, izejmateriāli

  • Saliktas spalvas Huzzah ESP8266 (divas)
  • Perma-Proto Pusizmēra maizes dēlis (divi)
  • Litija akumulators -3,7 1200mAh (divi)
  • Mini ieslēgšanas/izslēgšanas spiedpogas slēdzis (četri)
  • NeoPixel mini poga (četras)
  • Maizes dēļa vads
  • Lodāmurs un lodētava
  • Stiepļu noņēmējs
  • Trešās rokas instruments
  • Kvadrātveida koka nūja
  • Akrila loksne
  • Skaidrs kristāla akmens
  • Caurspīdīgs papīrs
  • Super līme

2. darbība: shēmas shēma un kods

Ķēdes shēma un kods
Ķēdes shēma un kods

// Instructables Lietas interneta klases parauga kods // Ieeju un izeju apvienošana // Divas pogas nosūta komandas uz AIO plūsmu // LED un vibrējošais motors (vai jebkura digitālā izeja) flah/buzz atbilstoši plūsmas datiem // // Modificēja Bekijs Stern 2017 // pamatojoties uz piemēriem no Adafruit IO Arduino bibliotēkas: // https://github.com/adafruit/Adafruit_IO_Arduino // // Adafruit iegulda laiku un resursus, nodrošinot šo atvērtā pirmkoda kodu. // Lūdzu, atbalstiet Adafruit un atvērtā pirmkoda aparatūru, iegādājoties // produktus no Adafruit! // // Autors: Tods Treece, Adafruit Industries // Autortiesības (c) 2016 Adafruit Industries // Licencēts saskaņā ar MIT licenci. // // Viss iepriekš minētais teksts ir jāiekļauj jebkurā pārdalē. #iekļaut

  1. #define NeoPIN1 15

    // Parametrs 1 = pikseļu skaits joslā // Parametrs 2 = Arduino pin numurs (lielākā daļa ir derīgi) // Parametrs 3 = pikseļu tipa karodziņi, pēc vajadzības pievienojiet: // NEO_KHZ800 800 KHz bitu plūsma (lielākā daļa NeoPixel produktu ar WS2812 Gaismas diodes) // NEO_KHZ400 400 KHz (klasiskie “v1” (ne v2) FLORA pikseļi, WS2811 draiveri) // NEO_GRB pikseļi ir savienoti ar GRB bitu plūsmu (lielākā daļa NeoPixel produktu) // NEO_RGB pikseļi ir savienoti ar RGB bitu plūsmu (v1 FLORA pikseļi, nav v2) // NEO_RGBW Pikseļi ir pieslēgti RGBW bitu plūsmai (NeoPixel RGBW produkti) Adafruit_NeoPixel strip = Adafruit_NeoPixel (2, NeoPIN1, NEO_GRB + NEO_KHZ800);

    /************************ Adafruit IO konfigurācija ********************** *********

    / apmeklējiet vietni io.adafruit.com, ja jums ir jāizveido konts, // vai ja jums ir nepieciešama jūsu Adafruit IO atslēga. #define IO_USERNAME "Jūsu lietotājvārds" #define IO_KEY "Jūsu IO_KEY"

    /******************************* WIFI konfigurācija **************** **********************/

    #define WIFI_SSID "Jūsu wifi" #define WIFI_PASS "Jūsu parole"

    #include "AdafruitIO_WiFi.h" AdafruitIO_WiFi io (IO_USERNAME, IO_KEY, WIFI_SSID, WIFI_PASS);

    /************************ Šeit sākas galvenais kods ********************* **********/

    #iekļaut #iekļaut #iekļaut #iekļaut

    // #define LED_PIN 15 #define BUTTON1_PIN 4 #define BUTTON2_PIN 14 // #define MOTOR_PIN 5 // šai tapai ir nepieciešama PWM iespēja

    // pogas stāvoklis int button1current = 0; int button1last = 0; int poga2strāva = 0; int button2last = 0;

    // iestatīt 'digitālo' plūsmu AdafruitIO_Feed *komanda = io.feed ("komanda"); AdafruitIO_Feed *command2 = io.feed ("komanda2");

    void setup () {strip.setBrightness (60); strip.begin (); strip.show (); // Inicializējiet visus pikseļus uz “izslēgtu” // iestatiet pogu tapas kā ieejas ar iekšējo uzvilkšanas rezistoru pinMode (BUTTON1_PIN, INPUT_PULLUP); pinMode (BUTTON2_PIN, INPUT_PULLUP); // iestatiet LED tapu un motora tapu kā digitālās izejas // pinMode (MOTOR_PIN, OUTPUT); // pinMode (LED_PIN, OUTPUT);

    // sākt sērijas savienojumu Serial.begin (115200);

    // izveidot savienojumu ar io.adafruit.com Serial.print ("Savienojuma izveide ar Adafruit IO"); io.connect (); // iestatīt ziņojumu apstrādātāju 'komandu' plūsmai. // handleMessage funkcija (definēta zemāk) // tiks izsaukta ikreiz, kad tiek saņemts ziņojums // no adafruit io. komanda-> onMessage (handleButton1); command2-> onMessage (handleButton2);

    // gaidiet savienojumu, kamēr (io.status () <AIO_CONNECTED) {Serial.print ("."); kavēšanās (500); }

    // mēs esam saistīti Serial.println (); Serial.println (io.statusText ());

    // pārliecinieties, ka visas plūsmas uzreiz iegūst pašreizējās vērtības komanda-> get (); command2-> get (); }

    void loop () {

    // io.run (); ir nepieciešams visām skicēm. // tam vienmēr jābūt jūsu cilpas // funkcijas augšpusē. tas saglabā klientu savienojumu ar // io.adafruit.com un apstrādā visus ienākošos datus. io.run ();

    // satveriet pogas pašreizējo stāvokli. // mums ir jāapgriež loģika, jo mēs // izmantojam INPUT_PULLUP. if (digitalRead (BUTTON1_PIN) == LOW) {button1current = 1; } ja (digitalRead (BUTTON2_PIN) == LOW) {button2current = 1; } ja (digitalRead (BUTTON2_PIN) == HIGH && digitalRead (BUTTON1_PIN) == HIGH) {button1current = 0; poga2strāva = 0; }

    // atgriezties, ja vērtība nav mainījusies, ja (button1current == button1last && button2current == button2last) atgriežas;

    // saglabāt pašreizējo stāvokli adafruit io Serial.print 'digitālajā' plūsmā ("sūtīšanas pogas 1 statuss ->"); Serial.println (poga1strāva); komanda-> saglabāt (poga1strāva);

    // saglabāt pašreizējo stāvokli adafruit io Serial.print 'digitālajā' plūsmā ("sūtīšanas pogas 2 statuss ->"); Serial.println (poga2strāva); command2-> saglabāt (poga2strāva);

    // saglabāt pēdējās pogas stāvokli button1last = button1current; button2last = button2current; }

    // šī funkcija tiek izsaukta ikreiz, kad tiek saņemts komandas ziņojums // no Adafruit IO. tas tika pievienots // komandu plūsmai iepriekš iestatīšanas () funkcijā. void handleButton1 (AdafruitIO_Data *dati) {

    int komanda = dati-> toInt ();

    if (komanda == 1) {// iedegas pirmais pikselis Serial.print ("saņemts no komandas (poga 1) <-"); Serial.println (komanda); // analogWrite (MOTOR_PIN, 200); // kavēšanās (500); // analogWrite (MOTOR_PIN, 0); strip.setPixelColor (0, strip. Color (200, 100, 0)); // Dzeltenā sloksne.show (); } else {Serial.print ("saņemts no komandas (1. poga) <-"); Serial.println (komanda); strip.setPixelColor (0, strip. Color (0, 0, 0)); // off strip.show (); }} // šī funkcija tiek izsaukta ikreiz, kad tiek saņemts 'komandu' ziņojums // no Adafruit IO. tas tika pievienots // komandu plūsmai iepriekš iestatīšanas () funkcijā. void handleButton2 (AdafruitIO_Data *dati) {

    int komanda2 = dati-> toInt ();

    if (command2 == 1) {// iedegas pirmais pikselis Serial.print ("saņemts no komandas2 (poga 2) <-"); Serial.println (komanda2); // analogWrite (MOTOR_PIN, 200); // kavēšanās (500); // analogWrite (MOTOR_PIN, 0); strip.setPixelColor (1, sloksne. Krāsa (255, 128, 128)); // Dzeltenā sloksne.show (); } else {Serial.print ("saņemts no komandas2 (poga 2) <-"); Serial.println (komanda2); strip.setPixelColor (1, strip. Color (0, 0, 0)); // off strip.show (); }}

3. darbība: ķēdes uzbūve no prototipa līdz lodēšanai

Ķēdes konstrukcija no prototipa līdz lodēšanai
Ķēdes konstrukcija no prototipa līdz lodēšanai
Ķēdes konstrukcija no prototipa līdz lodēšanai
Ķēdes konstrukcija no prototipa līdz lodēšanai

Es ieteiktu jums izmēģināt maizes dēli, lai pārbaudītu ķēdi. Tā kā mēs veidojam divas ierīces, mēs varētu pārbaudīt uz diviem maizes dēļiem. Es lodēju Neopixel un ieslēgšanas pogu uz prototipa vadu, jo to ir vieglāk izmantot. Vēlāk jūs varat viegli pielodēt prototipēšanas vadus.

Pēc tam, kad mums ir izdevies izveidot prototipēšanas shēmu, ir pienācis laiks izveidot savu īsto ķēdi. Es izmantoju Perma-proto maizes dēli, jo tas ir mazāks, un ķēdes savienojums būs daudz labāks nekā prototipēšanas shēma. Runājot par lodēšanu, tas prasa daudz pacietības. Vēl nepadodies! Jūs tur nokļūstat!

Kad esat pabeidzis ķēdi un augšupielādējis kodu savā ESP8266, abām ierīcēm vajadzētu darboties, kā mēs minējām sākumā.

4. solis: forma un materiāls

Forma un materiāls
Forma un materiāls
Forma un materiāls
Forma un materiāls
Forma un materiāls
Forma un materiāls
Forma un materiāls
Forma un materiāls

Tagad izveidosim mūsu Kristāla māju!

Izgrieziet koka nūju 6 collas. Kopā mums vajag 18 gabalus. Tā kā es gribu dažas variācijas no šīm divām kristāla mājām, es izmantoju 7 gabalus vienā un 9 gabalus otrā. Līmējiet gabalus kastes struktūrā. Es sagriezu divas akrila loksnes līdz 6 x 6 collām un pielīmēju tās kristāla māju apakšā.

Kad esat pabeidzis māju struktūru. Izrotāsim mājas! Es izgriezu caurspīdīga krāsaina papīra gabalu un pielīmēju tos uz akrila loksnes. Pēc tam es izmantoju dažus caurspīdīgus plastmasas kristālus un pielīmēju tos pie pamatnes. Tā kā man kristālu apakšā ir caurspīdīgs krāsains papīrs, kristāli tiek atspoguļoti dažādās krāsās.

5. solis: Tagad izmantosim kristāla mājas

Tagad izmantosim kristāla mājas
Tagad izmantosim kristāla mājas
Tagad izmantosim kristāla mājas
Tagad izmantosim kristāla mājas

Uzdāvini savam mīļotajam kristāla māju, ko tu uztaisīji. Pastāstiet viņiem, ka viņi ir svarīgi! Jūs vienmēr varat mainīt ārējo struktūru, izmantojot dažādus materiālus un krāsas. Ļaujiet man zināt, kā tas notiek!

Ieteicams: