CauldronDevelopmentLLC / CAMotics

Open-Source Simulation & Computer Aided Machining - A 3-axis CNC GCode simulator
Other
614 stars 143 forks source link

Implement canned cycles, G73, G76, G83, G84, G87, G88 #39

Open jcoffland opened 10 years ago

jcoffland commented 10 years ago

G73, G76, G81-G89

Also update this page when fixed: https://camotics.org/gcode.html#missing-linuxcnc-codes

alan-bc commented 6 years ago

Any news on this?

My story is that I have for years had a 2.5D milling machine. That is, a machine with ballscrews on the X and Y axis and something horrible on the Z, with additional hand cranks on all three.

Drilling on this machine is a manual process, which includes tweaking the GCode. Single step under CNC control would get me to a location, I manually drilled the hole with the crank, next step got me to the next location, etc. A pain, to be sure, but workable.

I have recently had the good fortune to acquire a machine with ball screws on X, Y and Z, but no hand wheels. It's CNC for all actions, including drilling (G83) cycles.

It would be VERY nice to be able to simulate this part of the machining process, just to be sure I've got it right.

Now, I could (maybe) write a post processor to tweak the GCode to "unroll the loop", as it were, turning the G83 cycle into a WHOLE WHACK of G00/G01 commands.

But my chance of success in such coding is admittedly small, and if someone else was to simply improve the simulator ...

:)

fraesoholic commented 4 years ago

Version 1.2.0 mac OSX, WARNING:/Users/../Desktop/testdrill.nc:15:Not implemented: G83 (Peck Drilling)

G82 works

ralfg

tcurdt commented 1 year ago

This issue is open for a while now 🙃 and I just checked the code for G83 and G73.

https://github.com/CauldronDevelopmentLLC/CAMotics/blob/590befad5ddf5d31fd6e1f2ddfdf9431b2c4b65a/src/gcode/ControllerImpl.cpp#L1107

Couldn't we just use drill(vars, false, false, false); // Better than nothing for all the drill commands and print a warning, @jcoffland ?

The result should be virtually the same for the users. And while not quite correct it would still be heaps better than "not implemented".

jcoffland commented 1 year ago

Done.