Ok. My bad. Just searched a little and found an old discussion on the topic and that it will be hard work to implement.
Does negative feed completes a full line segment or can it ride the line back and forth to any position until reversed?
Aluminum 22.12.4.mov
2 MB
This video is of 4mm aluminum we cut on the Ender 3
one sec I will add a pic. Thought the video would embed
@gedm-dev It runs the whole G-code program in reverse.
Until stopped? Let's say it just want to retract a tiny segment of the line and then go back. Possible?
@Andy Pugh that sounds perfect.
Does it handle arcs as well?
I would guess it only runs in reverse until the trigger is not flipped for that to happen
@gedm-dev It runs backwards as long as the adaptive-feed is negative, stops if it is zero, runs backwards at hald speed if it is -0.5. backwards at double speed if it is -2 etc etc
I forked grbl and made it usable for EDM. And decided against reversing the full GCode since arcs would just be a pain to reverse.
The idea would be to program a feed faster than the cut, and have the controller adjust the speed up/down/reverse to manage the cut.
@gedm-dev Watch the video I linked above.
The video shows an arc
Very cool stuff.
In marlin, delta printers convert straight lines into very short segments that are straight-enough. Could this be leveraged for the retractions?
That was John, my co-founder who made that video.
If it works it works. I don't think it is too hard without adjusting feeds. The feed should normally be created by the feedback itself. In my first tests I tried using some PID controlled feedrate adjustments. It worked somehow. But other ways turned out to work better.
Can the electrode wear be compensated by taking periodic checks by touching the electrode against eg. a touch probe?
@Andy Pugh nice work. Must be brutal to get running to that point.
Thomas, this is normally not necessary or ideal. It is best to work with a known diameter tooling and to just move to a "clean" portion of it
@gedm-dev That's what I was meaning, the programmed feedrate is set "out of the way" of the system, just because G-code needs one, and then the entire process is managed by a PID (or similar) that controls the adaptive-feed pin to achieve the desired arc voltage (or whatever the actual process variable is)
Wear ratio between tool and work is generally pretty consistent. Once you nail down the feed rate for a given matl you can use that
Interesting - so what is the best combo of process variables you've found?
In practical terms, can you swap a printer back and forth from FDM to EDM? Or are you better off just buying a dedicated printer for EDM work?
Nyles that is a pretty complex question lol
Yes it is :D
Hi Ethan.
We define wear ratio as the ratio between XY motion and the necessary Z movements.
For thinner aluminum or titanium you can use a low ratio like 0.03
For thicker stuff you'll need a higher ratio. We've set things up like this not because it will make a perfectly efficient process, but because it will be easy for people to use.
Dan, you can absolutely swap back and fourth. It is a rather fast process on the Ender and we have done so a few times. If you plan on doing a lot of EDM it might be easiest just to have a dedicated machine though
@Andy Pugh Are you going to write the new software for the rack team?
I need no excuses to buy more tools...
There are no firmware changes required on a stock Ender 3 or similar printer to run EDM, so it's just physical parts that get fastened on
You do not need the excuses. But... do you WANT them?
Lol only $99 at microcenter!
I noticed that the github link to the reverse-run-2.7-rebase branch seems to be 404.
Do you have another link to the source?
Alas, the nearest Microcenter is at least a 6 hour drive for me
💀
Nyles, something interesting regarding process parameters has to do with electrode materials. Generally you'll run electrode negative for EDM'ing for speed using brass and graphite. But you have to run copper electrode positive to make anything useful happen.
Slower burn with copper, but better surface finish from what I've seen. Better wear compared to brass too.
@darkomenz It's fully integrated into the current 2.8 released version.
Hah, that hurts my head. :)
Can oil be used instead of DI water?
yep!
We've also used rubbing alcohol in a pinch.
@darkomenz You just need to do a G52 P1 to enable adaptive feed, and then vary the motion.adaptive-feed pin
Oops, it's actually 15 hours away -- the one in Denver
@Andy Pugh Awesome I am just digging for some more documentation to see how its used. Any chance you can help?
I wouldn't recommend using alcohol though.
@cooper of course you need firmware changes. The stock firmware may work somehow with aluminum. Does it work with steel? It won't work with steel. Maybe somehow some things can get working but it won't be any good.
@Thomas Shaddack we are having good success with regular distilled water from the store. No need for DI water on the desktop
Also@gedm-dev the firmware of the printer does not need to be changed. The Powercore is what's doing the EDM, not the printer.
No degradation of conductivity over time?
So it works with steel?
Thomas, there is some increase in conductivity, but not much. More problematic will be the waste material in the water
I used to run a sample-preparation EDM (back in the 80s) which ran paraffin (kerosene) as the dielectric.
Yes, we have had success with steel cutting.
How many steps does it take for Marlin to stop am move?
Any pictures?
Andy, this is generally used in sinker EDM from what I've heard. When there is large surface area or difficulty flushing.
I have also heard of people using WD-40!
I don't have a pic on me. There may be one on the discord.
I don't have a lot of hard data on steel yet as we only really got that working after the KS ended and we have been swamped with work fulfilling that.
Cooper--looks like you are using a single, high voltage power supply for both the initial ionization (>40V) and also for delivering the power for the spark (around 22V +/ 2-3 volts), but this means a lot of power dissipated in the PCB power resistor. Did you look at what seems to be more common in commercial units, to use two power supplies? Low current high voltage for the ionization, low voltage high current for the spark.
Marlin needs a given amount of steps to securely deaccel and stop. The number of steps is what is left in the buffer. I don't know how many steps it takes to stop the motion but the number of steps is high enough to make it a problem for EDM.
@Dale Grover we have a new configuration in the works that is closer to that. Talking with our electronics designer we believe that a more efficient supply will be very attainable.
@gedm-dev we have not had issues with that. Our system runs fine open loop so far.
Power is definitely wasted in the power resistor. This is something we want to get rid of asap
Does the deceleration/acceleration play role in the very slow movements of the EDM process? You can watch this video. It shows the first x motion with the GRBL fork with 2mm HSS.
From the concept and what you say this should work with any printer. But somehow it doesn't appear to be that easy for some reason. And that reason is somewhere in the firmware.
@Thomas Shaddack this is more due to the material removal rates. EDM uses very small sparks that can only reach so far
You also have to remove waste from the interelectrode gap
Two supplies also enables opportunities to sense various conditions--arc, open, short, etc.--fairly quickly in the process so you can take action faster.
@Thomas Shaddack It does. Depending on the voltage t can be 10 steps from spark to short circuit.
If you have 80 steps in the segment buffer.. You get the math.
That's what I mean. Low rate -> slow movement -> no need to deal with acceleration.
Thought. A pulse signal from the power supply to a controller GPIO. Spark happen, we wait a tiny bit in the stepper.cpp before we do next step. The auto-slowdown.
I think the absolutely fastest we've push the current setup was around 120mm per minute linear feed, but that was really thin .5mm aluminum.
The concept of marlin uses a planner buffer to create the instruction blocks and then passes them to the segment buffer. If you stop a motion you need to run the current segment buffer to the end. Deaccel or not it will take the steps left.
There is some compliance in the brass rod that helps to self adjust the gap
So In my opinion Marlin as it is won't ever do good with steel.
(the talk of big sparks and rapid removal just reminded me of it)
Absolutely not the same thing, but I was very impressed by the finesse in arc-gouging shown here:the EDM process has SOME force to it when a spark occurs. This pushes the cantilever rod back enlarging the gap.
You can't really see it happening, but if you hold the rod in your hand(don't do this btw) you can feel it pushing back
The force of the gas bubble from the spark?
Yep!
@Andy Pugh that's super cool stuff. We have done some of this on titanium with our Powercore out of dielectric. It looked like a welder in here lol
Any issues with UV exposure?
None that we've experienced.
Isn't the UV shielded away by the workpiece, electrode, AND the process fluid?
Yes. You can still see the sparks so I assume there is something going on there. Water is pretty good at absorbing/scattering UV iirc
Your system runs fine with 1mm aluminum sheets. You showed one picture of an attempted cut into steel that looked like it was a pain and needed hundreds manual electrode corrections and still did not finished well.
If you would be able to do it there would be pictures like you showed the one of the 4mm aluminum cut.
We started our testing back around December of last year on steel. That's likely what you're referring to. We're having better success with steel now.
But to be fair. If it is possible to cut steel with your concept on an avergae Ender without firmware update. Cool. I'll buy it.
If you give any guarantees this works of course.
Also, gotta start somewhere. I expect wire EDM to be much more useful than rod EDM
So we're up past the top of the hour and I haven't yet dropped a decent EDM pun, so let me just say that I really appreciate all the discussion this Hack Chat sparked today. Thanks so much to Cooper for suggesting this topic and for giving up his time to come talk to us. And thanks to all for the great questions.
Feel free to keep the discussion going, of course -- the Hack Chat is always open for business!
Can it work with sintered metal? There are 3d printing filaments (metal in thermoplastic binder) that can be fired into massive metal, with some shrinkage and consequent inaccuracies. The sexiest material I saw printed this way is inconel, which is also a royal pain weknowwhere to machine. (More common filaments are tool and stainless steels, copper, bronze...)
Thank you all! Topic: Spark gap control with GRBL:
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.