FULL KNOWLEDGE BASE AUTOMATIC CAD SYSTEM
AND METHOD FOR AUTOMATICALLY GENERATING A
CAD ENGINEERING DRAWING
BACKGROUND OF THE INVENTION
1. Field of the Invention
This invention relates generally to computer aided design and, more particularly,
to a full knowledge base computer aided design system and a method for automatically
generating a computer aided design engineering drawing.
2. Description of the Related Art
Computer aided design (CAD) systems are widely used for design,
manufacturing, and quality control. In general, conventional CAD systems utilize two-
dimensional (2D) or three-dimensional (3D) graphical user interfaces to assist in
generating engineering drawings. These engineering drawings generally include 2D or
3D geometric shapes and related dimensional information.
Conventional CAD systems typically require the user to manually draw the
geometric shapes and related dimensions needed. Although this method is relatively
easy to learn and use, this method is very susceptible to mistakes on the part of the user.
As a result, some conventional CAD systems automatically generate geometric shapes to
reduce the risk of such mistakes. However, these CAD systems typically cannot
automatically generate the dimensions of a part. Even when a conventional CAD system
has the capability to generate limited dimension information, the user generally is
required to manually check drawing features, determine projecting directions, select text
style, point dimension positions, and perform other manual operations as will be
apparent to those skilled in the art.
The dimensioning methods used in conventional CAD systems focus on the
different modules and functions (e.g., design, geometric drawing, and dimension), but do
not make full use of the relationship between the modules. In particular, conventional
CAD systems that provide limited dimensioning focus on the uses and analysis of
geometric information, but this geometrical information is far inferior to the information
available in an engineering drawing.
In view of the foregoing, there is a need for a method for automatically
generating dimension and manufacturing information in a CAD system.
SUMMARY OF THE INVENTION
Broadly speaking, the present invention addresses these needs by providing a full
knowledge based automatic CAD drawing system. In one embodiment, a method is
disclosed for automatically generating a CAD engineering drawing. The method
includes designing a part utilizing a design knowledge base that stores a plurality of
basic part features. In addition, a part drawing is automatically generated using the
design knowledge base and a drawing knowledge base that stores view properties for a
portion of the plurality of basic part features stored the design knowledge base. Further,
using the design knowledge base, the drawing knowledge base, and a dimension
knowledge base, which stores dimension data for a portion of the view properties stored
in the drawing knowledge base, part dimensions are automatically generated. In one
aspect, a user is allowed to define parameters for the part, which are then stored in the
design knowledge base.
In a further embodiment, a computer program for automatically generating a
CAD engineering drawing is disclosed. The computer program includes program
instructions that design a part utilizing a design knowledge base stores a plurality of
basic part features. Also included are program instructions that automatically generate a
part drawing using the design knowledge base and a drawing knowledge base that stores
view properties for a portion of the plurality of basic part features stored the design
knowledge base. Further, program instructions are included that automatically create
part dimensions using the design knowledge base, the drawing knowledge base, and a
dimension knowledge base. As above, the dimension knowledge base stores dimension
data for a portion of the view properties stored in the drawing knowledge base. The view
properties can include geometric data and relationship data defining a relation ship
between a stored drawing and a basic part feature. The dimension data can include
tolerance data and user preference data. Further, habit data defining drawing habits of
the user can be included in the design knowledge base, the drawing knowledge base, and
the dimension knowledge base. In one aspect, the habit data can include information
defining user design, drawing, and dimension preferences. Optionally, the habit data can
include standard and non-standard design, drawing, and dimension user defined methods.
Other aspects and advantages of the invention will become apparent from the following
detailed description, taken in conjunction with the accompanying drawings, illustrating
by way of example the principles of the invention.
BRIEF DESCRIPTION OF THE DRAWINGS
The invention, together with further advantages thereof, may best be understood
by reference to the following description taken in conjunction with the accompanying
drawings in which:
Figure 1 is a block diagram illustrating the relationship between the functional
processes and the knowledge bases in the CAD system, in accordance with an
embodiment of the present invention;
Figure 2 is a flowchart showing a design process, in accordance with an
embodiment of the present invention;
Figure 3 is an illustration showing an exemplary user interface for a design
process, in accordance with an embodiment of the present invention;
Figure 4 is a flowchart showing a drawing process, in accordance with an
embodiment of the present invention;
Figure 5 is an illustration showing an exemplary user interface for a drawing
process, in accordance with an embodiment of the present invention;
Figure 6 is a flowchart showing a dimension process, in accordance with an
embodiment of the present invention; and
Figure 7 is an illustration showing an exemplary user interface for a dimension
process, in accordance with an embodiment of the present invention.
DETAILED DESCRIPTION OF EXEMPLARY EMBODIMENTS
Several exemplary embodiments of the invention will now be described in detail
with reference to the accompanying drawings. In the following description, numerous
specific details are set forth in order to provide a thorough understanding of the present
invention. It will be apparent, however, to one skilled in the art that the present
invention may be practiced without some or all of these specific details. In other
instances, well known process steps have not been described in detail to avoid obscuring
the invention unnecessarily.
Embodiments of the present invention address the problems of the prior art by
providing a method that uses design, drawing, and dimension knowledge bases to
provide automatic CAD drawing. Generally speaking, embodiments of the present
invention initially prepare dimension information from a design stage, as will be
described in greater detail below. Additional dimension information is added during a
drawing creation stage, which studies and traces a user's dimension habit. Finally,
engineering dimension information is automatically generated.
As mentioned above, embodiments of the present invention use design, drawing,
and dimension knowledge bases to implement automatic CAD drawing. The design
knowledge base is used to store design cases, which can be reused and expanded. When
generating a drawing, embodiments of the present invention read a design case from the
design knowledge base and match the design case with a drawing case in the drawing
knowledge base. Depending on the user's drawing knowledge base, a drawing pattern
(e.g., view ports, color, line type, ED ISO drawing, and detailed drawing) can be
determined.
Subsequently, during a dimensioning stage, a dimension style (e.g., position,
precision, tolerance, color, text height, title block, and technical notes) can be determined
based on the design case, drawing pattern, and information in the dimension knowledge
base. Thereafter, the dimensions for the drawing can be automatically generated. As
will be described in greater detail below, each of the three knowledge bases can be pre¬
defined, reused, and expanded upon. In addition, each knowledge base includes a self-
study function that allows for a higher degree of automation when more cases are
included in the knowledge bases, as described below.
Figure 1 is a block diagram illustrating the relationship between the functional
processes and the knowledge bases in a CAD system, in accordance with an embodiment
of the present invention. Embodiments of the present invention use a design knowledge
base 102, a drawing knowledge base 106, and a dimension knowledge base 110 to
provide automatic CAD drawing, including dimensions. It should be noted that
dimension information includes geometric data and mechanical information.
As illustrated in Figure 1, a design process 100 is supported by the design
knowledge base 102. In addition, a drawing process 104 is supported by both the design
knowledge base 102 and the drawing knowledge base 106. Further, a dimensioning
process 108 is supported by the design knowledge base 102, the drawing knowledge base
106, and the dimension knowledge base 110. The design process 100, drawing process
104, and dimensioning process 108 will be described in greater detail below beginning
with the description of design process 100 shown in Figure 2.
Figure 2 is a flowchart showing additional details of design process 100 shown in
Figure 1, in accordance with an embodiment of the present invention. In operation 200,
basic features of the drawing are selected. The basic features are stored within the design
knowledge base 102 and can be displayed to the user via a suitable user interface. The
basic features can include, for example, graphics, name, and code, or any other user
preferred information.
In operation 202, the parameters for the design are set. The parameters define the
data of the basic feature. The data can be loaded with a data file, preset with default data,
or defined using the last setting. After the user confirms the parameter data, in operation
204, the design process 100 determines whether the user wants to select another basic
feature. If the user wants to select another basic feature, then the design process
branches to another select basic feature operation 200. Otherwise, in operation 206, the
design process 100 combines the selected basic features.
Figure 3 is an illustration showing an exemplary user interface for a design
process, in accordance with an embodiment of the present invention. As shown in Figure
3, the design knowledge base 102 includes a cube 310 named "Code 1001," a sphere, a
cylinder 312 named "Code 1003," a cone, a wedge, and a torus. In the following
discussion, the use of the user interface shown in Figure 3 to implement operations 200-
210 described herein with reference to Figure 2 will be described for an exemplary
design process. The user selects the cube 310 within the table of selection 302 and sets
the cube's 310 parameters and position 304. The user then selects another feature, in
operation 204, and selects the cylinder 312 within the table of selection 302 and sets the
cylinder's 312 parameters and position 304. The user then selects another cube 310
within the table of selection 304 and sets the cube's 310 parameters and position 304.
The user then decides not to add additional features and continues to operation 206.
Referring now to Figure 2, once operation 206 has been completed, the method
proceeds to operation 208 in which a part is generated based on the combined basic
features. The user can define a name, code, or other preferred recognizable mark for the
part. Next, in operation 210, the design case is stored into the design knowledge base
102. Turning to Figure 3, the combined features 306 are displayed and the user can
check, modify, and add other properties, e.g., a name 308 such as "Code 2001." The
name can be manually input or defined automatically by a rule or a naming file. As
shown in Figure 3, the feature named "Code 2001" 308 equals cube "Code 1001"
minus cube "Code 1001" minus cylinder "Code 1003" plus their relationship and other
geometric and non-geometric properties. After the user confirms the part 306, the part
306 is stored in the design knowledge base 102 and a new part knowledge record 314
named "Code 2001" is generated. The next time the user enters the design process 100,
the part knowledge record 314 named "Code 2001" will appear on the table of selection
302.
Figure 4 is a flowchart showing additional details of drawing process 104 shown
in Figure 1, in accordance with an embodiment of the present invention. In operation
400, the user pre-selects a part for an automatic drawing. When a user calls a drawing
module, the parts are searched in the design knowledge base 102 and listed on the user
interface of selection. Each drawing is then processed one-by-one in operations 402-412,
which are described in detail below.
In operation 402, design information is read from the design knowledge base 102.
By way of example, the design information can include the code, geometric parameters,
relationship, and other design information stored in the design knowledge base 102.
Figure 5 is an illustration showing an exemplary user interface for a drawing process, in
accordance with an embodiment of the present invention. In the example of Figure 5, the
drawing knowledge base 106 does not initially include drawing knowledge record " Code
2001" 502 with "View 01010" 516. In operation 402, the system reads the design
information for part 306 that has the part knowledge record "Code 2001" 314 from the
design knowledge base 102.
Referring back to Figure 4, the part features are analyzed in operation 404. The
features may- be analyzed using the drawing knowledge base 106. In operation 406, a
geometric drawing is generated based on the features and the user's drawing habits. The
geometric drawing is generated using the drawing knowledge base 106. The drawing's
view ports, scale, color, name, and other drawing information can be defined manually or
automatically using predefined rules or a default data file, depending on the user's
presets.
Referring now to Figure 5, a drawing properties settings frame 506 is used to
define the view ports, color, line type, scale, name, and other drawing information.
These properties can be set manually or automatically with the last setting or a default
data file, depending on the user preferences. In the example of Figure 5, the view ports
are the front and right view ports, the viewable line (continue line) is the color black, the
non- viewable line (dashed line) also is set to black, and the view code 512 is "View
01010."
Referring back to Figure 4, in operation 408, the drawing case is stored into the
drawing knowledge base 106. That is, if the drawing is a new drawing case,
embodiments of the present invention store the drawing case into the drawing knowledge
base 106. The drawing case data can include a design knowledge reference and a
drawing knowledge reference. With reference to Figure 5, part 306 is added into the
drawing record list because, in this example, part 306 is new to the drawing knowledge
base 106. The record generated in operation 406 creates a relationship with feature 502
of "Code 2001." In tins manner, the next time the user enters the drawing process 104,
when a part has the feature 502 of "Code 2001," the drawing 514 is automatically
generated.
Referring now to Figure 4, in operation 410, the dimension module is called to
begin the dimension process 108. The dimension process 108 will be described in
greater detail below with reference to Figures 6 and 7. A decision is then made, in
operation 412, as to whether the drawing has non-drawing parts in the queue. If the
drawing has non-drawing parts in the queue, then the drawing process 104 branches to
another read design information operation 402. Otherwise, the drawing process ends. In
this manner, the next time the user enters the drawing process 104, if a part has the same
features, then a similar drawing is automatically generated.
Figure 6 is a flowchart showing additional details of dimension process 108
shown in Figure 1, in accordance with an embodiment of the present invention.
Generally, the dimension process 108 is initiated in operation 410 of the drawing process
104 (see Figure 4), or is activated directly by the user. In operation 600, design
information and drawing information are read from the design knowledge base 102 and
drawing knowledge base 106, respectively. This information can include, for example,
name, material, heat treatment, quantity, view ports, geometric shape, and other data that
will be apparent to those skilled in the art after a careful reading of this detailed
description.
Figure 7 is an illustration showing an exemplary user interface for a dimension
process, in accordance with an embodiment of the present invention. In the example of
Figure 5, the CAD system initially includes case "Code 2001" 306 with "View 01010"
516 stored in the design knowledge base 102 and the drawing knowledge base 106. In
operation 600 (see Figure 6), the system reads the design information for part 306 that
has the feature record "Code 2001" from the design knowledge base 102 and drawing
knowledge base 106.
With continuing reference to Figure 6, the features are analyzed in operation 602.
More specifically, the features and user dimension habits are analyzed using the
dimension knowledge base 110. The result of the analysis can include, for example, the
dimensional features, dimension positions, precision, tolerance, text style, title block, and
other dimension information. These dimension features can be defined manually or
automatically with predefined rules or a default data file.
In operation 604, a geometric drawing is generated based on the features and the
user's dimension habits. In particular, the analytical result is used to generate the
drawing dimensions. For example, referring now to Figure 7, a dimension properties
setting frame 710 is used to define the features that will have dimensions, their
dimension positions, precision, tolerance, text style, title block, and other dimension
information. In addition, a dimension code 714, in this example "Dim 0046," is set.
These properties can be set manually or automatically using the last setting or a default
data file 712, depending on the user's preference. In this manner, a dimension drawing
716 is generated.
Referring back to Figure 6, in operation 606, the dimension case is stored in the
dimension knowledge base 110. In this manner, the next time the user enters the
dimension process 108, if a part has the same design features and same drawing features,
then a similar drawing with dimensions will be automatically generated. Turning to
Figure 1, the dimension case is added to the feature's record list if the dimension case is
new. The dimension properties record 714 is stored into the dimension knowledge base
110 as a new dimension record 718, which is labeled "Dim 0046," is created. The
dimension record 718 creates a relationship with feature 702 of "Code 2001" and "View
01010." In this manner, the next time the user enters the dimension process, if a part has
the feature 702 of "Code 2001" and "View 01010," then the dimension drawing 716
will be automatically generated.
With the above embodiments in mind, it should be understood that the invention
may employ various computer-implemented operations involving data stored in
computer systems. These operations are those requiring physical manipulation of
physical quantities. Usually, though not necessarily, these quantities take the form of
electrical or magnetic signals capable of being stored, transferred, combined, compared,
and otherwise manipulated. Further, the manipulations performed are often referred to in
terms such as, for example, producing, identifying, determining, or comparing.
Any of the operations described herein that form part of the invention are useful
machine operations. The invention also relates to a device or an apparatus for
performing these operations. The apparatus may be specially constructed for the
required purposes, such as the automatic CAD system discussed above, or it may be a
general purpose computer selectively activated or configured by a computer program
stored in the computer. In particular, various general purpose machines may be used
with computer programs written in accordance with the teachings herein, or it may be
more convenient to construct a more specialized apparatus to perform the required
operations.
The invention can also be embodied as computer readable code on a computer
readable medium. The computer readable medium is any data storage device that can
store data which can be thereafter be read by a computer system. Examples of the
computer readable medium include hard drives, network attached storage (NAS), read¬
only memory, random-access memory, CD-ROMs, CD-Rs, CD-RWs, magnetic tapes,
and other optical and non-optical data storage devices. The computer readable medium
can also be distributed over a network coupled computer systems so that the computer
readable code is stored and executed in a distributed fashion.
Although the foregoing invention has been described in some detail for purposes
of clarity of understanding, it will be apparent that certain changes and modifications
may be practiced within the scope of the appended claims. Accordingly, the present
embodiments are to be considered as illustrative and not restrictive, and the invention is
not to be limited to the details given herein, but may be modified within the scope and
equivalents of the appended claims.
What is claimed is: