Really nasty EMI issue running a 5V motor

Thread Starter

MachineHum

Joined Nov 3, 2014
74
Hey guys,

I'm running a little 5V motor off a relay module controlled with an STM. When I fire the relay the 16x2 starts freaking out and displaying a bunch of random characters.

I've tried running my "JD-VCC (relay power)" from my +5V of the STM line and a separate 5V line. My motor power is running off a separate 5V line. I've soldered bypass caps on the LCD, across the motor and the uC. I've also put a choke inline with the motor.

When I fire the relay (no load attached) the system works perfectly
If I power the motor w/o using the relay and get the leads all up in my other leads everything's okay.
I'm using shielded cable to the motor and grounding the shield to my CCT ground (not earth ground)

Any shielding / grounding / general help would be much appreciated.

Arduino Relay module


My setup
 

ronv

Joined Nov 12, 2008
3,770
Hey guys,

I'm running a little 5V motor off a relay module controlled with an STM. When I fire the relay the 16x2 starts freaking out and displaying a bunch of random characters.

I've tried running my "JD-VCC (relay power)" from my +5V of the STM line and a separate 5V line. My motor power is running off a separate 5V line. I've soldered bypass caps on the LCD, across the motor and the uC. I've also put a choke inline with the motor.

When I fire the relay (no load attached) the system works perfectly
If I power the motor w/o using the relay and get the leads all up in my other leads everything's okay.
I'm using shielded cable to the motor and grounding the shield to my CCT ground (not earth ground)

Any shielding / grounding / general help would be much appreciated.

Arduino Relay module


My setup
Try adding 2 diodes to the relay contacts. One to clamp the motor voltage so it can't go below ground and the other so it can't go above +5.
 

Thread Starter

MachineHum

Joined Nov 3, 2014
74
Works perfect!! Thank you so much.

Next up: Why does this work, I've used this for input protection on IO before. But this is a completely isolated circuit, does is just kill transients that are responsible for really bad noise??

Thanks again!!
 

ronv

Joined Nov 12, 2008
3,770
Works perfect!! Thank you so much.

Next up: Why does this work, I've used this for input protection on IO before. But this is a completely isolated circuit, does is just kill transients that are responsible for really bad noise??

Thanks again!!
The motor is a big inductor, so when the relay opens the voltage really rises trying to keep the current flowing. Probably a big arc across the relay contacts.
 
Top