U.S. patent application number 11/208043 was filed with the patent office on 2006-07-06 for method and system for automated software control of waterjet orientation parameters.
This patent application is currently assigned to Flow International Corporation. Invention is credited to Charles D. Burnham, Glenn A. Erichsen, Mohamed A. Hashish, Michael Knaupp, Mira K. Sahney, Jiannan Zhou.
Application Number | 20060149410 11/208043 |
Document ID | / |
Family ID | 25475253 |
Filed Date | 2006-07-06 |
United States Patent
Application |
20060149410 |
Kind Code |
A1 |
Erichsen; Glenn A. ; et
al. |
July 6, 2006 |
Method and system for automated software control of waterjet
orientation parameters
Abstract
Methods and systems for automating the control of fluid jet
orientation parameters are provided. Example embodiments provide a
Dynamic Waterjet Control System (a "DWCS") to dynamically control
the orientation of the jet relative to the material being cut as a
function of speed and other process parameters. Orientation
parameters include, for example, the x-y position of the jet along
the cutting path, as well as three dimensional orientation
parameters of the jet, such as standoff compensation values and
taper and lead angles of the cutting head. In one embodiment, the
DWCS uses a set of predictive models to determine these orientation
parameters. The DWCS preferably comprises a motion program
generator/kernel, a user interface, one or more replaceable
orientation and process models, and a communications interface to a
fluid jet apparatus controller. Optionally the DWCS also includes a
CAD module for designing the target piece. In operation, the motion
program generator receives input from the CAD design module and the
user interface to build a motion program that can be forwarded to
and executed by the controller to control the cutting process. The
replaceable models provide the motion program generator with access
to sets of mathematical models that are used to determine
appropriate jet orientation and process parameters. For example, in
some environments, these equations are used to generate the
x-position, y-position, standoff compensation value, lead angle,
and taper angle of each command. The DWCS also provides two way
communication between itself and the controller. The controller
functions are used, for example, to display the cutting path in
progress while the target piece is being cut out of the workpiece.
They are also used to obtain current values of the cutting
apparatus, such as the current state of attached mechanical and
electrical devices.
Inventors: |
Erichsen; Glenn A.;
(Everett, WA) ; Zhou; Jiannan; (Renton, WA)
; Sahney; Mira K.; (Seattle, WA) ; Knaupp;
Michael; (Zaisenhausen, DE) ; Burnham; Charles
D.; (Southbury, CT) ; Hashish; Mohamed A.;
(Bellevue, WA) |
Correspondence
Address: |
SEED INTELLECTUAL PROPERTY LAW GROUP PLLC
701 FIFTH AVE
SUITE 6300
SEATTLE
WA
98104-7092
US
|
Assignee: |
Flow International
Corporation
Kent
WA
|
Family ID: |
25475253 |
Appl. No.: |
11/208043 |
Filed: |
August 18, 2005 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
10793333 |
Mar 4, 2004 |
6996452 |
|
|
11208043 |
Aug 18, 2005 |
|
|
|
09940687 |
Aug 27, 2001 |
6766216 |
|
|
10793333 |
Mar 4, 2004 |
|
|
|
Current U.S.
Class: |
700/160 ;
700/187 |
Current CPC
Class: |
B26F 3/004 20130101;
G05B 2219/49012 20130101; G05B 2219/45036 20130101; G05B 19/4099
20130101; Y10T 83/364 20150401; B24C 1/045 20130101; Y02P 90/02
20151101; B26D 5/00 20130101; Y10T 83/141 20150401; Y02P 90/265
20151101 |
Class at
Publication: |
700/160 ;
700/187 |
International
Class: |
G06F 19/00 20060101
G06F019/00 |
Claims
1. A method in a computer system for automatically controlling
orientation of a cutting head of a fluid jet apparatus relative to
a material being cut, to produce a target piece having an overall
geometry not previously programmed into the computer system, the
geometry having a plurality of geometric entities, the fluid jet
apparatus having a plurality of process parameters, comprising:
receiving a speed for each of the plurality of geometric entities
of the overall geometry, wherein at least two geometric entities
are associated with different speeds; automatically determining an
orientation parameter for each determined speed in accordance with
the speed and the plurality of process parameters; and
automatically controlling the motion of cutting head in accordance
with the automatically determined orientation parameter to cut the
material to produce the target piece.
Description
BACKGROUND OF THE INVENTION
[0001] 1. Field of the Invention
[0002] The present invention relates to a method and system for
automatically controlling a fluid jet, and, in particular, to
methods and systems for automatically controlling lead, taper, and
other orientation and process parameters of a high pressure
waterjet using predictive models.
[0003] 2. Background
[0004] High-pressure fluid jets, including high-pressure abrasive
waterjets, are used to cut a wide variety of materials in many
different industries. Abrasive waterjets have proven to be
especially useful in cutting difficult, thick, or aggregate
materials, such as thick metal, glass, or ceramic materials.
Systems for generating high-pressure abrasive waterjets are
currently available, for example the Paser 3 system manufactured by
Flow International Corporation, the assignee of the present
invention. An abrasive jet cutting system of this type is shown and
described in Flow's U.S. Pat. No. 5,643,058, which is incorporated
herein by reference. The terms "high-pressure fluid jet" and "jet"
used throughout should be understood to incorporate all types of
high-pressure fluid jets, including but not limited to,
high-pressure waterjets and high-pressure abrasive waterjets. In
such systems, high-pressure fluid, typically water, flows through
an orifice in a cutting head to form a high-pressure jet, into
which abrasive particles are combined as the jet flows through a
mixing tube. The high-pressure abrasive waterjet is discharged from
the mixing tube and directed toward a workpiece to cut the
workpiece along a designated path.
[0005] Various systems are currently available to move a
high-pressure fluid jet along a designated path. Such systems are
commonly referred to as three-axis and five-axis machines.
Conventional three-axis machines mount the cutting head assembly in
such a way that it can move along an x-y plane and perpendicular
along a z-axis, namely toward and away from the workpiece. In this
manner, the high-pressure fluid jet generated by the cutting head
assembly is moved along the designated path in an x-y plane, and is
raised and lowered relative to the workpiece, as may be desired.
Conventional five-axis machines work in a similar manner but
provide for movement about two additional rotary axes, typically
about one horizontal axis and one vertical axis so as to achieve in
combination with the other axes, degrees of tilt and swivel.
[0006] Manipulating a jet about five axes may be useful for a
variety of reasons, for example, to cut a three-dimensional shape.
Such manipulation may also be desired to correct for cutting
characteristics of the jet or for the characteristics of the
cutting result. More particularly, as understood by one of ordinary
skill in the art, a cut produced by a jet, such as an abrasive
waterjet, has characteristics that differ from cuts produced by
more traditional machining processes. Two of the cut
characteristics that may result from use of a high-pressure fluid
jet are referred to as "taper" and "trailback." FIG. 1 is an
example illustration of taper. Taper refers to the angle of a plane
of the cut wall relative to a vertical plane. Taper typically
results in a target piece that has different dimensions on the top
surface (where the jet enters the workpiece) than on the bottom
surface (where the jet exits the workpiece). FIG. 2 is an example
illustration of trailback. Trailback, also referred to as drag,
identifies the phenomena that the high-pressure fluid jet exits the
workpiece at a point behind the point of entry of the jet into the
workpiece, relative to the direction of travel. These two cut
characteristics, namely taper and trailback, may or may not be
acceptable, given the desired end product. Taper and trailback
varies depending upon the speed of the cut; thus, one known way to
control excessive taper and/or trailback is to slow down the
cutting speed of the system. In situations where it is desirable to
minimize or eliminate taper and trailback, conventional five-axis
systems have been used, primarily through manual trial and error,
to apply taper and lead angle corrections to the jet as it moves
along the cutting path.
SUMMARY OF THE INVENTION
[0007] In brief summary, methods and systems of the present
invention provide for the automatic control of orientation
parameters of a fluid jet to achieve greater control over the
contour of the cut produced and the resultant piece. These
methods-and systems can be employed with different types of jet
apparatus, such as those that control a cutting head using motion
around a different number of axes. Example embodiments provide a
Dynamic Waterjet Control System ("DWCS") to dynamically control the
orientation of a jet relative to the material being cut as a
function of speed and/or other process parameters. Orientation
parameters include, for example, the x-y position of the jet along
the cutting path, as well as three dimensional orientation
parameters of the jet, such as the standoff compensation values and
the taper and lead angles of the cutting head. In one embodiment,
the DWCS uses a set of predictive models to automatically determine
appropriate orientation parameters for an arbitrary geometry as
functions of speed. In this manner, these models dynamically match,
for each geometric entity, the speed of the cutting head to
appropriate lead and taper angles under differing process
conditions of the cutting head. For example, when a corner is being
cut, typically the cutting head is slowed. In some cases, using the
automated lead and taper angle determination techniques of the
present invention, the deceleration may be lessened, while the
cutting head achieves, a more accurate cut.
[0008] In one embodiment, the DWCS comprises a user interface;
which may be implemented as a graphical user interface (a "GUI"); a
motion program generator; one or more replaceable models; and a
communications interface to a controller of the cutting head. The
DWCS optionally provides CAD capabilities for designing the target
piece or receives CAD input by other means. In some embodiments,
the DWCS resides in a separate computer workstation; while in other
embodiments the DWCS resides on the controller, or a computer
associated therewith.
[0009] The motion program generator dynamically generates a motion
program for a controller of a jet apparatus. The generated motion
instructions are dependent upon the requirements of the controller
and/or the jet apparatus and, thus, the motion program generator
can be tailored to generate differing types of control instructions
for each type of controller.
[0010] The motion program generator automatically determines the
lead and taper angle adjustments for each geometric entity as a
function of the determined speed for that entity. In one
embodiment, the lead and taper angle adjustments are functions of
other process parameters, such as mixing tube length or orifice
diameter. In another embodiment, a speed and acceleration model is
used by the DWCS to determine the speed for an entity prior to
determining the lead and taper angle adjustments. In some
embodiments the lead and taper angle adjustments are determined at
the same time as speed adjustments.
[0011] The model used by techniques of the present invention models
the contour of the cut that can be achieved under varying
conditions, as specified by different process parameter values. Any
technique for providing values for lead and taper for an arbitrary
geometry can be used to implement the lead and taper model. In some
embodiments, the lead and taper model comprises sets of polynomial
equations. In other embodiments, the lead and taper model comprises
a look-up table of discrete values that models lead and taper
angles for a set of geometries. In some embodiments, the lead and
taper model models lead and taper angles as functions of speed and
material thickness. In addition, one embodiment includes an angle
of a tangent to the path at the current endpoint to support the
determination of smoother transitions around entities such as
corners or other intersections.
[0012] In yet another embodiment, the lead and taper angles can be
manually overridden by an operator for a portion of or the entire
cutting path. Additionally, the automated lead and taper angle
adjustment can operate in conjunction with manual override of some
parameters, but not others.
[0013] In some embodiments, some or all of the process of
automatically determining one or more of the orientation parameters
and controlling the cutting head accordingly are performed by the
controller of the jet apparatus or software/hardware/firmware
directly connected to the controller.
BRIEF DESCRIPTION OF THE DRAWINGS
[0014] FIG. 1 is an example illustration of taper.
[0015] FIG. 2 is an example illustration of trailback.
[0016] FIG. 3 is a block diagram illustrating the use of a Dynamic
Waterjet Control System to produce a target piece.
[0017] FIG. 4 is a block diagram of an example embodiment of a
Dynamic Waterjet Control System.
[0018] FIG. 5 is an example flow diagram of steps executed by an
example embodiment of a Dynamic Waterjet Control System to cut a
target piece.
[0019] FIG. 6 is an example screen display of the user interface of
an example Dynamic Waterjet Control System CAD module.
[0020] FIG. 7 is an example screen display of an introductory
dialog of an example Dynamic Waterjet Control System cutting module
user interface.
[0021] FIG. 8 is an example screen display of a setup dialog of an
example Dynamic Waterjet Control System cutting module user
interface.
[0022] FIG. 9 is an example screen display of an advanced setup
dialog of an example Dynamic Waterjet Control System cutting module
user interface.
[0023] FIG. 10 is an example screen display of an apply model
dialog of the model setup dialogs.
[0024] FIG. 11 is an example screen display of a select model
dialog of the model setup dialogs.
[0025] FIG. 12 is an example screen display of a custom corner edit
dialog of the model setup dialogs.
[0026] FIG. 13 is an example screen display of a custom lead and
taper dialog of the model setup dialogs.
[0027] FIG. 14 is an example screen display of a jet controller
feedback and control dialog of an example Dynamic Waterjet Control
System cutting module user interface.
[0028] FIG. 15 is an example screen display that shows the x,y
position of the current location of the jet tool tip relative to
the path.
[0029] FIG. 16 is an example screen display that shows standoff
compensation values of the cutting head.
[0030] FIG. 17 is an example screen display that shows the lead and
taper compensation values of the cutting head.
[0031] FIG. 18 is a block diagram of a general purpose computer
system for practicing embodiments of the Dynamic Waterjet Control
System.
[0032] FIG. 19 is an example target piece design, which is used to
illustrate how the Dynamic Waterjet Control System automates
determination of the orientation and cutting process
parameters.
[0033] FIG. 20 is an example flow diagram of the automated
orientation parameter determination process of an example Dynamic
Waterjet Control System.
[0034] FIG. 21 is an example flow diagram of the steps performed by
the Dynamic Waterjet Control System to build a motion program data
structure.
[0035] FIG. 22 is an example flow diagram of the steps performed by
the Dynamic Waterjet Control System to begin the cutting cycle.
DETAILED DESCRIPTION OF THE INVENTION
[0036] Embodiments of the present invention provide computer- and
network-based methods and systems for automatically controlling
lead and taper angles and other orientation parameters of a
waterjet to achieve superior control over the contour of the cut
and resulting piece generated by the waterjet. Example embodiments
of the present invention provide a Dynamic Waterjet Control System
("DWCS") to dynamically control the orientation of a jet relative
to the material being cut as a function of speed and/or other
process parameters. The DWCS automatically controls the x-axis,
y-axis (2-dimensional) position of the jet along the cutting path,
as well as the 3-dimensional orientation of the jet, such as the
standoff position and tilt and swivel of the cutting head when
appropriate, using a set of predictive models. The predictive
models indicate appropriate settings for these orientation
parameters to achieve desired characteristics of the contour of the
cut and resulting piece. The extensive control capabilities of the
DWCS allow operators to use the waterjet machinery in an automatic
mode without manual intervention to manually control the jet
orientation according to the prior knowledge and skill of the
operator relative to the specific workpiece being cut. The
automation capability of the DWCS thus supports decreased
production time as well as precise control over the cutting
process.
[0037] Although discussed herein in terms of waterjets, and
abrasive waterjets in particular, one skilled in the art will
recognize that the techniques of the present invention can be
applied to any type of fluid jet, generated by high pressure or low
pressure, whether or not additives or abrasives are used. In
addition, one skilled in the art will recognize that these
techniques can be modified to control the x-axis, y-axis, standoff,
tilt angle, and lead angle jet orientation parameters as functions
of process parameters other than speed, as different predictive
models are developed and incorporated.
[0038] FIG. 3 is a block diagram illustrating the use of a Dynamic
Waterjet Control System to produce a target piece. In typical
operation, an operator 301 uses a Computer-Aided Design ("CAD")
program or package at a computer workstation 302, to specify a
design of a piece 310 (e.g., a manufactured part) to be cut from
the workpiece material 303. The computer workstation 302 is
adjacent to or is remotely or directly connected to an abrasive
water jet (AWJ) cutting apparatus 320, such as the high-pressure
fluid jet apparatus described and claimed in concurrently filed
U.S. patent application Ser. No. ______, entitled "APPARATUS FOR
GENERATING AND MANIPULATING A HIGH-PRESSURE FLUID JET," which is
incorporated herein by reference in its entirety. Any well-known
CAD program or package can be used to specify the design of piece
310. Further, the CAD design package also may be incorporated into
the Dynamic Waterjet Control System itself. The generated design is
then input into the DWCS 304, which then automatically generates,
as discussed in further detail in the remaining figures, a motion
program 305 that specifies how the jet apparatus 320 is to be
controlled to cut the workpiece material 303. When specified by the
operator, the DWCS 304 sends the motion program 305 to a
hardware/software controller 321 (e.g., a Computer Numeric
Controller, "CNC"), which drives the jet apparatus 320 to cut the
workpiece material according to the instructions contained in the
motion program 305 to produce the target piece 310. Used in this
manner, the DWCS provides a Computer-Aided Manufacturing process (a
"CAM") to produce target pieces.
[0039] Although the DWCS described in FIG. 3 is shown residing on a
computer workstation separate from, but connected to, the jet
apparatus, one skilled in the art will recognize that, depending
upon the actual configuration of the jet apparatus and the
computers or other controllers (the jet system), the DWCS
alternatively may be located on other devices within the overall
jet system. For example, the DWCS may be embedded in the controller
of the jet apparatus itself (as part of the
software/firmware/hardware associated with the machine). In this
case, the motion program is reduced and, rather, the determination
of the automatic adjustments to the jet orientation parameters are
embedded into the controller code itself. Or, for example, the DWCS
may reside on a computer system directly connected to the
controller. All such combinations or permutations are contemplated
by the methods and systems of the present invention, and
appropriate modifications to the DWCS described, such as the
specifics of the motion program and its form, are contemplated
based upon the particulars of the fluid jet system and associated
control hardware and software.
[0040] FIG. 4 is a block diagram of an example embodiment of a
Dynamic Waterjet Control System. The DWCS 401 comprises a motion
program generator/kernel 402, a user interface 403, such as a
graphical user interface ("GUI"), a CAD design module 404, one or
more replaceable orientation or process models 405, and an
interface to the jet apparatus controller 409. The motion program
generator 402 receives input from the CAD design module 404 and the
user interface 403 to build up a motion program that can be sent to
and executed by the controller (the CNC) to control the jet. One
skilled in the art will recognize that alternative arrangements and
combinations of these components are equally contemplated for use
with techniques of the present invention. For example, the CAD
design module 404 may be incorporated into the user interface 403.
In one embodiment, the user interface 403 is intertwined with the
motion program generator 402 so that the user interface 403
controls the program flow and generates the motion program. In
another embodiment the core program flow is segregated in a kernel
module, which is separate from the motion program generator 402.
The replaceable models 405 provide the motion program generator 402
with access to sets of mathematical models 406, 407, 408, and 409
that are used to determine appropriate jet orientation and cutting
process parameters. Each mathematical model 406, 407, 408, and 409
comprises one or more sets of equations or tables that are used by
the motion program generator 402 to generate particular values for
the resultant commands in the motion program to produce desired
cutting characteristics or behavior. For example, in a 5-axis
machine environment, these equations are used to generate the
x-position, y-position, z-standoff compensation value, lead angle,
and taper angle of each command if appropriate. The replaceable
models 405 preferably provide multiple and dynamically replaceable
mathematical models. For example, in a preferred embodiment, the
models 405 include a set of equations for generating lead and taper
angle values 406; a set of equations for generating speed and
acceleration values 407; a set of equations for generating modified
cutting process parameter values for cutting curves, corners, etc.
408; and other models 409. The mathematical models 406, 407, 408,
and 409 are typically created experimentally and theoretically
based upon empirical observations and prior analysis of cutting
data In particular, as will be discussed in further detail below,
the lead and taper model 406 is a predictive model that can be used
to generate lead and taper angle values for an arbitrary shape. In
one embodiment, the DWCS also comprises an interface to the
controller 409, which provides functions for two way communication
between the controller and the DWCS. These controller functions are
used, for example, to display the cutting path in progress while
the target piece is being cut out of the workpiece. They are also
used to obtain values of the cutting apparatus, such as the current
state of the attached mechanical and electrical devices.
[0041] One skilled in the art will recognize that many different
arrangements and divisions of functionality of the components of a
DWCS are possible. In addition, although specific details are
described with respect to this example embodiment of the DWCS, such
as data formats, user interface screens, code flow diagrams, menu
options, etc., one skilled in the art will recognize that the
techniques of the present invention can be practiced without some
of the specific details described herein, or with other specific
details, such as changes with respect to the ordering of the code
flow diagrams, or the specific features shown on the user interface
screens. Well-known structures and steps may not be shown or
described in detail in order to avoid obscuring the present
invention.
[0042] FIG. 5 is an example flow diagram of steps executed by an
example embodiment of a Dynamic Waterjet Control System to cut a
target piece. In step 501, the DWCS gathers a variety of input data
from the operator, including a design (a geometry specification)
for a target piece in a CAD format, or equivalent. In addition, the
customer requirements for the target piece need also to be
specified and gathered, such as an indication of the surface
finish, or, as sometimes referred to, an indication of the quality
of the cut. Various techniques for indicating this information to
the DWCS can be used. In one example embodiment, the CAD package
enables an operator to specify different surface finishes for each
drawing entity. These surface finishes may, for example, be
indicated by a percentage speed scale; however, one skilled in the
art will recognize that other scales for indicating surface finish
or the quality of the cut can be used. For example, alternate
scales that indicate relative speed may be used, or indications of
quality such as "rough finish," "medium finish," and "smooth
finish." Speed typically is traded off for surface finish (or cut
quality); thus, speed and finish quality can be inferred from
whatever scale is used. It is noted, however, that the DWCS can
support the production of more dimensionally accurate pieces while
running the jet apparatus at higher speeds, due to the automatic
taper and lead angle compensations.
[0043] In step 502, the DWCS gathers process parameters, typically
from an operator, although these parameters may have default values
or some may be able to be queried from the jet apparatus
controller. In one example embodiment, shown below in FIG. 8, the
DWCS determines values for the type of material being cut; material
thickness; water pressure; orifice diameter; abrasive flow rate;
abrasive type; mixing tube diameter; and mixing tube length as
process parameters.
[0044] In step 503, the DWCS uses the input process parameters to
automatically calculate the offset path. The offset path is the
path that needs to be followed when the target piece is cut to
account for any width that the jet actually takes up (the width of
the cut due to the jet). This prevents the production of pieces
that are smaller or larger than specified. As characteristics of
the jet change over time, for example, due to wear, jet process
parameters need to be correspondingly modified in order to compute
the correct offset. In some embodiments, the offset path is
determined by the controller and appropriate transformations of the
motion program orientation parameters are made by the
controller.
[0045] Steps 504-507 build up a motion program by incrementally
storing determined program values in a motion program data
structure. Preferably, the entries in the data structure correspond
to stored motion program instructions that are executable by the
jet controller. In step 504, the DWCS determines the component
drawing entities of the target piece design by "segmenting" the
geometry into entities that are appropriate for assigning cutting
speeds. This step can be performed at this time or elsewhere in the
process, for example, using known, off-the-shelf software systems
that provide design segmentation by modifying the CAD/CAM file.
Once the segmentation is performed, then in step 505, the DWCS
assigns a speed value to each drawing entity based upon known speed
and acceleration models (e.g., speed model 407 in FIG. 4) and known
corner models (e.g., corner model 408 in FIG. 4), which take into
account speed decreases that are preferred for cutting entities
like circles, arcs, and corners. Embodiments of these models are
currently available, for example, in FlowMaster.TM. controlled
shape cutting systems, currently manufactured by Flow International
Corporation, and equivalents of these models or similar models are
generally known in the art. For the purposes of the DWCS, any speed
and acceleration model and/or corner model can be used as long as
speeds can be indicated for a particular drawing entity. In
general, the speed and acceleration model provides access to
equations and tests that generate a scaling of speed (e.g., a
percentage of the maximum capable speed of the jet apparatus) based
upon known geometries, such as lines, arcs, circles, and the
characteristics of the particular machine. For example, it is known
to one skilled in the art that tighter radius arcs require the jet
cutting to occur at slower speeds than the maximum. Further, the
speed and acceleration model is used to adjust speeds for drawing
entities when speed transitions are encountered based upon the
acceleration characteristics of the particular jet apparatus.
[0046] In step 506, the DWCS automatically determines the tilt and
swivel of the jet cutting head that is necessary to achieve the
designated customer requirements by automatically determining the
taper and lead angles using predictive models (e.g., lead and taper
model 406 in FIG. 4). This determination will be discussed in
detail with reference to FIG. 21. In summary, the taper and lead
angle model generates, based upon a series of equations, optimal
values for the taper and lead angles at each endpoint of each
drawing entity as a function of the speed of the cutting head at
that point. Specifically, if the lead and taper model determines
that a segment of the target piece is to be cut slower (due to
reasons such as machine deceleration or required surface finish
control), then the lead and taper angles are automatically set to
compensate for the speed change. Thus, the lead and taper angles
are set to automatically match the speed of the cut at each
endpoint and for each segment. Because the speed of the cut for a
particular drawing entity is previously determined as a function of
various other process parameters, for example, the thickness of the
material and the mixing tube characteristics, the taper and lead
angles are also indirectly functions of these other process
parameters.
[0047] In step 507, the DWCS builds the final motion program making
adjustments to the motion program data structure as necessary for
the particular jet controller in use. Typically, CNCs and other
waterjet controllers use kinematic equations to calculate the
movement of the cutting head motors that is needed to produce a
desired path (i.e., to calculate how the motors should be
positioned to generate particular jet tool tip positions).
Preferably, prior to using the cutting head, the operator aligns
the cutting head apparatus using the controller, so that the
kinematic equations yield motor positions that generate the desired
cut. Some controllers are capable of receiving motion programs
specified in terms of the jet orientation and internally use
inverse kinematics to determine the actual motor positions from the
jet tool tip positions. Others, however, expect to receive the
motion program instructions in terms of motor positions, and not
jet tool tip x-y positions and angle coordinates. In this case,
when the jet tool tip positions need to be "translated" to motor
positions, the DWCS in step 507 performs such translations using
kinematic equations and makes adjustments to the orientation
parameter values stored in the motion program data structure. In
addition, standoff compensation values for the jet cutting head are
determined using kinematic equations and are stored with each
instruction. Standoff compensation values are the "z-axis"
measurements needed to insure that the jet tool tip stays at a
particular standoff amount, centered over the cutting path,
regardless of the taper and lead angles. Standoff compensation
values are typically a function of the distance of the jet motors
pivot point to the jet tool tip.
[0048] In step 508, the DWCS establishes and/or verifies
communication with the controller of the jet apparatus. In step
509, the DWCS sends the built motion program to the controller for
execution. One skilled in the art will recognize that the term
"controller" includes any device/software/firmware capable of
directing motor movement based upon the motion program. One skilled
in the art will also recognize that the term "motion program" is
used herein to indicate a set of instructions that the particular
jet apparatus and/or controller being used understands. The
foregoing steps can accordingly be altered to accommodate the needs
of any such instructions.
[0049] As mentioned, in one embodiment, the user interface of the
DWCS is a graphical user interface ("GUI") that controls the entire
cutting process. FIGS. 6-17 are example screen displays of various
aspects of an example embodiment of the DWCS user interface. One
skilled in the art will recognize that many variations of these
screen displays, including the input requested, the output
displayed, and the control flow exist and are contemplated to be
used with the techniques of the present invention.
[0050] FIG. 6 is an example screen display of the user interface of
an example Dynamic Waterjet Control System CAD module. An operator
uses the design tools 604 to enter a design of a desired piece
(part), including the order of the segments to be cut, in drawing
area 601. In geometry input area 602, the CAD module receives
drawing entity input from the operator for the design that is
displayed in drawing area 601. Preferably, the CAD module allows
the operator to also indicate surface finish requirements (or any
other representation of customer requirements) for the segments of
the design. The speed specification buttons 603 are used to
designate the speed requirements (hence surface quality
requirements) for a particular segment In the CAD module
illustrated, the color of each segment (not shown) corresponds to a
percentage of maximum speed. Thus, for example, while the rectangle
is drawn(, for example, in blue to correspond to 40% of maximum
speed, the cut-out circle is drawn, for example, in light green to
correspond to 20% of maximum speed. One skilled in the art will
recognize that any type of key system may be used, including
different increments and designations other than by color.
[0051] FIG. 7 is an example screen display of an introductory
dialog of an example Dynamic Waterjet Control System cutting module
user interface. Drawing display area 701 contains a view of the
current design of the target piece. In this particular embodiment,
the lines are color coded to correspond to the customer surface
finish requirements as were specified when the design was input
into the CAD program. Speed adjustment buttons 707 can be used to
manually change the settings for any particular drawing entity.
Among other capabilities, the introductory dialog provides access
to setup options via selection of the Setup button 702, which is
discussed further below with respect to FIG. 8. When the Preview
button 703 is selected, the DWCS provides a simulated preview of
the direction and path of the cutting head along the drawing
displayed in drawing display area 701. When the Run button 704 is
selected, the DWCS performs a myriad of activities relating to
building up the motion program, one embodiment of which is
described in detail with respect to FIGS. 20 and 21. After the DWCS
has finished building the motion program and establishing
communication with the jet apparatus controller, the cutting module
user interface displays the controller feedback and control dialog
(the "controller dialog") for actually running the cutting process.
The controller dialog is discussed further below with respect to
FIGS. 14-17. Other fields are available in the introductory dialog
to set and display values of other process parameters. For example,
attributes of the workpiece material can be set up in edit boxes
705. Also, the radius of the jet tool can be set up in edit box
706. The jet tool radius is used to determine the offset of the jet
that is needed to produce the target cutting path. Typically, an
offset is necessary to insure the accuracy of the cut because the
jet itself has width, which is not part of the cutting path.
[0052] FIG. 8 is an example screen display of a setup dialog of an
example Dynamic Waterjet Control System cutting module user
interface. The setup dialog 801, which supports the setting of
various process parameters, is displayed in response to the
selection of Setup button 702 in FIG. 7. Various process parameters
such as the pump characteristics and the abrasive on/off procedures
are settable through fields of dialog 801. Typically, an-operator
would invoke setup dialog 801 before cutting the first instance of
the target piece and would then save the values for subsequent
cutting.
[0053] FIG. 9 is an example screen display of an advanced setup
dialog of an example Dynamic Waterjet Control System cutting module
user interface. The advanced setup dialog 901 is invoked when an
operator selects the "Advanced" menu item from the toolbar of the
introductory dialog (e.g., see FIG. 7). The operator indicates a
tool length and a standoff value for the cutting head apparatus.
The standoff value is the distance from the tip of the cutting head
to the material. The tool length is the length from the center of
the axis of rotation of the cutting head to the tip of the cutting
head. These values are used with the kinematic equations to
determine the transformations from the automatically determined
lead and taper angles and standoff compensation values to numeric
values that control the motors of the cutting head.
[0054] In the example introductory dialog discussed with reference
to FIG. 7, when the operator selects the Run button 704, then the
DWCS determines whether the operator has already indicated which
models to use (e.g., one of the replaceable models 405 of FIG. 4).
For example, if this is the first time the target piece is being
cut, then the DWCS assumes that the operator has not yet set up the
models and presents a dialog for receiving input regarding which
models the operator desires to use. FIGS. 10-13 are example screen
displays of model setup dialogs of an example Dynamic Waterjet
Control System cutting module user interface. The model setup
dialogs provide a spectrum of control from completely manual to
completely automated. For example, they allow the operator to
select whether to use the lead and taper model to automatically
determine lead and taper angles or whether to provide specific
values for overriding lead and taper angles for each drawing
entity. One skilled in the art will recognize that other
combinations are possible, including providing a portion of manual
override values to an otherwise automated process. In one
embodiment, "schemes" or combinations of default model setups are
provided.
[0055] FIG. 10 is an example screen display of an apply model
dialog of the model setup dialogs. The apply model dialog 1001 is
used to set several process parameters that are used by the models.
Once the "OK" button 1002 is selected, then the DWCS proceeds to
build the motion program.
[0056] FIG. 11 is an example screen display of a select model
dialog of the model setup dialogs. The operator uses the select
model dialog 1101 to select which models to use for a particular
cutting session. The "Standard" model button 1102 is used to
specify what combinations of the replaceable models (e.g., models
405 in FIG. 4) to use. It preferably provides a default set of
models. The operator can preferably select one or more of the
currently available models by selecting the appropriate model
checkboxes 1103. Choices of different versions of these models can
be added when more than one of a model type exists. For example,
different corner models may be selectable in a drop down menu (not
shown) or other GUI element if more than one corner model is
available. By selecting the Lead and Taper Control checkbox 1105,
the operate can indicate a desire to have the DWCS automatically
determine lead and taper angles.
[0057] FIG. 12 is an example screen display of a custom corner edit
dialog of the model setup dialogs. This dialog is displayed by the
DWCS in response to selecting the Edit button 1106 in FIG. 11. The
customer corner edit dialog 1201 is used to manually control speed
computations at corners. The operator can specify the actual speed
around the corner, as well as the how the segmentation of the
drawing entities should be adjusted to account for the deceleration
and acceleration around corners.
[0058] FIG. 13 is an example screen display of a custom lead and
taper dialog of the model setup dialogs. Using the custom lead and
taper control dialog 1301, an operator can specify a lead and taper
scheme, with already determined values, for example, using scheme
input field 1302. Or, the operator can specify the particular lead
and taper values to use with each specified speed increment, for
example by inputting values in the lead and taper angle table field
1303. Speed increments are specified in the increment field 1304.
Thus, an operator could conceivable specify the lead and taper for
every speed that can be performed by the cutting head by using an
increment of 1%.
[0059] FIG. 14 is an example screen display of a jet controller
feedback and control dialog of an example Dynamic Waterjet Control
System cutting module user interface. Cutting display area 1401
contains a view of the target piece. The controller feedback and
control dialog (controller dialog) presents current controller
information to the operator as the piece is being cut. The
orientation parameter feedback area 1402 displays the values of the
orientation parameters from the controller's point of view. Once
the cutting process is started, the operator can choose which
parameters to display, as discussed with reference to FIGS. 15-17.
The operator selects the home orientation buttons 1403 to set an
"origin" position for the x-y plane, for the z-direction (which is
used for standoff compensation), and for the lead and taper angular
positions of the cutting head. The "home" position can be either a
0,0 coordinate origin position of the jet apparatus, or any x-y or
z position or angles, set by the operator using the buttons 1403.
Process parameter feedback area 1406 contains current values for
pump and nozzle related parameters including whether or not
abrasive is being used and whether the pump is performing at high
or low pressure. To begin the actual cutting process, the operator
selects the cycle start button 1404. At this time, the DWCS
downloads the motion program to the controller and instructs the
controller to execute the program. The cycle stop button 1405 is
selected to stop the current cutting process.
[0060] FIGS. 15-17 are example screen displays of controller
feedback provided while the jet is cutting the workpiece. FIG. 15
is an example screen display that shows the x-y position of the
current location of the jet tool tip relative to the path. In FIG.
15, cutting display area 1501 shows the cutting being performed so
that the operator can view the (approximate) current position of
the jet and progress of the cutting operation. Orientation
parameter feedback area 1502 displays the current values of the
particular orientation parameter selected for display. In FIG. 15,
these values are the x and y position of the jet tool tip in
relation to the "home" position of the jet apparatus.
[0061] FIG. 16 is an example screen display that shows standoff
compensation values of the cutting head. Cutting display area 1601
is similar to that described with reference to FIG. 15. The
orientation parameter feedback area 1602 is shown displaying the
current standoff compensation value of the cutting head that
corresponds to the current location of the jet tool tip. In the
embodiment illustrated, these values are from the point of view of
the controller, thus they reflect motor positions.
[0062] FIG. 17 is an example screen display that shows the lead and
taper compensation values of the cutting head. Cutting display area
1701 is similar to that described with reference to FIG. 15. The
orientation parameter feedback area 1702 is shown displaying the
current lead and taper compensation values of the cutting head
relative to a vertical neutral position. In the embodiment
illustrated, these values are from the point of view of the
controller (after the kinematic equations have been applied to the
lead and taper angles), thus they reflect motor positions.
[0063] In exemplary embodiments, the Dynamic Waterjet Control
System is implemented on a computer system comprising a central
processing unit, a display, a memory, and other input/output
devices. Exemplary embodiments are designed to operate stand-alone
or in a networked environment, such as a computer system that is
connected to the Internet, or in an environment where the user
interface of the DWCS is controlled remotely, by a physical network
or, for example, by a wireless connection. In addition, exemplary
embodiments may be embedded into a computer controlled numeric
controller (a CNC device) that directly controls the jet or in a
computer interface of the CNC device. One skilled in the art will
recognize that embodiments of the DWCS can be practiced in other
environments that support the ability to generate commands that a
water jet controller device can understand.
[0064] FIG. 18 is a block diagram of a general purpose computer
system for practicing embodiments of the Dynamic Waterjet Control
System. The computer system 1801 contains a central processing unit
(CPU) 1802, a display 1803, a computer memory (memory) 1805, or
other computer-readable memory medium, and other input/output
devices 1804. The components of the DWCS 1806 typically reside in
the memory 1805 and execute on the CPU 1802. As described in FIG.
4, the DWCS 1806 comprises various components, including a user
interface 1807, a CAD module 1808 (if not a part of the user
interface 1807), a motion program generator/DWCS kernel 1809, one
or more replaceable models 1810, and a controller interface 1811.
These components are shown residing in the memory 1805. Other
programs 1810 also reside in the memory 1805.
[0065] One skilled in the art will recognize that exemplary DWCSs
can be implemented as one or more code modules and may be
implemented in a distributed environment where the various programs
shown as currently residing in the memory 1805 are instead
distributed among several computer systems. For example, the
replaceable models 1810, which contain preferably the lead and
taper model, speed and acceleration model, the corner model, and
other models, may each or in any combination reside on a different
computer system than the computer system on which the motion
program generator 1809 and/or the user interface 1807 reside or the
CAD module 1808 resides. Also, as discussed earlier with respect to
FIG. 3, one or more of these components may reside and execute on a
computer associated with the controller of the jet apparatus or on
a controller card. In one embodiment, the DWCS is implemented using
an object-oriented programming environment such as the C++
programming language and the replaceable orientation and process
models are implemented as different types of objects or
classes.
[0066] FIG. 19 is an example target piece design, which is used to
illustrate how the Dynamic Waterjet Control System automates
determination of the orientation and cutting process parameters.
FIG. 19 shows a rectangular shape, which is to be cut from the
point labeled "Start" proceeding in a counterclockwise fashion
until the point labeled "Finish." The design shows four geometric
entities (lines) labeled "a," "b," "c," and "d." When cutting, the
jet apparatus will progress in order around the corners labeled A,
B and C. At the end of the cut, the jet will arrive at the point
marked "Finish." For illustration purposes, the following
description assumes that the operator has communicated a desire to
cut the entity "a" at a high speed (rough surface finish) and the
remaining entities "b," "c," and "d" slowly (smooth surface
finish). Also, the description assumes that no part offset is
required to account for the width of the cut produced by the
jet.
[0067] As discussed with reference to the user interface
demonstrated in FIG. 7, when an operator selects the "Run" button
from the introductory dialog of the cutting module of the user
interface (see e.g., button 704), the DWCS begins the automated
orientation parameter determination process. FIG. 20 is an example
flow diagram of the automated orientation parameter determination
process of an example Dynamic Waterjet Control System. In step
2001, the DWCS determines whether this is the first time that the
software has been run to cut this target piece or if any input
(process) parameters have changed, and, if so, continues in step
2002, else continues in step 2003. In step 2002, the DWCS displays
the model preference dialogs (see, e.g., FIGS. 10-13) and obtains
information from the operator regarding what models and or
overriding values the operator desires. For example, an operator
can use these model preference dialogs to override the speed
percentage value for corners even though other parameters may be
automatically chosen by the system, for example the lead and taper
angles. In step 2003, the DWCS invokes a build motion program data
structure routine to query the various models for orientation and
process parameter values. In step 2004, the DWCS sets up or
verifies that a communication session has been established with the
jet controller. In step 2005, the DWCS displays the controller
dialog (e.g., see FIG. 14), and returns to await further operator
instruction.
[0068] FIG. 21 is an example flow diagram of the steps performed by
the Dynamic Waterjet Control System to build a motion program data
structure. The DWCS examines the geometry that was received for the
desired piece and automatically determines, using the models and
overriding cutting process parameter values indicated by the
operator, the speeds and the orientation of the jet to be used to
cut the piece according to the specified customer requirements.
These values are stored in a data structure that forms the motion
program when it is complete. One skilled in the art will recognize
that any appropriate data structure, including a simple array or
table, may be used to store the motion program data.
[0069] Specifically, in step 2101, the DWCS segments the CAD input
into drawing entities. As stated earlier, this step is performed
using well-known techniques in the industry and/or off-the-shelf
programs. In step 2102, the DWCS determines the cutting speeds to
be used for each drawing entity by querying the cutting speed and
acceleration model. The model may be implemented as a series of
callable functions (equations) or may be implemented as a simple
look-up table based upon drawing entity type, jet apparatus
restrictions or requirements, and various process parameter values.
In any case, external speed and acceleration models may be used in
conjunction with the lead and taper model described herein.
Preferably, any model used produces the fastest cut speed
attainable for the given process parameters (the "separation
speed.") For a given jet apparatus and DWCS, the speed model
specifies a relationship that relates "slow" and "fast" customer
requirements to some given speed. For example, in one example
embodiment, a fast cut is considered to be at 100% while a slow cut
is typically 20%. Other embodiments refer to "fast" and "slow" on a
sliding scale, for example, 1-10. For purposes of illustration,
this discussion indicates fast as 100% speed.
[0070] Once the fast (100%) speed is determined, the DWCS can
assign percentage speed values to other requested speeds. For
example, if the speed model invoked by the DWCS returns a value of
10 inches per minute (ipm) for the 100% speed, then, when the model
specifies that a second entity should be cut at 1 ipm, the DWCS
determines that the second entity should be cut at a 10% speed,
since 1 ipm is 1/10.sup.th of 10 ipm.
[0071] Referring again to the example shown in FIG. 19, the
geometric entity "a" is to be cut at fast speed, thus at the 100%
speed. Since the operator specified a slow speed for the remaining
entities, for purposes of illustration, a speed value of 20% will
be assigned to these entities. The motion program data structure
values that correspond to the design of FIG. 19 at this point will
be similar to those shown in Table 1. TABLE-US-00001 TABLE 1
Feature Percentage Speed Start 0 First leg a 100 Corner A Second
leg b 20 Corner B Third leg c 20 Corner C Fourth leg d 20 Finish
0
[0072] Once the cutting speeds for geometric entities of the
designed part are calculated, then in step 2103, the DWCS checks
for speed constraints at each corner, if corners are present. For
example, just as a driver slows a car around a corner, the jet
cutting head should also slow down. The speed to which the cutting
head should be slowed for a particular corner is determined either
by operator input or by using the mathematical equations of a
corner control model, such as corner model 408 in FIG. 4.
[0073] Once corner speeds are determined, all speeds are matched
with their respective geometric entities. The motion program data
structure values that correspond to the design of FIG. 19 at this
point will be similar to those shown in Table 2. TABLE-US-00002
TABLE 2 Feature Percentage Speed Start 0 First leg a 100 Corner A
10 Second leg b 20 Corner B 10 Third leg c 20 Corner C 10 Fourth
leg d 20 Finish 0
[0074] In step 2104, the DWCS determines how to transition the
speed between each drawing entity of the design. For example,
referring to FIG. 19 and Table 2, to meet process or machine
acceleration constraints, the cutting head may require 0.5 inches
to increase from 0% speed at the "Start" to the 100% speed of the
first leg (entity "a"). Transitions such as this are calculated by
the DWCS for every geometric entity and are based upon the
characteristics of the jet apparatus and the type of entity among
other process parameters.
[0075] The speed transitions may be accomplished by setting
acceleration parameters on the controller or by "breaking up" the
original CAD design into smaller segments. The DWCS then assigns
each one of these segments an incremental change in speed that
produces the required speed transition. In an example embodiment,
the segment breaking technique is often used.
[0076] At this point, the motion program data structure includes
the x-y location of every entity or feature and the speed assigned
to each entity.
[0077] In steps 2105 and 2106, the DWCS uses the lead and taper
model to determine the lead and taper angle of each endpoint. An
underlying principle of the model is to match the lead and taper
angles to the cutting speed so that the jet can be accelerated
through the target piece with a resulting straight edge. Moreover,
the techniques employed by the model are preferably general enough
to support the determination of lead and taper angles for an
arbitrary geometric design, and not just for designs for which
prior testing has been performed. Also, the techniques described
below illustrate lead and taper angles as functions of speed. One
skilled in the art will recognize that, since the speed values are
themselves functions of other process parameters, equivalent
techniques may be used which characterize lead and taper instead as
functions of these other process parameters.
[0078] The lead and taper model can be implemented as an object (or
class) with at least one method, for example, a "getLTAngle"
method. In one embodiment, the method receives three input
parameters: the cutting speed, the angle of a tangent to the path
(at the point of inquiry), and an indication of the direction of
the offset. The getLTAngle method includes several techniques
(e.g., families of equations or look-up tables) for determining the
lead and taper angles, based upon differing values for the cutting
head process parameters. In addition, the getLTAngle method
incorporates the designated tangent angle to assist in defining
smoother transitions in instances where two straight lines
intersect, for example, in corners. The designated tangent angle at
the intersection/corner is preferably an average of the tangents of
each intersecting line. The model uses this tangent angle to
determine lead and taper angles at intersections that will result
in gentler transitions of the cutting head motion.
[0079] Specifically, in step 2105, the DWCS uses the lead and taper
model and the motion program data structure compiled thus far to
determine the lead angle for each entity end point. First, the
model determines drag length. One form of equation to do determine
drag length is as follows: d = U .times. % * ( ( 0.1445 * t ) +
0.0539 ) 100 ( 1 ) ##EQU1## where d is the drag length (e.g., in
inches), U % is the speed percentage assigned to the entity, and t
is the material thickness (e.g., in inches). The coefficients of
Equation 1 will vary depending on the thickness range of the
material but this is the general form of an equation that can be
used by the lead and taper model.
[0080] Once the drag length is determined, the model now determines
the lead angle .theta..sub.L (e.g., in degrees) by the equation:
.theta. L = arc .times. .times. tan .function. ( d t ) ( 2 )
##EQU2## where d and t are again the drag length and material
thickness, respectively. Various scaling factors may be applied to
Equation 2 for materials under 0.25 inches in thickness. Once the
lead angle for each endpoint is determined, it is stored by the
DWCS in the motion program data structure.
[0081] One skilled in the art will recognize that other equations
of the general form of Equations 1 and 2 can be used to determine
the lead angle and incorporated into the lead and taper model. Any
equation form that evaluates to the same or similar values for
given material thicknesses (also including a look-up table of
discrete values) will operate with the methods and systems of the
present invention. In practice, there will be a family of equations
in the general form shown that will cover various material
thicknesses. The DWCS preferably determines which family of
equations to use from the model based upon received process
parameters. Basically, any technique for providing a lead angle
value for an arbitrary geometry can be used in implementing the
lead and taper model of the DWCS.
[0082] In step 2106, the DWCS uses the lead and taper model and the
motion program data structure compiled thus far to determine the
taper angle for each entity end point. First, the model determines
the width Wt (e.g., in inches) at the top (the entrance point) of
the cut using an equation similar to: Wt=0.04628-(0.00015*U
%)+(0.00125*t)+(9.06033E-07*U %.sup.2) (3) where U % is the speed
percentage assigned to the entity and t is the material thickness.
Next, the model determines the width Wb (e.g., in inches) at the
bottom (the exit point) of the cut using an equation similar to: Wb
= 1 ( 20.391548 + ( 0.434775 * U .times. % ) - ( 4.650149 * t ) ) (
4 ) ##EQU3## Note that the coefficients of Equations 3 and 4 will
vary depending on the process parameter values such as abrasive
flow rate, mixing tube length, material etc. Equations 3 and 74 can
be expressed more generally as a polynomial of the form: Wt=(d*U
%.sup.2)-(b*U %)+(c*t)+a (4a) where the coefficients a, b, c and d
are determined theoretically, experimentally or by a combination of
both. One skilled in the art will recognize that additional terms
may be added and that other equations of the general form of
Equation 4a can be used to determine the taper angle and
incorporated into the lead and taper model. Any equation form that
evaluates to the same values for given process parameters (also
including a look-up table of discrete values) will operate with the
methods and systems-of the present invention.
[0083] Once the top width and the bottom width have been
determined, the model returns the taper angle .theta..sub.T (e.g.,
in degrees) using an equation of the form: .theta. T = arc .times.
.times. tan .function. ( ( 0.5 * ( Wt - Wb ) ) t ) ( 5 ) ##EQU4##
Basically, any technique for providing a taper angle value for an
arbitrary geometry can be used in implementing the lead and taper
model of the DWCS.
[0084] In step 2107, the DWCS optionally scales the values for lead
and taper depending upon various operator inputs. For example,
under very high speeds (and depending upon the cutting head
characteristics), the lead angle corrections may not have any
practical effect. In such a situation, the DWCS can scale the lead
angle values determined by the model by multiplying them by 0.
[0085] At this point, the motion program data structure contains
all of the desired geometric entities, cutting speeds, and angle
compensations. In step 2108, this data is converted into a motion
program instructions. In one embodiment, the DWCS uses inverse
kinematic equations to determine the motor joint positions that
advance the tool tip along the desired path with the appropriate
angles as specified in the data structure. (If there are arcs in
the design, this technique typically requires that arcs be
converted into line segments before applying the inverse kinematic
equations.) The resultant motion program is in a "complex" form in
that the lead and taper angles are implicit in the program. The
example user interface described above with reference to FIGS. 7-17
corresponds to this embodiment.
[0086] In another embodiment of FIG. 21, the inverse kinematics are
performed by the controller card after the motion program is
downloaded. (Arcs do not need to be converted to lines.) The motion
program is more simple and has explicit (and visible) lead and
taper values that are read by the controller card and can be
displayed in a corresponding controller dialog for feedback
purposes.
[0087] In another embodiment of FIG. 21, the DWCS does not perform
one or more of the steps of segmentation of the design (step 2101),
or the other steps of assigning speed and angle values to
sub-entities of the geometry. Instead, the various models are
downloaded into the controller itself. As the controller executes
the x-y path of the drawing, the controller consults internally
embedded models, such as the speed and acceleration model and the
corner model, to determine a next speed when it detects and
encounters a new geometric entity. The controller also dynamically
adjusts the lead and taper of the cutting head in response to speed
feedback relative to the current location and the upcoming location
by determining appropriate values from an embedded lead and taper
model. Thus, a type of "look-ahead" is provided. As discussed with
reference to FIG. 14, once the controller feedback and control
screen is displayed, an operator preferably selects the cycle start
button (see e.g., button 1404) to cause the jet apparatus to
actually begin cutting the workpiece. FIG. 22 is an example flow
diagram of the steps performed by the Dynamic Waterjet Control
System to begin the cutting cycle. In step 2201, the DWCS downloads
the motion program to the controller (e.g., controller computer or
card). In step 2202, the DWCS sends an instruction to the
controller to indicate that the controller should begin executing
the motion program, and then returns. As the controller advances
through the motion program, it smoothly transitions between all
angles and speeds.
[0088] Although specific embodiments of, and examples for, the
present invention are described herein for illustrative purposes,
it is not intended that the invention be limited to these
embodiments. Equivalent methods, structures, processes, steps, and
other modifications within the spirit of the invention fall within
the scope of the invention. For example, the teachings provided
herein of the present invention can be applied to the other
arrangements of fluid jet systems, such as systems in which a
portion or the entire input, automation and control logic is
embedded in a controller, or with systems having different axis
cutting heads. In addition, the teachings may be applied to other
types of modeling or to models based upon process parameters other
than speed. In addition, the teachings may be applied to
alternative control arrangements such as residing on a remote
control device such as a device connected to the jet apparatus via
wireless, networked, or any type of communications channel. These
and other changes may be made to the invention in light of the
above detailed description. Accordingly, the invention is not
limited by the disclosure, but instead the scope of the present
invention is to be determined by the following claims.
* * * * *