Strippit  HECC80-Control
G  &  M  Programming Codes
For the Most Part,  Strippit Published Excellent Manuals for their
HECC80 Control Punch Machines back in the 1970's and 1980's.

However,  Strippit's NC Programming Manuals Included Very Few
Programming Examples and was Never Updated to
Even List All G and M Programming Codes their Controls Used!
Even So,  You Should get a Programming Manual if you do not have one!

So I will List HECC80-Control Codes here with their Function and a Brief Description,
and a Couple of  Test-Programs I use,  as Programming Examples.

Note that this  G-Code  Programming Language is a Very Loose Standard that
Different Machine and Control Manufactures did Not Adhere to Closely.

So these Codes are Presented as  "Strippit HECC80 Control Codes"  Only, 
and may Not be the Same as used on Your Machine-Tool,  and May Not even be
the Same on all Versions of Strippit's Own Machines,  which Used Various 
HECC80/1,  HECC80/750,  HECC80/28,  HECC80/3,  Fanuc,  MAC,  and  IBM-P.C.  Controls.

  Strippit HECC80 Control Punch Press Codes

N          Optional Program-Line Block-Number.   For Programmer's Convenience Only as
             Control Does Not use Block Numbers for Anything.   Example,  Block 6 is  N006

M00      Cycle Stop

M02      End of Program.    Not usually used or needed.

M08      Tool Lube On,  Activates Spray Mist Lubricator.   Only on some 33-Station
             Machines and No One uses.   Who wants Operators to Breath Oil Fumes?

M09      Tool Lube Off

M30      Rewind.   Rewind Stop-Code  (a Percent Sign)   %    Must Appear in Program Before
             M30 Code.   Note that HECC80 Control does Not Need Rewind as Control will
             Automatically Loop-Around to Beginning of Program.   This Code is a Carry-Over from
             Old Paper-Tape Days when Paper-Tape Programs were  "Rewind"  to the Beginning.

M70      Low-Speed Press-Drive

M72      High-Speed Press-Drive

M74      Progressive Move  "Canned-Cycle".     Note,  There are Several  "Canned-Cycle"
             Codes and it means a Whole Sequence of Events that are Performed by just 1 Code.

M75      Load Position.    Axis Move to your Selected Positions,  Turns-Off All Modal
             Codes that were ON,   and Stops Program for you to Load your Part-Sheet.

M81      Post Punch Delay.    A Move-Delay After Punch of  100  or  250 msec.  Selected by the
             Red-Switch on Front Panel Controller Board  in  Slot #7.    This allows Extra Time for
             Tool to Strip Out of Part,  after Punch,  so there is Less Change of a Part-Tool Jam.
              A  Modal Command,  stays On & Active Until Turned-Off by Code.

M82      End Post Punch Delay.    

G00      Point to Point Punching Mode.   Used to go Back to Point to Point Punching
             After a Nibble or Cutting Mode.

G01      Linear  (Straight Line)  Nibble Mode  (Contouring)

G02      Circular Nibble,  Clockwise-Direction

G03      Circular Nibble,  Counter-Clockwise Direction

G60      Slow Feed,  750 Inch Per Minute Axis Speed.    I Like Using  F  Feedrates than  G60

G61      Remove Slow Feed,  Go to Normal Full-Speed  (Machine Dependent)  Feedrate

G67      Turn the Punch Off

G68      Turn the Punch Back On

G69      Retract X & Y Axis to  "Zero" or "Home"  Position,  Not to be Confused with 
             "Load Position".    T Axis  (Tool Turret)  Retracts  to  Station  T01.

G70      Dimensions are in  Inch Input

G71      Dimensions are in  Metric Input

G84      Tapping Head Canned-Cycle,  No HECC80 Machine has Tapping Heads Anymore

G90      Absolute Input

G91      Incremental Input

G92      Absolute Preset

X          X Axis Position Command.    Dimensions are in  .001 Inch  or  .01 Millimeter.   
            Assumed to be Positive Unless there is a Minus Sign.   Trailing Zeros can be
            used,  but are Not needed.

            There is Less Confusion if you Always use a Decimal Point.
            Example,   X 48 Inches,   In 5-Digit Mode,  The Following
            are All the Same as far as  HECC80 Control is Concerned;
            X48     X+48     X48.     X+48.     X48000     X+48000     X48.000     X+48.000
            I prefer   X48.     If you Always use Decimal Points,  Control will Never be
            Confused by 5 or 6 Digit Programs,  or the 5 or 6 Digit Control-Switch Settings.
            In 6 Digit Mode without a Decimal Point,  Control would see X48 as  480 Inches.

Y         X Axis Position Command.     Same as  X Above.

T         Turret Tool Station Command.    Expressed as  T with 2 Digit Station Number
            puts that Station Under the Punch-Ram.     Example,  Tool-Station #6  is   T06

F          F  Codes are,  In That Special Strippit-Way,  Confusingly used in Different Ways.

            In  Normal Point to Point Punching,  
            F  can  (Feedrate is Optional)  be used to  Set Feedrate Speed on X and Y Axis
            in 1 Inch Increments between 1 Inch Per Minute and Full Speed.
            For Example,  on a FC1000/3 Machine the Axis Move at Normal Full-Speed of
            3000 IPM unless a Feedrate is Specified.   So I could Improve Accuracy or Keep
            Large Parts from Pulling-Out of Workclamps by Slowing X and Y Axis Speed.  
            Perhaps I would use   F15  for  1500 IPM,  or   F1  for  1000 IPM  Feedrate Speed.
            Add the   F15   to the First Line of Code After Load-Position Block.

            In  Nibble Contouring Mode,   F  is  Used to Set Actual Bite-Size of the Nibbling.

            In Most  HECC80/1 Machines  you can use   F040   to   F200  Maximum which
            corresponds to a Nibble-Bite-Size of  .040  to  .200 Inch.   Undocumented,  But
            Decimal Points seem Ok with   F.2   Same as   F200   which is  .200 Inch  Bite.
            In Metric Mode   F100   to   F500  Maximum corresponds to  1.00mm  to  5.00 mm.

            In Most  HECC80/3 Machines,  In Normal High-Speed Press-Drive Mode  (M72)
            you can use   F040   to   F200  Max. which is Nibble-Bite of  .040  to  .200 Inch.
            In Optional Low-Speed Press-Drive Mode  (M70)  you can use   F040   to   F500
            Max. which is Nibble-Bite of  .040  to  .500 Inch.

            In some  Laser and Plasma Continuous-Cutting Machines,   F  can be used as a
            Operator-Added Feedrate-Override as a  Percent  %  of Programmed Feedrate.

I           Circular Interpolation Parameter for  X-Axis.    I Data is Distance from the
            Start-Point to the Center of Curvature of the Arc,  and Must be Sined.
            When in 5 Digit Mode,  Values from  00000  to  99999  may be used.
            In 6 Digit Mode  (Including Metric),  Values from  000000  to  999999  may be used.

J          Circular Interpolation Parameter for  X-Axis.   
            Similar to  I Data word,  Except J is Distance from the Start-Point of Arc to
            the Center of Curvature of the Arc Measured Parallel to Y-Axis.


This page was last updated: October 27, 2011
  Additional HECC80 Control Laser & Plasma Cutting Codes

G00    End Cutting Mode

G01    Linear Cut

G02    Circular Cut,  Clockwise Direction

G03    Circular Cut,  counter clockwise Direction

G04    Dwell

G25      Set Offsets  --  The Following Offsets May be Defined:
                 X  --  Cutter Width for  G41  and  G42  Codes
                 Y  --  Material Thickness,  For  FC1500/45  Only
                  I  --  Cutting Head Position in  X  Axis
                 J  --  Cutting Head Position in  Y  Axis
                 F  --  Feed Rate Override,  in  %  of Programmed Feedrate
                 D  --  Duty Cycle  and  Pulse-Frequency,   Old 500 Watt Lasers Only

G40      Cutter Width Compensation Off

G41      Left  Cutter Compensation

G42      Right  Cutter Compensation

G63      Prepare to Cut  --  Pulse Mode,  Laser Only

G64      Prepare to Cut  --  Continuous

G65      Stop Mode  --  Used for Sharp Corners

G66      Go Mode  --  Used to Blend from one Cut to Another Cut

G09      Suspend Go Mode for a Single Block

M63      Air Assist Gas,  Laser Only

M64      Oxygen Assist Gas,  Laser Only

M65      Plasma-Head Up

M66      Plasma-Head Down

M67      Laser Beam  or  Plasma Torch Off

M68      Laser Beam  or  Plasma Torch On



  Additional HECC80 Control Load & Un-Loader Codes

G82    A  "Canned-Cycle"  that Combines Actions;   Pick Up Sheet,  Load,  Gage Sheet,
          and  Un-Load Finished Sheet.   
          Or the Individual Actions May Be Programmed with the Following  M Codes;
               M76  --  Pick Up Sheet
               M78  --  Gage Sheet in  Y
               M77  --  Gage Sheet in  X
               M79  --  Unload Finished Sheet

G83    Same as  G82  Except Transfer to Next Machine

G85    Load and Stack Sheets with No Punching

G86    Load and Transfer Sheets with No Punching


  Caveats;

1  --  Not all Part-Programs Need or Use All Available Codes.

2  --  Different HECC80 Control Versions can and do use Codes in Different ways.

3  --  The Same Codes are Sometimes Confusingly Used in Very Different Ways
        Depending on the Operation Type.    Example,  G67  can be Punch-Off, 
        But  G67  can also be Beam or Torch Off on a Laser or Plasma Cycle.

4  --  You can Add Comment to your Programs to Help make Program Easier to
       Understand,  or to Help Machine Operator Set-Up Machine to Run Parts.
       Just put your Comments inside Brackets like this;
       (Comment inside Brackets are Ignored by HECC80 Controls)

5  --  Programs will be In Absolute Mode,  unless you tell Control Differently with Codes.

6  --  Add Spaces Between  X, Y, T,  Etc. to make it Easier to Read,  Control does Not care.

7  --  HECC80 Type Programming Must be All Capital Letters.

8  --  Some Codes are  "Modal",  Like  G68  or  F,   and they Stay-On in All Subsequent
       Blocks Until Turned-Off,  or are Turned-Off at End of Program by  M02,  M30,  or  M75.

9  --  Programs with X and Y Moves Over 100 Inches,  and Metric Programs,  will Need
       Panel-Switch Turned to  6-Digit  Rather than  5-Digit.    Personally,  it Seems there
       would be Less Confusion if All Programs were done in 6-Digits.

10 --  HECC80/1  Controls Read First Block of a Program then  "Looks"  for the Hidden
        Carriage-Return Character at End of the Block,  to Automatically Decide if it is 
        EIA  or  ASCII  Code.    Because of this 1 time Process,  Information in the First Block
        of Your Part-Program is Ignored and Dropped.   To Avoid this Problem,  I Set-Up the 
        P.C. File-Transfer Program to Insert a  Carriage-Return Character  at Front of Your
        Part-Programs to be Downloaded.    Or,  you can Start Your Part-Programs with a 
        "Dummy-Block"    N000   for the Control to use for this Purpose.
        Note,  HECC80/3  Controls do Not  have this Problem.


Program Examples;

Here are 2 Programs,  "TEST2"  and  "Circles"  that I use to Exercise and Test Circuit Boards on my HECC80 Control Test Strippit Machines,  That Customer's have Sent-In to be Repaired.
Programs are Not Actual Part Programs,  But Do Test All Machine Operation Functions.

My Comment at End of Each Code-Line are NOT part of the Program.

Bear-In-Mind that these 2 Programs were written for
FC1000/2  &  FC1000/3  Machines which have Table Size / Load Position of  X48.  and  Y38.
FC1250/30/1500  Machines with Table Size / Load Position of  X60.  and  Y50.  will Also Run OK.
But  FC750  Machines have Smaller Table Size / Load Position of  X40.  and  Y30.  and
will Need to have X and Y Dimensions Reduced or X and Y Axis will Run into Table Limits!


( TEST2  Program,  Written for a HECC80 Control FC1000 Size Machine )
( Put 1 Inch Nibble-Tool in Turret Station T02 )

N001 G69                                  ---  Homes   X, Y, T  Axis  so Control Knows Axis-Position after
                                                        Machine Start-Up.   Normally,  you should  NOT have a  G69  
                                                        in your Program.   Remove This Block Completely!
                                                        Why Home All 3 Axis Every Time You Run Program?
                                                        Just have Machine Operator  Home  X, Y, T  Axis
                                                        1-Time with  "Home"  Buttons on Control,  at Start-Up!

N002 X48. Y38. M75                 ---  Go to Load Position X 48 & Y 38 Inches and Stop

N003 X40. T05 G68 F15           ---  Set Axis Speed to 1500 I.P.M.,  go to X 40 Inches, 
                                                        Put Turret Station #5 Under Punch-Ram, Turn On Punch,
                                                        Punch,  and Continue on to Next Code Block

N004 X10.                                  ---  Go to X 10 Inches and Punch
N005 X40.                                  ---  Go to X 40 Inches and Punch
N006 X39.                                  ---  Go to X 39 Inches and Punch
N007 X40.                                  ---  Go to X 40 Inches and Punch
N008 X39.                                  ---  Go to X 39 Inches and Punch
N009 X40.                                  ---  Go to X 40 Inches and Punch
N010 Y35. T12                          ---  Go to Y 35 Inches,  Change to Station #12,  and Punch
N011 Y05.                                 ---  Go to Y 5 Inches and Punch
N012 Y35.                                 ---  Go to Y 35 Inches and Punch
N013 Y34.                                 ---  Go to Y 34 Inches and Punch
N014 Y35.                                 ---  Go to Y 35 Inches and Punch
N015 Y34.                                 ---  Go to Y 34 Inches and Punch
N016 Y35. T02                          ---  Put Station #2 under Ram,   go to Y 35 Inches,  Punch
N017 G01 X30.  F.2                   ---  Linear Nibble X-Axis,  use  .200 Inch Bites
N018 G01 Y25.  F.2                   ---  Linear Nibble Y-Axis,  use  .200 Inch Bites
N019 G01 X40.  F.2                   ---  Linear Nibble X-Axis,  use  .200 Inch Bites
N020 G01 Y35.  F.2                   ---  Linear Nibble X-Axis,  use  .200 Inch Bites
N021 G00 X20. Y20.                 ---  Go Back to Point to Point Punching Mode,
                                                        Go to X 20 and Y 20 Inches,  and Punch
N022 X25. Y25.                         ---  Punch at X and Y 25 Inches
N023 X30. Y30.                         ---  Punch at X and Y 30 Inches

N024 X48. T11 G67                   ---  Note,  FC1000's Only have 48 Inches of Travel in X Axis.
                                                   "Get Ready"  for a Progressive-Move for Long-Parts  48  to  96
                                                   Inches on a FC1000 for 1 Prog-Move,  or  96  to 144 Inches with
                                                   2 Prog-Move Cycles.    Go to X 48 Inches.   Put Tool #11 Under
                                                   Ram which puts 2 Small Stations Under 2 Prog-Move
                                                   Hold-Down Cylinders.   Turn Off Punch.

N025 Y.05 X-48. G91 M74        ---  Progressive Move Canned Cycle.    Prog-Move Cylinders
                                                  Come Down and Trap Sheet.    Workclamps Open.  
                                                  Go to Incremental Mode,  Back-Off  .050 Inch in  Y for Move 
                                                  Clearance,  Move X-Axis  (But Not Part)  Minus 48 Inches.  
                                                  Close Workclamps,  then Raise Prog-Move Cylinders.

N026 X58. G90 G68                   ---  Go Back to Absolute Mode.   X Axis now will Move in
                                                  the  48  to  96 Inch Movement Range.    Move to  X 58
                                                  Inches  On-The-Sheet,  Turn Punch back On,  and Punch.

N027 X68.                                   ---  Punch at X 68 inches On-The-Sheet

N028 X78.                                   ---  This is Last Block of Code and End of My Program.
                                                         Punch at  X 78 inches On-The-Sheet.
                                                         HECC80 Control will Automatically Loop-Back to
                                                         Beginning of Program,  and then
                                                         Runs First Block  N001 which Homes Axis, 
                                                         then Runs Block  N002 which Moves Axis to Load 
                                                         Position and Stops.   All Modal Codes are Turned-Off.
                                                         Control Waits for  "Cycle Start"  Button to be
                                                         Pushed to Run Program Again.


( CIRCLES   Program Written for a HECC80 Control FC1000 Size Machine )
( Makes 3 Point to Point Punches,  Contour Nibbles 2 Circles,  then a Last Punch at End)
( Put 1 Inch Nibble-Tool in Turret Station T02 )

N001 G69                                     ---  Homes   X, Y, T  Axis  so Control Knows Axis-Position after
                                                           Machine Start-Up.   Normally,  you should  NOT have a  G69
                                                           in your Program.   Remove This Block Completely!
                                                           Why Home All 3 Axis Every Time You Run Program?
                                                          Just have Machine Operator  Home  X, Y, T  Axis
                                                          1-Time with  "Home"  Buttons on Control,  at Start-Up!

N002 X48. Y38. M75                    ---  Move to X 48 and Y 38 Inches,  Stop for Load Position

N004 X3.711 Y20.355 T02 G68 F1   ---  Move to New  X, Y, T  Positions, Turn-On Punch and
                                                           Punch.    Arbitrarily,  I Changed Axis Speed to 1000 I.P.M.
                                                           Usually,  I put this  F Number at  End of First Punch Block,
                                                           which in this Program is  Block N004.
                                                           Note,  there is No Block N003 in this Program.

N005 X23.237 Y18.106                ---  Move to New X & Y Position and Punch
N006 X12.956 Y14.792                ---  Move and Punch
N007 G03 I-2.5 F117                    ---  Nibble Circle Radius 2.5 inch Counter-Clockwise
                                                           at a Nibble Bite-Size of  .117 inch
N008 G00 X20.871 Y10.769        ---  Go to Point to Point,  and Punch at  X20.871  Y10.769
N009 X35.625 Y14.792                ---  Move and Punch at  X35.625  Y14.792
N010 G02 I-1.5 F106                    ---  Nibble Circle Radius 1.5 inch  Clockwise
                                                           at a Nibble Bite-Size of  .106 inch

N011 G00 X42.172 Y18.698         ---  This is Last Block of Code and End of My Program.
                                                            Go to Point to Point Mode,  Punch at  X42.172  Y18.698
                                                            HECC80 Control will Automatically Loop-Back to
                                                            Beginning of Program,  and then
                                                            Runs First Block  N001 which Homes Axis, 
                                                            then Runs Block  N002 which Moves Axis to Load 
                                                            Position and Stops.    All Modal Codes are Turned-Off.
                                                            Control Waits for  "Cycle Start"  Button to be
                                                            Pushed to Run Program Again.

Rock-On!