You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

114 lines
3.1 KiB
Markdown

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

# PowerRGB
This project implements a high-power RGB LED lighting system controlled via WiFi. The lamp uses three 5W LEDs, each regulated by a dedicated LM3404 LED driver and monitored by an INA226 current sensor. An ESP8266 (ESP-12E) microcontroller manages wireless control and power monitoring through a web interface.
Designed as part of a 20242025 power electronics curriculum, the project emphasizes practical hardware design, power regulation, thermal analysis, and embedded software integration.
# WiFi-Controlled RGB Power Lamp
This repository documents the design and implementation of a WiFi-controlled RGB lamp using discrete power electronics and embedded systems. The lamp is based on 3× 5W LEDs (RGB), driven by LM3404 constant-current drivers, monitored by INA226 current sensors, and controlled by an ESP8266 microcontroller via a custom web interface.
---
## Overview
- **Microcontroller**: ESP8266 (ESP-12E)
- **LED Drivers**: LM3404, one per color channel
- **Current Sensors**: INA226 (I²C), one per channel
- **Power Supply**: 24V DC input, regulated to 5V and 3.3V
- **User Interface**: Web application hosted on ESP8266 for RGB control and power monitoring
---
## System Architecture
**Block Diagram:**
![Block Diagram](assets/block_diagram.png)
---
## Web Interface
- RGB control using Vue-based color picker
- Adjustable brightness slider (mapped to PWM)
- Real-time current monitoring (INA226)
- Basic animation mode (rainbow sequence)
**Web UI Screenshot:**
![Web UI](assets/web_ui.png)
---
## PCB Design
- 2-layer FR4 PCB with thermal copper pours and via stitching
- Test points for PWM, switch nodes, and sense lines
- FFC interface for external programmer
- Custom CH340C programming board (USB → UART)
**Top View:**
![PCB Top](assets/pcb_top.png)
**Bottom View:**
![PCB Bottom](assets/pcb_bottom.png)
**3D Render:**
![3D PCB Render](assets/pcb_render.png)
---
## Testing and Analysis
### Thermal Imaging
- Thermal images captured using Fluke thermal camera
- Red LED remains coolest; green and blue require better cooling
- Thermal deviation from calculated values due to PCB/slug bonding
**Thermal Measurement Example:**
![Thermal Image](assets/thermal_camera.png)
### Oscilloscope Measurements
- Switching ripple observed and confirmed within expected range
- DCM ringing noted at switch nodes; no impact on operation
**PWM and Switching Signals:**
![Scope PWM](assets/scope_pwm.png)
---
## Known Issues & Improvements
- **DIM Pin Fix**: Initial circuit caused full brightness during MCU boot. Fixed with pulldown resistor.
- **I²C Line Reversal**: SDA/SCL reversed in layout; resolved via software GPIO reassignment.
- **Thermal Solution**: Future revisions should consider external heatsink or aluminum-core PCB.
---
## Project Files
- `/hardware/` KiCad PCB and schematics
- `/firmware/` ESP8266 Arduino code
- `/docs/` Original PDF report
- `/assets/` Images and diagrams
---
## Full Report
All design calculations, schematics, measurements, and references are available in the final report:
[📄 Project_RubenSchoonbaert.pdf](docs/Project_RubenSchoonbaert.pdf)
---