Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

Driving a transistor in active mode using uC

Status
Not open for further replies.

ptewright

New Member
I need to control the speed of a 12Vdc 5A motor using a microprocessor.
I was initially using a MOSFET, but my power supply has poor transient response. (A really annoying high frequency noise is generated when I PWM the motor...it's giving me a headache!!)
I know it's very inefficient to drive a BJT transistor in the active region, but I'll try it out anyway. From my understanding, if the base current(Ib) is 0, then the transistor is off (in cutoff mode). If Ib is above a certain value (depending on the transistor used) then it will be fully on in saturation mode. I'd like to operate the transistor in between those 2 regions. My question is: how do I adjust the value of Ib using a microcontroller?

Also, if you know of any transistor part # that would be suitable, I would greatly appreciate it!!

Thanks!
 
Using MOSFET or BJT will not make difference on the transient. BJT will probably heat much anyways. So perhaps you forget to add the capacitors and the back EMF diode on the supply line ?
 
If you want to drive the bipolar transistor in it's linear region, just put the PWM signal through a low pass filter network. A simple RC network (with a cutoff below that of the PWM frequency) with a Op-Amp buffer will give you a DC voltage in porportion to the PWM signal. The MOSFET can be driven this way also and will be easier to use because of it's high impedance input.

Or use a DAC if your micro has one.

Another way is to build a LC buck converter driven by the micro. This will be more efficient than "linear mode" and you won't need a giant heatsink to keep the driver transistor cool.

It is normal for the motor to sing when driven by a PWM signal in the audio range, but your power supply shouldn't if the circuit had an adequate bypass network on the supply line.
 
Last edited:
I've seen this before but not due to the power supply but rather the pwm frequency. Is your PWM frequency 10Khz or so? that will produce audible whine. Why not try 20 or 25khz? that would annoy dogs but very few humans.

to improve transient response of your power supply, you could add a filter cap.
 
philba said:
I've seen this before but not due to the power supply but rather the pwm frequency. Is your PWM frequency 10Khz or so? that will produce audible whine. Why not try 20 or 25khz? that would annoy dogs but very few humans.

to improve transient response of your power supply, you could add a filter cap.


My PWM frequency is 2kHz. I guess I could try increasing that frequency.....
I tried adding caps between the supply and ground, but that didn't seem to make a difference. I tried a 50uf, and then a 100uf (those are the biggest caps I have) Should I go with even bigger caps?
 
Status
Not open for further replies.

Latest threads

New Articles From Microcontroller Tips

Back
Top