Abstract:
A method of controlling the movement of a processing head of a machine tool includes monitoring the position of the processing head along a first coordinate direction, monitoring the movement of the processing head along a second coordinate direction different from the first coordinate direction, and limiting the acceleration or the change in acceleration of the processing head along the second coordinate direction to a value below a predetermined maximum value, wherein the predetermined maximum value depends on the position of the processing head along the first coordinate direction.

Description:
TECHNICAL FIELD  
       [0001]     This invention relates to machine tools, and more particularly to a machine tool with acceleration control.  
       BACKGROUND  
       [0002]     The processing head of a machine tool often moves in two or three dimensions during operation. The acceleration and acceleration changes of a processing head are critical factors in the dynamic operation of a machine tool and can significantly influence the productivity of the machine tool. At the same time, the dynamics of the processing head have a significant influence on the productivity of the machine tool. The acceleration and acceleration changes of the processing head are conventionally adjusted in correspondence with the machine structure, amount of load on the processing head, characteristics of the motor driving the motion of the processing head, the curve followed by the processing head, and the process technology. However, the positioning accuracy of the processing head relative to one coordinate often depends on its position relative to another orthogonal coordinate.  
       SUMMARY  
       [0003]     Methods and apparatus are disclosed for operating a machine tool with a processing head. The acceleration of the processing head of the machine tool is controlled to reduce the deleterious effects of dynamic forces on the positioning accuracy of the processing head.  
         [0004]     In a first general aspect, methods of controlling movement of a processing head of a machine tool include monitoring a position of the processing head along a first coordinate direction, monitoring the movement of the processing head along a second coordinate direction different from the first coordinate direction, and limiting an acceleration of the processing head along the second coordinate direction to a value below a predetermined maximum value, where the predetermined maximum value decreases as a function of the position of the processing head along the first coordinate direction.  
         [0005]     In another embodiment, methods of controlling movement of a processing head of a machine tool include monitoring a position of the processing head along a first coordinate direction, monitoring the movement of the processing head along a second coordinate direction different from the first coordinate direction, and limiting a change in acceleration of the processing head along the second coordinate direction to a value below a predetermined maximum value, where the predetermined maximum value decreases as a function of the position of the processing head along the first coordinate direction.  
         [0006]     In another aspect, a computer program product, tangibly stored on a machine-readable medium, for controlling the movement of a processing head of a machine tool, includes instructions for causing a processor to receive information about a position of the processing head along a first coordinate direction; receive information about movement of the processing head along a second coordinate direction that is different from the first coordinate direction, and limit the acceleration of the processing-head along the second coordinate direction to a value below a predetermined maximum value, wherein the predetermined maximum value decreases as a function of the position of the processing head along the first coordinate direction.  
         [0007]     In another embodiment, a computer program product, tangibly stored on a machine readable medium, for controlling the movement of a processing head of a machine tool, includes instructions for causing a processor to receive information about a position of the processing head along a first coordinate direction; receive information about movement of the processing head along a second coordinate direction that is different from the first coordinate direction, and limit a change in an acceleration of the processing head along the second coordinate direction to a value below a predetermined maximum value, wherein the predetermined maximum value decreases as a function of the position of the processing head along the first coordinate direction.  
         [0008]     The methods and the computer program products can include one or more of the following features. For example, a positioning accuracy of the processing head in the second coordinate direction can depend on the head&#39;s position in the first coordinate direction an on the head&#39;s acceleration and/or change in acceleration in the second coordinate direction. The predetermined maximum value can decrease continuously as the distance of the processing head increases along the first coordinate direction. The predetermined maximum value can have different discrete values for different discrete ranges of positions in the first coordinate direction of the processing head, and lengths of the ranges of positions along the first coordinate direction can decrease monotonically along the first coordinate position.  
         [0009]     In another general aspect, a machine tool includes a processing head that is displaceable along a first coordinate direction and along a second coordinate direction that is different from the first coordinate direction, a sensor adapted to monitor the position of the processing head along the first coordinate direction, a memory adapted to store data for determining a maximum allowable value for an acceleration of the processing head in the second coordinate direction, and a processor adapted to limit the acceleration of the processing head in the second coordinate direction to a value lower than a maximum allowable value, wherein the maximum allowable value is determined from the data stored in the memory and from the position of the processing head along the first coordinate direction, and wherein the maximum allowable value decreases as a function of the position of the processing head along the first coordinate direction.  
         [0010]     In another embodiment, a machine tool includes a processing head that is displaceable along a first coordinate direction and along a second coordinate direction that is different from the first coordinate direction, a sensor adapted to monitor the position of the processing head along the first coordinate direction, a memory adapted to store data for determining a maximum allowable value for a change in an acceleration of the processing head in the second coordinate direction, and a processor adapted to limit the change in the acceleration of the processing head in the second coordinate direction to a value lower than a maximum allowable value, wherein the maximum allowable value is determined from the data stored in the memory and from the position of the processing head along the first coordinate direction, and wherein the maximum allowable value decreases as a function of the position of the processing head along the first coordinate direction.  
         [0011]     The machine tool can include one or more of the following features. For example, a positioning accuracy of the processing head in the second coordinate direction can depend on the head&#39;s position in the first coordinate direction an on the head&#39;s acceleration and/or change in acceleration in the second coordinate direction. The memory can be adapted for storing a list of maximum allowable values for the acceleration and/or the change in acceleration. The maximum allowable value of the acceleration and/or the change in acceleration can decrease continuously as the distance of the processing head increases along the first coordinate direction. The processing head of the machine tool can be displaceable in a working area, where the working area is divided along the first coordinate direction into a plurality of zones and where a maximum allowable value for the acceleration and/or the change in acceleration of the processing head in the second coordinate direction is associated with each zone. The lengths of at least three consecutive zones in the first coordinate direction can decrease as the distance of the processing head from an origin position increases along the first coordinate direction. The machine tool can further include an arm that is adapted for displacement in the second coordinate direction and upon which the processing head can be guided in the first coordinate direction. The machine tool can further include a beam that is adapted for displacement in the second coordinate direction and upon which the processing head can be guided in the first coordinate direction, where the beam is supported at both ends of the beam, and the beam is displaceably guided along the second coordinate direction. The machine tool can further include a scissor-type drive upon which the processing head is mounted and which is adapted to displace the processing head along the first and second coordinate directions. The processing head can be displaceable along at least three coordinates.  
         [0012]     Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Although methods and materials similar or equivalent to those described herein can be used in the practice or testing of the present invention, suitable methods and materials are described below. All publications, patent applications, patents, and other references mentioned herein are incorporated by reference in their entirety. In case of conflict, the present specification, including definitions, will control. In addition, the materials, methods, and examples are illustrative only and not intended to be limiting.  
         [0013]     Other features and advantages of the invention will be apparent from the following detailed description, and from the claims. 
     
    
     DESCRIPTION OF DRAWINGS  
       [0014]      FIG. 1   a  is a schematic top view of a machine tool with a processing head in a first position along a cantilever.  
         [0015]      FIG. 1   b  is a schematic top view of a machine tool with a processing head in a second position along a cantilever.  
         [0016]      FIG. 1   c  is a schematic top view of a machine tool with a processing head in a third position along a cantilever.  
         [0017]      FIG. 2   a  is a plot of the dependence of a maximum allowable acceleration in the x-direction for a processing head as a function of the y-position of the processing head.  
         [0018]      FIG. 2   b  is a plot of the dependence of a maximum allowable acceleration in the x-direction for a processing head as a function of the y-position of the processing head.  
         [0019]      FIG. 3  is a schematic diagram of an area in which the processing head is used.  
         [0020]      FIG. 4  is a schematic top view of a machine tool with a processing head supported on a portal that slides along two rails.  
         [0021]      FIG. 5  is a plot of the dependence of a maximum allowable acceleration in the x-direction for a processing head as a function of the y-position of the processing head.  
         [0022]      FIG. 6   a  is a schematic top view of a machine tool with a processing head supported by a scissor drive.  
         [0023]      FIG. 6   b  is a schematic top view of a machine tool with a processing head supported by a scissor drive.  
         [0024]      FIG. 7  is a schematic top view of a machine tool with a processing head supported by three rod drives.  
         [0025]      FIG. 8  is a schematic diagram of a system for controlling the acceleration of a processing head of a machine tool. 
     
    
       [0026]     Like reference symbols in the various drawings indicate like elements.  
       DETAILED DESCRIPTION  
       [0027]      FIG. 1  shows a machine tool  1  that includes a cantilever arm  3  supported at one end by a guide rail  2  and that extends perpendicularly from the guide rail  2  over a work area  6 . The cantilever arm  3  can be displaced by a drive motor  32  along the guide rail  2  in the direction of the x-axis or x-coordinate. A processing head  4  (e.g., a laser cutting head of a laser-cutting machine or a processing tool of a machine tool) is supported by the cantilever arm  3  and can be moved by a drive motor  32  along the cantilever arm  3  in the direction of the y-axis or y-coordinate. The drive motors that move the cantilever arm  3  in the x-direction and move the processing head  4  along the cantilever arm  3  in the y-direction can be different motors or can be the same motor that is geared to move the processing head in different directions. The position of the processing head  4  along the cantilever arm  3  in the y-direction can be monitored directly by a sensor  32 . Alternatively, the y-position of the head  4  can be monitored indirectly by the sensor  32 . For example, the sensor  32  can monitor the position of a gear, cable, piston, or other means whose position corresponds to the y-position of the head  4 , or the sensor can monitor an electrical, optical or other signal that corresponds to the y-position of the head  4 . Thus, sensor  32  can monitor the position of the processing head  4 , either directly or indirectly. A control unit  5  can be connected to the drive motor(s) to control the motion of the cantilever arm  3  and the processing head  4  and to locate the processing head  4  in a desired x-y position above the work area  6 .  
         [0028]     The control unit  5  can be, for example, a computer or a digital or analog processor that receives instructions and data from, for example, a memory (e.g., a read-only memory and/or a random access memory), a keyboard, a touch screen, or a wired or wireless network. For brevity, the control unit  5  is represented as a monolithic entity. However, as would be understood by one skilled in the art, the control unit may include numerous interconnected computers, processors, and components designed to perform a set of specified operations. The control unit  5  can be connected to the drive motor(s) by a data pathway capable of delivering signals for controlling the drive motor(s).  
         [0029]     A main criterion of the processing quality of the machine tool  1  is the positioning accuracy of the processing head  4  under dynamic forces. When a dynamic force acts on the cantilever arm  3  in a direction perpendicular to the length of the arm  3 , the positioning accuracy of the arm in the perpendicular direction can be compromised. For example, when a force acts on the arm  3  in the x-direction due to acceleration of the arm  3  in the x-direction, ax, or due to a change of acceleration in the x-direction, jx, the positioning accuracy of the processing head  4  in the x-direction can depend on the y-position of the processing head  4 .  
         [0030]      FIGS. 1   a ,  1   b , and  1   c  show the distance, L, of the processing head  4  from the guide rail  2  along the cantilever  3  at a minimum, intermediate, and maximum distance, respectively. The larger the distance L of the processing head  4  from the guide rail  2 , the smaller is the positioning accuracy in the x-direction of the processing head  4  under dynamic forces. Thus, the same acceleration of the cantilever arm  3  in the x-direction results in a greater positioning error when the processing head  4  is farther away from the guide rail  2  (as shown in  FIG. 1   c ) than when the processing head  4  is closer to the guide rail  2  (as shown in  FIG. 1   a ).  
         [0031]     To reduce the dependence of the positioning accuracy of the processing head  4  in the x-direction on its position along the cantilever arm  3  in the y-direction, the dynamic force on the processing head  4  in a direction perpendicular to the cantilever arm  3  can be varied by continuously controlling the maximum possible acceleration and acceleration change of the cantilever arm  3  in the perpendicular direction as a function of the processing head&#39;s distance from the guide rail  2 . Thus, for example, the acceleration of the processing head  4  in the x-direction, ax, and its change of acceleration, jx, are each limited to maximum values ax max , jx max , that depend on the y-position of the processing head  4 . For the machine tool  1  shown in  FIG. 1 , the maximum allowable values, ax max , jx max , for the acceleration of the processing head  4  and the processing head&#39;s change of acceleration in the x-direction are controlled such that they decrease with increasing distance, y, between the processing head  4  and the guide rail  2  of the cantilever arm  3 .  
         [0032]     These maximum values of ax max  and jx max  applied to the cantilever arm  3  are controlled by the control unit  5  and/or a control program that controls the control unit  5 . Thus, the maximum allowable values, ax max (y) and jx max (y), as functions of the y-position of the processing head  4 , can be stored in hardware or software or can be calculated (e.g., as functions of the y-position of the processing head  4 , i.e., ax max =f(y) and jx max =f(y)). The control unit  5  includes a processing routine  7  that is implemented in hardware or software and that correspondingly limits the acceleration, ax, and acceleration change, jx, of the cantilever  3 . The characteristic acceleration and acceleration change values imposed by the processing routine  7  can be implemented as a continuous, steady function or as a step function.  
         [0033]     In case of a continuous steady function (as shown in  FIG. 2   a ), the maximum values ax max (y) are continuously adjusted in dependence on the y-position of the processing head  4 . For a discontinuous function (as shown in  FIG. 2   b ), the working area  6  of the processing head  4  is divided into N acceleration zones along the y-coordinate, and a single maximum value for the x acceleration, ax i   max , is associated with each individual zone, where i is an index value that ranges from 1 to N.  
         [0034]      FIG. 3  shows a simplified metal sheet  8  that includes a number of work pieces  9  having different contours that are to be cut from a metal sheet  8 . The working area  6  corresponding to the metal sheet  8  is divided along the y-coordinate into ten acceleration zones, z 1 , z 2 , . . . z 10 , to each of which a different maximum value ax i   max  is associated. The y-lengths of the ten acceleration zones z 1  to z 10  can be identical or can vary. For example, the y-lengths of the acceleration zones can decrease in steps in the y-direction, i.e., with increasing distance y from the guide rail  2 . As the processing head  4  moves over the different acceleration zones, z 1 , z 2 , . . . z 10 , of the metal sheet to cut out the contours of each work piece  9 , the dynamics of the processing head  4  for each line, curve, or contour of the work pieces  9  are limited in accordance with the maximum allowable acceleration and acceleration changes in the x-direction for the respective acceleration zone in which the line or contour exists. If the line, curve, or contour extends over several acceleration zones, Z m  and Z n , two strategies are possible. The dynamics of the processing head  4  can be limited according to the zone with the smaller maximum value for acceleration, or the line, curve or contour can be divided into individual segments that lie either in Z m  or Z n , and the corresponding maximum acceleration value is limited for each segment according to the maximum allowable acceleration for each zone, ax m   max  and ax n   max .  
         [0035]      FIG. 4  shows a machine tool  1 ′ that includes a beam  3 ′ guided at both of its ends by guide rails  2 ′ along the x-coordinate. A processing head  4 ′ is guided on the beam  3 ′ along the y-coordinate. In this case, the maximum values ax max  and jx max  for the x-acceleration of the processing head  4 ′ and its change of acceleration decrease as the processing head  4 ′ moves from one end of the beam  3 ′ towards the center of the beam  3 ′, and then increases as the head  4  moves from the center of the beam  3 ′ to the other end of the beam  3 ′, as shown by the graph in  FIG. 5 . In other words, the maximum values ax max  and jx max  decrease as the head  4  moves along the y-coordinate from one end of the beam  3 ′ towards the center of the beam  3 ′.  
         [0036]      FIG. 6   a  shows a machine tool  10  with a one-sided scissor-type drive  11 , and  FIG. 6   b  shows a machine tool  10 ′ with a two-sided scissor-type drive  11 ′ for displacing the processing head  4  along the x- and y-coordinates. The scissor-type drives  11 ,  11 ′, have two guiding elements  13  that can be displaced along the x-coordinate on a guide rail  12 . Changes in the distance between guiding elements  13  cause extension of the scissor elements  14 ,  14 ′ and displacement of the processing head  4  along the y-coordinate. Displacement of the scissor elements  14 ,  14 ′ along the guide rail  12  causes displacement of the processing head  4  in the x-direction. Thus, the x-y motion of the processing head  4  can be controlled. The positioning accuracy of the processing head  4  under dynamic forces depends on the distance between the processing head  4  and the guide rail  12 , i.e., on the x distance between the guiding elements  13 . In this case, because the distance of the processing head  4  from the guide rail  12  depends on the distance between the guiding elements  13 , the maximum values ax max , jx max , for the acceleration ax and acceleration change jx of the processing head  4 , i.e., the acceleration characteristic, are delimited as functions of the distance, x 1 −x 2 , between the two guiding elements  13 , i.e., ax max =f 1 (x 1 −x 2 ) and jx max =f 2 (x 1 −x 2 ).  
         [0037]      FIG. 7  shows a machine tool  20  with a rod drive  21  for moving the processing head  4  along the x, y, and z coordinates. The rod drive  21  has three linearly displaceable rod elements  22  through which the spatial motion of the processing head  4  can be controlled. The spatial positioning accuracy of the processing head  4  depends on how far the rod elements  22  are extended along the x 1 , x 2 , and x 3  coordinates. In this case, the maximum values ax max , jx max , ay max , jy max , az max , jz max  for the acceleration ax, ay, az of the processing head  4  are limited along the x, y, and z coordinates and their changes jx, jy, jz, i.e., the acceleration characteristic, as functions of the positions of the rod elements  22 , i.e.: 
   ax   max   =f ( x   1   ,x   2   ,x   3 ) and  jx   max   =f ( x   1   ,x   2   ,x   3 )    ay   max   =f ( x   1   ,x   2   ,x   3 ) and  jy   max   =f ( x   1   ,x   2   ,x   3 )    az   max   =f ( x   1   ,x   2   ,x   3 ) and  jz   max   =f ( x   1   ,x   2   ,x   3 )  
         [0038]     In a variation, the processing head  4  is mounted on a robot arm that can extend the processing head  4  away from the body of the robot. The spatial positioning accuracy of the robot-arm-mounted processing head  4  depends on the distance between the processing head and the base of the robot arm. Therefore, the possible accelerations of the processing head and their changes are limited to values that decrease with increasing distance between the processing head and the base of the robot arm.  
         [0039]     The method for limiting acceleration in dependence on the position of the processing head  4  can be implemented as a control program that runs in the control unit  5  of the machine tool or it can be directly implemented directly in the control unit  5 .  
         [0040]     As shown in  FIG. 8 , exemplary components of a system  100  that can be used to control the acceleration of a processing head  4  of a machine tool include various input/output (I/O) devices (e.g., keyboard  105  and display  107 ) and a computer  101  having a central processor unit (CPU)  112 , an I/O unit  113 , a memory  114 , and a storage device  115 . Storage device  115  may store machine-executable instructions, data, and various programs, such as an operating system  116  and one or more application programs  117 , all of which may be processed by CPU  112 . Each computer application may be implemented in a high-level procedural or object-oriented programming language, or in assembly or machine language if desired. The language may be a compiled or interpreted language. Data storage device  115  may be any form of non-volatile memory, including, for example, semiconductor memory devices, such as Erasable Programable Read-Only Memory (EPROM), Electrically Erasable Programable Read-Only Memory (EEPROM), and flash memory devices; magnetic disks such as internal hard disks and removable disks; magneto-optical disks; and Compact Disc Read-Only Memory (CD-ROM).  
         [0041]     Computer  101  may also include a communications card or device  118  for exchanging data with machine tool  1  through a communications link  125 . Other examples of system  100  include a handheld device, a workstation, a server, a device, a component, other equipment, or some combination thereof, capable of responding to and executing instructions in a defined manner. Any of the foregoing may be supplemented by, or incorporated in, application-specific integrated circuits (ASICs). Memory may be any form of memory, including, for example, main random access memory (“RAM”).  
       Other Embodiments  
       [0042]     It is to be understood that while the invention has been described in conjunction with the detailed description thereof, the foregoing description is intended to illustrate and not limit the scope of the invention, which is defined by the scope of the appended claims. Other aspects, advantages, and modifications are within the scope of the following claims.