12th July 2008 07:25 PM
H-Bridge with PWM current limit
I am designing a H-Bridge to be used with a PIC for a stepper motor controller. Attached is the circuit which I've come up with.
There are some test things there, but generally the PIC will set the Direction, Brake and the variable voltage source. (Above the current sensor op-amp.) The MOSFETs will be IRF540N and IRF9540N.
I am aiming for a switching frequency of around 20KHz, above the threshold for human hearing. However due to the design it will run at it's own speed. I tried to limit the frequency using the 10K resistor and 5nF capacitor next to the op-amp.
The reason for this hardware PWM solution is so that the PIC program can be much simpler. It means that the user can set the current limit through a potentiometer and no ADC use is required. It just needs a dual DAC. (One for each coil.)
I don't have the components to test this at hand so I thought that I'd ask for advice on here. Some of the component values (MOSFETs) are wrong because the program I used doesn't have IRF540N / IRF9540N.
I also intend on building the H-Bridge on a PCB without the current limter so that I can use it for other projects. I will use TTL buffers so that it can accept 5V and 3.3V signals.
Note: The resistor and inductor in the middle are to model my stepper motor coil.
My main questions are:
1) Are there any general problems with this design ?
2) Will there be any issues with this, seems as it doesn't have a "fixed" PWM frequency ?
3) Any suggestions ?
Thanks for your time,
Last edited by yngndrw; 12th July 2008 at 07:27 PM.
12th July 2008 07:29 PM
1) you /really/ need to sort out your gate-drive!!! as it stands you will burn out the BJT's
2) you need to uprate the main FET's, zvp2106A and co are Vds rated for 60V, having a DClink of 60volts is going to blow those devices
Last edited by Styx; 12th July 2008 at 07:30 PM.
Nothing is impossible.
Once a problem is realised, the rest is just details
12th July 2008 07:35 PM
Your H-bridge driver circuit has no "dead time". The upper Mosfet is turning on or off at exactly the same time that the lower Mosfet is doing the opposite. So both Mosfets will conduct at the same time for a moment causing a huge "shoot-through" current from the supply. The Mosfets actually short the supply without some dead-time. Most PWM driver iCs have dead-time.
12th July 2008 07:47 PM
1) Why would it burn them out, is it becuase of the ratings of BC549's or some other reason ? If it's the ratings - They were just a random transistor from my simulator and I'll find a better suited one. If it's the design, can you suggest a better design to combat this ?
2) The main MOSFETs in the diagram are the wrong part, I'll be using IRF540N and IRF9540N MOSFETs. I only used those as the simulator didn't have much of an option.
Would the attached circuit fix this problem ? It would go in between the drivers and MOSFETs. The idea is to limit the current for the switch-on phase while bypassing the limiter with the diode when switching off. I don't know if this will work but it's an idea.
Failing that, can you suggest a driver which would work in this application ?
Max supply voltage: 60V
Main mosfets: IRF540N and IRF9540N
Fast enough for 20KHz PWM
Thanks again for your help.
12th July 2008 09:12 PM
The are a few PWM controller ICs available. The TL494 is one example that has dead time and a push-pull output.
12th July 2008 09:41 PM
The reason why I thought about building the drivers myself was becuase I always found it hard to find drivers which meet my needs.
The IC you linked me to can only output 250mA but I was looking for closer to 1A to keep the MOSFET rise/fall time low. The second problem is that I wanted to be able to run these at 60V.
To be honest, I don't know a lot about MOSFETs - What is wrong with the driver that I designed which would blow the transistors ? I don't want to end up with using a driver only to blow the output stage of that too.
12th July 2008 09:47 PM
You need to turn on one Mosfet at a time with some "dead-time" in between.
Or else one Mosfet will still be turning off when the other Mosfet turns on then they both blow up.
12th July 2008 09:56 PM
Would the change that I mentioned in my first reply (Second attachment) fix that issue or would it not be enough dead time ? (Or not work in general ...)
Styx mentioned that the driver it's self would burn out, why is that ?
I did find this which would be perfect:
However I cannot find an equivalent in the UK. (Another reason why I wanted to build my own stuff, it's easier to find parts in my local electronic stores.)
12th July 2008 10:03 PM
The output of Mosfets can be 60V or more but the input is only 10V.
12th July 2008 10:12 PM
I thought that the P channel MOSFETs required (V+) to switch off and (V+ - ~10) to switch on ?
I wanted to use P channel MOSFETs for the high side because:
1) I already have them.
2) I didn't want to mess around with an 70-80V charge pump.
Or am I thinking wrongly ?
I've been searching on Google but still haven't found out how to add the dead-time delay.
Last edited by yngndrw; 12th July 2008 at 10:13 PM.
Electronic Circuits |
Page Time: 0.11565 seconds Memory: 7,665 KB Queries: 17 Templates: 0