587,597 active members*
4,230 visitors online*
Register for free
Login
Results 1 to 11 of 11
  1. #1
    Join Date
    Jul 2003
    Posts
    71

    Unhappy Wierd NC Code and G-Code

    I just started working at this granite shope and the current post processor that we are using outputs some codes that I have never seen nor can I find in any books. I was wondering if anyone could possible explain what some of these codes are and how to decipher the NC file?

    Also this is a CMS Junior 1.40 with a OASI/10 controller

    Here are some of the funky codes that I am not sure about. The actual nc code is below this list!

    G79 (I believe this is the Origin)
    E190
    $ORIG3
    E195
    M40
    M41
    CLS
    VEN
    WOS
    UOT
    USVAR10
    CAMBUT
    MSA
    UAO
    M45
    E184
    E185

    START OF CODE
    ++++++++++++++++++++++++++++++++++++++++++++
    ;Program: TEST
    ;Date: 24-11-2003
    (DIF,2,4,13,1,3,1,1)
    (CLS,MESSAGGI)
    (INP,N2,T!USVAR10(440).19CH,!USVAR10(0).40CH,40,E1 81)
    G00 G79 Z0
    G16 X Y
    $ORIG3(1)=12.356
    E190=12.356
    $ORIG3(2)=8
    E195=8
    $ORIG3(3)=-11.25208
    G00 G79 Z0
    N0 (IF,E181=1)
    T0.0 M6
    M5
    (CLS,CAMBUT)
    (DIS,!USVAR10(480).40CH)
    M40
    (WOS,$I(34)=1)
    (CLS,VEN200)
    (UOT,0,X0,Y0,Z-.1)
    G00 X11.746Y13.689
    Z-6.14
    M40
    (WOS,$I(34)=1)
    M41
    (UOT,0,X0,Y0,Z0)
    Z0
    (CLS,VEN200)
    (UOT,0,X0,Y0,Z-.1)
    G00 X23.163Y7.39
    Z-6.14
    M40
    (WOS,$I(34)=1)
    M41
    (UOT,0,X0,Y0,Z0)
    Z0
    (CLS,VEN200)
    (UOT,0,X0,Y0,Z-.1)
    G00 X38.911Y7.39
    Z-6.14
    M40
    (WOS,$I(34)=1)
    M41
    (UOT,0,X0,Y0,Z0)
    Z0
    (CLS,VEN240)
    (UOT,0,X0,Y0,Z0)
    G00 X27.256Y14.571
    Z-6.14
    M40
    (WOS,$I(34)=1)
    M41
    (UOT,0,X0,Y0,Z0)
    Z0
    (CLS,VEN240)
    (UOT,0,X0,Y0,Z0)
    G00 X35.763Y20.474
    Z-6.14
    M40
    (WOS,$I(34)=1)
    M41
    (UOT,0,X0,Y0,Z0)
    Z0
    (CLS,VEN240)
    (UOT,0,X0,Y0,Z0)
    G00 X19.068Y20.907
    Z-6.14
    M40
    (WOS,$I(34)=1)
    M41
    (UOT,0,X0,Y0,Z0)
    Z0
    (CLS,VEN130)
    (UOT,0,X0,Y0,Z0)
    G00 X18.513Y13.38
    Z-6.14
    M40
    (WOS,$I(34)=1)
    M41
    (UOT,0,X0,Y0,Z0)
    Z0
    (CLS,VEN130)
    (UOT,0,X0,Y0,Z0)
    G00 X36.238Y12.908
    Z-6.14
    M40
    (WOS,$I(34)=1)
    M41
    (UOT,0,X0,Y0,Z0)
    Z0
    (CLS,VEN130)
    (UOT,0,X0,Y0,Z0)
    G00 X27.256Y21.963
    Z-6.14
    M40
    (WOS,$I(34)=1)
    M41
    (UOT,0,X0,Y0,Z0)
    Z0
    (DIS,!USVAR10(160).40CH)
    (ENDIF)
    G79 X-0 Y55.00
    M45
    (DAN)
    (UPR)
    (CLS,SHIFTXY)
    (CLS,VEN120)
    M40
    (WOS,$I(34)=1)
    M41
    (DIS," SAW_PROFILE ")
    G79 G00 Z0
    T.0 M6
    M5
    T2 M6
    (UAO,3)
    (UOT,3,ZE182)
    G90 G00 X27.369 Y-1
    Z10.7339 C90
    M14 M7 S4500
    G90 G09 G01 Z9.1939 F3
    Y2 F30
    Y17.2534
    G00 Z10.7339
    X27.4827 Y16.5356 C108
    G09 G01 Z9.1939 F3
    X27.3261 Y17.0176 F30
    G00 Z10.7339
    X27.656 Y16.37 C126
    G09 G01 Z9.1939 F3
    X27.3581 Y16.78 F30
    G00 Z10.7339
    X27.872 Y16.2661 C144
    G09 G01 Z9.1939 F3
    X27.462 Y16.564 F30
    G00 Z10.7339
    X28.1096 Y16.2341 C162
    G09 G01 Z9.1939 F3
    X27.6276 Y16.3907 F30
    G00 Z10.7339
    X28.3454 Y16.277 C180
    G09 G01 Z9.1939 F3
    X1.8386 F30
    G00 Z10.7339
    X2.5564 Y16.3907 C198
    G09 G01 Z9.1939 F3
    X2.0744 Y16.2341 F30
    G00 Z10.7339
    X2.722 Y16.564 C216
    G09 G01 Z9.1939 F3
    X2.312 Y16.2661 F30
    G00 Z10.7339
    X2.8259 Y16.78 C234
    G09 G01 Z9.1939 F3
    X2.528 Y16.37 F30
    G00 Z10.7339
    X2.8579 Y17.0176 C252
    G09 G01 Z9.1939 F3
    X2.7013 Y16.5356 F30
    G00 Z10.7339
    X2.815 Y17.2534 C270
    G09 G01 Z9.1939 F3
    Y1.7466 F30
    G00 Z10.7339
    X2.7013 Y2.4644 C288
    G09 G01 Z9.1939 F3
    X2.8579 Y1.9824 F30
    G00 Z10.7339
    X2.528 Y2.63 C306
    G09 G01 Z9.1939 F3
    X2.8259 Y2.22 F30
    G00 Z10.7339
    X2.312 Y2.7339 C324
    G09 G01 Z9.1939 F3
    X2.722 Y2.436 F30
    G00 Z10.7339
    X2.0744 Y2.7659 C342
    G09 G01 Z9.1939 F3
    X2.5564 Y2.6093 F30
    G00 Z10.7339
    X1.8386 Y2.723 C360
    G09 G01 Z9.1939 F3
    X28.3454 F30
    G00 Z10.7339
    X27.6276 Y2.6093 C18
    G09 G01 Z9.1939 F3
    X28.1096 Y2.7659 F30
    G00 Z10.7339
    X27.462 Y2.436 C36
    G09 G01 Z9.1939 F3
    X27.872 Y2.7339 F30
    G00 Z10.7339
    X27.3581 Y2.22 C54
    G09 G01 Z9.1939 F3
    X27.656 Y2.63 F30
    G00 Z10.7339
    X27.3261 Y1.9824 C72
    G09 G01 Z9.1939 F3
    X27.4827 Y2.4644 F30
    G00 Z10.7339
    X27.369 Y1.7466 C90
    G09 G01 Z9.1939 F3
    Y2 F30
    G00 Z10.7339
    (DIS," OGEE_EXT Y ROUGH ")
    G79 G00 Z0
    M5
    T0.0 M6
    M5
    (CLS,CAMBUT)
    T.4 M6
    G0 G79 Z0
    E184=0.026
    E185=E184+E183
    MSA=E185
    (UAO,3)
    (UOT,3,ZE182)
    G90 G00 X32.592 Y2
    Z2.318 C0
    M14 M7 S4500
    G90 G01 Z0 F25
    G42 Y-1
    G02 X29.592 Y2 R3
    G01 Y9.5 F27
    Y17
    G03 X28.092 Y18.5 R1.5
    G01 X2.092
    G03 X0.592 Y17 R1.5
    G01 Y2
    G03 X2.092 Y0.5 R1.5
    G01 X28.092
    G03 X29.592 Y2 R1.5
    G02 X32.592 Y5 R3 F25
    G40 G01 Z1.5
    Y2
    Z2.318
    G00
    M45
    (DAN)
    (UPR)
    (DIS," OGEE EXT D1 ")
    G79 G00 Z0
    M5
    T0.0 M6
    M5
    (CLS,CAMBUT)
    T.41 M6
    G0 G79 Z0
    E184=0.026
    E185=E184+E183
    MSA=E185
    (UAO,3)
    (UOT,3,ZE182)
    G90 G00 X32.592 Y2
    Z2.2065 C0
    M14 M7 S4500
    G90 G01 Z0 F25
    G42 Y-1
    G02 X29.592 Y2 R3
    G01 Y9.5
    Y17
    G03 X28.092 Y18.5 R1.5
    G01 X2.092
    G03 X0.592 Y17 R1.5
    G01 Y2
    G03 X2.092 Y0.5 R1.5
    G01 X28.092
    G03 X29.592 Y2 R1.5
    G02 X32.592 Y5 R3
    G40 G01 Z1.5
    Y2
    Z2.2065
    G00
    M45
    (DAN)
    (UPR)
    (DIS," OGEE EXT D3 ")
    G79 G00 Z0
    M5
    T0.0 M6
    M5
    (CLS,CAMBUT)
    T.42 M6
    G0 G79 Z0
    E184=0.014
    E185=E184+E183
    MSA=E185
    (UAO,3)
    (UOT,3,ZE182)
    G90 G00 X32.592 Y2
    Z2.201 C0
    M14 M7 S4500
    G90 G01 Z0 F27
    G42 Y-1
    G02 X29.592 Y2 R3
    G01 Y9.5
    Y17
    G03 X28.092 Y18.5 R1.5
    G01 X2.092
    G03 X0.592 Y17 R1.5
    G01 Y2
    G03 X2.092 Y0.5 R1.5
    G01 X28.092
    G03 X29.592 Y2 R1.5
    G02 X32.592 Y5 R3
    G40 G01 Z1.5
    Y2
    Z2.201
    G00
    M45
    (DAN)
    (UPR)
    (DIS," OGEE EXT D4 ")
    G79 G00 Z0
    M5
    T0.0 M6
    M5
    (CLS,CAMBUT)
    T.43 M6
    G0 G79 Z0
    E184=0.005
    E185=E184+E183
    MSA=E185
    (UAO,3)
    (UOT,3,ZE182)
    G90 G00 X32.592 Y2
    Z2.158 C0
    M14 M7 S4500
    G90 G01 Z0 F27
    G42 Y-1
    G02 X29.592 Y2 R3
    G01 Y9.5
    Y17
    G03 X28.092 Y18.5 R1.5
    G01 X2.092
    G03 X0.592 Y17 R1.5
    G01 Y2
    G03 X2.092 Y0.5 R1.5
    G01 X28.092
    G03 X29.592 Y2 R1.5
    G02 X32.592 Y5 R3
    G40 G01 Z1.5
    Y2
    Z2.158
    G00
    M45
    (DAN)
    (UPR)
    G79 G00 Z0
    M05
    G79 G00 X0 Y55.118 C0
    M5

    M30

  2. #2
    Join Date
    Nov 2003
    Posts
    7
    M40=PROGRAM STOP W/ OPTIONAL PROGRAM RERUN
    M41= OPTIONAL STOP W/ OPTIONAL FORMATTED MESSAGE
    M45= OUTPUT ASCII CHARACTER TO SERIAL PORT


    I'LL CHECK ON SOME OF THE OTHER STUFF.

  3. #3
    Join Date
    Oct 2003
    Posts
    3
    At my company we have a CMS 5-axis router and some of the code looks familiar and some of it does not.
    G79 ---we use it as an absolute zero command (follwed by one or more axis)
    E190---?
    $ORIG3---there has to be a table that this command refers to, We use the OSAI/10 on 4 machines. As it is very flexible in regards to configuration of the interface it could be anything, though.
    E195
    M40---spindle off
    M41---spindle on
    CLS--call of sub program
    VEN
    WOS
    UOT---temporary origin
    USVAR10---user variable
    CAMBUT---?
    MSA---?
    UAO---use absolute origin
    M45---?
    E184---?
    E185---?

    Of course every machine is different but I would assume that the MSA and E codes are some sort of machine compensation (not tool) maybe for spindle length or tool length. Not sure though, hope you figure it out.

  4. #4
    Join Date
    Dec 2003
    Posts
    1

    CMS 'weird' codes

    Greetings,

    I hope this isn't too late to be of use to you.

    CMS machines have their own particular codes written in the chipset. They differ according to the controller used, but there are many that are common.

    G79 = reference all moves from machine 0,0,0 (hard home)
    They provide this code so that you can program a move without having to change any origin shifts.

    Anything with "E" is usually a user variable. For example, I program our CMS for making guitar necks. We have three different heel lengths, so the saw blade needs three different depths. I use the same subprogram, but the main program supplies the depth by a variable, for example

    (SUPERSHALL HEEL DEPTH)
    E35=-1.5
    (MID HEEL DEPTH)
    E35=-1.875
    (FULL HEEL DEPTH)
    E35=2.25

    It is then called up in the subprogram when the blade cuts:

    G01 ZE35

    The number after the "E" controls the type of variable allowed (INTEGER; LONG INTEGER; BYTE; REAL; LONGREAL). The range on your example is much higher then our controller uses (Our format is E0 through E30). The manual implies that the format can go beyond E30 to a user assigned maximum, but I've never tried it). Looking at your code, I'm not sure why the post would spit out the variables without user interaction, but then again, I've never had a good CMS post for our machine. I've had to do a lot "by hand".

    M45 is a CMS specific code; I'm not sure what yours would be. Our machine uses an Allen-Bradley 8601MC controller, and has two rotating heads. The M45 for ours closes the dust collection gate on the "B" Head. I suspect yours does something different.

    VEN, WOS, MSA along with CLS, UOT, UAO are CMS 3-letter commands. I don't have a listing for VEN, WOS or MSA. If you haven't figured them out I can try and find out what they are.

    I have been able to at times talk with CMS' former head of programming. (He's a wealth of knowledge, and generious person). I will see if he recognizes anything in your code. It may take time, he is usually on the move.

    Hope I was of some help.
    rpm

  5. #5
    Join Date
    Nov 2003
    Posts
    2
    Looking for an editor to do code for a old anilam crusader 2 controll anyone have an idea thanks okuma

  6. #6
    Join Date
    Dec 2003
    Posts
    7
    Thats the Swahilee version of CaveMan Cam
    The only thing we have to fear is..

    getting sucked into a lathe.

  7. #7
    Join Date
    Apr 2006
    Posts
    2
    G79 -SETS PROGRAMMING IN ABSOLUTE REFERENCE TO MACHINE HOME POSITION
    E190 -PARAMETER#190
    $ORIG3 -FUNCTION
    E195 -PARAMETER#195
    M40 -DEACTIVATE SPINDLE RANGE / SPINDLE RANGE RESET
    M41 -SPINDLE RANGE
    CLS -CALL A SUBROUTINE / SUBPROGRAM
    VEN -"VEN200" SUBPROGRAM'S NAME
    WOS -WAIT ON SIGNAL / WAIT UNTIL THE CONDITION IS
    SATISFIED
    UOT -USE TEMPORARY ORIGIN / UOT=UTO COMPATIBILITY
    BETWEEN 10 SERIES & 8600 SERIES
    !USVAR10 -USER VARIABLE
    CAMBUT -CAMBUT SUBPROGRAM'S NAME
    MSA -MACHINING STOCK ALLOWANCE / MSA=UOV
    UAO -USE ABSOLUTE ORIGIN
    M45 -AUTOMATIC SPINDLE RANGE CHANGE
    E184 -PARAMETER#184
    E185 -PARAMETER#185
    INP -INPUT
    G16 -DEFINED INTERPOLATION PLANE
    DIS -DISPLAYING A VARIABLE
    DAN -DEFINE AXIS NAME
    UPR -USE PLANE ROTATED

    Hope this helps

  8. #8
    Join Date
    Jan 2009
    Posts
    2
    I am programming a 12 year old CMS Router with an Allen Bradley controller. Does anyone know what G795, G796 & G798 do?

  9. #9
    Join Date
    May 2009
    Posts
    4
    WOS = Wait on signal. Waits until targeted bit in an input or output module equals specified value.
    Example:
    (WOS,@SX=1)
    Addresses of various bits in the input/output modules can be determined with the help of the Programming Manuals + Schematic.
    WOS can cause a duel process control to hang up, so it is often better to use a conditional loop instead:
    "LOOP"
    (GTO,RUN,$I(36)=0)
    (GTO,LOOP)
    "RUN"

    MSA = Make stock allowance. This can be a positive or negative number that directly and temporarily modifies the active tool radius compensation value. Can be used to create rough, repeat or clean-up passes while keeping an accurate tool measurement in the offset table. Can be placed anywhere before tool radius comp is activated and will effect every tool until cancelled.
    Example:
    MSA=.01
    Cancel with:
    MSA=0


    G*** (G305, G523, etc) are a range of subroutine and canned cycle names that can be run directly as G codes, thus avoiding the uses of the (CLS, ***) command. The G*** subroutines are a text file that can also be used by the machine logic and can perform any programming language function or repetitious task. Opening the file in a text editor is the only sure way of determining what it does. Never open a program file with any kind of editor that inserts format characters (use notepad or wordpad vs. MS office products)

    VEN*** is not a command, it is the name of a subroutine used by Glass and Stone machines to display the name and dimensions of various vacuum accessories as the locations are pointed out by the machine. There is a VEN160, VEN200... named and edited for each accessory.

    Many CMS machines use subroutines or resident files to manage proprietary functions that are typically external to the control. They may contain any programming language accepted by the control.

  10. #10
    Join Date
    Jan 2012
    Posts
    0

    I need help!

    I really need help guys!
    The company where I started to work has "Monopost CMS model: CN/9R2 RG, serial No.:560", but no user manual fot it. It is quite an old machine...
    I saw that you mentioned earlier CMS, so I'm asking if anyone has a *.pdf instructions for its use or if you know where I can find it.
    I'm new in programming the machines and help would welcome.
    Thank You

  11. #11
    Join Date
    Jul 2007
    Posts
    148
    Quote Originally Posted by Marko Kostic View Post
    I really need help guys!
    The company where I started to work has "Monopost CMS model: CN/9R2 RG, serial No.:560", but no user manual fot it. It is quite an old machine...
    I saw that you mentioned earlier CMS, so I'm asking if anyone has a *.pdf instructions for its use or if you know where I can find it.
    I'm new in programming the machines and help would welcome.
    Thank You
    Marko:
    Try posting your question here, Machinery Manuals & Brochures - CNCzone.com-The Largest Machinist Community on the net! . That might have more visitors that can answer your question. Good luck.

Similar Threads

  1. parametric programming
    By Karl_T in forum CamSoft Products
    Replies: 21
    Last Post: 05-24-2005, 08:58 PM
  2. G CODE programing
    By mold tech in forum G-Code Programing
    Replies: 2
    Last Post: 01-31-2005, 07:48 PM
  3. I need sample G code program
    By bunalmis in forum G-Code Programing
    Replies: 1
    Last Post: 08-24-2004, 09:50 AM

Posting Permissions

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