584,846 active members*
4,630 visitors online*
Register for free
Login
Page 1 of 2 12
Results 1 to 20 of 35
  1. #1

    Three axis touch plate setup

    I have the Triquetra 3 Axis touch plate from Charlind Woodcraft and he provides an excel document that makes a G-Code(?) file that can be copied into Mach 3 to use the Auto Tool Zero button. Is there a way of modifying this code to work with UCCNC? I have the macro enabled excel document that sets up the G-Code but it wouldn't let me upload it to this thread. I can email it to whomever would like to check it out. Thanks

  2. #2
    Join Date
    Jun 2015
    Posts
    943

    Re: Three axis touch plate setup

    Duplicated post!

  3. #3

    Re: Three axis touch plate setup

    Quote Originally Posted by OlfCNC View Post
    Duplicated post!
    Not really, I tried using the M31 just like suggested in the other post but it does not work the same. I have a specific code generator that is in excel format that I am trying to get assistance in using with UCCNC. The coding seems to be different between Mac 3 and UCCNC. I have no experience with coding so I am asking for help. Is that allowed in this forum?

  4. #4
    Join Date
    Jun 2015
    Posts
    943

    Re: Three axis touch plate setup

    The M31 macro does what it is coded in there in the macro file.
    Probing is done with G31 g-code just like in Mach3 and that is what is coded in the M31 macro and some extras around that code which you can modify.
    The g-code the uccnc understands is mostly the same what Mach3 does, the macro coding is different though.
    I'm not sure what is allowed on this forum, I'm not an admin.

  5. #5
    Join Date
    Apr 2014
    Posts
    215
    M31 does not at present appear to work the same as mach3

    M31 does not store the probed values anywhere (in Mach it puts them in a file, and there is a function in vbscript to open and close a file... so you can export values from Mach into a log file)

    Think of m31 at present as a touchoff or zeroing macro only.

    There is a short post on it here which I don't think has been resolved or integrated (yet)

    .... wondering where the next major release is....today's seemed to just be a bug fix

    http://www.cnczone.com/forums/uccnc-control-software/278538-uccnc-probing-suggestions.html

    Rob

  6. #6
    Join Date
    Jun 2015
    Posts
    943

    Re: Three axis touch plate setup

    I don't think or can't recall if there is a M31 macro in Mach3, probably there isn't.
    But M31 is just a macro number, its one of the text macros, it could be macro M301 or M1234 or anything else.
    The macro is a text macro coded in the macro text file. What it does is it executes a G31 and doing some axis zeroing etc.
    If you take a look into the macro file you will see what it does.

  7. #7
    Join Date
    Apr 2014
    Posts
    215

    Re: Three axis touch plate setup

    OlfCNC

    Sorry, I'm having one of those moments.... multitasking and achieving nothing.....
    you are right.... no M31 in mach.... I am getting cinfusted with G31 (straight probe)

    CNC Mach3 M-Codes

    CNC Mach3 G-Codes

    Long and the short where do the probing values end up with UCCNC?

    Mach3 has the OpenDIGFile() and CloseDigFile() functions to allow for the probe values to be exported / logged somewhere
    http://www.machsupport.com/wp-conten...o_Prog_Ref.pdf

  8. #8
    Join Date
    Apr 2014
    Posts
    215

    Re: Three axis touch plate setup

    In Mach3

    As part of a probing routine, you can call M40 to OpenDigFile(), and M41 to CloseDigFile() which allows you to log your probing routine points to an external file.

    TP did something on a routine for Mach3 here the rest of the macro routine is easy in uccnc if you know where or how to log the points via a function call in uccnc.
    Lathe probing/digitizing

  9. #9
    Join Date
    Apr 2014
    Posts
    215

    Re: Three axis touch plate setup

    Gee I am getting worse at this.....

    Thought I'd check out the OP's original post / question again to check if I understood....

    Basically they need a macro that zero's all three axis..... not a probe point logging routine!!!

    Check out the video

    https://www.charlindwoodcraft.com/

    Now that should be an easy one....

    Rule #1 when lost start at the beginning .... sorry for the confusion.... (still would be nice to log probe values somewhere as I use ProbeIT plugin in mach3 Probe-It! Mach3 Wizard – Crafty CNC

  10. #10
    Join Date
    Jun 2015
    Posts
    943

    Re: Three axis touch plate setup

    I guess logging the probe is somehow possible, because look at this thread and videos: http://www.cnczone.com/forums/uccnc-...gin-uccnc.html
    It seems to me that the surface of the PCB is measured point by point.

  11. #11

    Re: Three axis touch plate setup

    Quote Originally Posted by robertspark View Post
    Gee I am getting worse at this.....

    Thought I'd check out the OP's original post / question again to check if I understood....

    Basically they need a macro that zero's all three axis..... not a probe point logging routine!!!

    Check out the video

    https://www.charlindwoodcraft.com/

    Now that should be an easy one....

    Rule #1 when lost start at the beginning .... sorry for the confusion.... (still would be nice to log probe values somewhere as I use ProbeIT plugin in mach3 Probe-It! Mach3 Wizard – Crafty CNC
    I have the touch plate that is sold by Charlinwoodcraft. My question is how to use the code that he has for Mach 3 in UCCNC?

  12. #12
    Join Date
    Jun 2015
    Posts
    943

    Re: Three axis touch plate setup

    You can't use that code if it is for Mach3, because UCCNC is a totally different software.
    You need to convert it to UCCNC syntax to use it.

  13. #13
    Join Date
    Apr 2014
    Posts
    215

    Re: Three axis touch plate setup

    Corrected in my next m y next post


    Rob

  14. #14

    Re: Three axis touch plate setup

    Quote Originally Posted by OlfCNC View Post
    You can't use that code if it is for Mach3, because UCCNC is a totally different software.
    You need to convert it to UCCNC syntax to use it.
    I am sure you are just trying to be helpful but that is why I posted this thread. Of course it doesn't work, that is why I was asking for assistance here.

  15. #15
    Join Date
    Apr 2014
    Posts
    215

    Re: Three axis touch plate setup

    Try again.... should work this time.

    Rob

    you will need to set up your units values correctly to whatever units you are using (eg inches).

    Its a bit longer than my last attempt and there probably could have been a quicker way to write it, but if it works, it works...(not sure if you can write c# functions in macros? )


    Code:
    // M3100
    //------
    // 3 axis zero macro for UCCNC, requires a touch off block.
    //------
    // Robertspark - 08/07/2016 (rev A - corrected clearance moves around block)
    // edit and use as you see fit, at you're own risk of course
    
    // M31 uccnc macro used as a base code....
    
    //setup notes:
    // 
    // - all inputs must be considered in your chosen value of units "100" in in/min may be too fast for a probe routine (1.7"/sec)
    // - setup... you will need to job the tool / probe over to the top of the block
    // - sequence ... z-axis, x-axis, y-axis
    
    double SafeX = 100; // enter your X-axis clearance probing distance.
    double SafeY = 100; // enter your Y-axis clearance probing distance.
    double SafeZ = 20; // enter your Safe Z distance.
    double Xmin = -100; // enter your X-xis probing distance, 
    double Ymin = -100; // enter your Y-xis probing distance, 
    double Zmin = -100; // enter your Z-xis probing distance, 
    double ProbeFeedrate = 100; // enter your probe feedrate... make sure not to break the probe / tool!
    double XYProbeHeight = -10; // enter the X and Y probe height.... (basically just below the top of the touch off block).
    double XYClearance = 20; // enter the X and Y probe clearance distance, before Z retract
    
            DialogResult result;
    
            result = MessageBox.Show("Is Your Probe / Tool positioned over your touch off block?", "check!!!" , MessageBoxButtons.YesNo);
            
           if (result == System.Windows.Forms.DialogResult.Yes)
            {
    
      exec.Code("G92 X0 Y0 Z0"); // Zero the work co-ordinates 
    
      // z-axis probe
      exec.Code("G31 Z" + Zmin + " F" + ProbeFeedrate); // Do the Z probing with Probe Feedrate
      while(exec.IsMoving()){}
      exec.Wait(100);
      Console.Beep();
      exec.Code("G92 Z0"); // Zero the Z axis
      exec.Code("G00 Z" + SafeZ); // Safe Z retract
      while(exec.IsMoving()){}
      exec.Wait(100);
      
      exec.Code("G00 X" + SafeX); // Safe X and Y move to clear the probe block.
      while(exec.IsMoving()){}
      exec.Wait(100);
      
      exec.Code("G00 Z" + XYProbeHeight); // Lower Z axis to X and Y probe plane
      while(exec.IsMoving()){}
      exec.Wait(100);
      
      // x-axis probe
      exec.Code("G31 X" + Xmin + " F" + ProbeFeedrate); // Do the X probing with Probe Feedrate
      while(exec.IsMoving()){}
      exec.Wait(100);
      Console.Beep();
      exec.Code("G92 X0"); // Zero the X-axis
      exec.Code("G00 X" + XYClearance); // Safe X retract
      while(exec.IsMoving()){}
      exec.Wait(100);
      
      // Y-axis probe
      exec.Code("G00 Z" + SafeZ); // Safe Z retract
      while(exec.IsMoving()){}
      exec.Wait(100);
      
       exec.Code("G00 Y" + SafeY); // Safe Y move to clear the probe block.
      while(exec.IsMoving()){}
      exec.Wait(100);
      
      exec.Code("G00 X0"); // Realign to block edge
      while(exec.IsMoving()){}
      exec.Wait(100);
      
      exec.Code("G00 Z" + XYProbeHeight); // Lower Z axis to X and Y probe plane
      while(exec.IsMoving()){}
      exec.Wait(100);
      
      exec.Code("G31 Y" + Ymin + " F" + ProbeFeedrate); // Do the Y probing with Probe Feedrate
      while(exec.IsMoving()){}
      exec.Wait(100);
      Console.Beep();
      exec.Code("G92 Y0"); // Zero the Y-axis
      exec.Code("G00 Y" + XYClearance); // Safe Y retract
      while(exec.IsMoving()){}
      exec.Wait(100);
      
      exec.Code("G00 Z" + SafeZ); // Safe Z retract
      while(exec.IsMoving()){}
      exec.Wait(100);
      
      exec.Code("G00 X0 Y0"); // Move to 0,0 at Safe Z, which should be the top RHS tip of the block.
      while(exec.IsMoving()){}
      exec.Wait(100);
        
      Console.Beep();
      Console.Beep();
      
            }
            
            
            if (result == System.Windows.Forms.DialogResult.No)
            {
    
                MessageBox.Show("Jog the tool over thee touchoff block and Restart");
    
            }

  16. #16

    Re: Three axis touch plate setup

    Quote Originally Posted by robertspark View Post
    Try again.... should work this time.

    Rob

    you will need to set up your units values correctly to whatever units you are using (eg inches).

    Its a bit longer than my last attempt and there probably could have been a quicker way to write it, but if it works, it works...(not sure if you can write c# functions in macros? )


    Code:
    // M3100
    //------
    // 3 axis zero macro for UCCNC, requires a touch off block.
    //------
    // Robertspark - 08/07/2016 (rev A - corrected clearance moves around block)
    // edit and use as you see fit, at you're own risk of course
    
    // M31 uccnc macro used as a base code....
    
    //setup notes:
    // 
    // - all inputs must be considered in your chosen value of units "100" in in/min may be too fast for a probe routine (1.7"/sec)
    // - setup... you will need to job the tool / probe over to the top of the block
    // - sequence ... z-axis, x-axis, y-axis
    
    double SafeX = 100; // enter your X-axis clearance probing distance.
    double SafeY = 100; // enter your Y-axis clearance probing distance.
    double SafeZ = 20; // enter your Safe Z distance.
    double Xmin = -100; // enter your X-xis probing distance, 
    double Ymin = -100; // enter your Y-xis probing distance, 
    double Zmin = -100; // enter your Z-xis probing distance, 
    double ProbeFeedrate = 100; // enter your probe feedrate... make sure not to break the probe / tool!
    double XYProbeHeight = -10; // enter the X and Y probe height.... (basically just below the top of the touch off block).
    double XYClearance = 20; // enter the X and Y probe clearance distance, before Z retract
    
            DialogResult result;
    
            result = MessageBox.Show("Is Your Probe / Tool positioned over your touch off block?", "check!!!" , MessageBoxButtons.YesNo);
            
           if (result == System.Windows.Forms.DialogResult.Yes)
            {
    
      exec.Code("G92 X0 Y0 Z0"); // Zero the work co-ordinates 
    
      // z-axis probe
      exec.Code("G31 Z" + Zmin + " F" + ProbeFeedrate); // Do the Z probing with Probe Feedrate
      while(exec.IsMoving()){}
      exec.Wait(100);
      Console.Beep();
      exec.Code("G92 Z0"); // Zero the Z axis
      exec.Code("G00 Z" + SafeZ); // Safe Z retract
      while(exec.IsMoving()){}
      exec.Wait(100);
      
      exec.Code("G00 X" + SafeX); // Safe X and Y move to clear the probe block.
      while(exec.IsMoving()){}
      exec.Wait(100);
      
      exec.Code("G00 Z" + XYProbeHeight); // Lower Z axis to X and Y probe plane
      while(exec.IsMoving()){}
      exec.Wait(100);
      
      // x-axis probe
      exec.Code("G31 X" + Xmin + " F" + ProbeFeedrate); // Do the X probing with Probe Feedrate
      while(exec.IsMoving()){}
      exec.Wait(100);
      Console.Beep();
      exec.Code("G92 X0"); // Zero the X-axis
      exec.Code("G00 X" + XYClearance); // Safe X retract
      while(exec.IsMoving()){}
      exec.Wait(100);
      
      // Y-axis probe
      exec.Code("G00 Z" + SafeZ); // Safe Z retract
      while(exec.IsMoving()){}
      exec.Wait(100);
      
       exec.Code("G00 Y" + SafeY); // Safe Y move to clear the probe block.
      while(exec.IsMoving()){}
      exec.Wait(100);
      
      exec.Code("G00 X0"); // Realign to block edge
      while(exec.IsMoving()){}
      exec.Wait(100);
      
      exec.Code("G00 Z" + XYProbeHeight); // Lower Z axis to X and Y probe plane
      while(exec.IsMoving()){}
      exec.Wait(100);
      
      exec.Code("G31 Y" + Ymin + " F" + ProbeFeedrate); // Do the Y probing with Probe Feedrate
      while(exec.IsMoving()){}
      exec.Wait(100);
      Console.Beep();
      exec.Code("G92 Y0"); // Zero the Y-axis
      exec.Code("G00 Y" + XYClearance); // Safe Y retract
      while(exec.IsMoving()){}
      exec.Wait(100);
      
      exec.Code("G00 Z" + SafeZ); // Safe Z retract
      while(exec.IsMoving()){}
      exec.Wait(100);
      
      exec.Code("G00 X0 Y0"); // Move to 0,0 at Safe Z, which should be the top RHS tip of the block.
      while(exec.IsMoving()){}
      exec.Wait(100);
        
      Console.Beep();
      Console.Beep();
      
            }
            
            
            if (result == System.Windows.Forms.DialogResult.No)
            {
    
                MessageBox.Show("Jog the tool over thee touchoff block and Restart");
    
            }

    First off THANK YOU very much for taking the time to do this. There were a couple questions I had regarding the setup that was used in Mach 3 for the touch plate. The http://www.charlindwoodcraft.com/ offer a excel document that is macro enabled which after you input the thickness and size of your touch plate and the diameter of your end mill it creates a code for mach 3 similar to what you provided. Is it possible to add a feature like that for the UCCNC? If you would like to email me at [email protected] I can send you a copy of that excel to look at. I would be willing to pay for the extra time you have been providing in this matter. Thanks again for everything you've done.

  17. #17
    Join Date
    Oct 2005
    Posts
    1145

    Re: Three axis touch plate setup

    ZIp teh file and then upload it here. Your best option would be to contact the creator of teh process and ask HIM if he could modify it to work with UCcnc.

    Posting multiple duplicate questions in different areas of teh forum is considered bad form anywhere you go.

    (;-) TP

  18. #18
    Join Date
    Oct 2005
    Posts
    1145

    Re: Three axis touch plate setup

    HI Robert YES you can access some features of C# from a macro . For instance you can open notepad from a macro. Or in this case Excel (;-).

    (;-) TP

  19. #19
    Join Date
    Apr 2014
    Posts
    215
    I didn't ask for the macro as I suspected that the company selling the touch off block would be protective of their macro.... as anyone could use it with a ground / precision block....

    Hence I thought I'd just create one that did a similar thing and they could not moan that if copied their macro...

    To answer your question yes, sort of.... what about a message box that pops up and you enter the tool diameter and anything else you want and it will correct for that?

    I'll have a look this evening at writing something (+6hrs, uk time)

    For me it's all learning macros....

  20. #20
    Join Date
    Oct 2005
    Posts
    1145

    Re: Three axis touch plate setup

    HI RObert, There is a new version online for UCcnc it should have teh new Question and Text Question box available to you. You can ask a question and retreive an answer.

    (;-) TP

Page 1 of 2 12

Similar Threads

  1. Inconsistent Z-axis/touch plate backoff?
    By Kosh in forum Avid CNC
    Replies: 4
    Last Post: 03-28-2016, 03:45 PM
  2. Z axis touch plate
    By 1601chief in forum Mach Wizards, Macros, & Addons
    Replies: 1
    Last Post: 09-19-2013, 04:43 PM
  3. Z axis touch off plate connection
    By daniel.gauthier in forum CNC Machine Related Electronics
    Replies: 0
    Last Post: 04-11-2013, 02:16 AM
  4. Z axis touch plate
    By spalm in forum Mach Software (ArtSoft software)
    Replies: 5
    Last Post: 10-08-2011, 07:03 AM
  5. Need help with Z axis touch off plate
    By Ed Lang in forum Techno CNC
    Replies: 3
    Last Post: 04-15-2010, 03:58 PM

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •