584,808 active members*
5,139 visitors online*
Register for free
Login

Thread: G codes

Results 1 to 15 of 15
  1. #1
    Join Date
    Jun 2004
    Posts
    16

    G codes

    i am new here and i don't want to beat a dead horse but this g code thing i don't understand. i thought there was many different g code formats.

    i also want to say i have been using camsoft for a while and i really like the flexibility. i would recommend the product. they have been good to me. i guess you can say the out of the box CBK screens do work but it took me a while to it set up just the way i wanted it and it is working just the way i want.

    best of luck to you camsoft. you still have the best product i have found.

    my two cents. john c.

  2. #2
    Join Date
    Sep 2003
    Posts
    17
    Welcome John,

    You're right John there are many G code formats. I have used several G code programs on different machines. They are not all the same. CamSoft has a standard default set in their default CBK, but I agree with Hu I think it's an asset to be able to customize or improve them. It's all about choice. I think I read where CamSoft has 700 G code formats to choose from. I personally made all my machines use the same G code format. I could have even made the machine run the original G code programs if I wanted.

    Jim

  3. #3
    Join Date
    Mar 2003
    Posts
    4826
    John,

    I guess that the most basic logic of the standard set of Gcodes is what we would all try to adhere to, in order to have some uniformity and compatability with all other machine tools, and cadcam programs that are designed to output and to read standard ISO nc code programs (in order to do a backplot, for example, G00, G01, G02, G03 must mean the same thing to everyone).

    But, when it comes down to the way that your particular machine operates when a given Gcode number is used, that is up to us to configure and optimize in Camsoft's gui. That is what I absolutely love about the PC based cnc system such as this.

    For example, you may have noticed a problem if you forget to program a feedrate when running a program that you create right at the control. With the standard G01 logic, I believe the control just kind of "hangs" because the motors take a really long time to get somewhere at zero feedrate So in an example such as this, it is a simple matter to add logic to the G01 to tell the operator that he forgot to program a feedrate, and to auto-abort the current nc program. This "extra logic" is not part of the meaning of a standard G01, but is nonetheless, is a valuable convenience to have in place for the operator's sake.

    There are also lots of "empty gcode slots", for which, as far as I know, there is no recognised standard of programming. For those who like macro type operations, this is a great asset to be able to make up their own special routines, that fit the type of work that is common in their shop. You probably have seen many of these as examples in the various Camsoft cbk files.

    And don't get me started on how exciting it was to develop my own G81, G83 cycles, and G33 lathe threading cycles. There are simply limitless tweaks and improvements to be made (depending on your imagination and ability to write logic), yet still, the net result of that particular gcode still would be the production of holes or threads, or whatever, just like the standard gcode intends to see happen.
    First you get good, then you get fast. Then grouchiness sets in.

    (Note: The opinions expressed in this post are my own and are not necessarily those of CNCzone and its management)

  4. #4
    Join Date
    Apr 2003
    Posts
    332
    Thumbs way up to you Murray.

    Solutions and good advice.

    To all, here is a published list of G codes. CamSoft does offer the standard G codes and then some. All are fully user customizable table of 199 G's plus 199 M's.

    http://www.cnccontrols.com/cncpro_gmcodes.asp

    This way you can set it up to run the existing G code programs the original machine used.

    We also provide a standard set of G codes for 9 machine types. Everyone knows that there is no single standard all companies use, but wish there were. So will allow people to customize the G and M codes to match your original brand.


    Tech Support
    CamSoft Corp.
    (909) 674-8100
    [email protected]
    www.cnccontrols.com
    (Note: The opinions expressed in this post are my own and are not necessarily those of CNCzone and its management)

  5. #5
    Join Date
    Sep 2003
    Posts
    552
    One question which CBK are the good drill cycles like G73 or G81 on with version 14.6? The ones I started with included with the handheld CBK did not function properly in single step. I also wonder about the the way after the tool offset was picked up if the next line did not contain a Z move it assumed Z zero on its own. (The most common move after a tool change is to rapid from the safe zone to the work zone then move Z)

    Darek

  6. #6
    Join Date
    Apr 2003
    Posts
    332
    Darek,

    Honestly, we can't be sure for V14.6, but it's safe to say that while things have changed since then, the standard drilling and pecking were always there working fine in Single Step or Auto mode. A bunch of other G codes can be found in the MACRO.MAC file as well as the DEFAULT.CBK.

    Z moves, offsets after tool changes in any mode are working fine. No problem reported with these. GW has the new stuff try it out when you get there.

    Tech Support
    CamSoft Corp.
    (909) 674-8100
    [email protected]
    www.cnccontrols.com
    (Note: The opinions expressed in this post are my own and are not necessarily those of CNCzone and its management)

  7. #7
    Join Date
    Mar 2004
    Posts
    36
    Standards are a funny thing from one side of the contry to the other and then from this part of the world all the way to the other side. Standards have changed over time and from one machine to the next. I do not know how many different CNC controllers Fanuc has for all kinds of machines even for 3-axis machining centers they have several controls with all kinds of different options. I guess what I am trying to say is where do standards start and where do standards end. I think the best way to start is what CamSoft has done to give the end user the ability to decide in logic what is best and standard for them on any given machine. I think that this is great for newbies like myself and so many others.

    I have see logic for simple G01 a page long on some machines and on other similar machines it could be simply a one liner. A guess a lot of it depends on what an operator excpects to happen when he programs a certain way from past experienc on other machines, like Hu Flung Dung said - he can place feed rate check logic in his code to allert the operator if a Feed Rate was not entered, very clever!. When we talk about NC programming formats and standard practices there is another whole discussion and a new thread should be started if someone wants to hear more about that, however there are books that are offered that one can buy for this as well. I like the CNC Programmers Handbook from Industrial Press. Excelent resorce for any programmer or retrofitter.

    In conclusion I think what CamSoft has started is definitly on the right track to allow us begginers and experts the opertunity to delve deep into our machine code and customize it. It seems pretty easy and strait forward compared to Fanuc ladder logic. I mean how many guys in this forum even know how to write Fanuc ladder logic ?, certainly not me!, if you do then thats great. With the age of the PC-Based controls on the rise I see no reason to start learning.

    Of course this is only my opinion.
    Pardon my intrusion.

  8. #8
    Join Date
    Sep 2003
    Posts
    552
    Any new system is hard to learn, even CamSoft for me.

    In my opinion there has never been a better diagnostics tool than a highlighted ladder screen, no matter whose control it was on.

    Darek

  9. #9
    Join Date
    Dec 2003
    Posts
    24216
    I guess I am one of those with the opposite view as why you should need or have to modify G codes, as I believe that G codes are not machine specific only as far as to what type of machine i.e. Mill, Lathe, EDM etc. and that a package together with the appropriate G codes should be supplied by the System supplier.
    I think you will find this issue of standard G codes drawn accross two lines, those that are DIY'ers and hobbyists and the retrofitters that make a living at it.
    If I install a Fanuc or Mitsubishi system I do not have to, or expect to tinker with the G code part of the installation. And the fact that both of these systems are complete down to the amps and motors makes no difference.
    Fanuc or Mitsubishi do not know any details of the machine or system (only type) I am installing on. As long as I carry out my side of the installation correctly, sizing motors and tuning etc. Then I expect the neccessary G code to perform as outlined in the RS-274 standard.
    For example if I retrofit a Lathe and I want to use G84 threading option. If I have the required hardware in place I have never come across any frustration in wanting to get into the G code to change anything.
    The point of having to modify the G01 command is an example of what I mean. The G01 F command is usually modal, so once I have issued it I do not have to specify it again unless I want to change it.
    Fanuc & Mitsubishi and others will give me a warning alarm if I have not issued an F command greater than zero at first G01 .
    For several years Fanuc & Mitsubishi (Mazak) sold 85 to 90% of the CNC market so the standards have evolved through them to a certain extent and for better or worst, most of the major followers have followed their lead.
    I always hear cries about ladder logic, Ladder is based on the diagramatic display of what was once the wiring schematic for a machine in order for maintenance personell to become familiar with what they already knew, unfortunately the functions and commands became much more than the average electrician could follow or was familiar with.
    All ladder is, is a diagramatic form of booleian** logic which has been around for years. And is a form of mathematics that is used to express functions in electronic circuitry.
    As hillbilly mention, the ladder display is very usefull when diagnosing a machine fault to find out what piece of logic is causing the problem.
    I have programmed with Fanuc Ladder and Mitsubishi and many other PLC's and most give you the option of ladder or Boolean and will convert one to the other and I am no math whizz by any means but do not find this any more difficult than the logic used by Camsoft et.al.
    There is a learning curve to any thing worthwhile.
    We beg to differ.
    AL.
    **George Boole, english mathematican, died 1864, invented Boolean arithmetic, unfortunately there was no use for it in his lifetime, computers came along later and the rest is history.
    CNC, Mechatronics Integration and Custom Machine Design

    “Logic will get you from A to B. Imagination will take you everywhere.”
    Albert E.

  10. #10
    Join Date
    Mar 2004
    Posts
    36
    I guess I am one of those with the opposite view as why you should need or have to modify G codes, as I believe that G codes are not machine specific only as far as to what type of machine i.e. Mill, Lathe, EDM etc. and that a package together with the appropriate G codes should be supplied by the System supplier.
    I would not doubt that this would be the easiest solution for the end user of any control. This is why I guess Fanuc and Mitsubishi have so many different controlers for so many different machines across the board. However in the retrofit market I see more than just Fanuc and Mitsubishi that are good canidates for a control retrofit. There are other Japanees controls, German, American and Italian controls out there that not one Fanuc 10T or 6T or OT (and the list goes on) that could replace them without the flexibility of an open PC-Based system that so many manufactures are getting into like CamSoft, Centroid, AJax and Flash Cut to name a few.

    There are Boring Mills, VMC, VTL's, Certerless Grinders, Single Head Routers, Multi-Head Routers, Mulit-Attachement Routers, Cutter Grinders and many more, I think for one company to have a control specific for each of these would be a nightmer especially for the smaller developers of PC- based controls verses large competitors like Fanuc and Mitsubishi, where they no doutably have the capital and work force to do so for so many years. The PC-Based market is fairly new compared to those guys.

    Again I am fairly new to this stuff and please correct me if I am wrong or over speak on a subject, however I have been a cnc programmer for many years using various Cad/Cam systems on many cnc machines althought I do not have the experties in electrical or mechanical stuff, but learning. I have been researching for a while now on these control system and will continue to do so.

    Thanks for your thoughts Al_The_Man and Darek. I see this forum is going to be a weath of information from all aspects of controller background.

    intrusion

  11. #11
    Join Date
    Mar 2004
    Posts
    36
    I forgot to mentien that I am getting into the software development a bit as well as continued learning on the computer end of things. It is very interesting to see the interworkings of a cnc control and how everything functions as well as it's complexities. Thought I should mentien this to support some of my comments anyway.

    intrusion

  12. #12
    Join Date
    Mar 2003
    Posts
    4826
    Al,

    I am confused on your stance on standard G and M codes? Are you defending the rather simple logic that is used in the sample Camsoft controller files? If so, where do you expect these error codes to come from, since there is often nowhere else for the errors to be trapped, than during the execution of a Gcode or an Mcode, standard or otherwise?

    I felt a bit let down by how much logic I still had to write when I really got into my retrofit. In particular, there are many logical interlocks to be created between many of the common operator panel buttons, and the execution of an nc program.

    As an example, logic needs to protect the machine (during automatic or continuous mode) from accidental spindle stops, reversals, no power, wrong gear range, recovering from Feedhold, locking out Feedhold, Feedrate and Spindle speed overides while threading, missing gcode parameters, etc, etc. There simply is often nowhere else to do this checking other than in the Gcode and Mcode files. This is why I say that modification of the Gcode and Mcode files is mandatory, because the naked files we are given to start with, lack nearly all of this protective logic.

    One might well say, "Well, why would your operator press the Spindle Stop while the machine is in operation?" Why, indeed! Don't ask me!

    Now, I really don't know if an attempt has ever been made by Camsoft to write a really indepth Inputio.fil to take care of the protective logic for a fairly standard operator panel, and its buttons. It could be argued that everyone's installation is different. Yes, but it is far easier to remark out unneeded logic, than to invent it. And, it is quite a simple matter to do a search and replace if your particular I/O numbers are different than those within the sample file.
    First you get good, then you get fast. Then grouchiness sets in.

    (Note: The opinions expressed in this post are my own and are not necessarily those of CNCzone and its management)

  13. #13
    Join Date
    Jun 2004
    Posts
    36
    Al, Hu & Intrusion,

    You all are absolutely correct. A control manufacturer SHOULD supply a complete package for an end user's particular application. By not taking the time and effort to supply a complete solution, they are profitting at the end user's expense. And in some cases, saftey!

    It's not a matter of time or resources, it's a matter of quality and pride. At AjaxCNC, we supply a fully preprogrammed CNC control for the end user's specific needs. We want our customer retrofits to be as easy and safe as possible. That means in both the installation and use of the machine.

    That's why instead of developing "state-of-the-art" software to tune an obsolete motor drive like the competitors, we develope state-of-the-art hardware like digital self-tuning servo drives to compliment our cutting edge software. Tell me, would you rather have a software program that just tells you your hardware is wrong, or would you rather have a complete system that fixes it for you with the press of a single button?

    I apologize if I'm getting off the subject, but the point is, it's our feeling that generic do it all controls are simply an excuse for not getting it right the first time.
    (Note: The opinions expressed in this post are my own and are not necessarily those of CNCzone and its management)

  14. #14
    Join Date
    Apr 2003
    Posts
    332
    Ajax,

    It's flattering that you feel you had to attack us in our own forum.

    Let's not start spreading rumors here, so allow us to straighten out a few subjects before people start believing this.

    No excuses here we are proud of the fact that we can offer our customers G code choice and many motor choices. If you choose not to that all the better for us.

    Also we believe most people would agree with us.

    Lets not stretch the truth too far. Your own users say when it comes to custom interlocks they say that your the same. The user is required to add interlock safeties to Ajax as well. We're no different. Most controllers are no different. You choose to use PLC's with ladder logic we choose to use the computer to do logic. The point is don't make people believe we are not interested in safety or we don't provide built in safety features. All the safety features are built in to each generic operator machine type for all traditional items. Plus the user can copy and paste from a vast library of interlock and safety routines. The current V15.3 has dozens and dozens of pre-written routines for every machine type. There are now 35 specific operator screens.

    We also feel that on the subject of motors and tuning. Is that choice is best again. Being flexible is the key. We take the philosophy that it's best to be able to shop from a wide variety of manufactures. We choose off the shelf parts while you choose to make your own.

    The Philosophy of CamSoft's Open PC Based Control is Serviceability, Upgradeability, Parts Supply Chain, Logic and Installation time.

    From a general sense we are speaking about a philosophy that divides the models of CNC controllers into two categories. One's that are made by a manufacture that use proprietary parts opposed to the philosophy of an open, flexible PC Based control system that uses non-proprietary off the shelf , store bought Windows based computers and boards offered by multiple vendors.

    Using a proprietary system means that the manufacturer is the sole source for parts and service, years from now. Usually there are no cheap parts plus service calls are expensive. The philosophy that CamSoft has is that we feel it's better to use off the shelf computers and boards that can be purchased by the end user directly from multiple sources in United States and Canada. We believe it's best to have multiple companies to shop from. That allows you to shop around if you need parts years from now. We also have dozens of service people in United States and Canada plus a few in Europe and Asia. For example if your machine goes down on a Saturday, you could literally use another office computer to get yourself going again. Ask yourself how long would it take to get a part and a service call from a proprietary controller? Also think of the cost difference in PC parts verses proprietary parts.

    CamSoft systems are scaleable, meaning user upgradeable and user serviceable. We have a generous software upgrade policy. Once a proprietary controller is installed, ask about the cost to add extra linear axes, rotary axes, new pendants, graphics, more I/O , memory storage, Network connections, CAD Links or extra G and M codes.

    The more complicated the machines logic gets the bigger our advantage since the PC becomes the PLC and does the logic in the computer. Generally speaking it would take only 1/2 the time to install a PC based controller over a proprietary controller that still uses physical PLC's and ladder logic. No need to trace down the old wires and decipher ladder logic PIC or PAL programs to figure out how they worked. Most retrofitters of proprietary controls that still use PLC's almost always quote thousands of extra dollars to purchase, install and program them.

    We include dozens and dozens of per-written logic routines in plain text files on our installation CD. With our vast library of dozens of pre-written logic routines available to you for just about every tool changer, turret, jog stick, hand wheel, homing routine, spindle type or probe, you can relax and forget about ladder logic.

    CamSoft offers a much easier logic programming method using simple commands that are referenced by terminal strip number or descriptive names. This method is preferred by installers who need to diagnose, modify and test the logic before they begin physical wiring. This is the only method that allows remote I/O logic diagnostics via a modem. We have our own I/O logic, which is much easier than learning PLC ladder logic. It even provides for very complex multiple I/O threads whereas ladder logic is sequential and only branches off. Hundreds of every type of command including IF THEN, LOOPS, TIMERS and WAITUNTIL are provided in simple to read text files that compile when the system starts. We use several manufacturers’ I/O boards to give a wide choice of inputs/outputs. CamSoft wrote its own assembler drivers to access these cards in the unprecedented 10 KHz range.

    Most retrofitters of proprietary controllers may also quote new motors and drives, even if the existing motors are still working. Simply because they can't communicate or talk to or tune just any motor type. They prefer to replace the motors and amps because the signals are not the same or they would face a servo tuning problem. With CamSoft we offer a automatic self tuning program for all types of motors that are AC, DC, Brush, Brushless, PWM, Hydraulic or Stepper. Keeping your existing motors and drives would save thousands of dollars hardware and mounting cost.

    We offer Windows you sell DOS and Linux these are totally different philosophy's.

    Please kind in mind Ajax that you and your associates started this by posting in our forum.

    Tech Support
    CamSoft Corp.
    (909) 674-8100
    [email protected]
    www.cnccontrols.com
    (Note: The opinions expressed in this post are my own and are not necessarily those of CNCzone and its management)

  15. #15
    Join Date
    Apr 2003
    Posts
    1876
    Lets try to stay on subject. Thanks.
    Matt
    San Diego, Ca

    ___ o o o_
    [l_,[_____],
    l---L - □lllllll□-
    ( )_) ( )_)--)_)

    (Note: The opinions expressed in this post are my own and are not necessarily those of CNCzone and its management)

Similar Threads

  1. AutoCAD14 "Splines" > G Codes ???
    By DanO in forum Autodesk
    Replies: 7
    Last Post: 01-22-2005, 04:59 PM
  2. Using "M" codes
    By jimglass in forum CNC (Mill / Lathe) Control Software (NC)
    Replies: 5
    Last Post: 06-17-2003, 12:31 PM

Posting Permissions

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