Table of Contents

Advertisement

Mill Operator's Manual
J U N E 2 0 0 7
HAAS AUTOMATION INC. •
2800 STURGIS ROAD • OXNARD, CA 93030
TEL. 888-817-4227 FAX. 805-278-8561
www.HaasCNC.com
9 6 - 8 0 0 0 r e v R

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the Mill and is the answer not in the manual?

Questions and answers

Summary of Contents for Haas Mill

  • Page 1 Mill Operator’s Manual J U N E 2 0 0 7 HAAS AUTOMATION INC. • 2800 STURGIS ROAD • OXNARD, CA 93030 TEL. 888-817-4227 FAX. 805-278-8561 www.HaasCNC.com 9 6 - 8 0 0 0 r e v R...
  • Page 2 Warranty service or repair service is available from the authorized Haas distributor. Without limiting the generality of any of the exclusions or limitations described in other paragraphs, manufacturer's warranty does not include any warranty that the machine or components will meet buyer's production specifications or other requirements or that operation of the machine and components will be uninterrupted or error-free.
  • Page 3: Warranty Registration

    Certificate LIMITED WARRANTY COVERAGE All new Haas mills are warranted exclusively by the Haas Automation’s ("Manufacturer") limited warranty as follows: Each Haas CNC machine ("Machine") and its components ("Components") (except those listed below under limits and exclusions) is warranted against defects in material and workmanship for a period of one (1) year (except Tooroom Mills and Mini-Mills, which are six (6) months) from the date of purchase, which is the date that a machine is installed at the end user.
  • Page 4 You will receive a number from the Haas Factory Outlet that you will write in over the serial number on the setting page (#26). If, for any reason, the serial number of the machine is erased in memory, the machine will revert back to a 200 hour limit for your protection.
  • Page 5 Customer-Distributor-Manufacturer relationship will help ensure continued success for all concerned. Customer Feedback If you have any concerns or questions in regards to the Haas Operator’s manual, please contact us via our E-mail, pubs@haascnc.com. We look forward to any suggestions you may have. Certification...
  • Page 6: Table Of Contents

    The Information contained in this manual is constantly being updated. The latest updates, and other helpful information is available online as a free download in .pdf format (go to www.HaasCNC.com and click on “Manual Updates” under the “Customer Services” drop-down menu in the navigation bar).
  • Page 7 SETTINGS ................................175 MAINTENANCE ..............................193 INDEX ................................... 207 This manual and all of its contents are copyright protected 2007, and may not be reproduced without written permission from Haas Automation, Inc. Table Of Contents 96-8000 rev R June 2007...
  • Page 8 Contents USES AND GUIDELINES FOR PROPER MACHINE OPERATION ................4 MODIFICATIONS TO THE MACHINE ........................4 SAFETY PLACARDS ............................... 4 MILL WARNING DECALS ............................6 DECLARATION OF WARNINGS, CAUTIONS, AND NOTES ..................6 LATHE WARNING DECALS ............................. 7 Safety...
  • Page 9 ♦ Do not operate the machine unless the doors are closed and the door interlocks are functioning properly. Rotating cutting tools can cause severe injury. When a program is running, the mill table and spindle head can move rapidly at any time in any direction.
  • Page 10 BSERVE ALL OF THE WARNINGS AND CAUTIONS BELOW ♦ ♦ ♦ ♦ ♦ Avoid entering the machine enclosure. ♦ ♦ ♦ ♦ ♦ Do not operate without proper training. ♦ ♦ ♦ ♦ ♦ Always wear safety goggles. ♦ ♦ ♦ ♦ ♦ Never place your hand on the tool in the spindle and press ATC FWD, ATC REV, NEXT TOOL, or cause a tool change cycle.
  • Page 11: Safety

    To help ensure that CNC tool dangers are quickly communicated and understood, hazard symbol decals are placed on Haas Machines in locations where hazards exist. If decals become damaged or worn, or if additional decals are needed to emphasize a particular safety point, contact your dealer or the Haas factory. Never allow anyone to alter or remove any safety decal or symbol.
  • Page 12 Safety 96-8000 rev R June 2007...
  • Page 13: Mill Warning Decals

    ARNING ECALS ECLARATION OF ARNINGS AUTIONS OTES Throughout this manual, important and critical information is prefaced with the word “Warning”, “Caution” and “Note” Warnings are used when there is an extreme danger to the operator and/or to the machine. Take all steps neces- sary to heed the warning given.
  • Page 14: Lathe Warning Decals

    ATHE ARNING ECALS Safety 96-8000 rev R June 2007...
  • Page 15 Safety 96-8000 rev R June 2007...
  • Page 16: Operation

    OPERATION The following is a visual introduction to a HAAS mill. Some of the features shown will be highlighted in their appropriate sections. Floppy Disk Drive USB Memory Device MEMORY Run/Setup Mode Key SETUP LOCK MODE MODE Key Memory Lock...
  • Page 17 Introduction 96-8000 rev R June 2007...
  • Page 18: Endant Eyboard Ntroduction

    ENDANT EYBOARD NTRODUCTION The keyboard is broken up into eight sections: Function Keys, Jog Keys, Override Keys, Display Keys, Cursor Keys, Alpha Keys, Mode Keys and Number Keys. In addition there are miscellaneous keys and features located on the pendant and keyboard which are described briefly. DISPLAY POWER RESET...
  • Page 19: Function Keys

    Memory Lock Key Switch - This switch prevent the operator from editing programs and from altering settings when turned to the locked position. The following describes the hierarchy of locks: Key switch locks Settings and all programs. Setting 7 locks parameters. Setting 8 locks all programs.
  • Page 20: Override Keys

    VERRIDE These keys give the user the ability to override the speed of non-cutting (rapid) axes motion, programmed feeds and spindle speeds. -10 - Decreases current feedrate by 10%. 100% - Sets overridden feedrate to programmed feedrate. +10 - Increases current feedrate by 10%. -10 - Decreases current spindle speed by 10%.
  • Page 21: Display Keys

    A second press of the Param / Dgnos key will display the first page of diagnostic data. This information is mainly used for troubleshooting by a certified Haas service technician. The first page of diagnostic data is discrete inputs and outputs. Pressing Page Down will display the additional pages of diagnostic data.
  • Page 22: Cursor Keys

    Pressing the Setng / Graph key a second time enables Graphics mode. In Graphics mode the user can view the generated tool path of the program and, if necessary, debug the program before running it (See Graphics Mode in the Operation section) Help / Calc (Help / Calculator) - Displays an abbreviated manual.
  • Page 23: Mode Keys

    Mode keys change the operational state of the CNC machine tool. Once a mode button is pressed, the buttons in the same row are made available to the user. The current mode is always displayed on the top line just to the right of the current display in between parenthesis.
  • Page 24: Numeric Keys

    .0001/.1, .001/1., .01/10., .1/100. - The first number (top number), when in inch mode, selects that amount to be jogged for each click of the jog handle. When the mill is in MM mode the first number is multiplied by ten when jogging the axis (e.g.
  • Page 25: Offsets Display

    F2 will set the negative of the entered value into the offsets. Entering a value and pressing Write/Enter will add the value to what is currently entered. To clear all the values on the page press Origin, the mill will prompt the operator with "Zero All (Y/N) press Y to zero all or press N to leave all the values unchanged.
  • Page 26: Alarms / Messages Display

    Operation Timers Display This display shows the current power-on time, cycle start time (the amount of total time the machine has been running a program), and the feed time (total amount of time the machine has been feeding). These times may be reset to zero by using the cursor up and down keys to highlight the desired title and pressing the ORIGIN button.
  • Page 27: Setting / Graphic Display Function

    The Settings are selected by pressing the Setng/Graph button. There are some special functions in the settings which change the way the mill behaves; refer to the “Settings” section for a more detailed description. The Graphics function is selected by pressing the Setng/Graph button twice. Graphics is a visual dry run of your part program without the need to move the axes and risk tool or part damage from programming errors.
  • Page 28: Date And Time

    CREEN AVER The Haas machine includes a screen saver for the operator’s pendant. After a period of time, with no keyboard activity the screen saver will start. When the screen saver is active, the words “Screen saver” will be displayed and will change positions every 2 seconds.
  • Page 29 HELP (MEM) O00000 N00000000 CALCULATOR 0.000000000 LOAD LOAD + - * / + - * / ANGLE 3 ANGLE 3 (MACHINE (MACHINE ANGLE 1 ANGLE 1 40.000 40.000 0.0000 in 0.0000 in ANGLE 2 ANGLE 2 72.000 72.000 0.0000 in 0.0000 in ANGLE 3 ANGLE 3...
  • Page 30 CIRCLE-CIRCLE TANGENT CIRCLE1 X 5.0000 CIRCLE-LINE TANGENT CIRCLE1 Y 6.0000 RADIUS 1 4.0000 POINT A X 5.0000 CIRCLE2 X 0.0000 3.0000 CIRCLE2 Y 0.0000 POINT B 1.0000 RADIUS 2 2.0000 4.0000 TANGT A X 1.3738 POINT C X 0.0000 7.6885 0.0000 TANGT B X 7.3147...
  • Page 31: Spindle Warm -U P Program

    Feed Hold was pressed, then return the Z-axis. Caution: The control will not follow the path used to jog away. If Feed Hold is pressed during this motion, the mill axes motion will pause and display the message "Jog Return Hold".
  • Page 32: Coolant Level Gauge

    Hard Disk Drive, USB and Ethernet Store and transfer data between your Haas machine(s) and a network. Program files are easily transferred to and from memory, and allows DNC of large files at up to 800 blocks per second.
  • Page 33 Remote jog Handle The versatile Haas Remote Jog Handle can be used to move all axes, as well as edit programs, override spindle speeds and feedrates, single-block scroll through programs — and much more. Programmable Coolant Spigot The optional programmable coolant spigot allows the user to direct the coolant stream to the most optimum location in order to flush out chips from the cutting area.
  • Page 34 Remote Jog Handle The versatile Haas Remote Jog Handle can be used to move all axes, as well as edit programs, override spindle speeds and feedrates, single-block scroll through programs etc. Enhanced Remote Jog Handle (RJH-E) The Enhanced Remote Jog Handle (RJH-E) features a liquid crystal display (LCD) and controls for increased functionality.
  • Page 35: Rjh-E Screens

    Note: If any of the above errors fail to clear when the axis selection knob is moved, there may be a problem with the shuttle jog knob. Contact Haas service for repair/replacement. If contact between the RJH-E and the control is broken for any reason (cable cut or disconnected, etc.), all axis motion stops.
  • Page 36 Manual Jogging .0001 - .001 - .01 - .1 2.3584 3.6973 5.2752 ZERO WORK MACH TO GO TOOL Tool Offsets – This screen is used to set and check tool offsets. Select fields with the up and down arrow keys and change values using the pulse knob.
  • Page 37 High Speed Machining is most often required for the machining of smoothly sculpted shapes as is typical of mold making. The Haas High Speed Machining option increases the amount of lookahead to 80 blocks and allows full speed (500 inches per minute) blending of feed strokes.
  • Page 38: Programming

    The machine will go through a self test and then display either the Messages screen, if a message was left, or the Alarms screen. In either case the mill will have one alarm present (102 SERVOS OFF). Pressing the Reset button a couple times will clear the alarms.
  • Page 39 Numbered Programs To create a new program, press LIST PROG to enter the program display and the list of programs mode. Enter a program number (Onnnnn) and press Select Prog key or Enter. If the program exists, it will be selected. If it does not yet exist, it will be created.
  • Page 40 The USB memory device is plugged into the port and the directory is shown in the Program menu of the control. The Haas control incorporates a device manager which shows the available memory devices on the machine. Enter the Device Manager, by pressing “List Prog”. The screen has two windows; the Device window, on the left, and the Directory window, on the right.
  • Page 41 The following example shows the directory for the USB Device. The selected program in memory is shown with a “*”. The selected file will also show in the “Source” field. Note: Before removing USB devices, go to the LIST/PROG display and press the Origin button. Wait for the remove message to disappear, then carefully remove the device.
  • Page 42 “Home” button to return to the device manager. RS-232 RS-232 is one way of connecting the Haas CNC control to another computer. This feature enables the programmer to upload and download programs, settings and tool offsets from a PC.
  • Page 43 14 Synchronization Xon/Xoff There are a number of different programs that can link with the Haas control. An example is the Hyper Terminal program that is installed with most Microsoft Windows applications. To change the settings on this program go to the “File”...
  • Page 44 Disk Directory To get a program directory listing, select the PRGM/LIST PROG mode, and press F4. This will generate a disk directory listing that will be saved in a program (the default program is O08999). Press Edit to view the contents of the disk.
  • Page 45: Alphabetical Address Codes

    Floppy Disk DNC Floppy disk DNC is selected by entering the floppy disk file name and pressing MDI a second time when (must be in MDI mode). Note: Pressing MDI a third time will stop the DNC and the message “DISK ABORT” will be received. DNC Notes: While a program is running in DNC, you cannot change modes.
  • Page 46: Tooling

    The following chart describes the pull studs used on the Hass mill. Do not use the short shaft or pull studs with a sharp right angle (90-degree) head; they will not work and will cause serious damage to the spindle.
  • Page 47: Tool Changer

    Install a tool into the tool holder as instructed by the tool manufacture. HANGER There are two types of tool changers available for the Haas mills; these are the side mount tool changer and the umbrella style. Both types are commanded in the same manner, but each one is set up differently.
  • Page 48 NOTE: A normal size tool has a diameter of less than 3" for 40-taper machines, or less than 4" for 50-taper ma- chines. Tools larger than these measurements are considered large size. 1. Ensure the tools loaded have the correct pull stud type for the mill. 2. Enter Handle Jog mode.
  • Page 49 The pocket up/down speed is not slowed down. The control restores the speed to the current rapid, once the tool change is complete. If problems are encountered changing unusual or extreme tooling, contact the Haas Service Department for assistance.
  • Page 50 Tool Loading Flowchart Loading the (from Power On) Side Mount Tool Changer Press POWER UP/RESTART Wait for Zero Return A “Large Tool” has a diameter greater than 3" for 40-taper mills, or greater than 4" for Enter Handle Jog Mode 50-taper mills.
  • Page 51 Using 0 for a Tool Designation A 0 (number zero) can be inserted in the tool table in place of a tool number. If this is done the tool changer does not “see” this pocket and will never try to install or retrieve a tool from pockets with a “0” designation. Enter 0 to zero all pockets, enter 1 to sequence the pockets, and enter a 3 to clear all H,h,L,l enteries.
  • Page 52 Tool Loading Tools are loaded into the umbrella tool changer by first loading the tool into the spindle. To load a tool into the spindle, prepare the tool and then follow these steps: 1. Ensure the tools loaded have the correct pull stud type for your mill. 2. Enter Handle Jog mode.
  • Page 53 Side Mount Tool Changer Recovery Flow Chart Press Recover Button Alarms exist, they must be cleared. Alarms Press ‘Y’ to continue, then ‘Reset’ exist? to clear alarms, then retry. Tool in Arm at arm or spindle origin? (Y/N)? At origin, continue Will arm to Pkt Restore (Y)? prevent tool in...
  • Page 54 Hydraulic Tool Changer Tool Pocket Setup The Tool pocket table is accessed by pressing the Offset key and then press Page Up/Down, until the page titled "Pockets with Tool Numbers" is displayed. Enter the values for each tool used. This table must be properly setup by the operator to avoid the possibility of damaging tools, the spindle or the tool changer.
  • Page 55: Jog Mode

    In order for the mill to accurately machine a work piece, the mill needs to know where the part is located on the table. Jog the mill with a pointer tool in the spindle, until it reaches the top left corner of the part (see the following illustration) this position is part zero.
  • Page 56: Rev R June

    2. Load a pointer tool in the spindle . 3. Press Handle Jog (A). 4. Press .1/100. (B) (The mill will move at a fast speed when the handle is turned). 5. Press +Z (C). 6. Handle jog (D) the Z-axis approximately. 1" above the part.
  • Page 57 7. Press .0001/.1 (F) (The mill will move at a slow rate when the handle is turned). 8. Place a sheet of paper between the tool and the work piece. Carefully move the tool down to the top of the part, as close as possible, and still be able to move the paper.
  • Page 58 G-code program. ATM will track the usage of individual tools in each tool group and compare it to user defined limits. Once a limit (e.g. number of times used, or tool load) has been reached the mill will automati- cally choose one of the other tools in the group the next time that tool is needed.
  • Page 59 Allowed Limits The Allowed Limits window contains the user defined limits to determine when a tool is worn out. These variables affect every tool in the group. Leaving any variable set to zero causes them to be ignored. FEED TIME – Enter the total amount of time, in minutes, a tool is used in a feed. TOTAL TIME –...
  • Page 60 Example: T1000 M06 (tool group 1000) G00 G90 G55 X0.565 Y-1.875 S2500 M03 G43 H1000 Z0.1 (H-code 1000 same as group ID number) G83 Z-0.62 F15. R0.1 Q0.175 X1.115 Y-2.75 X3.365 Y-2.875 G00 G80 Z1.0 T1000 M06 (this will check if the tool in that group is still good to use) G00 G90 G56 X0.565 Y-1.875 S2500 M03 G43 H00 Z0.1 (H00 cancels H Code) G83 Z-0.62 F15.
  • Page 61 PROGRAMABLE COOLANT PROGRAMABLE COOLANT DO NOT ADJUST NOZZLE DO NOT ADJUST NOZZLE BY HAND BY HAND Home Warning Do not rotate the coolant spigot by hand. Serious motor damage will occur. Minimum Oil Machining (MOM) Minimum Oil Machining (MOM) is an automated process, which can operate in two modes: lubricating a tool during a canned cycle operation (Canned Mode), or as an alternative to flood coolant (MOM Mode).
  • Page 62 Selecting any other display or pressing F4 will exit from Back- ground Edit. While a program is running, press the List Prog button to display a list of programs in the mill.
  • Page 63: Pallet Changer (Ec-Series And Mdc-500)

    (EC-S MDC-500) ALLET HANGER ERIES AND Introduction The pallet changer is commanded through a program in CNC memory. The M50 (execute pallet change) function consists of unlocking, lifting and rotating the pallets, then lowering and locking the pallets again. The pallet changer rotates the pallets 180 , then back;...
  • Page 64 If a parts program encounters an M50 (without a P code) and the Part Ready button has not been pressed, the control will pause operation, the beacon will blink green, and the message “None Scheduled” is displayed. The mill will wait until the Part Ready button has been pressed, or the PST has been updated, before performing the pallet change.
  • Page 65 Method 2 Although the previous method is recommended, the pallet changer can also be operated without automatic se- quencing or PST inputs. This is done using M50 with a P code. For proper operation M50 must be preceded by M36. M36 P1 before the M50 P1 will check that pallet #1 is ready. Pallets can be changed without automatic sequencing or PST inputs.
  • Page 66 Description: The first loop through program O00001 will load pallet #2 (M50) and run program O06012 (G188 selects program from PST for pallet #2). The PST will then resemble Sample Table 2. The asterisk for pallet #2 in the “Load Order” column indicates that this pallet is in the mill. 96-8000 rev R June 2007...
  • Page 67 Pallet Schedule Sample Table 2 Pallet Load Pallet Pallet Program Program Number Order Status Usage Number Comment COMPLETED O04990 (Rough and Finish Tog) LOADED O06012 (Cut Slot) Description: In the next loop through program O00001, the M50 will detect that no pallets are scheduled. The beacon light will flash green and program O00001 will pause until the operator schedules a pallet or presses Reset.
  • Page 68 Pallet Replacement (EC-400) The pallets can only be loaded into the mill through the load station. Note the orientation of the pallet; the pallet can only be loaded one way. A cut-out is machined into the pallet to insure the proper orientation of the pallet.
  • Page 69: Tips And Tricks

    IPS AND RICKS General Tips Cursor Searching for a Program. When in EDIT or MEM mode, you can select and display another program quickly by entering the program number (Onnnnn) and pressing the Up/Down arrow, or F4. Searching for a Program Command. Searching for a specific command in a program can be done in either MEM or EDIT mode.
  • Page 70 Calculator Transferring Simple Calculations. The number in the simple calculator box (in the upper left corner) can be transferred to any cursor-selected data line by moving the cursor to the line and pressing F3. Transferring to EDIT or MDI. Pressing F3 will transfer the number in the calculator box (when the cursor is on the number in the box) to either the EDIT or MD mode.
  • Page 71 Sending Multiple Programs Using Program Numbers. The Send Floppy under the I/O menu of the Advanced Editor allows programs to be saved to floppy disk. It will prompt, “Enter Floppy File Name”; enter a file name and press Write/Enter. If a file name is not entered, the control will save each program using the five-digit program number as the file name.
  • Page 72: Intuitive Programming System (Ips)

    When all the data has been entered, pressing “Cycle Start” will begin the machining process. MANUAL SETUP FACE DRILL POCKET MILLING POCKET MILLING ENGRAVING SYSTEM END MILL TOOL END MILL TOOL WRK ZERO OFST WRK ZERO OFST R PLANE R PLANE 1.5000 X DIMENSION X DIMENSION...
  • Page 73 Set up the machining process, enter the values and press “Cycle Start”. The mill will run the program and cut the first feature. Once finished, repeat the previous steps for the remaining part features. Note: Once Cycle Start is pushed, the operation is recorded, even if the operation is not completed.
  • Page 74 Cycle Start button will start the recorded machining process. The Player will start on the highlighted line in the queue. Warning: The mill will start, once Cycle Start is pressed. The consecutive operations will execute, if desired, but Cycle Start must be pressed for each operation to continue. Warning: The operator must change tools, if required, prior to pressing Cycle Start for the next operation.
  • Page 75: Subroutines

    SUBROUTINES Subroutines (subprograms) are usually a series of commands that are repeated several times in a program. Instead of repeating the commands many times in the main program, subroutines are written in a separate program. The main program then has a single command that “calls” the subroutine program. A subroutine is called using M97 or M98 and a P address.
  • Page 76: S C C E

    UBROUTINE ANNED YCLE XAMPLE Sub Program O1234 (Canned Cycle Example Program) O1000 (X,Y Locations) T1 M06 X 1.115 Y-2.750 G90 G54 G00 X.565 Y-1.875 S1275 M03 X 3.365 Y-2.875 G43 H01 Z.1 M08 X 4.188 Y-3.313 G82 Z-.175 P.03 R.1 F10. X 5.0 Y-4.0 M98 P1000 G80 G00 Z1.0 M09...
  • Page 77: Advanced Editor

    ADVANCED EDITOR The HAAS Advanced Editor gives the user the ability to edit programs using pull-down menus. Pressing the EDIT button enters the Advanced Editor. The user can switch between the Advanced Editor, the standard editor, and Quick Code with multiple presses of the PRGRM/CONVRS button.
  • Page 78: The Edit Menu

    Undo The last edit operation will be undone, up to the last 9 editing operations. Select Text This menu item will select lines of program code to set the start point of the text selection. Then use the arrow buttons or the jog handle to scroll to the last line of code to select and Press F2 or Write/Enter button. The se- lected text will be highlighted.
  • Page 79: The I/O Menu

    Renumber By Tool Searches for T (tool) codes, highlights all the program code up to the next T code and renumbers the N code (line numbers) in the program code. Reverse + & - Signs This menu item will reverse the signs of the numeric values. Press the enter key to start the process and then enter the axes (e.g.
  • Page 80: Advanced Editor Shortcuts

    DVANCED DITOR HORTCUTS Pressing these buttons, when in the Advanced Editor display, will quickly get you to these menu items without having to press the F1 button and cursoring to that selection. Hot Keys Description Will quickly bring up the program list on the inactive side of edit display to select SELECT program from list.
  • Page 81: Quick Code

    QUICK CODE Quick Code simplifies writing a program by explaining G code commands in plain English commands. On the right side of the screen you have English commands that describe the operation to perform. By selecting the operation from the Group Window feature and with one button push, the code is inserted in your program on the left side of the screen.
  • Page 82 Create A Program Quick Code will not generate the new program number for you. To create a program, press List Prog, enter a program number (e.g. O00005) and press Write/Enter. Or select a program to edit. In order to edit the program press the Edit button and then press the Prgrm/Convrs key twice to enter Quick Code (Note that in the advanced edit menus under the HELP menu is a sub menu selection for Quick Code.
  • Page 83 Call Tool 1 1. While on the “Start Up Commands” menu, turn the jog handle CCW to highlight the group item titled “Call Tool. 2. Press the Write button to have the control ask you for a tool number for your program, and the control will be flashing with a 1 in the lower left corner as the default value.
  • Page 84 “6. Drill/Tap/Bore Locations”. Note: Manually enter an L0 on the end of the G82 command line to stop the mill from drilling a hole at the center of the bolt hole circle. This will ignore the G82 canned cycle until the next location.
  • Page 85 More X and Y tap cycle locations can be added, if needed, by selecting “6. Drill/Tap/Bore Locations. Note: Manually enter an L0 at the end of the G84 command line so the mill will not tap a hole at X0 Y0. This will ignore the G84 canned cycle until the next location.
  • Page 86: Visual Quick Code

    ISUAL UICK To start Visual Quick Code (VQC), enter Edit mode then press the PRGRM/CONVRS key three times. Another way is to enter VQC is to use the pull down menus in the Advanced Editor under HELP. Selecting a Category Use the arrow keys to select the parts category whose description closely matches the desired part and press Write.
  • Page 87: Cutter Compensation

    CUTTER COMPENSATION Cutter compensation shifts the programmed tool path so that the centerline of the tool is moved to the left or right of the programmed path. The OFFSET (Length and Radius) page is used to enter the amount that the tool is shifted.
  • Page 88: Entry And Exit From Cutter Compensation

    NTRY AND XIT FROM UTTER OMPENSATION Cutting should not be performed when entering and exiting cutter compensation or when changing from left side to right side compensation. When cutter compensation is turned on, the starting position of the move is the same as the programmed position, but the ending position will be offset, to either the left or right of the programmed path, by the amount entered in the, radius/diameter offset column.
  • Page 89 O6100 Note: Tool is a .250” diameter Note: Tool is a .250” diameter T1 M06 R .3437 R .3437 end mill. end mill. G00 G90 G54 X-1. Y-1. S5000 M03 R .500 R .500 G43 H01 Z.1 M08 R .375 R .375...
  • Page 90: Macros

    MACROS NTRODUCTION This control feature is optional; call your dealer for information. Macros add capabilities and flexibly to the control that are not possible with standard G-code. Some possible uses are, families of parts, custom canned cycles, complex motions, and driving optional devices. The possibilities are almost endless.
  • Page 91: Operation Notes

    Useful G and M Codes M00, M01, M30 - Stop Program G04 - Dwell G65 Pxx - Macro subprogram call. Allows passing of variables. M96 Pxx Qxx - Conditional Local Branch when Discrete Input Signal is 0 M97 Pxx - Local Sub Routine Call M98 Pxx - Sub Program Call M99 - Sub Program Return or Loop G103 - Block Lookahead Limit.
  • Page 92 Entering the macro variable number and pressing the up/down arrow will search for that variable. The variables displayed represent the values of the variables during the running of the program. At times, this may be up to 15 blocks ahead of the actual machine actions. Debugging the programs are easier when inserting a G103 at the beginning of a program to limit block buffering and then removing the G103 after debugging is completed.
  • Page 93 Example 3: G65 P2000 I1 J2 K3 I4 J5 K6; The following letters cannot be used to pass parameters to a macro subroutine: G, L, N, O or P. Macro Variables There are three categories of macro variables: system variables, global variables, and local variables. Macro Constants are floating point values placed in a macro expression.
  • Page 94 Raw analog to digital inputs (read only) #1090-#1098 Filtered analog to digital inputs (read only) #1094 Coolant Level #1098 Spindle load with Haas vector drive (read only) #1100-#1139 40 discrete outputs #1140-#1155 16 extra relay outputs via multiplexed output #1264-#1268...
  • Page 95 #5001-#5005 Previous block end position #5021-#5025 Present machine coordinate position #5041-#5045 Present work coordinate position #5061-#5065 Present skip signal position - X,Y,Z,A,B #5081-#5085 Present tool offset #5201-#5205 G52 Work Offsets #5221-#5225 G54 Work Offsets #5241-#5245 G55 Work Offsets #5261-#5265 G56 Work Offsets #5281-#5285 G57 Work Offsets #5301-#5305...
  • Page 96: System Variables I N -Depth

    Inputs designated as “spare” can be connected to external devices and used by the programmer. 1-Bit Discrete Outputs The Haas control is capable of controlling up to 56 discrete outputs. However, a number of these outputs are already reserved for use by the Haas controller.
  • Page 97 Timers Haas macros can access two timers. These timers can be set to a value by assigning a number to the respective variable. A program can then later read the variable and determine the time passed since the timer was set. Timers can be used to imitate dwell cycles, determine part-to-part time or wherever time-dependent behavior is desired.
  • Page 98 #3002 Hour Timer - The hour timer is similar to the millisecond timer except that the number returned after access- ing #3002 is in hours. The hour and millisecond timers are independent of each other and can be set separately. System Overrides #3003 Variable 3003 is the Single Block Suppression parameter.
  • Page 99 #4101-#4126 Last Block (Modal) Address Data Address codes A-Z (excluding G) are maintained as modal values. The information represented by the last line of code interpreted by the lookahead process is contained in variables 4101 through 4126. The numeric mapping of variable numbers to alphabetic addresses corresponds to the mapping under alphabetic addresses.
  • Page 100: Variable Usage

    Note: Parameter bits are numbered 0 through 31. 32-bit parameters are formatted, on-screen, with bit 0 at the top- left, and bit 31 at the bottom-right. Pallet Changer The status of the pallets, from the Automatic Pallet Changer are checked using the following variables: #7501-#7506 Pallet priority #7601-#7606...
  • Page 101: Address Substitution

    DDRESS UBSTITUTION The usual method of setting control addresses A-Z is the address followed by a number. For example: G01 X1.5 Y3.7 F20. ; Sets addresses G, X, Y and F to 1, 1.5, 3.7 and 20.0 respectively and thus instructs the control to move linearly, G01, to position X=1.5 Y=3.7 at a feed rate of 20 inches per minute.
  • Page 102 Functions Functions are built-in routines that the programmer has available to use. All functions have the form <function_name>[argument] and return floating-point decimal values. The functions provided in the Haas control are as follows: Function Argument Returns Notes SIN[ ] Degrees...
  • Page 103 Conditional Expressions In the HAAS control, ALL expressions set a conditional value. The value is either 0.0 (FALSE) or the value is nonzero (TRUE). The context in which the expression is used determines if the expression is a conditional expression.
  • Page 104 The M99 conditional construct is unique to the HAAS control. Without macros, M99 in the HAAS control has the ability to branch unconditionally to any line in the current subroutine by placing a P code on the same line. For example: N50 M99 P10;...
  • Page 105 Haas control. GOTO15 does the same as M99 P15. In the Haas control, a GOTO command can be used on the same line as other G-codes. The GOTO is executed after any other commands like M codes.
  • Page 106 IF [#590 GT 100] THEN #590=0.0 ; Variable #590 is set to zero when the value of #590 exceeds 100.0. In the Haas control, if a conditional evaluates to FALSE (0.0), then the remainder of the IF block is ignored. This means that control statements can also be condi- tioned so that we could write something like: IF [#1 NE #0] THEN G1 X#24 Y#26 F#9 ;...
  • Page 107 This executes a linear motion only if variable #1 has been assigned a value. Another example is: IF [#1 GE 180] THEN #101=0.0 M99 ; This says that if variable #1 (address A) is greater than or equal to 180, then set variable #101 to zero and return from the subroutine.
  • Page 108: G65 Macro Subroutine Call

    If two separate WHILE loops are in a subroutine, they can use the same nesting index. For example: #3001=0 (WAIT 500 MILLISECONDS); WH [#3001 LT 500] DO1; END1; <Other statements> #3001=0 (WAIT 300 MILLISECONDS) ; WH [#3001 LT 300] DO1 ; END1 ;...
  • Page 109: Communication With External Devices - Dprnt[ ]

    The commands provided for this are POPEN, DPRNT[ ] and PCLOS. Communication preparatory commands POPEN and PCLOS are not required on the Haas mill. It has been included so that programs from different controls can be sent to the Haas control. 1 0 2...
  • Page 110 Formatted output The DPRNT statement allows the programmer to send formatted text to the serial port. Any text and any variable can be printed to the serial port. The form of the DPRNT statement is as follows: DPRNT [<text> <#nnnn[wf]>... ] ; DPRNT must be the only command in the block.
  • Page 111: Acro

    ACRO EATURES NCLUDED ONTROL This section lists the FANUC macro features that are not available on the Haas control. M Aliasing Replace G65 Pnnnn with Mnn PROGS 9020-9029. Modal call in every motion block G66.1 Modal call in every motion block...
  • Page 112: 4Th And 5Th Axis Programming

    -32° +32° FRONT SIDE Axis motion on the VR-11 Mill and the Haas TRT 210 REATING ROGRAMS Most five-axis programs are rather complex and should be written using a CAD/CAM package. It is necessary to determine the pivot length and gauge length of the machine, and input them into these programs.
  • Page 113 Work coordinate numbers are usually entered as positive numbers. Work coordinates are entered into the table as a number only. To enter an X value of X2.00 into G54, cursor to the X column and enter 2.0. Five-axis Programming Notes Use a tight synchronization cut across resolution of geometry in the CAD/CAM system will allow smooth flowing contours and a more accurate part.
  • Page 114: Installing An Optional Fourth Axis

    OURTH When adding a rotary table to the Haas mill change settings 30 and 34 to the specific rotary table and part diam- eter currently used. Warning: Failure to match the correct brush or brushless rotary setting to the actual product being installed on the mill may cause motor damage.
  • Page 115: Installing An Optional Fifth Axis

    G00 or G01 block. Connection of these axes is done through the second RS-232 port to one or more HAAS single axis controls. In the Setting page, Setting 38 is used to select the number of auxiliary axes.
  • Page 116: Disableing The Axes

    There are no work offsets for these axes so all commands are in the machine coordinate system. But if a displaced zero position has been entered into the HAAS servo control, that position will be used as zero. On power-up of the CNC, the auxiliary axes control will also be initialized and zero will be shifted by the value set in the single axis control.
  • Page 117 1 1 0 4&5 Axis Programming 96-8000 rev R June 2007...
  • Page 118: G Codes (Preparatory Functions)

    G CODES (PREPARATORY FUNCTIONS) G codes are used to command specific actions for the machine, for example simple machine moves or drilling functions They will also command more complex features from bolt hole circles to non-vertical machining. G-codes are divided into groups. Each group of codes is commands for a specific subject. For example, Group 1 G-codes command point-to point moves of the machine axes, Group 7 are specific to the Cutter Compensation feature.
  • Page 119 ABLE OF ONTENTS G00 Rapid Motion Positioning (Group 01) ..................114 G01 Linear Interpolation Motion (Group 01) ..................114 G02 CW / G03 CCW Circular Interpolation Motion (Group 01) ............115 G04 Dwell (Group 00) ......................... 119 G09 Exact Stop (Group 00) ........................ 119 G10 Set Offsets (Group 00) .......................
  • Page 120 G89 Bore In, Dwell, Bore Out Canned Cycle (Group 09) ...............145 G90 Absolute Position Commands (Group 03) ................146 G91 Incremental Position Commands (Group 03) ................146 G92 Set Work Coordinate Systems Shift Value (Group 00) ............146 G93 Inverse Time Feed Mode (Group 05) ..................147 G94 Feed Per Minute Mode (Group 05) ...................147 G95 Feed per Revolution (Group 05) ....................147 G98 Canned Cycle Initial Point Return (Group 10) .................147...
  • Page 121: G00 Rapid Motion Positioning (Group 01)

    G00 Rapid Motion Positioning (Group 01) Optional X-axis motion command Optional Y-axis motion command Optional Z-axis motion command Optional A-axis motion command This G code is used to move the machines axis at the maximum speed. It is primarily used to quickly position the machine to a given point before each feed (cutting) command (All moves are done at full rapid speed).
  • Page 122: G02 Cw / G03 Ccw Circular Interpolation Motion (Group 01)

    A chamfer block or a corner-rounding block can be automatically inserted between two linear interpolation blocks by specifying ,C (chamfering) or ,R (corner rounding). There must be a terminating linear interpolation block follow- ing the beginning block (a G04 pause may intervene). These two linear interpolation blocks specify a corner of intersection.
  • Page 123 Thread Milling Example: This program will I.D. thread mill a 1.5 x 8 TPI hole using a .750 diameter x 1.0 thread hob. To start, take the hole diameter (1.500). Subtract the cutter diameter .750 and then divide by 2.
  • Page 124 I.D. Thread Milling Exercise I.D. Thread Milling Exercise Move to Move to I.D. I.D. Move away Move away Thread Milling 1.5 dia. x 8 TPI from I.D. from I.D. Tool Path Turn On and Off Cutter Compensation Thread Milling Example Program Example Description O2300...
  • Page 125 Program Example Description O2400 (Thread milling a 2.0 diameter post x 16 TPI) (X0,Y0 is at the center of the post) (Z0 is at the top of the part - Post height is 1.125 inch G00 G90 G54 X0 Y2.0 S2000 M03 G43 H01 Z.1 M08 Z-1.0 G41 D01 X-1.5 Y1.125...
  • Page 126: G04 Dwell (Group 00)

    G12 Circular Pocket Milling CW / G13 Circular Pocket Milling CCW (Group 00) These two G codes are used to mill circular shapes. They are different only in which direction of rotation is used. Both G codes use the default XY circular plane (G17) and imply the use of G42 (cutter compensation) for G12 and G41 for G13.
  • Page 127 *D Tool radius or diameter selection I Radius of first circle (or finish if no K) The I value must be greater than the Tool Radius, but less than the K value. K Radius of finished circle (if specified) L Loop count for repeating deeper cuts Q Radius increment, or stepover (must be used with K) F Feedrate in inches (mm) per minute Z Depth of cut or increment...
  • Page 128: G17 Xy / G18 Xz / G19 Yz Plane Selection (Group 02)

    The following programming examples show the G12 and G13 format, as well as the different ways these programs can be written. Single Pass: Use I only. Applications: One-pass counter boring; rough and finish pocketing of smaller holes, ID cutting of O-ring grooves. Multiple Pass: Use I, K, and Q.
  • Page 129: G20 Select Inches / G21 Select Metric (Group 06)

    G20 Select Inches / G21 Select Metric (Group 06) The G codes G20 (inch) and G21 (mm) codes are used to ensure that the inch/metric selection is set correctly for the program. Selection between inch and metric programming should be done using Setting 9. G28 Return to Machine Zero Thru Optional G29 Reference Point (Group 00) The G28 code is used to return all axes to machine zero, unless an axis (or axes) is specified, in which case only that axis (or axes) is returned to machine zero.
  • Page 130: G29 Return From Reference Point (Group 00)

    G29 Return From Reference Point (Group 00) The G29 code is used to move the axes to a specific position. The axes selected in this block are moved to the G29 reference point saved in G28, and then moved to the location specified in the G29 command. G31 Feed Until Skip (Group 00) (This G-code is optional and requires a probe) Feedrate in inches (mm) per minute...
  • Page 131: G36 Automatic Work Offset Measurement (Group 00)

    O1234 (G35) T1 M06 G00 G90 G54 X0 Y1. G43 H01 Z0 G01 Z-1. F10. M04 S200 G31 Y0.49 F5. M75 G01 Y1. F20. Y-1. Z-1. G35 Y-0.49 D1 F5. G01 Y-1. F20. G00 G53 Z0 M05 G36 Automatic Work Offset Measurement (Group 00) (This G-code is optional and requires a probe) Feedrate in inches (mm) per minute Optional offset distance along X-axis...
  • Page 132: G37 Automatic Tool Offset Measurement (Group 00)

    Program Example O1234 (G36) G04 P100 G00 G90 G54 X1. Y0 Z-18. G91 G01 Z-1. F20. G36 X-1. F10. G90 G01 X1. G04 P100 G00 G90 G53 Z0 G37 Automatic Tool Offset Measurement (Group 00) (This G-code is optional and requires a probe) Feedrate in inches (mm) per minute Tool offset number Required Z-axis offset...
  • Page 133: G40 Cutter Comp Cancel (Group 07)

    G40 Cutter Comp Cancel (Group 07) G40 will cancel G41 or G42 cutter compensation. G41 2D Cutter Compensation Left / G42 2D Cutter Comp. Right (Group 07) G41 will select cutter compensation left; that is, the tool is moved to the left of the programmed path to compen- sate for the size of the tool.
  • Page 134 See the Macros section for more information. Literal String Engraving This method is used to engrave desired text on a part. The text should be in the form of a comment on the same line as the P0 statement. For example: G47 P0 (ENGRAVE THIS) will produce ENGRAVE THIS...
  • Page 135: G49 G43/G44/G143 Cancel (Group 08)

    Example To engrave “$2.00” two lines of code are necessary. The first will be using a P36 to engrave the dollar sign ($), and the second will use P0 (2.00). Note that the axes will need to be shifted between the first and second line of code in order to make a space between the dollar sign and the 2.
  • Page 136 00010 ; 00010 ; G59 ; G59 ; G00 G90 X0 Y0 Z0 ; G00 G90 X0 Y0 Z0 ; G51 P2. (scaling center is X0 Y0 Z0) ; G51 P2. (scaling center is X0 Y0 Z0) ; M98 P1 ; M98 P1 ;...
  • Page 137: G52 Set Work Coordinate System Yasnac (Group 00 Or 12)

    G92. If Haas is selected, G52 is a group 00 G-code. This is a global work coordinate shift. The values entered into the G52 line of the work offset page are added to all work offsets. All of the G52 values will be set to zero (0) by a G92.
  • Page 138 A center of rotation is always used by the control to determine the positional values passed to the control after rotation. If any axis center of rotation is not specified, then the current location is used as the center of rotation. When rotation (G68) is commanded, all X, Y, Z, I, J, and K values are rotated through a specified angle R using a center of rotation.
  • Page 139: G69 Cancel G68 Rotation (Group 16)

    00003 ; 00003 ; G59 ; G59 ; G00 G90 X0 Y0 Z0 ; G00 G90 X0 Y0 Z0 ; M98 P1 ; M98 P1 ; G00 G90 X0 Y0 Z0 ; G00 G90 X0 Y0 Z0 ; G68 X1.5 Y1.5 R60. ; G68 X1.5 Y1.5 R60.
  • Page 140: G70 Bolt Hole Circle (Group 00)

    G70 Bolt Hole Circle (Group 00) Radius (+CCW / -CW) Starting angle (0 to 360.0 degrees CCW from horizontal; or 3 o’clock position) Number of holes evenly spaced around the circle This non-modal G code must be used with one of the canned cycles G73, G74, G76, G77, or G81-G89. A canned cycle must be active so that at each position, a drill or tap function is performed.
  • Page 141 1.00 S t a r t S t a r t t i o n t i o n P o s i P o s i R P l a R P l a 1.00 Z P l a Z P l a 11.00 Rapid...
  • Page 142 Program Example Description O4500 T1 M06 G00 G90 G54 X1.0 Y-1.0 S3500 M03 G43 H01 Z1.125 M08 G81 G99 Z-1.500 R.05 F20. X2.0 G98 ( Will return to starting point after executing cycle ) X6.0 G99 ( Will return to reference plane after executing cycle ) X8.0 X10.0 X12.0 G98...
  • Page 143 ANNED YCLES Introduction Canned cycles are used to simplify programming. They are used for repetitive operations, such as drilling, tapping, and boring. The canned cycle is executed every time an X and/or Y-axis motion is programmed. Using Canned Cycles The positioning of a canned cycle in the X and/or Y-axes can be done in either absolute (G90) or incremental (G91). Incremental (G91) motion in a canned cycle is often useful with a loop count (Lnn) which will repeat the canned cycle operation that many times with each incremental X or Y move for the canned cycle.
  • Page 144: G73 High-Speed Peck Drilling Canned Cycle (Group 09)

    G73 High-Speed Peck Drilling Canned Cycle (Group 09) Feedrate in inches (mm) per minute First cut depth Amount to reduce cutting depth for pass Minimum depth of cut (The control will calculate the number of pecks) Number of repeats (Number of holes to drill) if G91 (Incremental Mode) is used Pause at the bottom of the hole (in seconds) Cut Depth (always incremental) Position of the R plane (Distance above part surface)
  • Page 145: G74 Reverse Tap Canned Cycle (Group 09)

    Peck Drilling Canned Cycle Peck Drilling Canned Cycle P l a n P l a n t i n g t i n g S t a r S t a r I N G # a n e a n e R P l R P l S E T T...
  • Page 146: G77 Back Bore Canned Cycle (Group 09)

    Fine Boring Canned Cycle Fine Boring Canned Cycle Feed Feed Rapid Move Rapid Move Begin or end of stroke Begin or end of stroke Shift Shift l a n e l a n e l a n e l a n e t i n g P t i n g P t i n g P...
  • Page 147: G81 Drill Canned Cycle (Group 09)

    G81 Drill Canned Cycle (Group 09) Feedrate in inches (or mm) per minute Number of holes to drill if G91 (Incremental Mode) is used Position of the R plane (position above the part) X-axis motion command Y-axis motion command Position of the Z-axis at the bottom of hole NOTE: The X and Y addresses, in most cases, are the location of the first hole to be drilled.
  • Page 148: G83 Normal Peck Drilling Canned Cycle (Group 09)

    Programming Note: G82 is similar to G81 except that you have the option to program a dwell (P) Program Example Description O1234 (Sample program) T1 M06 (Tool #1 is a 0.5" x 90-degree spot drill) G90 G54 G00 X.565 Y-1.875 S1275 M03 G43 H01 Z0.1 M08 G82 Z-0.175 P.3 R0.1 F10.
  • Page 149 G83 Peck Drilling with I, J & K options G83 Peck Drilling with I, J & K options G83 Normal Peck Drilling G83 Normal Peck Drilling I N G # S E T T I N G # S E T T R P l a R P l a R P l a...
  • Page 150: G84 Tapping Canned Cycle (Group 09)

    G84 Tapping Canned Cycle (Group 09) Feedrate in inches (or mm) per minute Retract Multiple (Example: J2 will retract twice as fast as the cutting speed, also see Setting 130) Number of holes if G91 (Incremental Mode) is used Position of the R plane (Position above the part) X-axis location of hole Y-axis location of hole Position of the Z-axis at the bottom of hole...
  • Page 151: G85 Boring Canned Cycle (Group 09)

    G85 Boring Canned Cycle (Group 09) Feedrate in inches (or mm) per minute Number of holes if G91 (Incremental Mode) is used Position of the R plane (position above the part) X-axis location of holes Y-axis location of holes Position of the Z-axis at the bottom of hole Boring Canned Cycle Boring Canned Cycle Feed...
  • Page 152: G88 Bore In, Dwell, Manual Retract Canned Cycle (Group 09)

    Bore and Stop and Manual Retract Canned Cycle Bore and Stop and Manual Retract Canned Cycle Feed Feed Rapid Move Rapid Move Begin or end of stroke Begin or end of stroke Manual Jog Manual Jog l a n e l a n e t i n g P t i n g P...
  • Page 153: G90 Absolute Position Commands (Group 03)

    FANUC or HAAS If setting 33 is set to Fanuc or Haas, a G92 command shifts all work coordinate systems (G54-59, G110-129) so that the commanded position becomes the current position in the active work system. G92 is a non-modal.
  • Page 154: G93 Inverse Time Feed Mode (Group 05)

    G93 Inverse Time Feed Mode (Group 05) Feed Rate (strokes per minute) This G code specifies that all F (feedrate) values are interpreted as strokes per minute. In other words the F code value, when divided into 60, is the number of seconds that the motion takes to complete. G93 is generally used in 4 and 5-axis work.
  • Page 155 XY MIRROR Y MIRROR Y MIRROR Mirror Image and Cutter Compensation When using cutter compensation with mirror imaging, follow this guideline: After turning mirror imaging on or off with G100 or G101, the next motion block should be to a different work coordinate position than the first one. The following code is an example: Correct: Incorrect:...
  • Page 156: G102 Programmable Output To Rs-232 (Group 00)

    Program Code for Mirror Imaging in the X-Axis: Program Example Description O3600 (Mirror image X axis) T1 M06 (Tool #1 is a 0.250" diameter endmill) G00 G90 G54 X-.4653 Y.052 S5000 M03 G43 H01 Z.1 M08 G01 Z-.25 F5. F20. M98 P3601 G00 Z.1 G101 X0.
  • Page 157: G103 Limit Block Buffering (Group 00)

    G103 Limit Block Buffering (Group 00) Maximum number of blocks the control will look ahead (Range 0-15), for example: G103 [P..] This is commonly referred to, as “Block Look-ahead” which is a term used to describe what the control is doing in the background during machine motions.
  • Page 158: G110-G129 Coordinate System #7-26 (Group 12)

    Cylindrical mapping will also be turned off automatically whenever the G-code program ends, but only if Setting 56 is ON. Pressing the RESET key will turn off any cylindrical mapping that is currently in effect, regardless of the status of Setting 56. R .50"...
  • Page 159: G136 Automatic Work Offset Center Measurement (Group 00)

    G136 Automatic Work Offset Center Measurement (Group 00) (This G-code is optional and requires a probe) Feedrate in inches (mm) per minute Optional offset distance along X-axis Optional offset distance along Y-axis Optional offset distance along Z-axis Optional X-axis motion command Optional Y-axis motion command Optional Z-axis motion command Automatic Work Offset Center Measurement (G136) is used to command a probe to set work offsets.
  • Page 160: G141 3D+ Cutter Compensation (Group 07)

    Programming example to probe the center of a part: O1234 (G136) G04 P100 G00 G90 G54 X0 Y5. Z-17. G91 G01 Z-1. F20. G31 Y-1. F10. M75 G01 Y1. F20. G00 Z2. Y-10. G01 Z-2. F20. G136 Y1. F10. G01 Y-1. G04 P100 G00 G90 G53 Z0 G141 3D+ Cutter Compensation (Group 07)
  • Page 161: G143 5-Axis Tool Length Compensation + (Group 08)

    Only the end-point of the commanded block is compensated in the direction of I, J, and K. For this reason this compensation is recommended only for surface tool paths having a tight tolerance (small motion between blocks of code). For best results program from the tool center using a ball nose end mill. G141 Example: T1 M06 G00 G90 G54 X0 Y0 Z0 A0 B0 G141 D01 X0.Y0.
  • Page 162: G150 General Purpose Pocket Milling (Group 00)

    The G150 starts by positioning the cutter to a start point inside the pocket, followed by the outline, and completes with a finish cut. The end mill will plunge in the Z-axis. A subprogram P### is called that defines the pocket geom- etry of a closed area using G01, G02, and G03 motions in the X and Y axes on the pocket.
  • Page 163 G150 G150 General Pocket Milling General Pocket Milling Start Point Start Point Z (Final Depth) Example O01001 (G150 Pocket example) T1 M06 (T1 Drills clearance hole for endmill) G90 G54 G00 X3.25 Y4.5 S1200 M03 (Pocket start point) G43 H01 Z1.0 M08 (Tool length offset, rapid to a Z start point, turn coolant on) G83 Z-1.5 Q0.25 R0.1 F20.
  • Page 164 G150 General Purpose Pocket Milling G150 General Purpose Pocket Milling 1, 6 Start Point X0, Y1.5 X0, Y0 Tool #1 is a .500 diameter end mill Pocket milling for G150 operation. 5.0 x 5.0 x 0.500 DP. Square Pocket Main Program Subprogram O01001 O01002 (Subprogram for G150 in O01001) T1 M06 (Tool #1 is a 0.500"...
  • Page 165 G150 Pocket Milling (Square Island) Start Point 1, 14 Tool #1 is a .500 diameter end mill X0, Y0 G150 Pocket milling program with a Square island. 5.0 x 5.0 x 0.500 DP. Square Pocket with Square Island Main Program...
  • Page 166 4, 10 6, 7 Start Point 1, 12 Tool #1 is a .500 diameter end mill X0, Y0 G150 Pocket milling program with a Round island. 5.0 x 5.0 x 0.500 DP. Square Pocket with Round Island Main Program Subprogram...
  • Page 167: G153 5-Axis High Speed Peck Drilling Canned Cycle (Group 09)

    G153 5-Axis High Speed Peck Drilling Canned Cycle (Group 09) Specifies the distance from the start position to the bottom of the hole Feedrate in inches (mm) per minute Size of first cutting depth (must be a positive value) Amount to reduce cutting depth each pass (must be a positive value) Minimum depth of cut (must be a positive value) Number of repeats Pause at end of last peck, in seconds...
  • Page 168: G155 5-Axis Reverse Tap Canned Cycle (Group 09)

    #14301-#14306 G154 P16 (also #7301-#7306 and G125) #14321-#14326 G154 P17 (also #7321-#7326 and G126) #14341-#14346 G154 P18 (also #7341-#7346 and G127) #14361-#14366 G154 P19 (also #7361-#7366 and G128) #14381-#14386 G154 P20 (also #7381-#7386 and G129) #14401-#14406 G154 P21 #14421-#14426 G154 P22 #14441-#14446 G154 P23 #14461-#14466 G154 P24 #14481-#14486 G154 P25...
  • Page 169: G161 5-Axis Drill Canned Cycle (Group 09)

    G161 5-Axis Drill Canned Cycle (Group 09) Specifies the distance from the start position to the bottom of the hole Feedrate in inches (mm) per minute Number of repeats A-axis tool starting position B-axis tool starting position X-axis tool starting position Y-axis tool starting position Z-axis tool starting position G161...
  • Page 170: G163 5-Axis Normal Peck Drilling Canned Cycle (Group 09)

    G163 5-Axis Normal Peck Drilling Canned Cycle (Group 09) Specifies the distance from the start position to the bottom of the hole Feedrate in inches (mm) per minute Optional size of first cutting depth Optional amount to reduce cutting depth each pass Optional minimum depth of cut Number of repeats Optional pause at end of last peck, in seconds...
  • Page 171: G164 5-Axis Tapping Canned Cycle (Group 09)

    G164 5-Axis Tapping Canned Cycle (Group 09) G164 only performs floating taps. G174/184 is available for 5-axis rigid tapping. Specifies the distance from the start position to the bottom of the hole Feedrate in inches (mm) per minute Number of repeats A-axis tool starting position B-axis tool starting position X-axis tool starting position...
  • Page 172: G166 5-Axis Bore And Stop Canned Cycle (Group 09)

    A specific X, Y, Z, A, B position must be programmed before the canned cycle is commanded. This position is used as the “Initial Start position”. G166 5-Axis Bore and Stop Canned Cycle (Group 09) Specifies the distance from the start position to the bottom of the hole Feedrate in inches (mm) per minute Number of repeats A-axis tool starting position...
  • Page 173: G174 Ccw Non-Vertical Rigid Tap (Group 00)

    This G code is used to perform rigid tapping for non-vertical holes. It may be used with a right-angle head to perform rigid tapping in the X or Y axis on a three-axis mill, or to perform rigid tapping along an arbitrary angle with a five- axis mill.
  • Page 174: M Codes (Miscellaneous Functions)

    M CODES (MISCELLANEOUS FUNCTIONS) M Code Introduction M-Codes are non axes moving commands for the machine. The format for an M code is the letter “M” followed by two numbers, for example M03. Only one M code may be programmed per line of code. All M codes take effect at the end of the block. M00 Stop Program The M00 code is used to stop a program.
  • Page 175 16 additional outputs. A total of 4 banks of 8 relays are possible in the Haas system these are numbered from 0-3. Banks 0 and 1 are internal to the main I/O PCB. Bank 1 includes the M21-25 relays at the top of the IOPCB. Bank 2 addresses the first 8M option PCB.
  • Page 176 M31 Chip Conveyor Forward / M33 Chip Conveyor Stop M31 starts the optional chip conveyor motor in the forward direction; the direction that moves the chips out of the machine. The conveyor will not turn if the door is open. It is recommended that the chip auger be used intermit- tently.
  • Page 177 M49 Set Status of Pallet This M code sets that status of the pallet specified by the P code to the value specified by the Q code. The possible Q codes are 0-Unscheduled 1-Scheduled 2-Loaded 3-Completed 4 through 29 are user definable. The pallet status is for display purposes only.
  • Page 178 M80 / M81 Auto Door Open / Close The M80 opens the Auto Door and the M81 closes the close the Auto Door. The control pendant will beep when the door is in motion. M82 Tool Unclamp This code is used to release the tool from the spindle. It is used as a maintenance/test function only. Tool changes should be done using an M06.
  • Page 179 M95 (12:30) The line(s) following the M95 should be axis moves and spindle warm-up commands. M96 Jump If No Input Program block to go to when conditional test is met Discrete input variable to test (0 to 63) This code is used to test a discrete input for 0 (off) status. This is useful for checking the status of automatic work holding or other accessories that will generate a signal for the control.
  • Page 180 It will cause the main program to loop back to the beginning without stopping when used in the main program. Programming Notes - You can simulate Fanuc behavior by using the following code: calling program: Haas Fanuc O0001...
  • Page 181 N1 #501= 0. (Clear the variable) M109 P501 (Sleep 1 min?) N5 IF [ #501 EQ 0. ] GOTO5 (Wait for a key) IF [ #501 EQ 89. ] GOTO10 IF [ #501 EQ 78. ] GOTO20 GOTO1 (Keep checking) (A Y was entered) M95 (00:01) GOTO30...
  • Page 182: Settings

    SETTINGS Introduction Settings are machine conditions that have an affect on machine operation. In general, settings allow the operator or setup person to lock out, turn on or specify functions. The settings are organized into pages of similar groups rather than numeric order. This puts associated settings on the same displayed page.
  • Page 183 5 Graphics Drill Point This setting changes the way a program is viewed in Graphics mode. When it is ON, motion in the Z-axis will leave an X mark on the screen. When it is OFF, no additional marks are shown on the graphics display. 6 Front Panel Lock This Setting disables the Spindle CW and CCW buttons when it is set to “ON”.
  • Page 184 12 Parity Select This setting defines parity for the first serial port (RS-232). When set to None, no parity bit is added to the serial data. When set to Zero, a 0 bit is added. Even and Odd work like normal parity functions. Make sure you know what your system needs, for example, XMODEM must use 8 data bits and no parity (set to “None”).
  • Page 185 33 Coordinate System This setting changes the way the Haas control recognizes the work offset system when a G52 or G92 is pro- grammed. It can be set to FANUC, HAAS, or YASNAC. Set to YASNAC G52 becomes another work offset, just like using a G55.
  • Page 186 Set to FANUC or HAAS with G92: Selecting FANUC or HAAS with a G92, it will work like the YASNAC setting, except that the new Work Zero location value will be loaded as new G92. This new value in the G92 list will be used, in addition to, the presently recognized work offset to define the new work zero location.
  • Page 187 40 Tool Offset Measure This setting selects how tool size is specified for cutter compensation. It can be set to either Radius or Diameter. 41 Add Spaces RS232 Out When this setting is ON spaces are added between address codes when a program is sent out via RS-232 serial port 1.
  • Page 188 50 Aux Axis Sync This changes the synchronization between sender and receiver for the second serial port. The second serial port is used for auxiliary axes. The settings between the CNC control and the auxiliary axes must be the same. Selecting “RTS/CTS”...
  • Page 189 58 Cutter Compensation This setting selects the type of cutter compensation used (FANUC or YASNAC). See the cutter compensation section. 59 Probe Offset X+ 60 Probe Offset X- 61 Probe Offset Y+ 62 Probe Offset Y- These settings are used to define the displacement and size of the spindle probe. These four settings specify the travel distance and direction from where the probe is triggered to where the actual sensed surface is located.
  • Page 190 This setting allows the operator to select how the control interprets an F value (feedrate) that does not contain a decimal point. (It is recommended that programmers always use a decimal point.) This setting helps operators run programs developed on a control other than HAAS. For Example F12: Setting 77 OFF 0.0012units/minute Setting 77 ON 12.0 units/minute...
  • Page 191 #1 and then to the pocket containing the tool specified by Setting 81. A tool change will be performed to change the specified tool into the spindle. 82 Language Languages other than English are available in the Haas control. To change to another language, choose a language and press Enter. 83 M30 Resets Override When this setting is ON, an M30 will restore any overrides (feedrate, spindle, rapid) to their default values (100%).
  • Page 192 When the setting is zero, the scren saver is disabled. If setting is set to some number of minutes, then after that time with no keyboard activity, the screen saver will activate the Haas logo that will change position every 2 seconds (deactivate with any key press, handle jog or alarm).
  • Page 193 117 G143 Global Offset This setting is provided for customers who have several 5-axis Haas mills and want to transfer the programs and tools from one to another. The pivot length difference (difference between Setting 116 for each machine) can be entered into this setting, and it will be applied to the G143 tool length compensation.
  • Page 194 130 Tap Retract Speed This setting affects the retract speed during a tapping cycle. Entering a value, such as 2, will command the mill to retract the tap twice as fast as it went in. If the value is 3, it will retract three times as fast. A value of 0 or 1 will have no affect on the retract speed.
  • Page 195 136 Server This setting contains the user-entered server name (up to 8 characters long.) Enter a semicolon (EOB symbol) if the machine is not linked to a server. 137 Username This setting contains the user-entered account name (up to 8 characters long.) Enter a semicolon (EOB symbol) if the machine is not linked to a server.
  • Page 196 Q304 - Previous Cycle Time Q400 - not currently used Q401 - not currently used Q402 - M30 Parts Counter #1 (resettable at control) Q403 - M30 Parts Counter #2 (resettable at control) Q500 - Three-in-one (PROGRAM, Oxxxxx, STATUS, PARTS, xxxxx) Q600 Macro or system variable The user has the ability to request the contents of any macro or system variable by using the Q600 command, for example, “Q600 xxxx”...
  • Page 197 150 APC Pallet 4 Load X 151 APC Pallet 4 Load Y 152 APC Pallet 4 Unload X 153 APC Pallet 4 Unload Y 154 APC Pallet 3 & 4 Safe X See Settings 121-129 155 Load Pocket Tables This setting should only be used when a software upgrade is performed and/or memory has been cleared and/or the control is re-initialized.
  • Page 198 167-186 Periodic Maintenance There are 14 items that can be monitored, as well as six spare items, in the periodic maintenance settings. These settings will allow the user to change the default number of hours for each item when it is initialized during use. If the number of hours is set to zero, the item will not appear in the list of items shown in the maintenance page of current commands.
  • Page 199 1 9 2 Settings 96-8000 rev R June 2007...
  • Page 200: Maintenance

    20-15 HP System (Standard VF and 10K, EC300, EC400) 195-260V Voltage Requirements 354-488V High-Voltage Requirements Power Supply 50 AMP 25 AMP Haas Circuit Breaker 40 AMP 20 AMP If service run from elec. panel is less than 100' use: 8 GA. WIRE 12 GA.
  • Page 201 EQUIREMENTS The mill requires a minimum of 100 psi at the input to the pressure regulator on the back of the machine. A volume of 4 scfm (9scfm for EC and HS mills) is also necessary. This should be supplied by at least a two-horsepower compressor, with a minimum 20-gallon tank, that turns on when the pressure drops to 100 psi.
  • Page 202 AINTENANCE CHEDULE The following is a list of required regular maintenance for the machining center. These required specifications must be followed in order to keep your machine in good working order and protect your warranty. Interval Maintenance Performed Daily • Check coolant level each eight-hour shift (especially during heavy TSC usage). •...
  • Page 203 Windows and guarding should be replaced if damaged or severely scratched. Replace dam- aged windows immediately. ORKLIGHT There are four types of worklights for the Haas mills. Turn off power to the machine at the main breaker before doing any work on the mill. Glass...
  • Page 204 When machining castings, sand from the casting process and the abrasive properties of cast aluminum and cast iron will shorten pump life unless a special filter is used in addition to the 20 mesh intake filter. Contact Haas for recommendations.
  • Page 205 Change the filter bag when the filter gauge displays a vacuum level of -5 in. Hg or more. Do not allow the suction to exceed -10 in. Hg or pump damage may occur. Replace with a 25-micron rated filter bag (Haas P/N 93-9130).
  • Page 206 1000 TSC M AINTENANCE Before doing any maintenance to the 1000psi system, disconnect the power source; unplug it from the power supply. Check the oil level on a daily basis. If the oil is low, add oil through the fill cap on the reservoir. Fill the reservoir about 25% full with 10-30W oil.
  • Page 207 OUNT HANGER EARBOX Checking the oil level Carousel Drain Plug Oil Fill Plug Number Disc Disc Mounting BHCS (6) Fill Level Oil Fill Level Vertical Mills EC-Series Mills Vertical Mills: View the oil level sight glass in the location shown. The proper level is half way on the sight glass. If more oil is needed, fill the gear box to the proper level at the oil fill/breather where shown.
  • Page 208 RANSMISSION Vertical Mill 40-Taper Transmission Oil Replacement There is no visible indicator for the level of transmission oil in the VF 1-6/40T models. To add transmission oil, remove the access panel located directly behind the spindle head. This will expose the Transmission Oil Overflow Pipe.
  • Page 209 EC-1600 HS 3/4/6/7 T RANSMISSION Oil Fill Port Oil Fill Oil Sight Drain Glass Oil Drain Plug Oil Level View EC-1600 HS-3/4/6/7 Oil Check Remove the sheet metal necessary to gain access to the transmission. View the sight glass on the side of the transmission box as shown.
  • Page 210 Pallet Side Spindle Side Pre-Fill Air Vent Oil In (pressure Reservoir Oil Fill relief) Sight Glass Oil Fill Solenoid Oil Drain Connection Plunger 1. Remove the fourteen (14) BHCS on the right Z-axis way cover at the receiver end and slide it toward the column. 2.
  • Page 211 (EC-1600-3000, HS3-7R) YDRAULIC RAKE Check the brake fluid level by viewing the fluid level in the booster. To check the EC 1600-3000 remove the brake booster cover. The cover/booster is located at the right, front of the machine. The HS 3-7R brake booster is located on the operator pendant side of the machine.
  • Page 212 VR-S ERIES ILTER The VR mills are equipped with an air filter (P/N 59-9088) for the motor housing. The recommended replacement interval is monthly, or sooner depending on your machining environment. The air filter is located on the rear of the head cover. To remove the air filter, simply pull up on the filter; the filter will slide upward out of its bracket.
  • Page 213 96-8000 rev R June 2007 2 0 6 Maintenance...
  • Page 214: Index

    Index Symbols 200 Hour Demo 25 4th and 5th Axis Programming 105 4th-axis Operation 107 Advanced Editor 70 Advanced Tool Management (ATM) 51 Air Requirements 194 Alarms 14 Auto Air Gun 171 Auto Door 171, 187 AUTOFEED 185 Auxiliary Axis 108 Auxiliary Coolant 12 Axis Load Monitor 19 Block Delete 16...
  • Page 215 Fifth Axis Installation 108 Five-Axis Programs 105 Floppy Drive 36 Fourth Axis Installation 107 Fourth axis Operation 107 Function Keys 12 G65 Macro Call 101, 113 G65 Macro Subroutine Call 101, 113 General Requirements 193 Graphics 14 Guarding 196 Handle Control Feedrate 13 Handle Control Spindle 13 Help 15, 21 High Speed Machining (Optional) 30...
  • Page 216 Macro System Variables 86 Maintenance 19, 193 Maintenance Schedule 195 MDI 38 Memory Lock 12 Messages 14 Milling calculator 24 Minimum Oil Machining (MOM) 54, 173 Mirror Image 147, 180 Operation Timers 19 Operator Load Station, Pallet Changer 57 Option Try-Out 25 Optional Stop 16 Orient Spindle 168 Overload, Tool 184...
  • Page 217 Settings 14 Settings, Macros 84 Shift key 15 Shortcuts, Advanced Editor 73 Side Mount Tool Changer 41 Side Mount Tool Changer Recovery 46 Side Mount Tool Changer Recovery Flow Chart 46 SINGLE BLOCK 183 SMTC Recovery 46 Specifications, Tool Changer 40 Spindle Air Pressure 204 Spindle Load Meter 11 Square brackets [ ] 15...

Table of Contents

Save PDF