Hello, looking for ideas here. I am making a medium sized DC motor controller, driving 6 MOSFETs in parallel (each with their own driver). It is not an H-bridge, just simple single low side switch. I want to PWM the motor @ 20khz. I was originally going to do this with my Arduino until I read that it only does PWM @ 500Hz. So now I'm looking for other ideas. I want to have current limiting.
I read here (section 7.1) that a triangle wave generator and comparator can make PWM waveforms. I have a DAC chip I can use with my arduino to provide an analog reference to the comparator to vary the duty cycle. for current limiting, I was thinking I could run the PWM output of the comparator through a transistor, then to the drivers. The arduino would monitor current via a hall sensor an turn off the transistor if current goes above X Amps. Do you think the arduino would be too slow to catch the overcurrent and cut off PWM? Does that sound like too much of a kludge?
Any other Ideas? Someone else suggested using a PIC and I looked at the datasheet for the dspic33f and it mentions PWM @ 39.1KHz but I have never set eyes on a PIC, and I already have my hands full trying to learn all this motor control stuff. It would be nice if I didn't have to tackle learning PICs in the same project. I guess I might not be able to get around that though. How hard is it to use a PIC for this (I find Arduino to be fairly easy; the language makes sense to me) ? Is there a simpler way?
I read here (section 7.1) that a triangle wave generator and comparator can make PWM waveforms. I have a DAC chip I can use with my arduino to provide an analog reference to the comparator to vary the duty cycle. for current limiting, I was thinking I could run the PWM output of the comparator through a transistor, then to the drivers. The arduino would monitor current via a hall sensor an turn off the transistor if current goes above X Amps. Do you think the arduino would be too slow to catch the overcurrent and cut off PWM? Does that sound like too much of a kludge?
Any other Ideas? Someone else suggested using a PIC and I looked at the datasheet for the dspic33f and it mentions PWM @ 39.1KHz but I have never set eyes on a PIC, and I already have my hands full trying to learn all this motor control stuff. It would be nice if I didn't have to tackle learning PICs in the same project. I guess I might not be able to get around that though. How hard is it to use a PIC for this (I find Arduino to be fairly easy; the language makes sense to me) ? Is there a simpler way?