Hi Guys,
I need some guidance on how works the soft limits in GRBL.
I’m trying to carve the usable area on my waste board. The end goal is to carve a grid so I can have an exact square referential to clamp pieces.
I’ve set the soft limits and tested them: work fine.
I used easel to trace the outside perimeter of my working area.
X,Y ; 740mm,790mm /29.13”,31.10” but I made my perimeter slightly smaller on purpose.
Here is the Gcode associated:
G20
G90
G1 Z0.15000 F9.0
G0 X29.12683 Y31.08368
G1 Z-0.06250 F9.0
G1 X0.01693 Y31.08368 F40.0
G1 X0.01693 Y0.01693 F40.0
G1 X29.12683 Y0.01693 F40.0
G1 X29.12683 Y31.08368 F40.0
G20
G90
G1 Z0.15000 F9.0
G0 X0.00000 Y0.00000
G4 P0.1
My problem is that I hit a soft limit all the time. Through Easel, I home the machine and then when I try to probe, the system is stuck and I need to reset the alarm (which is a pain in the b*tt)
I’m not sure at which point it detect a soft limit is reached…
A question I had when I was troubleshooting: the soft limits apply in which referential ? From the zero machine to $130, $131, $132 right?
Because I set $limits from the home position. If I restart the machine and $X, I understand that it’s going to set the zero machine right where is the spindle. At that point the soft limits won’t be useful as I could potentially hit something because the limits are offset by the spindle position.
Also when I probe, I set the zero Z workpiece right ? I try to understand which command Easel is sending ($?)
I use Easel for the interface but I use UGS to troubleshoot. Ultimately I think I’ll switch all the time to UGS. Easel is good for now to understand the different steps to do before to start the carving but I feel the friendly interface gets in the way to truly understand what’s going on. I learn more about the machine with UGS.
Thanks for your help guys. Also below is my $$
$0=10 (step pulse, usec)
$1=255 (step idle delay, msec)
$2=0 (step port invert mask:00000000)
$3=2 (dir port invert mask:00000010)
$4=0 (step enable invert, bool)
$5=1 (limit pins invert, bool)
$6=0 (probe pin invert, bool)
$10=115 (status report mask:01110011)
$11=0.020 (junction deviation, mm)
$12=0.002 (arc tolerance, mm)
$13=0 (report inches, bool)
$20=1 (soft limits, bool)
$21=0 (hard limits, bool)
$22=1 (homing cycle, bool)
$23=3 (homing dir invert mask:00000011)
$24=50.000 (homing feed, mm/min)
$25=750.000 (homing seek, mm/min)
$26=250 (homing debounce, msec)
$27=1.000 (homing pull-off, mm)
$30=1. (rpm max)
$31=0. (rpm min)
$100=39.900 (x, step/mm)
$101=39.918 (y, step/mm)
$102=188.976 (z, step/mm)
$110=8000.000 (x max rate, mm/min)
$111=8000.000 (y max rate, mm/min)
$112=500.000 (z max rate, mm/min)
$120=500.000 (x accel, mm/sec^2)
$121=500.000 (y accel, mm/sec^2)
$122=50.000 (z accel, mm/sec^2)
$130=740.000 (x max travel, mm)
$131=790.000 (y max travel, mm)
$132=100.000 (z max travel, mm)