Dev build End stops compensation?

I had been trying to tweak this problem:
I use Repetier has a CNC machine, the X and Y axis are switched in the Min pins (they are adjustable since CNC jobs don't always start at the corners of the table), but the Z axis is done with an alligator at the router bit and a 2 mm steel plating, they make contact and a signal de-bouncer do the job great; The problem here is the 2mm gap that translates into a Gcode tweak i do every time while modeling, is there a config for it?

So far i had only tweaked:

//This is the back move the firmware does while probing the end stop switches (?)
#define ENDSTOP_X_BACK_MOVE 10
#define ENDSTOP_Y_BACK_MOVE 10
#define ENDSTOP_Z_BACK_MOVE 10
//This is the back move after the Min place has been calculated (?)
#define ENDSTOP_X_BACK_ON_HOME 0 
#define ENDSTOP_Y_BACK_ON_HOME 0
#define ENDSTOP_Z_BACK_ON_HOME 0

Questions:

After the axis has been configured using the Min switch, the ENDSTOP_X_BACK_ON_HOME moves the actual home of that axis? in the software i mean.

Even if i tweak the 2mm gap due to the steel probe i get more than 2mm of real offset (5mm offset), where does those 3 mm come from?

Also even if i do those 5mm after hitting Start print i get another offset, lets say:

1)19mm material + 2mm steel probe = 21mm total.
2)All axis are homed and Z probe has a 2mm offset with the real material.
3)In software a starting depth of 2 mm is selected and a finish depth of 8.5 if selected (Since i only need 6.5mm of carving)
4) Print started but bit wont come close to the 19mm material and also a ~5mm gap is always created betwheen the bit and the material even if the starting depth is changed in the software.

Also after a Kill print the Z axis goes up around 5mm when manual adjustment is done, creating more offset.

I Googled the config variables but no CNC based documentation is available, I'm stuck in a wall since only the Dev has G32 G33 capabilities :'(

Comments

  • So do you have configured alligator (what is that?) as z min endstop and as z probe?

    That would be the first step required here I think. In that case you need to set z probe height so that it is the distance between too bottom and bed when you measure. Now I' not sure if you always have the 2mm from steel plating when measuring or not. If it is not constantly used reduce z probe height by 2mm and set bed coating to 0 or 2 depending on the use of it.

    Homing measures the bottom of the printer. Often moves below z<0 are not allowed and blocked especially if you home z on top of your material. In newer dev versions we have modified F30 to this syntax:

    - G30 P<0..3> - Single z-probe at current position P = 1 first measurement, P = 2 Last measurement P = 0 or 3 first and last measurement

    - G30 H<height> R<offset> Make probe define new Z and z offset (R) at trigger point assuming z-probe measured an object of H height.

    You need the second version here.

    G30 H19 R2

    would assume 19mm material plus 2mm steel plate when measuring, so material starts at z=0 and you can down until z=-19

    G30 will do no bed coating correction so you need to add it as R parameter if used.

  • Gave  G30 H19 R2 a try and after a single probe it trows an arror saying "Could not activate Z-Probe offset due to coordinate constraints", also in the Z min pin ant the probe pin do are separated.

    Am I missing other configs? I feel like I'm missing steps.

    Configuration.h
    https://drive.google.com/file/d/1-3jL1lMAWzA6z5tEXAE04DfzGvIcUfM-/view?usp=sharing

    Also video for ref.


    What would be the proper configuration for CNC milling for this case?
  • I'm a bit confused that z min and z probe are separated. When I saw it right you homed by adding a alligator to your tool so offset is 0. Then you home z on the plate which is 2mm heigh. Since this is a standard z min homing the position of trigger is supposed the minimum z depth, so you should start 2mm over the model and have no chance to go down. Which is what you describe so everything with that respect seems to be ok.

    That is why you need G30. The error you get is if activating the probe (meaning move it x offset/y offset) results in a position outside your reachable area. In config you have set it 0 but I guess in eeprom you have a different value, so you need to check there or copy config values to eeprom with
    M502
    M500
    .

    What is your z-probe in that case? Would have thought you use the alligator trick also for z-probing. After reading the code I would not z home a cnc at all. Only use the G30 command. Use z homing only if you can measure the bottom height and do not measure the parts top side.
  • First a quick image 
    Would this be the correct way to look at the coordinate system in 3D printers?, since 3D printers go from buttom to top?, because the CNC software I use goes from top to bottom (ArtCAM), back in 0.92 Z Min was manually set using Emergency Stop and hitting "Home Z" (since Z min switch was disabled), but since only 1.0 is able to use G33 for the so needed distortion map on my "almost flat" CNC bed and "almost flat" plywood; this Z min and the non negative Z coordinated go beyond my knowledge.

    Also keeping in mind that each time i change the router bit my Z-probe height changes, and moving that 2mm steel plating for each of the G33 distortion map would be tedious.
  • Quick edit: G30 H19 R2 only gives "fatal:G30 probing failed"
  • Ok your z home and z probe is exactly wrong. z min is for homing to detect absolute minimum ( requiring the area to be empty).
    z probe is if you want a reference point measured and other stuff.

    Check M119 - z probe must be L before you start G30 or it will also fail. H indicates it already touches so nothing to probe. Maybe you need to invert signal.
  • Its on low, with a signal de-bouncer:
    02:24:23.001 : endstops hit: x_min:L y_min:L z_min:L Z-probe state:L

    I home X, then Y, send a G30 H19 R2, does one probe, goes up and fatal:G30 probing failed.

    Back on 0.92 I could use ArtCAM without endstops and could move any axis into negative coordinates at free will, only had to hit emergency stop and all the axis got to cero, but in 1.0Dev (wich i need for distortion map for wood natural curvature) i cant move any axis at free will nor i can make my Z axis go down.

    So Z Min of for detecting my bed surface without any kind of material on it, kind of like a empry 3D printer, Z probe is for G29, G30, G33 etc. 
  • Whats in log before "fatal:G30 probing failed.". z probing has extra info messages if it aborts after going back that show what went wrong. Normally z probe not untriggering is the reason.

    And yes, it's like a 3d printer since it is a 3d printer firmware that can be used for cnc:-)
  • Changed the Arduino Mega and suddenly all worked, made a EEPROM clear program for the other Arduino, swamped the rascals and all worked like a charm... Did a M502 and M500 before but it seems EEPROM just had a Gremlin.

    So getting back in the G30 H19 R2 tweak, the Z robe has a 63.400mm height and the material is 19mm thick so for a G30 redefined Z would be G30 H19 R0? since there will be a 0mm offset (tested and it did work, just curious about parameters and that I'm not cheesing this :P).
  • Doesnt work still, Home X they Y and it seems like Z must be homed to be able to go into negative Z values, CNC model Goes from Z cero (top) to Z -19 (bottom of material), but in the CNC software it just parks at Z cero "0", this is so frustrating :'(
  • change homing to ZMAX.
    procedure :

    Home z , Home x , home y , then probe .
    That´s the way it works for me
  • RAyWB said:
    change homing to ZMAX.
    procedure :

    Home z , Home x , home y , then probe .
    That´s the way it works for me
    Disabled "Z homing in negative direction direction (towards min endstop). (Z_HOME_DIR)" and configured Z max to be 250mm, so after homing Z, X and Y, my home coordinates are X:0 Y:0 Z:250, but as soon after "G30 H19 R0" Z axis goes up an error appears "G30: failed probing", do I need a real ZMAX measure or am I missing other config? :S
  • do you have endstop at z-max?

    what happens when you home z and send  G0  Z200 afterwards (without probing)

  • edited November 2017
    After "G0 Z200", Y in software goes from 250 to 200, but Z axis keeps going down and has no intentions to stop, had to emergency stop, used G0 Z240 and did the same. Have a Z-Max switch and homing to it works fine. Manual Control works fine and does respect boundries. Z probing still goes up instead of down :<
  • z-max homing is in deed a good trick. Apart from never hitting an object you can set z length > height allowing to go everywhere and you can use G92 Z0 to set z=0 at any height.

    After homing chaneck M114 to see what firmware thinks where it is. Moving from there 10mm should move 10mm.

  • Repetier said:
    z-max homing is in deed a good trick. Apart from never hitting an object you can set z length > height allowing to go everywhere and you can use G92 Z0 to set z=0 at any height.

    After homing chaneck M114 to see what firmware thinks where it is. Moving from there 10mm should move 10mm.

    So the steps would be like RAyWB said + Repetier team:
    1-Home Z, X and Y in that order.
    2-Manually move my router bit on top of material.
    3-G92 Z0 to redifine current Z position to 0.
    4-M114 to check X:0.00 Y:0.00 Z:0.000 E:0.0000
    5-G30 H19 R0 wich allow Z negative movements?
    6-G33 for my so needed distorsion map.
    7-Print *_*
  • edited November 2017

    Quote:

    "Y in software goes from 250 to 200, but Z axis keeps going down and has no intentions to stop, had to emergency stop, used G0 Z240 and did the same. "

    maybe you should post your configuration.h  to see whats going wrong with your z-movement, seems you are mixing things

  • edited November 2017
    RAyWB said:

    Quote:

    "Y in software goes from 250 to 200, but Z axis keeps going down and has no intentions to stop, had to emergency stop, used G0 Z240 and did the same. "

    maybe you should post your configuration.h  to see whats going wrong with your z-movement, seems you are mixing things

    I meant Z, srry its 2am after job/kids, but still, after homing Z to ZMAX switch and X/Y to Min the coordinates are: X:0, Y:0 Z:150 (Changed Z from 250 to 150, wich is about the distance from bed to router collet [not bit]), but still using G0 Z(something) makes the Z axis go down and not stoping.

    Edit configuration.h: 
    https://drive.google.com/file/d/1j_EH_qro8-DpE198Tki8JdeVU5QXX9v0/view?usp=sharing

    Edit:
    So far all if working like magic, only problesm is that G33 does an all axis homing followed by a Z axis falling that does not stop after Zprobe activation followed by a Z axis crash (nor it moves for the Zprobe offsets).
  • edited November 2017

    maybe you should check eeprom values if they match the values you wanted to have.

    especially check steps for Z-axis.

    cannot see unusual Setting in configuration.h on first sight. i just wonder why z-axis homes to max 

    and doesn´t stop when moving downwards.

    as you wrote you set z-max to 150 so if you send G0 Z140 it should just move down 10 mm´s

  • Cleared EEPROM with Arduino IDE, uploaded Repetier Firmware again and all works like a charm sending G0 Z140 does work as intended now, also it seems that G33 still crashes on Z axis, was it changed to work only with Z-Min?, After sending G33 an Axis Homing is done for all axis and after that Z axis starts to go down ignoring Z-Probe switch (still Z-Probe offsets are ignored), tried disabling Z-Min pin and still G33 totally ignores Z-Probe.

    Bed Measuring Method is set to n * n Bed leveling grid size is 10 probing a 20x20 square doing software correction/rotation.
  • G33 is designed to measure the bed unevenness so it basically tries to measure at z=0 + z probe distance. You want to use the top of your wood sample I think. Adding the wood size to z probe distance could trick it into measuring but then all values are exactly that value too high and you would need to reduce them manually. G33 L0 would list them as commands which you can copy to an editor and edit z values and send the result back. Of course you then need to set correction over full height and not to be reduced after z=0 (real).

Sign In or Register to comment.