GPMD (General Purpose Motor Driver)



The GPMD is a driver that is capable of controlling stepper motors and 3 phase brushless DC motors.

Version 0001

Version 0001 is more meant as a tool to learn more about controlling power electronics and motors.

Design

The design consists of a few IRF7309 mosfet pairs (P and N channel) driven by some TC4427 mosfet drivers. The transistors are arranged as 4 half H-bridges. Each half H-bridge has its own current sense resistor that feeds into a comparator. The drive signals for the TC4427 are derived from a bunch of 74HC74 flipflops that control the gate drivers. The comparator is also fed by a MCP4822 DAC to set the current. The comparator resets the flipflops so that the mosfets are not driven anymore. When the current falls below the threshold the flipflops are set to drive the motor. The clock from the flipflops is driven by a PWM output of an AVR microcontroller.

Pictures








Todo's

The current design and current control scheme work quite well.

Here you can see how the shunt current is sensed, filtered and used to PWM the N channel fet of each half bridge.


But this design has it fair share of noise issues. Left is the current sense noise, after the filter. Middle is the ground noise of the digital and driver section and right is the ground noise at the comparator pin.

The arrangement of N and P channel MOSFET's limit the maximal voltage to about 15V. The goal is of the driver to achieve higher voltages but this can only be accomplished by using an high side drive scheme.

Version 0002


Design

It is more or less the same idea as version 0001. The powersection is different as a high side driver like the IRS2110 will be used in conjunction with a charge pump to eliminate high side duty cycle limitations (see IRF application note AN-978). The drivers will drive IRLR024n mosfets that will later be replaced by other FET's with higher current handling or voltage handling capabilities.
The current from the sense resistors will be more heavly filtered and amplified by a MCP6001 opamp and compared by an MCP6541 comparator. The analog section will get its own separate ground plane to shield it from noise from the heavy switching of the mosfets.
The board itself will also have the controlling microcontroller(s). I am still looking what kind of arrangement I will use for the controllers. I am leaning to use two dedicated AT90PWM microcontrollers for each half bridge. Another choice is use one AVR microcontroller for controlling the DAC and a xilinx CPLD for the bridge sequencing and deadtime generation.


Back

Last update at: 02-01-2011