สารบัญ:
- เสบียง
- ขั้นตอนที่ 1: มาสร้างฟีดใน Adafruit กันเถอะ
- ขั้นตอนที่ 2: ตอนนี้ มาสร้างแดชบอร์ดกัน.
- ขั้นตอนที่ 3: รับกุญแจของเรา
- ขั้นตอนที่ 4: เปิดตัวอย่างการอ่านฟีด
- ขั้นตอนที่ 5: มาตั้งค่าการเชื่อมต่อของเรากันเถอะ
- ขั้นตอนที่ 6: ตรวจสอบการเชื่อมต่อกับ Adafruit IO
- ขั้นตอนที่ 7: ให้ LED
- ขั้นตอนที่ 8: เพิ่มเวลาให้กับตัวจับเวลา
- ขั้นตอนที่ 9: นับถอยหลัง
- ขั้นตอนที่ 10: ทำให้เป็นรีโมทคอนโทรล: ตอนที่ I
- ขั้นตอนที่ 11: ทำให้เป็นรีโมทคอนโทรล: ตอนที่ II
- ขั้นตอนที่ 12: เล่นไปรอบ ๆ! เราเสร็จแล้ว…หรือเรา?
- ขั้นตอนที่ 13: พิเศษ: สร้างปุ่มชั่วขณะ
- ขั้นตอนที่ 14: พิเศษ: เพิ่มฟังก์ชันรีเซ็ต
วีดีโอ: ตัวจับเวลาควบคุมระยะไกลด้วย NodeMCU: 14 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:04
เราจะสร้างตัวจับเวลาโดยใช้ NodeMCU และ Adafruit เรากำลังจะแสดงตัวจับเวลาด้วยแถบ LED และเราจะสามารถควบคุมได้โดยใช้โทรศัพท์หรือคอมพิวเตอร์ของเรา!
เป้าหมายของพวกเรา:
สร้างตัวจับเวลาโดยใช้แถบ LED ที่เราสามารถทำได้: เริ่ม หยุดชั่วคราว และรีเซ็ตโดยใช้โทรศัพท์หรือคอมพิวเตอร์ของเรา
เสบียง
ฮาร์ดแวร์:
- NodeMCU ESP 8266
- Adafruit NeoPixel แถบ LED
ห้องสมุด:
- Adafruit_NeoPixel.h
- AdafruitIO_WiFi.h
อื่น:
การเชื่อมต่อ WiFi ที่ดี
ขั้นตอนที่ 1: มาสร้างฟีดใน Adafruit กันเถอะ
เมื่อเราได้ทุกสิ่งที่ต้องการแล้ว เราก็พร้อมที่จะเริ่มสร้าง! ก่อนอื่นเราต้องสร้างฟีดใน Adafruit Adafruit เป็นบริการที่ทำให้เราเชื่อมต่อ Arduino กับอินเทอร์เน็ตได้อย่างง่ายดาย และสร้างคุณสมบัติการควบคุมระยะไกลที่มีประโยชน์ หากคุณยังไม่ได้สมัครใช้งาน Adafruit
มาสร้างฟีดใหม่กันเถอะ
เราสามารถตั้งชื่อฟีดของเราอะไรก็ได้ที่เราต้องการ ฉันเรียกมันว่า 'ตัวจับเวลา'
สิ่งที่ฟีดทำคือบันทึกทุกสิ่งที่เราทำในแดชบอร์ดของเรา (ซึ่งเราจะสร้างขึ้นภายในเวลาเพียงไม่กี่นาที) และส่งข้อมูลนั้นไปยังบอร์ดของเรา แต่นั่นคือสิ่งที่เราจะดูเมื่อเรามีข้อมูลที่จะส่ง
ขั้นตอนที่ 2: ตอนนี้ มาสร้างแดชบอร์ดกัน.
ในลักษณะเดียวกับที่เราสร้างฟีด เราจะสร้างแดชบอร์ดใหม่ ฉันจะเรียกแดชบอร์ดของฉันว่า 'อินเทอร์เฟซตัวจับเวลา' เพราะนั่นคือสิ่งที่แดชบอร์ดของเราจะเป็น: อินเทอร์เฟซที่มีปุ่มสำหรับควบคุมตัวจับเวลาของเรา
ขั้นตอนที่ 3: รับกุญแจของเรา
หากเราต้องการเชื่อมต่อ Arduino กับฟีด เราจำเป็นต้องได้รับคีย์ Adafruit นี่คือรหัสผ่านลับของคุณที่จะทำให้แน่ใจว่ามีเพียงคุณเท่านั้นที่สามารถเชื่อมต่อกับฟีดของคุณได้
คุณสามารถรับรหัสได้โดยคลิกปุ่มคีย์ AIO สีเหลืองที่ด้านบนขวาของหน้าจอใน Adafruit
เก็บกุญแจนี้ไว้ที่ไหนสักแห่ง เราต้องการมันในภายหลัง
อย่าแชร์คีย์ของคุณ! มิฉะนั้น ผู้ที่มีเจตนาไม่ดีสามารถเชื่อมต่อกับฟีดและอุปกรณ์ของคุณได้
ขั้นตอนที่ 4: เปิดตัวอย่างการอ่านฟีด
ตอนนี้มาเปิด Arduino IDE ของเราและเริ่มขั้นตอนการเข้ารหัส ก่อนอื่นเราต้องติดตั้งไลบรารี Adafruit IO Arduino
ไม่ทราบวิธีการติดตั้งไลบรารี? นี่คือคำแนะนำที่ดีโดย Adafruit: Arduino Libraries
Adafruit มีตัวอย่างที่สร้างไว้ล่วงหน้ามากมายให้เราใช้และเรียนรู้ หนึ่งในตัวอย่างเหล่านี้คือ: adafruitio_21_feed_read คุณสามารถหาตัวอย่างนี้ได้ที่นี่: ไฟล์ - ตัวอย่าง Adafruit IO Arduino adafruitio_21_feed_read
(ขออภัยอินเทอร์เฟซภาษาดัตช์ของฉันในภาพ)
ขั้นตอนที่ 5: มาตั้งค่าการเชื่อมต่อของเรากันเถอะ
หากคุณเปิดภาพร่าง adafruitio_21_feed_read ได้สำเร็จ คุณจะเห็น 2 แท็บในภาพสเก็ตช์ของคุณ: adafruitio_21_feed_read และ config.h ร่างนี้จัดทำขึ้นเพื่อให้เราสามารถเชื่อมต่อกับฟีดที่เราทำในขั้นตอนที่ 1
ในการเชื่อมต่อกับฟีดนี้ เราจำเป็นต้องกรอกรายละเอียดเล็กน้อยเกี่ยวกับ WiFi และบัญชี Adafruit ของเรา
ไปที่ config.h กัน เราจะกรอกรายละเอียดดังต่อไปนี้:
ชื่อผู้ใช้ Adafruit ของคุณ:
#define IO_USERNAME "joopert"
รหัส Adafruit ของคุณ:
#define IO_KEY "1234567890abcdefghijklmnop"
ชื่อ WiFi ของคุณ:
#define WIFI_SSID "MyWifi"
และรหัสผ่าน WiFi ของคุณ:
#define WIFI_PASS "aVerySecretPassword"
กลับไปที่แท็บ adafruitio_21_feed_read แล้วกรอก:
ชื่อผู้ใช้ Adafruit ของคุณ… อีกครั้ง:
#define FEED_OWNER "joopert"
และสุดท้ายชื่อฟีดของคุณ (จากฟีดที่เราทำในขั้นตอนที่ 1):
AdafruitIO_Feed *sharedFeed = io.feed("ตัวจับเวลา", FEED_OWNER);
ขั้นตอนที่ 6: ตรวจสอบการเชื่อมต่อกับ Adafruit IO
เพื่อตรวจสอบว่าขั้นตอนที่เราดำเนินการก่อนหน้านี้ดำเนินการอย่างถูกต้องหรือไม่ เราจะอัปโหลดภาพร่างของเราไปยัง NodeMCU หากคุณเปิดจอภาพแบบอนุกรม ควรมีลักษณะเหมือนภาพด้านบน ขั้นแรก จอภาพแบบอนุกรมแสดงให้คุณเห็นว่ากำลังพยายามเชื่อมต่อกับ WiFi และ Adafruit ของคุณ ถ้าเสร็จแล้วก็ควรพูดว่า:
เชื่อมต่อ Adafruit IO แล้ว
นี่เป็นข่าวดี! ตอนนี้เราสามารถเริ่มเพิ่มฟังก์ชันการทำงานให้กับตัวจับเวลาของเราได้แล้ว…
ขั้นตอนที่ 7: ให้ LED
ตอนนี้ได้เวลาเปิดแถบ LED ของเราแล้ว!
เชื่อมต่อแถบ LED ของคุณกับ PIN D5 (หากคุณไม่พบ D5 ให้เชื่อมต่อกับ PIN อื่นและเปลี่ยน LED_PIN ในรหัส)
กำหนดแถบ LED
รหัสต่อไปนี้จะเพิ่มไลบรารี NeoPixel (เรียนรู้เพิ่มเติมเกี่ยวกับไลบรารีนี้ที่นี่: https://learn.adafruit.com/adafruit-neopixel-uberguide/arduino-library-use) และทำให้แน่ใจว่า Arduino ของเรารู้ว่าแถบ LED ของเราอยู่ที่ไหนและ มีไฟกี่ดวง หากแถบ LED ของคุณมีข้อกำหนดต่างกัน ให้เปลี่ยนในโค้ด
เพิ่มรหัสต่อไปนี้เหนือการตั้งค่าโมฆะ ():
// ตั้งค่าการเชื่อมต่อ NeoPixel#include #ifdef _AVR_ #include #endif
#define LED_PIN D5 // แถบ LED เชื่อมต่อกับที่ไหน
#define LED_COUNT 30 // มีกี่พิกเซล?
#define BRIGHTNESS 50 // ความสว่าง NeoPixel, 0 (นาที) ถึง 255 (สูงสุด)
Adafruit_NeoPixel แถบ (LED_COUNT, LED_PIN, NEO_GRB + NEO_KHZ800);
เริ่มต้นแถบ LED
ตอนนี้ เราจะเริ่มต้นแถบ LED และตั้งค่าความสว่าง (ความสว่างเพิ่มจาก 0 นาทีเป็น 255 สูงสุด แต่ฉันแนะนำว่า 50… 255 สว่างจริงๆ)
เพิ่มรหัสต่อไปนี้ในการตั้งค่าโมฆะ ():
แถบ.begin(); // เริ่มต้นวัตถุแถบ NeoPixel (REQUIRED)strip.show(); // ปิดพิกเซลทั้งหมด ASAP strip.setBrightness(50); // ตั้งค่าความสว่างเป็นประมาณ 1/5 (สูงสุด = 255)
ledsOn(); // เรียกใช้ฟังก์ชันเพื่อเปิดไฟ LED แต่ละดวงทีละดวง
เปิดไฟ
บางทีคุณอาจสังเกตเห็นแล้วว่าเรากำลังเรียกใช้ฟังก์ชันที่ยังไม่มีอยู่ ซึ่งจะเป็นส่วนต่อไปของการเข้ารหัส หากเราต้องการเปิดไฟ เราต้องสร้าง 'for loop' ที่จะเปิดไฟ LED แต่ละดวงทีละดวง (ไม่รู้ว่า for loop คืออะไร ลองดูที่นี่: www.arduino.cc/reference/ en/language/structure/control-structure/for/).
ตอนนี้เรากำลังจะสร้างฟังก์ชัน: ledsOn();
เพิ่มรหัสต่อไปนี้ด้านล่างเป็นโมฆะ handleMessage():
เป็นโมฆะ ledsOn () { สำหรับ (int i = 0; i < strip.numPixels (); i++) { // สำหรับแต่ละพิกเซลในแถบ … strip.setPixelColor (i, 0, 0, 255); // ตั้งค่าสีของพิกเซลเป็น blue strip.show(); // อัปเดตแถบให้ตรงกัน } }
ที่อัพโหลด
ตอนนี้เป็นส่วนที่สนุกแล้ว มาอัปโหลดโค้ดของเราไปที่ NodeMCU… หากทุกอย่างถูกต้องแล้วแถบ LED ของคุณควรเปลี่ยนเป็นสีน้ำเงินทั้งหมด!
ไม่มีพิกเซลปรากฏขึ้นหรือไม่: คุณเชื่อมต่อแถบกับ PIN ที่ถูกต้องหรือไม่ หรือบางทีการเชื่อมต่ออินเทอร์เน็ตของคุณอาจขาดหายไป
มีบางพิกเซลเท่านั้นที่ไม่แสดงหรือไม่: ตรวจสอบว่าคุณกำหนดจำนวนพิกเซลที่เหมาะสมหรือไม่!
ขั้นตอนที่ 8: เพิ่มเวลาให้กับตัวจับเวลา
ตอนนี้เราจะทำให้แน่ใจว่าตัวจับเวลาของเรา… ก็… ครั้ง บางอย่าง
มีหลายวิธีในการกำหนดเวลากับ Arduino วิธีหนึ่งคือการหน่วงเวลา () ซึ่งจะหยุดการประมวลผลของบอร์ดของเราตามระยะเวลาที่กำหนด เราจะไม่ใช้สิ่งนี้เนื่องจากโดยทั่วไป Arduino ของเราจะหยุดทำงานในช่วงดีเลย์ และเราต้องการให้บอร์ดของเราอัปเดตเป็นประจำ ดังนั้นเราจะใช้ Millis() ซึ่งเป็นวิธีการจับเวลาที่สวยงามกว่าใน Arduino โดยที่ Millis() ยังคงเรียกใช้โค้ดระหว่างช่วงเวลาได้
หากคุณสนใจวิธีการทำงาน คุณสามารถดูบทความนี้:
มาเพิ่มรหัสสำหรับ Millis():
ใส่รหัสนี้เหนือการตั้งค่าโมฆะ ()
ก่อนหน้าMillis แบบยาวที่ไม่ได้ลงนาม = 0; // จะเก็บครั้งสุดท้ายที่แถบ LED ได้รับการปรับปรุง ช่วงเวลา = 1,000; // ช่วงเวลาของตัวจับเวลาของเรา (มิลลิวินาที)
และใส่รหัสนี้ใน void loop():
ไม่ได้ลงนามยาว currentMillis = millis();// เริ่ม TIMER RYTHM ********************************************* ********* ถ้า (currentMillis - PreviousMillis >= ช่วง) { PreviousMillis = currentMillis;
// สิ้นสุด TIMER RYTHM ********************************************* ***********
สิ่งที่เราเพิ่งทำคือสร้างจังหวะสำหรับแถบ LED ของเราเพื่อปิด LED ในขั้นตอนต่อไป เราจะเพิ่มโค้ดเพื่อทำสิ่งนั้น
ขั้นตอนที่ 9: นับถอยหลัง
ในขั้นตอนนี้: เราจะสร้างฟังก์ชันที่จะทำให้แน่ใจว่าในแต่ละวินาที (หรือช่วงเวลาใดก็ตามที่คุณตั้งไว้) เราจะปิด LED หนึ่งดวงที่ส่วนท้ายของแถบจนกว่าไฟ LED ทั้งหมดของเราจะปิด
เราจะสร้าง 'int' ที่ด้านบนเรียกว่า 'leds' สิ่งนี้จะบอกตัวจับเวลาของเราในภายหลังว่ายังต้องปิดไฟ LED กี่ดวง
เพิ่มรหัสต่อไปนี้เหนือการตั้งค่าโมฆะ ():
int leds = LED_COUNT-1; // บอกจำนวนพิกเซลที่ควรสว่าง
ตอนนี้เรามาเพิ่มฟังก์ชัน 'timer();' กัน ซึ่งจะเป็นการดับไฟทุก ๆ วินาที
เพิ่มรหัสต่อไปนี้ด้านล่างเป็นโมฆะ ledsOn():
ตัวจับเวลาเป็นโมฆะ () { strip.setPixelColor (ไฟ LED, 0, 0, 0);
ถ้า (ไฟ LED > -1) { ไฟ LED--; } อื่น ๆ { กะพริบตา (); } }
เราต้องการให้ข้อเสนอแนะแก่ผู้ใช้ว่าตัวจับเวลาเสร็จสิ้นหลังจากไฟทั้งหมดดับลง ด้วย 'blinkie();' ไฟ LED จะกะพริบเป็นสีแดงหลังจากตั้งเวลาเสร็จ!
เพิ่มรหัสต่อไปนี้เหนือการตั้งค่าโมฆะ ():
int กะพริบสถานะ = 1; // บอกไฟกระพริบ (); ทำงานไม่ว่าแสงควรจะเปิดหรือปิด
เพิ่มรหัสต่อไปนี้ด้านล่างตัวจับเวลาเป็นโมฆะ ():
เป็นโมฆะ blinkie () { ถ้า (blinkStatus == 1) {
กะพริบสถานะ = 0; แถบ. clear(); } อื่น ๆ { blinkStatus = 1; for (int i = 0; i < strip.numPixels(); i++) { // สำหรับแต่ละพิกเซลในแถบ… strip.setPixelColor(i, 255, 0, 0); // ตั้งค่าสีของพิกเซล (ใน RAM) strip.show(); // อัปเดตแถบให้ตรงกัน } } } }
สุดท้ายเราต้องเรียกใช้ฟังก์ชันใน void loop();, จำ TIMER RYTHM ที่เราเพิ่มในขั้นตอนที่ 8 ได้หรือไม่ ในคำสั่ง if เราจะเรียกฟังก์ชัน timer();
TIMER RYTHM ควรมีลักษณะดังนี้:
// เริ่ม TIMER RYTHM ********************************************* *********
ถ้า (currentMillis - PreviousMillis >= ช่วง) { PreviousMillis = currentMillis; จับเวลา (); strip.show();} // สิ้นสุด TIMER RYTHM ************************************** ******************
ตอนนี้อัปโหลดรหัสนี้!
ตอนนี้แถบ LED ของคุณควรปิด LED 1 ดวงในแต่ละวินาทีและกะพริบเป็นสีแดงเมื่อเสร็จสิ้น…
ตอนนี้มาทำการควบคุมระยะไกลสำหรับคนรักแม่กันเถอะ!
ขั้นตอนที่ 10: ทำให้เป็นรีโมทคอนโทรล: ตอนที่ I
เรามีตัวจับเวลา ไม่เป็นไรและดูดี แต่ฉันสัญญากับคุณว่าคุณจะสามารถควบคุมมันด้วยโทรศัพท์ของคุณใช่ไหม เข้าสู่ขั้นตอนสุดท้ายของโครงการของเรา: ทำให้ตัวจับเวลาควบคุมด้วยรีโมท
ยังเปิดแท็บ Adafruit ของคุณอยู่ไหม กลับไปที่ io.adafruit.com และไปที่แดชบอร์ดอินเทอร์เฟซตัวจับเวลาของเราและสร้างบล็อกใหม่: TOGGLE
- เชื่อมต่อการสลับกับฟีด TIMER
- ตั้งค่า ON เป็น: 1
- ตั้งค่า OFF เป็น: 0
เหตุผลก็คือ Adafruit ไม่ได้ส่งข้อมูลข้อความไปยัง NodeMCU ของเรา แต่จะส่งเฉพาะตัวเลขเท่านั้น
คุณยังสามารถตั้งชื่อ Toggle ได้หากต้องการ บางที: 'สวิตช์เปิด/ปิด'
ตอนนี้กลับไปที่ Arduino IDE
เพื่อให้แน่ใจว่ารหัสของเราเป็นปัจจุบัน ให้อัปโหลดรหัสของเราอีกครั้ง
เปิดการตรวจสอบซีเรียลเมื่ออัปโหลดเสร็จแล้ว และกด TOGGLE บนแดชบอร์ด Adafruit ของเราสองสามครั้ง ตอนนี้เราควรจะเห็นสิ่งนี้ปรากฏขึ้นในมอนิเตอร์แบบอนุกรมของเรา:
ได้รับ <- 0 ได้รับ <- 1 ได้รับ <- 0 ได้รับ <- 1 ได้รับ <- 0
ซึ่งหมายความว่าเราสามารถส่งการควบคุมไปยัง NodeMCU ของเราได้จริง!
หากคุณไม่ได้รับข้อความเหล่านี้ ให้ตรวจสอบว่าข้อมูล Adafruit ของคุณใน config.h ยังคงถูกต้องหรือไม่
ขั้นตอนที่ 11: ทำให้เป็นรีโมทคอนโทรล: ตอนที่ II
ตอนนี้เหลือแค่ทำอะไรกับการควบคุมที่ได้รับของเรา
ในการทำเช่นนั้น เราต้องแก้ไข TIMER RYTHM if คำสั่งใน void loop(); นิดหน่อย.
เราจะบอก NodeMCU ว่าควรเริ่มตัวจับเวลาเมื่อเราได้รับ '1' (ซึ่งหมายถึง: เปิด) จาก Adafruit เท่านั้น
มาเก็บข้อมูลที่อดาฟรุ๊ตส่งมาให้กันก่อน
เพิ่มรหัสต่อไปนี้เหนือการตั้งค่าโมฆะ ():
int adaData; // รวบรวมข้อมูลที่ AdaFruit ส่งให้เรา
มาเก็บข้อมูลกันเถอะ
เพิ่มรหัสต่อไปนี้ภายใน void handleMessage():
adaData = data->toInt();
มาเปลี่ยน void loop();
TIMER RYTHM ควรมีลักษณะดังนี้:
// เริ่ม TIMER RYTHM ********************************************* *********if (currentMillis - PreviousMillis >= ช่วง) { PreviousMillis = currentMillis; ถ้า (adaData == 0) { Serial.println ("ฉันไม่ได้ทำงาน"); } else if (adaData == 1) { ตัวจับเวลา (); } strip.show(); } // สิ้นสุด TIMER RYTHM ******************************************** ************
อัปโหลดรหัสของคุณ…
ตอนนี้คุณควรจะสามารถเปิดและปิดตัวจับเวลาได้โดยใช้สวิตช์ใน Adafruit!
ขั้นตอนที่ 12: เล่นไปรอบ ๆ! เราเสร็จแล้ว…หรือเรา?
ตอนนี้คุณควรมีตัวจับเวลาระยะไกลที่ทำงานได้อย่างสมบูรณ์! ถ้านั่นคือคุณ ขอบคุณที่มาร่วมโครงการนี้!
หากคุณต้องการดำเนินการต่ออีกสักหน่อย ในไม่กี่ขั้นตอนถัดไป เราจะเพิ่มปุ่ม RESET สำหรับตัวจับเวลาของเรา!
ขั้นตอนที่ 13: พิเศษ: สร้างปุ่มชั่วขณะ
กลับไปที่แดชบอร์ดของเรากัน ตอนนี้เราต้องการสร้างบล็อกใหม่อีกครั้ง
- สร้างปุ่มชั่วขณะ
- เชื่อมต่อกับฟีด 'ตัวจับเวลา'
- ตั้งค่าการกดเป็น: 2
- ลบค่าการปล่อย
- ให้สีสวย!
สะดวก ปุ่มชั่วขณะนั้นเรียกว่า 'รีเซ็ต' แล้ว!
เมื่อคุณสร้างบล็อกนี้แล้ว ให้ทดสอบปุ่มนี้ หากคุณได้รับ:
ได้รับ <- 2
ในจอภาพแบบอนุกรมของคุณ
หากคุณไม่เห็นข้อความนี้ ให้ลองอัปโหลดภาพสเก็ตช์อีกครั้ง
ขั้นตอนที่ 14: พิเศษ: เพิ่มฟังก์ชันรีเซ็ต
ในการทำให้ปุ่มรีเซ็ตทำอะไรก็ได้ เราจำเป็นต้องเพิ่มฟังก์ชันที่รีเซ็ต LED ทั้งหมดกลับเป็นสถานะเดิม
เพิ่มรหัสต่อไปนี้ด้านล่าง void blinkie():
เรียกใช้ซ้ำเป็นโมฆะ () { leds = LED_COUNT; ledsOn(); }
เหลือเพียงการเรียกใช้ฟังก์ชันของเรา เพื่อที่เราต้องเปลี่ยน TIMER RYTHM เป็นครั้งสุดท้าย
TIMER RYTHM ควรมีลักษณะดังนี้:
// เริ่ม TIMER RYTHM ********************************************* *********if (currentMillis - PreviousMillis >= ช่วง) { PreviousMillis = currentMillis ถ้า (adaData == 0) { Serial.println ("ฉันไม่ทำงาน"); } else if (adaData == 1) { ตัวจับเวลา (); } else if (adaData == 2) { เรียกใช้ซ้ำ (); } strip.show(); } // สิ้นสุด TIMER RYTHM ******************************************** ************
อัปโหลดรหัสของคุณ…
ตอนนี้คุณควรจะสามารถรีเซ็ตตัวจับเวลาได้ด้วยการกดปุ่ม!
แนะนำ:
บอทโทรเลขด้วย NodeMCU (ESP8266): 3 ขั้นตอน
Telegram Bot พร้อม NodeMCU (ESP8266): ต้องการบอทเพื่อแจ้งเตือนจากระบบของคุณหรือไม่? หรือทำอะไรเพียงแค่ส่งข้อความ? Telegram Bot คือทางออกของคุณ! ในบทช่วยสอนนี้ ฉันจะใช้ Telegram Web และ BotFather เพื่อสร้าง bot ของฉัน
การควบคุม Led ผ่านแอพ Blynk โดยใช้ Nodemcu ทางอินเทอร์เน็ต: 5 ขั้นตอน
การควบคุม Led ผ่านแอพ Blynk โดยใช้ Nodemcu ทางอินเทอร์เน็ต: สวัสดีทุกคน วันนี้เราจะแสดงให้คุณเห็นว่าคุณสามารถควบคุม LED โดยใช้สมาร์ทโฟนผ่านอินเทอร์เน็ตได้อย่างไร
วิธีเชื่อมต่อ NodeMCU ESP8266 กับฐานข้อมูล MySQL: 7 ขั้นตอน
วิธีเชื่อมต่อ NodeMCU ESP8266 กับฐานข้อมูล MySQL: MySQL เป็นระบบจัดการฐานข้อมูลเชิงสัมพันธ์ (RDBMS) ที่ใช้กันอย่างแพร่หลายซึ่งใช้ภาษาคิวรีที่มีโครงสร้าง (SQL) ในบางจุด คุณอาจต้องการอัปโหลดข้อมูลเซ็นเซอร์ Arduino/NodeMCU ไปยังฐานข้อมูล MySQL ในคำแนะนำนี้ เราจะดูวิธีการเชื่อมต่อ
NodeMCU Lua บอร์ด 6$ ราคาถูกพร้อมการบันทึกอุณหภูมิและความชื้น MicroPython, Wifi และสถิติมือถือ: 4 ขั้นตอน
NodeMCU Lua ราคาถูก 6$ Board พร้อม MicroPython Temperature and Humidity Logging, Wifi และ Mobile Stats: โดยทั่วไปแล้วจะเป็นสถานีตรวจสภาพอากาศบนคลาวด์ คุณสามารถตรวจสอบข้อมูลในโทรศัพท์ของคุณหรือใช้โทรศัพท์เป็นจอแสดงผลสด ด้วยอุปกรณ์ NodeMCU คุณสามารถบันทึกข้อมูลอุณหภูมิและความชื้นภายนอกได้ , ในห้อง, เรือนกระจก, ห้องปฏิบัติการ, ห้องเย็น หรือที่อื่นๆ ได้ครบ
พอร์ต USB ของ NODEMcu ไม่ทำงาน? อัปโหลดโค้ดโดยใช้โมดูล USB เป็น TTL (FTDI) ใน 2 ขั้นตอน: 3 ขั้นตอน
พอร์ต USB ของ NODEMcu ไม่ทำงาน? อัปโหลดรหัสโดยใช้โมดูล USB เป็น TTL (FTDI) ใน 2 ขั้นตอน: เหนื่อยกับการเชื่อมต่อกับสายไฟจำนวนมากจากโมดูล USB เป็น TTL ไปยัง NODEMcu ให้ปฏิบัติตามคำแนะนำนี้เพื่ออัปโหลดรหัสในเวลาเพียง 2 ขั้นตอน หากพอร์ต USB ของ NODEMcu ใช้งานไม่ได้ อย่าเพิ่งตกใจ เป็นเพียงชิปไดรเวอร์ USB หรือขั้วต่อ USB