Download as pdf or txt
Download as pdf or txt
You are on page 1of 13

2.

CAD/CAM software

An investigation of existing CAD/CAM software in general reveals that it has


common characteristics regardless of the hardware it runs on. It is an interactive
program typically written in a standard programming language: FORTRAN,
PASCAL, or C. It is usually hardware-dependent and seems different to the user from
conventional software due to the user interface. The database structure and database
management system of the software determines its quality, speed, and ease of
information retrieval. Users of the software are usually faced with learning its related
semantics and syntax of its user interface. Semantics specifies how the software
functions and what information is needed for each operation on an object. Semantics
are usually bounded by the principles and theories underlying a given field. Syntax
defines the format of inputs and outputs. It is considered the grammar of the
software. It specifies the rules that users must follow to achieve the desired
semantics.

The most important characteristic of CAD/CAM software is its fully three-


dimensional, associative, centralised, and integrated database. Such a database is
always rich in information needed for both the design and manufacturing processes.
• The centralised concept implies that any changes in or additions to a geometric
model in one of its views is automatically reflected in the existing views or any
views that may be defined later.
• The integrated concept implies that a geometric model of an object can be utilised
in all various phases of a product cycle.
• The associativity concept implies that input information can be retrieved in
various forms. For example. if the two endpoints of a line are input, the line length
and its dimension can be output.

2.1 Basic definitions

2.1.1 Data structure

10
Formally a data structure is defined as a set of data items or elements that are related
to each other by a set of relations. Applying these relations to the elements of the set
results in a meaningful object. From a CAD/CAM point of view, a data structure is a
scheme, logic, or a sequence of steps developed to achieve a certain graphics, non-
graphics, and/or a programming goal.

1 A 4
E 6
5
B B1 D B2 F
8 7
G
2 3
C
(a) Data structure based on edges
Set of edges: A, B, C, D, E, F, G
Connectivity vertices: 1 (A & B), 2 (B & C), 3 (C & D), 5 (E),
6 (E & F), 7 (F & G), 8 (G)

(b) Data structure based on vertices


Set of vertices: 1, 2, 3, 4, 5, 6, 7, 8
Edge information: A (1 & 4), B (1 & 2), C (3 & 4), D (3
& 4), E (5 & 6), F (6 & 7), G (7 & 8)
(c) Data structure based on blocks
Set of blocks: B1, B2
Set operator: UNION

Figure 2.1. Various data structures of an object.

11
As an example consider the object shown in Fig. 2.1. Three different types of data
structures have been identified to construct the object. They are based on edges,
vertices, or blocks. Within the context of the above formal definition of a data
structure, the set of edges, vertices, or blocks is the set of data items for each type,
and edges, vertices, or blocks are the data items themselves. Furthermore, the
connectivity vertices for the first type, the edge information for the second, and the
set operations for the third form the set of relations required by each type. As an
example, [1, A&B] indicates that vertex 1 is shared by edge A and B while [A, 1&4]
indicates that edge A has two vertices 1 and 4.

2.1.2 Database

The term “database” is commonly used and may mean different things to different
users. Formally, a database is defined as an organised collection of graphics and
nongraphics data stored on secondary storage in the computer. From a software
development point of view, a decision on the data structure has to be made first,
followed by a choice of database to implement such a structure. There may exist
more than one alternative of database to implement a given data structure.

The objective of a database is to collect and maintain data in a central storage so that
it will be available for operations and decision-making. The advantages that accrue
from having centralised control of data, or a centralised database, is manifold:
1. Eliminate redundancy. This is important for integrated CAD/CAM functions and
CIM applications. The database should be rich enough to support all various
phases of product design and manufacturing. If both design and manufacturing
departments, for example, have access to the same database, inconsistent and
conflicting decisions are inherently eliminated, and data is shared by all
applications.
2. Enforce standards. With central control of the database, both national and
international standards are followed. Dimensioning and tolerancing are examples.
In addition, company can develop its own internal standards required by various
departments. Standards are desirable for data interchange or migration between
systems.

12
3. Apply security restrictions. Access to sensitive data and projects can be checked
and controlled by assigning each user the proper access code (read, write, delete,
copy, and/or none) to various parts of the database.
4. Maintain integrity. The integrity of the database ensures its accuracy. Lack of
database integrity can result in inputting inconsistent data.
5. Balance conflicting requirements. Compromises can easily be made when
designing a model of the centralised database to provide its overall best
performance.

CAD/CAM databases must be able to store pictorial data in addition to textural and
alphanumeric data typically stored in conventional databases. The most popular
database models are:
1. Relational database. Data is stored in tables, called relations, that are related to
each other. One of the disadvantages of the relational database is that it requires
substantial sorting, which might result in slowing the system response to user
commands.
2. Hierarchical database. In this model, data is represented by a tree structure.
3. Network database. The network approach permits modelling of many-to-many
correspondence more directly than the hierarchical approaches. The prime
disadvantage of the network approach is its undue complexity both in the database
structure itself and in the associated programming of it.
4. Object-oriented database. Unlike conventional database processing, CAD/CAM
applications require object-oriented accessing and manipulation; that is, units of
retrieval and storage are design objects and not individual records in files. These
design objects also form the basis for ensuring database integrity upon the
insertion, deletion, or modification of component objects.

Object-oriented database seem to be ideal for CAD/CAM applications. Hybrid


database models may also be useful. The following are some of the functional
requirements and specifications that CAD/CAM databases must support:
1. Multiple engineering applications from conceptual design to manufacturing
operations.
2. Dynamic modification and extension of the database and its associatively.

13
3. The iterative nature of design. CAD/CAM database management systems must
support the tentative, iterative, and evolutionary nature of the design process.
4. Design versions and levels of detail.
5. Concurrent and multiple users must be supported from the database.
6. Temporary database support. Due to the iterative nature of design, earlier
generated data may not be committed to the database until the design process is
completed.
7. Free design sequence. The database system should not impose constraints on the
designer to follow because different designs require different sequences.
8. Easy access. Application programs requiring data from a CAD/CAM database
should not require extensive knowledge of the database structure to extract the
data needed. This is important in customising CAD/CAM systems for specific
design and manufacturing procedures.

2.1.3 Database management system

A DBMS is defined as the software that allows access to use and/or modify data
stored in a database. The DBMS forms a layer of software between the physical
database itself (i.e., stored data) and the users of this database as shown in Fig. 2.2. In
general, a DBMS is responsible for all database-related activities such as creating
files,checking for illegal users of the database, and synchronising user access to the
database.

The requirements of a DBMS for CAD/CAM are fundamentally different from those
required by commercial data processing applications. Therefore, current DBMS and
techniques that are originally designed to support business data processing are not
directly applicable to CAD/CAM databases. The latter are characterised by many

14
A pplication program s (U sers)

DBM S

D atabase

Figure 2.2 Simplified DBMS

different data types and also large numbers of instances of each type; that is, these
databases exhibit very large, but static, database structures. In addition, CAD/CAM
databases must support complex relationships between data items in contrast to
business databases that are designed for record keeping and modeling of relatively
simple relationships between data types. Another fundamental difference is that
business databases are relatively stable over time. However, CAD/CAM databases
must reflect the iterative nature of design and manufacturing. Object-oriented
databases and their related DBMSs seem to be ideal for CAD/CAM and can result in
a significant improvement of CAD CAM systems.

2.1.4 Coordinate systems

Three types of coordinate systems are needed in order to input, store, and display
model geometry and graphics. These are the working coordinate system (WCS), the
model coordinate system (MCS), and the screen coordinate system (SCS)
respectively.

The MCS is defined as the reference space of the model with respect to which all the
model geometrical data is stored. It is a cartesian system which forms the default
coordinate system used by particular software. In a part, the model coordinate system

15
describes the geometry of the surfaces and edges. In an assembly, the model
coordinate system describes the locations and orientations of the assembly members.
The MCS is the only coordinate system that the software recognises when storing or
retrieving geometrical information in or from a model database.

It is often convenient in the development of geometric models and the input of


geometrical data to refer to an auxiliary coordinate system instead of the MCS. This
is usually useful when a desired plane (face) of construction is not easily defined as
one of the MCS orthogonal plane (face), as in the case of inclined faces of a model.
The user can define a cartesian coordinate system whose XY plane is coincident with
the desired plane of construction. That system is WCS. It is a convenient user-
defined system that facilitates geometric construction. It can be established at any
position and orientation in space that the user desires. While the user can input data
in reference to the WCS, the software performs the necessary transformations to the
MCS before storing the data. The ability to use two separate coordinate systems
within the same model database in relation to one another gives the user great
flexibility. In Pro/Engineer, WCS can be defined as datum planes which are located
with respect to existing geometry. For example, a datum plane might be made to pass
through an axis and normal to a planar surface (Fig. 2.3).

Figure 2.3 Datum using Tangent/Cylinder and Parallel/Plane

16
SCS is a two-dimensional coordinate system that describes locations in a design
window. When the user zoom the view, the screen coordinate system follows the
display of the model, so that a particular point on the model always maps to the same
screen coordinate. The mapping changes only when the view orientation is changed.
Screen coordinates are a kind of nominal pixel count, so the bottom left corner of the
default window is at (0, 0) and the top right corner is at (1000, 864). Screen
coordinates are important because they are used by some of the graphics functions,
the mouse input functions, and all the functions that draw graphics or manipulate
items on a drawing.

2.2 User interface

A user interface is defined as a collection of commands that users can use to interact
with a particular CAD/CAM system. User-interface or man-machine dialogue
represents the only means of communication between users and CAD/CAM
software. The language of the interface should be simple enough for the user to
understand. It should also be efficient and complete and should have a natural
grammar, that is, the minimum number of easy-to-grasp rules. This helps minimise
user training and allows the user to concentrate on the problem to be solved. The user
interface should allow the user to undo mistakes if needed.

Regardless of the type of user interface, the generic structure of a CAD/CAM


command consists of two parts: user communication and database communication.
The user communication part includes the dialogue that the user follows to achieve
specific goals. The database part includes the geometrical data input to or retrieved
from the database. For example, consider creating a line between the two points (5, 2,
0) and (4, 5, 0) using the command “LINE”. LINE is considered the first part of the
command and the coordinates are the database part. Fig. 2.4 shows a typical menu
structure.

Pro/ENGINEER is a menu-driven system which uses a mouse as the principle user


interface. Menu options are selected by moving the pointer to the desired menu
option, highlighting it in yellow. When you click the left mouse button, the option

17
highlights in red (or is given a checkmark, depending on the function). When the
mouse pointer moves along the menu, a one-line explanation of each command is
given in yellow in the message window.

C heck B uttons
O ption B uttons

Figure 2.4. Examples of Simple and Compound Menus

18
Pro/ENGINEER uses both “simple” and “compound” menus. A simple menu has a
menu name in the title bar at the top of the menu and one or more command or
options listed in the body of the menu. A compound menu has a menu name in the
title bar at the top of the menu and one or more commands or options listed in each
of two or more submenus. The submenus are separated by horisontal bars.

Sometimes a menu will appear with dimmed menu options. This means that the
options are “highlighted” in gray when the menu is displayed. You cannot choose
these options, either because they are not available in the current mode or because
some other option must first be chosen to make them available. Dimmed menu
options are very noticeable when you enter Part mode to create a new part; all options
except Feature and Set Up are dimmed.

2.3 Software modules

There are considerable numbers of software packages for the various types of
CAD/CAM systems. Each package has its own strengths and uniqueness and is
usually targeted toward a specific market and group of users. For example, there are
mechanical, electrical, and architectural CAD and CAM software for the respective
users. Investigating an existing software on various systems reveals that it has a
generic structure and common modules. The major available modules are:
1. Operating system module. This module provides users with utility and system
command that deal with their accounts and files. Typical functions such as file
manipulations (delete, copy, rename, etc.), managing directories and
subdirectories, using editors, programming, and accounts setups are supported by
the OS module.
2. Graphics module. This module provides users with various functions to perform
geometric modelling and construction, editing and manipulation of existing
geometry, drafting and documentation.
3. Applications module. The creation of a geometric model of an object represents a
means and not a goal to engineers. Their ultimate goal is to be able to utilise the

19
model for design and manufacturing purposes. This module varies from one
software to the other. However, there are common applications shared by most
packages. Mechanical applications include mass property calculations, assembly
analysis, tolerance analysis, sheet metal design, finite element modelling and
analysis, mechanisms analysis, animation techniques, and simulation and analysis
of plastic injection moulding. Manufacturing applications include process
planning, NC, CIM, robot simulation, and group technology.
4. Programming module. Typically, this module provides users with system-
dependent and standard programming languages. The former is provided for
graphics purposes while the latter is used for analysis and calculations.
5. Communications module. This module is crucial if integration is to be achieved
between the CAD/CAM system, other computer systems, and manufacturing
facilities. It is common to network the system to transfer the CAD database of a
model for analysis purposes or to transfer its CAM database to the shop floor for
production. This module also serves the purpose of translating databases between
CAD/CAM systems using graphics standards such as IGES.

2.4 Modelling and viewing

Geometric modelling and simulation via computers have reached a level to replace
the real-life prototypes or tests. A geometric model is defined as the complete
representation of an object that includes both its graphical and nongraphical
information. Objects can be classified into three types from a geometric construction
point of view. These are two-and-a-half dimensional, three dimensional, or a
combination of both (Fig. 2.5). Two-and-a-half-dimensional objects are classified to
have uniform cross sections and thicknesses in directions perpendicular to the planes
of the cross sections. Constructing such an object via wireframe modelling requires
only constructing the proper entities (faces), projecting them along the proper
directions by the thickness value, and then creating the proper edges along these
directions. This is a much more efficient way of construction than calculating and

20
Two-and-a-half dimentional

Two-and-a-half dimentional

Three dimentional

Figure 2.5. Two-and-a-Half-Dimentional and Three-Dimentional Geometric Models

inputting the coordinates of all the corner points of the model. The construction of a
true three-dimensional object requires the coordinate input of key points and then
connecting them with the proper types of entities.

While model construction involves the creation of the model database, viewing
affects the way the model is displayed on the screen. Modelling and viewing are
interrelated but yet display techniques and approximations do not affect the object
representation inside the database. Views are defined by the various angles from
which a model can be observed. Essentially, the observer changes position in the

21
MCS, while the model maintains its original orientation. An infinite number of views
can be defined for a model. In Pro/Engineer, all models appear on the screen in
default view orientation when they are first created, and whenever they are retrieved.
The default view orientation can be set to: isometric or trimetric. The system will
default to a trimetric view if no other orientation is set. While working in Pro/E the
default view orientation can be changed using options under the ENVIRONMENT
menu (see Fig. 2.4).

22

You might also like