增材制造数据量正在失控,计算慢、内存贵?这套开源算法助你破局! 数字制造工艺的稳健性高度依赖于设计数据向制造数据转换的方式。在这一转换过程中几何信息必须被完整、无歧义地传递同时随着零件复杂度的不断提升数据的处理过程仍需在计算时间和内存占用方面保持在合理可控的范围内。德国亚琛工业大学数字增材制造研究所DAP通过DAPComputationalGeometry以开源形式提供用于开发增材制造CAM软件的计算几何算法库。这一开源算法库旨在通过提供稳健、高性能的数据预处理基础模块大幅降低企业在此类功能上的自主开发投入。增材制造数据量正在失控增材制造CAM软件中的诸多核心功能如零件成型方向确定、基于套料排版的零件在打印空间内的无重叠排布图1等都依赖几何处理算法。算法的选择及其具体实现方式会显著影响CAM软件系统的计算负载、内存需求及运行鲁棒性而这些因素最终又会传导至增材制造零件的制造成本、交付周期和成型质量。[图1]基于DAP套料软件生成的某次打印任务三维模型其中以相对套料密度作为优化目标。随着零件尺寸越来越大设备也越来越多地采用多激光配置增材制造CAM软件所需处理的数据量持续膨胀。如果底层的数据结构和几何算法扩展性不佳处理时间便可能从几分钟拉长至数小时甚至数天与此同时内存占用量也可能成倍增长最终将软件推向实际可用的极限边缘。更强大的计算硬件对这一问题的缓解作用有限。在许多情况下高效的几何处理算法能从根本上避免大量额外的计算开销。用对算法事半功倍DAPComputationalGeometryDAP-CG所提供的几何算法可用于优化或开发增材制造CAM软件中的以下功能模块成型方向确定支撑结构生成套料排版切片处理扫描策略计算该算法库采用C#语言实现基于开源库geometry3Sharp和Clipper2构建并在二维多边形和向量处理方面做了大量的功能扩展和性能优化。[图2]将晶格结构红色聚合为简化的碰撞多边形蓝色[图3]零件截面红色的偏置多边形蓝色例如它提供了将多个多边形聚合为单一多边形的算法图2从而在进入计算密集型处理阶段之前有效压缩数据量同时也包含能够稳健避免自交多边形并剔除冗余顶点的多边形运算功能。通过利用Span和SIMD等现代C# 语言特性该库在多边形平移和旋转等操作上实现了显著的加速效果。让普通电脑也能跑大型打印任务DAP-CG 所包含的功能均源于DAP研究所在工业导向型开发任务中的实际积累。在“增材制造工业化与数字化IDAM”项目的套料优化软件开发过程中通过采用多边形压缩算法将套料排版所需的内存占用量降低了80%即压缩至原先的五分之一。将该压缩方法应用于切片和扫描策略计算软件时也能获得相近量级的资源节省。在实践中这一差异往往直接决定了一项大型打印任务是能在 32GB 内存的标准台式机上顺畅运行还是必须依赖数倍内存配置的工作站或服务器——在采用租赁计算资源的情况下也直接意味着需要为多少内存买单。支撑结构算得准后处理成本才降得下来另一个典型应用来自该研究所的零件成型方向优化软件。该软件基于质量和成本相关的目标函数计算出零件在打印时最有利的摆放姿态。其中DAP-CG 的算法承担了诸如判断不同成型方向下是否需要支撑结构以及所需支撑范围等关键计算。而接触过增材制造/3D打印技术的人都知道支撑结构的多少正是增材制造中影响成本和后处理工作量的核心因素之一。这套算法已开源可免费使用DAP-CG算法采用Boost软件许可证发布这是一种广泛使用的宽松型开源许可协议https://spdx.org/licenses/BSL-1.0.html。该算法库允许在研究及工业场景中免费使用包括商业产品和工业级应用。更多信息及访问方式请访问www.dap-aachen.de/dap-cg