This is my first post on this forum and I really hope someone can help me out, because i'm not sure how to tackle the problem i'm having. I'm really close with my project, yet so far away.
Im building an Arduino based CNC plasmacutter, combining an Uno with a CNC shield v3, DRV8825 controllers and nema17 steppers. I have mechanical limit switches (isolated with optocouplers).
The Uno is running the latest version of Grbl and I use Universal Gcode Sender to interface with the Arduino. I'm to the point where the CNC platform works well, however as soon as I add my plasmacutter to the mix, everything goes haywire. USG crashes, so does the Uno (it's even losing stored data) and the USB ports of my laptop aren't too happy either.
I've done some tests and it's clearly a noise problem. Even with the plasmacutter a few meters away, as soon as the air starts flowing (normally starting a cut) it all goes horribly wrong.
I just came back from my local electronics store for some advice, which is "using capacitors to reduce motor noise". He also mentioned a complex formula I need to use to calculate which capacitors to use, depending on motor speed.
I did some more research online and I assume I need decoupling capacitors for the motors. An electrolytic capacitor of 100uF and a ceramic capacitor of 0.1uF (parallel) between the motor and ground. I can't really find the formula he mentioned, so i'm unsure if im on the right track here.
It almost seems to easy and because i don't really understand the problem on a mathematical level i'm hoping for some help.
The way I understand it, is the plasmacutter generates a high frequency which creates induction on the motor wires and the pulses driving the motors are obscured and the feedback causes the Arduino to crash. The capacitors should buffer these inducted currents and lead them away to the ground.
It sort of makes sense to me, but does it really?
The steppers i'm using are bipolar, so should both coils have these two capacitors?
Any help or links to more info is very welcome