PROE教程-shell(薄殼)的原理和方法
論壇逊矫娴慕滩牟欢啵?救艘郧八鸭?诵┻@方面的資料,共享一下本文通过实例分析的方法剖析在实际的造型中所遇到的不能使用ProEngineer Shell指令来进行薄壳的原因,根据不同的原因提出对应的解决方法。
Shell(薄壳)步骤是产品设计中重要一环,利用Shell特征可以给外观生成一个料厚。但是特征并不能保证一定能成功,一个失败的shell特征往往会给后续生成料厚增加许多麻烦。所以掌握的原理和方法对于结构设计者来说是非常必要的。
一个等料厚的shell过程实际就是一个外观面组的offset过程(当然shell也可以局部不等料厚)。所以为保证shell我们就要在构面的过程中注意曲面的质量。尽量减少不能offset料厚的面。但是也有很多情况是因为外观要求无法避免的,这时我们就要根据具体的情况来采取不同的对策,要采取正确的对策首先要了解原因。影响shell特征失败的原因不外乎下面几种情况:
1. 单个曲面最小曲率过大
要shell的外观面组中假如有某个单面本身曲率过大,换句话说就是曲面最小半径太小,比要shell的料厚小的时候就会造成shell的失败。注意的是这里的曲率和高速曲率不同,这里的曲率是曲面的最大曲率(WildFire中的分析)。分析方法在WildFire中可以通过曲面最大最小曲率分析来得到最大曲率,其倒数就是最小半径,也就是能offset的最大值。而在proe2001中则是用半径分析来得到最小半径。如下图所示: hqgn4^1cj
http://www.machine8.net/upload/picture/2006-7/12/0671220274134185.jpg y7R?_+ m
从上图的分析中可以得到曲面的最小半径为1.237,也就是说最大能shell1.237的平均料厚。假如现在的模型要shell 1.5料厚的话就会造成失败。那我们要采取什么样的措施才能让模型最终生成1.5mm的料厚呢?解决方法有两种,但是都有个前提,得到的料厚不再是等料厚的了,这是因为本身曲面曲率的原因,模型已经不可能可以shell等料厚了,我们需要对这个部分作特殊处理
方法一:局部薄料法
对局部过高曲率的曲面我们可以在Shell过程中用Spec thickness(指定料厚法)指定这些地方一个较为小一点的料厚,本例中就设为1.2,其他地方1.5mm。这样就可以达到成功shell的目的,虽然不是绝对的平均料厚,但是在大部分情况下局部料厚稍薄也是可以接受的。
http://www.machine8.net/upload/picture/2006-7/12/0671220274139652.jpg
生成的效果如下图所示。 ) W}-X-E
http://www.machine8.net/upload/picture/2006-7/12/0671220274184228.jpg `}6p$AJ5
R173/
方法二:局部近似料厚法。
这种方法就是把高曲率的局部曲面移到Shell特征之后进行加料,并用auto fit的方法把曲面向内offset料厚并使用该面进行减料。在需要时在减料前延伸内曲面。
http://www.machine8.net/upload/picture/2006-7/12/0671220274156438.jpg
最后的效果 xb6F:i fw
http://www.machine8.net/upload/picture/2006-7/12/06712202741788.jpg %k"aK 2. 相邻两个曲面分别offset料厚后无法相交
这种情况有两种发生的可能,一种是两个面offset后延伸也无法相交,如下图所示 #IbWuqRP_
http://www.machine8.net/upload/picture/2006-7/12/0671220274125165.jpg http://www.machine8.net/upload/picture/2006-7/12/0671220274147140.jpg E
另一种情况就是两个面或其中一个面offset后无法延伸导致无法相交。 :Lk\=Yld
http://www.machine8.net/upload/picture/2006-7/12/0671220274187444.jpg http://www.machine8.net/upload/picture/2006-7/12/0671220274178703.jpg 解决办法:人为的添加一个小圆角使得shell后这条交边可以用一个圆角代替,从而避开因无法相交导致的shell失败。如下示意图: '49 Qf
http://www.machine8.net/upload/picture/2006-7/12/0671220274156410.jpg http://www.machine8.net/upload/picture/2006-7/12/067122027421918.jpg :4X'C&V#vn
当然也可以采取和1中的shell后加料再减料的方法来实现。注意的是这时offset后的面因为是无法用自身面延伸的,所以offset后的面不够长来减料的话,考虑用相切面延伸或到面延伸的方法来加长以便能成功减料。 kn*t<
3 shell结果造成几何退化所谓的几何退化就是原本外观存在的几何图元(比如边界段),在Shell之后退化消失。这种情况也往往造成shell特征失败。我们用一个例子来看一下退化的表示形式:
u~S%q0{r
eFmDRVbd http://www.machine8.net/upload/picture/2006-7/12/067122027428978.jpg http://www.machine8.net/upload/picture/2006-7/12/0671220274211095.jpg CyE2NoN6B
解决办法:避免退化的产生,或者shell+取代法。
最好的办法当然是重定义或稍作修改几何以避免退化的产生。但在外观需求的要求下可以用Shell后取代法来实现。具体操作方法如下。
Shell并指定会导致退化的面的特定料厚,而这个料厚刚好是退化的临界点,本例中就是线段变为点。如左下下图所示,本例种为指定料厚为1.42时发生。然后shell成功后再用料厚偏距刚才指定料厚的面生成一个面。用新面取代shell产生的对应面就行了。Wildfire中的话可以直接用offset加厚到料厚 =of
http://www.machine8.net/upload/picture/2006-7/12/0671220274292278.jpg http://www.machine8.net/upload/picture/2006-7/12/0671220274245172.jpg /k
[ 本帖最后由 wanihe 于 2007-1-30 13:43 编辑 ] 4 shell结果造成自相交所谓自相交,就是一个特征内原来并不相交的几何在特征生成的过程中在某处发生了相交,这个就叫自相交,如下图所示。土黄色的面和深蓝色的面在外观上并不相交,但是如果进行Shell处理,那么生成的几何它忙将会变成相交(原来柱面退化消失)。这个就是自相交,度于规则的面,比如拉伸面,proe有时会正确处理,但是在大多数情况下自相交都会引起Shell的失败。
:I#`/R&X http://www.machine8.net/upload/picture/2006-7/12/0671220274250146.jpg http://www.machine8.net/upload/picture/2006-7/12/0671220274245765.jpg 如果我们用线的offset来说明道理的话,上面的情况就类似下面的线offset情况。如左下图,所示的两条线段并不相交,但是在offset 2.0后(相当于外观面shell 2.0mm料厚)就会发线原来中间连接的直线段就会退化消失,而原来不相交的两段线就会变得相交从而引起自相交失败。 +aRG7zhttp://www.machine8.net/upload/picture/2006-7/12/0671220274272708.jpg http://www.machine8.net/upload/picture/2006-7/12/067122027435513.jpg 明白了道理,再来解决就比较简单了,在无法避免造成这中自相交的情况下,我们可以使用局部厚料法来解决这个问题。就如上面的线,假设我们故意把水平线offset值加大,那么它和弧的交点将右移并在竖直offset线的右边,这样就变成了竖直线重新变成了两者之间的连线。从而避免了自相交。回到实体外观的情况下就相当于局部的加厚料位,如下两图所示。 m =,}i ? http://www.machine8.net/upload/picture/2006-7/12/0671220274316263.jpg http://www.machine8.net/upload/picture/2006-7/12/0671220274328972.jpg TGx75~W
[ 本帖最后由 wanihe 于 2007-1-30 13:43 编辑 ] 5. shell结果产生临界几何状态在有的情况下,实体外观并没有上面的问题,并且从理论上可以shell的情况下进行shell却导致失败。这时就可以考虑一下是否是因为临界几何所产生的问题。所谓的临界几何就是几何中的相切位置,短小边等等发生临界转变的几何。由于精度系统的影响,这种情况有时会产生一些不可预料的错误。遇到这种情况就要考虑提高模型的精度了。
下面用一个例子来详细说明shell过程 ,/o8 >g
http://www.machine8.net/upload/picture/2006-7/12/0671220274331204.jpg #.~_t^^{=
首先,我们使用shell指令。先试试能否直接Shell,不能我们也可以获得一些有用的信息。毫不意外,我们的shell失败,但是系统也给我们提供了一个有用的信息,图示的曲面曲率过大。 6_E:1.#t8
http://www.machine8.net/upload/picture/2006-7/12/0671220274312046.jpg[siz
退出shell指令分析一下曲面的半径,我们可以发现它的最小半径只有0.4左右,当然不能shell 1.5mm的料厚了。 ho+{,$c{=p
http://www.machine8.net/upload/picture/2006-7/12/0671220274342668.jpg o* f7'T"x
对于本身曲率过高的曲面我们在shell的过程中肯定是要去除的。关键是如何去除才能让我们的后处理更简单。在这里我们根据这个模型的特殊性采取了切除的方法。如下图,直接减料去除该面。当然在切除之前我们要先copy这个面出来以备后用。[siz
http://www.machine8.net/upload/picture/2006-7/12/0671220274325583.jpg <&f|!=66
然后我们再用shell来看看,现在我们就会看到如下图的失败提示,系统提示我们这三个地方有自相交现象出现。 )'6)T(
http://www.machine8.net/upload/picture/2006-7/12/0671220274346724.jpg 7
[ 本帖最后由 wanihe 于 2007-1-30 13:44 编辑 ] 我们退出shell,再来研究一下这几个地方,首先看侧边的圆弧部分。我们发现除了自相交外还会有不能延伸相交的现象(想像一下直线和圆弧相交offset的情形就明白了)。所以我们可以尝试添加一个小圆角给它。 Y!AQ%-c
http://www.machine8.net/upload/picture/2006-7/12/0671220274410684.jpg {(k.o'F-
而对于顶部的凹陷,可以看到是一个典型会发生自相交的情况,根据上面分析的方法,我们可以在shell的时候用局部厚料的方法来避免。 Lg1>yN7
http://www.machine8.net/upload/picture/2006-7/12/0671220274454945.jpg ;>j'g0
根据上面的分析,我们用添加小圆角和局部的厚料法成功的对这个模型Shell。如下图 =`C K K}
http://www.machine8.net/upload/picture/2006-7/12/0671220274454950.jpg &?[ONS
然后进行必要的取代和加料恢复外观模型到原来的样子,全过程大功告成。虽然这过程多了一些辅助步骤,但相对于手工加厚料的方法已经方便和简洁多了。 A+D(#D;A
http://www.machine8.net/upload/picture/2006-7/12/0671220274416665.jpg 02Fj2*~GA
[ 本帖最后由 wanihe 于 2007-1-30 13:41 编辑 ] 尽管shell成功是我们最好目的,但是在很多情况下并不是那么好处理。尤其是本身曲面曲率太高的面比较多的模型外观,直接用Shell难度相当大。这时候我们就可以考虑用offset面减料的方法。具体的流程如下
1. 分析模型的曲面最小半径,把小于要shell料厚的曲面排除出去
2. 分析余下的曲面所组成的面组是否能成功offset料厚,对于造成失败的地方是否有解决办法
3. 开始逐个copy本身能offset的面组成面组并使用offset特征。当offset失败后还原添加必要的圆角或其它处理后再接着添加。成功则往下选择,失败则还原并把该曲面排除。
4. 重复3的过程直到所有能一起offset的曲面都copy到一个面组中去并offset。
5. 对剩下的曲面采取auto fit的方法来offset或重新构造内表面。
6. 合并两种方法生成的曲面直到生成一个完整的可以用来减料的内表面面组
7. 使用内表面面组减料。流程完成。 號貼自己頂!! 多谢斑竹!顶起来。 真仔細的分析啦~
妳實在太利害了!!
页:
[1]
2