OPHIR
DFA evaluation within a CAD environment.

The initial aim of the Ophir project was the development of
techniques to facilitate DFA evaluation within a CAD environment.
Therefore the research was broken down into four main areas. These
were as follows:
- Development of techniques for optimum assembly sequence
generation
- Further development of the manual DFA evaluation methodology
for a software implementation
- Development of geometric reasoning techniques to automatically
extract data from the CAD model
- Development of expert systems to faciltate decision making with
respect to definition of product structure and sequence
generation
A software implementation was developed in order to explore
fully the potential of the research, to test ideas and to
demonstrate the results of the research to industrial collaborators
and a wider academic and industrial audience.
Software Demonstrator
The demonstrator is comprised of three
main windows: a traditional CAD window, the product strucure window
and the assembly sequence window. Within this environment expert
systems and geometric reasoning algorithms are automatically
invoked to validate and evaluate the design as the product is
developed. DFA analyses are performed using a combination of data
input from the designer and data extracted from the CAD model.
Design activity is not restricted to any particular window at any
particular time so that product development may proceed in a
piecemeal manner as the design becomes more concrete.

Figure 1 - The Ophir
Demonstrator
Development Environment
The Ophir demonstrator was developed
using C++ and the MFC library around an ACIS solid modelling
kernel. A "four-layer model" was used to store data about the
product at four different levels. Each layer of the product model
depends on, has access to or includes all data in the lower layers.
They are labelled as follows:
- Component Model - Solid model together with attribute
information such as surface finish, etc.
- Assembly Model - Position and orientation information
for each component within the assembled product
- Component Interaction Model - Mating faces information
incorporating joining processes, method of assembly
- Assembly Plan - Time sequence information i.e.
sequence of assembly operations including non-assembly
processes
This information was stored in a series of MS Access databases,
to enable testing of the environment via manual data input to the
database. This was necessary since development of interdependent
elements was ongoing simultaneously. For example, geometric
reasoning data required for DFA analyses was not fully developed
prior to implementation of some DFA evaluations and so default
values were provided in the database. In addition, access to
materials and manufacturing process data was also provided in a
series of databases.
Assembly Structure Definition
One of the main benefits gained from the
application of DFA results from systematically reviewing functional
requirements and replacing component clusters with single
integrated pieces. Analysis of numerous DFA case histories
indicates that invariably the success of proposed design solutions
relies on adopting alternative fastening methods, different
materials and/or manufacturing processes. Therefore it is essential
that the designer is able to explicity consider the product
structure in relation to the ease of assembly.
This window enables the user to interactively define and manipulate
the product structure. Thus consideration and documentation of
proposed component and subassembly partitions is achieved. This
allows the exploration of differing levels of parallelism in the
assembly sequence. Thus, the designer recognises the importance of
a suitable assembly structure and by applying heuristics, is
ensuring it is optimised in terms of ease of assemblability.
Sequence Construction
Most automated assembly sequence
generation systems use sophisticated search algorithms, that take
account of geometric constraints to create a collection of feasible
sequences. Heuristics based upon prior knowledge, may then be
imposed by the user to identify the most practical sequence. In
this project, industrial investigations carried out across ten
diverse companies (ranging from automotive to medical equipment)
showed that, by contrast, human planners simultaneously
consider geometric feasibility and 'best practice' to define a good
assembly sequence. Furthermore, the assembly planners consulted
invariably used experience of the product and assembly equipment in
conjunction with geometric data from the CAD models to produce the
best sequence. Therefore, in this project a manual sequence
construction method was maintained, but with advice offered to the
designer based on expert system evaluations.
In practical terms, the components added to the product structure
are stored in a holding bay, prior to being placed in assembly
order in the sequence construction window. This holding bay ensures
that no parts are omitted from the sequence. Given the fact that
all components may not yet be added or created, the user is able to
develop the sequence in a non-sequential manner. Additional pre-
and post-processes such as joining and other assembly operations
are added as required to the sequence. The interface also allows
the user to consider assemblability issues for the subassemblies
defined in the Assembly Structure. The whole sequence or a subset
of the sequence, dealing with a single subassembly can be
considered at any one time and manipulated as appropriate.

Figure 2 - The Assembly Sequence
Window
Sequence Validation
Sequence validation and optimisation
occurs through the satisfaction of geometric ('hard') and process
('soft') constraints. Geometric constraints deal with the geometric
feasibility of the assembly. Conversely, process constraints
constitute suggestions for 'best practice' relating to processes
and materials, and so whilst particular options may be feasible,
they may not be recommended. By definition, a valid assembly
sequence will not violate any geometric constraints and will
satisfy as many of the process constraints as the user feels is
acceptable after consideration of any potential conflicts.
Geometric constraints:
- Consistent geometry - there must be no interference
between parts within the assembly other than where intended for a
particular type of fit.
- Feasible trajectory - there must be no collisions as
each part is brought into contact with the rest of the assembly,
either between parts or between the gripping tools used during the
insertion process.
- Feasible joining processes - each part in the assembly
will be held in place either by surrounding parts or by some
joining process, which must be validated in terms of access for the
tools, required.
- Stability - every part must remain gravitationally and
elastically stable at all times during assembly.
Process Constraints:
- Compatible materials - when different materials are
placed adjacent to one another there will always be a detrimental
reaction of some degree and hence, the assembly must be checked for
incompatible adjacent materials. The application of surface
coatings must also be considered at this point.
- Compatible joining processes - the joining process,
once confirmed as being geometrically feasible, must be appropriate
for the types of materials and other part characteristics.
- Compatible joint characteristics - there are many
types of joint including kinematic, static, clearance and
interference . The form of the joint must be suitable for the
process and material involved.
By ensuring that a design complies with these constraints, it is
possible to ensure creation of a "good" sequence with less errors.
Evaluation of the designer's sequence is provided by the DFA
analysis.
DFA and Sequence Evaluation
Analysis of numerous DFA case histories
indicates that, invariably the success of revised design solutions
relies on an understanding of the capabilities of manufacturing
processes and the adoption of different materials and/or
manufacturing processes. DFA analyses are invoked at the earliest
possible stages of the design process, whether there is CAD data
available or not. Inference from the components attributes,
estimated size and complexity, and default data are used to
approximate early DFA evaluation. As the design develops and more
detail is accessible, so the DFA evaluations become more reliable
and accurate. As a result of the research during this project, DFA
support was categorised in three ways:
- Product Group Support - consideration of product families,
variants and modular design
- Product Structure Support - support for partitioning of
assemblies, part count reduction
- Component Detailed Design Support - consideration for component
manufacture and handling, process capabilities
Geometric reasoning techniques are used to extract data from the
CAD model. This may be for simple analyses, such as volume or size
calculations, where the manufacture of a certain component may
exceed the capabilities of its manufacturing process, or more
complex geometric reasoning where the stability of a stack of parts
may be called into question. A major factor affecting ease of
assembly and component handling times is component symmetry - this
provided the focus of geometric reasoning research during the Ophir
project.
Expert System Support
As detailed data is not always available, any decision making
process during the early design stages, must cope with
indeterminacy. It is here that expert systems incorporating
heuristics and expert knowledge with reasoning ability are best
able to give guidance and suggestions on how to create a product
that is easy to manufacture and assemble. There are many aspects of
this environment which can benefit from expert system support and
the major target of expert system support in the Ophir demonstrator
was the generation of assembly sequences. During the sequence
construction process the, so called, 'Expert Assembler' advises
which part(s) to start with (the Starting Component Advisor) and
which part(s) are appropriate for subsequent insertion to the
assembly (the Next Component Advisor). These recommendations are
made known to the user through the use of different coloured
component hightlights in the assembly sequence 'holding bay'.

Figure 3 - The Holding Bay
The Starting Component Advisor provides suggestions on which
part or parts should not be used as the base component(s). It is
then easy to deduce which part(s) can be used as a starting
component. Based on various attributes, a number of rules have been
extracted from case studies and knowledge engineering exercises
with experts in industry.
The Next Component Advisor highlights the best possible next part
to add to the assembly. It provides suggestions based on component
group information in the assembly structure, the assembly strategy
preferred by designer (such as bottom up, inside out), and some
general rules extracted from case studies and industrial
experts.
Both advisors are transparent to the user and are continually
updated as more information becomes available. The reasoning behind
the advisors is accessible and secondary to the user's decision
making. The advisors are working with incomplete data as only the
designer is aware of data unavailable to the system.
Geometric Reasoning Support
Many aspects of DFA evaluation are
dependent upon the geometric characteristics of the component parts
in terms of manufacturing complexity and handling characteristics.
Many current computer-based implementations of DFA rely on time
consuming and subjective data input from the user. However, this
may be reduced by the automatic extraction of data from the CAD
model, once it is available. In addition, a successful assembly
sequence is dependent upon its geometric feasibility (as defined by
the geometric constraints) and therefore geometric reasoning may
also be used for sequence validation purposes. For instance the
degrees of freedom of a component will be determined by the order
of assembly operations including the defined type and timing of
joining processes. To analyse stability, the centre of gravity of
the component relative to its position and orientation within the
assembly must be evaluated. Most solid modellers are able to
calculate simple properties such as volume and other mass
properties but many other required aspects of the geometry are
difficult to infer. For example the determination of mating faces,
which affect the degrees of freedom, requires a complex
algorithm.
One geometric characteristic which affects both part handling and
ease of assembly is component symmetry. DFA recommends that a part
should be either completely symmetric or distinctly asymmetric,
parallel and perpendicular to its insertion direction, to minimise
orientation times and avoid incorrect assembly. During the Ophir
project, a geometric reasoning procedure was developed for
detection of symmetry in a manner appropriate for identifying both
exact and partial symmetries of a component from its b-rep solid
model.
The methodology involves searching all the faces of an object
looking for both "internal symmetry" and matching pairs. A naive
implementation would be computationally very expensive involving
many pairwise face comparisons, but some additional heuristics can
be employed which tame this and also lead to some other desirable
properties.
The published
procedure uses face properties (including area, surface
type and number of bounding edges) to quickly cut down the number
of potential face matches and to allow a ranking / grouping which
can be used to further reduce the number of face-face comparisons.
The method actually conceived uses the loops of edges (outer and
inner boundaries of faces) as the basic element for comparisons.
This has the useful effect of, for example, allowing matching
between same shape faces (i.e. similar outer loop) with different
internal detail (inner loops). This led directly to consideration
of how the concept of "inner" and "outer" loops can be generalised
to deal with faces on curved surfaces (cylinder, sphere,
torus).

Figure 4 - Definition of Loop Type
Figure 5 - Symmetry Detection of Camera Model
This technique allows sufficiently rapid detection of symmetry
to be practically useful and, additionally and quite importantly,
the detection of partial symmetry : the symmetric elements and
additional asymmetric features may be identified and considered
independently. This is a valuable asset in extending the work to
deal with other related functions, such as definition of insertion
trajectories and evaluation of shape complexity.
OPHIR Project Site: If you want to visit the old ophir website,
please click here