墻板類零件CAPP中工序尺寸的計算
工序尺寸計算是CAPP系統(tǒng)中一項重要的功能。然而,在目前實用的CAPP系統(tǒng)中,這一功能不夠完善。在許多相關(guān)文獻中可以發(fā)現(xiàn),工序尺寸計算的成熟算法主要集中于回轉(zhuǎn)體零件的軸向工序尺寸,如基于尺寸聯(lián)系矩陣的計算方法、基于樹形圖的計算方法等,而對空間三維定位工序尺寸的計算研究較少。在墻板類零件CAPP系統(tǒng)中,筆者將工序尺寸分為形狀工序尺寸和定位工序尺寸,并在此基礎(chǔ)上提出了一種基于一維線性鏈表的形狀工序尺寸計算方法和基于二維非線性鏈表的定位工序尺寸計算方法,實現(xiàn)了墻板類零件CAPP中的工序尺寸計算。
1 基于一維線性鏈表的形狀工序尺寸的計算
1.1 數(shù)據(jù)結(jié)構(gòu)
為使數(shù)據(jù)結(jié)構(gòu)統(tǒng)一,本CAPP系統(tǒng)對形狀工序尺寸和定位工序尺寸的表達采用了同一種數(shù)據(jù)結(jié)構(gòu)。其C語言結(jié)構(gòu)形式如下:
struct procdimt
/*工序尺寸數(shù)據(jù)結(jié)構(gòu)名*/
{
featypeenum FeaTypeEnum;
/* 特征類型 */
char FeaID[5];
/* 加工特征 */
double ProcBefDimValue;
/* 工序前尺寸 */
∶ ∶
struct procdimt * NFea;
/* 工序尺后續(xù)鏈表指針*/
struct Procdimt *LFea;
/*工序尺寸分支鏈表指針*/
struct Procdimt * BFea;
/* 工序尺寸前續(xù)鏈表指針*/
}
1.2 形狀工序尺寸計算公式
本系統(tǒng)是按照人體原則,從成品到毛坯逆向計算形狀尺寸。按照形狀尺寸是包容和被包容兩種類型,計算公式分別為:
如果是包容尺寸,則
工序前尺寸=工序后尺寸-加工余量
否則
工序前尺寸=工序后尺寸+加工余量
1.3 形狀工序尺寸計算邏輯
(1)總體初始化形狀工序尺寸鏈表
①從后往前讀入排序后的工序鏈表,取出工序號、加工方法、加工特征和特征類型,并生成形狀工序尺寸初始化鏈表。
②按照加工方法和加工特征來搜索工序加工余量,并填入形狀工序尺寸初始化鏈表的對應(yīng)項中。
③取出特征信息中的形狀尺寸、上下偏差,作為完成最后一道工序后該特征的形狀工序尺寸,并將工序后尺寸標識號置為True;同時將該特征其余加工方法所對應(yīng)的形狀工序尺寸和相應(yīng)的工序尺寸標識分別置初值-999和False。
(2)讀入經(jīng)過初始化的形狀工序尺寸鏈表。
(3)計算工序尺寸 如果完成工序后尺寸的計算,而且工序前尺寸未計算,按照特征類型所對應(yīng)的包容尺寸類型,來選擇式(1)或式(2)計算工序前尺寸。
(4)根據(jù)工序的加工精度值和精度代碼計算工序尺寸的上下偏差。
(5)用計算得出的工序前尺寸,局部初始化該特征上道工序的工序后尺寸。
(6)IF到了鏈表尾THEN結(jié)束 ELSE指向鏈表下一結(jié)點并返回(3)。
2 基于二維非線性鏈表的定位工序尺寸的計算
2.1 定位尺寸的分類
加工具有對稱中心的特征,不影響定位尺寸的變化。因此在本CAPP系統(tǒng)中,不對該情況進行考慮,而只考慮與面特征相關(guān)聯(lián)的定位尺寸的計算。與定位尺寸關(guān)聯(lián)的面特征數(shù)目不定,所以必須按關(guān)聯(lián)面特征的最大數(shù)目設(shè)計定位尺寸數(shù)據(jù)結(jié)構(gòu)。而在墻板零件的實際標注中,關(guān)聯(lián)的面特征數(shù)目介于2~4之間。
如圖1中所示:f1~f8為墻板中的面特征。定位尺寸L1~L4按關(guān)聯(lián)特征數(shù)目可以分為三類:
(1)與2個面特征相關(guān)聯(lián)的為L4;L4關(guān)聯(lián)面特征為f2和f8。
(2)與3個面特征相關(guān)聯(lián)的為L1,L2;L1關(guān)聯(lián)面特征為f1、f2和f3; L2關(guān)聯(lián)面特征為f2、f3和f4。
(3)與4個面特征相關(guān)聯(lián)的為L3;L3關(guān)聯(lián)面特征為f4、f5、f6和f7。
圖1 定位尺寸分類示意圖
由于實際標注中考慮到矢量方向性,因此在向數(shù)據(jù)結(jié)構(gòu)中填寫時必須按照表1規(guī)則進行(注:表中的空項不允許填寫數(shù)據(jù))。所以本系統(tǒng)中,關(guān)聯(lián)方式被細分為四類(附表)。
關(guān)聯(lián)方式列表
2.2 定位尺寸的計算公式
按照定位尺寸四種實際存儲方式分別定義計算公式:
(1)附表中的類型d,定位尺寸有四個關(guān)聯(lián)面特征。如圖2所示(最通用的情況)。其中:F1、F2、F3、F4為關(guān)聯(lián)面特征;S1~S4分別對應(yīng)為F1~F4的面方向矢量;A為余量矢量;向量L、S1、S2、S3、S4、A均為單位矢量,余量大小為ΔA(ΔA>0)。
圖2 定位尺寸向量示意圖
按照加工特征為關(guān)聯(lián)特征F1、F2以及F3、F4兩種類型選擇不同的計算邏輯:
類型1 對于加工特征為關(guān)聯(lián)面特征F3、F4時(以圖中加工面F4時的工序尺寸計算為例):
①計算出余量矢量在相臨面F3上的投影
A1=A-S3(A.S3)
②計算工序尺寸矢量在面F3上的投影
L1=L-S3(L.S3)
③判斷上述方向矢量的方向,來確定工序尺寸的增或減
IF 向量內(nèi)積(L1.A1)<0 THEN
工序尺寸為減
IF 向量內(nèi)積(L1.A1)=0 THEN
工序尺寸不變
IF 向量內(nèi)積(L1.A1)>0 THEN
工序尺寸為加
④根據(jù)投影關(guān)系計算實際值
余量ΔA對應(yīng)的工序尺寸的ΔL值為
⑤根據(jù)③中計算確定的符號來計算工序尺寸
L=L±ΔL
類型2 加工特征為關(guān)聯(lián)面特征F1、F2時,計算步驟(1~4)不變,而步驟⑤改為L=LμΔL。
(2)對于附表中的類型a、b、c三種情況,可以看成類型d的特殊情況來分別對待。當(dāng)定位尺寸只與一個面特征相關(guān)聯(lián)時,系統(tǒng)默認面特征的方向矢量和定位尺寸方向矢量在同一直線上。根據(jù)該面特征為關(guān)聯(lián)特征F1或F3,定位尺寸的計算公式分別為:
①為關(guān)聯(lián)特征F1時 IF余量的方向矢量A和定位尺寸的方向矢量L一致。
THEN L=L+ΔΑ
ELSE L=L-ΔA
②為關(guān)聯(lián)特征F3時 IF余量的方向矢量A和定位尺寸的方向矢量L一致
THEN L=L-ΔA
ELSE L=L+ΔA
2.3 定位尺寸計算邏輯
(1)總體初始化形狀工序尺寸鏈表
①從后往前讀入排序后的工序鏈表,取出工序號、加工方法、加工特征和特征類型,并生成定位工序尺寸初始化主鏈表。
②按照加工方法和加工特征來搜索工序加工余量,并在形狀工序尺寸初始化鏈表的對應(yīng)項中填入。
③讀入線性尺寸特征,按照線性尺寸的關(guān)聯(lián)特征與定位工序尺寸主鏈表的加工特征相同與否,將線性尺寸內(nèi)容連接于主鏈表的分支鏈表中。具體邏輯為:
IF 該定位尺寸第一次被引用
THEN 將定位尺寸特征的特征號、尺寸值、上下偏差連接于分支鏈表中AND將工序后尺寸標志置為True。
ELSE只將定位尺寸特征的特征號連接于分支鏈表中AND將工序后尺寸標志置為False。
④將所有工序前尺寸標志置為False。
(2)讀入經(jīng)過初始化的定位工序尺寸鏈表。
(3)計算與主鏈表結(jié)點相關(guān)的分支鏈表中所有定位工序尺寸。
如果工序后尺寸計算完成,而且工序前尺寸未計算,則根據(jù)加工特征是關(guān)聯(lián)特征a、b、c、d四種類型中的具體類型選擇對應(yīng)公式計算工序前尺寸。
(4)根據(jù)工序的加工精度值和精度代碼計算工序尺寸的上下偏差。
(5)用計算得出的工序前尺寸局部初始化該特征上道工序的工序后尺寸。
(6)IF到了鏈表尾THEN結(jié)束。
ELSE指向鏈表下一結(jié)點并返回(3)。
從本質(zhì)上而言,定位尺寸計算邏輯和形狀尺寸計算邏輯相似,只是定位尺寸的計算和初始化是針對一個工序尺寸分支鏈表,而不是形狀尺寸鏈中的單個結(jié)點。
3 結(jié)論
筆者將墻板類CAPP中工序尺寸劃分為形狀尺寸和定位尺寸,建立了相應(yīng)的數(shù)據(jù)結(jié)構(gòu)、計算邏輯并開發(fā)了創(chuàng)成式CAPP中的工序尺寸計算模塊,為工序細化、工序圖的繪制及CAM提供了尺寸依據(jù)。
文章版權(quán)歸西部工控xbgk所有,未經(jīng)許可不得轉(zhuǎn)載。