584,817 active members*
4,803 visitors online*
Register for free
Login
Results 1 to 15 of 15
  1. #1
    Join Date
    Mar 2009
    Posts
    76

    L20 programming

    To all the seasoned citizen programmers out there....I've been working with STARS for 15 years and I'm considering moving to a shop that has mainly citizen L20's.
    I've worked with citizens in the past but it has been quite a few years. Could someone provided me with a complete part program for a citizen L20 with explanation of $1 $2 $3 and the wait codes etc...
    Also does citizen still set workpiece variables at the end of the program? If so could you provide an explanation of these.
    I am mostly interested in the format of the program. Also being that citizens machine from the opposite direction does that mean that circular inter. is reversed? If so is tool nose radius compensation reversed also?
    If its easier to do so you could email me. I know this is a lot to ask so thank you in advance.

  2. #2
    Join Date
    Oct 2009
    Posts
    84
    Well, I'm not that seasoned and I cant provide you with any template as I have none but I can answer some of your questions.

    $1, $2, $3 etc are simply your head1 head2 etc, only you cannot run the heads separately. For wait codes either a mode change or an exclamation !L1, the L1 just being a label, must be called in both $1 and $2, its the same as your M200+ codes (there are actually a few ways to use the exclamation and iirc you can simply use !). The L20s are programmed in both the G800 mode codes and newer G600 codes which I know better to be honest. G610 is single $ machining with the gang tools, G620 is simultaneous ID/OD working with the back spindle z axis superimposed onto the main z axis, G630 is for simultaneous work on the front and on the back, G640 isnt really used and is for a double ended front drilling holder if i recall. G650 is your pick off mode and G600 cancels your modes and is pretty much the same as G610. You must have the mode calls in each $, or head if you will.

    The variables at the end you refer to are $0, or the machining data in a program you will see downloaded from the machine. In the machining data you set things such as the bar diameter, the positioning point (how far above the material to index to rapidly as the tool is called usually .05'), cut off feed rate and speed, part length (this sets your starting position). Coming from a star which I am just learning, the part length which sets the z axis start position is set with #2601 in the program, but with a citizen you tell the machine the part length, and after you manually cut off the bar and move to start position then you can start your program - the machine automatically calculates the distance from the guide bushing to start from. In your program at the end you just move the axis back the required length, thats one difference between the two.

    Citizens machine from the opposite direction but the cutting face of the tools face you as you are looking into the machine, so the direction of G2/G3 is still the same, just imagine you are standing on the other side of your star. I personally cannot 100% tell you if tool nose rad comp is any different as I havnt used it much in my time yet.

    The rest is just learning the M and G code differences. One star/citizen difference is that you must specify which spindle you wish to turn on, ie S1=2000 M3; S2=2000 M23;. S2=2000 M3 would not start the back spindle, M23/24/25 is for/rev/off respectively for the sub. You can command the sub spindle from $1 though in this manner.

    As I said before you cannot run each heads program independently as you can on a star since it is loaded as one, but there is a "last part program" section at the end of a program that allows the sub spindle to do its work if last part is selected and the machine is in single cycle. At the end of every citizen program youll see the code

    G999;
    ;
    N999;
    M2;
    M99;

    In $2 inbetween G999 and N999 you either use a goto and have it go to the top of $2 to finish the part in the sub spindle, or you just copy all the code about the G999 into the space between (which isnt smart really). This is how you can finish a part that is in the sub spindle without running the main.

    Another major difference is the use of G50Z instead of G120 to set absolute Z zero. Then you use G50W to shift the z zero for your tooling rather than in tool geometry and the axis specificed adjusts accordingly. As far as ive read so far you cannot command a G50 shift when G120 is set on a star, and it is not used in the star programming on our machine which I am very new to, so forgive me if Ive made some errors.

    I cant really think of any more glaring differences, ive noticed that a lot of people program in a bunch of different ways though so I hope I helped a bit,

    Cheers'

  3. #3
    Join Date
    Jan 2005
    Posts
    304
    Here is a labeled program to view. see attached file.
    Attached Files Attached Files

  4. #4
    Join Date
    Mar 2009
    Posts
    76

    Thanks

    Good information, I appreciate it

  5. #5
    Join Date
    Oct 2008
    Posts
    108
    Quote Originally Posted by cogsman1 View Post
    Here is a labeled program to view. see attached file.
    I find it strange that you do M140/M141 at every ID tool call. I leave the ram forward and use all the ID tools before sending it home.
    www.atmswiss.com

  6. #6
    Join Date
    Jan 2005
    Posts
    304
    I agree! That was done due to a new operator not setting tools very well and doing damage when the index happened. The way you see makes the slide move all the way home , index and then come back in. That was a special request, I didn't realize that was the one I selected to upload.

  7. #7
    Join Date
    Oct 2009
    Posts
    84
    Quote Originally Posted by cogsman1 View Post
    I agree! That was done due to a new operator not setting tools very well and doing damage when the index happened. The way you see makes the slide move all the way home , index and then come back in. That was a special request, I didn't realize that was the one I selected to upload.
    Wouldnt it have been much faster to just set the tools correctly?.. and especially over a production run

  8. #8
    Join Date
    Jan 2005
    Posts
    304
    Well after he first had the problem he was very worried and afraid of the machine so I added this. The added cycle time was only 2 seconds total, so it made no difference anyway. This was the only time it was needed, by the time this job was done he was much more comfortable with the machine. I got better production once he was more relaxed so it was woth it.

  9. #9
    Join Date
    Oct 2009
    Posts
    84
    Quote Originally Posted by cogsman1 View Post
    Well after he first had the problem he was very worried and afraid of the machine so I added this. The added cycle time was only 2 seconds total, so it made no difference anyway. This was the only time it was needed, by the time this job was done he was much more comfortable with the machine. I got better production once he was more relaxed so it was woth it.
    Makes sense, the machines can surely give you a false sense of security sometimes. Just when you think youre fully comfortable..WHOOOMP, heh. Though to me 2 seconds to me is still a lot of time, I always try to reduce moves as much as I can. Depending on the size of the production run you can save up to a day or twos run time, which allows wiggle room for all the stupid little jobs the higher ups want you to switch a machine over for a run of 100 parts :rainfro:

    Though of course if you spend 2 days figuring out how to do that 2 second time savings then youre no farther ahead anyway.

  10. #10
    Join Date
    Jun 2013
    Posts
    2
    Quote Originally Posted by MikeMc View Post
    I find it strange that you do M140/M141 at every ID tool call. I leave the ram forward and use all the ID tools before sending it home.
    Is there a way to move in sub back 1" for tool clearance rather than going home M141? I'm refering to the gang tools programming where you can specifiy an "H" to move off the dia of the barstock for tool clearance?

  11. #11
    Join Date
    Jan 2011
    Posts
    44
    you don`t have to use M140 and M141 for every single i.d. or turning in position t21,t22,t23 tool. set tools correctly. if you want do this, G0 Z-.2 after drilling or boring or turning.

  12. #12
    Join Date
    Jun 2010
    Posts
    81
    We don't use M140 either. Here's a Sample of L20 code.


    $1
    (10/18/2012 11:31:26 AM)
    G113
    M118
    /M52
    G99
    M6
    G4 U.8
    M9
    G50 Z.411 (LEFT HAND CUTOFF TOOL)
    G0 Z-.05
    G18 M97 G43
    G600

    T0300 (T300 - 80 DEG TURN TOOL .0157R)
    /B9 (ON)
    (TURN O.D.)
    G97 M3 S1=1050
    M97
    G50 S7000
    G0 X2. Z-.01 T03
    G18
    G96 S550
    Z0
    X.8488
    G1 X-.0512 F.005
    X.6672
    X.7455 Z.0391
    Z.0466
    X.9255 Z.1966
    G0 X2.
    Z-.3
    G600
    G97 S1 = 1050
    /B9 (OFF)
    G0 T0
    M98 H1
    G600
    G610

    G18 M97 G43
    G99

    T2200 (T2200 - .5625 DIA. CARBIDE DRILL)
    /B2 (ON)
    (.5625 DRILL)
    M97
    M3 S1 = 1868
    G0 Z-.2 T22
    X.02
    G18
    G83 X.02 Z2.62 F.0017
    G80 Z-.2
    /B2 (OFF)
    G0 T0

    T2100 (T2100 - .375 X 90 SPOT DRILL)
    (.375 X 90 SPOT DRILL)
    M3 S1 = 2800
    G0 Z-.1 T21
    X0
    G18
    Z2.4125
    G83 X0 Z2.7675 R0 F.0045
    G80 Z2.4125
    G0 Z-.1
    G0 T0

    T2300 (T2300 - .250 R.H. BORING BAR)
    G50 U.436
    /B2 (ON)
    (1 - BORE I.D.)
    G97 M3 S1=2500
    M97
    G50 S2500
    G0 X.26 Z-.1 T23
    G18
    G96 S300
    Z2.6125
    X.2885
    G1 X.5245 F.002
    G3 X.561 Z2.6077 R.037
    G1 X.541 Z2.5877
    G0 Z-.1
    (2 - BORE I.D.)
    X.74
    G18
    Z-.0401
    X.708
    G1 X.5773 Z.0253 F.0025
    G0 Z-.1
    (3 - BORE I.D.)
    X.74
    G18
    Z-.0401
    X.732
    G1 X.6225 Z.0147 F.002
    Z2.5755
    G2 X.5485 Z2.6125 R.037
    G1 X.2825
    G0 Z-.1
    G97 S1 = 2500
    /B2 (OFF)
    G0 T0
    G50 U-.436
    G600

    T0300 (T300 - 80 DEG TURN TOOL .0157R)
    /B9 (ON)
    (TURN O.D.)
    M97
    G97 M3 S1=1050
    M97
    G50 S7000
    G0 X2. Z-.1 T03
    G18
    G96 S550
    Z-.05
    X.4688
    G1 Z0 F.005
    X.6672
    X.7455 Z.0391
    Z.8636
    X.9255 Z1.0136
    G0 X2.
    Z-.1
    G97 S1 = 1050
    /B9 (OFF)
    G0 T0

    T0400 (T400 - .105 WIDE CUTOFF- LEFT HANDED)
    G50 W-.5
    /B1 (ON)
    M97
    G97 M3 S1=1050
    M97
    G50 S7000
    G0 X2. Z.27 T04
    G18
    G96 S550
    X.8255
    G1 X.723 F.002
    G0 X.8
    X2. Z.208
    G18
    X.8162
    G1 X.7327 Z.2497 F.004
    X.7273 Z.2501
    G3 X.715 Z.257 R.007
    G1 Z.778
    G0 X3.
    G97 S1 = 700
    /B1 (OFF)
    G0 T0
    G50 W.5

  13. #13
    Join Date
    Oct 2011
    Posts
    65
    WAS THIS DONE WITH ESPRIT.



    Quote Originally Posted by cbr_speedster View Post
    We don't use M140 either. Here's a Sample of L20 code.


    $1
    (10/18/2012 11:31:26 AM)
    G113
    M118
    /M52
    G99
    M6
    G4 U.8
    M9
    G50 Z.411 (LEFT HAND CUTOFF TOOL)
    G0 Z-.05
    G18 M97 G43
    G600

    T0300 (T300 - 80 DEG TURN TOOL .0157R)
    /B9 (ON)
    (TURN O.D.)
    G97 M3 S1=1050
    M97
    G50 S7000
    G0 X2. Z-.01 T03
    G18
    G96 S550
    Z0
    X.8488
    G1 X-.0512 F.005
    X.6672
    X.7455 Z.0391
    Z.0466
    X.9255 Z.1966
    G0 X2.
    Z-.3
    G600
    G97 S1 = 1050
    /B9 (OFF)
    G0 T0
    M98 H1
    G600
    G610

    G18 M97 G43
    G99

    T2200 (T2200 - .5625 DIA. CARBIDE DRILL)
    /B2 (ON)
    (.5625 DRILL)
    M97
    M3 S1 = 1868
    G0 Z-.2 T22
    X.02
    G18
    G83 X.02 Z2.62 F.0017
    G80 Z-.2
    /B2 (OFF)
    G0 T0

    T2100 (T2100 - .375 X 90 SPOT DRILL)
    (.375 X 90 SPOT DRILL)
    M3 S1 = 2800
    G0 Z-.1 T21
    X0
    G18
    Z2.4125
    G83 X0 Z2.7675 R0 F.0045
    G80 Z2.4125
    G0 Z-.1
    G0 T0

    T2300 (T2300 - .250 R.H. BORING BAR)
    G50 U.436
    /B2 (ON)
    (1 - BORE I.D.)
    G97 M3 S1=2500
    M97
    G50 S2500
    G0 X.26 Z-.1 T23
    G18
    G96 S300
    Z2.6125
    X.2885
    G1 X.5245 F.002
    G3 X.561 Z2.6077 R.037
    G1 X.541 Z2.5877
    G0 Z-.1
    (2 - BORE I.D.)
    X.74
    G18
    Z-.0401
    X.708
    G1 X.5773 Z.0253 F.0025
    G0 Z-.1
    (3 - BORE I.D.)
    X.74
    G18
    Z-.0401
    X.732
    G1 X.6225 Z.0147 F.002
    Z2.5755
    G2 X.5485 Z2.6125 R.037
    G1 X.2825
    G0 Z-.1
    G97 S1 = 2500
    /B2 (OFF)
    G0 T0
    G50 U-.436
    G600

    T0300 (T300 - 80 DEG TURN TOOL .0157R)
    /B9 (ON)
    (TURN O.D.)
    M97
    G97 M3 S1=1050
    M97
    G50 S7000
    G0 X2. Z-.1 T03
    G18
    G96 S550
    Z-.05
    X.4688
    G1 Z0 F.005
    X.6672
    X.7455 Z.0391
    Z.8636
    X.9255 Z1.0136
    G0 X2.
    Z-.1
    G97 S1 = 1050
    /B9 (OFF)
    G0 T0

    T0400 (T400 - .105 WIDE CUTOFF- LEFT HANDED)
    G50 W-.5
    /B1 (ON)
    M97
    G97 M3 S1=1050
    M97
    G50 S7000
    G0 X2. Z.27 T04
    G18
    G96 S550
    X.8255
    G1 X.723 F.002
    G0 X.8
    X2. Z.208
    G18
    X.8162
    G1 X.7327 Z.2497 F.004
    X.7273 Z.2501
    G3 X.715 Z.257 R.007
    G1 Z.778
    G0 X3.
    G97 S1 = 700
    /B1 (OFF)
    G0 T0
    G50 W.5

  14. #14
    Join Date
    Sep 2013
    Posts
    37
    Quote Originally Posted by glenthemann View Post

    Another major difference is the use of G50Z instead of G120 to set absolute Z zero. Then you use G50W to shift the z zero for your tooling rather than in tool geometry and the axis specificed adjusts accordingly. As far as ive read so far you cannot command a G50 shift when G120 is set on a star, and it is not used in the star programming on our machine which I am very new to, so forgive me if Ive made some errors.

    I cant really think of any more glaring differences, ive noticed that a lot of people program in a bunch of different ways though so I hope I helped a bit,

    Cheers'
    You can still G50W if you use G120. Do it every day.

    Wait till you get G266 and G300


    Sent from my iPad using Tapatalk HD

  15. #15
    Join Date
    May 2006
    Posts
    803

    Re: L20 programming

    Old thread revival,
    I hope you experts are still there, we have a L20 and L16 to validate operational and then make parts,
    it was moved and wired this weekend.
    we will need you help after i model the parts we need.
    Thanks.
    i am a mill guy, never touched a citizen only a hardinge
    Been doing this too long

Similar Threads

  1. 1/2-14 NPT Programming
    By J.R. SWIGER in forum G-Code Programing
    Replies: 4
    Last Post: 08-02-2016, 09:29 PM
  2. Xilog 3 Parametric Programming Offline Programming
    By julioykaly in forum Commercial CNC Wood Routers
    Replies: 1
    Last Post: 04-27-2013, 09:22 PM
  3. New to programming
    By DWJosh in forum Uncategorised CAM Discussion
    Replies: 3
    Last Post: 02-02-2012, 08:49 PM
  4. CNC PROGRAMMING
    By ADELWEIS in forum Employment Opportunity
    Replies: 0
    Last Post: 01-06-2011, 04:38 PM
  5. help programming
    By cody in forum G-Code Programing
    Replies: 2
    Last Post: 07-04-2007, 01:53 AM

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
  •