reference post: Plasma cutting working
The above referenced post does a nice work sorting out the plasma cutter use case for LB. I’m in the process now of building a CNC plasma cutter, I expect to be ready to burn in about 2 weeks. I currently use LB on another router/laser CNC machine, and I like LB in many ways that I see will be beneficial and efficient when controlling and cutting on the new plasma machine. The system I’m building recommends CAD/CAM such as Fusion360 w/UGS, and I’ll use that just as I do now when routing on my current CNC when engineering drawings are required for the cut. But for artsie/craftie laser work, I like LB; quick and easy. So I’d like to request that LB consider what may be a simple feature to fully enable plasma use case when torch height control (THC) is available in the CNC plasma machine.
What I believe is lacking from LB right now, for the plasma cutter w/THC use case, is the “per-cut focus touch-off” (PCFTO) feature that Oz mentions in his reply to above ref. post. I will be using the Proma THC SD. https://www.proma-elektronika.com/compact-thc-sd-step-dir-pid-generator/ , which as the post describes manages the torch height once cutting has commenced, independent from gcode gen and send sw such as LB. As such, getting the initial torch height (ITH) set BEFORE EACH CUT (M3 command), and performing a Z retract AFTER EACH CUT (M5) is all that should be needed to round out LB support of plasma cutting. So I believe it may be relatively easy for LB to implement the missing PCFTO, by adding a similar feature as you recently did in “Device Settings -> GCode” window, which adds user defined gcode blocks to the beginning and end of cut jobs. For plasma support, simply do the same for begin and end of cut sequences within a job ! , basically prior to each M3 and after each M5 command. LB would also have to push/pop from an internal stack the last known settings of F, S, G21 or 20, and G91 or 90 as those will likely be changed in the user def code blocks. User def code blocks in this use case are something like this:
**** begin user defined gcode BEFORE each cut in 1 plasma job ****
(LB push F, S, G21 or 20 mode, and G91 or 90 mode)
G21 G91 (metric and relative)
(before start of job, user should move Z to set torch height no more than travel in next line, so less than 35mm above in my example here. Thereafter the Z retract in the AFTER code block will manage this for each subsequent cut.)
G38.2 Z -35 (-THT) F400 (THT=Torch Holder Travel, fast probe down until THT limit switch closes, connected to probe input)
G1 Z 6 (+THT) (fast retract to prepare for a slow probe down)
G38.2 Z -8 (-THT) F100 (slow probe down)
G1 Z 1.5 (+THT) F200 (retract to ITH or pierce height)
(LB pop F, S, G21 or 20 mode, and G91 or 90 mode)
**** end user defined gcode BEFORE cut *************************************
M3…
LB movements to next cut…
M5
**** begin user defined gcode AFTER each cut in 1 plasma job ****
(LB push F, S, G21 or 20 mode, and G91 or 90 mode)
G21 G91
G1 Z 33 F800 (fast retract to safe height and to ready for probe in next cut. THT not a factor here, torch holder is already fully extended in travel)
(LB pop F, S, G21 or 20 mode, and G91 or 90 mode)
LB move to next cut…
repeat.
THT is going to be different for each user’s machine, but otherwise its a constant the user will know. The units, relative vs. abs, retract height, probe start heights, ITH, and feed rate are whatever a user feels comfortable with in the user def code; even doing a double (fast/slow) probe vs. single probe is up to each user.
Bonus Feature: If the user def code blocks UI can be included as a Cut Layer setting, that would facilitate cuts on different types of metal as well as different thicknesses of metal and as such can be saved in the library. Also, consider that if THT can be externalize from the code block and set in the Device Settings, then it can be referenced as a variable in the user defined code block.
LB thoughts on this ?
Thanks much.
My machines: Mill Right CNC, Carve King Router/Laser, and Mega V Plasma/Router (in build)
Laser: Jtech 2.8W
grbl 1.1 on Arduino controller
Windows 8.1 and 10 for LB platform
Lou Cipriano