DN-6025 Form 2 Changes for the Better Mitsubishi Electric Corp. M800/M80 Interactive Cycle Insertion (Customization) Specification manual The contents of this document are subject to change without notice. A1 Adapted to customization for machining center A2 Adapted to custom cycle using back-side SD, and added custom cycle types A A3 Added precautions B1 Added considerations for files for guide drawing display B C1 Adapted to additional custom cycle setting items C D1 Adapted to subprogram output D D2 Added notes for newlines in creating definition files E1 Adapted to subprogram output device E E2 Adapted to guidance switch definition file R e v i s i o n M800 / M80 Interactive Cycle Insertion (Customization) Specification manual 1 / BNP-C3072-121-0003E 79 No. Contents 1 OUTLINE ......................................................................................................................... 4 1.1 Interactive Cycle Insertion ................................................................................................... 4 1.2 Definitions of Terms ............................................................................................................ 4 1.3 Customizing Interactive Cycle Insertion Function ................................................................ 5 1.3.1 Adding cycle types ............................................................................................................. 5 1.3.2 Customizing MITSUBISHI cycle types ............................................................................... 7 2 CYCLE DATA .................................................................................................................. 9 2.1 Configuring Cycle Data ....................................................................................................... 9 2.2 Cycle Data Storage Destination......................................................................................... 11 3 FUNCTION DETAILS .................................................................................................... 12 3.1 Adding Cycle Types .......................................................................................................... 12 3.1.1 3.2 Adding cycles .................................................................................................................. 13 Customizing Existing Cycle Types..................................................................................... 17 3.2.1 Extracting cycles .............................................................................................................. 17 3.2.2 Rearranging cycles .......................................................................................................... 19 3.2.3 Adding cycles .................................................................................................................. 21 3.3 4 Output as Subprogram ...................................................................................................... 25 DETAILS OF CYCLE DATA .......................................................................................... 26 4.1 Cycle List Definition File .................................................................................................... 26 4.1.1 Specifications of cycle list definition file............................................................................ 26 4.1.2 Description method of cycle list definition file ................................................................... 29 4.2 Cycle Edit Screen Definition File ....................................................................................... 36 4.2.1 Specifications of cycle edit screen definition file ............................................................... 36 4.2.2 Description method of cycle edit screen definition file ...................................................... 40 4.3 Program Output Definition File .......................................................................................... 49 4.3.1 Specifications of program output definition file ................................................................. 49 4.3.2 Data identifier .................................................................................................................. 54 4.3.3 Conditional expression .................................................................................................... 55 5 INSTALLING CYCLE DATA .......................................................................................... 56 5.1 Storing Cycle Data in NC Unit ........................................................................................... 56 5.1.1 Installation on M800/M80W (Windows-based terminal) ................................................... 57 5.1.2 Installation on M80, M800S, M80W/M800W (Non-Windows-based terminal)................... 65 5.2 5.2.1 Storing Cycle Data in SD Card .......................................................................................... 69 Customization flow........................................................................................................... 69 2 5.2.2 Folder structure ............................................................................................................... 70 5.2.3 Inserting SD card ............................................................................................................. 71 6 PRECAUTIONS............................................................................................................. 72 6.1 Considerations for Cycle Data ........................................................................................... 72 6.2 Considerations for Custom Menu ...................................................................................... 73 7 TROUBLESHOOTING .................................................................................................. 74 7.1 Customized Cycle Data is Not Displayed .......................................................................... 74 7.2 “Cycle Format Illegal” Appears and Customized Cycle Cannot be Edited.......................... 76 7.3 “Cycle Format Illegal” Appears and Machining Program with Edited Cycle is Not Output .. 77 8 APPLICABLE NC MODELS .......................................................................................... 78 3 1 OUTLINE The customization of interactive cycle insertion function allows the cycles created by MTB (hereafter, user) to be displayed on screens and user’s own programs to be output. This function is available in M800 and M80. 1.1 Interactive Cycle Insertion This function enables cycles that assist in machining and in setup to be interactively inserted into the program opened on the Edit screen. This function makes programming faster. Cycles are easily inserted just by editing the data in the interactive window. Further details can be found in “Interactive Cycle Insertion Specifications Manual” (BNP-C3072-121-0001). [Outline of cycle insertion] Edit window Cycle edit window Cycle list window Edit window Press Press Select a cycle to be inserted from the cycle list. Move the cursor to the position to which to insert a cycle. Interactively edit the setting items of the selected cycle. The cycle is inserted into the cursor position. Figure 1.1. Operation overview 1.2 Definitions of Terms The terms used in this document are summarized in the following table. Terms generally used are not included. Table 1.1 Terms used Definition Term User Machine tool builder Cycle Machining program inserted using interactive cycle insertion function Cycle type Type of cycle selectable in interactive cycle insertion function A1 MITSUBISHI cycle (standard type) Fixed cycle in MITSUBISHI normal/special format A1 MITSUBISHI cycle (expansion type) Cycle that enables more detailed settings than MITSUBISHI cycle (standard type) Existing cycle Cycle before customized Custom type Cycle type prepared by user Custom cycle Cycle different from MITSUBISHI cycle, prepared by user Cycle ID Identifier assigned to a cycle Cycle data Data necessary for interactive cycle insertion function to operate A2 A1 *Further information on MITSUBISHI cycle (standard type) and MITSUBISHI cycle (expansion type) can be found in the following documents: Interactive cycle insertion (cycle for machining center system) specification manual (BNP-C3072-121-0004) Interactive cycle insertion (cycle for lathe system) specification manual (BNP-C3072-121-0002) 4 A1 1.3 Customizing Interactive Cycle Insertion Function This section describes what can be customized by interactive cycle insertion. 1.3.1 A2 Adding cycle types Besides standard type and expansion type cycles, the user’s own cycle types (hereafter custom types) can be added. New cycle types can be added [Standard] type [Expansion] type Select [Custom cycle] <Custom5 type> <Custom4 type> <Custom3 type> <Custom2 type> <Standard type> ・Turning hole (standard) cycle ・Turning (standard) cycle ・ ・ ・ <Expansion type> ・Turning hole (expansion) cycle ・Turning (expansion) cycle ・ ・ ・ <Custom1 ・ cycletype> 2 <Custom type> ・ cycle 2 ・Custom ・ cycle 1 ・Custom cycle 2 ・ ・ ・ ・ ・ ・ Figure 1.2. Addition of cycle types To switch to an added cycle type, select the menu: Custom or Custom1 ... Custom5 from [Change cycle] on the cycle list window. Any desired strings can be set for the menu: Custom or Custom1 ... Custom5. Figure 1.3 Cycle switching menus 5 A2 1.3.1.1 Adding cycles Custom cycles can be added to custom types. Up to 30 custom cycles per custom type can be added Added cycles are displayed on the Cycle list window. The displayed cycles can be edited and inserted. A2 C1 Cycle list window Displays cycles prepared by user Figure 1.4 Example of cycle added The following describes what can be defined for a custom cycle. (1) Setting items and guide drawing The setting items and guide drawing that are displayed when a cycle is set can be defined. Up to 60 setting items can be defined for custom cycles. Cycle edit window Displays setting items defined by user Displays guide drawing prepared by user Figure 1.5. Example of added cycle 6 A2 C1 (2) Cycle to be output Cycle to be inserted in machining program can be defined. A2 Cycle edit window Edit window Output Outputs program Figure 1.6 Example of output definition of added cycle program 1.3.2 Customizing MITSUBISHI cycle types A2 MITSUBISHI cycle types can be customized. The following describes what can be customized. 1.3.2.1 Extracting cycles A2 It is possible to extract and display desired cycles only. Cycle list before extraction Cycle list after extraction Extract Extracts cycles Figure 1.7 Example of cycle extraction 7 1.3.2.2 Rearranging cycles A2 It is possible to reorder cycles. Cycle list before rearrangement Cycle list after rearrangement Rearrange Cycle marked with a red box is rearranged Figure 1.8 Example of cycle rearrangement 1.3.2.3 Adding cycles A2 It is also possible to add custom cycles to MITSUBISHI cycle types. Extracted or rearranged cycle types can be added. A full description of cycle addition is given in 1.3.1.1 Adding cycles. 8 2 CYCLE DATA Cycle data is required for customizing the interactive cycle insertion function. 2.1 Configuring Cycle Data The following shows the folder structure of cycle data required for customization. The user-prepared cycle data must be stored in the specified location. For details, see 5 INSTALLING CYCLE DATA. ・Cycle list definition file Corresponding folder (*1) ・Cycle list display file ・Cycle edit screen definition file ・Program output definition file ・Guide drawing display file A2 Cycle folder (*2) ・Cycle list display file Hierarchy folder (*3) ・ ・ ・ Blue (*4) Hierarchy folder (*3) Cycle folder (*2) Cycle folder (*2) E2 Folder for guide drawing switch (*6) ・Guide drawing file for theme color (blue-themed) ・Guide drawing file for theme color (gray-themed) E2 Gray (*5) Folder for guide drawing switch (*6) Figure 2.1 Folder structure of cycle data *1: Corresponding folder corresponds to cycle type. Store cycle data in the corresponding folder for each cycle type. Table 2.1. List of corresponding folders Name of corresponding folder STANDARDCTM EXPANSIONCTM CTMCYCLEDATA CUSTOMEX1 CUSTOMEX2 CUSTOMEX3 CUSTOMEX4 CUSTOMEX5 Customization description Cycle data for MITSUBISHI cycle (standard type) Cycle data for MITSUBISHI cycle (expansion type) Cycle data for customization Cycle data for Custom1 Cycle data for Custom2 Cycle data for Custom3 Cycle data for Custom4 Cycle data for Custom5 9 A2 *2: In Cycle folders, place the files that are necessary for adding cycles. *3: In Hierarchy folders, place the files that are necessary for hierarchy display on the cycle list window. *4: In this folder, place the image files to be displayed as the guidance in the cycle edit window for the theme color (blue-themed). This folder name cannot be changed. *5: In this folder, place the image files to be displayed as the guidance in the cycle edit window for the theme color (gray-themed). This folder name cannot be changed. *6:Place this folder if the guide drawings on the cycle edit window are switched. This folder is not necessary if only the guide drawing file in the blue or gray folder is to be displayed. Like blue and gray folders, image files for each theme color are stored in this folder. Up to 10 blue and gray folders each are allowed. E2 The following table lists the cycle data to be stored in each folder. For details of each file, see 4 DETAILS OF CYCLE DATA. Table 2.2 Description of files necessary for customization File Cycle list definition file Cycle edit screen definition file Program output definition file Cycle list display file Guide drawing display file Guide drawing file File name list_ctm_m.xml (for machining center) list_ctm.xml (for lathe) ScrnProc.xml PrgProc.PRG File type File description TEXT file (Unicode) XML file defining cycle information to be displayed on the cycle list window. TEXT file (Unicode) XML file defining information about guidance and setting items displayed on the cycle edit window. Text file defining the format of the machining program to be output. Image file displayed on the cycle list window. HTML file to be displayed as guidance on the cycle edit window. *1 Image.jpg TEXT file (multi-byte) JPEG file Guide_XXX.html HTML file (XXX: display order of the setting items) XXXXX.jpg JPEG file (XXXXX: image file name defined in the guide drawing display file) *1 Set “windows-1252” for the charset. Image file in accordance with the theme color (blue-themed and gray-themed) to be displayed for the guidance on the cycle edit window. The following table describes the files necessary for each type of customization. Table 2.3. Necessary files Cycle edit screen Program output definition Customization Cycle list definition file definition file, etc. *1 file Cycle addition ○ ○ ○ Cycle extraction ○ × × Cycle rearrangement ○ × × ○: Files required *1: The following files are included: ・Cycle edit screen definition file ・Cycle list display file ・Guide drawing display file ・Guide drawing file 10 ×: Files not required A1 B1 2.2 Cycle Data Storage Destination A2 For customization, the cycle data created must be stored in the NC or an SD card. The location and the size of the cycle data vary depending on the model. M800W/M80W (Windows-based terminal) The user can customize cycles with the cycle data stored in “D:¥custom¥comm_cycle” in the NC. There is no limit on the size of cycle data stored in the NC. *1: Depending on the data size to be stored in “D:¥custom”, the master backup on the all backup screen may be unavailable. For details, refer to “MITSUBISHI CNC M8 series all backup screen specification manual” (BNP-C3072-028-0002). M800W/M80W (Non-Windows-based terminal) The user can customize cycles with the cycle data stored in the NC. Up to 30 MB of cycle data can be stored in the NC. M800S and M80 The user can customize cycles with the cycle data stored in the NC or an SD card. Up to 30 MB of cycle data can be stored in the NC. There is no limit on the size of cycle data stored in an SD card. If the user wants to customize cycles with the cycle data exceeding 30 MB, store the cycle data in an SD card then perform customization. A full description of how to store cycle data is given in 5 INSTALLING CYCLE DATA. The created cycle data is reflected for each corresponding folder. When there is a corresponding folder of the same name in both the NC and the SD card, the data in the corresponding folder in the SD card is reflected and the data in the NC is ignored. 11 3 FUNCTION DETAILS This section describes how to use the functions available for customization. 3.1 Adding Cycle Types A2 Cycle types of custom type can be added. To add a cycle type, prepare the corresponding folder for the custom type and store the cycle list definition files in the folder. For details of the cycle list definition file, see 4.1 Cycle List Definition File. The following provides a setting example. The example of definition file setting uses a definition with the corresponding folder (CTMCYCLEDATA) as an example. The user-prepared cycle types are displayed Figure 3.1 Example of cycle type addition Shown below are the structures of the corresponding folders by added cycle type. Cycle type Name on cycle change Name on cycle change Corresponding folder added by user menu (Japanese) menu (English) Custom CTMCYCLEDATA ユーザー User Custom1 CUSTOMEX1 ユーザー 1 User 1 Custom2 CUSTOMEX2 ユーザー 2 User 2 Custom3 CUSTOMEX3 ユーザー 3 User 3 Setting example of the cycle list definition file <?xml version="1.0" encoding="UTF-16"?> <PCS_LIST version="BND-1234W567-A0A"> <CTM_MENU_NAME> <DISP_NAME lang="0">User</DISP_NAME> <DISP_NAME lang="1">ユーザー</DISP_NAME> </CTM_MENU_NAME> <CUSTOMIZE cstm_type="ADD"> <LIST_ITEM> ・ ・ ・ </LIST_ITEM> </CUSTOMIZE> </PCS_LIST> 12 Definition of version information Definition of the cycle change menu name Definition of menu name (English) Definition of menu name (Japanese) Definition of customizing processing Definition of the cycles selectable in the added cycle types (See 3.1.1 Adding cycles) 3.1.1 Adding cycles Custom cycles can be added to custom types. The added cycles are displayed on the cycle list window, where they can be selected, edited, and inserted. To add a cycle, define the cycle to be added in the cycle list definition file. For details of the cycle list definition file can be found in 4.1 Cycle List Definition File. The following provides a setting example of adding a custom cycle. A2 Cycle list window Displays the user-prepared cycles Figure 3.2 Example of adding cycle The configuration of the added cycle data is shown below. Cycle type in destination User-added cycle Hierarchy Cycle ID Path of cycle list display file *1 Custom type UserCycle1 1 910000 CTMCYCLEDATA¥User¥Image.jpg *1: Define a cycle in the cycle list definition file by specifying the relative path under the corresponding folder. Setting example of the cycle list definition file <?xml version="1.0" encoding="UTF-16"?> <PCS_LIST version="BND-1234W567-A0A"> <CTM_MENU_NAME> <DISP_NAME lang="0">User</DISP_NAME> <DISP_NAME lang="1">ユーザー</DISP_NAME> </CTM_MENU_NAME> <CUSTOMIZE cstm_type="ADD"> <LIST_ITEM> <LIST_POS> <PCS_ID>0</PCS_ID> <POS_TYPE>CHILD_TOP</POS_TYPE> </LIST_POS> <PCS_ID>910000</PCS_ID> <DISP_NAME lang="0">UserCycle1</DISP_NAME> <DISP_NAME lang="1">ユーザサイクル1</DISP_NAME> <IMAGE_FILE>User¥</IMAGE_FILE> <PROCESS> <PRGOUT_NAME>UserCycle1</PRGOUT_NAME> <SCR_DEF_FILE>User¥ScrnProc.xml</SCR_DEF_FILE> <PRG_DEF_FILE>User¥PrgProc.prg</PRG_DEF_FILE> </PROCESS> </LIST_ITEM> </CUSTOMIZE> </PCS_LIST> 13 Definition of version information Definition of the cycle change menu name Definition of menu name (Japanese) Definition of menu name (English) Definition of customizing processing Definition of cycle adding location Head of the 1st hierarchy Definition of cycle ID Definition of cycle name (English) Definition of cycle name (Japanese) Definition of cycle image path Definition of program output cycle name Definition of cycle edit screen definition file path Definition of program output definition file path A2 For custom cycles, the user can define setting items, guide drawings to be displayed on the cycle edit window, and the cycles to be output to the machining program. They can be set by defining in the cycle edit screen definition file and program output definition file. For details of the cycle edit screen definition file, see 4.2 Cycle Edit Screen Definition File. For details of the program output definition file, see 4.3 Program Output Definition File. The following provides setting examples of each item. A2 (1) How to define setting items and guide drawing Cycle list window Cycle edit window Select cycle User-prepared guide drawing User-defined setting items Figure 3.3 Example of cycle edit window for a custom cycle The following table summarizes the configuration of the cycle data in the setting example Setting item Setting item No. Path of guide drawing display file *1 X axis initial pos X 1 CTMCYCLEDATA¥User¥Guide_1.html Z axis initial pos Z 2 CTMCYCLEDATA¥User¥Guide_2.html X axis pos X 11 CTMCYCLEDATA¥User¥Guide_3.html Z axis pos Z 12 CTMCYCLEDATA¥User¥Guide_4.html Feedrate 13 CTMCYCLEDATA¥User¥Guide_5.html *1: Define in the cycle edit screen definition file by specifying the relative path including the corresponding folder. The following provides an example of guide drawing display file (html). <html> <head> <meta content="text/html; charset=windows-1252"> </head> <br> <center><img src="XAxis_InitPos.jpg"></center> </body> </html> 14 B1 Set “windows-1252” for the charset. Specify the file name of the guide drawing to be displayed A setting example of the cycle edit screen definition file <?xml version="1.0" encoding="UTF-16"?> <SCREEN_DEF version="BND-1234W567-A0A"> <IMAGE_FILE>CTMCYCLEDATA¥User¥</IMAGE_FILE> <SET_ITEM item_no="1"> <DISP_NAME lang="0">X axis initial pos X</DISP_NAME> <DISP_NAME lang="1">X軸イニシャル点位置</DISP_NAME> <DATA_TYPE>0</DATA_TYPE> <RANGE_MIN>-99999</RANGE_MIN> <RANGE_MAX>99999</RANGE_MAX> <HELP lang="0">Setting value:-99999 to 99999(mm)</HELP> <HELP lang="1">Range of values:-99999~99999(mm)</HELP> <EMPTY_ACT>2</EMPTY_ACT> </SET_ITEM> <SET_ITEM item_no="2"> <DISP_NAME lang="0">Z axis initial pos Z</DISP_NAME> <DISP_NAME lang="1">Z軸イニシャル点位置</DISP_NAME> <DATA_TYPE>0</DATA_TYPE> <RANGE_MIN>-99999</RANGE_MIN> <RANGE_MAX>99999</RANGE_MAX> <HELP lang="0">Setting value:-99999 to 99999(mm)</HELP> <HELP lang="1">Range of values:-99999~99999(mm)</HELP> <EMPTY_ACT>2</EMPTY_ACT> </SET_ITEM> <SET_ITEM item_no="11"> <DISP_NAME lang="0">X axis pos X</DISP_NAME> <DISP_NAME lang="1">X軸点位置</DISP_NAME> <DATA_TYPE>0</DATA_TYPE> <RANGE_MIN>-99999</RANGE_MIN> <RANGE_MAX>99999</RANGE_MAX> <HELP lang="0">Setting value:-99999 to 99999(mm)</HELP> <HELP lang="1">Range of values:-99999~99999(mm)</HELP> <EMPTY_ACT>2</EMPTY_ACT> </SET_ITEM> <SET_ITEM item_no="12"> <DISP_NAME lang="0">Z axis pos Z</DISP_NAME> <DISP_NAME lang="1">Z軸点位置</DISP_NAME> <DATA_TYPE>0</DATA_TYPE> <RANGE_MIN>-99999</RANGE_MIN> <RANGE_MAX>99999</RANGE_MAX> <HELP lang="0">Setting value:-99999 to 99999(mm)</HELP> <HELP lang="1">Range of values:-99999~99999(mm)</HELP> <EMPTY_ACT>2</EMPTY_ACT> </SET_ITEM> <SET_ITEM item_no="13"> <DISP_NAME lang="0">Feedrate</DISP_NAME> <DISP_NAME lang="1">送り速度</DISP_NAME> <DATA_TYPE>0</DATA_TYPE> <RANGE_MIN>-99999</RANGE_MIN> <RANGE_MAX>99999</RANGE_MAX> <HELP lang="0">Setting value:-99999 to 99999(mm)</HELP> <HELP lang="1">Range of values:-99999~99999(mm)</HELP> <EMPTY_ACT>2</EMPTY_ACT> </SET_ITEM> </SCREEN_DEF> 15 Version definition Path definition of guide drawing display file Setting item: Definition of X axis initial pos X Setting item: Definition of Z axis initial pos Z Setting item: Definition of X axis pos X Setting item: Definition of Z axis pos Z Setting item: Definition of feedrate (2) Cycles to be output A2 Edit screen Cycle edit window Output Output cycle Figure 3.4 Example of program output of added cycle When defining the following user-prepared cycle program: Setting item Setting item No. Output format X axis initial pos X 1 <D1> Z axis initial pos Z 2 <D2> X axis pos X 11 <D11> Z axis pos Z 12 <D12> Feedrate 13 <D13> A setting example of program output definition file (BND-12345W567-A0A) $1 G180P1A<ID>(<NAME>) G0X<D1>Z<D2> G1X<D11>Z<D12>F<D13> G180P0 $2 G180P1A<ID>(<NAME>) G0X<D1> G1X<D11>F<D13> G180P0 Version definition A program for the 1st part system Entire header Travel to cutting start point Travel to the specified coordinate Entire footer A program for the 2nd part system Entire header Travel to cutting start point Travel to the specified coordinate Entire footer 16 3.2 Customizing Existing Cycle Types A2 Existing cycle types can be customized. Examples are provided below. The definition with the corresponding folder (STANDARDCTM) is used as an example. 3.2.1 Extracting cycles The existing cycles can be extracted and displayed on the cycle list window. Define the cycles to be extracted in the cycle list definition file. For details of cycle list definition files, see 4.1 Cycle List Definition File. (1) Examples of extracting cycles Cycle list before extraction Cycle list after extraction Extract Cycles extracted Figure 3.5 Cycle extraction example (1st hierarchy) Cycle before extraction Cycle after extraction Extract Cycle extracted Figure 3.6 Cycle extraction example (3rd hierarchy) 17 The following table summarizes the configuration of the cycle data in the setting example Cycle to be extracted TurningHol Turning-Turning-Outer diam Hierarchy 1 Cycle ID 3 611001 510000 A setting example of the cycle list definition file <?xml version="1.0" encoding="UTF-16"?> <PCS_LIST version="BND-1234W567-A0A"> <CUSTOMIZE cstm_type="EXT"> <LIST_ITEM> <LIST_POS> <PCS_ID>510000</PCS_ID> </LIST_POS> </LIST_ITEM> <LIST_ITEM> <LIST_POS> <PCS_ID>611001</PCS_ID> </LIST_POS> </LIST_ITEM> </CUSTOMIZE> </PCS_LIST> Cycle extraction Extract the cycle of Cycle ID 510000 Extract the cycle of Cycle ID 611001 18 3.2.2 Rearranging cycles The cycles extracted from existing cycles can be reordered. Define how to reorder in the cycle list definition file. For details of the cycle list definition file, see 4.1 Cycle List Definition File. (1) Example of cycle rearrangement Cycle list after rearrangement Cycle list before rearrangement Rearrange Figure 3.7 Example of cycle rearrangement The following tables summarize the configuration of the cycle data in the setting example Cycle to be extracted Hierarchy Cycle ID TurningHol 1 510000 Turning 1 610000 Mill hole 1 710000 Cycle to be rearranged TurningHol Turning Place after rearrangement Next to the cycle (Mill hole) End of the 1st hierarchy 19 A setting example of the cycle list definition file <?xml version="1.0" encoding="UTF-16"?> <PCS_LIST version="BND-1234W567-A0A"> <CUSTOMIZE cstm_type="EXT"> <LIST_ITEM> <LIST_POS> <PCS_ID>510000</PCS_ID> </LIST_POS> </LIST_ITEM> <LIST_ITEM> <LIST_POS> <PCS_ID>610000</PCS_ID> </LIST_POS> </LIST_ITEM> <LIST_ITEM> <LIST_POS> <PCS_ID>710000</PCS_ID> </LIST_POS> </LIST_ITEM> </CUSTOMIZE> <CUSTOMIZE cstm_type="POS"> <LIST_ITEM> <LIST_POS type="FROM"> <PCS_ID>510000</PCS_ID> </LIST_POS> <LIST_POS type="TO"> <PCS_ID>710000</PCS_ID> <POS_TYPE>NEXT</POS_TYPE> </LIST_POS> </LIST_ITEM> <LIST_ITEM> <LIST_POS type="FROM"> <PCS_ID>610000</PCS_ID> </LIST_POS> <LIST_POS type="TO"> <PCS_ID>0</PCS_ID> <POS_TYPE>CHILD_END</POS_TYPE> </LIST_POS> </LIST_ITEM> </CUSTOMIZE> </PCS_LIST> 20 Cycle extraction Extract the cycle of Cycle ID 510000 Extract the cycle of Cycle ID 610000 Extract the cycle of Cycle ID 710000 Cycle rearrangement Specify travel origin: The cycle of Cycle ID 510000 Specify travel destination: Travel to the next to the cycle of Cycle ID 710000 Specify travel origin: The cycle of Cycle ID 610000 Specify travel destination: End of the 1st hierarchy 3.2.3 Adding cycles Custom cycles can be added to existing cycle types by defining the cycle to be added in the cycle list definition file that describes the customization details of existing cycle types. For details of the cycle list definition file, see 4.1 Cycle List Definition File. (1) Examples of adding a custom cycle to existing cycle types Cycle list before addition Cycle list after addition Add Cycle added Figure 3.8 Cycle addition image (1st hierarchy) Cycle list before addition Cycle list after addition Add Cycle added Figure 3.9 Cycle addition image (2nd hierarchy) The following table summarizes the configuration of the cycle data in the setting example Cycle to be extracted Hierarchy Cycle ID TurningHol 1 510000 Turning 1 610000 21 Cycle added by user UserCycle1 Hierarchy 1 Cycle ID Remark Groove 2 910100 A child cycle of “UserCycle1“ cycle Thread 2 910200 A child cycle of “UserCycle1” cycle Reaming 2 914000 A child cycle of “TurningHol” cycle Outer diam 3 910101 A child cycle of “Groove” cycle 910000 - Inner diam 3 910102 A child cycle of “Groove” cycle ・Add a user-prepared cycle (“Reaming”) to the end of a child hierarchy of the “TurningHol” cycle ・Add a user-prepared cycle (“UserCycle1”), which includes its hierarchies, to the end of the 1st hierarchy <1st hierarchy> TurningHol (ID=510000) <2nd hierarchy> <3rd hierarchy> Drilling (511000) DeepHolDri (512000) : Turning (ID=610000) UserCycle1 (ID=910000) Reaming (914000) Groove (910100) Outer diam (910101) Thread (910200) Inner diam (910102) Figure 3.10 An example of hierarchy when a user cycle is added 22 A setting example of the cycle list definition file <?xml version="1.0" encoding="UTF-16"?> <PCS_LIST version="BND-1234W567-A0A"> <CUSTOMIZE cstm_type="EXT"> <LIST_ITEM> <LIST_POS> <PCS_ID>510000</PCS_ID> </LIST_POS> </LIST_ITEM> <LIST_ITEM> <LIST_POS> <PCS_ID>710000</PCS_ID> </LIST_POS> </LIST_ITEM> </CUSTOMIZE> <CUSTOMIZE cstm_type="ADD"> <LIST_ITEM> <LIST_POS> <PCS_ID>510000</PCS_ID> <POS_TYPE>CHILD_END</POS_TYPE> </LIST_POS> <PCS_ID>914000</PCS_ID> <DISP_NAME lang="0">Reaming</DISP_NAME> <DISP_NAME lang="1">リーマ</DISP_NAME> <IMAGE_FILE>Reaming¥</IMAGE_FILE> <PROCESS> <PRGOUT_NAME>Reaming</PRGOUT_NAME> <SCR_DEF_FILE>Reaming¥ScrnProc.xml</SCR_DEF_FILE> <PRG_DEF_FILE>Reaming¥PrgProc.prg</PRG_DEF_FILE> </PROCESS> </LIST_ITEM> <LIST_ITEM> <LIST_POS> <PCS_ID>0</PCS_ID> <POS_TYPE>CHILD_END</POS_TYPE> </LIST_POS> <PCS_ID>910000</PCS_ID> <DISP_NAME lang="0">TURN</DISP_NAME> <DISP_NAME lang="1">旋削</DISP_NAME> <IMAGE_FILE>groove¥</IMAGE_FILE> <LIST_ITEM> <PCS_ID>910100</PCS_ID> <DISP_NAME lang="0">GROOVE</DISP_NAME> <DISP_NAME lang="1">溝</DISP_NAME> <IMAGE_FILE>groove¥</IMAGE_FILE> <LIST_ITEM> <PCS_ID>910101</PCS_ID> <DISP_NAME lang="0">OUT</DISP_NAME> <DISP_NAME lang="1">外径</DISP_NAME> <IMAGE_FILE>groove1¥</IMAGE_FILE> <PROCESS> <PRGOUT_NAME>GRV-OUT</PRGOUT_NAME> <SCR_DEF_FILE>groove1¥ScrnProc.xml</SCR_DEF_FILE> <PRG_DEF_FILE>groove1¥PrgProc.prg</PRG_DEF_FILE> </PROCESS> </LIST_ITEM> <LIST_ITEM> <PCS_ID>910102</PCS_ID> <DISP_NAME lang="0">IN</DISP_NAME> <DISP_NAME lang="1">内径</DISP_NAME> <IMAGE_FILE>groove2¥</IMAGE_FILE> <PROCESS> 23 Cycle extraction Extract the cycle of Cycle ID 510000 Extract the cycle of Cycle ID 710000 Addition of user cycles Add a cycle Specify its designation End of the child hierarchy of Cycle ID 510000 Cycle ID=914000 Allocate the cycle data Add a cycle Specify its destination: End of 1st hierarchy Cycle ID=910000 The first cycle in the 2nd hierarchy Cycle ID=910100 The first cycle in the 3rd hierarchy Cycle ID=910101 Allocate the cycle data The second cycle in the 3rd hierarchy Cycle ID=910102 Allocate the cycle data <PRGOUT_NAME>GRV-IN</PRGOUT_NAME> <SCR_DEF_FILE>groove2¥ScrnProc.xml</SCR_DEF_FILE> <PRG_DEF_FILE>groove2¥PrgProc.prg</PRG_DEF_FILE> </PROCESS> </LIST_ITEM> </LIST_ITEM> <LIST_ITEM> <PCS_ID>910200</PCS_ID> <DISP_NAME lang="0">THREAD</DISP_NAME> <DISP_NAME lang="1">ネジ</DISP_NAME> <IMAGE_FILE>thread¥</IMAGE_FILE> <PROCESS> <PRGOUT_NAME>THD</PRGOUT_NAME> <SCR_DEF_FILE>thread¥ScrnProc.xml</SCR_DEF_FILE> <PRG_DEF_FILE>thread¥PrgProc.prg</PRG_DEF_FILE> </PROCESS> </LIST_ITEM> </LIST_ITEM> </CUSTOMIZE> </PCS_LIST> 24 The second cycle in the 2nd hierarchy Cycle ID=910200 Allocate the cycle data D1 3.3 Output as Subprogram Custom cycles can be output as subprograms. When the parameter #19715 Cycle output dest. is set to 1 (NC memory) to 6 (D4), cycles are output to a file as a subprogram. To output cycles as a subprogram, the following must be set. The file name of a subprogram will be “ICISP-(subprogram name). Item Description Range of values Cycle output dest. Specify where to output cycles When a new cycle is inserted, the value of the parameter #19715 Cycle output dest. is displayed. When a cycle is edited, the value at the time of cycle output is displayed. Subpro stor :dev 0: Main program 1: NC memory 2: D0 3: D1 4: D2 5: D3 6: D4 Not user-configurable When Cycle output dest. is set to 2 (D0) to 6 (D4), the value of the the parameter among the following with the corresponding device number is display. ・#8880 Subpro stor D0: dev ・#8882 Subpro stor D1: dev ・#8884 Subpro stor D2: dev ・#8886 Subpro stor D3: dev ・#8888 Subpro stor D4: dev No value is displayed when Cycle output dest. is set to 0 (Main program) or 1 (NC memory). Subpro stor :dir When Cycle output dest. is set to 2 (D0) to 6 (D4), the Not user-configurable first 16 characters of the value set in the parameter among the following with the corresponding device number is displayed. ・#8881 Subpro stor D0: dir ・#8883 Subpro stor D1: dir ・#8885 Subpro stor D2: dir ・#8887 Subpro stor D3: dir ・#8889 Subpro stor D4: dir No value is displayed when Cycle output dest. is set to 0 (Main program) or 1 (NC memory). Subprogram name Specify the file name of the subprogram that the cycle 1 to 16 characters is output as. A file name can consist of half-width uppercase alphabets and numbers. When the setting item Cycle output dest. is set to 0 (Main program), this item is not user-configurable. *1: For details on how to operate, see Interactive cycle insertion specification manual (BNP-C3072-121-0001). Programming example The programs to be output to main program as a subprogram are as follows: 1) When Cycle output dest. is set to 1 Program to be output Item Cycle output dest. G180 P1 A<ID> (<NAME>) Process header M98<ICISP-500> Read subprogram Subpro stor :dev G180 P0 Process footer Subpro stor :dir Subprogram name 2) When Cycle output dest. is set to 2 Program to be output Item Cycle output dest. G180 P1 A<ID> (<NAME>) Process header M98<ICISP-500>,D0 Read subprogram Subpro stor :dev G180 P0 Process footer Subpro stor :dir Subprogram name 25 Range of values 1 500 Range of values 2 500 E1 4 DETAILS OF CYCLE DATA D2 This chapter describes the definition files required for customization. To create a new definition file, use CRLF as the line feed code. 4.1 Cycle List Definition File Cycle list definition file defines the contents to be displayed on the cycle list window. There are cycle list definition files for machining center and for lathe. A1 Table 4.1 Cycle list definition file name Detail of customization Cycle list definition file Customization of cycle for the machining center list_ctm_m.xml Customization of cycle for the lathe system list_ctm.xml For details of Cycle ID of existing cycles, refer to “Interactive cycle insertion (cycle for machining center) specification manual” (BNP-C3072-121-0004) and “Interactive cycle insertion (cycle for lathe system)” (BNP-C3072-121-0002). 4.1.1 Specifications of cycle list definition file Cycle list definition file is described in XML format. Up to 25-KB file can be set. The following describes description rules (element and attribute of XML) of definition file. Element PCS_LIST CUSTOMIZE CTM_MENU_NAME DISP_NAME LIST_ITEM Table 4.2 Definition file elements Parent Meaning element*1 An element to show that this is a cycle list definition file. Defines the information displayed in the cycle list between these elements. If this element is not defined, cycle is not displayed. Defines the details of customization PCS_LIST (extract, rearrangement, and addition) An element to define a custom menu name. PCS_LIST Defines a custom menu name. CTM_MENU _NAME Defines the range of customization CUSTOMIZ information E <For cycle extraction> LIST_ITEM Defines the information of an extracting cycle between these elements. <For cycle rearrangement> Defines the information of a traveling cycle (origin and destination) between these elements. <For cycle addition> Defines the information of an adding cycle between these elements. However, if the cycle has child hierarchies, they should be included in the definition. ex.: Defining 3 hierarchies: <LIST_ITEM> <- 1st hierarchy <LIST_ITEM> <- 2nd hierarchy <LIST_ITEM> <- 3rd hierarchy </LIST_ITEM> </LIST_ITEM> </LIST_ITEM> If this element is not defined, cycle is not displayed. 26 Multidefinition*2 A3 Related attribute version × ○ cstm_type × ○ ○ lang - Element LIST_POS PCS_ID POS_TYPE DISP_NAME IMAGE_FILE PROCESS PRGOUT_NAME SCR_DEF_FILE PRG_DEF_FILE Meaning An element to indicate position information of the cycle list. <For cycle extraction> Defines the extracting cycle. <For cycle rearrangement> Defines the origin and destination of the traveling cycle. <For cycle addition> Defines the destination of the adding cycle. Defines Cycle ID. <when parent element is “LIST_POS”> Used as position information that indicates customization target. <when parent element is “LIST_ITEM”> Used as Cycle ID of the cycle to be added. If this element is not defined, cycle is not displayed. Defines the travel destination position of the existing cycle and adding destination position of the user cycle. For the Cycle ID specified with PCS_ID, specifies positions as follows: ・PREV: Add to the previous one ・NEXT: Add to the next ・CHILD_TOP: Add to the head of child hierarchy ・CHILD_END: Add to the end of child hierarchy This element needs to be defined together with PCS_ID. Defines the strings of cycle name. Defines the path of the cycle image file. Defines the details of cycle data. Defines cycle name to be output to the program. Defines the path of cycle edit screen definition file. Defines the path of program output definition file. Parent element*1 LIST_ITEM Multidefinition*2 Related attribute type × LIST_POS LIST_ITEM × - × - LIST_POS LIST_ITEM LIST_ITEM LIST_ITEM PROCESS PROCESS PROCESS ○ × × lang × - × - × - *1 The elements that could be parent elements are listed up in this column. *2 This column shows whether the element can be registered plurally right under its parent element. 27 - Element (Parent element) PCS_LIST CUSTOMIZE LIST_POS DISP_NAME (LIST_ITEM) DISP_NAME (CTM_MENU_NAME) Table 4.3 Attributes of cycle list definition file Related Meaning attribute version Defines the version of cycle list defintion file. cstm_type Defines the type of customization. EXT: Extract the cycle POS: Rearrange the cycle ADD: Add the cycle type Defines the position type in the cycle list. FROM: Travel origin when a cycle position changes TO: Travel destination when a cycle position changes lang Defines language No. of cycle name to be displayed on the cycle list window. <Language list> No. Language No. Language No. Language 0 English 16 Korean (Hangul) 23 Russian 1 Japanese 17 Portuguese 24 Turkish 11 German 18 Dutch 25 Czech 12 French 19 Swedish 26 Danish 13 Italian 20 Hungarian 27 Finnish 14 Spanish 21 Polish 15 Chinese (Traditional) 22 Chinese (Simplified) lang Defines language No. of customization menu name to be displayed on the selectable menus of cycle change menu. <Language list> No. Language No. Language No. Language 0 English 16 Korean (Hangul) 23 Russian 1 Japanese 17 Portuguese 24 Turkish 11 German 18 Dutch 25 Czech 12 French 19 Swedish 26 Danish 13 Italian 20 Hungarian 27 Finnish 14 Spanish 21 Polish 15 Chinese (Traditional) 22 Chine (Simplified) - 28 4.1.2 Description method of cycle list definition file This section explains description method of the cycle list definition file. (1) Common definition item The following table shows the common definition items that can be defined regardless of customization details. Table 4.4 Common definition items of cycle list definition file Definition item Version Definition method Specifies the character strings to indicate version. The strings must be up to 16 one-byte characters. They can be set freely. Range of values One-byte 1 to 16 characters Version is specified with attribute “version” of element “PCS_LIST”. [Definition example] <PCS_LIST version="BND-1234W567-A0A"> (Note 1) Characters which can be used are one-byte alphanumeric ('A' to 'Z', 'a' to 'z', and '0' to '9) and one-byte symbols ('!', '-', '*', etc.). (2) Definition items for each customization type (a) Adding cycles The following describes the definition items necessary for adding cycles to the cycle list window. Refer to 3.1.1 for the setting example. (i) Definition of the cycle list window Table 4.5 Definition items for cycle addition (Definition regarding the cycle list window) Definition item Definition method Customization type Defines "ADD" to the customization type. Custom menu name Defines the customization menu name to be displayed on the cycle change menu. Names can be switched to languages below, and it can be specified with the string for each language. <Language list> No. Language No. Language No. Language 0 English 16 Korean (Hangul) 23 Russian 1 Japanese 17 Portuguese 24 Turkish 11 German 18 Dutch 25 Czech 12 French 19 Swedish 26 Danish 13 Italian 20 Hungarian 27 Finnish 14 Spanish 21 Polish 15 Chinese (Traditional) 22 Chinese (Simplified) - Range of values ADD Customization type is specified with attribute “cstm_type” of element “CUSTOMIZE”. [Definition example] <CUSTOMIZE cstm_type="ADD"> One-byte 7*2 characters Custom menu name is specified to element “CTM_MENU_NAME”. Language No. is specified to attribute “lang” of element “DISP_NAME”. [Definition example] <CTM_MENU_NAME> <DISP_NAME lang="0">User</DISP_NAME> <DISP_NAME lang="1">ユーザ</DISP_NAME> </CTM_MENU_NAME> : Registered up to 19 languages (Note 1) When the string of language selected with NC are not registered, the strings of language No. 0 (English) are displayed. At that time, the custom menu will be blank if no strings are registered even to the language No.0. (Note 2) When custom menu name is not defined, the strings following will be displayed. <Default menu name> Menu No. Japanese English カスタム 3 custom 6 カスタム 1 custom1 カスタム 2 7 custom2 8 カスタム 3 custom3 カスタム 4 9 custom4 10 カスタム 5 custom5 (Note 3) If a two-byte character is defined in the location for the one-byte 7th character, characters on the menu will not be displayed properly. 29 A2 Adding destination Specifies the destination for cycle addition. Specifies the adding position with child elements “PCS_ID” and “POS_TYPE” of the parent element “LIST_POS”. There are following designation methods of adding destination. <POS_TYPE> CHILD_TOP CHILD_END PREV NEXT A1 < Add to the head of designated hierarchy> By designating "CHILD_TOP" to element “POS_TYPE”, a cycle can be added to the head of child hierarchy of the cycle designated with element “PCS_ID”. To add to 1st hierarchy, specify “0” to the element “PCS_ID”. [Definition example] ・Add to the head of 1st hierarchy <LIST_POS> <PCS_ID>0</PCS_ID> <POS_TYPE>CHILD_TOP</POS_TYPE> </LIST_POS> ・Add to the head of the child hierarchy of Cycle ID 510000 <LIST_POS> <PCS_ID>510000</PCS_ID> <POS_TYPE>CHILD_TOP</POS_TYPE> </LIST_POS> <Add to the end of designated hierarchy> By designating the "CHILD_END" to the element “POS_TYPE”, a cycle can be added to the end of child hierarchy of the cycle designated with the element “PCS_ID”. To add to 1st hierarchy, specify “0” to the element “PCS_ID”. [Definition example] ・Add to the end of 1st hierarchy <LIST_POS> <PCS_ID>0</PCS_ID> <POS_TYPE>CHILD_END</POS_TYPE> </LIST_POS> ・Add to the end of the child hierarchy of Cycle ID 610000 <LIST_POS> <PCS_ID>610000</PCS_ID> <POS_TYPE>CHILD_END</POS_TYPE> </LIST_POS> <Add to the front of designated cycle> By setting "PREV" to the element “POS_TYPE”, a cycle can be added before the cycle designated with the element “PCS_ID”. [Definition example] ・Add to the front of Cycle ID 710000 <LIST_POS> <PCS_ID>710000</PCS_ID> <POS_TYPE>PREV</POS_TYPE> </LIST_POS> <Add to the next to designated cycle> By setting "NEXT" to the element “POS_TYPE”, a cycle can be moved next to the cycle designated with the element “PCS_ID”. [Definition example] ・Move to the next to Cycle ID 710000 <LIST_POS> <PCS_ID>710000</PCS_ID> <POS_TYPE>NEXT</POS_TYPE> </LIST_POS> (Note 1) If adding destination is not specified, the cycle will not be added. (Note 2) If designated adding destination does not exist, the cycle will not be added. (Note 3) Cycle ID (<PCS_ID>) cannot be omitted. (Note 4) If the existing cycle, which is designated as an adding destination, is not extracted, the cycle will not be added. 30 A2 Cycle ID Specifies Cycle ID of cycle to be added to the cycle list. Specifies the Cycle ID to the element “PCS_ID”. [Definition example] <PCS_ID>510101</PCS_ID> (Note 1) Make sure to define Cycle ID to the cycles in the cycle list. If you omit the procedure, the item will not be displayed on the cycle list. (Note 2) If Cycle IDs overlap, the cycle defined first is prioritized. Consequently, the cycle edit window for the cycle defined first is displayed when you reedit the cycle. (Note 3) Make sure that the Cycle ID of user cycle does not overlap with that of existing cycles. If Cycle IDs overlap, reediting may not be executed properly. Cycle name Defines the cycle name to be displayed on the cycle list. The name can be switched to languages below, and it is specified with the string for each language. <Language list> No. Language No. Language No. Language 0 English 16 Korean (Hangul) 23 Russian 1 Japanese 17 Portuguese 24 Turkish 11 German 18 Dutch 25 Czech 12 French 19 Swedish 26 Danish 13 Italian 20 Hungarian 27 Finnish 14 Spanish 21 Polish 15 Chinese (Traditional) 22 Chinese (Simplified) - - One-byte 1 to 256 characters Specify the cycle name to the element “DISP_NAME”. Specify the language No. to the attribute “lang” of the element “DISP_NAME”. [Definition example] <DISP_NAME lang="0">DRILL</DISP_NAME> <DISP_NAME lang="1">ドリル</DISPNAME> : Registered up to 19 languages (Note 1) If the strings of language selected with NC are not registered, the strings of language No. 0 (English) will be displayed. At that time, the cycle name will be blank if no strings are registered even to the language No. 0. (Note 2) If cycle name is not defined, the cycle name will be blank. Cycle image Defines the path of cycle list display file with relative path from the path that cycle list definition file exists. Definition of file name is unnecessary. File format used as the cycle image is as follows. ・JPEG file Specify the cycle image to the element “IMAGE_FILE”. [Definition example] <IMAGE_FILE>1T-H¥1Dr¥</IMAGE_FILE> (Note 1) If the path designation is illegal, the cycle image will not be displayed on the cycle list window. (Note 2) If the cycle image is oversized, the entire cycle image will not be displayed. (Note 3) If cycle image is not defined, the cycle image will not be displayed. (Note 4) Path of the cycle list display file must be 22 characters. If it is 23 characters or more, default image will be displayed in the cycle list window. 31 - A1 (ii) Definition of the cycle edit window The following definition items are defined to the attribute of element “PROCESS” and its child elements. Table 4.6 Definition items for cycle addition (Definition of the cycle edit window) Definition item Definition method Cycle name for Defines when to change the cycle name which is output to the program. program output Specify the cycle name for program output to the element “PRGOUT_NAME”. [Definition example] <PROCESS> <PRGOUT_NAME>HOLE-DR</PRGOUT_NAME> </PROCESS> Range of values One-byte 1 to 256 characters If this item is not specified, the string connected the cycle names in English, which are in the each hierarchy of the cycle list, with a hyphen ('-') will be output to the program as the cycle name. Ex.: Cycle name in the cycle list (English) Cycle name for program output 1st hierarchy 2nd hierarchy 3rd hierarchy TURN GROOVE OUT TURN-GROOVE-OUT Cycle edit screen definition file (Note 1) Available characters are one-byte alphanumeric ('A' to 'Z', 'a' to 'z', and '0' to '9') and one-byte symbols ('!', '-', '*', etc.). (Note 2) Only when you designate '<NAME>' with program output definition file, cycle name for program output is output to the program. Specifies the path of cycle edit screen definition file with relative path from the path which cycle list definition file exists. Specify the cycle edit screen definition file to the element “SCR_DEF_FILE”. [Definition example] <PROCESS> <SCR_DEF_FILE>1T-H¥1Dr¥ScrnProc.xml</SCR_DEF_FILE> </PROCESS> - (Note 1) If the cycle edit screen definition file is not specified and a cycle is selected from the cycle list, the cycle edit window does not open. Program output definition file Specifies the path of program output definition file with relative path from the path which cycle list definition file exists. Specifies the program output definition file to the element “PRG_DEF_FILE”. [Definition example] <PROCESS> <PRG_DEF_FILE>1T-H¥1Dr¥PrgProc.prg</PRG_DEF_FILE> </PROCESS> (Note 1) If the program output definition file is not specified, an error occurs when the program is output in the cycle edit window. 32 - (b) Extracting cycles The following describes necessary definition items to display the extracted cycles on the cycle list window. Refer to 3.2.1 for the setting example. Table 4.7 Definition items for cycle extraction Definition item Definition method Range of values Customization Defines "EXT" to the customization type. EXT type Customization type is specified with attribute “cstm_type” of the element “CUSTOMIZE”. [Definition example] <CUSTOMIZE cstm_type="EXT"> Extraction Specifies the Cycle ID of the cycle to be extracted. - cycle Extracted cycles are specified with the child element “PCS_ID” of the parent element “LIST_POS”. A1 [Definition example] ・Extract the cycle of Cycle ID 510000 <LIST_POS> <PCS_ID>510000</PCS_ID> </LIST_POS> (Note 1) If a non-existent cycle ID is specified, the cycle will not be extracted. (Note 2) If customization is performed, the cycles that are not extracted will not be displayed. 33 A2 (c) Rearranging cycles The following describes necessary definition items to rearrange cycles displayed on the cycle list window. Refer to 3.5 for the setting example. Table 4.8 Definition items for cycle rearrangement Definition item Definition method Range of values Customization Defines "POS" to the customization type. POS type Customization type is specified with attribute “cstm_type” of the element “CUSTOMIZE”. [Definition example] <CUSTOMIZE cstm_type="POS"> Movement of cycle Movement destination position Specifies the Cycle ID of the cycle in travel origin. Specifies "FROM" to attribute “type” of the element “LIST_POS”. The cycle in the travel origin is specified with child element “PCS_ID” of the parent element “LIST_POS”. [Definition example] ・Moving the cycle of Cycle ID 510000 <LIST_POS type="FROM"> <PCS_ID>510000</PCS_ID> </LIST_POS> (Note 1) If a non-existent cycle ID is specified, the cycle will not be moved. (Note 2) When an existing cycle is moved, cycle to be moved should be extracted. If a Cycle ID specified is the ID for a cycle that is not extracted, the cycle will not be moved. Specifies the movement destination. Specifies "TO" to attribute “type” of the element “LIST_POS”. Specifies the movement destination position with child elements “PCS_ID” and “POS_TYPE” of the parent element “LIST_POS”. There are following designation methods for the movement destination. <Move to the head of designated hierarchy> By designating "CHILD_TOP" to the element “POS_TYPE”, a cycle is moved to the head of child hierarchy of the cycle designated with the element “PCS_ID”. To add to 1st hierarchy, specify “0” to the element “PCS_ID”. [Definition example] ・Move to the head of 1st hierarchy <LIST_POS type="TO"> <PCS_ID>0</PCS_ID> <POS_TYPE>CHILD_TOP</POS_TYPE> </LIST_POS> ・Move to the head of child hierarchy of Cycle ID 510000 <LIST_POS type="TO"> <PCS_ID>510000</PCS_ID> <POS_TYPE>CHILD_TOP</POS_TYPE> </LIST_POS> <Move to the end of designated hierarchy> By designating "CHILD_END" to the element “POS_TYPE”, a cycle is moved to the end of child hierarchy of the cycle designated with the element “PCS_ID”. To add to 1st hierarchy, specify “0” to the element “PCS_ID”. [Definition example] ・Move to the end of 1st hierarchy <LIST_POS type="TO"> <PCS_ID>0</PCS_ID> <POS_TYPE>CHILD_END</POS_TYPE> </LIST_POS> ・Move to the end of child hierarchy of Cycle ID 610000 <LIST_POS type="TO"> <PCS_ID>610000</PCS_ID> <POS_TYPE>CHILD_END</POS_TYPE> </LIST_POS> 34 - A1 A2 <POS_TYPE> CHILD_TOP CHILD_END PREV NEXT A1 <Move to the front of designated cycle> By setting "PREV" to the element “POS_TYPE”, a cycle is moved before the cycle designated with “PCS_ID”. [Definition example] ・Move to one previous to Cycle ID 710000 <LIST_POS type="TO"> <PCS_ID>710000</PCS_ID> <POS_TYPE>PREV</POS_TYPE> </LIST_POS> <Move to the next to the designated cycle> By setting "NEXT" to the element “POS_TYPE”, a cycle is moved next to the cycle designated with the element “PCS_ID”. [Definition example] ・Move to next to Cycle ID 710000 <LIST_POS type="TO"> <PCS_ID>710000</PCS_ID> <POS_TYPE>NEXT</POS_TYPE> </LIST_POS> (Note 1) If a non-existent movement destination is specified, the cycle will not be moved. (Note 2) Cycle ID (<PCS_ID>) cannot be omitted. (Note 3) When a Cycle ID of the existing cycles is specified as movement destination, the cycle of the movement destination should be extracted. If the cycle is not extracted, the specified cycle will not be moved correctly. 35 A2 4.2 Cycle Edit Screen Definition File Cycle edit screen definition file defines the details displayed on the cycle edit window. 4.2.1 Specifications of cycle edit screen definition file Cycle edit screen definition file is described in the XML format. Up to 50-KB file can be set. The following describes description rules of definition file (element and attribute of XML). Table 4.9 Definition file elements Parent MultiElement Meaning element*1 definition*2 SCREEN_DEF Defines the information about display of cycle data edit screen. If this element is not defined, × “Cycle format illegal” occurs even if a cycle is selected, and the cycle edit screen will not be displayed. IMAGE_FILE Defines the path of image file for guide SCREEN_DEF × drawing. FREE_SHAPE Defines the information of arbiterary shape SCREEN_DEF × SET_ITEM Defines the range of setting item data. If this SCREEN_DEF element is not defined, “Cycle format illegal” ○ occurs even when a cycle is selected, and the cycle edit screen will not be displayed. SUBPRO_OUT Defines whether to display subprogram output SCREEN_DEF setting data. 0: Not display × 1: Display subprogram output setting data This element can be omitted. When omitted, defaults to “Not display” GUIDE_DIR Defines the folder that stores the guide SCREEN_DEF drawing file to be displayed in the Cycle edit window. This is valid for all the displayed setting items. ○ If this element is not defined, Blue/Gray folder is used. Folders directly in Blue/Gray folder are not used. *See Figure 2.1 Folder structure of cycle data Defines the folder that stores the guide SET_ITEM drawing file to be displayed in the Cycle edit window. This is only valid for the defined setting items. ○ When defined with SCREEN_DEF, the definition in SET_ITEM is prioritized. If this element is not defined, the definition in SCREEN_DEF is used.. *See Figure 2.1 Folder structure of cycle data DISP_NAME Defines the name of setting items to be SET_ITEM × displayed on the screen. DATA_TYPE Defines the data type. SET_ITEM 0: Integer × 1: Real data type RANGE_MIN Defines the minimum value. SET_ITEM × RANGE_MAX Defines the maximum value. SET_ITEM × DEFAULT Defines the initial value. SET_ITEM × DISP_STYLE Defines the display format of data. SET_ITEM The value differs depending on the data type. <For integer> 0: displays in decimal × 1: displays in hex 2: displays in binary <For real data type> n.m (n = Digits of integer part, m = Digits of decimal part) 36 A3 Related attribute version status item_no E1 - dir E2 dir lang - - INCH_MM HELP EMPTY_ACT READ_ONLY Defines whether to swtich inch/metric. If the specified data type is other than real data type, this definition is unnecessary. Defines the help strings to display on the screen. Defines the operation when a program is output while the data is blank. Defines whether to be settable or not for the cycle data of this setting item. <For value designation> 0: settable 1: unsettable SET_ITEM × SET_ITEM SET_ITEM HIDE 37 × - × - × - × - SET_ITEM <Conditional expression designation> When condition satisfies: hide When condition does not satisfy: show [Definition example] When conditional expression is S1 = 1: If the value of S1 is “1”, it is regarded that condition satisfies. If the value of S1 is other than “1”, it is regarded condition does not satisfy. MENU_SEL Defines the presence or absence of menu selection. 0: Menu selection invalid 1: Menu selection valid MENU_ITEM Defines the range of menu selection data DISP_NAME Defines the menu names to be displayed on the screen SET_DATA Defines the values to be set by menu selection MAX_CNT_NUM Defines the maximum number of registration blocks for arbitrary shape HOR_AX_NAME Defines the horizontal axis name which composes the arbitrary shape plane VER_AX_NAME Defines the vertical axis name which composes the arbitrary shape plane INPUT_DIA_AX Defines that an axis which composes the plane for an arbitrary shape input is either diameter axis or radius axis. 0: Horizontal axis = radius axis, vertical axis = radius axis 1: Horizontal axis = diameter axis, vertical axis = radius axis 2: Horizontal axis = radius axis, vertical axis = diameter axis 3: Horizontal axis = diameter axis, vertical axis = diameter axis lang SET_ITEM <For conditional expression designation> When condition satisfies: unsettable When condition not satisfies: settable [Definition example] When conditional expression is S1 = 1: If the value of S1 is “1”, it is regarded that condition satisfies. If the value of S1 is other than “1”, it is regarded that condition does not satisfy. Defines whether to show or hide each data of this setting item <For value designation> 0: show 1: hide × - SET_ITEM SET_ITEM MENU_ITEM ○ MENU_ITEM FREE_SHAPE × - × - × - × - × - FREE_SHAPE FREE_SHAPE × menu_no lang FREE_SHAPE INPUT_DIR_AX PRG_DIA_AX PRG_DIR_AX DRAW_DIA_AX DRAW_DIR_AX Defines the direction of an axis which composes the plane for an arbitrary shape input. 0: Horizontal axis = right direction+, vertical axis = upper direction+ 1: Horizontal axis = left direction+, vertical axis = upper direction+ 2: Horizontal axis = right direction+, vertical axis = lower direction+ 3: Horizontal axis = left direction+, vertical axis = lower direction+ Defines the direction of an axis which composes the plane for program output of an arbitrary shape. 0: Horizontal axis = right direction+, vertical axis = upper direction+ 1: Horizontal axis = left direction+, vertical axis = upper direction+ 2: Horizontal axis = right direction+, vertical axis = lower direction+ 3: Horizontal axis = left direction+, vertical axis = lower direction+ Defines the direction of an axis which composes the plane for program output of an arbitrary shape. 0: Horizontal axis = right direction+, vertical axis = upper direction+ 1: Horizontal axis = left direction+, vertical axis = upper direction+ 2: Horizontal axis = right direction+, vertical axis = lower direction+ 3: Horizontal axis = left direction+, vertical axis = lower direction+ Defines that an axis which composes the plane for drawing an arbitrary shape is either diameter axis or radius axis. 0: Horizontal axis = radius axis, vertical axis = radius axis 1: Horizontal axis = diameter axis, vertical axis = radius axis 2: Horizontal axis = radius axis, vertical axis = diameter axis 3: Horizontal axis = diameter axis, vertical axis = diameter axis Defines the direction of an axis which composes the plane for drawing an arbitrary shape. 0: Horizontal axis = right direction+, vertical axis = upper direction+ 1: Horizontal axis = left direction+, vertical axis = upper direction+ 2: Horizontal axis = right direction+, vertical axis = lower direction+ 3: Horizontal axis = left direction+, vertical axis = lower direction+ FREE_SHAPE × - × - × - × - × - FREE_SHAPE FREE_SHAPE FREE_SHAPE FREE_SHAPE *1 The elements that could be parent elements are listed up in this column. *2 This column shows whether the element can be registered plurally right under its parent element. 38 Table 4.10 Attributes of definition file Element SCREEN_DEF GUIDE_DIR Related attribute version dir DISP_NAME HELP lang SET_ITEM MENU_ITEM FREE_SHAPE item_no menu_no status Meaning Defines the version of definition file Define the name of the folder storing guide drawing files located directly under the Blue/Gray folder. Defines the language No. of the name displayed on the screen <Language list> No. Language No. Language No. Language 0 English 16 Korean (Hangul) 23 Russian 1 Japanese 17 Portuguese 24 Turkish 11 German 18 Dutch 25 Czech 12 French 19 Swedish 26 Danish 13 Italian 20 Hungarian 27 Finnish 14 Spanish 21 Polish 15 Chinese (Traditional) 22 Chinese (Simplified) Defines the numbers to identify setting items. Defines the menu number to allocate the selectable menu. Defines the presence or absence of arbitrary shape data. 0: Without arbitrary shape 1: With arbitrary shape 39 E2 4.2.2 Description method of cycle edit screen definition file The following describes description methods of the cycle edit screen definition file. Refer to 3.2 for the setting example. (1) Common definition item The following table shows the common definition items that can be defined regardless of customization details. Table 4.11 Common definition items for the cycle edit screen definition file Definition item Definition method Range of values Version Specifies the strings which indicate the version. One-byte 1 to 16 characters The strings must be up to one-byte of 16 characters. They can be set freely. Version is specified with attribute “version” of the element “SCREEN_DEF”. [Definition example] <SCREEN_DEF version="BND-1234W567-A0A"> Guide drawing (Note 1) Available characters are one-byte alphanumeric ('A' to 'Z', 'a' to 'z', and '0' to '9') and one-byte symbols ('!', '-', '*', etc.). Specifies the path of guide drawing display file with the relative path based on One-byte the folder located the cycle list definition file. 1 to 256 characters Fine name is unnecessary. Guide drawing is specified to the element “IMAGE_FILE”. [Definition example] <IMAGE_FILE>STANDARDCTM¥1T-H¥1Dr¥1F¥</IMAGE_FILE> Presence or absence of arbitrary shape (Note 1) If guide drawing settings are not specified, the guide drawing will not be displayed. Specifies the presence or absence of arbitrary shape data. 0 to 1 0: Without arbitrary shape 1: With arbitrary shape When “With arbitrary shape” is specified, Arb Shape menu is displayed in the cycle edit window and the screen can be switched to the arbitrary shape edit window. The presence or absence of arbitrary shape is specified with attribute “status” of the element “FREE_SHAPE”. [Definition example] <FREE_SHAPE status="1"> ・・・ </FREE_SHAPE> Cycle edit window Arbitrary shape edit window Select Arb Shape menu (Note 1) If the presence or absence of arbitrary shape is not specified, automatically “0: Without arbitrary shape” is specified and Arb Shape menu will not be displayed. 40 Guide drawing file specification Define the folder that stores the guide drawing file to be displayed on the cycle edit window. *See Figure 2.1. Folder structure of cycle data. E2 (1) Folder name Specify the string that represents the folder name in the attribute “dir” of the element “GUIDE_DIR”. Any string up to 16 characters long (half-width) can be set. (1) 1 to 16 characters (half-width) (2) Criterion Set the criterion whether to use the Blue/Gray folder or a folder specified in attribute as a number or conditional expression in the element “GUIDE_DIR”. ・Setting with a number 0: Blue/Gray folder 1: Folder defined in attribute ・Setting with a conditional expression Condition is TRUE: Folder defined in attribute Condition is FALSE: Blue/Gray folder (2) 0 to 1, or conditional expression *1 [Example of definition (Setting with a number)] <GUIDE_DIR dir="ABC1">1</GUIDE_DIR> [Example of definition (Setting with a conditional expression)] <GUIDE_DIR dir="ABC1"><![CDATA[S1=1]]></GUIDE_DIR> <GUIDE_DIR dir="ABC2"><![CDATA[S1=2]]></GUIDE_DIR> Notes: 1: The valid characters are half-width alphabets and numbers (A-Z, a-z, 0-9) and half-width symbols except ¥, /, : , ? , ", <, >, |. 2: If no guide drawing file is specified, the guide drawing files in Blue/Gray folders are used. 3: If the format used for setting with a conditional expression is not correct, the guide drawing files in Blue/Gray folders are used. 4: For setting with a conditional expression, every time the value of the data identifier (e.g. S1) used in the conditional expression varies, the result of the conditional expression is reflected in the guide drawing file specification. 5: When multiple expressions are defined for guide drawing file specification, the values are determined from the first expression. The first definition for which the condition is TRUE is applied. *1: Conditional expressions must be within a CDATA section (in XML format). <![CDATA[(conditional expression)]]> For details of conditional expression, see 4.3.3 Conditional expression 41 E2 (2) Definition items for setting items The following describes necessary definition items to display the setting items on the cycle edit window. The following definition items are defined to the attribute and child element of the element “SET_ITEM”. Table 4.12 Definition items for the setting items Definition item Setting item no. Definition method Range of values Defines numbers to identify the setting items. When the value of the setting items are output to a program, specify these numbers with the program output definition file. Cycle edit window 1 to n Program output definition file Setting item no. G0X<D101>Z<D102> G1X<D11>Z<D12>F<D13> Specify the data output location Setting item no. is specified to attribute “item_no” of the element “SET_ITEM”. [Definition example] <SET_ITEM item_no="1"> (Note 1) Do not define the same setting item no. in a cycle edit screen definition file. If the same setting item no. is defined several times, the details defined first are prioritized. (Note 2) These do not indicate the order of the setting items displayed. The setting items are displayed according to the order of the setting items defined. Cycle edit screen definition file Definition order of setting items X axis initial pos X Z axis initial pos Z X axis pos X Z axis pos A Feedrate Setting item no. 101 102 11 12 13 Cycle edit window Screen display (Note 3) Setting item no. does not must be sequential number. Item name Specifies the strings to be displayed in the setting item name field. Name can be switched to languages below, and it can be specified with the string for each language. <Language list> No. Language No. Language No. Language 0 English 16 Korean (Hangul) 23 Russian 1 Japanese 17 Portuguese 24 Turkish 11 German 18 Dutch 25 Czech 12 French 19 Swedish 26 Danish 13 Italian 20 Hungarian 27 Finnish 14 Spanish 21 Polish 15 Chinese (Traditional) 22 Chinese (Simplified) Item names are specified to the element “DISP_NAME”. Language No. is specified to the attribute “lang” of the element “DISP_NAME”. [Definition example] <DISP_NAME lang="0">CUT AMOUNT</DISP_NAME> <DISP_NAME lang="1">切込み量</DISP_NAME> : Registered up to 19 languages (Note 1) If strings of language selected with NC are not registered, strings of language No. 0 (English) are displayed. At that time, the name of setting item will be blank if no strings are registered to language No. 0. (Note 2) If item names are not specified, the setting item name will be blank. 42 One-byte 1 to 256 characters Data type Selects and specifies the data type for setting items. 0: Integer 1: Real data type 0 to 1 Data type is specified with “DATA_TYPE”. [Definition example] <DATA_TYPE>1</DATA_TYPE> (Note 1) If Data type setting is not specified, the data type will be integer. Range of values Specifies the setting range of setting items. Details to be specified differ depending on the data type. ・Integer and real data type: Specify the minimum value and maximum value in decimal. <Integer> -99999999 to 99999999 The minimum value is specified to the element “RANGE_MIN”. The maximum value is specified to the element “RANGE_MAX”. [Definition example] <RANGE_MIN>-99999.999</RANGE_MIN> <RANGE_MAX>99999.999</RANGE_MAX> <Real data type> -99999.999999 to 99999.999999 (Note 1) When you set maximum value or minimum value, specify in mm for the data with inch/metric switchover. (Note 2) If setting range is not specified, data range check will not be conducted at the time of data settings. (If you specify either maximum value or minimum value, the range will be checked only for the one you specified.) Initial value Specifies the initial values of setting items (the values originally set when a new cycle is inserted). Details to be specified differ depending on the data type. ・Integer and real data type: specify the value Values within the definition item “setting range” The initial value is specified to the element “DEFAULT”. [Definition example] <DEFAULT>0.000</DEFAULT> (Note 1) If the initial value is not specified, data will be blank when a cycle is inserted. Refer to the field of definition item “Blank setting operation” for the behavior when a program, whose data is blank, is output. Display format Specifies the display format of setting items. Details to be specified differ depending on the data type. ・Integer: 0 = displays in decimal, 1 = displays in hex, 2 = displays in binary ・Real data type: digits of integer part, digits of decimal part in the format of n.m (n = digits of integer part, m = digits of decimal part) Display format is specified to the element “DISP_STYLE”. [Definition example] <DISP_STYLE>5.3</DISP_STYLE> *An example when you specify the digits of integer part = 5, digits of decimal part = 3 for the data of real data type: (Note 1) If display format setting is omitted when integer is specified, the setting items will be displayed in decimal. (Note 2) If display format setting is omitted when real data type is specified, the number of digits will be according to the settings of input setting unit parameter “#1003 iunit” and initial inch parameter “#1041 I_inch”. If display digit is specified to follow both “#1003 iunit” and “#1041 I_inch”, the digits will be as follows based on the setting combination. #1003 iunit #1041 I_inch Digits of integer part Digits of decimal part 0 5 3 1 4 4 0 5 4 C 1 4 5 0 5 5 D 1 4 6 0 5 6 E 1 4 7 *Whether to follow the setting of parameter is specified with the setting item “inch/metric switchover”. (Note 3) Even if you set the number of digits which exceeds the NC’s control unit parameter “#1004 ctrl_unit”, input value will be output to the program with the number of digits you specified. (Value of digit which exceeds the control unit will be ignored at the time of operation.) (Note 4) Display position of input value is right-aligned for any display format. B 43 <Integer> 0 to 2 <Real data type> Integer part: 1 to 5 Decimal part: 1 to 7 Inch/metric switchover Specifies whether to switch display digits of setting items to inch or mm. This is specified when data type is real data type. 0: Not switch 1: Switch 0 to 1 Inch/metric switchover is specified to the element “INCH_MM”. [Definition example] <INCH_MM>1</INCH_MM> Help (Note 1) If setting of inch/metric switchover is omitted, the setting will be “0: Not switch”. (Note 2) Inch/metric switchover designation for data type other than real data type will be ignored. Specifies the strings to be displayed as Help of setting item. Language of Help can be switched, and the strings are specified for each language. <Language list> No. Language No. Language No. Language 0 English 16 Korean (Hangul) 23 Russian 1 Japanese 17 Portuguese 24 Turkish 11 German 18 Dutch 25 Czech 12 French 19 Swedish 26 Danish 13 Italian 20 Hungarian 27 Finnish 14 Spanish 21 Polish 15 Chinese (Traditional) 22 Chinese (Simplified) One-byte 1 to 256 characters Help is specified to the element “HELP”. Language No. is specified to attribute “lang” of the element “HELP”. [Definition example] <HELP lang="0">Workpiece top surface</HELP> <HELP lang="1">加工上面位置</HELP> : Registered up to 19 languages Blank setting operation (Note 1) If the strings of language selected with NC are not registered, strings of language No. 0 (English) will be displayed. At that time, if no strings are registered to language No. 0, Help is not displayed. (Note 2) If Help setting is omitted, the Help will not be displayed. Specifies the operation when a program is output while data is blank. 0 to 3 0: Same operation as when the setting is omitted 1: Error 2: Output the data to the program as '?' 3: Data is not output to the program Blank setting operation is specified to the element “EMPTY_ACT”. [Definition example] <EMPTY_ACT>1</EMPTY_ACT> Menu selection (Note 1) If the setting of blank setting operation is omitted, an error occurs at the time of program output. (Note 2) When data is not output to the program, words including the data are not output. (Note 3) When data is output to the program as '?', an error occurs when the program operates. Specifies whether to select the data by menu. 0: Menu selection invalid 1: Menu selection valid If data selection by menu is valid, specify the setting items for each selectable menu. Menu selection is specified to the element “MENU_SEL”. [Definition example] <MENU_SEL>0</MENU_SEL> (Note 1) If the menu selection is not defined, it is regarded that menu selection is invalid. 44 0 to 1 Setting invalid designation Defines whether to be settable or unsettable for the cycle data. <For value designation > 0: Settable 1: Unsettable 0 to 1 or conditional expression *1 <For conditional expression designation> Example of conditional expression: S1=1 When the condition satisfies: Unsettable When the condition does not satisfy: Settable [Definition example] When conditional expression is S1=1: If the value of S1 is1, it is regarded the condition satisfies. If the value of S1 is other than 1, It is regarded the condition does not satisfy. Presence or absence of the setting invalid is specified to the element “READ_ONLY”. [Definition example (value designation) ] <READ_ONLY>1</READ_ONLY> [Definition example (conditional expression designation) ] <READ_ONLY><![CDATA[S1=1]]></READ_ONLY> Hide designation (Note 1) If you omit presence or absence of the setting invalid, the setting invalid designation will be “0: Settable”. (Note 2) Setting invalid designation will be “0: Settable” in the following 2 cases: - if the value is other than 0 or 1 when value designation is specified - If format of conditional expression is illegal when conditional expression designation is specified (Note 3) For conditional expression designation, result of the conditional expression will be reflected to the setting invalid designation every time a value of data identifier using conditional expression (Ex: S1) changes. Defines whether to show or hide the setting item of each data. <For value designation> 0: Show 1: Hide 0 to 1 or conditional expression *1 <For conditional expression designation> Example of conditional expression: S1 = 1 When condition satisfies (Ex: the value of S1 is 1): hide When condition does not satisfy: show [Definition example] When conditional expression is S1 = 1: If the value of S1 is 1, it is regarded that condition satisfies. If the value of S1 is other than 1, it is regarded that condition does not satisfy. Hide designation is specified to the element “HIDE”. [Definition example (value designation) ] <HIDE>1</HIDE> [Definition example (conditional expression designation)] <HIDE><![CDATA[S1=1]]></HIDE> Guide drawing folder specification (Note 1) If this designation is omitted, the setting will be “0: show”. (Note 2) Hide designation is regarded as “show” in the following 2 cases. - if the value is other than 0 or 1 when value designation is specified - If format of conditional expression is illegal when conditional expression designation is specified (Note 3) For conditional expression designation, result of conditional expression will be reflected to the hide designation every time a value of data identifier using conditional expression (Ex: S1) changes. Defines the folder that stores the guide drawing files to be displayed on the cycle edit window. *See Figure 2.1 Folder structure of cycle data (Note 1) For details on how to define and the range of values, see (1) Common definition item *1 Conditional expressions must be within a CDATA section (in XML format). <![CDATA[(conditional expression)]]> For details of conditional expressions see 4.3.3 Conditional expression. 45 E2 (3) Definition items for selectable menu setting items The following describes necessary definition items for the setting items in the cycle edit window. The following definition items are defined to attribute and child element of the element “MENU_ITEM”. *For the following definition items, “1: Menu selection valid” must be specified to the “MENU_SEL”. Setting item Menu No. Table 4.13 Definition items for each selectable menu Definition method Specifies the position of the menu. Range of values 1 to 12 A3 Menu No. is specified to attribute “menu_no” of the element “MENU_ITEM”. [Definition example] <MENU_ITEM menu_no="1"> Menu name (data name) (Note 1) If the same menu No. is defined several times, the details defined first will be prioritized. (Note 2) Menu No. which is not defined will be the blank menu. (Note 3) If 1 to 5 are specified, they will be displayed as the 1st to 5th menus from the left side of the 1st page. Similarly, if 6 to 10 are specified, they will be displayed as the 6th to 10th menus in the 2nd page, and if 11 to 12 are specified, they will be displayed as the 11th and 12th menus in the 3rd page. Specifies the menu and its name to display in the data field. One-byte 7*2 Names can be switched to languages, and they can be specified with the characters string for each language. Menu name is specified to the element “DISP_NAME”. Language No. is specified to attribute “lang” of the element “DISP_NAME”. [Definition example] <DISP_NAME lang="0">ROUGH</DISP_NAME> <DISP_NAME lang="1">荒加工</DISP_NAME> : Registered up to 19 languages Setting value (Note 1) If stings of the language selected with NC are not registered, strings of language No. 0 (English) will be displayed. At that time, if no stirngs are registered to language No. 0, menu and data field will be blank. (Note 2) If name settings are omitted, menu and data field will not be displayed. (Note 3) If two-byte character is defined to the position for the 7th one-byte character, the character will not be displayed properly on the menu. Specifies the value set by menu selection. The value specified here will be saved to the program. Setting value is specified to the element “SET_DATA”. [Definition example] <SET_DATA>1</SET_DATA> (Note 1) If setting value is not specified, the applicable menu will be invalid. (Note 2) Specify the values which fall within the setting range. If you specify a value outside the setting range, an error occurs when the menu is selected. 46 Value within the setting range (4) Definition item of arbitrary shape The following describes necessary definition items for changing the display setting in the arbitrary shape edit window. Definition items below are defined to the child element of the element “FREE_SHAPE”. Table 4.14 Definition items for arbitrary shape Definition item Max. number of registration blocks for arbitrary shape Details Specifies the maximum number of registration blocks for arbitrary shape. The maximum number of registration blocks is specified to the element “MAX_CNT_NUM”. [Definition example] <MAX_CNT_NUM>50</MAX_CNT_NUM> Range of values 1 to 100 (Note 1) If setting of maximum number of registration blocks for arbitrary shape is omitted, the setting value will be 100. Axis name for Specifies the axis which composes the plane for arbitrary shape input in a user cycle. arbitrary shape Specify the two axes names for horizontal and vertical direction. Specify the same axis name as the axis name parameter “#1013 axname”. The axis name you set will be used for the following purpose. ・Displayed as setting item name of the arbitrary shape edit window ・Output to the program as an axis address of arbitrary shape command One-byte 1 character X,Y,Z, U,V,W, A,B,C Axis name is specified with the element “HOR_AX_NAME” (horizontal axis) or “VER_AX_NAME” (vertical axis). [Definition example] <HOR_AX_NAME>Z</HOR_AX_NAME> <VER_AX_NAME>X</VER_AX_NAME> (Note 1) If axis name setting is omitted, the setting will be as follows: ・Machining center system: Horizontal axis=X, vertical axis=Y ・Lathe system: Horizontal axis=Z, vertical axis=X (Note 2) Do not specify the same axis name as the increment command of axis name parameter “#1014 incax”. If you specify the increment command of axis name, machining will not be proper because the machining position designated by absolute position will be given as increment position. (Note 3) If a non-existing axis name is specified, an error occurs at the time of program operation. Diameter Specifies that an axis which composes the plane for arbitrary shape input with a user axis/radius axis cycle is either diameter axis or radius axis. for 0: Horizontal axis = radius axis, vertical axis = radius axis arbitrary shape 1: Horizontal axis = diameter axis, vertical axis = radius axis (for input) 2: Horizontal axis = radius axis, vertical axis = diameter axis 3: Horizontal axis = diameter axis, vertical axis = diameter axis 0 to 3 Diameter axis and radius axis are specified to the element “INPUT_DIA_AX”. [Definition example] <INPUT_DIA_AX>1</INPUT_DIA_AX> (Note 1) If diameter axis or radius axis is not specified, the operation will be as follows. ・Machining center: 0 (Horizontal axis = radius axis, vertical axis = radius axis) ・Lathe: 2 (Horizontal axis = radius axis, vertical axis = diameter axis) Axis direction for arbitrary shape (input) Specifies the direction of an axis which composes the plane for arbitrary shape input with a user cycle. 0: Horizontal axis = right direction+, vertical axis = upper direction+ 1: Horizontal axis = left direction+, vertical axis = upper direction+ 2: Horizontal axis = right direction+, vertical axis = lower direction+ 3: Horizontal axis = left direction+, vertical axis = lower direction+ Axis direction is specified with the element “INPUT_DIR_AX”. [Definition example] <INPUT_DIR_AX>2</INPUT_DIR_AX> (Note 1) If axis direction is not specified, the operation will be as follows. ・Machining center system: 0 (horizontal axis = right direction+, vertical axis = upper direction+) ・Lathe system: 0 (horizontal axis = right direction+, vertical axis = upper direction+) 47 0 to 3 Diameter Specifies that an axis, which composes the plane for program output of an arbitrary axis/radius axis shape with a user cycle, is either diameter axis or radius axis. for 0: Horizontal axis = radius axis, vertical axis = radius axis arbitrary shape 1: Horizontal axis = diameter axis, vertical axis = radius axis (program) 2: Horizontal axis = radius axis, vertical axis = diameter axis 3: Horizontal axis = diameter axis, vertical axis = diameter axis 0 to 3 Diameter axis/radius axis is specified to the element “PRG_DIA_AX”. [Definition example] <PRG_DIA_AX>1</PRG_DIA_AX> (Note 1) If diameter axis/radius axis is not set, the operation will be as follows. ・Machining center system: 0 (Horizontal axis = radius axis, vertical axis = radius axis) ・Lathe system: 2 (Horizontal axis = radius axis, vertical axis = diameter axis) Axis direction for arbitrary shape (program) Specifies the direction of axis which composes the plane for program output of an arbitrary shape with a user cycle. 0: Horizontal axis = right direction+, vertical axis = upper direction+ 1: Horizontal axis = left direction+, vertical axis = upper direction+ 2: Horizontal axis = right direction+, vertical axis = lower direction+ 3: Horizontal axis = left direction+, vertical axis = lower direction+ 0 to 3 Axis direction is specified to the element “PRG_DIR_AX”. [Definition example] <PRG_DIR_AX>2</PRG_DIR_AX> (Note 1) If axis direction is not set, the operation will be as follows. ・Machining center system: 0 (Horizontal axis = right direction+, vertical axis = upper direction+) ・Lathe system: 0 (Horizontal axis= right direction+, vertical axis = upper direction+) Diameter Specifies that an axis, which composes the plane for drawing an arbitrary shape with a axis/radius axis user cycle, is either diameter axis or radius axis. 0: Horizontal axis = radius axis, vertical axis = radius axis for 1: Horizontal axis = diameter axis, vertical axis = radius axis arbitrary shape 2: Horizontal axis = radius axis, vertical axis = diameter axis (drawing) 3: Horizontal axis = diameter axis, vertical axis = diameter axis 0 to 3 Diameter axis/radius axis is specified with the element “DRAW_DIA_AX”. [Definition example] <DRAW_DIA_AX>1</DRAW_DIA_AX> (Note 1) If setting for diameter axis/radius axis is omitted, the operation will be as follows. ・Machining center system: 0 (Horizontal axis = radius axis, vertical axis = radius axis) ・Lathe system: 2 (Horizontal axis = radius axis, vertical axis = diameter axis) Axis direction for arbitrary shape (drawing) Specifies the direction of axis which composes the plane for drawing an arbitrary shape 0 to 3 with a user cycle. 0: Horizontal axis = right direction+, vertical axis = upper direction+ 1: Horizontal axis = left direction+, vertical axis = upper direction+ 2: Horizontal axis = right direction+, vertical axis = lower direction+ 3: Horizontal axis = left direction+, vertical axis = lower direction+ Axis direction is specified with the element “DRAW_DIR_AX”. [Definition example] <DRAW_DIR_AX>2</DRAW_DIR_AX> (Note 1) If axis direction is not specified, the operation will be as follows. ・Machining center system: 0 (horizontal axis = right direction+, vertical axis = upper direction+) ・Lathe system: 0 (horizontal axis = right direction +, vertical axis = upper direction +) 48 4.3 Program Output Definition File Program output definition file defines the details of machining program output of the cycle that user has prepared. 4.3.1 Specifications of program output definition file Machining programs to be output are indicated in the program output definition file. To write a machining program, the length must be 250 characters or less per line (one-byte). Indication rules for the definition file are described below. Refer to the section 3.3 for the setting example. (1) Version A string to indicate the version is defined here. A string must be up to 16 one-byte characters, and there are no restrictions for the format. The version is indicated in the beginning as a comment. The image below is version indication. (BND-1234W567-A0A) $1 G180 P1 A<ID> (<NAME>) : Figure 4.1 Version indication image (Note 1) Available characters are one-byte alphanumeric ('A' to 'Z', 'a' to 'z', and '0' to '9') and one-byte symbols ('!', '-', '*', etc.). (2) Part system number Part system number of machining program to be output is indicated as "$n". Indication image of part system is shown below. $1 G180 P1 A<ID> (<NAME>) Definition of $1 : G180 P0 $2 G180 P1 A<ID> (<NAME>) : Definition of $2 G180 P0 $3 G180 P1 A<ID> (<NAME>) : Definition of $3 G180 P0 Figure 4.2 Part system number indication image (Note 1) If part system is overlapped, the first definition is prioritized. (Note 2) If part system number is not specified, the same machining program is output to the all part systems. 49 (3) Entire header and footer Write the header and footer which show the range of the program to be output. Write the header and footer for each part system. ・Entire header: G180 P1 A<ID> (<NAME>) ・Entire footer: G180 P0 Indication image of entire header and footer is shown below. $1 G180 P1 A<ID> (<NAME>) : G180 P0 $2 G180 P1 A<ID> (<NAME>) : G180 P0 $3 G180 P1 A<ID> (<NAME>) : G180 P0 Figure 4.3 Indication image of entire header and footer (a) Cycle ID Specify Cycle ID as address A. By designating "<ID>", Cycle ID which was defined to the cycle list definition file is automatically output. The image below is program output of Cycle ID. Ex: When a cycle of Cycle ID 511001 is output to the program: G180 P1 A511001(TDRILL-FACE/COND=E106=5) : Figure 4.4 Image of Cycle ID program output 50 (b) Cycle name Specify the cycle name. By specifying "<NAME>" for the cycle name, cycle name for program output, which was defined to the cycle list definition file, is output to the program. Given below is the program output image of the cycle name for program output (with definition). Ex: When a cycle (turning hole-drilling-front) is output to the program: 1st hierarchy Cycle name TurningHol Cycle name for program output Definition omitted 2nd hierarchy Cycle name Cycle name for program output Drilling Definition omitted 3rd hierarchy Cycle name Front Cycle name for program output TDRILL-FACE G180 P1 A511001(TDRILL-FACE/COND=E106=5) : Figure 4.5 Program output image of the cycle name for program output (with definition) If the user omits to define the cycle name for program output to the cycle list definition file, a string hyphenated ('-') with the cycle name in English for each hierarchy in the cycle list will be output to the program as the cycle name. Given below is the program output image of the cycle name for program output (definition omitted). Ex: When the cycle (turning hole-drilling- front) is output to the program: 1st hierarchy Cycle name TurningHol Cycle name for program output Definition omitted 2nd hierarchy Cycle name Cycle name for program output Drilling Definition omitted 3rd hierarchy Cycle name Front Cycle name for program output Definition omitted G180 P1 A511001(TurningHol-Drilling-Front/COND=E106=5) : Figure 4.6 Program output image of the cycle name for program output (definition omitted) (Note 1) If setting of entire header is omitted, the message “Cycle format illegal” appears when the program is output from the cycle edit window and the program will not be output. (Note 2) If setting of Cycle ID is omitted, the message “Cycle format illegal” appears when the program is output from the cycle edit window and the program will not be output. (Note 3) If setting of an entire footer is omitted, up to the definition of the next entire footer or part system number is handled as the program range. For this program, the message “Cycle format illegal”; the cycle cannot be reedited even if you press the Reedit menu in the cycle list window. 51 (4) Arbitrary shape header and footer Enter the header and footer which indicate the position to output arbitrary shape. When the user specifies “With arbitrary shape” to the cycle edit screen definition file, always write the header and footer for the arbitrary shape. ・Arbitrary header: G180 P11; ・Arbitrary footer: G180 P10; An indication image of header and footer for arbitrary shape is listed below. $1 G180 P1 A<ID> (<NAME>) : G180 P11 G180 P10 : G180 P0 Figure 4.7 Indication image of arbitrary shape header and footer If the user specified “With arbitrary shape” to the cycle edit definition file, a program of an arbitrary shape is output between arbitrary shape header (G180 P11) and arbitrary shape footer (G180 P10). An arbitrary shape program is created according to the input values specified in the arbitrary shape edit window. Given below is the relation between input values and output program for the arbitrary shape edit window. Output program Arbitrary shape edit window G180 P1 A910000(UserCycle1) G0X0Z0 G180P11(G180 [H<Z> V<X> C0 D0 P2 Q2 R0 S0]) G0Z0.000X0.000(G180 [K0 H0.000 V0.000]) G1Z0.000X10.000(G180 [K1 H0.000 V10.000]) G1Z10.000X10.000(G180 [K2 H10.000 V10.000]) G180P10 G180 P0 Figure 4.8 Relation between input values and output program for arbitrary shape edit window (Note 1) If either or both of arbitrary shape header and footer are omitted, the message “Cycle format illegal” appears on the cycle edit window at the time of program output and the program will not be output. (Note 2) Arbitrary shape header and footer can only be designated once per cycle. If several arbitrary shape headers and footers are defined, the arbitrary shape data will be only output to the first definition spot. 52 (5) Setting item number Specify where to output the input value of the setting items of the cycle edit window to the program. Designate the setting item No. set in the cycle edit screen definition file in the following format. ・Format:<DXXX> “XXX” is setting item No. Illustrated below is indication image of setting item No. of header and footer. Program output definition file Cycle edit window Setting item No. Specify the data output location $1 G180P1A<ID>(<NAME>) : G0X<D1>Z<D2> G1X<D11>Z<D12>F<D13> : G180 P0 Figure 4.9 Indication image of setting item number (Note 1) When you set the setting items which are not defined with the cycle edit screen definition file, it will result in the defined error and the data will not be output. (Note 2) When you create a program which has a sign added in front of its setting item No. (<DXXX>), enclose the setting item No. in square brackets (“[“ and “]”) and add the sign in front of the square brackets. Given below is the indication image of a program added a sign. $1 G180 P1 A<ID> (<NAME>) : G54 G0 X-[<D1>] Z0 : G180 P0 Figure 4.10 Indication image of a program with sign 53 4.3.2 Data identifier Data identifier is the definition used for conditional expression. Using data identifier enables allocation of the values of environment parameter or item Nos. Given below are types of data identifier that can be specified. Data type Environment parameter Setting item No. Table 4.15 Types of data identifier that can be specified Data item Data identifier Data range Machine type (M/L) E1 0: Machining center system 1: Lathe system Displayed language E2 0: English 1: Japanese 11: German 12: French 13: Italian 14: Spanish 15: Chinese (Traditional) 16: Korean (Hangul) 17: Portuguese 18: Dutch 19: Swedish 20: Hungarian 21: Polish 22: Chinese (Simplified) 23: Russian 24: Turkish 25: Czech 26: Danish 27: Finnish Setting unit for screen display (mm/inch) E3 0: mm 1: inch Setting unit for program output (mm/inch) E4 0: mm 1: inch Input setting unit E5 1: B: 1μm 2: C: 0.1μm 3: D: 0.01μm(10nm) 4: E: 0.001μm(1nm) Definition item “setting item No.” for the SXXX* The value within the cycle edit screen definition file definition item of “setting range” for the cycle edit screen definition file *XXX is setting item No. Ex) When specifying the setting item No. 100 as data identifier: S100 54 4.3.3 Conditional expression By defining a conditional expression to definition file, it calculates the expression and enables a calculation result to be acquired as either satisfying or dissatisfying. For data identifier, refer to “4.3.2 Data identifier. Also, conditional expressions can define the multiple conditions using “OR(||)” and “AND(&&)”. Given below is the operator precedence which is available for conditional expressions. Table 4.16 Operator precedence Operator Precedence () 1 <= 2 < 2 >= 2 > 2 = 2 != 2 && 3 || 4 For the same precedence level operators, condition is determined from the left. For the repetition of the operator’s parenthesis (), up to doubled parentheses are acceptable. For the triple parentheses or more, the conditional expression will be invalid (condition not satisfied). Example of operator precedence: E1< S1 || E1 >= S2 && (S3 = 2 || S4 = 2) (1) S3 = 2 (2) S4 = 2 (3) result of (1) || result of (2) (4) E1< S1 (5) E1 >= S2 (6) result of (5) && result of (3) (7) result of (4) || result of (6) (Note 1) If you specify the data identifier outside the designation, the conditional expression will be invalid (condition not satisfied). 55 5 INSTALLING CYCLE DATA The user can customize cycles by storing cycle data into the NC or SD card. If the cycle data is stored in both the NC and SD card, the data stored in the SD card is used. At this time, the cycle data in the NC is ignored. When the user stores the cycle data in the NC, the cycle data must be less than 30 MB except M800W/M80W units (Windows-based terminal). When the cycle data is stored in an SD card, the maximum data size depends on the capacity of the SD card. 5.1 Storing Cycle Data in NC Unit This section describes installation and uninstallation method of user-custom cycle data into the NC. The installer to be used and what are prepared differ depending on the machine type. Table 5.1 Installer and external memory for each machine model Model M800W/M80W Installer to be used Integrated installer M80/M800S/ Non-Windows-based terminal Setup installer Preparation ・User cycle ・Setup application list ・Memory card or USB memory ・User cycle ・installer.o (setup installer execution file) ・Memory card Insert the memory card or USB memory in the front face of display unit as shown below. Display unit Memory card interface/USB card interface on the front of display unit. Figure 5.1 External memory insertion position 56 Installing procedure Section 5.1 Section 5.2 A2 5.1.1 Installation on M800/M80W (Windows-based terminal) This section describes the procedure for installing the user cycle in M800W using HMI integrated installer. 5.1.1.1 Installation flow Installation flow is shown below. Check indicated reference destinations for the detailed settings and procedure. ・Create the user cycle. Ref. 2. CYCLE DATA to 4. DETAILS OF CYCLE DATA ・Write the installation operation of the user cycle to the setup application list (Setuplst.ini). Ref. 5.1.1.2 Setting for setup application list (Setuplst.ini). ・Store the user cycles and setup application list (Setuplst.ini) in the predetermined position for memory card or USB memory. Ref. 5.1.1.3 Folder structure ・Start the integrated installer and install the user cycle. Ref. 5.1.1.4 Operation procedure Figure 5.2 Installation flow for M800W 57 5.1.1.2 Settings for setup application list (Setuplst.ini) To install the user cycle, write the setup application list as follows. [APPLIST] PASSWORD=CUSTOM APPCOUNT=4 1 [APP1] NAME=Custom Application(EXE) DIR=Custom_App1 INSTALLTYPE=1 INSTALLER=Custom_SetUp.exe Existing application [APP2] NAME=Custom Application(FileCopy) DIR=Custom_App2 INSTALLTYPE=2 FILE=3,temp,C:\Program Files\Custom Application2 FILE=3,*.dll,C:\Program Files\Custom Application2\work FILE=2,*,C:\Program Files\Custom Application2 FILE=1,custom_app.ini,C:\WINDOWS REGKEY=HKEY_LOCAL_MACHINE\SOFTWARE\CUSTOM\APPLICATION2\TESTDATA1 REGKEY=HKEY_LOCAL_MACHINE\SOFTWARE\CUSTOM\APPLICATION2\TESTDATA2 REGKEYVALUE=HKEY_LOCAL_MACHINE\SOFTWARE\CUSTOM\APPLICATION2\TESTDATA1,data1,1,0x64 REGKEYVALUE=HKEY_LOCAL_MACHINE\SOFTWARE\CUSTOM\APPLICATION2\TESTDATA1,data2,2,”Custom App 2” REGKEYVALUE=HKEY_LOCAL_MACHINE\SOFTWARE\CUSTOM\APPLICATION2\TESTDATA1,data3,3,437573746F6D204170702032 [APP3] NAME=Custom_Cycle_Install DIR= Custom_Cycle_Install INSTALLTYPE=2 FILE=3,*,D:¥Custom¥comm_cycle FILE=1,comm_cycle,D:¥Custom Application to be added for installation and uninstallation of user cycle 2 [APP4] NAME= Custom_Cycle_Uninstall DIR= Custom_Cycle_Install INSTALLTYPE=2 FILE=3,*,D:¥Custom¥comm_cycle 3 4 5 Figure 5.3 Setup application list Setting of each No. of the setup application list should be as follows. Table 5.2 Setting details of setup application list No. 1 2 3 4 5 Details The number of applications to register with the application list. To register applications for installation and uninstallation of the user cycle, add “2” to the number of existing applications. *If there are no existing applications, set “2”. Application name for installing the user cycles. File operation when you install the user cycles. Uninstall the already-installed user cycles, then, install the user cycles stored in the external memory. Application name for uninstalling the user cycles. File operation when you install the user cycles. If you want to uninstall only specific corresponding folder, specify the folder path to be deleted. 58 A2 If you change the setting of the setup application, you can change installation/uninstallation of the cycles for each corresponding folder. Specify (Corresponding folder path in the NC) and (corresponding folder name) with reference to Table 5.3 List of the corresponding folder paths [APP3] NAME=Custom_Cycle_Install DIR= Custom_Cycle_Install INSTALLTYPE=2 FILE=3,*,(Corresponding folder path in the NC) FILE=1,(Corresponding folder name),D:¥Custom¥comm_cycle [APP4] NAME= Custom_Cycle_Uninstall DIR= Custom_Cycle_Install INSTALLTYPE=2 FILE=3,*, (Corresponding file path in the NC) Cycle type Standard Expansion Custom Custom 1 Custom 2 Custom 3 Custom 4 Custom 5 Table 5.3 List of the corresponding folder paths Corresponding folder paths in the NC Corresponding folder name D:¥custom¥comm_cycle¥STANDARDCTM STANDARDCTM D:¥custom¥comm_cycle¥EXPANSIONCTM EXPANSIONCTM D:¥custom¥comm_cycle¥CTMCYCLEDATA CTMCYCLEDATA D:¥custom¥comm_cycle¥CUSTOMEX1 CUSTOMEX1 D:¥custom¥comm_cycle¥CUSTOMEX2 CUSTOMEX2 D:¥custom¥comm_cycle¥CUSTOMEX3 CUSTOMEX3 D:¥custom¥comm_cycle¥CUSTOMEX4 CUSTOMEX4 D:¥custom¥comm_cycle¥CUSTOMEX5 CUSTOMEX5 59 A2 5.1.1.3 Folder structure Store the user cycle into memory card or USB memory as the folder structure below. Drive name:¥ (drive name of external memory) 1 CustomInstall Setuplst.ini 2 Custom_App1 ... Custom_App2 Existing application 5 ... Custom_cycle_Install Custom_Cycle_Install.exe comm_cycle Application added for installation/uninstallation of user cycles 3 STANDARDCTM EXPANSIONCTM CTMCYCLEDATA CUSTOMEX1 4 CUSTOMEX2 A2 CUSTOMEX3 CUSTOMEX4 CUSTOMEX5 Figure 5.4 Directory configuration for M800W Setting of each No. of folder structure should be as follows. Table 5.4 Directory details for M800W No. 1 2 3 4 Details Set the directory name as “CustomInstall”. Setup application list. Ref. “5.1.1.2 Setting for setup application list (Setuplst.ini)”. Cycle data to be installed. Folder name must be fixed. Prepare the corresponding folders to be added/updated and store in SD. You do not need to prepare the corresponding folders not to be added/updated. You do not need to create the folders for uninstalling. *Restriction for installing user cycle ・Size of comm_cycle directory must be 20MB or below. If the size exceeds 20MB, installation will be successful, however, the user cycle will not be displayed. (Ref. 6.1 Precaution for cycle data (6)) 60 5.1.1.4 Operation procedure Installation procedure is shown below. (1) Insert the memory card or USB memory in which the user cycle is stored into the memory or USB card interface on the front of (2) Start the NC, and select the tab menu Mainte in the upper right of the screen. Maintenance screen of MHI appears. (3) Select the menu Mainte – Psswd on the HMI maintenance screen. Password input mode becomes active. (4) Enter the password, and press INPUT. Password authentication is performed, and HMI integrated installer can be started. 61 (5) Use menu key and select the HMI verup menu is highlighted, and a message to confirm the PLC stop appears. menu HMI verup . (6) (7) Select Y or INPUT key. Select INPUT key or Select menu. After the PLC stops, HMI integrated installer screen starts, and “Install” and “Uninstall” are displayed on the application list. Cursor located application is highlighted. 62 (8) (9) Install Start menu is highlighted and a confirmation message for starting the installation of application appears. Also, [Y] button becomes selectable. Select Install Start menu. The user cycle is installed according to the settings of the setup application list. During the installation, current installation state is displayed on “Install status” portion. Select INPUT key or touch selectable-state [Y] button. If an error occurs during the installation, the application installation stops and an error message appears on “Install status” portion. In that case, terminate the integrated installer once, and check the installation environment in the memory card or USB memory and the setup application list. 【Display example 1】 ・Copy of specified file failed 【Display example 2】 ・Deletion of specified directory failed *1: When the installation stops due to an error, the files installed until the stop are not deleted. Perform uninstallation with reference to “5.1.1.2 Settings for setup application list (Setuplst.ini)”. 63 (10) Application installation is completed. The installation completion message appears on “Install status” portion, and the highlight of Install Start menu and application selected state are cancelled. Also, the message for you to perform reboot appears. (11) Select Quit Quit is highlighted, and the message to confirm the integrated installer termination appears on the display portion of operation/rebooting message. Also, [Y] button becomes selected-state. (12) Select INPUT key or touch the selected-state [Y] button. The integrated installer is terminated, and maintenance screen appears. *: If you do not want to terminate the integrated installer, touch [N] button to be in selected condition or menu. *1: To uninstall the user cycle, select “Uninstall” to execute in (6). *2: If you ever installed the application by selecting Install Start menu, the screen cannot be back to the maintenance screen. To display the maintenance screen again, turn OFF and ON the power. 64 5.1.2 Installation on M80, M800S, M80W/M800W (Non-Windows-based terminal) This section describes the procedure for installing the user cycle in M80, M800S and M80W/M800W with Non-Windows-based terminal. 5.1.2.1 Installation flow Installation flow is described below. Check the indicated reference destination for the detailed settings and procedures. ・Create the user cycle Ref. 2 CYCLE DATA to 4. DETAILS OF CYCLE DATA ・Store the user cycle in the predetermined location of memory card. Ref. 5.2.2 Folder structure ・Start the setup installer to install the user cycle Ref. 5.1.2.3 Operation procedure Figure 5.5 Installation flow for M80/M800S 65 A2 5.1.2.2 Folder structure A2 Store the user cycle in the SD card as the folder structure below. SD 1 Installer Installer.o 2 comm_cycle STANDARDCTM EXPANSIONCTM CTMCYCLEDATA CUSTOMEX1 CUSTOMEX2 CUSTOMEX3 CUSTOMEX4 CUSTOMEX5 3 A2 Figure 5.6 Folder structure for SD card Setting for each No. of folder structure should be as follows: Table 5.5 Folder details for SD card No. 1 2 3 Details Set the name as “Installer”. Setup installer execution file. Cycle data to be installed. The folder names must be fixed. Prepare the corresponding folders to be added/updated and store them in the SD card. You do not need to prepare the corresponding folders not to be added/updated. The cycle data is installed by each corresponding folder according to the determined order. Table 5.6 Installation sequence of the corresponding folders Installation order Cycle type Corresponding folder 1 2 3 4 5 6 7 8 Standard Expansion Custom Custom1 Custom2 Custom3 Custom4 Custom5 STANDARDCTM EXPANSIONCTM CTMCYCLEDATA CUSTOMEX1 CUSTOMEX2 CUSTOMEX3 CUSTOMEX4 CUSTOMEX5 You can store the cycle data in the NC up to 30MB in total. If the stored data size would exceed 30MB if you add or update a corresponding folder to the NC, that corresponding folder is not be installed. The corresponding folders which were not installed retain the condition before the installation operation. 66 A2 5.1.2.3 Operation procedure Installation procedure is shown below. (1) Insert the memory card in which you stored the user cycle into the memory card interface on the front of display unit. (2) Turn ON the power while pressing back menu key . Startup screen is is played. After a while, a buzzer beeps and setup installer screen is displayed. (3) Press [Custom Cycle] menu. User cycle installation screen appears. 67 (4) Press [Install] menu. The confirmation screen for the user cycle installation is displayed, and the message “Do you wish to install?” appears. (5) Press [Yes] menu. *Do not turn OFF the power during the installation. User cycle installation starts and the message “Installing…” appears. Application installation is completed. After the installation is completed, the message “Installation completed” appears. (6) Installing *1. To uninstall the user cycle, press and execute menu [Uninst] instead in (4). *2 Even if you perform installation or uninstallation and press [Yes] menu right away, installation or uninstallation will not be executed. Press the back key to return to the first screen. *3. If an error occurs during the installation, the application installation stops and the message “Installation Error” is displayed. In that case, terminate the setup installer once and check the installation environment of the memory card. (7) Reboot. 68 5.2 Storing Cycle Data in SD Card When you want to perform customization by use of the cycle data stored in the SD card, you need to store cycle data in the SD card and insert the SD card into the specified slot. 5.2.1 Customization flow Customization flow by storing in the SD card is shown below. Check indicated reference destination for the detailed settings and procedure. ・Create the user cycle. Ref. 2. CYCLE DATA to 4. DETAILS OF CYCLE DATA ・Store the user cycle in the predetermined location of memory card. Ref. 5.2.2 Folder structure. ・Store the memory card into the specified slot of the NC. Ref. 5.2.3 Storing the SD card. Figure 5.7 Customization flow for storing in an SD card 69 5.2.2 A2 Folder structure SD comm_cycl e STANDARDCT EXPANSIONCT M CTMCYCLEDAT M CUSTOMEX A CUSTOMEX 1 CUSTOMEX 2 CUSTOMEX 3 CUSTOMEX 4 5 1 Figure 5.8 Folder structure for SD card Setting for each No. of folder structure should be as follows. Table 5.7 Folder details for SD card No. 1 Details User cycle to be stored. The folder names must be fixed. (*) When user cycle is not created, you do not need to create folders. *There is no limit on the capacity of the customized user cycle stored in the SD card. 70 5.2.3 A2 Inserting SD card Insert the SD card in which you stored the user cycles in the slot shown below. [M80 and M80S] Insert the SD card in which you stored the user cycle into the SD card interface in the back of the unit. Back side SD card I/F Figure 5.9 Control unit [M800S] 71 6 PRECAUTIONS 6.1 Considerations for Cycle Data (1) When cycle list definition file does not exist or it is not in the XML format, the cycle data will not be customized. (2) Customization for the machining center must be defined to the cycle list definition file (for machining center) and that for the lathe system must be defined to the cycle list definition file (for lathe). If a detail of customization is defined to a different cycle list definition file, the customization is not reflected to the cycles. A1 (3) When cycle edit screen definition file does not exist or it is not in the XML format, the message “Cycle format illegal” appears if you open the cycle edit window, and the cycle cannot be edited. (4) When there are no program output definition files or details of the files are insufficient, the message “Cycle format illegal” appears if you output the machining program form the cycle edit window, and the machining program is not output. (5) In the following cases, the default image below will be displayed on the cycle list window: ・Cycle list display file does not exist ・Path of cycle list display file is 23 characters or more Figure 6.1 Default image (6) If guide drawing display file or guide drawing file does not exist, nothing will be displayed on the guidance in the cycle edit window. (7) If the number of cycles added exceeds 30 or if capacity of corresponding folders in M800S, M80, or M800W/M80W (Non-Windows-based terminal) exceeds 30 MB, customization cycle data will not be displayed. A3 (8) If you select a cycle, in which the number of setting items per cycle exceeds 60, from the cycle list window, the message “Cycle format illegal”; the cycle edit window will not be displayed. C1 (9) Do not remove SD card inserted in the DS slot during power ON. If it is removed during power ON, cycles cannot be selected or reedited. (10) Do not insert SD card into the slot for DS during power ON. If it is inserted during power ON, customization is not reflected until the power is OFF and ON. A2 (11) If the size of the cycle list definition file or the cycle edit screen definition file exceeds its maximum allowed capacity, cycles might not be editable. A3 (12) If other line feed codes than CRLF are in a definition file, “File write error” is generated when the file is edited, and cycles may not be output. D2 (13) If the number of guide drawing folder definition GUIDE_DIR exceeds 10 for each parent element, excessive definitions are ignored. E2 72 6.2 Considerations for Custom Menu (1) For the specifications of menu name, 2-line display is available and up to 7 characters (one-byte) per line is displayed. When more than 7 characters are specified to the menu name, the 8th character or subsequent will be shown in the 2nd line. *When [123456789] is specified to the menu name: 【Menu】 1 2 8 9 3 4 5 6 7 Line feed is inserted automatically. (2) Do not set a two-byte character on the 7th or 8th character. *When [カスタ△マイズ] is specified to the menu name: 【Menu】 “△”represents a one-byte space △ ス タ カ マ イ ズ If a two-byte character is specified to the 7th or 8th character, an unintended character string is displayed. *When [カスタマイズ] is specified as menu name: 【Menu】 カ ?? ス イ タ ?? ズ Unintended characters may be displayed 73 7 TROUBLESHOOTING This chapter describes how to troubleshoot major troubles. 7.1 Customized Cycle Data is Not Displayed Various causes are speculated. Check the setting details by following the flow below. START STEP 1 Does cycle data exist in both the NC unit and SD card? If you want to do customization using corresponding folder in the NC, do not store the same corresponding folder in the SD card. *2.2 Cycle Data Storage Destination STEP 2 Is the SD card inserted in the slot for DS? Insert the SD card, which contains the corresponding folder, into the SD card slot for DS. *5.2.3 Storing SD card STEP 3 Is the corresponding folder name correct? Correct the corresponding folder name, and then install again. *2.1 Configuration of Cycle Data STEP 4 Does the cycle data in the NC unit exceed 30 MB? Reduce the size of the cycle data in the NC unit to 30 MB or less. *6.1 Precautions for Cycle Data STEP 5 Does list_ctm.xml exist in the corresponding folder? Store the cycle list definition file in the corresponding folder. *2.2 Cycle Data Storage Destination To next page 74 ■Checkpoint When the same corresponding folder exists in the NC unit and SD card, the corresponding folder in the SD card is reflected. At that time, that in the NC unit is ignored. ■Checkpoint When the SD card is inserted in the SD card slot for DS and it does not contain the corresponding folder, only the corresponding folders stored in the NC unit can be used for customization. A2 A2 ■Checkpoint When the corresponding folder name is wrong, the customized cycle data is not displayed. ■Checkpoint When a total cycle data size in the NC unit exceeds 30 MB, the cycle data in the NC unit is not used for customization. ■Checkpoint Cycle data is not displayed unless list_ctm.xml exists right under the user-prepared corresponding folder. A2 A2 Continued from previous pate ■Checkpoint Cycle data is not displayed unless the cycle is described in “list_ctm.xml”. STEP 6 Is the cycle data described in “list_ctm.xml”? Describe the cycle to the cycle list definition file. *4.1Cycle List Definition File Is the cycle data described according to the description rules? Describe the cycle according to the description rules. *4.1.1 Specifications of cycle list definition file STEP 7 STEP 8 Is the setting range of the cycle data correct? Correct the setting values described to the cycle data to fall within the setting range. *4.1.2 Description method of cycle list definition file STEP 9 Is the number of cycles less than 30? Keep the number of user cycles less than 30. *6.1 Precautions for Cycle Data END 75 ■Checkpoint Cycle data is not displayed unless the below elements are described in the cycle data. PCS_LIST: Element to indicate it is the cycle list definition file. LIST_ITEM: Element to define the range of customization information PCS_ID: Element to define Cycle ID ■Checkpoint ・PCS_ID: 510000 to 999999 ・DISP_NAME: One-byte 1 to 256 ・IMAGE_FILE: One-byte 1 to 256 ・PRGOUT_NAME: One-byte 1 to 256 ・SCR_DEF_FILE: One-byte 1 to 256 ・PRG_DEF_FILE: One-byte 1 to 256 ■Checkpoint The number of cycles is the number of <LIST_ITEM> described in the cycle list definition files. The number of cycles is checked for the cycle list definition files stored in each corresponding folder. 7.2 “Cycle Format Illegal” Appears and Customized Cycle Cannot be Edited Various causes are speculated. Check the setting details by following the flow below. START STEP 1 Is the path to “ScrnProc.xml” that is described in “list_ctm.xml” correct? Correct the path of the cycle edit screen definition file described in the cycle list definition file. *4.1.2 Description method of cycle list definition file STEP 2 Are the items displayed on the edit window described in “ScrnProc.xml”? Describe the setting item in the cycle edit screen definition file. *4.2 Cycle Edit Screen Definition File STEP 3 Are the setting items described according to the description rules? Describe the setting items according to the description rules. *4.2.1 Specifications of cycle edit screen definition file STEP 4 Is the setting range in the setting items correct? Describe the setting items to fall within the setting range. *4.2.2 Description method of cycle edit screen definition file STEP 5 Are the number of setting items exceed 30? Keep the number of setting items less than 30. *6.1 Precautions for Cycle Data END 76 ■Checkpoint ・SCR_DEF_FILE Specify the path as relative path from the path which cycle list definition file exists. ■Checkpoint If setting items are not described in the cycle edit screen definition file, the cycle edit screen will not be displayed. ■Checkpoint If the elements below are not described in the setting items, the cycle edit screen will not be displayed. SCREEN_DEF: Element to define the information for screen display to edit cycle data. SET_ITEM: Element to define the range of setting item data ■Checkpoint ・IMAGE_FILE: One-byte 1 to 256 ・SET_ITEM: 1 to n ・DISP_NAME: One-byte 1 to 256 ・HELP: One-byte 1 to 256 ■Checkpoint The number of cycles is the number of <SET_ITEM> which is described in the cycle edit screen definition file. 7.3 “Cycle Format Illegal” Appears and Machining Program with Edited Cycle is Not Output Various causes are speculated. Check the setting details by following the flow below. START STEP 1 Is the path to “PrgProc.prg” described in “list_ctm.xml” correct? Correct the path of program output definition file described in the cycle list definition file. *4.1.2 Description method of cycle list definition file STEP 2 Is the machining program described in “ PrgProc.prg”? Describe the machining program in the program output definition file. *4.3 Program Output Definition File ■Checkpoint ・PRG_DEF_FILE Specify the path as relative path from the path which cycle list definition file exists. ■Checkpoint If the machining program is not described in the program output definition file, the machining program will not be output. ■Checkpoint STEP 3 Is the part system selected with HMI described in the program output definition file? Describe the part system selected with HMI in the program output definition file. *4.3.1 Specifications of program output definition file STEP 4 Is the machining program described according to the description rules? Correct the machining program according to the description rules. *4.3.1 Specifications of program output definition file STEP 5 Are there any lines whose number of one-byte characters exceeds 250 in the program definition file? Correct the number of characters per line for the machining program not to exceed 250 characters. *4.3.1 Specifications of program output definition file END 77 ・"$n" Even if part system number is described in the machining program, the machining program will not be output unless the part system number selected with HMI is described. ■Checkpoint ・Entire header: G180 P1 ・Entire footer: G180 P0 ・Cycle ID: A<ID> If one of the above is not described, the machining program will not be output. ■Checkpoint If there is a line with 250 characters or more, the machining program will not be output. 8 APPLICABLE NC MODELS Listed below are models and version names compatible with this function. Model MITSUBISHI CNC M800W (Windows-based terminal) M L M850W M830W M850W M830W MITSUBISHI CNC M800W (Non-Windows-based terminal) M L M850W M830W M850W M830W Customization of Interactive cycle insertion function C4 C4 C2 C2 C4 C4 C2 C2 Custom cycle Cycle type expansion C4 C4 C4 C4 C4 C4 C4 C4 Custom cycle DS expansion C4 C4 C4 C4 - - - - Output as subprogram D3 D3 D3 D3 D3 D3 D3 D3 Output as subprogram on device D5 D5 D5 D5 D5 D5 D5 D5 Guidance switch definition file D5 D5 D5 D5 D5 D5 D5 D5 A1 A2 D1 E1 E2 MITSUBISHI CNC M800S Model M L M850S M830S M850S M830S C4 C4 C2 C2 C4 C4 C4 C4 A1 Custom cycle DS expansion C4 C4 C4 C4 A2 Output as subprogram D3 D3 D3 D3 D1 Output as subprogram on device D5 D5 D5 D5 E1 Guidance switch definition file D5 D5 D5 D5 E2 Customization of Interactive cycle insertion function Custom cycle Cycle type expansion 78 MITSUBISHI CNC M80 Model M L TyepA TypeB TyepA TypeB C4 C4 C2 C2 C4 C4 C4 C4 A1 Custom cycle DS expansion C4 C4 C4 C4 A2 Output as subprogram D3 D3 D3 D3 D1 Output as subprogram on device D5 D5 D5 D5 E1 Guidance switch definition file D5 D5 D5 D5 E2 Customization of Interactive cycle insertion function Custom cycle Cycle type expansion Model Customization of Interactive cycle insertion function Custom cycle Cycle type expansion MITSUBISHI CNC M80 M80W (Windows-based terminal) M80W (Non-Windows-based terminal) M L C4 C4 C2 C2 C4 C4 C4 C4 A1 Custom cycle DS expansion C4 C4 - - A2 Output as subprogram D3 D3 D3 D3 D1 Output as subprogram on device D5 D5 D5 D5 E1 Guidance switch definition file D5 D5 D5 D5 E2 MITSUBISHI CNC E80 Model M L TypeA TypeB TypeA TypeB Customization of Interactive cycle insertion function D0 D0 D0 D0 Custom cycle D0 D0 D0 D0 Cycle type expansion D0 D0 D0 D0 A2 Output as subprogram D3 D3 D3 D3 D1 Output as subprogram on device D5 D5 D5 D5 E1 Guidance switch definition file D5 D5 D5 D5 79 A1 E2