alhp software reference manual

Upload: sonnysee

Post on 03-Jun-2018

233 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/12/2019 ALhp Software Reference Manual

    1/45

    AL hp Programming ManualW.A. Whitney 647

  • 8/12/2019 ALhp Software Reference Manual

    2/45

    Information in this documentation is subject to change without notice. Reproduction or transmission of any part of this documentation inany form or by any means without the express written permission of Altronics Service, LLC is strictly prohibited.

    Altronics Service has taken best efforts to ensure the accuracy and integrity of the information contained in this documentation. AltronicsService makes no representation of guarantee, express or implied, with regard to the completeness or accuracy of the informationcontained in this documentation, and cannot accept any legal responsibility or liability for any errors or omissions that may be made.

    2008 Altronics Service, LLC. All rights reserved.

    AL and AL hp are either registered trademarks or trademarks of Altronics Service, LLC

    Microsoft, Windows, Windows XP, Windows CE are either registered trademarks or trademarks of Microsoft Corporation in the UnitedStates and/or other countries.

    All other product names are either registered trademarks or trademarks of their respective owners.

    Intellectual Property. All Intellectual Property, as defined below, and relating to the AL or AL hp , including but not limited to, accessories,parts, hardware, and software (the System), is proprietary to Altronics Service, LLC. or its suppliers under federal laws, state laws, and/orinternational treaty provisions. You may not infringe or otherwise violate the Intellectual Property rights owned by Altronics Service or itssuppliers. By using the System or any part thereof, you agree that you will not (and will not attempt to) modify, prepare derivative works of,reverse engineer, decompile, disassemble, or otherwise attempt to create source code from the software which is part of the System. Notitle to, or ownership, or any other right in or to the Intellectual Property is transferred to you. All rights to the Intellectual Property shallremain with Altronics Service and its suppliers. Intellectual Property, as used herein, includes, but i s not limited to, inventions (patentableor unpatentable), patents, trade secrets, copyrights, software, computer programs, and related documentation and other works ofauthorship.

    The furnishing or distribution of this documentation does not grant any license to these patents, trademarks, copyrights, and/or otherintellectual property rights.

  • 8/12/2019 ALhp Software Reference Manual

    3/45

    CNC Programming Manual

    1. P REPARATORY (G) C ODES O VERVIEW

    Code Function Type Page#

    MOTION TYPE GROUP G00 Rapid Positioning MODAL 1G01 Linear Interpolation 2G02 Circular Interpolation CW 4G03 Circular Interpolation CCW 4G21 Linear Interpolation (in-zone) 2G22 Circular Interpolation CW (in-zone) 4G23 Circular Interpolation CCW (in-zone) 4

    DWELL G04 Dwell (Time = F Word) NON-MODAL 8

    CUTTER COMPENSATION GROUP G40 Cancel Cutter Compensation MODAL 9G41 Cutter Compensation Left 9G42 Cutter Compensation Right 9

    WORK COORDINATES GROUP G54 Punch Offset MODAL 10G55 Torch Offset 10G56 G59 Other Attachment Offsets 10

    C ANNED CYCLES GROUP G61 Linear Punch Pattern at an Angle NON-MODAL 12G62 CW/CCW Punched Arc 13G64 Bolt Hole Circle Pattern 15

    G65 Rectangular Cutout 17G67 Square/Rectangular Grid Pattern 19

    P ROGRAM DIMENSION GROUP G70 Imperial Units (Inch) MODAL 21G71 Metric Units (Millimeter) 21

  • 8/12/2019 ALhp Software Reference Manual

    4/45

    CNC Programming Manual

    Code Function Type Page#

    P ROGRAM MODE GROUP G90 Absolute Mode MODAL 22G91 Incremental Mode 22

    COORDINATE P RESET GROUP G92 Coordinate Preset NON-MODAL 23G99 Cancel Coordinate Preset 23

  • 8/12/2019 ALhp Software Reference Manual

    5/45

    CNC Programming Manual

    2. M ISCELLANEOUS (M) C ODES O VERVIEW

    The M Codes have been classified into groups for clarification. It is good programmingpractice not to program members of the same group in the same NC block.

    Code Function Page#

    P ROGRAM CONTROL GROUP M00 Program Stop 25M01 Optional Stop 25M02 Program End 25M30 Program End & Rewind 25

    TOOL CHANGE GROUP M06 Tool Change 26

    S AFE ZONE GROUP M10 Activate Clamp Safe Zones 27M11 Cancel Clamp Safe Zones 27

    TORCH CONTROL G ROUP M17 Torch Ignite 29M18 Torch Extinguish 29

    R AM CONTROL GROUP M41 Ram Down position is by pressure switch 30M42 Ram Down position is by ram down switch 30M54 Ram Up position is by timer 30M55 Ram Up position is standard tool up switch 30M56 Ram Up position is tool change switch 30

    REPOSITION GROUP M51 Automatic incremental reposition 31M71 Reposition work clamps without preset 32

  • 8/12/2019 ALhp Software Reference Manual

    6/45

    CNC Programming Manual

    Code Function Page#

    P UNCH CONTROL GROUP M75 Punch Enable 34M85 Punch Disable 34M20 Single Block No Punch 34

    M ATERIAL CONTROL GROUP M87 Load Position 35M97 Material Unload 35

    S UB -P ROGRAM GROUP M98 Sub-program Call 36M99 Sub-program End or Program Jump 36

    OTHER CODES

    GOTO Program jump 39 A AngleB Angle between holes around circle

    D Offset to account for the cutter diameterF Programmed feedrateP Number of punchesT Tool number (used with M06)R Radius

  • 8/12/2019 ALhp Software Reference Manual

    7/45

    CNC Programming Manual

    Page 1

    3. P REPARATORY (G) C ODES D ETAIL

    3.1 M OTION TYPE GROUP (G00 G01 G02 G03 G21 G22 G23)

    3.1.1 G00 P UNCH B LOCKS

    Description :

    Punch blocks define the location to be punched and command the axes to make a traversemove to the punch location. On completion of the move the machine will execute a punchcycle.

    Format : N__ G00 X__ Y__

    Where:

    N = Optional sequence number

    G00 = Punch move command

    X/Y = Endpoint of move (location of punch)

    Rules :

    1. Punch moves execute at the traverse rate, which is the maximum rate of each axis.Both axis will start moving towards the specified location until one reaches its endpoint. The other axis then continues at maximum speed until it also reaches its endpoint. As a result traverse moves typically give a dogleg style motion, instead of alinear motion. Note, the maximum traverse rate may be adjusted via the RAPIDOVERRIDE dial.

    2. A punch block may address one or both contouring axes.

    3. When the axes reach the anticipation zone, a ram cycle will be commanded. This istimed such that the tool only makes contact with the workpiece when it is stationary.

    4. A G00 block does not require a feedrate word. A previously programmed feedrateremains unchanged and is active in the next profiling move.

    5. G00 is modal and cancels other G codes in its group (G01, G02, G03, etc.).

  • 8/12/2019 ALhp Software Reference Manual

    8/45

    CNC Programming Manual

    Page 2

    Example :

    N10 G00 X40 Y50 (Absolute Programming)

    N10 G00 U30 V40 (Incremental Programming)

    3.1.2 G01/G21 L INEAR C UTTING B LOCKS

    Description :

    In a linear cutting block, the tool/torch moves in a straight line to the commanded position atthe feedrate programmed in the active F word.

    Format : N__ G01/G21 X__ Y__

    Where:

    N = Optional sequence number

    G01 = Linear interpolation with block transfer at standard in-positionband (corner rounding may occur).

  • 8/12/2019 ALhp Software Reference Manual

    9/45

    CNC Programming Manual

    Page 3

    G21 = Linear interpolation with block transfer at zero in-position band(corner rounding does not occur).

    X/Y = Endpoint of path.

    Rules :

    1. Any number of programmable axes may be addressed in the contouring block.

    2. G01 and G21 are modal and cancel other G words in their group (G00, G02, G03,etc.).

    3. Linear interpolation blocks are executed at the programmed feedrate. An error isgenerated if no feedrate has been programmed.

    Example 1 :

    N20 G01 X10 Y40 (Corner rounding may occur)N30 X40

    Example 2 :

  • 8/12/2019 ALhp Software Reference Manual

    10/45

    CNC Programming Manual

    Page 4

    N20 G21 X10 Y40 (No corner rounding occurs)N30 X40

    3.1.3 G02/G03, G22/G23 C IRCULAR C UTTING B LOCKS

    Description :

    In a circular cutting block, the tool/torch moves on a circular path to the commandedposition at the feedrate programmed in the active F word.

    Format : N__ G02/G03/G22/G23 X__ Y__ I__ J__ R__

    Where:

    N = Optional sequence number.

    G02/G03 = Clockwise circular move with block transfer at standard in-position band (corner rounding may occur at completion of arc).

    G22/G23 = Counter-clockwise circular move with block transfer at zeroin-position band (corner rounding does not occur at completion of arc).

    X/Y = Endpoint of path (absolute or incremental).

  • 8/12/2019 ALhp Software Reference Manual

    11/45

    CNC Programming Manual

    Page 5

    I/J = Optional arc center offsets, from the start point of the arc.

    R = Optional arc radius.

    Rules :

    1. Arc direction is as defined in EIA standard RS-267.

    2. The starting point of the arc is determined by the end points of the previous move.

    3. The end point of the arc is specified by the programmed end point coordinates(absolute), or the distance between starting and end points (incremental).

    4. Circular interpolation arc center offsets are signed incremental values that specify thedistance from the start of the arc to the center of the arc. I is programmed for theincremental length parallel to the X axis. J is programmed for the incremental lengthparallel to the Y axis.

    5. If an arc center offset is zero, it need not be programmed. Both offsets cannot bezero.

    6. If arc center offsets are used, they must be signed to determine the location of thecenter of the arc.

    7. Radius programming is mutually exclusive with arc center offset programming; bothcannot be programmed in the same block.

    8. If Radius programming is used, a negative radius must be used to specify an arc ofmore than 180 degrees.

    9. If a full circle is to be programmed, Radius programming cannot be used. Arc centeroffsets I/J must be used.

    10. The calculated end point based on the programmed I and J must be on the arc(within an allowable tolerance) or an error message is displayed. If an error existswithin the allowable tolerance, in some cases the resulting tool path may not beacceptable. To avoid this, the use of Radius programming is recommended formanually generated programs.

    11. G02, G03, G22, G23 are modal and cancel other G words in their group (G00, G01,G21).

    12. It is possible to invert the direction of rotation for the circular cutting blocks via theSetup screen (F1/F7). This may be required depending on the direction of the axeson the original CNC controller or any CAD/CAM software used.

    Example 1 : N20 G03 X30 I10

  • 8/12/2019 ALhp Software Reference Manual

    12/45

    CNC Programming Manual

    Page 6

    N30 G02 X50 I10

    Example 2 : N20 G03 V-20 J-10N30 G02 Y10 R10

    Example 3 : N20 G03 X25 R7.5

  • 8/12/2019 ALhp Software Reference Manual

    13/45

    CNC Programming Manual

    Page 7

    N30 G02 U20 R-14.142N40 G03 U15 R7.5

  • 8/12/2019 ALhp Software Reference Manual

    14/45

    CNC Programming Manual

    Page 8

    3.2 DWELL (G04)

    Description :

    The program block is suspended until the dwell expires, allowing machine operations tocomplete.

    Format : N__ G04 F__.__

    Where:

    N = Optional block sequence number.

    G04 = Dwell G code.

    F = Dwell time (in seconds).

    Example :

    N100 G04 F2 A 2 second dwell.

  • 8/12/2019 ALhp Software Reference Manual

    15/45

    CNC Programming Manual

    Page 9

    3.3 CUTTER COMPENSATION (G40/G41/G42)

    Description :

    When cutter-radius compensation is in effect, the path the center of the cutter follows isoffset from the programmed path. This offset is used to compensate for the differencebetween the programmed cutter path and the actual cutter path.

    Format : N__ G40/G41/G42 D__

    Where:

    N = Optional block sequence number.

    G40 = Cancels all active cutter compensation.

    G41 = Moves the cutter to the left side of the programmed path.

    G42 = Moves the cutter to the right side of the programmed path.

    D = Offset number to use in the Radius Offset table.

    Rules :

    1. The cutter compensation amount is defined in the Radius Offset table (F7/F3).

    2. Offset values can be either positive or negative.

    3. G41/G42 offsets are modal so are applied to all moves until a new G41/G42command is programmed, or cancelled by a G40.

    Example :

    N20 G41 D01

    The following programmed moves are offset to the left by the distance specified inposition 1 of the Radius Offset table.

  • 8/12/2019 ALhp Software Reference Manual

    16/45

    CNC Programming Manual

    Page 10

    WORK COORDINATE GROUP (G54 G55 G56 G57 G58 G59)

    Description :

    The work coordinate offsets are used to compensate for the different physical positions ofthe various machine attachments relative to the ram. A work coordinate offset may exist foreach axis. The operator-entered values of these offsets are incrementally added to therespective X and Y program position registers allowing program positional data for eachattachment to be relative to the workpiece reference zero.

    These offsets allow you to use drawing dimensions without adding or subtracting thedifferences between those and the actual dimensions that result from the fixtures beingused on the machine.

    Format : N__ G54/G55/G56/G57/G58/G59 X__ Y__

    Where:

    N = Optional block sequence number.

    G54/G55/G56/G57/G58/G59 = Work coordinate offset to be activated.

    X/Y = Optional axis coordinates for move after offset activation.

    Rules :

    1. G codes 54 through 59 are modal commands and are mutually exclusive.

    2. The offset values for each of the work coordinates are user defined in the WorkCoordinate Offset screen (F7/F2).

    3. The required sign of the value (+/-) is determined by the direction of the ram relativeto the attachment.

    4. Work coordinate offsets may be cancelled by M02, M30 and Clear and also by amachine referencing operation.

    5. No axis motion results when the offsets are activated/cancelled without aprogrammed move. An axis move must be commanded before the actual axisposition is affected by the offset activation/cancellation.

    6. Activating a coordinate offset of 0,0 will have the effect of cancelling an existingoffset. Typically G54 is left at 0,0 to use to activate the ram offset.

    Example 1 :

  • 8/12/2019 ALhp Software Reference Manual

    17/45

    CNC Programming Manual

    Page 11

    N20 G54 X__ Y__

    Offsets removed from program position registers; commanded motion executes withrespect to machine zero.

    Example 2 :

    N20 G55

    Torch Offsets applied, program position registers updated; no motion occurs.

    N30 G90 X__ Y__

    X and Y motion executed with respect to workpiece zero, not machine zero.

  • 8/12/2019 ALhp Software Reference Manual

    18/45

    CNC Programming Manual

    Page 12

    C ANNED CYCLE GROUP (G61 G62 G64 G65 G67)

    G61 L INEAR P UNCH P ATTERN

    Description :

    A linear punch pattern consists of a row of punch centers, which can lie at any angle from 360 to +360 degrees relative to the horizontal axis. The machine traverses to all the definedpunch centers in order.

    Format : N__ G61 X__ Y__ I__ A__ P__

    Where:

    N = Optional block sequence number.

    G61 = Linear pattern G code.

    X/Y = Start point of pattern.

    I = Incremental distance between punches.

    A = Angle of line of punches relative to the horizontal axis. If notprogrammed, angle defaults to zero degrees.

    P = Total number of punches in row.

    Rules :

    1. G61 is a non-modal command.

  • 8/12/2019 ALhp Software Reference Manual

    19/45

    CNC Programming Manual

    Page 13

    Example :

    N100 G61 X2 Y2 I2.2 A45 P4

    G62 CW/CCW C IRCULAR P UNCH P ATTERN

    Description :

    A circular punch pattern consists of a circular arc of punch centers. The machine traversesto all defined punch centers in order, in a clockwise or counterclockwise direction.

    Format : N__ G62 X__ Y__ A__ B__ R__ P__

    Where:

    N = Optional block sequence number.

    X/Y = Axis dimensions of the arc center.

    A = Angle of first punch center on the arc relative to the horizontal axis.If not programmed, the angle defaults to zero degrees.

    B = Signed incremental angle between punch centers on the arc. If theangle is positive, the arc is punched in a counterclockwisedirection. If the angle is negative, the arc is punched in a clockwisedirection.

    R = Radius of arc.

    P = Total number of punch centers on arc.

  • 8/12/2019 ALhp Software Reference Manual

    20/45

    CNC Programming Manual

    Page 14

    Rules :

    1. G62 is a non-modal command.

    Example :

    N25 G62 X3 Y2 A15 B10 R5 P6

  • 8/12/2019 ALhp Software Reference Manual

    21/45

    CNC Programming Manual

    Page 15

    G64 C IRCULAR P UNCH P ATTERN (B OLT H OLE C IRCLE )

    Description :

    A circular punch pattern consists of a set of equally spaced punch centers positionedaround a circle of given center and radius. The machine traverses to all the defined punchcenters in order.

    Format : N__ G64 X__ Y__ R__ A__ P__

    Where:

    N = Optional block sequence number.

    G64 = Circular punch pattern G code.

    X/Y = Axis dimensions of the center point of the circle.

    R = Radius of the circle (must be positive).

    A = Angle of the first punch center relative to the horizontal axis. If notprogrammed, the angle defaults to zero degrees.

    P = Total number of punch centers in the pattern.

    Rules :

    1. G64 is a non-modal command.

  • 8/12/2019 ALhp Software Reference Manual

    22/45

  • 8/12/2019 ALhp Software Reference Manual

    23/45

    CNC Programming Manual

    Page 17

    G65 R ECTANGULAR C UTOUT

    Description :

    The G65 rectangular cutout command uses a square or rectangular tool to punch out asquare/rectangle of specified dimensions, with tool compensation on the inside of theprogrammed cutout.

    Format : N__ G65 X__ Y__ I__ J__ B__ C__ A__

    Where:

    N = Optional block sequence number.

    X/Y = Axis dimensions of the start point of the cutout.

    I = Length of side 1 of the programmed cutout in the X direction. If I isnegative, the direction will be reversed.

    J = Length of side 2 of the programmed cutout in the Y direction. If J ispositive, the tool path turns left from side 1 to side 2, and ifnegative, the tool path turns right as viewed in the direction of themotion producing side 1.

    B = Square/rectangular tool dimension parallel to side 1 of theprogrammed cutout.

    C = Square/rectangular tool dimension parallel to side 2 of theprogrammed cutout. If the tool is a square tool, it is not necessaryto program C.

    A = Angle of the cutout relative to the horizontal axis. If notprogrammed, the angle defaults to zero.

    Rules :

    1. G65 is a non-modal command.

    2. If the programmed cutout is not parallel to the horizontal axis, the tool used mustbe oriented at the same angle as the cutout.

    3. The cutout must be larger than the tool used.

  • 8/12/2019 ALhp Software Reference Manual

    24/45

    CNC Programming Manual

    Page 18

    Example :

    N100 G65 X4 Y3 I6 J4 B1 C0.5

  • 8/12/2019 ALhp Software Reference Manual

    25/45

    CNC Programming Manual

    Page 19

    G67 G RID P ATTERN

    Description :

    A grid pattern consists of rows and columns of punch centers, where the rows are parallel tothe horizontal axis. The machine traverses to all the defined punch centers in order.

    Format : N__ G67 X__ Y__ I__ J__ P__ Q__ D__

    Where:

    N = Optional block sequence number.

    G67 = Grid pattern G code.

    X/Y = Axis coordinates of the start point of the grid.

    I = Signed distance between punch centers along a row.

    J = Signed distance between punch centers in a column.

    P = Number of punch centers in a row (number ofcolumns).

    Q = Number of punch centers in a column (number of rows).

    D = Punch order. If D is not programmed the grid will be punched byrows. If D is programmed the grid will be punched by columns.

    Rules:

    1. G67 is a non-modal command.

  • 8/12/2019 ALhp Software Reference Manual

    26/45

    CNC Programming Manual

    Page 20

    Example1 :

    N100 G67 X4 Y4 I1.5 J1 P6 Q5

    Example2 :

    N100 G67 X4 Y4 I1.5 J1 P6 Q5 D1

  • 8/12/2019 ALhp Software Reference Manual

    27/45

    CNC Programming Manual

    Page 21

    P ROGRAM DIMENSION GROUP (G70 G71)

    Description:

    Before the Control can accept and use dimensional input data the units of the input datamust be established.

    Format : N__ G70/G71

    Where:

    N = Optional block sequence number.

    G70 = Dimensional programming unit is INCH.

    G71 = Dimensional programming unit is MILLIMETER.

    Rules:

    1. Before any block containing a feedrate or axis move, G70 or G71 must beprogrammed to establish inch or metric data input. If this is not done, the Control willassume the default condition selected by the configurator.

    Example :

    N20 G70 Establishes the INCH as the dimensional programming unit.

  • 8/12/2019 ALhp Software Reference Manual

    28/45

    CNC Programming Manual

    Page 22

    P ROGRAM MODE GROUP (G90 G91)

    Description :

    Before the Control can execute programmed moves it needs to know whether thedimensional data programmed is to be interpreted as absolute or incremental coordinates.

    Format : N__ G90/G91

    Where:

    N = Optional block sequence number.

    G90 = Absolute coordinates programming mode.

    G91 = Incremental departure mode.

    Rules :

    1. Before any block containing an axis move, G90 or G91 must be programmed toestablish absolute or incremental programming mode. If this is not done, the Controlwill assume the default condition selected by the configurator.

    2. All X/Y axis programmed moves will be absolute or incremental dependant on themode established by G90/G91.

    3. Incremental departures in X/Y axes can be executed when absolute mode (G90) isactive by programming U/V instead of X/Y.

    4. Absolute and Incremental programming can be mixed within a block by programmingeither X or U and Y or V.

    5. Do not program X and U or Y and V in the same block.

    Example :

    N20 G90 Establishes the Absolute programming mode for all axis moves thatfollow.

  • 8/12/2019 ALhp Software Reference Manual

    29/45

  • 8/12/2019 ALhp Software Reference Manual

    30/45

    CNC Programming Manual

    Page 24

    Example :

    Program X Axis Pos Register

    at end of blockX Axis Machine Pos X Axis Programming

    LimitsN20 X20 Y30 M20N30 G92 X10 Y15

    30.00020.000

    30.00020.000

    -3.000 60.000-3.000 60.000

    Block N20 moves the axes to X20 and Y30. M20 inhibits the punch cycle. The machineposition displays X20 Y30 at completion of this block.

    Block N30 presets the current program position to be X10 and Y15 with respect to theworkpiece zero. No movement occurs. The machine position displays X10 Y15 at

    completion of this block.

  • 8/12/2019 ALhp Software Reference Manual

    31/45

    CNC Programming Manual

    Page 25

    4. M ISCELLANEOUS (M) C ODES D ETAIL

    4.1 P ROGRAM CONTROL GROUP (M00 M01 M02 M30)

    This grouping of M codes is used to control the execution of the active part program. Theycan be further sub-classified into:

    Program Stop Codes (M00 / M01)Program End Codes (M02 / M30)

    Note, all of these codes inhibit any punching in the block which it appears.

    4.1.1 P ROGRAM S TOP C ODES

    M00 - Unconditional StopM01 - Optional Stop

    M00

    When a block containing an M00 is executed and all motion in the block is complete, theCYCLE START pushbutton lamp on the AL controller will go out and the PROGRAM STOPlamp on the machine hood will come on. After the operator has completed necessarymanual operations, (remove part, etc), depression of the CYCLE START pushbutton willrestart the part program in the block following the stop (M00) code.

    M01

    The function of an M01 is identical to an M00 except that the stop is only honored if theOPTION STOP function on the AL machine front panel is activated (illuminated).

    4.1.2 P ROGRAM E ND C ODES

    M02 - Program EndM30 - Program End and Rewind

    M02 & M30 (identical on this version of CNC)

    The M02 must only appear once in a part program and that should be in the last physicalblock. It signifies the end of the part program and causes many of the modal function(Radius Compensation, Work Coordinate, etc) to be canceled. The CYCLE STARTpushbutton lamp on the AL controller will go out and the PROGRAM END lamp on themachine hood will illuminate.

  • 8/12/2019 ALhp Software Reference Manual

    32/45

    CNC Programming Manual

    Page 26

    4.2 T OOL CHANGE GROUP (M06)

    In a single station punch, like the Whitney 647, the function of a tool change request code(M06) is to lower CYCLE START, raise the RAM to the tool change position and light theTOOL CHANGE lamp on the machine hood, to inform the operator that the punch/die(possibly stripper) needs to be changed to a new size. If motion is programmed in the sameblock as M06, the motion will complete before the M06 becomes active.

    An optional tool number (T) may be specified that indicates the required safe zone sizewhen clamp safe zones are used. See Safe Zone Group (M10 M11) for more detail.

    The general format of this call is:

    N__ M06 T__

    where:

    N__ = Optional block Sequence Number

    M06 = Tool change M code

    T__ = Optional tool number

    Example1 :

    N120 X-3 Y10 M06 T2

  • 8/12/2019 ALhp Software Reference Manual

    33/45

    CNC Programming Manual

    Page 27

    4.3 S AFE ZONE GROUP (M10 M11)

    The function of the Safe Zone control group is to activate or deactivate the individual safezones around the material clamp assemblies. When the zones are active, the materialclamps will be prevented from entering areas under the RAM/STRIPPER and TORCHassemblies, in order to protect the clamps in the event of operator or programmer error.

    Safe zones may be applied to a minimum of one and up to a maximum of four clamps. Thesize of the zone applied is the same for each clamp but is selectable to cater up to threedifferent stripper sizes (small, medium and large). The safe zone dimensions for the threestripper sizes and torch may be edited via the Work Clamp Safe Zone screen (F9/F7/F6).

    In order to activate the safe zones, the appropriate M code MUST be programmed.

    The format for zone activation is:

    N__ CL1=__ CL2=__N__ M10

    where:

    N__ = Optional block sequence numberM10 = Zone activation M codeCL1 = X axis centerline dimension of clamp #1, which is the clamp closest to X=0CL2 = X axis centerline dimension of clamp #2

    The M10 activation code establishes a safe zone of pre-determined size for the ram &stripper around each of the programmed clamp centerlines. The safe zones for the torch areestablished when the torch offset G code (G55) is programmed.

    If a program contains tool changes where the size of the stripper varies, and the clampcenterlines have already been established, to activate new safe zones, it is only necessaryto program a block containing M06 T__, where T__ is a tool number which points to therequired safe zone size in the Tool Data table (F7/F4). If a T word is not programmedanywhere in the program, the tool number defaults to 1. Centerline dimensions, onceprogrammed, are retained until the power to the control is shut off or new values set.The safe zones will be active relative to the RAM /STRIPPER if G54 is programmed andrelative to the TORCH if G55 is programmed.

    The format for zone deactivation is:

    N__ M11

  • 8/12/2019 ALhp Software Reference Manual

    34/45

    CNC Programming Manual

    Page 28

    where:

    N__ = Optional block sequence numberM11 = Zone deactivation M code

    Extreme caution should be exercised when moving axes before an M10 has beenprogrammed and after an M11 has been programmed, since machine damage can occur ifa program has been incorrectly written or insufficient care is taken when manually joggingthe axes.

    When safe zones are active, programmed moves that would terminate inside a safe zoneare inhibited and the cycle is suspended. A message Programmed end point is in clampsafe zone is displayed on the screen.

    If machine motion, either manual or programmed, results in a safe zone violation, afeedhold will be applied and a message Real time clamp interference detected will bedisplayed. If this situation occurs, and the move is a programmed move, the cycle must beaborted by pressing the CLEAR button. If the machine has come to rest within a safe zonethen the ZONE INHIBIT pushbutton can be depressed to deactivate the safe zones andmanually jog the machine clear. Once the ZONE INHIBIT is removed again, the safe zonewill be re-activated again. It is recommended that the ZONE INHIBIT always be removedbefore execution of a program.

    If programmed machine motion that is linear causes a safe zone violation then you mustedit the program to either use a different motion type or a different path. If the programmedmachine motion is rapid (G00) then Zone Avoidance can be set active (via screen F9/F7) toautomatically take rapid moves around safe zones. It should be noted that Zone Avoidancedoes not work with canned cycles (G61->G67), although the safe zones are still in effect.

    Example Program :

    N10 CL1=15, CL2=40N15 M10 (establishes safe zone defined by T1 (default) around X15 and X40)N20 G00 G90 G40 X-3 Y10 M87 (load material)N25 -> N65 (program blocks containing punch cycles)N70 G55 (shifts zone to provide protection from torch head)N75 X20 (move to position over pilot hole)N80 M17 (torch on)N85 -> N100 (program blocks containing torch cycles)N105 M18 (torch off)N110 G54 (shifts zone back to provide protection from the punch/stripper)N115 M06 T4 (tool change establishes zone defined by T4 around X15 and X40)N120 N140 (more punching using different size punch)N145 M30

  • 8/12/2019 ALhp Software Reference Manual

    35/45

    CNC Programming Manual

    Page 29

    4.4 T ORCH CONTROL GROUP (M17 M18)

    This group of M codes is used to either ignite or extinguish the plasma arc torch.

    4.4.1 T ORCH I GNITE - M17

    This is a pre-motion M code that will lower the torch, turn on the filter system and signal fortorch ignite. When the torch pack signals that the arc has been established, the counter-balance is energized and programmed motion is allowed.

    4.4.2 T ORCH E XTINGUISH - M18

    This is a post-motion M code such that after all programmed motion in the block hascompleted, the torch ignite and counter-balance signals are turned off and the torch is

    raised. After a configurable time delay the next NC program block is executed. The filterthen continues to run for a configurable time before the shaker is also energized.

    A typical torch program takes the form of:

    N001 G90 G40 G00 X-3 Y6 M87N002 G54 M42 D01N003 X19 Y15.5 M75N004 G55N005 G00 G42 X19 M85N006 G01 F150

    N007 G03 G41 X1 Y0 I.5 M17N008 G02 X0 Y0 I2 J0N009 G01 X-.5 Y-.5N010 M18N011 G54 G40N012 G00 X-3 Y6.5N013 M30

    Notes:

    1. Ram (punch) cycles are inhibited when M17 is active.

    2. Torch related user configurable time delays accessed via screen F9/F7/F5.

  • 8/12/2019 ALhp Software Reference Manual

    36/45

    CNC Programming Manual

    Page 30

    4.5 R AM CONTROL GROUP (M41 M42 M54 M55 M56)

    This group of M Codes controls how the CNC determines the top and bottom limits of thestroke of the hydraulic punching ram.

    4.5.1 R AM U P LIMIT

    Two machine mounted limit switches are used standard Ram Up limit switch and ToolChange Position limit switch. The standard Ram Up limit switch is used to detect when theram has retracted a fixed minimum distance from the bottom of the stroke and is used forthe majority of materials.

    The Tool Change Position is used for thick materials or when an application requires thatthe ram retract fully to the Tool Change Position before switching off.

    An intermediate position for Ram Up is available. The standard Ram Up limit switch is usedto detect when the ram has retracted a known distance. The ram can then continue to raiseand be stopped after a preset time delay. This allows the ram to retract to a positionbetween the standard Ram Up switch and the Tool Change position limit switch. The presettime is established in the Machine Delays screen (F9/F7/F5).

    Three modal and self-canceling M codes are used to determine the ram up position:

    M54 Selects the Timed Up position.M55 Selects Standard Ram Up (Default)M56 Selects Tool Change Position

    4.5.2 R AM D OWN LIMIT

    Two machine-mounted sensors are used to determine when the ram has reached thebottom of its stroke and needs to be reversed. One is a limit switch, which is adjusted todetect when the punch has penetrated the material and entered the die assembly. Thesecond is an adjustable pressure sensor, which detects a pressure build up in the hydraulicsystem when the tool contacts the material. This switch is normally used for louvering ormarking operations.

    Two modal and self-canceling M codes are used to determine the Ram Down position:

    M41 Selects the pressure switch.M42 Selects the limit switch. (Default)

  • 8/12/2019 ALhp Software Reference Manual

    37/45

    CNC Programming Manual

    Page 31

    4.6 R EPOSITION GROUP (M51 M71)

    These cycles call for the repositioning or relocating of the workclamps on the material. Thefunction is used when working on material longer than the working range of the X axisand/or when work must take place within the safe zone area around the work clamps. Thereposition cycle has three phases.

    1. Pre-Motion: The overhead material reposition clamps are lowered, clamping the materialto the table. After a configurable time delay the workclamps are opened.

    2. Motion: The X axis is moved to the commanded re-grip position.

    3. Post-Motion: The workclamps are closed and the reposition clamps are raised.

    Two reposition functions exist. Physically the same results occur, however one keeps the Xaxis position relative to the machine coordinate system and one will preset the X axisposition so that the position stays relative to the work piece coordinate system. Eachfunction is detailed below.

    4.6.1 A UTOMATIC I NCREMENTAL R EPOSITION M51

    If the CNC part program contains position data that is relative to a fixed coordinate systemon the work piece then reposition cycles should use the M51 function. Following thereposition cycle the X axis position register is preset so that it contains the same value as atthe start of the reposition.

    The general format of this call is:

    N__ M51 X__

    where:

    N__ = Block Sequence Number

    M51 = Automatic incremental reposition M code

    X__ = Desired incremental reposition distance for the X axis

    Example :

    Program X Axis Pos Registerat end of block X Axis Machine PosX Axis Programming

    Limits

  • 8/12/2019 ALhp Software Reference Manual

    38/45

    CNC Programming Manual

    Page 32

    N10 G90 X50 Y20N20 M51 X-40N30 X80 M75

    50.00050.00080.000

    50.00010.00040.000

    -3.000 60.00037.000 100.00037.000 100.000

    where:

    Block 10: Positions the machine to a safe area of the machine envelope where thework clamps will not hit the reposition clamps during the reposition cycle.

    Block 20: Commands the X axis to reposition an incremental distance of -40 inches,resulting in a re-grip of the part at machine position X=10. The X axis position registerremains unchanged at X=50.

    Block 30: Positions the material so that a punch occurs at X=80 with respect to thework piece coordinate system.

    4.6.2 S TANDARD R EPOSITION W ORKCLAMPS M71

    If the CNC part program contains position data that is relative to the machine coordinatesystem then reposition cycles should use the M71 function. Following the reposition cyclethe X axis position register remains coincident with the machine position register.

    The general format of this call is:

    N__ M71 X/U__

    where:

    N__ = Block Sequence Number

    M71 = Reposition M code

    X/U__ = Desired X dimension for re-grip where X specifies an absolute position andU specifies an incremental position.

    Example1 :

    Program X Axis Pos Registerat end of block X Axis Machine PosX Axis Programming

    Limits

    N10 G90 X30 Y20N20 M71 X20

    30.00020.000

    30.00020.000

    -3.000 60.000-3.000 60.000

  • 8/12/2019 ALhp Software Reference Manual

    39/45

    CNC Programming Manual

    Page 33

    where:

    Block 10: Positions the machine into a safe area of the machine envelope where thework clamps will not hit the reposition clamps during the cycle.

    Block 20: Commands the X axis to reposition to the absolute position of X=20 beforere-gripping the part. Note, in this example N20 M71 U-10 would give the same result.

    Example2 :

    Program X Axis Pos Registerat end of block X Axis Machine PosX Axis Programming

    Limits

    N10 G90 X30 Y20N20 M71 U20

    30.00050.000

    30.00050.000

    -3.000 60.000-3.000 60.000

    where:

    Block 10: Same as Example1.

    Block 20: Commands the X axis to reposition an incremental distance of +20 inches,resulting in a re-grip of the part at X=50.

    Notes :

    1. The M51 or M71 cycle will not cause a punch cycle.2. It is the programmers responsibility to:

    a. Insure that the machine is pre-positioned such that the reposition cycle will notcause any machine damage.

    b. Consider the effects of the reposition cycle on the work coordinates beingused.

    3. No Y axis motion can be programmed in a block containing an M71.

  • 8/12/2019 ALhp Software Reference Manual

    40/45

    CNC Programming Manual

    Page 34

    4.7 P UNCH CONTROL GROUP (M75 M85 M20)

    This group of M codes determines whether a punch cycle occurs at the end of anyprogrammed traverse motion block. They include:

    M75 - Punch EnableM85 - Punch DisableM20 Single Block No Punch

    The M75/M85 codes are modal and self-canceling. Once programmed, an M75 will allow apunch cycle to occur at the end of every NC programmed traverse motion block (unless anM20 code was present). An M85 will disable ALL punching until an M75 occurs.

    When an M75 is active, the punch cycle can be inhibited for a single block (such as areposition safe zone move or torch pilot hole position), by programming a single blockeffective M20 code.

  • 8/12/2019 ALhp Software Reference Manual

    41/45

    CNC Programming Manual

    Page 35

    4.8 M ATERIAL CONTROL GROUP (M87 M97)

    4.8.1 L OAD P OSITION (M87)

    This code will allow the axes to move to the programmed position (normally X-3 Y__), lowercycle start, and turn on the PART CHANGE lamp on the machine hood panel. The ram israised to the tool change position and the punch cycle is inhibited.

    The M87 is canceled by pressing the CYCLE START pushbutton.

    4.8.2 M ATERIAL C LAMP R ELEASE (M97)

    This code will allow the axes to move to the programmed position, lower cycle start andopen the material work clamps. The ram is raised to the tool change position and the punchcycle is inhibited.

    The M97 is canceled by pressing the CYCLE START pushbutton.

  • 8/12/2019 ALhp Software Reference Manual

    42/45

  • 8/12/2019 ALhp Software Reference Manual

    43/45

  • 8/12/2019 ALhp Software Reference Manual

    44/45

    CNC Programming Manual

    Page 38

    Main program:N20 X30 Y20N30 M98 O321 L2 (call external subprogram O321 and execute twice)N40 M98 O"SUB1" (call external subprogram OSUB1 and execute once)N50 M30

    Subprogram O321:N220 G91N230 X-15 Y-15N240 X-15 Y-15N250 X15 Y15N260 G90N270 M99

    Subprogram OSUB1:N320 G91N330 X-15 Y-15N340 X15 Y15N350 G90N360 M99

    Notes:

    1. When a subprogram is executed control is returned to the main program at theblock following the M98 subprogram call.

    2. External subprograms must exist in the same program folder directory as themain program and always start with an O.

    3. External subprograms should not contain M02 or M30, only the M99 return call.4. An external subprogram cannot contain any internal subprograms, however it can

    call internal subprograms defined in the main program.5. Changes to modal data within a subprogram remains in effect when control

    returns to the main program.6. External subprograms can be nested so that one subprogram can call another.

  • 8/12/2019 ALhp Software Reference Manual

    45/45

    CNC Programming Manual

    4.10 GOTO BLOCK

    The GOTO command has the format:

    N__GOTONxx

    Where:

    N__ = the program block numberxx = the desired block number to transfer control to

    Example Program:

    N001.....N002.....N003.N004.....N005.....N006GOTON002N007.....

    In this example execution continues sequentially until block N006 is read, then executiontransfers back to block N002 and resumes sequential execution of blocks.