My MPCNC made in China

Well, that was the easy part: I looked around myself and saw no ground rod anywhere. XD

What I meant was that I do not have a ground near my machine, sorry, I probably have a ground rod where the outlets of my house are connected too.

 

So, I’m just using the ground from the electrical outlets, I suppose there is a ground rod attached to it somewhere, but given how my house is made it must be pretty far, I guess 30 or 40 meters away. I did not find it.

Most residential uses the water main as a ground.

1 Like

I didn’t know that, but I had the idea to use it… unfortunately it was too far.

Couldn’t find anything remotely suitable close to the machine…

I will make things properly and ask for the electrician to come, here in China it costs peanuts. Plus our compound electrician is a big fan of my work, so he will be happy to see my plasma cutter XD

I ran into that while remodeling this house over the last couple of years. The previous owner had replaced a bunch of the plumbing with PEX in the crawl space, removing the old galvanized (though he thought it was too much work to replace the galvanized in the walls). Guess where the GFCI in the bathrooms were grounded? It turns out that PEX doesn’t conduct worth sh*t… I had to run ground wires vertically through the walls so I could tie them in to the house grounds coming out of the electrical box. But then I now know for sure what the electrical is actually like in this 97 year old house. It still had live knob and spool in most of the house when I bought it. :wink:

That’s not the proper way to ground the wiring though. Everything should be grounded back to the panel, then from there to ground. My house was built in 1832, so I run into the same kinds of WTF wiring hacks too.

1 Like

Yay! It’s working guys, it’s finally working! Alleluia!

So, after a lot of hard work, I finally managed to get the plasma cutter to work properly with the MPCNC. It’s been quite a challenge, but now I’m pretty confident the MPCNC will run quite a bit more reliably.

So, what have I done?

-Shielded everything I could shield: all the motor wires are shielded. On the motor side, the motor body is attached to the wire shielding using some breaded copper sleeve. Then on the other side, the motor cables are attached to the control box using some shielded connectors.

-I’ve built a control box to secure all the electronics, including the power supply, the screen, the Arduino.

-All the chassis is grounded

-Plasma torch is shielded (don’t know if this is useful, but probably couldn’t hurt)

It’s been quite a pain to do this, especially since I’ve originally spent so much time on my wiring using RJ45 wires. Cutting and removing all those neat wires was heart breaking. But in the end, the new system turns out to be a bit cleaner.

So, I made a few tests, and as it turns out, I never had the slightest problem with the Arduino or the motors losing steps. So, problem solved!

The results on those pictures look like crap only because I had no way to secure the material in place. At some points the torch touched the work and moved it, ruining everything. But I don’t really care, my point was just to see if it the machine itself would work correctly, and it seems like it did.

So now, I just need to build some kind of cutting table, I’ve purchased some steel and will try to make one soon.

As usual, tons of pictures:

The electronics Faraday box:

[attachment file=45633]

The Common earth ground star center point. Not pretty but I’ll make it cleaner later:

[attachment file=45634]

The Z axis shielding and the torch shielding:

[attachment file=45635]

Motor shielding:

[attachment file=45636]

The MPCNC right after the test cut:

[attachment file=45637]

Test cut results:

[attachment file=45638]
[attachment file=45639]

The metal plate was about 1mm thick, it took something like 30 seconds to cut.

I still need to find the correct settings for the CNC speed and the plasma cutter air pressure/power, but this is probably the easy part.

I think warping during cut will be an issue, though. I may have to build a water table to keep the sheet cool while cutting. I’ll do some more tests to see if this is absolutely necessary.

Anyway, this is a huge step for me, I now have a real multifunction machine capable of 3D printing, CNC milling and plasma cutting with only 5-15 minutes to switch from one tool to another. Just need to try the laser cut feature and I think I’ll pretty much have everything I’ve dreamed of!

Thanks a lot to Ryan who made this possible!

6 Likes

Wowzers!

Congratulations on persevering. I can’t help but wonder what the heck the issue was. Did you do it in a step by step manor or just do it all at once? I’m wondering if just shielding the torch would have worked?

1 Like

Awesome. Applause!

1 Like

Just shielding the torch wasn’t enough. That was the easy thing so it was the first thing I tried. I think it helped a little, but I didn’t try it for too long since I was afraid the Arduino would die at some point (it kept on freezing/restarting).

Then, I tried with one motor only, using a shielded cable, but only connected to the electronic box and not to the motor case. Worked better, but still had some issues.

Finally, I attached the shielding to the motor case and after that, no more problems, it seemed to work ok. But with only one motor running it’s a bit hard to tell, because the axis doesn’t run very well without both motors. So I wasn’t absolutely sure it worked. At least the Arduino didn’t seem affected, but I wasn’t sure that it was moving properly.

At that point, I decided to make all the other wires, a clean electronic box, soldered all the connectors, etc. Even if it wouldn’t work, in the end it would still be more reliable than my original setup.

And last weekend, I made the first real test. Apparently great success, I could not manage to get the Arduino to bug or freeze no matter how much I started and stopped the torch. I think I’ve started it more than a hundred times and no freeze or issue whasoever.

Clearly the issue was electromagnetic bursts during torch start.

Also, I forgot to mention that I’ve converted my torch for pilot arc. This way it can start the arc even if the torch is far away from the plate (this didn’t help with the electromagnetic interferences, but the torch firing works no matter where it is)

Cool!

I love that you tested it along the way…and didn’t lose a board. Thanks for the details. I really hope I get to make one soon, my welding is getting better so this could really make for some cool projects.

Actually I bought something like 10 Arduino mega, since I was expecting to burn a few ones… Turns out I didn’t even burn a single one!

Yes, you really should try it, I think this will be extremely useful in a shop. I’m not sure yet that this can cut Aluminum. I think it can but I’ll have to try.

If you do so, I recommend you to use those hypertherm plasma cutters, seems like many people are using them for CNC plasma cutting and have less issues with EMI. I suppose the el cheapo plasma cutter I’m using generates a crap load of EMI, hence all the problems I had, but I could not return it to the manufacturer and wasn’t willing to spend any more money on a new one, so I had to deal with it.

Shielding everything was a real pain. It is not very complicated but it takes a lot of time and patience.

Awesome work, I was hoping you would succeed. I like the mini safe to keep your mega safe, mega safe.

1 Like

Can you please upload the (dxf?) file for the metal z-mount? The part we see in IMG_4329.

Hehe, it is not a metal Z mount!

It’s a normal plastic Z mount covered in aluminum tape XD

Ok, so now I will have to tackle an other rather complex challenge with the plasma: creating some kind of torch height controller.

From what I’ve seen so far on my tests, the plates will warp quite a bit due to the heat. This is quite a big issue, because the torch will either be too high, thus not cutting anything, or too low, hitting the plate and stalling the motors. Basically, it has to stay between 1 to 2 millimeters from the plate to do a good job.

I originally thought such a system would be rather inexpensive and easy to find, since it is a pretty common problem for plasma cutters… Turns out I was wrong about that, those things are super expensive.

I’ve made a bit of research, and from what I understand so far, what I have to do is to detect the voltage at the torch, send it back to some kind of controller, and then use this controller to dynamically control the Z axis motor to go up or down.

Sensing the voltage seems to be relatively easy, I guess I just have to build a voltage divider out of a few resistors, then filter it using some caps/inductances. I can then use a little Arduino to program different actions based on the voltage inputs.

But what puzzles me then is how can I use this voltage to actually move up or down the torch during cuts? How do I connect this Arduino to the ramps? How do I make both Arduino communicating with each other during the cut?

The Z motor is controlled by the Gcode, and I see no way to dynamically adjust its position during the cut, I guess there is no such function in Marlin, but I’m not entirely sure, since there is some kind of height adjustment on the fly whenever we use the automatic bed leveling function. So, could it be possible to use this function using a voltage value as the main parameter?

Does anyone knows about that?

If I don’t find a way to do this using this method, I thought of an other possibility, which would be to add another Z’ axis to the Z axis. Using a DC motor, I could make slight height adjustments to Z’ while keeping the Z working as usual. Z’ travel would be limited to a few millimeters and I would need to find some nice way to program it so it doesn’t go crazy during travels, whenever the torch is lifted by the Z axis, but I guess this could work. The downside would be that I would need to build some mechanical parts to create this axis, while finding a way to keep it compact and lightweight.

Any thoughts on that would be appreciated, especially from guys who have programming knowledge or good understanding of how Marlin works

For what it’s Worth, I’m currently testing adding an optional feature in Marlin that intercepts the Z stepper commands and transforms them into servo pulses (to be used in lightweight foam cutters). Got first results yesterday. For now it’s buggy as hell, but perhaps that kind of setup could be used to transfer the “Z height” from main arduino to Z controller, which will provide the fine Z adjustement you need.

as I was reading this post I came up with the same solution as you before id read down to it. I guess this is me saying I like your proposed solution cause you cant know ahead of time what the voltage will be at a certain point in the cut, you have to adjust it on the fly. Its the kind of thing that smarter folk than I could do with analog electronics which would be maybe less prone to the EMI.

If you did the Z’ route, the second Arduino would just need to know when you were cutting it not. Similar to a laser, your only want it turning on when it was cutting. That would be a pretty good solution that any CNC would be able to use.

You could edit Marlin to either send out the z position to another Arduino that was actually controlling the z motor. You could also edit Marlin to accept an input from the other Arduino as an offset in z. You just need to be careful because the motor code needs to execute very frequently so it needs to be fast.

You could also make the second Arduino just read the state of the step, direction, and enable pins from the Marlin Arduino. It would pass those onto the stepper driver, but add in a few steps, or flip the direction and pulse a few more to move the motor.

Since you’ve seen so many Gremlins with emi so far, it seems risky. I don’t think analog is less sensitive to emi, it just used more current. More current is generally less sensitive.

2 Likes

My low tech solution would be to use the torch “training wheels” or some other stand off and a spring loaded mount like the pen holder I made.

That were my first ideas too, but I came to the conclusion that these wouldn’t work.

The training wheels would only work during straight lines, they would be unable to turn properly in corners, no matter what wheels configurations I can think of. If slightly offset, they would sometimes fall into already cut spots, either running the torch too low or simply getting stuck, ruining the job.

A spring loaded mount wouldn’t work either, because the torch should not touch the plate and there is no way to put anything to push it up. I was thinking of using tome kind of ball, a few centimeter away from the torch to push the torch at a defined distance from the plate, but that wouldn’t work either because the ball would just fall off of get stuck whenever running on top an an already cut surface.

I wish there were some mechanical solutions to overcome this issue, it would make things vastly simpler. I just don’t think there is one here, unfortunately…

Active electronic correction seems to be the only realistic option here.