สารบัญ:

โคมไฟ LED หลากสี Accu พร้อมสภาพอากาศ: 6 ขั้นตอน
โคมไฟ LED หลากสี Accu พร้อมสภาพอากาศ: 6 ขั้นตอน

วีดีโอ: โคมไฟ LED หลากสี Accu พร้อมสภาพอากาศ: 6 ขั้นตอน

วีดีโอ: โคมไฟ LED หลากสี Accu พร้อมสภาพอากาศ: 6 ขั้นตอน
วีดีโอ: วิธีติดตั้งหลอด LED B1, C6, C6s, C6F ขั้ว H4 by BananaLED 2024, กรกฎาคม
Anonim
Image
Image

ถึงทุกคน

มีโครงการที่มีหลอดไฟ LED WS2812 แบบชาร์จไฟของ Accu ซึ่งสามารถควบคุมโดย Wifi กับอุปกรณ์ที่รองรับเบราว์เซอร์ใด ๆ รวมทั้งสามารถรวมเข้ากับ Apple Home Kit และควบคุมได้

คุณสมบัติบางอย่าง:

1. Integrated 2xAccu 18650 ให้ ~12 ชั่วโมงการทำงานโดยไม่ต้องใช้พลังงานจากภายนอกในความสว่างระดับกลาง

2. จอแสดงผล OLED 0.96 ในตัว

3. เซ็นเซอร์วัดสภาพอากาศ BME280 สำหรับวัดอุณหภูมิ ความชื้น และความดัน ข้อมูลสามารถแสดงบนเว็บหรือบนจอแสดงผล OLED 0.96 ในตัว

4. พอร์ต Micro USB สำหรับชาร์จไฟ

ขั้นตอนที่ 1: สร้างร่างกาย

สร้างร่างกาย
สร้างร่างกาย

ฉันพิมพ์ชิ้นส่วนทั้งหมดบนเครื่องพิมพ์ 3 มิติของฉันแล้ว

1. ร่างกาย

2. ฝาครอบบอร์ด ESP32 Dev

3. รองรับคอนโทรลเลอร์เครื่องชาร์จ USB ด้วยการออกแบบของฉันเอง ดูSTL. ที่แนบมา

ขั้นตอนที่ 2: ชิ้นส่วนอิเล็กทรอนิกส์

ชิ้นส่วนอิเล็กทรอนิกส์
ชิ้นส่วนอิเล็กทรอนิกส์
ชิ้นส่วนอิเล็กทรอนิกส์
ชิ้นส่วนอิเล็กทรอนิกส์
ชิ้นส่วนอิเล็กทรอนิกส์
ชิ้นส่วนอิเล็กทรอนิกส์

ในการสร้างโครงการนี้คุณต้อง

1. ESP32 ฉันใช้บอร์ด ESP32 dev แล้ว

2. จอแสดงผล OLED ฉันใช้ 0.96 นิ้วภายในชิป SSD1306

3. เซ็นเซอร์ BME280

4. 2x18650 ลิเธียม Accu 3000 mAh/ชม

5. โมดูลเครื่องชาร์จลิเธียม USB

6. DC-DC ก้าวขึ้น

7. สวิตช์ใด ๆ

8. WS2812 LEDs แถบ 120 LEDs ต่อเมตรประมาณ 1.5 m

8. บางสาย

ขั้นตอนที่ 3: การประกอบและเดินสายไฟ

การประกอบและการเดินสายไฟ
การประกอบและการเดินสายไฟ
การประกอบและการเดินสายไฟ
การประกอบและการเดินสายไฟ
การประกอบและการเดินสายไฟ
การประกอบและการเดินสายไฟ

การประกอบสามารถทำได้ด้วยขั้นตอนต่อไปนี้

1. วาง ESP32 บนฝาครอบและต่อสายไฟเข้ากับ PIN ที่เหมาะสม ตามแผนภาพการเดินสาย

2. ใส่ 2x18650 เข้าด้วยกันแล้วบัดกรีให้ขนานกัน

3. ใส่ที่ชาร์จ USB ที่ส่วนรองรับและกว่าด้านล่างของร่างกายให้อยู่ในแนวเดียวกับรูที่เหมาะสม, รูพอดีถ้าจำเป็น

4. ใส่สวิตซ์เข้าอีกรู

5. บัดกรี Accu 18650, สวิตช์, เครื่องชาร์จ USB และ DC-DC ออก (อย่าต่อ ESP32!)

6. หลังจากเปิดเครื่องแล้ว ให้ปรับแรงดันเอาต์พุตของ DC-DC เป็น ~5v โดยใช้โพเทนชิออมิเตอร์ในตัว

7. ใส่จอแสดงผล OLED บนผนัง ปรับรูปสี่เหลี่ยมผืนผ้าบนร่างกายถ้าจำเป็น

8. บัดกรีส่วนอื่น ๆ, ESP 32, จอแสดงผล, เซ็นเซอร์และตัวเชื่อมต่อ WS2812

8. พันแถบ WS2812 บนท่อของร่างกาย ซ่อนสายไฟข้างท่อ

เทคนิคบางอย่าง:

  • ฉันใช้กาวร้อนและ B7000 เพื่อแก้ไขรายการทั้งหมด
  • ตัวต้านทานถูกบัดกรีนอกกล่อง ESP ระหว่างสายไฟโดยตรง
  • การบัดกรีสายไฟทั้งหมดหุ้มด้วยท่อหดแบบเทอร์โม

ขั้นตอนที่ 4: การเขียนโปรแกรม ESP

สำหรับโปรเจ็กต์นี้ ฉันได้ใช้ซอฟต์แวร์สากลที่พัฒนาโดยตัวเอง

โปรดดูหน้า github

มีคำแนะนำเกี่ยวกับวิธีการคอมไพล์และการตั้งค่าทั้งหมด

สำหรับการกำหนดค่าโครงการนี้ได้แนบมาเป็นตัวอย่าง

อย่างไรก็ตาม คุณสามารถทำสิ่งนี้ได้ด้วยตนเองโดยต้องปรับค่าที่จำเป็น

สิ่งที่คุณต้องการตรวจสอบและเปลี่ยนแปลง:1. Services.json - ปรับ "numleds": xxx โดยที่หมายเลข xxx ของ LED จริงของคุณหลังจากตัดแถบ

2. config.json - ตั้งชื่อโฮสต์ที่เหมาะสมสำหรับอุปกรณ์ของคุณ "localhost":

3. config.json - ตั้งค่าที่เหมาะสมสำหรับการเชื่อมต่อ mqtt ของคุณ: "mqtt_host", "mqtt_port":, "mqtt_user", "mqtt_pass", หาก mqtt_host ว่างเปล่า อุปกรณ์จะไม่พยายามเชื่อมต่อกับ mqtt

ขั้นตอนที่ 5: สนุก

สนุก
สนุก
สนุก
สนุก
สนุก
สนุก

ตอนนี้ เมื่อทำทุกอย่างเสร็จแล้ว คุณสามารถเพลิดเพลินกับโคมไฟและจัดการผ่านเว็บอินเทอร์เฟซ

หลอดไฟนี้ฉันยังไม่ได้รวมเข้ากับ Apple Home Kit แต่มันค่อนข้างง่าย คุณต้องเปลี่ยนแปลงไฟล์การกำหนดค่าเล็กน้อย หลังจากนั้น คุณจะสามารถควบคุมอุปกรณ์ผ่าน Apple Home kit. ได้

หากต้องการทำเช่นนั้น โปรดดูโครงการที่คล้ายกัน

www.instructables.com/id/Bed-Room-Lamp-Ws2…

และอ่าน wiki

github.com/Yurik72/ESPHomeController/wiki/…

ขั้นตอนที่ 6: คำถามที่พบบ่อย เคล็ดลับและการแก้ไขปัญหา

ผู้ผลิต WS2812 บางรายไม่ทำงาน เนื่องจากต้องใช้ตรรกะ 5v แต่ ESP32 ให้ 3.3 v

ปัญหานี้สามารถแก้ไขได้โดยทำตามวิธี

  • พยายามลดแรงดันไฟ DC-DC ลงเหลือ 4.7-4.8 V. โดยทั่วไปช่วยได้ 80%
  • ใส่ไดโอดใดๆ ระหว่างเอาต์พุต +5 v และ WS2812 +5v อินพุต ไดโอดจะลดแรงดันลง 0.6-0.8 โวลต์ ช่วยได้

2. ในตัวอย่างและเฟิร์มแวร์ที่ให้มาคาดว่า LED WS2812 จะให้ลำดับ GRB อย่างไรก็ตาม ฉันพบแถบจำนวนมากภายใน RGB ในการแก้ไขปัญหานี้ คุณสามารถเปลี่ยนเฟิร์มแวร์ได้ง่ายๆ เพียงเพิ่มการตั้งค่าใหม่ใน services.json สำหรับ "rgb_startled":1 สำหรับคำจำกัดความบริการ RGBStripController ซึ่งหมายความว่าลำดับ RGB จะเริ่มต้นจาก LED #1 เช่นกันถ้าคุณต่อสายสองแถบในลำดับที่ต่างกัน ตัวอย่างเช่น firts strip คือ 30 Leds GRB และ 60 led RGB ตัวที่สอง คุณสามารถกำหนด "rgb_startled":31 และ lent สองตัวจะทำงานร่วมกันอย่างเหมาะสม

3. เฟิร์มแวร์ ESP32 ที่ได้รับสนับสนุนเซ็นเซอร์สภาพอากาศอื่นอยู่แล้ว เช่น DHT12 ดัลลาส สามารถติดตั้งกับพวกเขาได้อย่างง่ายดายเช่นกัน

แนะนำ: