|
隨著科學技術的飛速發展,通信產品市場競爭的加劇,各大電信運營商對通信產品的外觀、質量等提出了更高、更嚴的要求。不但要求外形美、質量高,而且對產品研發周期的要求也越來越短。為了達到上述要求,企業只有采用先進的設計制造技術,運用科學的管理手段,才能在激烈的市場競爭中立于不敗之地。筆者公司某事業部工藝結構部從2002年4月開始,在部門內推廣使用三維實體設計工具——Pro/ENGINEER,并先后應用該軟件對移動定位終端系統、告警箱、參數化標準插箱和各種機柜等通信產品的結構進行設計和開發,取得了不小的成績。下面以參數化標準插箱的設計、開發為例,就Pro/ENGINEER軟件在結構設計中的應用作簡要探討。1 設計需求
. L: b$ p" u, k; @1 E* j- x9 z(1)行參數化標準插箱設計的目的是為了極大提高后續設計者的工作效率。( T8 D/ A& e1 e" n+ l
(2)插箱設計尺寸要求為標準的19'和24'。
+ ~& X2 O9 F; Y* g0 m' S# {(3)所有零部件的設計要求均按IEC 60297的標準進行。
0 I! Q9 ~9 e# S2 Z(4)要求包括不同橫梁、導軌、側耳和上下網板等在內的所有零部件,相互之間都能夠自由進行替換。6 o9 y" m# ]" w9 K3 S9 m
(5)要求插箱尺寸只能在標準范圍內、按標準系列變換,各安裝尺寸不得隨意改變。
) [: I0 e6 D O* q, e) m+ @, O5 f; H: X(6)設計過程中需要考慮EMC。
+ d( q0 i% s3 n" n. x(7)在BOM表中能夠區分借用與非借用件。- s* t+ m, R" i
2 設計分析3 c- R; j+ |! M3 g
從設計需求中可知,參數化標準插箱的設計,是為了使后續設計者能在較短的時間內,按照IEC 60297的標準完成各種不同類型插箱的設計工作,包括工程圖的繪制,同時避免出錯。在實際的運用過程中,還要求能夠做到橫梁、側耳等的截面形狀可以自由替換,也就是說,不同形狀的橫梁、側耳等在裝配中能夠自由得到選用。. _. C1 ~) L% A
設計中可變的參數主要有:插箱高度、插箱深度、插箱的寬度、插箱所用的槽位數和橫梁根數等,需要考慮EMC、有無上下網板和插箱通風的方式等。
" z, Z7 S8 g. u2 O3 設計思路( \1 r; b$ j& O" k; T7 \
結合軟件本身的特點,擬采用Top-down方式進行設計,用Layout控制零件的選用,在設計過程中穿插使用Family_Table、Relation和Program對整個設計過程進行控制,并用Interchange實現零件的替換。
3 o& e$ r9 V# n+ Y B+ U7 H7 \! z4 設計步驟
# k# t6 H$ i; e( V7 e9 s(1)建立各零部件的Part文件模型,如橫梁、螺母條和側板等。
P& I2 p5 m# K* e$ g! M(2)按照IEC 60297標準,用Family_Table形式控制各種零件的外形尺寸。8 }: s* m6 E4 b$ ` g* E
(3)創建Layout文件,用Layout文件控制多個文件,并使之相互關聯,便于進行參數控制。
6 p3 j0 t! S) O- V' n(4)建立*.asm、*.skeleton文件,在*.asm文件中,主要依靠skeleton控制各零件的裝配關系。 {" A4 u9 L3 W4 U
(5)在*.skeleton文件中寫入各種關系式,對各種相關參數之間的關系進行控制。
, T# `6 C$ Q) q; ~ M4 g(6)在*.asm文件中,修改裝配Program,通過Interchange的使用來實現各零件之間的相互調用。7 H- Z3 K' |' N [$ u4 m1 ]' Z4 u9 y
(7)調試、運行、修改。9 X+ }* Y( G0 u; K
(8)出工程圖,并制作各種模板文件。
9 D1 Q6 ~ {: k# E; y' l5 詳細設計
1 g' L4 |) j6 p2 y5.1 創建Part文件模型
$ {! Y+ h2 f; S! t4 n W 在設計過程中,按照IEC 60297的標準,用Family Table的形式,建立各個零部件的Part文件模型。% v& s P; P% {; f2 ~6 |
5.1.1 前、后橫梁
6 c0 P) @! t2 I( n 對于前、后橫梁來說,需要控制其長度、扳手受力孔的數量、第一條格局線的位置等,而橫梁的具體截面形狀可后續設計,因此在Family Table中控制的參數如圖1所示。其中,d2控制橫梁的長度,d138控制第一條安裝格局線的位置,p141控制扳手受力孔的Pattern數量。# p( U* \0 a. i' h, D4 \
圖1 前、后橫梁控制的參數 5.1.2 側耳- }8 e2 D# K6 K5 @ y$ @
很顯然,對于側耳來說,由于插箱尺寸的改變勢必引起側耳的截面形狀、側耳的高度、安裝孔間距及位置的變化,而這些尺寸的變化受標準的限制,因此在Family Table中需對這些參數進行控制。如圖2所示。其中,d4控制側耳的高度,d1控制側耳寬度方向的截面尺寸,d10、d11、d15則控制側耳安裝面上安裝孔的位置及間距。
% c. f3 \2 ^$ X4 J圖2 側耳控制的參數 5.1.3 側板4 k$ E" U; T7 |( L& Y, F/ ^
對于插箱側板來說,由于受插箱高度(按U的倍數增加,1U=44.45mm)和插箱深度(按60mm的整數倍增加)尺寸的影響,因而在Family Table中由其產生的Instance則比較多。如圖3所示。
" A4 B) F p4 E* b圖3 側板控制的參數 在本例中,主要通過d0控制側板的深度,d2控制側板的高度。( X! j* B& ~8 v, x# q$ ?
采用同樣的方法可以創建其他零件,如中間橫梁、上下網板等的Part文件。在建立Part文件時,為了保證零件特征的關聯性,應在Part文件中加入Relation,以便控制這些特征的相互關系及存在與否!如側耳上安裝孔的特征,部分關系式如下。
, ^3 Y, r+ n, U6 M! TVERSION ) O1 ^8 f' x8 K# v8 ^
REVNUM 861; Z6 d! q9 ?/ b
LISTING FOR GENERIC PART MOUNTING_FLANGE' T! ~! c6 R6 v; c) _
INPUT
7 p7 R- _* U) e+ s ` w, r9 cEND INPUT8 s6 N' Z4 [+ ^- n% M
RELATIONS
2 l3 c( T* n+ w' O) w& tPWEIGHT=MP_MASS("")2 r* V& r* C3 E. r. [( L+ g
New_Name=Lookup_inst("mounting_flange.prt",0,"D1",Mounting_Flange_Width,"D4",H1)
2 P+ M! w$ C B* X8 yD14=D15/2
. d& H3 k/ `7 \& |7 ~- r9 a3 C. gEND RELATIONS
! s& \& A; n# K8 o. r- n/ \ 這部分Relation主要控制:側耳上中間兩個安裝孔的位置關系和通過D1、D4和H1的數值選用不同的側耳Instance文件名,以備在裝配時進行文件的調用。1 r% S5 k# u8 h" c$ s% h5 N7 F
IF D4>260" F! z9 [( k, a1 m5 m/ o
ADD FEATURE (initial number 7)
* h! T6 h+ O. ^, H1 v5 t3 H3 J& k INTERNAL FEATURE ID 1612 _* d1 ?1 F8 u4 e3 x
PARENTS = 5(#3) 39(#5)
8 C7 |+ z, I# a/ h" @3 O CUT: Extrude
* a* K* Q. m3 R/ ]- H NO. ELEMENT NAME INFO STATUS
2 ^( f" k& X$ e9 O) d- M 1 Attributes One Side Defined2 r5 I' ^' H3 N; |/ n% d
2 Section Sk. plane - Surface of feat #5 (PROTRUSION) Defined% k, A4 k6 `4 y( C
3 MaterialSide Inside section Defined
; N' e; B( ?! _ 4 Direction Defined
1 k% r) D$ v9 G" Z 5 Depth Through All Defined$ B2 F8 P& x# _. Z
SECTION NAME = S2D0001 9 q/ G, }2 U$ u- Q1 }) Z+ K. F( X
FEATURE IS IN LAYER(S) :+ Y! b: o' W- a0 Z
02___PRT_ALL_AXES - OPERATION = SHOWN9 ?) _* o1 n8 ^ w+ v
20_ALL_FEATURES - OPERATION = BLANKED
$ N0 e5 `2 `7 ` 03_ALL_AXES - OPERATION = SHOWN
1 D" [0 k* ?! T% w+ u FEATURE'S DIMENSIONS:$ h& V% E2 ], G+ ^
d14 = 38.1
# c, E8 ^# c( O2 A5 U7 X. g; @5 r d15 = 76.2; g- j, I% O) Y+ I/ G
d16 = 10.38 N* ?& {7 K- N: r* F1 W
d17 = 13.5: N* Q9 a; _6 g! m, A" K
d18 = 10.3- U1 n: H, K6 I8 ?. u T) W. N7 s
d19 = 13.5
% z7 q5 L, m+ z. e. Y! Q, f8 b; i2 L d20 = 3.4R (weak)0 F0 M. n; E9 x! {/ o0 h7 ?
END ADD& D9 t0 v8 G( L+ k: L9 P
END IF; C8 f" j& I3 q4 d; q4 C s4 v3 m' r
這部分關系式主要是控制側耳上中間兩個安裝孔的顯示與否:當D4>260時,顯示安裝孔特征,即側耳上將有4個安裝孔;否則,中間2個孔不顯示(weak),即側耳上只顯示上下2個安裝孔。
, q. L1 v0 G3 q6 ~2 m1 d5.2 各零件的Interchange0 D9 \3 R4 C8 A" o6 K) E
對各零件進行Interchange的目的是為了保證在裝配體中,各零件能夠按照各自的裝配基準互相替換,而不影響整個裝配件的生成。
! _! N/ m- i' a/ O7 P5.3 創建Layout文件
; |& {% {% O* \: l6 {' D Layout文件作為整個設計過程中的核心文件,它控制插箱組件中所有零件自身的特征,如外形尺寸的大小、Feature特征的有無等 ;同時還決定究竟采用哪個零件(Family Table中的Instance)來進行裝配。
$ d. h. g* N3 A 在設計Layout文件時,通常將其分成不同的頁(sheets),每頁側重不同的內容,將所有的可變參數都設置在該文件中,并用簡單的圖形將參數的意義表達出來,以便于后續設計者理解、使用。' g5 @! x# o! A w
在本設計中,Layout文件被分成5個不同的頁面:第一頁用來確定需要設計的插箱種類、高度和深度;第二頁用來確定是否需要使用上下屏蔽網板以及屏蔽網板的類型、開孔情況;第三頁用來確定插箱是否需要增加中間橫梁以及前后橫梁的截面形狀;第四頁用來確定插箱側耳、側板和導軌類型;第五頁用來確定插箱導軌的數量,并計算、檢驗所有數據是否正確,數據輸入是否完成。
+ f5 K% d' }& \ 如圖4所示,為Layout文件的第一頁,主要讓設計者確定插箱的類型、高度、深度。 t7 s/ t4 \2 v3 ~7 k# M) ]
由于Layout文件在整個設計過程中的核心作用,因此在該文件中,應利用關系式和簡短的C程序對設計中所遇到的所有參數、變量加以控制,并對它們之間的關系進行設定。通常在參數化設計中,Layout的設計以及所有參數之間關系式的設定是設計中的重點、難點,是參數化設計成敗的關鍵所在!
( A! g+ c3 ?" \/ m! D' J0 W$ ] 如下所示,兩個循環語句決定了插箱的種類、側耳的寬度以及所選用前梁的類型。
* @9 {2 o* z7 i; ~0 B: Q) ?HP=5.08
& S2 s4 ?7 p4 pU=44.457 P9 |1 q, A% c @: R. [( k' z% i
if Subcrack_Type==1) Y1 X/ x/ S, I+ f+ t, K
mounting_flange_width=27.791 R% V7 S& t% D. q& `, p" S
SUBCRACK_WIDTH=431.8
. B9 v1 {: B1 w# ]7 D6 melse
4 p Q' U" I# R& ]0 T m if Subcrack_Type==2# N! y$ T1 d' ?. M0 ]
mounting_flange_width=25.25
! N; C( D! e* ^ SUBCRACK_WIDTH=563.88
0 P& n) J: q J5 j+ O+ I9 B. _else
7 q6 N1 P ?6 w warning_0="輸入錯誤,請重新輸入" ) h' h0 J* U, `. v" ^
endif
( H$ b8 B# \0 R2 o3 Zendif) {( W7 H( b; Q& K+ v% w
if Front_Horizontal_Type==0) m3 P. c0 P! h( {8 b0 ~
NAME_01=Lookup_Inst("Front_Horizontal_Member.prt",0,"D2",SUBCRACK_WIDTH)! P- J. j4 x* H# j' P
Front_Horizontal_NAME=NAME_01
( k0 i' a9 s! w' N: MENDIF0 c* x: A# K9 q) R6 A
圖4 Layout文件第一頁 5.4 建立Skeleton文件
. s1 ?- q0 |/ e; P* J" d6 c: Z 所謂Skeleton文件,是一種由點、線、面等組成的骨架文件,它可以包含所有零件的特征信息以及裝配體中各零件的裝配信息。在本例的設計中,為滿足設計的需要,Skeleton文件僅僅只包含零件的裝配信息。如圖5所示,在實際的設計過程中,可以增加更多的基準面(Datum Plane),以及曲線(Curve)等,作為輔助的定位基準。. K7 j7 x7 v$ h4 ?0 J
圖5 可增加更多基準面 5.5 建立*.asm文件/ f% p! s* ~) ~
建立好各零件的Part文件、Layout文件以及Skeleton文件后,將各零件以Skeleton上提供的面、線作為參考進行裝配,組成插箱的裝配文件,這樣進行的目的是為了防止零件安裝面意外修改而導致裝配失敗。
$ m. M; P) n- F2 P0 x( P; D* V2 M圖6 插箱尺寸 所有的零件裝配好后,再修改*.asm文件中的Program,確保Layout變化時,*.asm裝配文件能找到具有正確文件名的零件Instance。以下為修改后的Program,注意括號內的文件名參數以及條件語句的使用。' p( V& s3 z4 ~7 f
ADD PART (REAR_HORIZONTAL_NAME)
3 ^; e* T m1 M7 W INTERNAL COMPONENT ID 59
( s1 L1 {" `; ^8 K: x: C% H PARENTS = 43(#1) G4 U9 |( O1 v! @) c+ T1 h
END ADD8 D) F+ x# S" B. f$ s% [! |
IF HORIZONTAL_NUM==01 N9 U i! J* I" G/ y$ g/ U
ELSE
! l: Z: v z5 l$ Y x+ W ADD PART (MIDDLE_HORIZONTAL_NAME)2 V. m% {( E, T: Y% e+ H
INTERNAL COMPONENT ID 495
6 I% N/ `6 R6 a* W, b ?2 O' t PARENTS = 43(#1) * R; e. e, r$ A
END ADD
& x6 `; h3 }, \ p ADD PART (MIDDLE_HORIZONTAL_NAME)/ ]6 w! g5 Q9 e$ ^
INTERNAL COMPONENT ID 500+ }' S4 X4 f' J, Y9 z/ Q, Y* i
END ADD
$ c0 W' R. D* {4 s2 x, M END IF+ h1 q9 Q% {0 H3 L9 R
5.6 運行與調試
4 [' q5 i; @% S! @$ f 依次打開Layout文件、*.asm文件,按照Layout中的提示,輸入參數值。若輸入錯誤,系統將根據輸入的值進行判斷、計算,并給出相應的錯誤提示;若輸入正確,系統將提示進行下一步的輸入,直到最后一頁最后一欄中出現“輸入結束,請修改工程圖,并完成設計”提示時,表明所有的參數輸入符合標準,并能夠生成正確的*.asm、*.drw文件。如圖7所示。
( \2 t. ^6 A. K" B. N圖7 運行、調試 5.7 完成設計6 D' D: f* {) U
在Layout文件中完成所有輸入后,只需重新生成*.asm文件,并修改一些與*.prt文件對應的*.drw文件,生成相應零部件的工程圖,就可以完成所有的設計。" ?. {; a: e9 i7 T0 | t
6 結論
- d9 w2 U) f b9 p y 采用參數化的模板以后,設計者在進行標準插箱的設計時,只需在Layout文件中按照提示進行參數的輸入,就能完成設計,且所有的設計尺寸均按照IEC 60297的標準進行,減少了出錯率,確保了設計尺寸的準確性,較大地提高了設計者的設計效率。" `' K, s. i0 [: @
Pro/ENGINEER軟件由于具有面向對象的單一數據庫和參數化設計的技術特點,因此,尤其適用于具有標準化、系列化特征的通信產品結構設計,如通用模塊、標準插箱和標準機柜的結構設計等,可以極大地提高設計效率,縮短設計、研發周期,降低研發成本。總之,在實際的設計過程中,合理使用Pro/ENGINEER中的各功能模塊,將給我們的設計帶來極大的收獲! |
|