can be a source of error (Fig. 3) because the real machine rotates the tool column angle at the same time as it translates it along its axis, while in the simulation, for each time interval, the tool is first rotated and next translated along its axis. However, in these cases the original CNC is already decomposed as a set of very small movements with a resolution very similar to the one needed in the machining. Therefore, these movements are not further decomposed in the machining.
The global coordinate system in which the geometry is expressed along time is sketched in Fig. 4. The axis coincide with the machine axis X; Y and Z at the tool home position at the beginning of machining. Let ct(xtk, ytk;,0.0)be the coordinates of the tool section center at instant k: The components of the normal vector of the section are ntk(nxtk, nytk,0.0). It should be noted that nxtk =cos(ωk) and nytk= sin(ωk); being vk the column angle of the tool at instant k: The updated values of these coordinates at k +1.
Fig. 3. Non equivalent transformations
.
Fig. 4. Coordinate system, axes and motion.
5. Conclusions and future work
This paper describes a novel method for the simulation of drilling tools CNC machining. Our approach simplifies the 4D (space t time) Boolean operations between the tool and the wheels by reducing them to a sequence of intersections between 2D perpendicular cross-sections along time. Specifically, the method discretizes the toolinto cross-sections and simulates machining on the cross sections. Next, the shape of the tool is recomputed by tiling between contours. The primary advantage of this approach is its simplicity. It addition, it provides user-control on the resolution of the simulation: spacing between crosssections as well as time interval between consecutive intersections.
Starting from this work, new research and development lines are opened. Specifically, we are working on global pipelines that would put into the same process automatic CNC computation and tool verification. With such pipelines, given a final tool description, the
CNC code to create it would be automatically computed, next using the CNC code as input, tool machining would be simulated. Finally, differences between the input and the output model could be computed and shown.
钻探工具数控加工三维仿真的布尔运算 摘 要
本文旨在对钻探工具数控加工的仿真研究。文章描述了一种新的估算机械工具表现范围的方法。加工包括一系列器械和磨轮之间因时间而产生的差异的布尔操作。该方法执行动态布尔运算工具截面和它重建3Dmodel截面之间的瓦片。这种方法是建立在交叉测验、船体计算等古典计算几何算法之上的。该方法很有效率且能提供给使用者对操作分辨率的控制。
关键词:数控仿真 钻孔加工 计算几何学 布尔数学体系操作 外观铺瓦
1. 序言
数控的CAD研究大多是集中于自动计算刀具路径[5,13]。考虑到最终工具设计,该工具和砂轮的最佳轨迹必须加以计算以产生数控代码。加工仿真和验证有着完全相反的目标:在加工之前从数控代码和机械、车轮及器械的几何模型开始计算器械。该仿真包括三个主要的应用。首先,它检测器械或任意磨轮与机器的其余部分之间可能的碰撞。避免碰撞非常重要因为随之而来的将是对机器严重的损害。其次,仿真提供了一个可视化的手段验证轨迹的效率,这可能产生速率更快成本更低的进程。最后,仿真使使用者能够检查最终产生的器械外观是否恰是需要的那种。在加工的日常实践中,经验丰富的操作者有足够的技能仅通过阅读数控代码来想象工具的最终形状。
然而,他们在新型或非标准化设计中一般都无法做到这些。因此,使用仿真系统大大降低了刀具生产成本因为它避免了在关于实际机器的试验和错误的过程中昂贵的材料的不必要的浪费。本文重在研究数控加工仿真的一种特定类型:孔和刀具的磨削。常规CAD系统不提供实现这种仿真类型的手段,因此,需要特定的应用程序。到目前为止,大多数的仿真应用只涉及工具的2D横截面的加工且他们的加工仅限于主要的开槽操作[3]。而最近的三维应用程序则不同 [4,23]。他们为特定的5轴机器提供加工仿真,并不适用于一般运动。本文提出了一种新方法:通过一系列6轴机器的工具和车轮上的协调动作计算工具的外部形状。该方法将3D问题变为表面铺瓦的二维动态布尔运算。 2D解决方案涉及从十字路口到船身计算的不同平面计算几何的技巧。本文结构如下:在第2节回顾以往关于加工仿真的方法。第3节简要介绍了仿真的大致情况。最后,第4节描述
了布尔操作的计算,第5节展示了实现的结果。 2.以前的工作
加工可以认为是一个动态的砂轮与工具之间的差异的布尔操作。说它是动态的,是因为工具和车轮都是通过旋转和平移沿着时间移动。矢量切割[8,10],可能是最有参考价值的数控仿真方法。这种近似的解决方案代表了沿着磨轮路径切割的一系列点及常规向量的前沿。这种方法对有刻纹的表面抛光的仿真很有效,但它对工具或砂轮的复杂运动无法扩展。其主要用于检测路径中存在的异常高或小的切向量的错误。此外,除文献[16]的延伸,它不会直接产生可加工的位模型。加工仿真的替代战略是通过时间实现三维静态布尔操作序列。这一战略的主要缺点是它的高计算成本。据文献记载[11],这与离散位置数量成四的正比。而就实际情况考虑,这不成问题。它所显现的另一个问题是时空离散的粒度:如果最后的工具需要精度,它就必须非常精细。这意味着在每个布尔操作过程中很少材料被切断,且必须承担在计算过程中可能带来的粗鲁性的问题。避免这两个问题的一种可能的方法是将初始的工具模型离散成一个三维像素或八叉树模型[20],对离散模型进行一系列的布尔操作,最后重建机器表面。这种方法得益于这一事实:该进程最后的重建阶段越晚,离散的布尔操作成本就越低。该方法需要根据砂轮的相对运动而指定的一系列运动,与此同时刀具和其离散保持不变。这个前提不总是有效的,尤其是,它并不能控制6轴机器一般情况。最后,另一种可考虑的选择是工具和磨轮在它们的运动中横扫的体积的计算。该体积的几何表示将仅表现一个两种体积之间的布尔差异操作。此方法主要的困难是扫频体积的计算。关于此主题有一些参考[1,2,21]包含一般应用于CAD挤压的方法,碰撞检测,以及其他问题,但没有一种可以应用到两个固体同时运动的不一般的情况。本文提出的策略克服了这些方法的缺点。它由双离散四维空间(三维时间)组成,可减少由一系列2D布尔运算和三维几何重建导致的的一般问题。该算法很快速且它使用户可以控制仿真精度。
3. 场景模型
制造孔和刀具的机器有不同类型。它们有相同的总体结构,但自由度不同。此处提出的方法是处理关于六自由度的机器的问题的。这些机器有一个静态垂直