สารบัญ:
วีดีโอ: Bright Ball IOT: 8 ขั้นตอน
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-13 06:58
โปรเจ็กต์นี้อิงจากการควบคุมผ่านแอป Blynk ซึ่งเป็นเมทริกซ์ของนีโอพิกเซล เนื่องจากหลอดไฟธรรมดาไม่เพียงพอ ฉันจึงเพิ่มนาฬิกาและเซ็นเซอร์อุณหภูมิและความชื้น แต่เรามองเห็นในรายละเอียดแล้ว
ขั้นตอนที่ 1: ส่วนประกอบ
1: Arduino R3
16: NeoPixel WS2812B
1: LCD 16x2 พร้อมโมดูล I2C
1: RTC (นาฬิกาเรียลไทม์) DS 1307
1: DHT 22 (เซ็นเซอร์อุณหภูมิและความชื้น)
1: DC DC Converter แบบปรับได้สเต็ปดาวน์
1: ตัวควบคุมเชิงเส้น LM1117
1: ESP5266-01
3: สวิตช์ปุ่ม
1: ผู้เปลี่ยนเส้นทาง
1: Diffuser สำหรับโคมไฟลูกบอลสีขาวโอปอลภายนอก
1: กล่องแยกไฟฟ้า
1: ตัวต้านทาน 220 โอห์ม
1: ตัวต้านทาน 510 โอห์ม
1: ตัวต้านทาน 1K โอห์ม
1: ตัวต้านทาน 470 โอห์ม
3: ไดโอด 1N4007
สายไฟ
ขั้นตอนที่ 2: นำเมทริกซ์
ฉันสร้างอาร์เรย์ nepixel ขนาดเล็กดังในแผนภาพด้านล่าง มันถูกควบคุมโดย Arduino ด้วยไลบรารี "Adafruit_NeoPixel.h" มันสว่างมาก และไม่แนะนำให้มองเมื่อเปิดไฟ LED
ขั้นตอนที่ 3: เซ็นเซอร์ DHT
ฉันใช้เซ็นเซอร์ DHT 22 เพื่อตรวจสอบสภาพแวดล้อม การเปลี่ยนแปลงสีของ LED แสดงถึงอุณหภูมิ ในรูปแบบ 12 สี ตั้งแต่สีน้ำเงิน (เย็น) ไปจนถึงสีแดง (ร้อน)
ขั้นตอนที่ 4: นาฬิกา
นาฬิกาถูกควบคุมโดย RTC ฉันใช้ DS1307 แต่มันสามารถใส่ DS3231 ได้สำหรับรายละเอียด โปรดดู "เวลาตั้งนาฬิกา" ซึ่งตรงกันข้ามกับโครงการนั้น ฉันถอดตัวต้านทานแบบดึงลงที่ปุ่ม P1, P2 และ P3 ซึ่งใช้ในการปรับเวลาและฉันได้ทำการเปลี่ยนแปลงเล็กน้อยในรหัส
ขั้นตอนที่ 5: IOT
Arduino เชื่อมต่อกับอินเทอร์เน็ตผ่าน ESP8266 ซึ่งจะเชื่อมต่อกับ App Blynk
คุณสามารถเปลี่ยนสีของหลอดไฟผ่านโทรศัพท์ได้ตามอารมณ์ โดยสีจะถูกกำหนดดังนี้:
V1 = สีแดง
V2 = สีเขียว
V3 = บลู
V5 = สีเหลือง
V6 = สีม่วง
V7 = สีฟ้า
V8 = สีขาว
V4 = อุณหภูมิ
ขั้นตอนที่ 6: โครงการไฟฟ้า
ดังที่คุณเห็นจากแผนภาพการเดินสายไฟ หัวใจของวงจรคือ "Arduino" ในกรณีของฉัน ฉันใช้ "Arduino Nano"
สำหรับพิน A4 และ A5 นั้นเชื่อมต่อกับ SDA และ SCL ของจอแสดงผล I2C 16x2 และ RTC
เซ็นเซอร์อุณหภูมิและความชื้นเชื่อมต่อกับพิน 4 ผ่านตัวต้านทานดึงขึ้น
Diverter ที่เชื่อมต่อกับพิน 12 ของ Arduino เปลี่ยนจากโหมด IOT เป็นการเล่นแสงที่ดี เรียกว่า "รุ้ง"
ในการจ่ายไฟให้กับ ESP8266 ฉันใช้ตัวควบคุม LM1117 ในขณะที่สำหรับการลดแรงดันไฟฟ้าที่ RTX ฉันใช้ตัวแบ่งตัวต้านทาน (R1-R2)
กลุ่ม D1, D2, D3 มีฟังก์ชั่นป้องกัน:
- D1 ป้องกันการกลับขั้ว
- D2 ในกรณีที่เราเปลี่ยนโค้ด Arduino จะป้องกันการป้อน Neopixel matrix
- D3 ลด 5.6 โวลต์เป็น 5 โวลต์
ขั้นตอนที่ 7: รหัส Arduino
รหัสจาก create.arduino.cc:
ห้องสมุด:
- Wire.h – Arduino IDE
- RTClib.h -
- LiquidCrystal_I2C.h -
- DHT.h -
- Adafruit_NeoPixel.h -
- ESP8266_Lib.h -
- BlynkSimpleShieldEsp8266.h -
พารามิเตอร์ที่จะตั้งค่าในรหัส:
- char auth = "YourAuthToken"; ป้อนรหัสโทเค็นของแอพ Bynk
- Blynk.begin(รับรองความถูกต้อง, wifi, "ssid", "รหัสผ่าน"); ป้อน SSID และรหัสผ่านสำหรับเราเตอร์ Wi Fi. ของคุณ
ขั้นตอนที่ 8: การใช้ประโยชน์
เนื่องจากแมวของฉันไม่ชอบต้นคริสต์มาส ฉันจึงใช้โคมไฟนี้ใน "โหมดสายรุ้ง" ในช่วงวันหยุด