Агуулгын хүснэгт:

Болор байшин: 5 алхам
Болор байшин: 5 алхам

Видео: Болор байшин: 5 алхам

Видео: Болор байшин: 5 алхам
Видео: Основные ошибки при возведении перегородок из газобетона #5 2024, Долдугаар сарын
Anonim
Image
Image
Болор байшин
Болор байшин

Холын зайнаас болж салсан хосууд болон гэр бүлүүд ихэвчлэн холболтын хүсэл тэмүүллийг мэдэрдэг. Crystal House нь гэр бүлийн хосууд болон гэр бүлүүд хоорондоо гэрлээр холбогддог. Болор байшин нь wifi дохиогоор холбогддог. Та нэг болор байшингийн товчлуурыг дарахад нөгөө болор байшингийн гэрэл дохиог хүлээн авч асаах болно. Үүнийг хийхэд хялбар бөгөөд хөгжилтэй! Би алхам тутамдаа ашигласан материал/багаж хэрэгсэл, Arduino ашиглан хэлхээг бий болгох/турших, Болор байшингийн бүтцийг бий болгох болно.

Алхам 1: эд анги, багаж хэрэгсэл, хангамж

  • Угсарсан өд Huzzah ESP8266 (хоёр)
  • Perma-Proto Хагас хэмжээтэй талхны хавтан (хоёр)
  • Лити зай -3.7 1200 мАч (хоёр)
  • Мини асаах/унтраах товчлуур (дөрвөн)
  • NeoPixel Mini товчлуур (дөрвөн)
  • Breadboard утас
  • Гагнуурын төмөр ба гагнуур
  • Утас хуулагч
  • Гурав дахь гар хэрэгсэл
  • Дөрвөлжин модон саваа
  • Нийлэг хуудас
  • Цэвэр болор чулуу
  • Ил тод цаас
  • супер цавуу

Алхам 2: Хэлхээ диаграм ба код

Хэлхээний диаграм ба код
Хэлхээний диаграм ба код

// Зааварлах боломжтой зүйлсийн интернетийн ангийн жишээ код // Оролт ба гаралтыг хослуулах // Хоёр товчлуур нь AIO тэжээл рүү тушаалуудыг илгээдэг // Тэжээлийн мэдээллийн дагуу LED ба чичиргээт мотор (эсвэл дижитал гаралт) flah/buzz // // Бекки өөрчилсөн Стерн 2017 // Adafruit IO Arduino номын сангийн жишээн дээр үндэслэн: // https://github.com/adafruit/Adafruit_IO_Arduino // // Adafruit нь энэхүү нээлттэй эх кодыг өгөхөд цаг хугацаа, нөөцөө зарцуулдаг. // Adafruit -аас // бүтээгдэхүүн худалдаж авах замаар Adafruit болон нээлттэй эхийн техник хангамжийг дэмжинэ үү! // // Adafruit Industries -д зориулж бичсэн Тодд Триц // Зохиогчийн эрх (c) 2016 Adafruit Industries // MIT лицензийн дагуу лицензтэй. // // Дээрх бүх текстийг дахин хуваарилалтад оруулах ёстой. #оруулах

  1. #тодорхойлох NeoPIN1 15

    // Параметр 1 = зурвас дахь пикселийн тоо // Параметр 2 = Arduino зүү дугаар (ихэнх нь хүчинтэй) // Параметр 3 = Пикселийн төрлийн тугуудыг шаардлагатай бол нэмж оруулаарай: // NEO_KHZ800 800 KHz бит урсгал (ихэнх NeoPixel бүтээгдэхүүнүүд/WS2812 LED) // NEO_KHZ400 400 KHz (сонгодог 'v1' (v2 биш) FLORA пикселүүд, WS2811 драйверууд) // NEO_GRB пикселүүд нь GRB bitstream -д зориулагдсан байдаг (ихэнх NeoPixel бүтээгдэхүүнүүд) // NEO_RGB пикселүүд нь RGB bitstream (v1 FLORA пиксел, v2 биш) // NEO_RGBW пикселүүд нь RGBW bitstream -д зориулагдсан (NeoPixel RGBW бүтээгдэхүүнүүд) Adafruit_NeoPixel зурвас = Adafruit_NeoPixel (2, NeoPIN1, NEO_GRB + NEO_KHZ800);

    /************************ Adafruit IO -ийн тохиргоо ********************** *********

    / Хэрэв та данс үүсгэх шаардлагатай бол io.adafruit.com хаягаар зочилно уу, эсвэл танд Adafruit IO түлхүүр хэрэгтэй бол. IO_USERNAME "Таны хэрэглэгчийн нэр" -ийг тодорхойлох #IO_KEY "Таны IO_KEY" -ийг тодорхойлох

    /******************************* WIFI тохиргоо **************** **********************/

    #WIFI_SSID "Таны wifi" -ийг тодорхойлох #WIFI_PASS "Таны нууц үг" -ийг тодорхойлох

    #"AdafruitIO_WiFi.h" оруулах AdafruitIO_WiFi io (IO_USERNAME, IO_KEY, WIFI_SSID, WIFI_PASS);

    /************************ Үндсэн код эндээс эхэлдэг ********************* **********/

    #оруулах #оруулах #оруулах #оруулах

    // #LED_PIN 15 тодорхойлох #BUTTON1_PIN 4 тодорхойлох #BUTTON2_PIN 14 тодорхойлох #// MOTOR_PIN 5 тодорхойлох // энэ зүү PWM чадвартай байх шаардлагатай

    // button state int button1current = 0; int button1last = 0; int button2current = 0; int button2last = 0;

    // 'дижитал' тэжээлийг тохируулах AdafruitIO_Feed *команд = io.feed ("тушаал"); AdafruitIO_Feed *command2 = io.feed ("command2");

    void setup () {strip.setBrightness (60); strip.begin (); strip.show (); // Бүх пикселийг "унтраах" болгож эхлүүлэх // товчлуурын тээглүүрийг дотоод татах эсэргүүцэл бүхий pinMode (BUTTON1_PIN, INPUT_PULLUP) оролт болгон тохируулах; pinMode (BUTTON2_PIN, INPUT_PULLUP); // LED зүү ба мотор зүүг тоон гаралт болгон тохируулах // pinMode (MOTOR_PIN, OUTPUT); // pinMode (LED_PIN, OUTPUT);

    // Serial.begin (115200) цуваа холболтыг эхлүүлэх;

    // io.adafruit.com руу холбогдох Serial.print ("Adafruit IO руу холбогдох"); io.connect (); // 'тушаал' тэжээлд мессеж боловсруулагчийг тохируулах. // handleMessage функц (доор тодорхойлсон болно) // adafruit io -аас мессеж ирэх бүрт // дуудах болно. command-> onMessage (handleButton1); command2-> onMessage (handleButton2);

    // холболтыг хүлээх (io.status () <AIO_CONNECTED) {Serial.print ("."); саатал (500); }

    // бид холбогдсон байна Serial.println (); Serial.println (io.statusText ());

    // бүх тэжээлүүд одоогийн утгуудаа шууд авах эсэхийг шалгаарай command-> get (); command2-> get (); }

    void loop () {

    // io.run (); бүх зургийн хувьд шаардлагатай. // энэ нь таны давталтын // функцын дээд хэсэгт үргэлж байх ёстой. Энэ нь үйлчлүүлэгчийг // io.adafruit.com -тэй холбож, ирж буй өгөгдлийг боловсруулдаг. io.run ();

    // товчлуурын одоогийн төлөвийг авах. // бид INPUT_PULLUP -ийг ашиглаж байгаа тул логикийг эргүүлэх ёстой. if (digitalRead (BUTTON1_PIN) == LOW) {button1current = 1; } if (digitalRead (BUTTON2_PIN) == LOW) {button2current = 1; } if (digitalRead (BUTTON2_PIN) == HIGH && digitalRead (BUTTON1_PIN) == HIGH) {button1current = 0; button2current = 0; }

    // хэрэв утга өөрчлөгдөөгүй бол буцаах (button1current == button1last && button2current == button2last) return;

    // одоогийн байдлыг adafruit io Serial.print дээрх "дижитал" тэжээлд хадгалах ("1 товчлуур илгээх байдал ->"); Serial.println (button1current); command-> save (button1current);

    // одоогийн төлөвийг adafruit io Serial.print дээрх "дижитал" тэжээлд хадгалах ("2 -р товчлуурыг илгээх байдал ->"); Serial.println (button2current); command2-> хадгалах (button2current);

    // хадгалах сүүлийн товчлуурын төлөв button1last = button1current; button2last = button2current; }

    // энэ функцийг Adafruit IO -ээс 'тушаал' гэсэн мессеж // хүлээн авах бүрт дууддаг. Энэ нь дээрх setup () функц дахь тушаалын тэжээлд хавсаргагдсан болно. void handleButton1 (AdafruitIO_Data *өгөгдөл) {

    int command = data-> toInt ();

    if (тушаал == 1) {// эхний пикселийг гэрэлтүүлэх Serial.print ("тушаалаас авсан (1-р товчлуур) <-"); Serial.println (тушаал); // analogWrite (MOTOR_PIN, 200); // саатал (500); // analogWrite (MOTOR_PIN, 0); strip.setPixelColor (0, зурвас өнгө (200, 100, 0)); // Шар зурвас.шоу (); } өөр {Serial.print ("тушаалаас авсан (1-р товчлуур) <-"); Serial.println (тушаал); strip.setPixelColor (0, зурвас өнгө (0, 0, 0)); // унтраах зурвас.show (); }} // энэ функцийг Adafruit IO -ээс 'тушаал' гэсэн мессеж // хүлээн авах бүрт дууддаг. Энэ нь дээрх setup () функц дахь тушаалын тэжээлд хавсаргагдсан болно. void handleButton2 (AdafruitIO_Data *өгөгдөл) {

    int command2 = data-> toInt ();

    if (command2 == 1) {// эхний пикселийг гэрэлтүүлэх Serial.print ("тушаал 2-оос хүлээн авсан (2-р товчлуур) <-"); Serial.println (command2); // analogWrite (MOTOR_PIN, 200); // саатал (500); // analogWrite (MOTOR_PIN, 0); strip.setPixelColor (1, зурвас Өнгө (255, 128, 128)); // Шар зурвас.шоу (); } өөр {Serial.print ("тушаал 2-оос хүлээн авсан (2-р товчлуур) <-"); Serial.println (command2); strip.setPixelColor (1, зурвас өнгө (0, 0, 0)); // унтраах зурвас.show (); }}

Алхам 3: Прототипээс гагнах хүртэл хэлхээний бүтэц

Прототипээс гагнах хүртэл хэлхээний бүтэц
Прототипээс гагнах хүртэл хэлхээний бүтэц
Прототипээс гагнах хүртэл хэлхээний бүтэц
Прототипээс гагнах хүртэл хэлхээний бүтэц

Би хэлхээг шалгахын тулд талхны самбар дээр оролдож үзэхийг зөвлөж байна. Бид хоёр төхөөрөмж барьж байгаа тул хоёр талхны самбар дээр туршиж үзэх боломжтой. Би Neopixel болон on.off товчлуурыг загварчлах утас руу гагнасан нь ашиглахад илүү хялбар болсон. Хожим нь та загварчлах утсыг амархан гагнах боломжтой.

Прототипийн хэлхээг амжилттай хийсний дараа жинхэнэ хэлхээгээ бүтээх цаг болжээ. Би жижиг хэмжээтэй тул хэлхээний холболт нь загварчлалын хэлхээнээс хамаагүй дээр байх тул Perma-proto талхны хавтанг ашиглаж байна. Гагнуурын тухайд бол маш их тэвчээр шаарддаг. Битгий бууж өгөөрэй! Та тийшээ хүрч байна!

Та хэлхээгээ дуусгаад кодоо ESP8266 -д байршуулсны дараа хоёр төхөөрөмж бидний дээр дурдсанчлан ажиллах ёстой.

Алхам 4: Маягт ба материал

Маягт ба материал
Маягт ба материал
Маягт ба материал
Маягт ба материал
Маягт ба материал
Маягт ба материал
Маягт ба материал
Маягт ба материал

Одоо болор байшингаа хийцгээе!

Модон саваа 6 инч болгон хайчилж ав. Бидэнд нийт 18 ширхэг хэрэгтэй болно. Би эдгээр хоёр болор байшингийн өөрчлөлтийг хүсч байгаа тул нэг хэсэгт 7 ширхэг, нөгөө хэсэгт 9 ширхэгийг ашигласан. Хэсэг хэсгүүдийг хайрцгийн бүтцэд наа. Би хоёр нийлэг хуудсыг 6 -аас 6 инч болгон хайчилж, болор байшингийн ёроолд наасан.

Байшингийн бүтцийг дуусгасны дараа. Байшинг тохижуулцгаая! Би ил тод өнгийн цаас хайчилж, нийлэг хуудсан дээр наасан. Үүний дараа би тунгалаг хуванцар талстыг хэрэглэж, сууринд наасан. Миний талстуудын доод хэсэгт ил тод өнгийн цаас байдаг тул талстууд өөр өөр өнгөөр тусдаг.

Алхам 5: Одоо болор байшинг ашиглацгаая

Одоо болор байшинг ашиглацгаая
Одоо болор байшинг ашиглацгаая
Одоо болор байшинг ашиглацгаая
Одоо болор байшинг ашиглацгаая

Хайртай хүндээ өөрийн хийсэн болор байшинг бэлэглээрэй. Тэд чухал гэдгийг тэдэнд хэлээрэй! Та янз бүрийн материал, өнгө ашиглан гаднах бүтцийг өөрчлөх боломжтой. Энэ нь хэрхэн болж байгааг надад хэлээрэй!

Зөвлөмж болгож буй: