CHAPTER 8 REGIONAL MILLING OF SCULPTURED SURFACES
































                                  Figure 8.1



























                                       212

REGIONAL MILLING OF SCULPTURED SURFACES



        The   chapter  describes  the  facilities  provided  for  the
        regional milling of a sculptured surface.

        The primary means of tool control is a space curve.   Since  a
        sculptured  surface  contains  an  infinite  number  of  space
        curves,  a  surface is used to represent the large  family  of
        consecutive paths required in a regional milling process.

        In  general,  this  tool path control surface is  a  different
        surface  from  the surface being machined.    In  the  special
        case, where the tool path is to be developed using the natural
        flow  lines of a mesh structured sculptured surface,  then the
        surface  being  machined  can also be used as  the  tool  path
        control surface.

        This  approach gives the programmer considerable control  over
        the choice of tool path when carrying out regional milling.

        Multi-axis  control is available during regional  milling  but
        only a 'spherical' cutter is currently implemented.


8.1 BASIC REGIONAL MILLING ALGORITHM


        The  basic  regional milling  algorithm  addresses the tool to
        surface relationship in the following manner,

                 'Given a tool with its end at TE,  its axis
                 at   a   vector  TA  and  a  direction   of
                 projection TD,  calculate the distance  the
                 tool must move in the direction TD in order
                 to contact the surface S.'

        This is illustrated in Figure 8.1.












                                       213

Figure 8.2 Figure 8.3 214
The user must understand the difference between the tool axis vector, TA and the tool projection vector, TD, in order to use the regional milling facilities successfully. In the conventional Arelem, the tool is constrained to be in contact with three surfaces, part, drive and check surfaces, but the tool axis orientation can be defined independent of these surfaces, similarly in regional milling, the tool is constrained to be in contact with the part surface, its position being defined by a control point and tool projection vector, but the tool axis orientation may be defined independently. There are two ways in which the tool to surface contact can be controlled by a point and tool projection vector, 'ON' and 'AT'. If 'ON' is specified the tool end is constrained to lie on the line generated by the current control point and tool projection vector, with the tool envelope touching the surface and the tool axis at the prescribed orientation. Figure 8.2 illustrates this type of tool drive control. If 'AT' is specified then the tool is positioned so that the tool envelope contacts the surface at the point where the tool projection vector from the control point pierces the surface, with the tool axis at the prescribed orientation, as shown in Figure 8.3. 215
Figure 8.4 216

8.2 CONTROL OF TOOL PATH BY A SYNTHETIC CURVE


        The  concept  of tool control by a point and  tool  projection
        vector  described in the previous section can be  extended  to
        give tool path control by using a synthetic curve to represent
        a  continuous path of space points and vectors.    Figure  8.4
        shows  an 'ON' type tool path,  where the drive control curve,
        DC1 was defined in the following manner,

                            P1  =  POINT/12,-40,30
                            P2  =  POINT/20,-28,30
                            P3  =  POINT/40,-20,30
                            P4  =  POINT/68,-40,30
                            C1  =  SCURV/CURSEG,P1,P2,P3
                            C2  =  SCURV/CURSEG,P3,P4
                           DC1  =  SCURV/COMBIN,C1,C2

        and  the  tool  projection vector was  an  explicitly  defined
        vector,

                            TPV  =  VECTOR/0,0,-1

        and the tool axis orientation was defined by the vector,

                             TA  =  VECTOR/0,0,1

        Note,  that the drive curve can have slope discontinuity at an
        arc junction, such as shown at node 1 of this example.

























                                       217

Figure 8.5 Figure 8.6 218
The continuous sheet of cross vectors which can be attached to a synthetic curve, by applying CRSSPL constraints at each arc junction, (see Chapter 2, Section 2.2.2 of this Volume) can be used as tool projection vectors and/or for tool axis control. For example, if we apply, CRSSPL constraints to C1 and C2 in our previous example, in the following manner, TPV0 = VECTOR/0.3,-0.3,-0.8 TPV1 = VECTOR/0,-0.2,-0.8 TPV2 = VECTOR/-0.1,-0.1,-0.8 C1 = SCURV/CURSEG,P1,CRSSPL,TPV0,P2,P3,CRSSPL,TPV1 C2 = SCURV/CURSEG,P3,CRSSPL,TPV1,P4,CRSSPL,TPV2 Then Figure 8.5 shows the tool path generated if the resultant sheet of cross vectors is used to define the tool projection vectors, whilst maintaining the fixed tool axis vector, TA. Whereas, Figure 8.6 shows the resultant tool path and tool orientations, if the cross vectors are used to give variable tool axis control and the tool projection vector is kept fixed. The synthetic curve used for drive control can either be explicitly defined as in these examples or can be implicitly defined as a TANSPL or CRSSPL curve of a sculptured surface with a mesh structure. In which case, the surface normal vectors may be used for tool axis and tool projection vector control. Mesh structured sculptured surfaces include those defined by SMESH, GENCUR, REVOLV, RULED and 'cross product' formats. The use of a synthetic curve as the drive control, means that no check surface is required, because the drive geometry is naturally bounded. However, the user can limit the paths by parametric values. Refer to Chapters 2 and 3 of this Volume for details of the parametric structure of curves, and Chapters 4, 5 and 6 for the parametric structure of sculptured surfaces. 219
Figure 8.7 220

8.3 CONCEPT OF REGIONAL TOOL CONTROL


        A major requirement when machining sculptured surfaces is  the
        ability  to  automatically generate the cutter path needed  to
        mill  a  bounded  region  on a  surface.    This  is  done  by
        extending  the idea of tool path control by a synthetic  curve
        and  using  the  infinite  family of  curves  available  in  a
        sculptured surface for drive control.


        In  general the surface used for drive control is not the same
        as  the surface being machined and must be a  mesh  structured
        surface.  The  tool path produced can be controlled by  either
        the  TANSPL  or  CRSSPL curves of the drive  surface  and  can
        either  zigzag  back  and  forth  across  the  surface  or  be
        unidirectional.   The tool projection vectors can be either in
        a  fixed direction or controlled by the surface normal of  the
        drive surface,  likewise the tool axis orientation.   The step
        over from one drive curve to the next can be either calculated
        automatically based on cusp height requirements or be a  fixed
        parametric  step  across  the  drive  surface.     Control  of
        feedrates   and  tool  positioning  between  passes  is   also
        provided.

        Figure  8.7 shows a zigzag tool path on a sculptured  surface,
        where the drive surface was a rectangular planar surface  with
        the stepover controlled by cusp height requirements.


8.4 PROGRAMMING REGIONAL MILLING


        When  programming regional milling the user is able to control
        a  single  tool  position,  a  continuous  tool  path  or  the
        automated clearance of a region.   This flexibility means that
        if  the automated regional milling does not satisfy the  users
        requirements he can generate his own type of control by  using
        the explicit lower level commands that are available.

        There  are  two  types  of command  associated  with  regional
        milling,  the first identified by the major word SCON  specify
        the  control surfaces and regional milling conditions and  the
        second identified by the major word SMIL provide tool position
        and path control, generating cutter location data.   These are
        described in detail in Sections 8.6 and 8.7.

        In addition,  the general APT commands CUTTER,  INTOL, OUTTOL,
        MAXDP  and NUMPTS are utilized during the regional milling  of
        sculptured  surfaces.    Their effect is described in  Section
        8.5.




                                       221

8.4.1 DEVELOPING A REGIONAL MILLING PROGRAM


        The  data  and commands associated with regional milling  fall
        into five basic groups.

                 .  Definition of surface(s) to be machined.

                 .  Definition of drive control parameters,
                    i.e. drive control surface, tool axis vector,
                    tool projection vector, clearance plane etc.

                 .  Specification of cutter, tolerances and limits.

                 .  Specification of the surfaces and conditions
                    that pertain to the current regional milling
                    operation. (SCON commands)

                 .  Selection of regional milling command(s) to
                    generate tool path.   (SMIL command)

        To illustrate this,  the program used to produce the tool path
        shown in Figure 8.7 will be developed.    The complete program
        is given in Section 8.4.2.

        The intention of the program is to machine a rectangular  area
        on  the sculptured surface using a zigzag path with the  major
        direction  parallel  to the x axis and the stepover in  the  y
        direction  to be controlled by restricting the cusp height  to
        0.5 mm.

        In  this example it is assumed that the part is being machined
        on a three axis machine, therefore the tool axis will be fixed
        and parallel to the positive z axis.




















                                       222

The first step therefore is to define the sculptured surface that is to be machined, in this case the SMESH surface, PS0 defined below. P1 = POINT/0,0,20 P2 = POINT/30,-5,26.5 P3 = POINT/60,-5,26 P4 = POINT/86,0,20 P5 = POINT/-6,-30,15 P6 = POINT/28,-25,22.75 P7 = POINT/66,-25,22.5 P8 = POINT/100,-30,15 P9 = POINT/-12,-60,0 P10 = POINT/22,-55,8.75 P11 = POINT/70,-55,9.5 P12 = POINT/114,-60,0 PS0 = SSURF/SMESH,XYZ,SPLINE,P1,P2,P3,P4, $ SPLINE,P5,P6,P7,P8, $ SPLINE,P9,P10,P11,P12 The next step is to define the drive control parameters. Since the region to be machined is rectangular it cannot be defined with respect to the parametric lines lying within the surface itself, therefore a separate drive control surface is required. In this case a plane rectangular surface above the surface to be machined, parallel to the XY plane should give the required boundary and tool path control. Such a surface can be defined by taking a TRANSL type cross product of two straight lines. If the corners of the required rectangle are (30,-15,z), (70,-15,z), (30,-45,z), and (70,-45,z), then the following statements will define a suitable plane rectangular surface to be used for drive control. R1 = POINT/30,-15,50 R2 = POINT/70,-15,50 R3 = POINT/0,0,0 R4 = POINT/0,-30,0 C1 = SCURV/CURSEG,R1,R2 C2 = SCURV/CURSEG,R3,R4 DS1 = SSURF/TRANSL,C1,CROSS,C2 This surface provides an infinite number of drive curves parallel to the x axis with normal vectors parallel to the negative z axis which can be used for tool projection. 223
The tool axis vector, parallel to the positive z axis since the part is to be machined on a three axis machine, is defined explicitly, namely, TA = VECTOR/0,0,1 Note, even though no tool axis vector components are to be output on the cutter location file, a tool axis vector must be specified, otherwise an error will occur. The third step is to define the cutter, tolerances and limits to be used by the regional milling algorithms. If undefined then the standard defaults are used. Note that only a ball ended or point cutter can be accepted and that the cutter is treated as a complete sphere. For this example a 10 mm diameter ball ended cutter is used and the default values for INTOL, OUTTOL, NUMPTS and MAXDP are taken as acceptable, therefore the only statement required here, is CUTTER/10,5 If required, any conventional APT commands may be programmed to move the cutter from its initial position to a suitable position from which to approach the area to be machined, including appropriate post processor commands. The next step is to specify which surfaces and conditions apply to the following regional milling command. This is done by the SCON command which is described in Section 8.6. It is important to note that for each type of regional milling command certain groups of conditions and parameters must be defined. A table of these is given in Section 8.7.5. If a required group is omitted then error 3565 will occur and diagnostic information indicating which groups are defined and which are not will be output. See Section 8.8 for details. In addition to the SCON commands used for defining parameters etc., there is a special command for initializing the parameters and setting them in an undefined state. In order to be certain that for any regional milling command the required data has been specified, the command to initialize all the groups should be programmed first, namely. SCON/INIT,ALL Since it is intended to perform a zigzag type of regional milling over the area, it is necessary to specify the drive control parameters, the surface to be machined, the tool axis, stepover parameters and feedrate. 224
First the drive control should be ON type control, over the whole of the parametric extent of the plane rectangular surface, DS1. The tool projection vectors being normal to the drive control surface. This is defined by the following statement SCON/DS,DS1,PARAM,0,1,0,1,ON,NORMAL where DS indicates that SCON is defining the drive control parameters DS1 is the previously defined drive control surface PARAM indicates DS parametric limits follow. 0 lower ) ) extent of the u parameter 1 upper ) 0 lower ) ) extent of the v parameter 1 upper ) ON type of tool/surface contact required. See Section 8.1. NORMAL indicates that the surface normal at a point should be used as the tool projection vector. Next the surface to be machined is selected together with an indication of which side of the surface is to be cut and of any material that is to be left on for subsequent finish machining, in the following manner, SCON/PS,TO,PS0,MINUS,0 where PS indicates that SCON is defining the surface to be machined (part surface). TO indicates tool/surface relationship and has the same meaning as in conventional APT. PS0 is the previously defined sculptured surface that is to be machined. 225
MINUS indicates that the tool should be on the side of the surface opposite to the surface NORMAL (cross product of TANSPL and CRSSPL vectors). O indicates that for this case no material is to be left on, that is this is a final cut. The tool axis is defined as being fixed and in the direction of the vector TA by the SCON statement, SCON/AXIS,TA The stepover parameters needed to calculate the parametric step across the drive control surface and a lift off required between passes are specified next. For this example the requirement is for the maximum cusp height between adjacent passes to be 0.5 mm, in addition the physical stepover should not exceed 5 mm. and the tool may remain in contact with the surface between adjacent passes so no lift off is required. The SCON statement to set up these parameters is SCON/STEPOV,0.5,5,0,0 where 0.5 maximum cusp height 5 maximum physical stepover 0 lift off between passes 0 not used Finally, it is necessary to specify the feedrates which will be automatically transferred to the CLFILE as FEDRAT records during the automatic generation of the zigzag tool path, this is done as follows, SCON/FEED,100,200,50,3000 where 100 feedrate for passes in the major direction. 200 feedrate for side stepping between major passes. 50 feedrate for plunging into the material when this is required. 3000 feedrate for rapid withdrawal to and traverse across a clearance plane when required. 226
Note that the regional milling algorithm does not insert a feedrate record on the CLFILE before the first path as will be seen on the CLFILE listing in Section 8.4.4. It is therefore the responsibility of the programmer to ensure that the initial feedrate is suitable, by explicitly programming a FEDRAT command before the regional milling command. It may be advantageous to include an additional regional milling command to specify the initial move bringing the tool into contact with the job at an even lower feedrate. Having defined all the surfaces and conditions required for the regional milling operation, all that remains is to invoke the regional milling tool path generation by programming the SMIL command, thus, SMIL/ZIGZAG,DS,PARAM,0,0,TANSPL,PLUS,STEPOV,PLUS,0 where ZIGZAG indicates that a zigzag path across the surface is required. DS indicates that the surface specified in the preceding SCON/DS command is to be used for drive control. PARAM,0,0 u and v parameters of the start point on the drive surface, i.e., the zigzag path will start at the point (u=0,v=0). TANSPL indicates that the major passes are to be along TANSPL parametric curves. PLUS indicates that the first pass will be in the positive direction along the curve (i.e. from v=0 to u=1). STEPOV,PLUS indicates that the stepover direction should be in the positive, CRSSPL direction in this case, (i.e. from v=0 to v=1). O this scalar indicates that the first cut vector is required. 227

8.4.2 EXAMPLE OF A REGIONAL MILLING PROGRAM


        The  following is the regional milling program which generated
        the tool path illustrated in Figure 8.7.

        ISN
         1. PARTNO/'FIG8.7 REGIONAL TOOL CONTROL'
         2. REMARK/'FIXED TOOL PROJECTION VECTOR'
         3. REMARK/'TOOL AXIS CONTROLLED BY SURFACE NORMAL'
         4. PRINT/SSPRT,OFF
         5. UNITS/MM
         6. CLPRNT
         7. NOPOST
         8. $$
         9. $$ DEFINE SCULPTURED SURFACE TO BE MACHINED (PART SURFACE)
        10. $$
        11. P1=POINT/0,0,20
        12. P2=POINT/30,-5,26.5
        13. P3=POINT/60,-5,26
        14. P4=POINT/86,0,20
        15. P5=POINT/-6,-30,15
        16. P6=POINT/28,-25,22.75
        17. P7=POINT/66,-25,22.5
        18. P8=POINT/100,-30,15
        1z),  and  (70,-45,z),  then the following
        statements will define a suitable plane rectangular surface to
        be used for drive cINE,P1,P2,P3,P4    $
        23.                     SPLINE,P5,P6,P7,P8,   $
        23.                     SPLINE,P9,P10,P11,P12
        24. $
        25. $$ DEFINE DRIVE CONTROL PARAMETERS
        26. $$
        27. R1=POINT/30,-15,50
        28. R2=POINT/70,-15,50
        29. R3=POINT/0,0,0
        30. R4=POINT/0,-30,0
        31. C1=SCURV/CURSEG,R1,R2
        32. C2=SCURV/CURSEG,R3,R4
        33. DS1=SSURF/TRANSL,C1,CROSS,C2  $$  DRIVE CONTROL SURFACE
        34. $$
        35. TA=VECTOR/0,0,1               $$  TOOL AXIS VECTOR
        36. $$
        37. $$ CUTTER, TOLERANCES AND LIMITS
        38. $$
        39. CUTTER/10,5                   $$  10 MM DIA. BALL ENDED
                                              CUTTER
        40. $$
        41. FROM/(STPT=POINT/50,-60,50)
        42. $$
        43. $$ SET REGIONAL MILLING CONDITIONS
        44. $$


                                       228

45. SCON/INIT,ALL $$ INITIALIZE ALL CONDITIONS 46. SCON/DS,DS1,PARAM,0,1,0,1,ON,NORMAL $$ DRIVE CONTROL SPECIFICATION 47. SCON/PS,TO,PS0,MINUS,0 $$ PART SURFACE SELECTION 48. SCON/AXIS,TA $$ TOOL AXIS 49. SCON/STEPOV,0.5,5,0,0 $$ STEPOVER PARAMETERS 50. SCON/FEED,100,200,50,3000 $$ FEEDRATES 51. $$ 52. $$ GENERATE ZIGZAG TOOL PATH 53. $$ 54. SMIL/ZIGZAG,DS,PARAM,0,0,TANSPL,PLUS,STEPOV,PLUS,0 55. $$ 56. FINI

8.4.3 REGIONAL MILLING VERIFICATION LISTING


        During the execution phase, informative data is printed on the
        verification listing for each SMIL command programmed.    This
        consists  of  a  record of the statement number  of  the  SMIL
        command

                          PATH  =  statement number

        followed  by  a summary of  principal  curvatures  encountered
        during  the generation of each path which is listed in tabular
        form under the following headings.


        NO             path number.

        ERRNO          A  non-zero  value indicates that an error  has
                       occurred  during the generation of the  current
                       path.    The value is the number which is added
                       to  3550 to indicate the execution phase  error
                       number.   See Section 8.8.4 for details.

        CLCT           number of cutter location points generated  for
                       current path.

        PATH LEN.      length of current path.

        RADIUS/SURF    minimum principal radius of curvature where the
                       tool side of the surface is concave.

        PATCH          patch number  )   of point on part surface
        U - SRF        u parameter   )   at which the above


                                       229

V - SRF v parameter ) minimum occurred. U - DRV u parameter ) of associated drive control V - DRV v parameter ) surface point. RADIUS/SURF minimum principal radius of curvature where the tool side of the surface is convex PATCH patch number ) of point on part surface U - SRF u parameter ) at which the above V - SRF v parameter ) minimum occurred

8.4.4 REGIONAL MILLING CLFILE FORMAT


        The regional milling command,  SMIL,  operates like the POCKET
        command,  and generates a POCKET header command on the  CLFILE
        followed  by  one  or more GOTO records  defining  the  cutter
        locations  and  tool  orientations  (if  required).     FEDRAT
        records   are  automatically  inserted  between  paths  during
        regional clearance control,  as shown in the following extract
        from  the  CLPRNT generated by the example  program  given  in
        Section 8.4.2.

         1 PARTNO  FIG 8.7 REGIONAL TOOL CONTROL

         5 UNITS/MM

        39 CUTTER/    10.0000,     5.0000

        41 FROM /  STPT  (     0)

        41                  X              Y               Z
                       50.0000000     -60.0000000     50.0000000

        54 POCKET

        54 GOTO

        54             29.9999408     -15.0001049     25.2813358
                       32.9617996     -15.0001077     25.5262947
                       35.3968353     -15.0001087     25.7287387
                       40.0002441     -15.0001087     25.8567237
                       43.7345619     -15.0001077     25.9056396
                       47.5529518     -15.0001058     25.8720970
                       51.3971214     -15.0001029     25.7544670
                       55.2055816     -15.0000982     25.5532073
                       58.0020980     -15.0000114     25.3487453
                       60.7147293     -14.9999732     25.1007022
                       64.1570053     -15.0000877     24.7075939
                       67.0785446     -15.0000743     24.3260345


                                       230

70.0000915 -15.0000686 23.9134235 54 FEDRAT/ 200.0000 54 GOTO 54 70.0004119 -17.4781227 23.6054039 70.0003051 -19.6447601 23.2782897 70.0003662 -20.7345848 23.0930557 54 FEDRAT/ 100.0000 54 GOTO 54 65.7345275 -20.7347278 23.6098308 62.2279968 -20.7346401 23.9676532 58.4820823 -20.7347431 24.2668819 54.5071678 -20.7347488 24.5004215 50.3947906 -20.7347526 24.6577339 46.2183952 -20.7347545 24.7328739 42.0598335 -20.7347564 24.7225208 37.9910316 -20.7347545 24.6263351 35.0479660 -20.7346839 24.4997100 32.5242156 -20.7340621 24.3496341 29.9999179 -20.7339820 24.1572742 54 FEDRAT/ 200.0000 54 GOTO 54 29.9997920 -23.1114540 23.5984230 29.9999504 -25.8220119 22.8930854 29.9999637 -26.6968173 22.6479644 54 FEDRAT/ 100.0000 54 GOTO 54 33.4448585 -26.6967735 22.8658714 37.4729843 -26.6967773 23.0388813 41.8025741 -26.6967773 23.1399250 46.3555526 -26.6967773 23.1608638 51.0141754 -26.6967754 23.0963783 55.6367301 -26.6967716 22.9457893 58.9883232 -26.6969947 22.7792015 62.1941757 -26.6970825 22.5701599 65.2242813 -26.6971015 22.3222560 67.6121292 -26.6968212 22.0885715 69.9985733 -26.6976222 21.8253040 Note that no FEDRAT record has been inserted before the first 231
path by SMIL. It is the responsibility of the programmer to ensure that a FEDRAT statement has been defined before the SMIL command otherwise the post processor will use its default value for feedrate if no value has been previously programmed.

8.5 GENERAL APT COMMANDS APPLICABLE IN REGIONAL MILLING


        The  following  APT  commands are  used  during  the  regional
        milling  of  sculptured  surfaces.    If  omitted  the  system
        default values for the parameters are used.

        CUTTER/d,r     The APT cutter parameters are used during
                       regional milling.   However, at present, only
                       point and ball ended cutters are acceptable
                       and the cutter is treated as a complete sphere.
                       An unacceptable cutter definition will result
                       in error number 3566 - 'GENERAL APT ARELEM
                       CONDITIONS FOR REGIONAL MILLING ARE INVALID
                       (PROBABLY UNACCEPTABLE CUTTER TYPE)', when
                       processing a SMIL command.

        INTOL/...      The inner and outer tolerances are used for
                       the part surface.   If the drive control is
        OUTTOL/..      provided by a synthetic curve, then since
                       a space curve has no 'side', the outer drive
                       surface tolerance is used to construct a
                       tolerance 'tube' around the drive curve. If
                       the drive control is provided by a sculptured
                       surface then again the OUTTOL/ setting for
                       for drive surface is used for drive surface
                       control.

        MAXDP/a,b      Sets limits for cut vectors and tool paths.
                       For regional milling, variable a, which
                       specifies the maximum length of a cut vector
                       during continuous path motion, is used
                       primarily to override problems that may occur
                       as a result of stepout calculations based on            -

                       curvature. If a satisfactory stepout has not
                       been achieved after 20 iterations then error
                       number 3552 - 'THE CUTTER COULD NOT MAKE A
                       PROPER STEPOUT FROM THE CURRENT LOCATION'
                       will be output.









                                       232

Variable b, specifies the maximum length of a tool path generated by SMIL. Note that regional control generates more than one path and this limit is applied to each path separately. Error number 3554 - 'THE TOTAL LENGTH OF THE CURRENT CUTTER PATH EXCEEDED MAXDP SETTING' will occur if a path length exceeds this maximum. NUMPTS/n Maximum number of points in a single tool path. For regional control this applies to each of the multiple paths that may be generated. Error number 3553 - 'MORE CL POINTS WERE GENERATED IN A SINGLE PATH THAN PERMITTED BY NUMPTS SETTING', will result if this value is exceeded. The normal default values for these parameters are: OR IF UNITS/MM PROGRAMMED INTOL 0 0 mm OUTTOL 0.0005 0.0127 mm Max. cut vector length 10 25.4 mm Max. tool path length 200 5080 mm Max. number of points/path 400

8.6 SPECIFICATION OF REGIONAL MILLING CONDITIONS


        The  parameters which specify the surfaces and conditions that
        are to apply to subsequent regional milling operations can  be
        divided into six groups:

                      .  Part surface parameters
                      .  Drive control parameters
                      .  Tool axis orientation
                      .  Feedrate selection
                      .  Step over control
                      .  Clearance plane specification.

        Each  group  is  specified by a single SCON  command  and  are
        discussed  in  detail  in  the  following  subsections.     In
        addition,  there is provision for cancelling the effect of any
        or all of these sets of parameters, see Section 8.6.7.







                                       233

Figure 8.8 Figure 8.9 234
The groups specifying part surface, drive control and tool axis orientation are mandatory for all types of regional milling tool control. In addition, the feedrate and step over groups are required for both types of regional clearance tool path generation and the clearance plane must also be specified for the pick feed type of control. See Section 8.7.5 for further details.

8.6.1 PART SURFACE PARAMETERS


        The  following information is required about the part  surface
        (surface to be machined) during regional milling:

                      .  surface canonical form data
                      .  tool to surface relationship
                      .  side of surface to be machined
                      .  amount of material to be left on
                         or removed from the surface

        The  part  surface  can be  any  slope  continuous  sculptured
        surface.    If the surface has a mesh structure it may also be
        used for drive control.

        The  SCON command which specifies the part surface  parameters
        takes the form

                      SCON/PS, TO, surface, PLUS ,thick
                               ON           MINUS

        where     PS            indicates part surface parameters

                  TO            specifies  that  the  tool  is  to  be
                                offset from the part surface,  in  the
                                same  sense  as for  conventional  APT
                                (TLOFPS), see Figure 8.8.

                  ON            specifies that the tool tip must be ON
                                the  part  surface,   like  TLONPS  in
                                conventional  APT.    This  may  cause
                                gouging, see Figure 8.9.

                  surface       is  the  symbolic  name  of  the  part
                                surface,   which  must  be  previously
                                defined.

                  PLUS          indicates  that the tool side  of  the
                                surface  is  determined by  the  cross
                                product,SN,  of the TANSPL vector with
                                the CRSSPL vector, see Figure 8.9.




                                       235

MINUS indicates that the tool is on the opposite side of the surface, see Figure 8.9. thick is a scalar quantity representing the thickness of material to be left on or removed from the surface. A positive quantity will be left on and a negative quantity removed. In the event of the surface referenced by the SCON/PS statement being incorrectly defined, error number 3522 - 'A MINOR WORD OR CANONICAL FORM IN THE INPUT STREAM IS IN THE WRONG POSITION OR INVALID' will occur.

8.6.2 DRIVE CONTROL PARAMETERS


        Drive  control can be with respect to either a synthetic curve
        or a sculptured surface.  The parameters required for regional
        milling  are  basically the same for both  types  of  control,
        namely,

                      .  curve or surface canonical form data
                      .  bounds of the drive geometry
                      .  type of drive control, 'ON' or 'AT'
                      .  tool projection vector(s)


        The only limitation on the drive control geometry is that when
        a sculptured surface is used for drive control, it must have a
        mesh structure,  e.g.  SMESH, GENCUR, REVOLV, RULED and 'cross
        product' type surfaces.

        A drive control curve can have slope discontinuity, be closed,
        repeat or cross itself.

        An  incorrectly  defined surface will result in  error  number
        3522 - 'AN INPUT CANONICAL FORM HAS NOT BEEN DEFINED PROPERLY'

        There  are two forms of the SCON command for specifying  drive
        control  parameters,  one for control by a synthetic curve and
        the other by a sculptured surface.











                                       236

For synthetic curve drive control: SCON/DS,curve,PARAM,ulow,uhigh, AT, vector ON CRSSPL where DS indicates drive control parameters. curve symbolic name of a previously defined synthetic curve. PARAM indicates that drive control parametric limits follow, i.e. bounds of the drive geometry. ulow lower extent of drive curve. uhigh upper extent of drive curve. If ulow exceeds uhigh then error number 3523 - 'AN INPUT CANONICAL FORM IS NOT SUITABLE FOR THIS APPLICATION' will occur. AT 'AT' type drive control, tool contacts the part surface at the point where the tool projection vector from a control point pierces the surface. See Figure 8.3. ON 'ON' type drive control, tool tip is constrained to be ON the tool projection vector from a control point. See Figure 8.2. vector fixed tool projection vector from the curve to the part surface, may be the symbolic name of a previously defined vector or a nested definition. CRSSPL indicates that the synthetic curve posseses a complete fence of CRSSPL vectors which are to be used as variable tool projection vectors. 237
For drive control by a mesh structured sculptured surface: SCON/DS,surface,PARAM,ulow,uhigh,vlow,vhigh, AT, vector ON NORMAL where DS indicates drive control parameters. surface symbolic name of a previously defined mesh structured sculptured surface. PARAM indicates that drive control parametric limits follow,i.e. bounds of the drive surface. ulow lower extent in the TANSPL direction. uhigh upper extent in the TANSPL direction. vlow lower extent in the CRSSPL direction. vhigh upper extent in the CRSSPL direction. AT 'AT' type drive control, see Figure 8.3. ON 'ON' type drive control, see Figure 8.2. vector fixed vectorial direction of tool projection. NORMAL the surface normal at a point on the drive surface will be used as the tool projection vector. If ulow exceeds uhigh or vlow exceeds vhigh then error number 3523 - 'AN INPUT CANONICAL FORM IS NOT SUITABLE FOR THIS APPLICATION' will occur. Note, tool projection vectors or their inverse must intersect the part surface otherwise error number 3551 - 'THE CUTTER COULD NOT CONTACT THE PART SURFACE FROM THE PRESENT POSITION' will ocur whilst processing subsequent SMIL commands. 238

8.6.3 TOOL AXIS ORIENTATION


        For  regional  milling,  the tool axis can be either fixed  or
        variable.    If  the  tool axis vectors are  required  on  the
        CLFILE then MULTAX must be programmed as for conventional APT.
        The  tool axis orientation must be specified even if it  fixed
        parallel to the positive z axis.   For a fixed tool axis,  the
        SCON command is:

                               SCON/AXIS,vector

        in which case the tool axis will be orientated parallel to the
        specified  vector,  and  its component will be output  to  the
        CLFILE if MULTAX has been programmed.

        For a variable tool axis, the command takes the form:

                           SCON/AXIS,NORMDS, PLUS
                                             MINUS

        for  drive  control  by a curve the attached fence  of  CRSSPL
        vectors will be used for tool axis orientation and for control
        by a sculptured surface, the surface normal will be used.   In
        either case,  the modifier,  PLUS will take the orientation of
        the  variable  vector  for the tool axis  whereas  MINUS  will
        reverse it.



























                                       239

8.6.4 FEEDRATE SELECTION


        The  different  feedrates  that  are  required  for  automatic
        selection  during  the  generation of a tool path  to  mill  a
        region, are specified by the command:

                            SCON/FEED,f1,f2,f3,f4

        where     f1            feedrate for passes in the major
                                direction while  regional milling.

                  f2            feedrate for side stepping between
                                major passes.

                  f3            feedrate for plunging into material,
                                when this is required.

                  f4            feedrate for rapid withdrawl to and
                                traverse across a clearance plane.

        All  four  values  must be input,  but a zero  value  will  be
        ignored  during regional clearance processing.    If not error
        number  3524  - 'TOO MANY OR FEW PARAMETERS HAVE  BEEN  INPUT'
        will occur.

        Note  that  the  feedrate for the first  pass  of  a  regional
        clearance  sequence  must be explicitly programmed  (FEDRAT/f)
        before the SMIL command.

        Also,   this  command  will  not  select  feedrates  for   the
        positioning  and single path forms of the SMIL command,  again
        they should be explicitly programmed.





















                                       240

8.6.5 STEPOVER CONTROL


        The  stepover  between passes during regional  clearance  tool
        path generation can be controlled by either a fixed parametric
        step   across  the  drive  surface  or  maximum  cusp   height
        requirements further limited by either physical or  parametric
        step size.   In addition, it may be desirable to lift the tool
        off from the surface whilst moving from one pass to the next.

        The stepover conditions are specified by the command:

                           SCON/STEPOV,s1,s2,s3,s4

        where     s1 = 0        fixed parametric step required.

                     > 0        maximum allowable cusp height between
                                consecutive passes.

                  s2 > 0        maximum physical stepover distance.

                     < 0        if s1 = 0 parametric stepover across
                                          the drive surface.
                                   s1 > 0 maximum parametric step.

                  s3            additional thickness to be added to
                                part surface while stepping over.
                                Equivalent to lift off and plunge
                                between passes.

                  s4            not used, but must be entered other-
                                wise error number 3524 - 'TOO MANY OR
                                FEW PARAMETERS HAVE BEEN INPUT' will
                                occur.




















                                       241

8.6.6 CLEARANCE PLANE SPECIFICATION


        The  clearance plane for rapid withdrawal and traverse  during
        the  SMIL/PICKFD type of regional clearance is defined by  the
        SCON command,

                               SCON/FEED,plane

        where     plane         is an APT plane.



8.6.7 CANCELLING REGIONAL MILLING CONDITIONS


        Provision  is made to globably or selectively cancel  regional
        milling conditions.

        All regional milling conditions are cancelled by the command:

                                SCON/INIT,ALL

        This  is  the state of all regional milling conditions at  the
        start  of a program.    If an SMIL command requires a  set  of
        conditions  that have not been specified,  that is one in  the
        cancelled  state,  error no.  3565 will be output and no  tool
        path   produced.     Diagnostic  information  is  supplied  to
        identify  which set or sets of data have not  been  specified,
        see Section 8.8.

        Sets of data can be selectively cancelled by using the command

                         SCON/INIT,PS,DS,etc .......





















                                       242

8.7 REGIONAL MILLING TOOL CONTROL


        There   are  four  regional  milling  tool  control   commands
        available,  one  for  tool positioning,  one for generating  a
        single tool path and two for area clearance.

        They are:

                 SMIL/POSN,.....    tool positioning
                 SMIL/PATH,.....    single tool path
                 SMIL/ZIGZAG,...    zigzag area clearance
                 SMIL/PICKFD,...    pick feed area clearance.

        Each   command  is  described  in  detail  in  the   following
        subsections.   As pointed out in the previous section, certain
        conditions must be specified in order that a regional  milling
        command can be processed satisfactorily.   These are indicated
        in   each   subsection,   in  addition  a  summary  of   these
        prerequisites is given in Section 8.7.5.

        For  all regional milling tool control commands MULTAX can  be
        ON or OFF as required.

        As for SCON,  all surfaces referenced must have been correctly
        defined otherwise error number 3562 - 'AN INPUT CANONICAL FORM
        HAS  NOT  BEEN DEFINED PROPERLY' will  result.    Likewise  if
        invalid  vocabulary or parameter types are used  error  number
        3561  - 'A MINOR WORD OR CANONICAL FORM IN THE INPUT STREAM IS
        IN THE WRONG POSITION OR INVALID' will be output.

        If a part of drive surface cannot be loaded into memory whilst
        processing  on  SMIL  command,  either  because  it  has  been
        incorrectly  defined  or there is insufficient space  for  the
        surface  canonical form,  error number 3567 - 'PART  OR  DRIVE
        GEOMETRY  COULD NOT BE FETCHED BECAUSE OF DEFINITION ERROR  OR
        SPACE LIMITATION' will occur.

















                                       243

Figure 8.10 Figure 8.11 Figure 8.12 244

8.7.1 TOOL POSITIONING


        The  positioning  command  is used to produce  a  single  tool
        position,   providing   the  programmer  with  convenient  and
        flexible tool control when required.   Unlike conventional APT
        motion commands,  the PATH and area clearance commands do  not
        depend  on a successful positioning command to bring the  tool
        into contact with the surface.

        The command format is,
                                                 scalar
                     SMIL/POSN,DS,PARAM,u,v,INCR,vector
                                                 plane

        where     u,v           are the parameters of the drive
                                control point and tool projection
                                vector, within the range specified
                                for the drive control geometry in the
                                preceding SCON/DS, which are to
                                control the tool position.   u or v
                                outside this range will result in
                                error number 3563 - 'AN INPUT
                                CANONICAL FORM IS NOT SUITABLE FOR
                                THIS APPLICATION'.

                                If the drive geometry is a curve, the
                                v parameter must be included but is
                                ignored.

                       scalar
                  INCR,vector   indicates how the tool is to be backed
                       plane    off from the part surface.  This
                                couplet must be programmed even if no
                                back off is required, in which case
                                INCR,0 should be used.

                  scalar        causes the final tool position to be
                                back along the tool projection
                                direction by this scalar amount. See
                                Figure 8.10.

                  vector        causes the final tool position to be
                                the result of moving the tool from
                                the surface contact point in the
                                direction and by the magnitude of the
                                vector, as shown in Figure 8.11.

                  plane         causes the tool end to be retraced
                                the plane by the shortest distance
                                from the surface contact point.
                                Figure 8.12.


                                       245

Figure 8.13 246
Only the final cutter offset position is output to the cutter location file. Before SMIL/POSN can be successfully processed, the part surface, drive control parameters and tool axis orientation must have been satisfactorily defined. A typical use of this command would be to bring the tool safely into contact with the surface to be machined, as shown in Figure 8.13, by first positioning the tool above the initial position at rapid traverse rate, then plunging into the part to the initial position at a suitable feedrate. e.g. V1 = VECTOR/0,0,2 RAPID SMIL/POSN,DS,PARAM,0,0,INCR,V1 FEDRAT/2 SMIL/POSN,DS,PARAM,0,0,INCR,0 which would result in the following records being written to the cutter location file. RAPID POCKET GOTO 2.2376111 0.0000000 3.9474828 FEDRAT 2.0000 POCKET GOTO 2.2376111 0.0000000 1.9474828

8.7.2 SINGLE TOOL PATH


        The  SMIL/PATH,...  command  is used to program a single  tool
        path.   The drive control geometry for the path can be  either
        an  explicitly defined synthetic curve or one of the  infinite
        number  of  implicit  curves  contained  within  a  sculptured
        surface.







                                       247

The command format is, SMIL/PATH,DS,PARAM,ust,vst, TANSPL , PLUS ,1! CRSSPL MINUS - where ust,vst are the parameters of the initial point on the drive control surface. If the drive geometry is a synthetic curve, the vst parameter must still be included but is ignored. The point must be within the bounds of the drive geometry region as defined in the preceding SCON/DS statement, otherwise error number 3563 - 'AN INPUT CANONICAL FORM IS NOT SUITABLE FOR THIS APPLICATION' will occur. TANSPL indicates that the TANSPL curve through the point selected by ust and vst is to be used for tool path control. CRSSPL indicates that the CRSSPL curve through point ust,vst is to be used for path control. Note: Only TANSPL has any meaning if the drive control geometry is a synthetic curve. PLUS indicates that the drive control curve is to be traversed in the direction of increasing parametric values. MINUS indicates that the direction of traverse is to be that of decreasing parametric value. 1 the final optional parameter, if set to 1 will cause the first cut vector of the tool path to be omitted from the cutter location file. If this parameter is omitted or set to zero, then the first cut vector will be produced. The tool path generated will start at the initial position selected by ust,vst and extent to the boundary of the drive geometry specified in the preceding SCON/DS statement, in the indicated direction. 248
No feedrate commands are generated by the SMIL/PATH command, only cutter location data. It is the responsibility of the programmer to insert FEDRAT commands where required. The optional feature to omit the first cut vector may be required to prevent dwell marks caused by repetition of cutter location, or to permit flexible feedrate selection. For example, if the tool is brought into contact with the surface at a reduced feed by a SMIL/POSN command, then the feed can be increased for the SMIL/PATH command and the omission of the first cut vector will prevent a dwell mark occurring, in the following manner, FEDRAT/2 SMIL/POSN,DS,PARAM,0,0,INCR,0 FEDRAT/4 SMIL/PATH,DS,PARAM,0,0,TANSPL,PLUS,1 which would result in the following records being written to the cutter location file. FEDRAT/ 2.0000 POCKET GOTO 2.2376111 0.0000000 1.9474828 FEDRAT/ 4.0000 POCKET GOTO 2.2376112 1.0000000 1.9474827 2.2376112 2.0000000 1.9474827 Before SMIL/PATH can be successfully processed the part surface, drive control parameters and tool axis orientation must have been satisfactorily defined by preceding SCON statements. 249
250

8.7.3 ZIGZAG AREA CLEARANCE


        The  ZIGZAG type of area clearance will produce a sequence  of
        tool  paths  zigzaging back and forth  across  the  sculptured
        surface.   The user can select the major and minor directions,
        the  initial  major  motion  direction and  the  direction  of
        stepover between passes.   The boundaries of the region to  be
        machined are defined by the preceding SCON/DS statement.   The
        drive  control  geometry must be a mesh structured  sculptured
        surface.

        The command format is,

        SMIL/ZIGZAG,DS,PARAM,ust,vst,TANSPL ,PLUS  ,STEPOV,PLUS  ,1!
                                     CRSSPL  MINUS         MINUS

        where      ust,vst      are the parameters of the drive
                                conrol point at which the zigzag
                                path is to begin.

                  TANSPL        indicates that the major tool path is
                                to be in the tangent spline direction
                                of the drive control surface.

                  CRSSPL        indicates that the major tool path is
                                to be in the cross spline direction
                                of the drive control surface.

                  PLUS          indicates that the initial motion
                                direction is to be  in the direction
                                of increasing parametric value.

                  MINUS         indicates that the initial motion
                                direction is to be in the direction
                                of decreasing parametric value.

                  STEPOV,PLUS   indicates that the stepover is to be
                         MINUS  in the direction of increasing
                                parameter (PLUS) or decreasing
                                parameter (MINUS), along the alternate
                                spline direction to that selected for
                                the major tool path.

                  1             the final optional parameter, if set
                                to the scalar value 1 will cause the
                                first cut vector to be omitted, as for
                                for SMIL/PATH.






                                       251

Figure 8.14 252
Although feedrates are automatically selected between paths according to the values specified in the preceding SCON/FEED statement, no feedrate is generated for the first path. It is the users responsibility to insert a FEDRAT command before the SMIL/ZIGZAG command for the first path. Stepover is controlled by the parameters set in the preceding SCON/STEPOV statement. The basic zigzag area clearance path, shown in Figure 8.14 is a path along the first curve in the initial major direction, followed by a lift off, as specified in SCON/STEPOV, then a side step to the next major path at the feedrate selected for side stepping, on a parallel offset surface, followed by a plunge at the appropriate feed back to the surface before moving off back along the next curve in the major direction at the specified feed. The following is an extract from the cutter location file, showing the insertion of feedrates, lift off, stepover and plunge between passes. 57 POCKET 57 GOTO 57 33.9618015 -15.0001075 25.5262944 36.3968337 -15.0001086 25.7287396 40.0002435 -15.0001087 25.8567235 43.7345622 -15.0001078 25.9056393 47.5529528 -15.0001059 25.8720966 51.3971227 -15.0001028 25.7544671 55.2055816 -15.0000984 25.5532068 58.0020993 -15.0000113 25.3487458 60.7147297 -14.9999734 25.1007017 64.1570027 -15.0000877 24.7075939 67.0785479 -15.0000747 24.3260350 70.0000920 -15.0000688 23.9134241 57 FEDRAT/ 200.0000 57 GOTO 57 70.0000253 -15.0002272 28.9957739 70.0000868 -17.2750440 28.7257518 70.0000815 -20.1944494 28.2976792 70.0002576 -20.7347035 28.2082598 57 FEDRAT/ 57 GOTO 57 70.0000790 -20.7347249 23.0930685 253
Figure 8.15 254
57 FEDRAT/ 100.0000 57 GOTO 57 65.7345272 -20.7347280 23.6098304 62.2279969 -20.7346400 23.9676527 58.4820805 -20.7347431 24.2668810 54.5071686 -20.7347467 24.5004211 50.3947909 -20.7347528 24.6577347 46.2183950 -20.7347552 24.7328730 42.0598344 -20.7347560 24.7225200 37.9910331 -20.7347551 24.6263355 35.0479674 -20.7346842 24.4997095 32.5242139 -20.7340728 24.3496347 29.9999189 -20.7339826 24.1572735 The final tool position of a ZIGZAG area clearance sequence is at the end of the last path in the major direction, in contact with the surface. If a zero lift off is requested the lift off and plunge records will be omitted and a path similar to that shown in Figure 8.15 will result. The cutter location file for which is listed in Section 8.4.4. In order that SMIL/ZIGZAG can be successfully processed, the part surface, drive control parameters, tool axis orientation, feedrates and stepover parameters must have been satisfactorily defined by preceding SCON statements.

8.7.4 PICKFD AREA CLEARANCE


        The  second type of area clearance,  PICKFD,  produces a  tool
        path which gives unidirectional machining passes,  so that all
        material  removal  is  done by either  climb  or  conventional
        milling.    As  for ZIGZAG area clearance the user can  select
        the major and minor directions,  the direction of cut, and the
        direction  of stepover.    The boundaries of the region to  be
        machined  are defined by the preceding SCON/DS  statement  and
        the  clearance plane to which the tool is retracted and across
        which  the  tool is traversed  between  machining  passes,  is
        defined by the preceding SCON/FEED,plane statement.











                                       255

256
The command format is SMIL/PICKFD,DS,PARAM,ust,vst, TANSPL, PLUS ,STEPOV, PLUS ,1! CRSSPL MINUS MINUS where ust,vst are the parameters of the drive control point at which the PICKFD path is to begin. TANSPL indicates that the major tool path is to be in the tangent spline direction of the drive control surface. CRSSPL indicates that the major tool path is to be in the cross spline direction of the drive control surface. PLUS indicates that the machining direction is to be in the direction of increasing parametric value. MINUS indicates that the machining direction is to be in the direction of decreasing parametric value. STEPOV,PLUS indicates that the direction of MINUS stepover is to be along the alternate spline direction to that selected for the machining passes. PLUS for increasing parameter. MINUS for decreasing parameter. 1 the final optional parameter if set to the scalar value 1 will cause the first cut vector to be omitted, as for SMIL/PATH. Feedrates are automatically selected between paths according to the values specified in the preceding SCON/FEED statement. Note that no feedrate is generated for the first path, it is the users responsibility to select this explicitly. Stepover is controlled by the parameters set in the preceding SCON/STEPOV statement. 257
Figure 8.16 258
The basic pick and feed area clearance tool path, shown in Figure 8.16, is a machining pass along the first curve in the selected major direction, from the start point to the defined extent (2), followed by a retraction to (3) and traverse back across the clearance plane, at the traverse feedrate, f4 to a position above the start of the path (4). The cutter then plunges to its initial position (5) at the plunge feed, f3, before lifting off (6) and stepping over to a point above the start of the next path (7), and the stepover feed, f2. Finally the tool plunges to the start of the next path (8) at the plunge feed ready to repeat the sequence. The final tool position of a PICKFD area clearance sequence is at the end of the last machining pass in contact with the surface. The following extract from the cutter location file, illustrates the tool path generated showing the insertion of feedrates and additional movements between each machining pass. 53 POCKET 53 GOTO 53 29.9999405 -15.0001048 25.2813363 32.9618015 -15.0001075 25.5262944 36.3968337 -15.0001086 25.7287396 40.0002435 -15.0001087 25.8567235 43.7345622 -15.0001078 25.9056393 47.5529528 -15.0001059 25.8720966 51.3971227 -15.0001028 25.7544671 55.2055816 -15.0000984 25.5532068 58.0020993 -15.0000113 25.3487458 60.7147297 -14.9999734 25.1007017 64.1570027 -15.0000877 24.7075939 67.0785479 -15.0000747 24.3260350 70.0000920 -15.0000688 23.9134241 53 FEDRAT/ 3000.0000 53 GOTO 53 70.0000920 -15.0000688 40.0000000 29.9999405 -15.0001048 40.0000000 53 FEDRAT/ 50.0000 53 GOTO 53 29.9999405 -15.0001048 25.2813363 259
53 FEDRAT/ 200.0000 53 GOTO 53 29.9999035 -15.0000595 30.3711513 29.9991972 -15.8256773 29.8765466 29.9999480 -20.7347432 29.2927104 53 FEDRAT/ 50.0000 53 GOTO 53 29.9999463 -20.7347486 24.1571047 53 FEDRAT/ 100.0000 53 GOTO 53 29.9999463 -20.7347486 24.1571047 33.2091889 -20.7347521 24.3942471 36.8984623 -20.7347546 24.5851539 40.7859712 -20.7347559 24.7018316 44.8325220 -20.7347557 24.7389869 48.9817079 -20.7347538 24.6926526 53.1592948 -20.7347502 24.5612066 57.2868282 -20.7347450 24.3458405 60.3006424 -20.7346830 24.1317031 63.2109600 -20.7346677 23.8753032 66.6054542 -20.7347317 23.5104487 70.0000809 -20.7347202 23.0930691 If zero lift off is requested the additional moves between the machining passes are fewer, as shown in Figure 8.17 namely, retraction to (3) and traverse across the clearance plane to a position above the start point of the current pass (4), plunge to the start point (5), and finally stepover in contact with the surface to the start of the next pass (6). Comparison of the following CLFILE extract with the previous one illustrates the differences in detail. 64.1570027 -15.0000877 24.7075939 67.0785479 -15.0000747 24.3260350 70.0000920 -15.0000688 23.9134241 54 FEDRAT/ 3000.0000 54 GOTO 54 70.0000920 -15.0000688 40.0000000 29.9999405 -15.0001048 40.0000000 54 FEDRAT/ 50.0000 260
Figure 8.17 261
54 GOTO 54 29.9999405 -15.0001048 25.2813363 54 FEDRAT/ 200.0000 54 GOTO 54 29.9986448 -18.0325112 24.7253928 29.9999474 -20.7347487 24.1571048 54 FEDRAT/ 100.0000 54 GOTO 54 29.9999463 -20.7347486 24.1571047 33.2091889 -20.7347521 24.3942471 36.8984623 -20.7347546 24.5851539 40.7859712 -20.7347559 24.7018316 Before SMIL/PICKFD can be successfully processed, the part surface, drive control parameters, tool axis orientation, feedrates, stepover parameters and clearance plane must have been satisfactorily defined by preceding SCON statements.

8.7.5 SMIL PREREQUISITES


        The following table summarises the SCON statements which  must
        be  satisfactorily  defined before a particular type  of  SMIL
        statement can be successfully processed.

          ----------------------------------------------------
          :             :               SMIL/                :
          ----------------------------------------------------
          : SCON/       :  POSN     PATH    ZIGZAG    PICKFD :
          ----------------------------------------------------
          : PS          :   *        *         *         *   :
          :             :                                    :
          : DS          :   *        *         *         *   :
          :             :                                    :
          : AXIS        :   *        *         *         *   :
          :             :                                    :
          : FEED        :                      *         *   :
          :             :                                    :
          : STEPOV      :                      *         *   :
          :             :                                    :
          : FEED,plane  :                                *   :
          ----------------------------------------------------




                                       262

If any of the required items have not been satisfactorily defined then ERROR 3565 will be indicated and a summary of the status of all the SCON data areas, together with the statement sequence number, error number and other internal variables (see Section 8.8) are printed on the verification listing. A positive value (121) indicates a SCON block has been satisfactorily defined and a negative value (-121) that a block is undefined. For example, DS = 121 PS = 121 FEED = -121 STOV = -121 AXIS = 121 CPLN = -121 would indicate that DS,PS and AXIS have been satisfactorily defined and FEED,STEPOV and clearance plane (CPLN) are undefined.

8.8 REGIONAL MILLING DIAGNOSTICS


        When an error occurs during regional milling, the error number
        is  passed  to  the  CLEDITOR  for  subsequent  ouput  on  the
        verification  listing and processing is restarted in the  same
        manner  as  for  an  ARELEM error.    The  error  numbers  for
        regional  milling  are  in the range 3520  to  3599,  and  are
        detailed in subsections 8.8.2 to 8.8.4.

        In  addition for each occurrence of an error resulting from  a
        SCON  or  SMIL statement during the Execution phase,  a  short
        block  of  information  consisting  of  the  input   statement
        sequence  number,  error number and the values of some  useful
        internal variables is printed.

        For  both  SCON and SMIL the values of the following  internal
        variables are then printed out.

        ISEQ             input statement sequence.

        NLST             address in BLANK COMMON of the last internal
                         parameter for the current input statement.

        NLEN             number of internal parameters for the current
                         input statement.

        IRR              error number.

        ICUR             address in BLANK COMMON of the internal
                         parameter being processed when the error
                         occurred.

        IRBS             base number for the error messages.
                              = 3520 for SCON errors
                              = 3550 for SMIL errors


                                       263

Finally in the case of SMIL a summary of the status of the SCON data areas is printed. This is particularly useful in identifying which block of SCON data is undefined when error 3565 occurs. A positive value (121) indicates that a data area has been satisfactorily defined and a negative value (-121) that it is undefined. The data areas are identified as follows, DS drive control parameters PS part surface data FEED feed rate values STOV stepover parameters AXIS tool axis orientation CPLN clearance plane.

8.8.1 SAMPLE DIAGNOSTIC OUTPUT


        To  illustrate  how  the  diagnostic output  can  be  used  to
        identify  the  cause  of  an  error,  consider  the  following
        erroneous coding.

                  9.  P1 = POINT/0,0,20
                             .
                             .
                             .

                 45.  SCON/DS,DS1,PARAM,0,1,0,1,ON,NORMAL

                 46.  SCON/PS,TO,PS0,MINUS,0

                 47.  SCON/AXIS,P1

                 48.  SMIL/PICKFD,DS,PARAM,0,0,TANSPL,PLUS,
                      STEPOV,PLUS

        which would give the following diagnostic output,

        ***** DEFINITION ERROR 3521 ISN 47 FROM SUBROUTINE SCON *****
              A MINOR WORD OR CANONICAL FORM IN THE INPUT STREAM
              IS IN THE WRONG POSITION OR INVALID.

        ISEQ = 47 NLST = 49 NLEN = 9 IRR = 3521 ICUR = 45 IRBS = 3520
        END = SMIL

        ISEQ = 48 NLST = 61 NLEN = 21 IRR = 3565 ICUR = 61 IRBS = 3550
        DS = 121 PS = 121 FEED = -121 STOV = =121 AXIS = -121
        CPLN = -121

        ***** RESTART DIAGNOSTIC 3565 ISN 51 FROM SUBROUTINE SMIL *****
              AN 'SCON' DATA AREA (DS,PS,FEED,ECT.) HAS NOT BEEN
              DEFINED OR HAS BEEN INCORRECTLY DEFINED.


                                       264

The first error 3521 results because P1 is a point not a vector. In this case it is easily recognized, if not, inserting PPOPTN/INTLNG,ON before the offending statement will give a print of the internal parameters set up for the statement, as follows. 47. SCON/AXIS,P1 MOVE 3 $$TAB $ 146. MOVE 4 $$TAB $$ AXIS MOVE 5 $$TAB $ 19. REPL 3 6 $$TAB 0 P1 MOVE 2 $$TAB $ 9. CALL APT110 $$ SCON - Then by considering the values of NLST,NLEN and ICUR the offending item in the input statement can be identified. In this case, NLST = 49, NLEN = 9 and ICUR = 45, therefore the input statement parameters will start at (NLST-NLEN)=40 so the offending item is in location 5 from the start, (ICUR-start). Examining the internal language print above, it can be seen that the fifth entry in $$TAB is 19, which is the internal code for a point, and that the values defining the point are the coordinates of P1 which are transferred to the next three locations by the REPL instruction. It is not necessary for the user to know and understand all the internal codes used by the system, since in general the parameters stored in $$TAB are in pairs, the first item is the internal code and the second the character form of the input parameter, e.g. MOVE 3 $$TAB $ 146. MOVE 4 $$TAB $$ AXIS. mean that the 3rd entry in $$TAB is 146 and the 4th entry in $$TAB is AXIS. The second error 3563 indicates that an 'SCON' data area has either not been defined or was incorrectly defined. Examining the first line of internal variables, it can be seen that all the parameters in the SMIL statement have been accepted, since NLST and ICUR are both 61. Examining the second line, which gives the status of the SCON data areas, it can be seen that only DS and PS have been satisfactorily defined. FEED, STOV, AXIS and CPLN are all undefined or incorrectly defined. AXIS has obviously been incorrectly defined because of the previous error, the others however have not been defined and by referring to Section 8.7.5 it will be noted that for SMIL/PICKFD all the data areas must be defined for successful processing to occur. 265

8.8.2 SCON ERROR MESSAGES


        The  following error messages may occur whilst  processing  an
        SCON  statement.    See preceding Sections  8.8 and  8.8.1 for a
        detailed explanation of additional diagnostic information.

        3521      A MINOR WORD OR CANONICAL FORM IN THE INPUT
                  STREAM IS IN THE WRONG POSITION OR INVALID

                            Ref:   8.6.1,  8.8.1

        3522      AN INPUT CANNICAL FORM HAS NOT BEEN DEFINED
                  PROPERLY

                            Ref:   8.6.1,  8.6.2

        3523      AN INPUT CANONICAL FORM IS NOT SUITABLE FOR
                  THIS APPLICATION

                            Ref:   8.6.2

        3524      TOO MANY OR FEW PARAMETERS HAVE BEEN INPUT

                            Ref:   8.6.4,  8.6.5

8.8.3 SMIL ERROR MESSAGES


        The  error messages that can occur whilst processing  an  SMIL
        command  fall  into  two  categories,  those which  are  of  a
        semantic origin or relate to the status of required parameters
        and  those  which occur when attempting  to  calculate  cutter
        positions.    This  last group are detected by the  subroutine
        PATH and are detailed in the next section.

        The  first group are detailed below.    An explanation of  the
        additional diagnostic data produced during the Execution Phase
        is given in the preceding Sections  8.8 and  8.8.1.

        3561      A MINOR WORD OR CANONICAL FORM IN THE INPUT STREAM
                  IS IN THE WRONG POSITION OR INVALID

                             Ref:  8.7

        3562      AN INPUT CANONICAL FORM HAS NOT BEEN DEFINED
                  PROPERLY

                             Ref:  8.7

        3563      AN INPUT CANONICAL FORM IS NOT SUITABLE FOR THIS
                  APPLICATION
                            Ref:  8.7.1,  8.7.2


                                       266

3464 TOO MANY OR FEW PARAMETERS HAVE BEEN INPUT 3565 AN SCON DATA AREA (DS,PS,FEED,ETC.) HAS NOT BEEN DEFINED OR HAS BEEN INCORRECTLY DEFINED Ref: 8.6.7, 8.7.5, 8.8.1 3566 GENERAL APT ARELEM CONDITIONS FOR REGIONAL MILLING ARE INVALID (PROBABLY UNACCEPTABLE CUTTER TYPE) Ref: 8.5 3567 PART OR DRIVE GEOMETRY COULD NOT BE FETCHED BECAUSE OF DEFINITION ERROR ON SPACE LIMITATION Ref: 8.7

8.8.4 PATH ERROR MESSAGE


        The  following  error messages can occur whilst attempting  to
        calculate  cutter positions when processing an  SMIL  command.
        See  Sections  8.8  and 8.8.1 for a  detailed  explanation  of
        additional diagnostic data provided.

        3551      THE CUTTER COULD NOT CONTACT THE PART SURFACE
                  FROM THE PRESENT POSITION

                            Ref:  8.6.2

        3552      THE CUTTER COULD NOT MAKE A PROPER STEPOUT FROM
                  THE CURRENT LOCATION

                            Ref:  8.5

        3553      MORE CL POINTS WERE GENERATED IN A SINGLE PATH
                  THAN PERMITTED BY NUMPTS SETTING

                            Ref:  8.5

        3554      THE TOTAL LENGTH OF THE CURRENT CUTTER PATH
                  EXCEEDED THE MAXDP SETTING

                            Ref:  8.5








                                       267

268