Welcome to Our Community

Some features disabled for guests. Register Today.

deep dive when starting a program

Discussion in 'Control Software' started by ATrom1, Aug 24, 2024.

  1. ATrom1

    ATrom1 New
    Builder

    Joined:
    Jun 16, 2023
    Messages:
    3
    Likes Received:
    0
    Hi everyone :)

    First, I don't really know if here is the best category to post this or CAD would be better. If CAD is better, tell me, I'll remove this one and repost in the proper category.

    So I have a 3-axis cnc. When I run a program on my x32, before doing anything the machine plunges to really deep depths (see photo).

    I'm kinda new to this, but I already managed to run a test program in 2D that went well a little while ago (i.e it did not try to reach the ground of my basement). Then I went for it, not knowing at all what G53 does, and the machine went 10mm below the starting height, because I didn't home anything I guess. I made another test with the same program, without tools or material and it all went well, it went through all the stages of the program without going under the specified bottom height or plunging at the begining (it went straight to clearance height).

    Then I decided to try the real thing, with the material, the tool, etc... It went straight to about -40mm (relative to the top of the material that I probed just before) before I stopped it. Investigated a little, learned about G53 and made the connexion with my very first problem. But -40 ? It makes no sense to me. At no point in the code does it mentions such a depth. I also never took the machine that close to the bottom of the travel that it could have take this as a home. I still went for a second try, making sure to start high enough above the workpiece and reseting grbl, etc. And it went for a dive. Again. So I'm lost... and need a new 8mm bit too lmao.

    I have not found satisfying explainations about G53 that could justify any of this, I have trouble understanding why homing has anything to do with a program, knowing everything is specified in it to start from the probing position... So I think my problem comes from my misunderstanding of G53. But I'm not sure though, because unlike other people scraping their workpiece, my machine just went fully through it.

    Here is the begining of my program:

    Code:
    (Made in : Autodesk CAM Post Processor)
    (G-Code optimized for Grbl 1.1 / BlackBox controller)
    (OpenBuilds CNC : GRBL/BlackBox)
    (Post-Processor : OpenbuildsFusion360PostGrbl.cps V1.0.42)
    (Units = mm)
    
    (Arcs are limited to the XY plane: if you want vertical arcs then)
    (edit allowedCircularPlanes in the CPS file)
    
    (Drawing name : test 1 cnc v7)
    (Program Name : test ap crash)
    
    (3 Operations :)
    (1 : Face5)
    (  Tool 7: Fraise Deux Tailles 4 Flutes, Diam = 8mm, Len = 19.00mm)
    (  Spindle : RPM = 12000)
    (  Machining time : 0h:2m:24s)
    (2 : Poche 2D2)
    (  Tool 7: Fraise Deux Tailles 4 Flutes, Diam = 8mm, Len = 19.00mm)
    (  Spindle : RPM = 12000)
    (  Machining time : 0h:7m:16s)
    (3 : Plat2)
    (  Tool 7: Fraise Deux Tailles 4 Flutes, Diam = 8mm, Len = 19.00mm)
    (  Spindle : RPM = 12000)
    (  Machining time : 0h:3m:29s)
    
    G90 G94 G17
    G21
    
    
    (Operation 1 of 3 : Face5)
    (WARNING Invalid Work Coordinate System. Select WCS 1..6 in SETUP:PostProcess)
    (tab. Selecting default WCS1/G54)
    G54
    (This relies on homing, see https://openbuilds.com/search/127200199/?q=G53+fusion )
    G53 G0 Z-10
    G0 X145.8 Y1.529
    M3 S12000 M8
    G4 P4.
    G0 X145.8 Y1.529 Z15
    Z5
    G1 X145.8 Y1.529 Z-4.2 F333
    X145.793 Y1.529 Z-4.304 F1000
    X145.773 Y1.529 Z-4.407
    X145.739 Y1.529 Z-4.506
    X145.693 Y1.529 Z-4.6
    X145.635 Y1.529 Z-4.687
    X145.566 Y1.529 Z-4.766
    X145.487 Y1.529 Z-4.835
    X145.4 Y1.529 Z-4.893
    X145.306 Y1.529 Z-4.939
    X145.207 Y1.529 Z-4.973
    X145.104 Y1.529 Z-4.993
    X145 Y1.529 Z-5
    X-5 Y1.529
    G2 X-5 Y7.001 I0 J2.736
    G1 X145 Y7.001
    G3 X145 Y12.474 I0 J2.736
    G1 X-5 Y12.474
    G2 X-5 Y17.946 I0 J2.736
    G1 X145 Y17.946
    G3 X145 Y23.419 I0 J2.736
    G1 X-5 Y23.419
    G2 X-5 Y28.891 I0 J2.736
    G1 X145 Y28.891
    IMG_5864.jpg
     
  2. Misterg

    Misterg Veteran
    Staff Member Moderator Builder Resident Builder

    Joined:
    Aug 27, 2022
    Messages:
    350
    Likes Received:
    273
    Not “everything” is specified from the ‘probing position’ (actually the origin of the WCS specified - usually G54). G53 is specifically referenced from the machine coordinate system (MCS). This is set by homing the machine, otherwise it is (effectively) random once the machine has been reset a few times.
     
  3. Alex Chambers

    Alex Chambers Master
    Moderator Builder

    Joined:
    Nov 1, 2018
    Messages:
    2,772
    Likes Received:
    1,358
    OK, to explain G53 (and G54) - a cnc router has a MACHINE co-ordinate system which is used as a reference (g-code for that co-ordinate system is G53) - it sets the back, right, up corner as the maximum dimension for each axis - confusingly at first that corner is normally set to zero - the MACHINE co-ordinates become more negative as you move away from that corner. That reference point tells your controller (with the maximum dimension settings for each axis in your controller's configuration) where all the corners and edges of your machine's workspace are. The MACHINE co-ordinate system (MCS) is often used for safety moves at the start and end of a job because it is an absolute position in the machine's workspace. You have to HOME the machine to set that reference system. A grbl controller will set the home position where it is when you switch on, which is why you have to run a homing sequence to set the MCS correctly.
    Most other things, like running a g-code file, are done in a WORKPLACE coordinate system (wcs). You set a zero point for the wcs (you actually have at least six, but most people only use the first one - G54) in the same place on your workpiece as you set the origin in your cam software - moves can be positive or negative relative to the zero point you set.
    Symptoms like those you describe can be caused by a variety of errors, but the commonest are ;
    Not homing the machine
    Setting the wcs zero point in a different place on the workpiece from the position that you set the origin in your cam software. For example, if you set the origin at the bottom of your workpiece (on the spoilboard) but set the wcs zero on the top surface of the workpiece your controller thinks the spoilboard is at the level where the top of your workpiece is. The other way round and it will try to plunge all the way through the workpiece to reach where it thinks the top surface is.

    Alex.
     
  4. Peter Van Der Walt

    Peter Van Der Walt OpenBuilds Team
    Staff Member Moderator Builder Resident Builder

    Joined:
    Mar 1, 2017
    Messages:
    14,917
    Likes Received:
    4,290
    TLDR version: 1) Always Home then 2) set Zero by probing or using jog and setzero and then 3) run the job

    All the trouble starts when one forgets to Home
     
  5. David the swarfer

    David the swarfer OpenBuilds Team
    Staff Member Moderator Builder Resident Builder

    Joined:
    Aug 6, 2013
    Messages:
    3,435
    Likes Received:
    1,908
    Reading the Gcode we find
    Code:
    (This relies on homing, see https://openbuilds.com/search/127200199/?q=G53+fusion )
    G53 G0 Z-10
    
    So, the machine needs to be homed, always.
    If it does not have limit switches for automatic homing, then you need to fake the home. READ ---> How to 'Fake the home'
     
  6. Peter Van Der Walt

    Peter Van Der Walt OpenBuilds Team
    Staff Member Moderator Builder Resident Builder

    Joined:
    Mar 1, 2017
    Messages:
    14,917
    Likes Received:
    4,290
    ... Spend the couple bucks and get some :)
     
  7. samuel kalika

    Builder

    Joined:
    Jan 22, 2024
    Messages:
    27
    Likes Received:
    3
    I have the exact same problem, homed multiple times, probed and the router keeps diving first thing!
    I put the gcode attached, also from fusion 360
    Clearly, there's a conflict between what the openbuildscontrols takes as a Z starting point (close to the 0 of the base surface) and where it should (stock is 30mm high, probed with the openbuilds probe. Any further clue?

    EDIT: My Z axis is actually not homing. Just not moving at all while homing the other axis. My max travel doesn't seem to be badly setup (128mm), I don't really understand.
    My GRBL:
    $0=10.0 ; Step pulse time, microseconds
    $1=255 ; Step idle delay, milliseconds
    $2=0 ; Step pulse invert, mask
    $3=1 ; Step direction invert, mask
    $4=0 ; Invert step enable pin, boolean
    $5=0 ; Invert limit pins, boolean/mask
    $6=1 ; Invert probe pin, boolean
    $8=0 ; Ganged axes direction invert as bitfield
    $9=1 ; PWM Spindle as bitfield where setting bit 0 enables the rest
    $10=511 ; Status report options, mask
    $11=0.010 ; Junction deviation, millimeters
    $12=0.002 ; Arc tolerance, millimeters
    $13=0 ; Report in inches, boolean
    $14=0 ; Limit pins invert, mask
    $15=0 ; Coolant pins invert, mask
    $16=0 ; Spindle pins invert, mask
    $17=0 ; Control pins pullup disable, mask
    $18=0 ; Limit pins pullup disable, mask
    $19=0 ; Probe pin pullup disable, boolean
    $20=0 ; Soft limits enable, boolean
    $21=1 ; Hard limits enable, boolean
    $22=1 ; Homing cycle enable, boolean (Grbl) / mask (GrblHAL)
    $23=6 ; Homing direction invert, mask
    $24=100.0 ; Homing locate feed rate, mm/min
    $25=1000.0 ; Homing search seek rate, mm/min
    $26=250 ; Homing switch debounce delay, milliseconds
    $27=10.000 ; Homing switch pull-off distance, millimeters
    $28=0.100 ; G73 retract distance, in mm
    $29=0.0 ; Step pulse delay (ms)
    $30=1000.000 ; Maximum spindle speed, RPM
    $31=0.000 ; Minimum spindle speed, RPM
    $32=1 ; Laser-mode enable, boolean
    $33=5000.0 ; Spindle PWM frequency
    $34=0.0 ; Spindle off Value
    $35=0.0 ; Spindle min value
    $36=100.0 ; Spindle max value
    $37=0 ; Stepper deenergize mask
    $39=1 ; Enable printable realtime command characters, boolean
    $40=0 ; Apply soft limits for jog commands, boolean
    $43=1 ; Homing passes
    $44=3 ; Homing cycle 1
    $45=0 ; Homing cycle 2
    $46=0 ; Homing cycle 3
    $62=0 ; Sleep Enable
    $63=3 ; Feed Hold Actions
    $64=0 ; Force Init Alarm
    $65=0 ; Require homing sequence to be executed at startup
    $70=7 ; Network Services
    $73=1 ; Wifi Mode
    $74= ; Wifi network SSID
    $75= ; Wifi network PSK
    $100=161.620 ; X-axis steps per millimeter
    $101=158.420 ; Y-axis steps per millimeter
    $102=400.000 ; Z-axis steps per millimeter
    $110=4000.000 ; X-axis maximum rate, mm/min
    $111=4000.000 ; Y-axis maximum rate, mm/min
    $112=1250.000 ; Z-axis maximum rate, mm/min
    $120=500.000 ; X-axis acceleration, mm/sec^2
    $121=500.000 ; Y-axis acceleration, mm/sec^2
    $122=150.000 ; Z-axis acceleration, mm/sec^2
    $130=990.000 ; X-axis maximum travel, millimeters
    $131=1490.000 ; Y-axis maximum travel, millimeters
    $132=128.000 ; Z-axis maximum travel, millimeters
    $320=grblHAL ; Hostname, max: 64
    $322=192.168.5.1 ; IP Address
    $323=192.168.5.1 ; Gateway
    $324=255.255.255.0 ; Netmask
    $325=23 ; Telnet port
    $326=80 ; HTTP port
    $327=81 ; Websocket port
    $341=0 ; Tool Change Mode
    $342=30.0 ; Tool Change probing distance
    $343=25.0 ; Tool Change Locate Feed rate
    $344=200.0 ; Tool Change Search Seek rate
    $345=200.0 ; Tool Change Probe Pull Off rate
    $346=1 ; Restore position after M6 as boolean
    $370=0 ; Invert I/O Port Inputs (mask)
    $384=0 ; Disable G92 Persistence
    $396=30 ; WebUI timeout in minutes
    $397=0 ; WebUI auto report interval in milliseconds
    $398=35 ; Planner buffer blocks
    $481=0 ; Autoreport interval in ms
    $I=acro1510
     

    Attached Files:

    #7 samuel kalika, Sep 9, 2024
    Last edited: Sep 9, 2024
  8. David the swarfer

    David the swarfer OpenBuilds Team
    Staff Member Moderator Builder Resident Builder

    Joined:
    Aug 6, 2013
    Messages:
    3,435
    Likes Received:
    1,908
    nothing wrong with that gcode, it expects the top of the material to be Z0, and it expects Z home to be the top of Z travel as is standard on all CNC mills.
    Homing sets the top of Z travel part (and any power cycle or reset will change that, so those would require a rehome) , and probing the top of the material sets the Z0 'for this part'.

    I do note that your postprocessor is a bit old and should be updated.
    (Post-Processor : OpenbuildsFusion360PostGrbl.cps V1.0.37)
    GRBL post for Fusion360
     
  9. Peter Van Der Walt

    Peter Van Der Walt OpenBuilds Team
    Staff Member Moderator Builder Resident Builder

    Joined:
    Mar 1, 2017
    Messages:
    14,917
    Likes Received:
    4,290
    Fix that first. Homing required, implies a succesful homing run. It has to he HOMED (not just tried to home)

    $44=4 ; z first
    $45=3 ; then xy
     
    David the swarfer likes this.
  10. samuel kalika

    Builder

    Joined:
    Jan 22, 2024
    Messages:
    27
    Likes Received:
    3
    Thanks Peter and David!
    So when I do this, the homing goes down (my limit sensor is up), so homing fails. If I invert Z, homing works, but it doesn't really work out :) It feels like such a basic mistake I'm missing!
    This is a picture of the setup so you see what I'm talking about.
     

    Attached Files:

    #10 samuel kalika, Sep 9, 2024
    Last edited: Sep 9, 2024
  11. Peter Van Der Walt

    Peter Van Der Walt OpenBuilds Team
    Staff Member Moderator Builder Resident Builder

    Joined:
    Mar 1, 2017
    Messages:
    14,917
    Likes Received:
    4,290
    1) make it jog correctly in $3 Direction Invert. Z+ should lift Z up and away from the spoilboard

    upload_2024-9-9_17-6-32.png

    2) In $23 Homing dir, tell "where the switches are" - at axis min or max. For Z must be Max and Max must be with the bit drawn up and away from the stock/spoilboard as far as it will go.

    upload_2024-9-9_17-6-16.png
     
    samuel kalika likes this.
  12. samuel kalika

    Builder

    Joined:
    Jan 22, 2024
    Messages:
    27
    Likes Received:
    3
    Brilliant! works now :)
    thanks so much!!
     
    Peter Van Der Walt likes this.

Share This Page

  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice