ไฟเดสก์ท็อป RGB ที่ควบคุมจากระยะไกล: 5 ขั้นตอน
ไฟเดสก์ท็อป RGB ที่ควบคุมจากระยะไกล: 5 ขั้นตอน
Anonim
ไฟเดสก์ท็อป RGB ที่ควบคุมจากระยะไกล
ไฟเดสก์ท็อป RGB ที่ควบคุมจากระยะไกล
ไฟเดสก์ท็อป RGB ที่ควบคุมจากระยะไกล
ไฟเดสก์ท็อป RGB ที่ควบคุมจากระยะไกล

โปรเจ็กต์นี้สาธิตการใช้ firebase เป็นเซิร์ฟเวอร์สำหรับควบคุมและจัดการไฟ LED ที่ด้านหลังโต๊ะของฉัน

เสบียง

  • อีเอสพี8266
  • แถบไฟ LED WS2812B.
  • แหล่งจ่ายไฟที่มีพิกัดอย่างน้อย 10W@5V
  • แอพสำหรับควบคุมแถบ LED

ขั้นตอนที่ 1: รับแถบในตำแหน่งที่เหมาะสม

รับแถบในสถานที่ที่เหมาะสม
รับแถบในสถานที่ที่เหมาะสม
รับแถบในสถานที่ที่เหมาะสม
รับแถบในสถานที่ที่เหมาะสม
รับแถบในสถานที่ที่เหมาะสม
รับแถบในสถานที่ที่เหมาะสม

สิ่งแรกคือการนำแถบ LED เข้าที่

ฉันเลือกโต๊ะคอมพิวเตอร์เก่าที่ดูธรรมดาสำหรับโปรเจ็กต์นี้ ดังนั้นฉันจึงใช้เทปเหนียวและแก้ไขแถบนำ WS2812b ของฉันที่ด้านหลังเครื่อง และเชื่อมต่อสาย VCC, GND, DATA ด้วยสายไฟสองสามเส้นตามที่แสดงในรูปภาพ

ขั้นตอนที่ 2: สร้างการเชื่อมต่อเล็กน้อย

สร้างสัมพันธ์เล็กๆ
สร้างสัมพันธ์เล็กๆ

เชื่อมต่อแหล่งจ่ายไฟเข้ากับ ESP8266 [หมายเหตุ* - ฉันใช้บอร์ดที่ใช้สำหรับ Home Automation แต่เราต้องการเพียง ESP8266]

เชื่อมต่อดังนี้:

  • D5 (ขา 14) -> ดาต้าพินของแถบ LED
  • เชื่อมต่อขา GND ของ ESP8266, พาวเวอร์ซัพพลาย, แถบ LED

นั่นสำหรับฮาร์ดแวร์ ตอนนี้เรามาเข้าสู่บอร์ดเข้ารหัสกันเถอะ

ขั้นตอนที่ 3: กฎ Firebase และสคีมาฐานข้อมูล

กฎ Firebase และสคีมาฐานข้อมูล
กฎ Firebase และสคีมาฐานข้อมูล
กฎ Firebase และสคีมาฐานข้อมูล
กฎ Firebase และสคีมาฐานข้อมูล

ฐานข้อมูล Schema นั้นเรียบง่าย

  • (ผู้ใช้)

    • neopixels

      • 0

        {r:12, g:220, b:120}

      • 1

        {ร:112 ก.:150 ข:200}

    • โทเค็น

      • สาธารณะ: {token}
      • ส่วนตัว: {token}

สคีมานี้แสดงถึงโครงสร้างอย่างง่ายของรายการค่า Led

ส่วนโทเค็นแสดงถึงระบบการตรวจสอบสิทธิ์อย่างง่ายที่ส่วนสาธารณะและส่วนตัวตรงกันหากตรวจสอบสิทธิ์

ขั้นตอนที่ 4: รหัสสำหรับการติดตั้ง

รหัสสำหรับการติดตั้ง
รหัสสำหรับการติดตั้ง
รหัสสำหรับการติดตั้ง
รหัสสำหรับการติดตั้ง
รหัสสำหรับการติดตั้ง
รหัสสำหรับการติดตั้ง

รหัสค่อนข้างอธิบายตนเอง

  1. รวมไลบรารีที่จำเป็น
  2. ตั้งค่าโทเค็นการพิสูจน์ตัวตนของฐานข้อมูล
  3. ระบุข้อมูลรับรอง WiFI
  4. ตั้งค่าสตรีม firebase เป็นการเปลี่ยนแปลง neopixels และเริ่มรับฟังการเปลี่ยนแปลงในข้อมูลที่เกิดจากฝั่งไคลเอ็นต์
  5. ในลูปให้ตรวจสอบเหตุการณ์และส่งข้อมูลขาเข้าไปยังฟังก์ชันตัวช่วย
  • ฟังก์ชันตัวช่วยจะดึงข้อมูลและตรวจสอบว่าการอัพเดตนีโอพิกเซลถูกทริกเกอร์สำหรับ a:

    • LED เดียว
    • ช่วงของตัวเลข LED
    • ไฟ LED ทั้งหมด

ขั้นตอนที่ 5: แอปห้องอัตโนมัติ

Image
Image
แอพห้องอัตโนมัติ
แอพห้องอัตโนมัติ
แอพห้องอัตโนมัติ
แอพห้องอัตโนมัติ
แอพห้องอัตโนมัติ
แอพห้องอัตโนมัติ

ฉันสร้างแอพชื่อ "ห้องอัตโนมัติ" ใน Flutter โดยใช้ภาษาการเขียนโปรแกรม Dart ซึ่งควบคุมไฟ LED

นี่คือตัวอย่างผลลัพธ์ของสิ่งนั้น

  1. ก่อนอื่น เข้าสู่ระบบด้วยข้อมูลประจำตัวในกรณีของฉันคือ (xritzx)
  2. เลือกสีและช่วงและกดอัปเดต
  3. หรืออาจระบายสีทั้งช่วงโดยเลือก -1

แนะนำ: