Სარჩევი:

კრისტალის სახლი: 5 ნაბიჯი
კრისტალის სახლი: 5 ნაბიჯი

ვიდეო: კრისტალის სახლი: 5 ნაბიჯი

ვიდეო: კრისტალის სახლი: 5 ნაბიჯი
ვიდეო: კრისტალი - ნაბიჯი ბედნიერებისკენ 2024, ნოემბერი
Anonim
Image
Image
ბროლის სახლი
ბროლის სახლი

წყვილები და ოჯახები, რომლებიც შორ მანძილზე დაშორებულნი არიან, ხშირად გრძნობენ კავშირის ლტოლვას. ბროლის სახლი აშენებულია წყვილებისთვის და ოჯახებისთვის, რომ ერთმანეთთან დაკავშირდნენ განათების საშუალებით. ბროლის სახლები დაკავშირებულია wifi სიგნალებით. როდესაც თქვენ დააჭერთ ღილაკს ერთ ბროლის სახლში, მეორე კრისტალის სახლის შუქები იღებს სიგნალს და ჩართული იქნება. მისი დამზადება ადვილი და სახალისოა! მე ეტაპობრივად გავდივარ გამოყენებული მასალებიდან/ინსტრუმენტებიდან, ვაშენებ/ვამოწმებ წრეს არდუინოს გამოყენებით და ვაშენებ ბროლის სახლის სტრუქტურას

ნაბიჯი 1: ნაწილები, ინსტრუმენტები, მასალები

  • აწყობილი ბუმბული Huzzah ESP8266 (ორი)
  • პერმა-პროტო ნახევრად ზომის პურის დაფა (ორი)
  • ლითიუმის ბატარეა -3.7 1200 mAh (ორი)
  • მინი ჩართვის/გამორთვის ღილაკზე გადამრთველი (ოთხი)
  • NeoPixel მინი ღილაკი (ოთხი)
  • პურის დაფის მავთული
  • Soldering Iron & Solder
  • მავთულის სტრიპტიზიორი
  • მესამე ხელის ინსტრუმენტი
  • კვადრატული ხის ჯოხი
  • აკრილის ფურცელი
  • გამჭვირვალე ბროლის ქვა
  • გამჭვირვალე ქაღალდი
  • სუპერ წებო

ნაბიჯი 2: სქემის დიაგრამა და კოდი

წრიული დიაგრამა და კოდი
წრიული დიაგრამა და კოდი

// Instructables Internet of Things კლასის ნიმუშის კოდი // შეყვანისა და გამოყვანის შეთავსება // ორი ბიძგი აგზავნის ბრძანებებს AIO არხზე // LED და ვიბრაციული ძრავა (ან ნებისმიერი ციფრული გამომუშავება) flah/buzz feed feed data // // შეცვლილია ბეკის მიერ Stern 2017/ // გთხოვთ მხარი დაუჭიროთ ადაფრუტს და ღია კოდის აპარატურას ადაფრუტისგან // პროდუქციის შეძენით! // // დაწერილი Todd Treece– ს მიერ Adafruit Industries // საავტორო უფლება (გ) 2016 Adafruit Industries // ლიცენზირებული MIT ლიცენზიით. // // ყველა ზემოთ მოყვანილი ტექსტი უნდა შეიცავდეს ნებისმიერ გადანაწილებას. #ჩართეთ

  1. #განსაზღვრეთ NeoPIN1 15

    // პარამეტრი 1 = პიქსელების რაოდენობა ზოლში // პარამეტრი 2 = Arduino pin ნომერი (უმეტესობა მოქმედებს) // პარამეტრი 3 = პიქსელის ტიპის დროშები, საჭიროებისამებრ დაამატეთ: // NEO_KHZ800 800 KHz ბიტ -სტრიმი (ყველაზე NeoPixel პროდუქტები w/WS2812 LED- ები) // NEO_KHZ400 400 KHz (კლასიკური 'v1' (არა v2) FLORA პიქსელები, WS2811 დრაივერები) // NEO_GRB პიქსელები სადენიანია GRB ბიტრემისთვის (უმეტესობა NeoPixel პროდუქტებით) // NEO_RGB პიქსელები სადენიანია RGB ბიტრემისთვის (v1 FLORA პიქსელი, არა v2) // NEO_RGBW პიქსელები მიერთებულია RGBW ბიტრემისთვის (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 უნარი

    // ღილაკის მდგომარეობა int button1current = 0; int ღილაკი 1 ბოლო = 0; int button2current = 0; int button2last = 0;

    // დააყენეთ "ციფრული" არხი AdafruitIO_Feed *ბრძანება = io.feed ("ბრძანება"); AdafruitIO_Feed *command2 = io.feed ("command2");

    void setup () {strip.setBrightness (60); ზოლები. დაწყება (); ზოლები. ჩვენება (); // ყველა პიქსელის ინიციალიზაცია "გამორთვაზე" // დააყენეთ ღილაკის ქინძისთავები, როგორც შეყვანის შიდა გამყვანი რეზისტორის pinMode (BUTTON1_PIN, INPUT_PULLUP); pinMode (BUTTON2_PIN, INPUT_PULLUP); // დააყენეთ led pin და ძრავის pin როგორც ციფრული შედეგები // pinMode (MOTOR_PIN, OUTPUT); // pinMode (LED_PIN, OUTPUT);

    // სერიული კავშირის დაწყება Serial.begin (115200);

    // დაკავშირება io.adafruit.com– თან Serial.print („ადაფრუტის 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-> მიიღეთ (); }

    ბათილი მარყუჟი () {

    // 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) დაბრუნდება;

    // შეინახეთ არსებული მდგომარეობა adifruit io Serial.print- ის "ციფრული" არხზე ("გაგზავნის ღილაკი 1 სტატუსი ->"); Serial.println (button1current); ბრძანება-> შენახვა (button1current);

    // შეინახეთ არსებული მდგომარეობა adifruit io Serial.print- ის "ციფრული" არხზე ("გაგზავნის ღილაკი 2 სტატუსი ->"); Serial.println (button2current); command2-> შენახვა (button2current);

    // შეინახეთ ბოლო ღილაკის მდგომარეობა button1last = button1current; button2last = ღილაკი2 მიმდინარე; }

    // ეს ფუნქცია იძახება ყოველთვის, როდესაც "ბრძანების" შეტყობინება // მიიღება Adafruit IO– დან. იგი დაერთო // ბრძანების არხს setup () ფუნქციაში ზემოთ. ბათილი სახელური Button1 (AdafruitIO_Data *მონაცემები) {

    int ბრძანება = მონაცემები-> toInt ();

    if (command == 1) {// განათება პირველი პიქსელი Serial.print ("მიღებული ბრძანებიდან (ღილაკი 1) <-"); Serial.println (ბრძანება); // analogWrite (MOTOR_PIN, 200); // დაგვიანება (500); // analogWrite (MOTOR_PIN, 0); strip.setPixelColor (0, ზოლები. ფერი (200, 100, 0)); // ყვითელი ზოლები. ჩვენება (); } else {Serial.print ("მიღებული ბრძანებიდან (ღილაკი 1) <-"); Serial.println (ბრძანება); strip.setPixelColor (0, ზოლები. ფერი (0, 0, 0)); // off strip.show (); }} // ეს ფუნქცია იძახება ყოველთვის, როდესაც "ბრძანების" შეტყობინება // მიიღება Adafruit IO– დან. იგი დაერთო // ბრძანების არხს setup () ფუნქციაში ზემოთ. ბათილი სახელური Button2 (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)); // ყვითელი ზოლები. ჩვენება (); } else {Serial.print ("მიღებული ბრძანებიდან 2 (ღილაკი 2) <-"); Serial.println (command2); strip.setPixelColor (1, ზოლები. ფერი (0, 0, 0)); // off strip.show (); }}

ნაბიჯი 3: ციკლის მშენებლობა პროტოტიპიდან შედუღებამდე

მიკროსქემის მშენებლობა პროტოტიპიდან შედუღებამდე
მიკროსქემის მშენებლობა პროტოტიპიდან შედუღებამდე
მიკროსქემის მშენებლობა პროტოტიპიდან შედუღებამდე
მიკროსქემის მშენებლობა პროტოტიპიდან შედუღებამდე

მე გირჩევთ სცადოთ პურის დაფაზე, რომ შეამოწმოთ წრე. ვინაიდან ჩვენ ვაშენებთ ორ მოწყობილობას, ჩვენ შეგვიძლია შევამოწმოთ ორ დაფაზე. მე შევაერთე Neopixel და on.off ღილაკი პროტოტიპირების მავთულს, რადგან მისი გამოყენება უფრო ადვილია. მოგვიანებით, თქვენ შეგიძლიათ ადვილად შეაერთოთ პროტოტიპის მავთულები.

მას შემდეგ, რაც ჩვენ შევძლებთ წარმატების მიღწევას პროტოტიპების სქემით, დროა ავაშენოთ ჩვენი რეალური წრე. მე ვიყენებ Perma-proto breadboard– ს, რადგან ის უფრო პატარაა და მიკროსქემის კავშირი ბევრად უკეთესი იქნება ვიდრე პროტოტიპების წრე. რაც შეეხება შედუღებას, ამას ბევრი მოთმინება სჭირდება. ჯერ არ დანებდე! შენ იქ მიდიხარ!

მას შემდეგ რაც დაასრულებთ თქვენს სქემას და ატვირთავთ კოდს თქვენს ESP8266– ში, ორი მოწყობილობა უნდა იმუშაოს როგორც თავიდანვე აღვნიშნეთ.

ნაბიჯი 4: ფორმა და მასალა

ფორმა და მასალა
ფორმა და მასალა
ფორმა და მასალა
ფორმა და მასალა
ფორმა და მასალა
ფორმა და მასალა
ფორმა და მასალა
ფორმა და მასალა

ახლა მოდით გავაკეთოთ ჩვენი ბროლის სახლი!

ხის ჯოხი გაჭერით 6 სანტიმეტრზე. სულ გვჭირდება 18 ცალი. ვინაიდან ამ ორი ბროლის სახლისგან ვარიაცია მინდა, ერთში 7 ცალი გამოვიყენე და მეორეში 9 ცალი. დააწებეთ ნაჭრები ყუთის სტრუქტურაში. ორი აკრილის ფურცელი დავჭრა 6 -დან 6 სანტიმეტრზე და დავაწებე ბროლის სახლების ძირში.

მას შემდეგ რაც დაასრულებთ სახლების სტრუქტურას. მოდით დაამშვენოთ სახლები! გამჭვირვალე ფერის ქაღალდის ნაჭერი დავჭერი და აკრილის ფურცელზე დავაწებე. ამის შემდეგ, მე გამოვიყენე გამჭვირვალე პლასტმასის კრისტალები და დავაწებე ისინი ბაზაზე. მას შემდეგ, რაც კრისტალების ბოლოში მაქვს გამჭვირვალე ფერის ქაღალდი, კრისტალები აისახება სხვადასხვა ფერში.

ნაბიჯი 5: ახლა მოდით გამოვიყენოთ ბროლის სახლები

ახლა მოდით გამოვიყენოთ ბროლის სახლები
ახლა მოდით გამოვიყენოთ ბროლის სახლები
ახლა მოდით გამოვიყენოთ ბროლის სახლები
ახლა მოდით გამოვიყენოთ ბროლის სახლები

აჩუქე შენს საყვარელ ადამიანს შენ მიერ შექმნილი ბროლის სახლი. უთხარით მათ, რომ ისინი მნიშვნელოვანია! თქვენ ყოველთვის შეგიძლიათ შეცვალოთ გარე სტრუქტურა სხვადასხვა მასალისა და ფერის გამოყენებით. გამაგებინე როგორ ხდება!

გირჩევთ: