Apologies for the long post, I’ve tried to give all the necessary info in a single post (plus a little extra for folks who have similar questions in the future). Thanks in advance to all the contributors here, your help is very much appreciated.
TLDR: Can you help me validate the attached H-bridge circuit? It will rarely switch polarity and feeds a peltier device.
I've been struggling to complete a project where I'm using peliter devices to cool the temperature inside an insulated box. I need to be able to change the polarity to both heat and cool. I'm still pretty much a noob at this, and have learned from multiple failures on other projects that I won't be successful on datasheets alone. I definitely could use help validating my design. I've attempted to design an h-bridge that could handle 25A around 16V and switch polarity switching on a timescale of minutes or hours (this is not an h-bridge for PWM). There is more detail about the circuit below, along with some specific questions I would appreciate feedback on.
A little more context before I talk about the schematic. I've also attached a high level layout of how the peltiers are controlled. A description of how it's wired in order:
About my H-bridge circuit:
I’m using Fairchild FAN3268 to drive a p-channel MOSFET on the high side and an p-channel on the low-side. I think I need a p on the high-side, even though they typically have worse rds_on, because I'm not using PWM and can't easily boot-strap an n MOSFET on the high-side. I chose MOSFETs on rds_on values, since the “frequency” will be something like 0.0001 Hz. HCNTL is the logic signal from my arduino to change polarity.
As noted above I’ve also added an INA219 to track current and voltage through the h-bridge. I’ll be logging data from this with my arduino. I've never done surface mount, but hope the electric skillet technique isn't too tricky.
My questions:
Again, any feedback would be much appreciated. In case it matters and it’s not legible in the schematic the p-channels are Infineon Technologies IPB180P04P4L02ATMA1 and the n-channels are NXP PSMN1R4-40YLDX.
TLDR: Can you help me validate the attached H-bridge circuit? It will rarely switch polarity and feeds a peltier device.
I've been struggling to complete a project where I'm using peliter devices to cool the temperature inside an insulated box. I need to be able to change the polarity to both heat and cool. I'm still pretty much a noob at this, and have learned from multiple failures on other projects that I won't be successful on datasheets alone. I definitely could use help validating my design. I've attempted to design an h-bridge that could handle 25A around 16V and switch polarity switching on a timescale of minutes or hours (this is not an h-bridge for PWM). There is more detail about the circuit below, along with some specific questions I would appreciate feedback on.
A little more context before I talk about the schematic. I've also attached a high level layout of how the peltiers are controlled. A description of how it's wired in order:
- Meanwell DC PSU
- DC SSR, used to control the power to a buck converter, this is how the micro-controller turns on heating/cooling
- Buck converter, I purchased something off ebay to get me started, once the H-bridge is resolved I will develop my own buck converter (and learn how to use ltspice) to control the buck directly with the micro-controller
- Attopilot current and voltage sensor, so I can log current and voltage to the pelitiers
- 2 SPDT relays with a control circuit used to switch polarity (select heat or cool)
- fuses
- Peltier devices wired in parallel
About my H-bridge circuit:
I’m using Fairchild FAN3268 to drive a p-channel MOSFET on the high side and an p-channel on the low-side. I think I need a p on the high-side, even though they typically have worse rds_on, because I'm not using PWM and can't easily boot-strap an n MOSFET on the high-side. I chose MOSFETs on rds_on values, since the “frequency” will be something like 0.0001 Hz. HCNTL is the logic signal from my arduino to change polarity.
As noted above I’ve also added an INA219 to track current and voltage through the h-bridge. I’ll be logging data from this with my arduino. I've never done surface mount, but hope the electric skillet technique isn't too tricky.
My questions:
- Current limiting resistors for the MOSFET gates?
There is no discussion of these in the driver datasheet. The more detailed MOSFET driver circuits I've found online all have them, but I'm under the impression they are for switching frequency issues. I don't know if it matters, but the code will only allow the polarity to change when the DC SSR is open and no current is flowing to the buck converter from the PSU. Do I need current limiting resistors for the MOSFET gates?
- Decoupling capacitor(s)?
From what I have read online, it sounds like peltier devices are basically just resistive loads. I know the wires have some inductance, but since I'm hardly switching the MOSFETs will I still need decoupling capacitors? Can I depend on the output capacitors on the buck converter alone? If I do need them, pointers on how much capacitance is appropriate and if the capacitor(s) should be placed above or below the INA219 sense resistor would be very helpful.
- Catch diodes?
Are these needed given the infrequent switching and my assumption that it’s okay to ignore any inductive kick for the peltiers? I know the catch diodes matter for motors, but I’m guessing for my application the body diodes on the MOSFETs are sufficient. Is that a bad assumption?
- Anything else?
It’s my first time trying to figure out an H-bridge, and only my 3rd time trying to create a circuit. I fully recognize there is a lot I don’t know, and I may not be asking some important questions.
Again, any feedback would be much appreciated. In case it matters and it’s not legible in the schematic the p-channels are Infineon Technologies IPB180P04P4L02ATMA1 and the n-channels are NXP PSMN1R4-40YLDX.