对CAD技术的看法
作者:陈伯雄 来源于:
2003-4-28 16:12:59

  
   以autodesk Mechanical Desktop R4为代表的三维设计平台,已经安装在许多设计师的计算机中,autodesk Inventor R2也开始使用了,三维概念化设计的现场实际应用将指日可待。技术创新的形势提出了新的技术发展要求,因而对设计与三维建模的理解和使用技巧,就是现在需要讨论并明确的基本问题。下面从软件功能和设计需要出发,我想提出一些观点与你讨论。
  
   1.设计与绘图
  
   1.1所有的设计都要画图,是必然,但也很奇怪
   设计总要绘图,是必然,是迫不得已。一个工程师无法记住自己的设计(那怕是较简单)中的全部细节,图形表达就是唯一可能的方法。这些图首先是给设计者自己看:为了记住、研究和配凑设计自己的构思。其次是给别的工程师看,为了互相讨论交流,共同合作完成设计。最后是为了给制造者看,为了将设计意图在制造车间变成实际零件。在设计的全过程中,构思的原始冲动是三维概念,这是毫无疑问的;设计实施之结果是三维实体,这也毫无疑问的;但是,在传统的设计中,在这两者之间的信息传递竟然全是二维的图形表达。这种颠过来在倒过去的现象大家早已习惯了,似乎是天经地义。为了能够比较完满地做到这一点,许多学者还费尽心思,为我们制定了工程图表达标准,在学校里,用200多小时训练学生,忘记人类的三维描述习惯,重新建立二维投影的新表述规则,并在设计过程中进一步强化这些表述技术。放着现成的原始三维构思不用,偏要人为制定二维投影规则,这是不是挺奇怪?
  
   1.2用软件绘图,是必然,但也很奇怪
   在CAD技术处在幼稚阶段的昨天,由于三维造型能力很差,不足以表达大部分设计构思,用AutoCAD R9以下的软件介入设计,也就是代替手工绘图,这是必然。但时至今日,软件已经有了质的飞跃,但是在多数用户那里,一提起CAD,人们仍然先想到代替手工绘图,而不是有效的全面辅助设计。以至于许多机械设计部门的领导问我,过去我们用纸绘图,现在用计算机了,这两者有什么不同?从设计过程来看,真的没多少不同。在纸上不好办的事,现在仍然不好办;图纸画得规范、漂亮,而设计质量却没有提高多少;仅从绘图来看,提高了一些效率,可考虑到软硬件的投资,日常消耗品的投资,这点效率似乎很不够,你很难说清楚这笔投资的回收期多长,能否在系统技术折旧到期之前有盈利...所以,仅仅是计算机辅助绘图,并不能够提高设计质量,解决技术创新中的关键问题。但是,许多人在这个计算机绘图(或称之为“电子图板”)上,已经投入并且想要继续投入大量的资金和人力,如果你同意我上面的分析,一定和我一样感到很奇怪,他们怎么了?
  
   1.3二维绘图中的设计难题
   诚然,上述二维计算机绘图对于普及CAD技术曾经起到了重要的作用,也是对进入更高层次的应用,十分必要的技术准备。但是,CAD的应用结果应当是:提高设计质量、传播和保存设计经验、提高设计效率、降低试制成本、提高设计管理水平...总之,是源于传统设计、高于传统设计。而事实是到现在为止,二维的微机机械CAD技术没能解决设计中最别扭的几个问题。换句话说,如果一个机械工程师,自我感觉绘图的能力不足,需要有人帮着绘图,我就想问这个工程师:“你还会做什么?你的看家本事最起码就是画图了!”在传统绘图设计过程中,工程师们感到最别扭的、最影响设计质量的、最需要有人辅助的几个问题是什么?常见的可能有下列几项:
   1〉复杂的投影线生成问题
   对于铸锻件毛坯的零件,设计师常常在绘制二维工作图时相当头疼。相贯线和截交线画不明白,甚至得找木型工审图。实际上这个零件在他脑子里不知想了多少遍了,早就想透了,就是表达不明白。对于某些细节(比如铸件上的一些交叉线上的过渡圆角)不容易在头脑中构思清楚,想用画二维图来辅助求出投影,更难以解决。因此常有这样的事,设计师在新产品试制成功后,对着真零件反过来修改自己的设计图。
   2〉漏标尺寸,漏画图线的问题
   就是经过几个人的审校,漏标尺寸的事仍时有发生。而且设计师在这个设计中独创的地方越多,审校的人对这个设计的构思越熟悉,漏尺寸、漏图线就越难防止。正是:不识庐山真面目,只缘身在此山中。
   3〉机构的几何关系和运动关系的分析讨论问题
   如果是平面运动机构,事情还算好一些,即使图上的尺寸位置不太准,总有个有效的定性分析,对于空间运动,就没有好办法了。为了避开这个难题,人们在设计中总是先考虑容易设计的平面机构,而尽量避开空间机构,虽然在许多设计中,明知道空间机构可能会更巧妙,更优化。
   4〉设计的更新与修改问题
   传统的二维设计是一锤子买卖。如果要更新或修改,就要重新绘图,一般规定不可以打补丁(多数设计部门是这样要求的)。尤其是多视图零件,在修改设计时,零件的表达和它的有关设计参数无法完全放在一起,当然也没有直接的关联,这些技术资料的保存和更新都十分麻烦。虽然二维图形在AutoCAD中有较方便的修改方法,但是由于是对表达“图线”的修改而不是对设计“概念”的修改,仍然是相当麻烦,相当不可靠的。
   5〉设计工程管理问题
   这里所说的是对设计的管理,不仅仅是对图纸的管理。我们一些CAD用得好的单位,已经有几千个DWG文件,而且在继续增多。这些文件中除了图形信息外,还会有大量的设计参数等非图形信息,它们按装配层次关系有一种复杂而有序的关联。能否将传统设计中的管理模式用在CAD系统中?用二维绘图解决上述问题,说不可能解决,似乎太过分了,但至少是相当困难。这是因为在二维图的数据结构中,没有足够充分的原始数据,也无法组织和使用这些数据。要知道,二维工程图表达并不是设计构思的完整表达,也不是设计构思的真实表达。这样的图样必须由经过专业训练的人(熟记表达规则)才能读懂,数据的提取必须由读图的人按照许多规则进行解释,他才能了解绘图人的意思。就是说,二维工程图的生成和认读,总也离不开“人”。而计算机应用的最终目标就是没有“人”的参与,也能自动分析和使用上游下来的设计数据。矛盾之处就在于此。
  
   2.二维图形参数化
  
   2.1二维参数化的局限性
   二维参数化是针对上边的分析,曾经流行过一段时间的解决方案。记得当时开发商们将二维图形参数化软件炒得火热,同时也有不少软件商引进了一些国外的二维图形参数化软件来推销。似乎二维参数化,是有效的CAD应用解决方案,企图使这种通用的二维图形参数化来解决前面讨论的矛盾。这种技术方案的核心目标是:用程序训练计算机,企图使她象工程师一样生成和认读二维工程图。可是这些程序设计者忽略了一个最关键的问题:计算机永远也不会成为电脑。永远!开句玩笑,也许是港台地区把计算机叫做电脑,因而影响了他们吧。顺便说一句,工程图纸扫描矢量化处理的软件设计者,也犯了同样的错误。从二维工程图的生成来说,一个视图的全面参数化已经十分困难(当然不是指键槽、花键、台阶轴这类的简单图形),如果建立多视图之间的相互关联的参数,就更加困难。这样,用有限个参数驱动整个零件图,就是极难作到的,在这个过程中,相当于一个设计师只能用嘴,指挥一个仅会使用制图工具的傻小子,绘制他的设计图。二维参数化技术中,多视图之间的关联是必须作到的;同时系统必须能识别在此基础上的用户错误,比如用户要求将内孔直径改成大于外圆的时候时。只有作到了这些,才能实现真正的二维工程图参数化。而实际上,我看到的这类软件,没有一个能够达做到的。
  
   2.2二维参数化的可用性
   当然,如果把问题降低为:生成和管理专业设计中使用的、参数化的二维标准件图形库,情况真的就好多了,因为这类问题的数据结构是有限而且确定的。适合这样做的题目有很多,例如:组合机床设计、夹具设计、量具设计等等。实践证明,这样的思路是正确的,现场使用效果也很好。最令人可惜得是,这种观点至少提出来有八年了,没有见到那个开发商认真地做出来。就连合格(我说的合格,可不只是辅助绘图)的GB常用标注件库你都找不到。如果再换一个角度看二维参数化,也就是进行“二维专业设计整套图参数化生成”,就会有另外一番天地。由于这样的需求范围窄(比如装配工具设计中的棘轮扳手总图和有关零件图),数据相对确定,就有可能很实现“用几个关键设计尺寸驱动全套设计图”。如果这样的程序都是由对这个设计很熟悉的工程师亲自动手或者直接指导下写的,还很容易达到具有专家经验的高级设计水平。在一汽的许多设计部门,这样的专业软件正在继续生成和普遍使用,有效地提高了设计效率,减少了差错,提高了设计质量。可见,二维图形参数化这个技术模式,有她的用武之地,并且已经取得了明确的效果。但是,这是一种“检索设计”的设计工具,对于新产品开发,则力所不及。
  
   2.3设计还是绘图
   CAD技术的目标究竟是什么?这是一个有很长历史、涉及到了一些领导者和权威们的争论:“究竟什么是CAD的D,是Drawing还是Design”?设计中肯定要生成二维工程图,但这是设计全过程的一小部分,是工程师最熟悉,也是困难最少的部分,并不是最需要有人帮一把的部分。所以CAD的D应当是Design。为什么这个问题长期以来争论不休?主要原因有:
   1〉参加这个讨论的人,现场设计能力和设计经验到底怎样?真的都是有经验的成熟设计师吗?还是机械专业毕业,但从没有独立做过成套设计的准工程师?
   2〉微机CAD软件是较幼稚的系统,其能力较弱,事实上老版本的AutoCAD确实只会画二维图形。由于我国科普工作做得相当差,新知识传播通道太少,工程师在职进修的机会也相当少。
   3〉增值软件开发商手中的主要开发者是缺乏工程设计经验的大学生,说不清设计过程究竟是怎样的。可别小看这个“设计经验”,在这上边失之毫厘,在她编写的软件中就会谬之千里。最近出版的一本大学机械制图教科书,还在教给学生如何用C语言编程,驱动绘图机绘制直线、圆和简单的几何图样。在这样的教材教导下的大学生,不要说设计经验,连基本概念都有问题。
   4〉机械设计是各种设计中最麻烦,最不容易规范的,似乎能作得成的事也就是画二维工程图。
   5〉不少应用技术的推广者或者培训教师也没有真正搞清这个问题,自己也是设计经验不足,以其昏昏,如何能使人昭昭。设计,有两种主要模式:创成设计和检索设计。只有以创成设计为主的条件下,才是我们自己的产品开发设计模式,才具有市场竞争力,才有明确的经济效益。而检索设计主要是在已经成熟的设计方案基础上的提高,这是工装类设计的最主要模式。完成创成式设计的辅助,才是使用CAD系统的方向,才是具有明确经济效益的方式。从传统设计过程来说,确实有抄图的成分,但最主要的工作内容是创建一个新的二维表达。比如说设计一根磨床主轴,在一开始构思时,自然说不清有几段台阶,各自多长,只是有了一个粗略的概念,很可能在以后的设计过程中,这个初始概念下的参数,被修改得面目全非。等到了设计快结束时,这根轴的参数才明确下来,才能建立正式的二维工程图。因此,在一般设计中,总要经过方案草图、装配草图、零部件图、正式总装图、正式零件图…这样的几轮绘图工作,很少有画完了零件图或装配图就完事大吉的情况。因此说二维图形参数化的方法是辅助制图而不是辅助设计。而对于一个机械工程师来说,绘制二维工程图是他的看家本领,要不要用计算机辅助真是无所谓。从这个意义上讲,用图板还是用计算机,没有本质区别。但,AutoCAD这个软件在二维图处理上,具有独特的、极强的几何设计功能,精度也极可靠。如果将AutoCAD作为有限设计数据库来使用,在掌握了操作技巧或者用不太复杂的程序辅助一下,就能解决许多解析法难以解决的工程数据求解或是专业设计模拟这样真正的CAD需求,有效地提高设计质量。如果要在二维图形中真正进行辅助设计,这个CAGD模式确实是一条路子。比如笔者在1989年作为主设计研制的“圆形分布多轴钻削动力头CAD系统”软件,就将工程师六天的工作量减少到了半天。按设计任务单所列参数,输出六个数据就进入自动设计成图过程。在实用考核中取得了设计结果免检的信誉。这是在AutoCADR9中完成的工作。可见,建立二维设计数据库,在二维绘图范围内也是很有应用潜力的。
   3.从三维开始设计是必然趋势
  
   3.1三维设计还二维设计
   人在设计零件时的原始冲动是三维的,是有颜色、材料、硬度、形状、尺寸、位置、相关零件、制造工艺等等关联概念的三维实体,甚至是带有相当复杂的运动关系的三维实体。只是由于以前的手段有限,人们不得不共同约定了在第一象限(美国是第三象限)平行正投影的二维视图表达规则,用有限个相关联的二维投影图表达自己的三维设想。这种表达信息是极不完整的,而且绘图、读图要经过专门训练人进行,以便“纠正”人类头脑中原始的、关于几何形体表达的“错误”。如果能直接以三维概念开始设计,在现有的软件支持下,这个模型至少有可能表达出设计构思的全部几何参数,整个设计过程可以完全在三维模型上讨论,对设计的辅助就很容易迅速扩大的全过程,设计的全部流程都能使用统一的数据,这是发达国家CAD的今天,也是我们明天的微机CAD。从三维开始的设计,二维工程图的表达仍然要遵守传统设计的要求,因为加工、装配现场还不可能安装计算机系统。这样,支持软件必须有从三维生成二维工作图,并双向关联的能力;为了能在设计中配凑和修改尺寸形状,支持软件又必须有三维实体全面尺寸约束和特征修改能力。这样才有可能建立充分而完整的设计数据库,并以此为基础,进一步进行应力应变分析、制件质量属性分析、空间运动分析、装配干涉分析、NC控制可加工性分析、高正确率的二维工程图生成、外观色彩和造型效果评价、商业广告造型与动画生成等一系列的需求都能充分满足,这才是对设计全过程的有效的辅助,这才是有明确技术效益和经济效益的CAD。如果做到了这一点,传统的以二维工作图为主的设计资料管理将变成三维设计数据的保存和管理,而工科大学的机械制图课就可以大幅度删砍,尽量保留学生的三维原始概念,二维工程图的画法也应随之大幅度简化。在我国,近期内实现波音777那样的全数字化设计还不可能,但是在机械系统实施从三维概念开始的、基于微机的CAD是条件具备的,可以指望解决传统设计中前文所列的难点。这样作肯定会明显提高设计的质量,随之而来的是提高设计的速度。
  
   3.2只有三维设计才是真正意义上、创成设计的CAD
   许多二维参数化软件商告诉我,有了二维参数化,你可以随心所欲地修改零件的形状和尺寸,完成设计更新,这多么好啊。可我从来不敢相信这样的观点。修改零件的尺寸是很容易的,问题是我怎么敢改。要敢改,起码必须进行力学分析,否则这个连杆断了怎么办?我们这些学工的人,都完整地学了理力和材力,经过了三、五年的设计工作后,你的这些知识还剩多少?不经常使用的知识就会忘记,不经常使用的原因不是不需要,而是太麻烦:作一根轴的弯扭组合校核还算凑合,你把发动机缸盖分析一下试试。设计质量提不高,许多问题出在这个分析上。看到国外的设计小巧轻薄,而我们的同类设计傻大黑粗,刚度反而不好,原因谁都会说:材料没有用到关键的地方。哪里是最需要材料的关键部位?找不到这个部位,设计仍然是傻大黑粗。可见,应力应变分析在CAD中是极其重要的内容。只有三维设计,才有可能组建进行有限元分析的原始数据,进而进行零件几何形状的优化设计。否则就是传统的设计方法:进行多次的台架试验甚至样机考核试验,成本之高、周期之长,是现代市场经济无法容忍的。机会对每个设计师都是公平的,在需求确定之后,谁先设计出来、谁先制造成功,谁就会有市场,有经济效益。常有这样的情况,按国外造型的一次性打火机,我们再制造一个,注塑完成后,一眼就看出来不一样。为什么?你的注塑模具没有放出足够的局部收缩量。在这个问题上,传统的二维设计毫无办法。在装配状态下讨论零件设计,使每个工程师都有的梦想。二维设计只能在局部上勉强做到,而三维设计必然能实现这个梦想。
  
   3.3能直接进入三维设计吗
   有一个类似的讨论,我们现在的电子类专业大学教学,是半导体原理讲起,之后是二极管、三极管、单管放大、复合放大、小规模集成电路…这样的顺序讲硬件。然后从二进制、各种进制的转换、机器指令、到一般程序设计…这样的顺序讲软件。这里强调的是个“体系”。于是,学生在校期间很难接触到最新的软件技术,要想接触最新技术,目前可能要在学校学十年,将来技术进一步发展,十五年也不一定毕业。因为“体系”太庞大了,要不怎么叫知识爆炸呢。实际上,计算机应用技术完全没有必要从二进制学起。一个完全不知道怎样将十进制数转换成二进制的人,照样能用好计算机。因为计算机应用的目的就是“将我们已知如何做的事情自动化”,而十进制转换成二进制,是早就已知如何做了的,早就自动化了的,用户已经不必知道和介入这个过程了。如果计算机不能越来越多地接过人类已经确认的工作过程,实现自动化,就不会有越来越多的计算机系统投入使用。因此,计算机软件应用特色是:利用软件提供的功能,根据你的题目要求,完成想做的事情。至于软件内部究竟是怎样完成的,没有必要去操心。只要你真的明确自己要做什么(实际上这也不容易)。在软件应用上来说,软件能力有多强,你的应用结果就有多好,完全不必象在大学那样,从二进制学起。可见,跳过二维工程绘图软件应用阶段,直接从三维设计开始,完全没有问题。当然,在三维建模中要用到的二维图线生成技术,还是必须掌握的。对于一个成熟的设计师来说,进入三维设计最大的障碍不是软件应用技术,而是自己的思考方法。由于多年来习惯于二维工程图表达,习惯于读图中一系列规则的使用,对于描述三维模型上各个特征的类型和相互关系,从思考方法上已经生疏。在这一方面,甚至不如一个新毕业的大学的生接受能力。把自己的思维模式“返朴归真”,是一个必须经历的过程。恢复人类本能的三维模型描述,并不算困难,如果在一个有经验的教师引导下,会很快达到要求。
  
   4.全参数化驱动三维模型的必要与可能
  
   4.1只有能用参数驱动的设计模型,才有意义
   设计模型的建立,就是设计数据库的数据填充过程。建立数据库的目的,是在将来的设计配凑过程中引用和修改其中的数据,最后完成设计。因此不能进行参数驱动的三维模型,在设计中没有多少用途。仅是做到“看”起来象的建模方法,是没有使用价值的。这里所说的参数驱动,包括对于新设计的零件、引用的标准件,也包括对各个零件之间的装配关系、位置关系甚至运动关系。
  
   4.2参数驱动的设计模型的可能性
   设计模型可以分为两大类。一种我称之为“雕塑模型”,例如人脸。另一种我称之为“几何模型”,这就是各种机械零件的实际特点。无论多么复杂的几何模型,都可以分解成有限品种的构成特征,而每一种构成特征,都可以用有限的参数完全约束,这就是参数化的基本概念。对于机械设计来说,几何模型占我们设计对象的绝大部分。这样,我们的设计,几乎全部都可能用参数化的三维模型表达。Autodesk的MDT和Inventor都是这类软件的典型。MDT是一种典型的参数化建模软件,其参数化约束的技术特点与工程师的想法仍然有些区别,这种区别恐怕是永远存在的,因为软件的思路永远落后于人类的思路。
   模型的参数约束分为两大类:
   1〉几何约束。例如:相互平行、相互同心、两线等长…这样的约束是确定它们的几何关系,而这种几何关系在未来的设计中是保持不变的。
   2〉尺寸约束。例如:长度、高度、锥角、半径…这样的约束是确定它们的尺寸大小和相对距离,在将来的设计中,这些尺寸可能改变,也可能被另外的零件引用。MDT又一种典型的特征建模软件。
   其特征模型分为三大类:
   1〉基于轮廓的特征:先有被参数化约束的二维轮廓,之后按要求和软件的可能生成三维模型特征。例如:拉伸、回转、放样…这样的特征也可以通过布尔运算组合在同一模型中。
   2〉基于已有特征的特征:先有某种特征存在,在此基础上进行修饰。例如:圆角、阵列…这是一种依附于已有特征的特征。
   3〉定位特征:作为坐标系的参数化控制结果,生成工作面、工作轴、工作点或者基准坐标系。这些要素也是参数化的。MDT为设计数据的管理,提供了设计变量的数据结构和管理功能。同时,在MDT中提供了关于设计参数丰富的数据结构和管理工具,这些是对于传统设计技术的精炼和抽象,是将传统设计技巧用程序模拟并且提供给用户的典型实例。掌握和使用了这类技术,对于设计质量的提高,将起到直接的作用。
   1〉设计变量有控制激活零件用的“内部变量”和对于全部零件或特征都起作用的“全局变量”。事实上,这些设计变量在参数化的装配中同样可以使用。可以引用设计变量填充参数化约束尺寸的值,这样,就可能在数个相关零件的约束尺寸中使用相同的几个设计变量,从而建立起这些零件设计尺寸的自动关联。
   2〉设计变量可以使用外部数据库的数据,例如:Excel表或者*.PRM文件。这样,设计数据将有可能在更大的范围内、用更多的手段进行控制、管理和计算。可见,从功能上来说,实现全参数化的三维建模,MDT已经具备充要的条件。这些功能实际上是对于传统设计知识的程序化处理,这样的功能是“源于传统设计、高于传统设计”的应用程序包。
  
   5.正确的辅助设计建模概念
  
   5.1人是CAD系统中的主要成员
   我认为,将计算机+应用软件称为“电脑”是一个概念性错误,因为计算机设计系统至今仍然不能(也许很远的将来也不能)象人一样思考,即使这个人是一个不太成熟的设计师。实际上,一个CAD系统的组成应当包括硬件、软件和使用者,无论设计软件的能力有多强,人的操作才是决定这个软件使用之效果的决定性因素。十分清楚,同一个CAD软件,在不同的人手中,会有相当不同的使用效果。例如:AutoCAD在一些人手中仅仅是电子图板,而在另一些人手中却成为很好的二维设计平台。
   这可能取决于下列条件:
   1〉对自己要做的设计的理解到底有多深?
   2〉在建模之前的设计数据准备是否足够充分?
   3〉对自己的专业设计经验和知识面到底有多宽?
   4〉对自己使用的软件功能到底掌握了多少?
   可见,在追求软件应用效果的时候,首先应当检查的是自己的准备是否充足。不能设想,一个设计经验不足的新工程师,会完成一个正确的全参数化驱动三维零件模型。即使是对软件十分了解的应用程序开发商,也可能由于专业设计知识的贫乏,经常在他的程序中露怯,这样的例子甚至相当常见。工程师使用CAD系统,尤其是三维设计系统,原有的技术准备肯定不足,必须修正自己的一些概念,这是技术进步的必然。至少你已经被你的制图老师“洗过脑”,三维原始概念十分淡化;再加上没有时间或者没有机会参加正规的软件使用培训,而软件应用靠自己“悟”,是要走许多弯路的;还可能看了一些参考书,而书的作者无意中给你灌输了一些不正确的应用方法,而你却将这些方法当成权威的观点…总之,完善自己的专业设计知识,参加正规的软件应用培训,是使自己在CAD系统中发挥应有作用的关键因素。
   有这样一种观点:按照软件的设计思想使用软件进行自己的设计。这种观点认为CAD应用过程的主要因素是软件而不是使用者。因此使用者需要克服自我,去适应软件。我认为这是不对的,在专业设计问题上,最高权威不是软件,而是设计者。因此在CAD技术的应用过程中,必须“以我为主”。就是按照应用者的设计思路去使用软件的功能。
  
   联系:[email protected]

 
  山东装备制造业信息网 版权所有