is it a wheeled device... and it has headlights, or some other type of lighting?
"Hopefully they don't explode!"
It ought to be something to see when it's done, Will. You must post photos when it's done and working.
So, I guess this is to drive a pump diode for some SHG line output. Interesting.
there's no reason this couldn't drive a bank of NUBM44s either
I can reduce losses in the current sense resistor by picking an appropriate resistor and turning down the Vref voltage..
Not that you asked, but there are several problems I can see already. I made a couple of these a few years back, but minus the digital.
No, but I appreciate the input from someone more experienced.
Those traces aren't nearly large enough for 20A. The opamp you've chosen can't supply enough drive current unless you're using a particularly large darlington. At 20A, the darlington will be dissipating a MINIMUM of 40 watts. And that's only if you carefully select the input voltage. Even if you get a darlington rated for 120W, it's going to probably overheat unless you do something goofy like actively cool the heat sink it's on. There's no reason the rating of the cap across the diode needs to be as low at 5V. It is bad practice to leave unused op amp inputs floating, as it will often cause oscillations. It looks like you've attempted kelvin sensing of the laser diode voltage, but they should be AT the LD terminals, not a few mm over. Even then, it's not particularly helpful since your voltage drop on the power leads isn't nulled. Also, you need kelvin sense on the negative side of your shunt to get any decent accuracy.
Trace sizes - I know, I increased the trace size in a second revision I made earlier, still not big enough, may order some heavier boards - or just slap a nice thick layer of solder on the high current traces if I'm being cheap and lazy. May also move the V+ input closer to where the current is needed most to reduce resistance losses in the traces.
Transistor drive current - Have considered swapping the transistor(s) out for MOSFETs for, at the least, easier driving. Does that sound like a good idea?
Waste heat - Lots of heat yes, but I have a real beefy TO-3 heatsink, easily big enough to handle the heat, may need some "forced" (probably more like a light breeze) air to keep it reasonable but it should be fine. Not using TO-220s with little clip on heatsinks here. Transistors I had planned on using are rated at 15A, I'd be using two for 20A, leaving them plenty of headroom. But as I said, may switch to MOSFETs anyway. I think I have some big MOSFETs in a parts bin somewhere...
5V Cap - Yep, my bad, forgot I had rated that at 5V, easy enough to swap out. Thanks for pointing that out.
Op-amp inputs - noted, thanks!
Voltage sensing - will move sense leads to LD outputs. That makes sense! Plan is to measure at LD+, LD- and RS+, all referenced to GND.
LD+ gives me the total drop across LD, transistor and sense resistor, LD- gives me voltage drop across the transistors and sense resistor and RS+ gives me the drop across the sense resistor. LD voltage drop is the difference between LD+ and LD-, which the arduino can calculate quite happily. Correct me if my thinking is off?
*points to the 5V cap again*
Forgot I had rated that at 5V - easy enough to swap out. Thanks for pointing it out.
Oh, and you'd need to scale down the voltage on the sense line. Arduinos don't last long with 40V on ADC pins.
Way ahead of you on that one at least, quickly threw together a design for a separate 10:1 voltage divider board for the arduino inputs earlier this afternoon, probably will put that on the driver itself in the next version. Max design input voltage will be around 40V yes, but lower in practice/actual use. It's inefficient enough as it is without driving at at nearly 40V! A 10:1 divider should do the job nicely.
Yes, but this increases noise and risk of oscillations.
Figured as much, and I plan on keeping it to a reasonable >1V for now. At least until I have some better test equipment and can test for noise/oscillations. That's also why I haven't attempted to add any sort of modulation input to this one.