CNC Decimal-Point Quirk

      CNC controllers may occasionally ignore instructions when the numbers do not include a decimal point. March 28, 2008

I have a Digital Tool CNC, and I use Bobcad and Wincnc controller. Everything works fine, but it does one thing that I can't quite figure out. If I want to move the gantry ahead in the Y axis, just to get it out of the way to measure something, it will not move if I tell it to go 12". I can put in any other number, just not 12. I can do 12.25, but if it is G1Y 12, it says it has made the move but it doesn't move at all. No error message, nothing. Can anyone explain that?

Forum Responses
(CNC Forum)
From contributor M:
Some controllers are sensitive to decimal placement. Are you entering 12 or 12.? 12. or 12.0 should be fine, if that is the problem.

From contributor R:
I am not fluent in WINCNC, so please help me to understand. It appears you are trying to execute a single axis move (in Y axis) using an MDI (manual data input) function? Or are you trying to insert this line into an active program, pausing it for you to verify dimensions?

Have you tried the following:
Execute the move via G00/G0 instead of G01/G1?
Execute the move as an incremental as opposed to an absolute move? (Typically G90 is absolute; G91 is incremental.)
Have you verified that none of the machine coordinate systems are actually at 12 inches? This could be the machine coordinates or the work coordinates.

Not knowing WINCNC, I am relating it to industry standard Fanuc/EIA style control. Typically manufacturers mimic Fanuc. I believe you have a modal issue here. Perhaps your BobCam post is parking your machine at Y12 either in the machine coordinate system or the work offset coordinate system? Or there could be a modal conflict, where you will have to turn off a "like" G command in order for the control to recognize subsequent commands. Or your machine just refuses to move one foot! :)

From contributor R:
Contributor M is correct! I have actually encountered that also - good catch!

From the original questioner:
I just tried several things to see what works and what doesn't. I am just doing a manual move, no program involved. If I input G01 Y12 no decimal, it doesn't move. If I input G01 Y13 with no decimal, it does move. If I input G01 Y12.0, it moves. If I input G01 Y-12 with no decimal, it moves. If I use G00, it always moves. It seems like the only thing that it balks at is G01 Y12 with no decimal. Lucky for me, there are lots of other numbers to pick from. I don't have to use 12. It just seemed odd that I picked 12 at random to move the gantry and it didn't move. I thought there was something wrong. My operator said that he had the same thing happen. Sometimes it just won't move when number 12 is used.

From the original questioner:
Just checked a few more things, which may be relevant. I do my coding in incremental, and in Wincnc there is a G90 and a G91 button which were both engaged. If that was the problem, why would it only pick 12 and not any other number?

From contributor R:
Perhaps there is a corruption within the control parameters themselves or the PLC of the control? At this point it does not seem insurmountable, just a nuisance. I would keep watch on programmed dimensions, especially if they are close to 12" in Y!

From contributor T:
I think that you will find, even though your control may want to see a specific decimal output like "12.00", it will sometimes work and sometimes not work without the proper decimal values. I don't believe that the number "12" has anything to do with it.

From contributor B:
What version of WinCNC are you using? WinCNC was brought in at the tail end of the DT machines production. Most Digital Tool routers ran on the earlier DOS version of CNC Controller. The early versions of WinCNC were pretty buggy. You could easily have one of those. You obviously shouldn't be in both G90 and G91 mode simultaneously. If you haven't done a complete reboot and retried after fixing that, you should.

I've used CNC Controller from pretty early on, and whereas I'm not on the most current version of WinCNC, mine is only a couple years old. My first CNC was a DT902. My guess is it's a bug in WinCNC. I wouldn't worry about it. By the way, you don't have to type anything but "y12" to accomplish the move. Try that.

From the original questioner:
I have version 2 of Wincnc. I think I have only been using it for a couple years. Before that it was the dreaded Indexer LPT. I tried writing a small program to have it cut exactly 12" and it worked fine. It must just be in a rapid movement I guess. I am not going to worry about it unless it blossoms into something more. Considering the number of programs we run, I think this is very minor. Life goes on, and so shall we. Thanks to you all for the input. The good news is I found out my operator knew nothing about G90 and G91, which kind of comes in handy around a CNC. We had a little school session as I blame myself, since I was the one who showed him how to run the machine.

Contributor B, I tried just Y12 and it worked - imagine that. Thanks for that, now I don't have to worry at all about the G01 Y12.

From contributor B:
A G0 command is telling the machine to travel to the destination at "transit" speed, whereas G1, G2 and G3 are directing a movement at cutting speed. You have to set your default G0 speed in the wincnc.ini file. If you are getting the G0 y12 glitch only with G0, then you could try changing the G0 feed rate in wincnc.ini. It would be interesting to see if that had an effect. That same line, for each axis in the wincnc.ini file, also has the default G1, G2 and G3 cut feed rate.

From contributor B:
Oh, I meant to add that "y12" by itself is the same as "G1 y12". That's why I thought it might work.

Would you like to add information to this article?
Interested in writing or submitting an article?
Have a question about this article?

Have you reviewed the related Knowledge Base areas below?
  • KnowledgeBase: Knowledge Base

  • KnowledgeBase: Computerization

  • KnowledgeBase: Computerization: CNC Machinery and Techniques

    Would you like to add information to this article? ... Click Here

    If you have a question regarding a Knowledge Base article, your best chance at uncovering an answer is to search the entire Knowledge Base for related articles or to post your question at the appropriate WOODWEB Forum. Before posting your message, be sure to
    review our Forum Guidelines.

    Questions entered in the Knowledge Base Article comment form will not generate responses! A list of WOODWEB Forums can be found at WOODWEB's Site Map.

    When you post your question at the Forum, be sure to include references to the Knowledge Base article that inspired your question. The more information you provide with your question, the better your chances are of receiving responses.

    Return to beginning of article.

    Refer a Friend || Read This Important Information || Site Map || Privacy Policy || Site User Agreement

    Letters, questions or comments? E-Mail us and let us know what you think. Be sure to review our Frequently Asked Questions page.

    Contact us to discuss advertising or to report problems with this site.

    To report a problem, send an e-mail to our Webmaster

    Copyright © 1996-2019 - WOODWEB ® Inc.
    All rights reserved. No part of this publication may be reproduced in any manner without permission of the Editor.
    Review WOODWEB's Copyright Policy.

    The editors, writers, and staff at WOODWEB try to promote safe practices. What is safe for one woodworker under certain conditions may not be safe for others in different circumstances. Readers should undertake the use of materials and methods discussed at WOODWEB after considerate evaluation, and at their own risk.

    WOODWEB, Inc.
    335 Bedell Road
    Montrose, PA 18801

    Contact WOODWEB

  • WOODWEB - the leading resource for professional woodworkers

      Home » Knowledge Base » Knowledge Base Article