Hi everybody. I want to make a shield for control a brushless DC motor. I don't like a ESC rc controller.
Searching IC's for do It, I found the MC33033. Somebody use it before? Is there another better IC?
Thanks for your help.
Somewhere I think there is an AVR microcontroller with special support for 3-phase driving, but you'd have to
search - several manufacturers have good app notes about this. With a sensored BLDC motor you have
3 logic inputs for the hall sensors and need s 3-phase bridge to drive the windings.
A shield could off-load the commutation and PWM entirely to the Arduino but that would take up a lot of pins
I think (OK with Mega, problematic with Uno).
Alternatively use a small microcontroller on the shield to do the donkey work and just have pins to control
direction and PWM ? An ATmega328 or ATmega168 would be an easy choice as its Arduino code compatible...
For 3-phase output stage I'd recommend the FAN7388 or FAN7888 driver chips, simple to use, good to 200V/600V
(forget which is which!), seemingly bomb-proof. Then 6 n-channel MOSFETs to act as switches (in SOIC format
you can get dual n-channel MOSFETs which are handy, but these are all surface mount). There's the HIP4086
which is a 3-phase driver in DIP format.
Alternatively there are integrated 3-phase bridge chips, but often limited to an amp or so (integrated DMOS
MOSFETs tend to be limited to 0.3 ohms on-resistance which is rather high).
Frankly there's a lot of choice about how to do this, there are a lot of chips that help, you need first to
specify maximum voltage, current and such like.
Hi MarkT. I read some papers of Atmel like AVR443 and AVR444, and problably is my 2nd option. my first optin for simplicity is MC33033, but I can't understand
if I can controller it by Arduino, specialy the speed input. Now I seach info about FAN7388.
The ratings of my motor are about 12-15V and 10-15A.
I had a look at the MC33033 now - interesting chip, I'm guessing its an old design as they avoid high-side MOSFET switches (which is standard now). To control the PWM duty cycle it needs an analog input
which can be done by low-pass-filtering an Arduino PWM output - not the most elegant solution.
BTW the FAN7888 and FAN7388 lack a charge pump to keep the high-side driver from drooping as
the decoupling cap discharges. This means you have to ensure each low side device gets turned on
briefly every few ms to recharge via the bootstrap diode (and to do that you must disable the
drive to the relevant high-side switch too, otherwise the shoot-through prevention defeats you).
The HIP408x series are better in having a charge-pump to trickle charge the high side decoupling caps
when the relevant arm of the bridge is parked high-side switch on.
That's a sensorless controller - you won't get very low speeds from a sensorless driver, and start-up
under heavy load isn't possible - don't know if it matters for your application, but if the motor
has sensors its a shame to waste them.
I try use the sensored motor without sensor feedback.
I think that is very rare than there isn't a more modern version of MC33035. I search a lot and I can't
found it.