一行人上了二楼,在招待所安顿下来。
“赵研究员,刘同学,你们先休息一下,洗把脸。”韩维义看了看手表,“四点,咱们在楼下小会议室碰个头,沈教授和项目组的几位同志都在,先把情况通个气,您看怎么样?”
“行。”赵远航言简意赅。
下午四点,小会议室。
除了沈一鸣、韩维义,方教授、何教授以及周伟、赵毅诚、唐简几位研究生也在。
陆怀民坐在靠门的位置。
赵远航和刘明准时进来,在韩维义的示意下坐下。
刘明把那包东西放在了脚边。
“赵研究员,情况是这样的。”沈一鸣作为技术总负责人,先开口。
他没有寒暄,直接切入正题,把“六〇一”项目的来龙去脉、目前夹具设计遇到的二维三维转换困境、手工试制周期过长的压力,以及尝试引入计算机辅助设计思路的缘由,条理清晰地介绍了一遍。
“所以,我们向上级打报告,请求技术支援。省国防工办高度重视,把您请来了。”沈一鸣语气诚恳:
“我们在机械和加工上有些心得,但在计算机图形处理这方面,完全是门外汉。后续的攻关,特别是如何将设计意图更好地转化为计算机能处理、能显示、并能进行初步分析验证的模型,就全指望您了。”
赵远航一直安静地听着,等沈一鸣说完,他才推了推眼镜,开口道:
“沈教授,韩工,情况我大致明白了。用计算机辅助复杂机械设计,这个想法本身,很有价值。我在计算所搞了十几年图形学,也接触过类似的项目,对国内这方面的尝试,也一直保持关注。”
他身体微微前倾,继续说道:
“咱们国家在CAD应用上,有过突破,也卡在瓶颈。我举个最典型的例子,1975年,科学院沈阳机床研究所,搞出了咱们中国第一个真正意义上完整的CAD系统,专门用于设计组合机床的多轴箱。”
会议室里的人都竖起了耳朵,连沈一鸣也露出了专注的神情。
这是他们未曾详细了解的领域。
“那个系统,了不得。”赵远航语气里带着由衷的赞赏:
“它实现了从设计计算、到自动绘图、再到输出生产用的工程图纸,整个设计流程的闭环。这是一个里程碑,证明了计算机辅助设计在实际生产中确实能用,而且能提高效率。”
他话锋一转,屈指在办公桌上敲了敲:
“但是,它有个根本的局限就是极度专用。它的所有逻辑、数据库,都是为‘组合机床多轴箱’这一个特定部件量身定制的。离了多轴箱,系统就几乎没法用。”
“而且他是一个完全的二维系统,计算机绘图的优势根本没有发挥出来。所以这个系统用处很有限,宣传的也不多。但他确实是我们国家第一个比较完整的 CAD系统,我们图形学领域和一部分有识之士认为,下一步的目标,必须是从‘专用’走向‘通用’,从二维走向三维。”
“通用的关键,在于底层。要建立一个通用几何造型引擎。就像盖房子,不管你是盖厂房还是盖宿舍,砖块、水泥、梁柱这些基本元素和处理它们的方法是通用的。在这个通用引擎上,才能生长出各种专业的设计工具。”
“而通用的高级形态,就是从二维走向三维实体。”赵远航说的很通俗:
“不再仅仅是处理平面上的点和线,而是要定义有体积、有质量的‘实体’。让计算机真正理解一个零件占据的空间,能对它进行拼接、切割,能自动计算它的重量、干涉情况。这才是现代CAD的核心思想:从‘画图纸’升级为‘建造并操纵数字模型’。”
他看向沈一鸣和韩维义:
“你们现在想做的,正是触碰这个‘通用三维实体’的核心难题。虽然是从一个具体的夹具入手,但解决的问题包括三维描述、干涉检查、参数驱动都是构建通用CAD根基必须面对的。”
“这也是我接到任务后非常感兴趣的原因。这个项目确实很有意义。”
赵远航顿了顿:“我听说,厂里已经有一位同志,在这条路上先走了一步。不知道你们现在的进展如何?”
所有人的目光,齐刷刷地转向陆怀民。
陆怀民站起身,把面前摊开的笔记本合上:
“赵研究员,沈老师,我做的程序还很简陋,只能算是个雏形,叫‘GD-P1’。晚上机房有空的话,如果您方便,可以过去指导一下。”
“方便。”赵远航回答得很快,几乎是脱口而出,“就今晚。我带了点资料,正好可以对照着看。”
……
晚上九点,三号楼地下机房。
日光灯管发出稳定的嗡鸣,将房间照得一片冷白。
DJS-183庞大的机身在房间中央低吼,不断散发热量,但所幸房间里有恒温系统,使得机房反而比外面更加凉爽。
徐海科长已经在了,见到赵远航,态度明显比对陆怀民更恭敬些,毕竟这是上面专门请来的专家。
他详细介绍了机器的使用规范和注意事项。
赵远航听得认真,不时点头。
他进入机房后,先是背着手,慢慢绕着机器走了一圈,随后坐到控制台旁边的椅子上。
“183,好东西。”
他低声说了一句,听不出是感慨还是单纯陈述。
陆怀民已经熟练地开机,进入系统,调出了他的程序。绿色的字符在黑色的屏幕上跳动,最终稳定在输入界面。
“赵老师,这是我写的‘GD-P1’,现在主要做了两块。”陆怀民没有废话,直接开始操作。
他先演示了二维参数化设计部分。
屏幕上出现一个法兰盘的简化轮廓,旁边是几个参数输入项:外径、内径、孔数、孔分布圆直径。
“这是我们夹具里一个连接盘,变种很多。”陆怀民解释着,快速输入了一组数字。
屏幕闪烁了几下,线条开始移动、增减,几秒后,一个新的、符合尺寸的法兰图形显示出来。
他又换了一组参数,图形再次快速响应。
“参数驱动图形重建,基础,但很扎实。”赵远航微微点头,评论简短。
这在他的预期之内,一个聪明的本科生做到这一步,值得表扬,但不算惊喜。
陆怀民“嗯”了一声,手下不停,退出了二维演示模块。
“第二部分,是三维空间占位和初步干涉检查,很粗糙,只是线框。”他说着,敲入另一条命令。
屏幕上,线条开始勾勒,先是几个简单的立方体,代表夹具的基座、支撑块,然后是一些圆柱体,代表定位销、压紧螺杆。
它们以一种笨拙但逻辑清晰的方式组合在一起,形成了一个简易的夹具线框模型。
陆怀民又输入旋转命令。
模型开始缓慢地绕轴旋转,所有线条,包括应该被遮挡在后面的,都一览无余。
在某个角度,两个立方体的线条复杂地交错在一起。
“这里,”陆怀民指着那团“乱麻”:
“实际结构中,这个压紧臂和这个加强筋在空间上是会干涉的。但靠人工看二维图,或者靠这个线框,很难直观判断,尤其在复杂角度。”
陆怀民停顿了一下,然后他停止了旋转,将模型恢复到一个特定视角,然后调出了另一段程序。
“我试过设计算法,”陆怀民继续介绍,“线框看不出遮挡,我就想,能不能让计算机自己判断,哪些部分在‘前面’,应该被看到,哪些在‘后面’,应该被遮住?”
赵远航原本半靠在椅子上的身体,不知不觉坐直了。他推了推眼镜,没说话。
陆怀民运行了那段新程序。
屏幕上的线框模型再次出现,但这一次,在缓慢旋转到某个角度时,一些位于“后方”的线段,突然消失了!
虽然消失得不太稳定,时有时无,而且模型旋转变得异常卡顿,但确确实实,在某些瞬间,显示出来的图形,更像是真实的物体,有了前后层次,而不再是一堆穿透的线条!
“这个算法我叫它‘深度过滤’,”陆怀民解释,眉头微微皱着,显然对效果很不满意:
“算法的大致原理是计算每个点到假想观察点的距离,只显示距离最近的那部分线。但问题太多了,计算量巨大,183算得很慢,而且只对凸体有效,遇到凹进去的结构或者复杂相交,判断就出错,线会闪,会丢。”
他敲了暂停,屏幕上留下一个有些怪异、部分线条缺失的旋转体。
“而且,这只是在线框层面隐藏了后面的线,并不是真正的实体遮挡。所以这个算法需要继续改进,要想真正判断两个零件是不是碰在一起,光看线框不够,得知道它们的‘表面’和‘体积’。”