Arduino based CNC plasmacutter (Uno, DRV8825, nema17) noise problem

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? :confused: :smiley:

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 :slight_smile:

Hi,

Some suggestions on how to handle the EMC problem is HERE http://arduino-info.wikispaces.com/Arduino-Project-Planning-Electrical

GRT88:
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.

What is the route by which the "noise" from the plasma cutter gets to the Arduino and its associated circuits?

A photo of your system would probably be useful.

Are you using shielded cables for everything associated with the high-frequencies?
Alternatively, is the Arduino system inside a shielded enclosure?

...R

Thanks for your quick replies! :slight_smile:

terryking228:
Hi,

Some suggestions on how to handle the EMC problem is HERE http://arduino-info.wikispaces.com/Arduino-Project-Planning-Electrical

The problems described here seem the be exactly what is wrong with my system.

Robin2:
What is the route by which the "noise" from the plasma cutter gets to the Arduino and its associated circuits?

A photo of your system would probably be useful.

Are you using shielded cables for everything associated with the high-frequencies?
Alternatively, is the Arduino system inside a shielded enclosure?

...R

That is what is sort of weird. To try and rule out some causes, I disconnected the cutter from the relais that is connected to the Arduino. So there is no physical connection. When I operate the cutter manually, but next to the cnc system while it is running, things go wrong.

Two pictures of my machine (without cutting 'head'):


All the electronics are inside the aluminum housing. As you can see, I tried connecting the housing and frame to the ground (earth), but that did not do anything. I also tried wrapping the plasma air hose with tin foil and grounded that, but that didn't do anything either (didn't really expect that to work tbh).

I am not using any shielded and/or twisted wire at all. That was actually what I wanted to buy at the store, but I was told that shielded/twisted cables are for problems like cell phone interference and not this particular problem.

All cables for the end stops and steppers) are bundled together at the rear left and I use only one power supply, but this doesn't cause any problems as long as the cutter isn't operated. I did decide to isolate the end stops with optocouplers, because I had false alarms constantly.

GRT88:
Thanks for your quick replies! :slight_smile:

The problems described here seem the be exactly what is wrong with my system.

That is what is sort of weird. To try and rule out some causes, I disconnected the cutter from the relais that is connected to the Arduino. So there is no physical connection. When I operate the cutter manually, but next to the cnc system while it is running, things go wrong.

Two pictures of my machine (without cutting 'head'):

All the electronics are inside the aluminum housing. As you can see, I tried connecting the housing and frame to the ground (earth), but that did not do anything. I also tried wrapping the plasma air hose with tin foil and grounded that, but that didn't do anything either (didn't really expect that to work tbh).

I am not using any shielded and/or twisted wire at all. That was actually what I wanted to buy at the store, but I was told that shielded/twisted cables are for problems like cell phone interference and not this particular problem.

All cables for the end stops and steppers) are bundled together at the rear left and I use only one power supply, but this doesn't cause any problems as long as the cutter isn't operated. I did decide to isolate the end stops with optocouplers, because I had false alarms constantly.

First question is which PlasmaCutter are you using?
PlasmaCUtters are infamous and notorious for EMI.

The unit i have the electronics are all grounded to the steel enclosure in which they are located and the steel enclosure is grounded to earth ground via a 0 gauge copper wire which is CadWelded to an 8 ft Solid Copper rod in the ground.

the Plasma table is also grounded.

I had a water table for several years and it helped with many issues.

depending on your location you are going to need flash shield, noise reduction & dust collection

I know a few people who have the electronics in a copper screen faraday cage.
That seems to work well.

Things like arc welders and plasma cutters put out horrendous amounts of EMI, this is the worst
possible environment to be working in and every trick needs to be pulled to reduce the issue. The
amount of interference is many orders of magnitude worse than you'd encounter in a domestic environment.

I found this discussion of grounding and plasma cutters: https://www.theiet.org/forums/forum/messageview.cfm?catid=205&threadid=59908

Okay, it's clear that there is not going to be an easy solution to my problem. I might consider turning the machine into a CNC router :stuck_out_tongue:

I don't want to give up just yet, so i'm going to get some shielded cables, pay more attention to grounding/earthing and might put a Faraday cage in place.

I'm using a pretty cheap Chinese cutter/inverter i've had for a couple of years and it is EU/FCC approved. I'm assuming the EMI problem is even bigger with the cheaper machines, although the overall quality seems pretty decent.

Will report back.

You mentioned that turning on the compressed air begins the noise. How is the air compressor motor shielded for RFI reduction? Power filtering?

Also, air coming out of the nozzle will generate a static electricity charge.

Paul

Paul_KD7HB:
You mentioned that turning on the compressed air begins the noise. How is the air compressor motor shielded for RFI reduction? Power filtering?

Also, air coming out of the nozzle will generate a static electricity charge.

Paul

Not sure how the motor is shielded, but when I just use up the air in the tank (compressor off), the problem also occurs. It has something to do with the nozzle / hose of the cutter.

I have replaced all motor cables with shielded data cables. Paid extra attention to grounding the seperate parts of the machine frame. Also tried using a different power supply for the Arduino, but it doesn't really help.

Maybe I can try and insulate the air hose somehow, a metal mesh perhaps.

GRT88:
Not sure how the motor is shielded, but when I just use up the air in the tank (compressor off), the problem also occurs. It has something to do with the nozzle / hose of the cutter.

I have replaced all motor cables with shielded data cables. Paid extra attention to grounding the seperate parts of the machine frame. Also tried using a different power supply for the Arduino, but it doesn't really help.

Maybe I can try and insulate the air hose somehow, a metal mesh perhaps.

If all else fails consider a water table.
The water will reduce the noise, dust, torch flash, etc.

water tables are easy to build.
I assume that you are proficient at welding given that you have a plasmacutter.

The problem with water tables is the winter time. If the shop is not heated the water will freeze during the night. It may not freeze solid that depends on duration of the freezing temperatures.
You could program an Arduino to turn on heaters throughout the day to keep the water from freezing.

once the plasmacutter is up and running the plasmatorch will keep the water warm enough.

another suggestion would be to switch to an oxy-fuel cutting torch.

I will definately consider a water table, but for the moment i'm trying to proof the combination of the Arduino/laptop and the cutter will actually work before I spend more time on this, for the moment, failing project.

Today I did more testing. I checked if the ground/earth in my building / socket is actually working, which it is. I tried grounding the Arduino, but it already was grounded properly.

I had left my multimeter on (DC Volts) when I did another test. As soon as I started the plasmacutter (air through hose/nozzle) I could actually see the meter spiking because of the interference.

After that I disconnected pretty much all cables from the CNC shield but the problem persisted. I tried another laptop, which gave me exactly the same USB error. Actually the plasmacutter made my Lenovo laptop crash.

It is the Uno / cnc board/usb cable that is (also) picking up the interference. The last test I did about 10 minutes ago looked sort of promising. I placed the Arduino+CNC shield in a cookie tin, and placed that together with the laptop, in a metal workshop cabinet. I kept UGS running, showing verbose output, and after the test with the cutter next to the cabinet, it was still running. So that is a small victory I guess :slight_smile:

It seems the metal cabinet functions as a Faraday cage, protecting the laptop.

Tomorrow I'm going to try and place all electronics in the cabinet, with just AC power going in and the shielded motor cables / end stop cables going out. Might get this thing to work after all :smiley:

Here is a web site that may give a different approach to solving your noise problem:

https://www.murata.com/en-us/products/emc/ferrite/basic/reason

PAul

Interesting website, explains a lot about how these filters work. I'm using ferrites on my motor cables now and they seem to work fine.

I made some adjustments, placed the Arduino and PC in a more permanent metal housing and it is working so far.

The cables and motors are no longer picking up interference (had to give the motors additional shielding).

For now the last problem I have is supplying the Arduino and computer with power. As soon as I connect them to AC power (the same source the plasma cutter is on) the problems reoccur.

I need some type of net filter or EMI filter to clean up the noise that the cutter is causing on the AC power lines.
I actually found a specialized company in the Netherlands that can supply me with such a filter, but they quoted me a price of over 500 euro's :open_mouth: ( not including 21% VAT of course :wink: ).

I'm still looking for an alternative, might run the Arduino and PC of a battery. Not a very neat solution, but about 500 euro's cheaper.

I decided im definately going to build a water table

SEarch for "power line filter" or "emi filter" on Ebay. Many of the hits are for the filter components. You are quite capable of mounting them in a grounded box.

Paul

Thanks again Paul :slight_smile:

Found a filter locally, picking it up tomorrow for €22.- :smiley:

The filter actually works!

Put it in this temporary housing for now, but now I can reassemble things, make them more permanent.

Click for pic

GRT88,

I know this thread is old, I appreciate your engagement and the contribution by others.

I build my CNC a little over a year ago and was able to manipulate the motors and drive the machine.

However, when I connected the plasma cutter I ran into several issues with interference that ultimately reset my Arduino. I eliminated some issues by adding separate grounds, ferrites, reducing the 'antenna' by consolidating and grouping cable runs, and more. It still will not run a full cycle without resetting the Arduino.

I cut a lot of wood using my router, and that was OK but I built the thing for plasma.

I got really frustrated and walked away from my table for several months. It is getting cooler in the shop and I am dusting things off.

I am very interested in an update on how your system performs with the filter and a little more information about the device you installed.

My specs:
Arduino Uno in a closed case, separate power and ground from the plasma
Nema 17 on 3 axis
Ferrite everywhere- USB, motor cables
Lotos LTP5000D plasma, 210, power cable enclosed in metal conduit grounded to main
Husky 1.7 HP compressor
I was using UGCS for a while, I bought Estlcam. Estlcam works great with my router, I have not been able to test it on the plasma.
Independent ground rod for the table.

I appreciate any tips, it has been pretty exciting building the machine and watching it work with a router but I built it for plasma and that has been sketchy.

Thanks!

Steve

The best tip is to get yourself some proper test equipment so you can track town the interference and reduce it to the point it does not cause trouble.

Paul

Good mornig GRT88.

I know this might be a bit late, but here is my two cents.

I'm also new with playing with Arduino systems, but have a huge experience in industrial motion control systems.

I'm interested by your project, since I plan to build a Plasma table for my shop. I will try the Arduino solution for fun and see how good it works.

I havent seen your wiring diagram, but here is what I usually do to try and limit noises.

  • Ground is KING. I use a star ground where everything is hooket up to. That star ground needs to be hooked up to a very good ground (with a large wire size) to your electrical system. Try to use a direct insulated ground directly from your main ground.

  • Grounding if properly done will keep all electrical levels to the same 0V which limits faulty signals.

  • Shield all signal cables. Use twisted pairs with individual shields for encoders or other signals.
    Make those shields as tight to the connections as possible.

  • I connect the shield to ground on one end only. This is to avoid ground loops.

  • Avoid ground loops. (Bacically ground wires that run in circle to save wires.) They can amplify your noise levels.

  • Shield your electronic equipment in metal caising of some kind. The enclosure has to be also grounded.

  • Connect pull up or pull down resistors to all Inputs. This will increase the "clarity" of your signal.

  • I try using ferrites sometimes for breaking the noise.

  • Line filters can help.

  • Use a scope to measure the noise levels to determine if your going the right way.

Basically, noise reduction is a small details game that stat at GROUND.

Good luck