• Tidak ada hasil yang ditemukan

3.4 Development of the Setup Planning Expert System

3.4.2 Knowledge-base

3.4.2.1 Generation of Machining Precedence Constraints

of value 0.1 mm and 0.2 mm with features 7 and 12 respectively. There are two ways by which the above input data on features and machining operations can be entered into the developed expert system. It can be saved as data files with the extension .clp and loaded from the file into the expert system environment at the time of execution. Alternatively, it may be also directly entered manually by typing through a user interface.

3.4.1.3 Mathematical Functions and Other Required Information

In addition to feature and machining operation information, database contains different mathematical functions to perform mathematical calculations, e.g.

functions to compare the tightest tolerance relations, functions to determine the largest area face. Moreover, information on machine tools and cutting tools to machine the features present in a part, material properties of the workpiece material, locating and clamping element materials are to be given as input to the expert system through the database.

two features F1 and F2, denoted as F1→F2, implies that F2 cannot be machined until the machining of F1 is complete. Different precedence relations are obtained due to area/volume feature interactions, tolerance relations, feature accessibility, tool interaction, fixturing interaction, datum/reference/locating requirements, and constraint of good manufacturing practice. Figure 3.3 shows some of the precedence relations collected from the literature.

Figure 3.3. (a) depicts a precedence constraint arising due to fixturing interaction. Drilling the hole should precede the chamfer as fixturing will be difficult for drilling after chamfering. There will be less contact area for clamping the vise jaw if chamfering is done first. For similar reason, the slot precedes the boss in Figure 3.3. (h). An accessibility/tool interaction constraint is shown in Figure 3.3.

(b) where positioning the drilling tool will be difficult if chamfering is done first.

Figure 3.3. (c) depicts the precedence constraint arising due to tolerance relation with the datum feature. The bottom face has tolerance relation with the datum face A and face A is to be machined first. Figure 3.3. (d) shows two nested pockets having volumetric interaction, i.e. common volume to be removed. The smaller pocket is nested in the bigger pocket and the machining of the bigger/nesting pocket precedes the smaller/nested pocket. This type of precedence relation is called parent-child relation. The parent/nesting feature is to be machined prior to the child/nested feature. In Figure 3.3. (e), the two pockets have only area interaction in the form of a common face. The 4-side base pocket is opening up to another 3-side pocket and the convention is to machine the base feature first. Figure 3.3. (f) is a case of no precedence; any of the two slots can be machined first. Figures 3.3. (g) and (j) show the precedence of machining the reference features first. In (g), the hole is referenced with respect to the slot and in (j), the step is referenced with respect to the vertical face and reference features are to be machined first. Figure 3.3. (i) shows good manufacturing practice of drilling the smaller depth hole prior to higher depth hole. Figures 3.3. (k) and (l) show the precedence of machining the adjacent faces first and then chamfering/drilling.

(a) Drill hole →Chamfer (b) Drill hole →Chamfer (c) datum A→Bottom face

(d) Nesting pocket (e) Base 4-side pocket (f) Slot1→Slot2 or →Nested pocket → 3-side pocket Slot2→Slot1

(g) Slot→Drill hole (h) Slot→Boss (i) Hole1→Hole2

(j) Ref face→Step (k) Faces 1 and 2→Chamfer (l) Face→Drill hole Figure 3.3. Different precedence relations collected from the literature

Figs.(a)–(e) presentedwith permission from Liu and Wang, Copyright[2007] Elsevier, part of Fig.(f) from Pal et al., Copyright[2005] Elsevier, Figs.(g)–.(i) from Zhang et al., Copyright[1995] Elsevier

These feature precedence relations are derived from manufacturing practice and there may be uncertainty about the validity of some assumed relations. The optimal machining sequence depends to a large extent on precedence relations. The validity of the precedence relations are to be reviewed keeping in mind the other related factors such as machining cost and time, work material properties, the required surface finish, machining passes (single or multi), etc. In Chapter 4, detail of an approach to deal with uncertainty in the precedence relations are discussed.

In the proposed approach for setup planning, a set of rules have been developed to automatically identify the various precedence relations between the features and the machining operations needed to produce them. The following are the examples of some rules that have been included as a part of the knowledge-base for determining the precedence relations. A total of 16 rules have been developed for generating precedence relations.

A sample rule for generating tool interaction constraint may be written using the Defrule construct in CLIPS as follows:

(Defrule ::precedence_constraint “precedence based on drilling a hole prior to the chamfer”

(feature(number ?a)(name HOLE)

(type INTERNAL)(subtype SECONDARY) (secondary_to ?b) (adjacent_features ?b) (adjacent_features_names CHAMFER))

=>(assert(feature_precedence ?a ?b)))

The above rule states that if there is a feature a of name hole which is to be drilled on a chamfered face b, then due to tool interaction constraint, the drilling of hole a is to be done prior to the chamfer b. Another rule for generating parent-child precedence constraint is given below. It states that if there is an internal feature a which is nested in another feature b, then due to parent-child precedence constraint, the machining of feature b is to be done prior to the machining of a.

(Defrule::precedence_constraint "precedence based on machining of nesting features prior to the nested features"

(feature (number ?a)(type INTERNAL)(subtype NESTED )(nested_in ?b))

=>(assert(feature_precedence ?b ?a)))

A precedence rule for machining the two steps and an intermediate slot as shown in Figure 3.4. is given hereunder. It states that if there is an external slot which is a secondary feature to the two steps as shown in Figure 3.4., machining of the steps are to be done prior to the slot between them.

(Defrule::precedence_constraint "precedence based on machining of adjacent external steps prior to that of the slot between them"

(feature (number ?a)(name SLOT)(type EXTERNAL)(subtype SECONDARY) (adjacent_features ?b ?c)(adjacent_features_names STEP STEP))

=>(assert(feature_precedence ?b ?a)) (assert(feature_precedence ?c ?a)))

Figure 3.4. Two steps and a slot