<!DOCTYPE html
  PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<!--
Copyright (c) 2006 UGS Corp.

All Rights Reserved.

This software and related documentation are proprietary to UGS Corp.
-->
<html>
   <head>
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <title>Words</title>
      <script language="javaScript">
        abridged="false";
        displayConditions=new Array();
      </script>
      <link type="text/css" href="../css/main_styles.css" rel="stylesheet">
   </head>
   <body class="bodydocs" onload="top.pageLoader()" bgcolor="#FFFFFF">
      <div class="title_topic2" id="xps10_pagetitle">Words</div>
      <hr noshade="true">
      <p align="center"><img align="bottom" src="graphics/pb_imageotv.gif"></p>
      <p class="para_topic">This dialog allows you to create and edit words.&nbsp;You have the same options for creating a new word or editing a word as you do within the event or sequence dialogs.&nbsp;When you create a new word from this dialog you are basically copying an existing word and editing it. &nbsp;  <img align="bottom" src="graphics/pb_imagedin.gif" border="0"></p>
      <p class="para_topic">The&nbsp;word dialog allows you to define or edit the characteristics of any word.&nbsp;A word is composed of an address leader, a number, or text and a trailer.&nbsp;An address leader may be any characters. For NC code the address leader is usually a single letter such as G, M, or X. It can be multiple characters such as R2, (FI, etc.&nbsp; The trailer is usually blank.&nbsp; This is needed for some controls that require formats such as &lt;12.345.&nbsp; In this case it would be the trailer.</p>
      <p class="para_topic">You can specify which&nbsp;format the system uses for the current word.&nbsp;You can select from the existing list of formats or you can edit one of the existing formats. If you need a completely different format or do not want to change one of the existing formats, you need to create a new format in the  <a class="links" href="javascript:void(0)" onclick="top.openFile('postbuilder/ncdata_format.html');return(false);">Format</a> section of the NC Data Definitions dialog.&nbsp;The system uses the format to control whether you output the decimal, leading, or trailing zeroes etc.
      </p>
      <p class="para_topic">The green rectangle at the top of the dialog shows you what the word looks like when it is output.&nbsp;When you have a word that has a pre-defined context, then the system displays the pre-defined representative code at the top of the dialog.</p>
      <p class="para_topic">The&nbsp;Modality option may be set to Off (which means Modal) or Always (which means Non-Modal). If set to Modal the system only outputs the word if the value of the expression changes between two blocks of output.&nbsp;This is the default setting for all words.&nbsp;If a word is set to Non-Modal the system outputs the word in every block in which the word appears.&nbsp;Typically Modal words are for coordinate data, motion G codes, and so on. You can always force out within the context of an event.&nbsp;For instance, the Opstop event should always force an M01.</p>
      <p class="para_topic">For each word you can also define the&nbsp;maximum and minimum value that the system outputs with your word.&nbsp;You can also determine what action takes place when maximum or minimum value is exceeded.&nbsp;Your choices are the following:</p>
      <div class="title_division">Truncate</div>
      <p class="para_division">This setting causes the system to output a warning file. The system also continues to use the maximum or minimum value.</p>
      <div class="title_division">Warning</div>
      <p class="para_division">This setting only causes the system to output a warning.</p>
      <div class="title_division">Abort</div>
      <p class="para_division">This setting causes the postprocessor to stop and report an error.</p>
      <p class="para_division">The&nbsp;expression defines the number or text that the system uses to make your word.&nbsp;The expression can only be defined in the context of an event.&nbsp;The same word used in different events can have different expressions defining the output.&nbsp;For instance, the M word in the Opstop event would use the system code for opstop (1).&nbsp;The M word in the stop event would use the system code for stop (0). The expression cannot be defined in the NC Data Definitions section because that dialog only defines the static characteristics of the word.&nbsp;If you select a word that has a pre-defined context you cannot change the expression.</p>
      <div class="title_division">Word Modifiers</div>
      <p class="para_division">You can only apply the word modifiers when editing a word within the event or sequence dialogs.&nbsp; The word modifiers actually belong to the event or sequence themselves and not to any block or word.&nbsp;You can access the word modifier dialog by using MB3 on any word in any event or sequence dialog. If you click MB3 on the M01 word and select&nbsp;Change Element, you can use a different pre-defined context for your M code or select User Defined Expression.</p>
      <p align="center"><img align="bottom" src="graphics/pb_image63b.gif"></p>
      <p class="para_division">In the above example for M, you can choose from a list of pre-defined M-codes.&nbsp;Words use the system variables that are assigned for each function.&nbsp;The Stop Program M-code is defined in the M-code table.&nbsp;You can specify the value for your word by selecting user-defined expression from the list.&nbsp;This expression can be any valid TCL expression.&nbsp;Typically you can enter a number, text or mom variable.&nbsp;See the Post online docs for a list of mom variables.&nbsp;For example if you want an M10 for your word, enter the text 10 for your expression.&nbsp;This is a valid expression.&nbsp;Other valid expressions are 6 for M6 and the text spindle is Mspindle.&nbsp;All mom variables must be preceded by a $ or the system considers them to be literal text.&nbsp;The text mom_spindle_speed is literal text, but the system resolves the text $mom_spindle_speed into the current value of the variable mom_spindle_speed.&nbsp; </p>
      <table border="0">
         <tr>
            <td valign="top" align="left"><img align="left" src="../graphics/note.gif" alt="Note" title="Note"></td>
            <td valign="bottom" align="left" width="100%">
               <div class="para_note">
                  <p class="para_note_body">Note that if you specify digit or numeric formats, your expression must resolve into a number.</p>
               </div>
            </td>
         </tr>
      </table>
      <p class="para_division"><img align="bottom" src="graphics/pb_image2r4.gif" border="0"></p>
      <p class="para_division">If you make a word&nbsp;optional, the system only outputs the word if you have defined the expression for it.&nbsp; For example, if you make a block with a word to turn on the coolant and you don't program a coolant UDE in your part program, the system does not set the data for coolant.&nbsp;If you do not use the option specifier, then the system produces a run time TCL error.&nbsp;If you use the optional specifier, then the system does not produce an error, instead you receive no output.&nbsp;This is desired because you only get your coolant code output if you program the coolant UDE.</p>
      <p class="para_division">The&nbsp;No Word Separator option allows you to suppress the output of the word separator after the word.&nbsp;This is useful mainly for CLS output.</p>
      <p class="para_division">The&nbsp;Force Output option allows you to force the output of your word within the current block only.&nbsp; This is useful for forcing out a T code or M06 for each tool change.&nbsp;By default all words are modal and output only if the value changes from one block to the next.&nbsp;Force Output can only be specified within the context of an event or sequence.</p>
      <p class="para_division">Post Builder has grouped the G and M code words into modal groupings.&nbsp;That is, when you output a G17 it does not cancel a G01.&nbsp;However if you output a G00, then a G01, and then a G00 in the third block, the G00 is output again in the third block.&nbsp;This behavior is consistent with the method that machine tool controls output code.&nbsp;Post Builder has also constructed many words with predefined variables to assist you in getting the correct output.&nbsp; For instance, when you select an X word to be output in a block, you have a number of choices on how the system obtains the number.&nbsp;If you MB3 on an X word in any event or sequence dialog you can see what your options are to change how the system obtains the number.</p>
      <p class="para_division"> <img align="bottom" src="graphics/pb_imagetld.gif" border="0">   
      </p>
      <p class="para_division">In the above pull down dialog you can use the default setting of the motion x or select one of the options from the list.&nbsp;They all reference different mom variables or constant.&nbsp;See  <a class="links" href="javascript:void(0)" onclick="top.openFile('postbuilder/appendixa.html');return(false);">Modal Word Groups and MOM Variables</a> for a complete list.
      </p>
   </body>
</html>