Hi,
I have designed and built a brushless DC motor driver circuit but I am being plagued with electrical noise.
The circuit I have designed is intended to drive a 6 Amp, 24V BLDC hall sensor motor using an Atmel MPU, some AND Gates, three MOSFET High/Low side driver chips (IR2101) and 6 N-Channel Power MOSFETS.
Basically, I use the Atmel to monitor the hall sensor for each of the three motor phases and then switch the three high and three low MOSFETS accordingly in order to make the motor spin.
I control the power using a PWM output. The PWM is routed to the top side of six AND gates and the six logic level outputs from the Atmel are routed to the bottom side of each gate. The output of the gates are then used to drive the high and low inputs of the driver chips which in turn switch the FET devices.
At first, It all seems to work very well. I can drive the motor at various speeds in either direction and I seem to have plenty of torque. I use the MPU to govern the speed by varying the PWM duty cycle until the hall inputs match the desired RPM. This all works fine.
However....
I am getting a huge about of noise on the ground and DC lines. In fact it seems to be everywhere, and it is so aggressive that is is causing the Atmel to reset. It is also making it almost impossible to sample the current across a shunt. We are talking several volts. I have obviously done something wrong but I am not sure where to start looking or how best to resolve it.
I have tired putting a large cap on the 24 volt supply (4400uF)
I have tried putting 220nF caps across the supply of each pair of FETS, making sure they are as close as possible to the devices.
I have tried splitting the logic and power grounds so they only connect at a single point. I have also moved the logic on to a septate PCB.
I have tried adding 10uH chokes to the chip supplies (12V and 5V) and I have used thick tracks on the FET PCB.
Nothing seems to work. To be honest, I am out of my depth here, I understand digital electronics reasonably well, but when it comes to analogue stuff, I don't really know where to start. I am assuming the spikes are being cause by the FETS switching, but I don't really know what to do about that.
Any advice or tips would be much appreciated.
Regards
Tim
I have designed and built a brushless DC motor driver circuit but I am being plagued with electrical noise.
The circuit I have designed is intended to drive a 6 Amp, 24V BLDC hall sensor motor using an Atmel MPU, some AND Gates, three MOSFET High/Low side driver chips (IR2101) and 6 N-Channel Power MOSFETS.
Basically, I use the Atmel to monitor the hall sensor for each of the three motor phases and then switch the three high and three low MOSFETS accordingly in order to make the motor spin.
I control the power using a PWM output. The PWM is routed to the top side of six AND gates and the six logic level outputs from the Atmel are routed to the bottom side of each gate. The output of the gates are then used to drive the high and low inputs of the driver chips which in turn switch the FET devices.
At first, It all seems to work very well. I can drive the motor at various speeds in either direction and I seem to have plenty of torque. I use the MPU to govern the speed by varying the PWM duty cycle until the hall inputs match the desired RPM. This all works fine.
However....
I am getting a huge about of noise on the ground and DC lines. In fact it seems to be everywhere, and it is so aggressive that is is causing the Atmel to reset. It is also making it almost impossible to sample the current across a shunt. We are talking several volts. I have obviously done something wrong but I am not sure where to start looking or how best to resolve it.
I have tired putting a large cap on the 24 volt supply (4400uF)
I have tried putting 220nF caps across the supply of each pair of FETS, making sure they are as close as possible to the devices.
I have tried splitting the logic and power grounds so they only connect at a single point. I have also moved the logic on to a septate PCB.
I have tried adding 10uH chokes to the chip supplies (12V and 5V) and I have used thick tracks on the FET PCB.
Nothing seems to work. To be honest, I am out of my depth here, I understand digital electronics reasonably well, but when it comes to analogue stuff, I don't really know where to start. I am assuming the spikes are being cause by the FETS switching, but I don't really know what to do about that.
Any advice or tips would be much appreciated.
Regards
Tim
Last edited: