I am currently exploring a project that allows me to control high-power RGB LEDs using PWM from an ESP32 microcontroller. In this way, I plan to create a simple LED panel for canopy illumination that can provide multispectral light outputs using PWM from the MCU.
For starters, I tried testing one color strip by having three of these high power LEDs in series powered using a XL4015 buck converter in current control with a supply of 12 V and a constant 650 mA from the buck (I am using a 12 V, 20 A power supply in this case).
For the PWM, I came across AOD4184A power N-MOSFET modules that can easily interface with 3.3-5 V logic to drive about 40 V load. I chose this since I wanted to deviate from customizing my own drivers for now and interface the high-power LEDs using off-the-shelf modules.
I also added a PC817C optocoupler for isolating the main circuit from the MCU. In this case, I am planning to multiply this configuration by having them in parallel with each strip having its own buck converter, MOSFET, and optocoupler module to somehow be able to build an LED panel that I can easily interface with the ESP32 by probably having the modules on a prototype PCB to perhaps creating multiple channels to address each RGB color. The current circuit design I have for now is shown below.
The RGB LEDs have forward voltage ranges of 2.2-2.6 V for the red and 3.2-3.6 V for both green and blue LEDs that can be driven at around 600-700 mA forward current. I am also planning to extend the series connection to six in series and having two of them in parallel using one buck converter using up about 3.9 A from the buck since it can handle 5 A load current based on the datasheet.
650 mA x 3 (RGB) x 2 (parallel) = 3.9 A
This would be the case once I get my hands on the 24 V supply I've ordered although for now I am just using the 12 V I have and scale afterwards.
At this point, I am quite lost in appropriately completing the circuit. My questions are as follows:
1.) Is the present circuit for driving an individual series of LEDs good enough? I looked into papers designing their own LED drivers and with my current skills, I could only adapt to having off-the-shelf components and a basic-to-novice electronics design with prototype PCBs.
3.) As mentioned also earlier, one RGB LED strip would mean three individual strips in parallel, hence, making up triple the mentioned forward current. Using 650 mA just for starters, would having the three wirings in parallel ensure stability since I am individually modulating them with the MOSFET module? I've read some articles and lectures on using a transistor to answer this but I am still lost with this concept and I am not sure how I can possibly integrate that along with the other modules.
I hope I am clear with my intended goal here and I am still a bit novice in such components but I do have experience in tinkering with basic circuit designs for quite a while now, mostly resistor based networks, low-powered switching circuits, and logic-level interfacing with sensors and actuators using microcontrollers. I am quite nervous about dealing with high-power components especially on safety issues and possible problems I might encounter with my design since I've mostly worked around low-level applications.
Any further suggestions or comments would be very much appreciated along with the answers to the problems I am still currently researching and exploring.