机床仿真的实现
扫描二维码
随时随地手机看文章
由于需要提高生产效率,或者需要通过加工更复杂、更高价值的零件来赢得更多订单,工厂纷纷投资购买先进机床,而这种情况越来越普遍。由于这些机床非常先进,因此机床仿真就成为NC编程人员必不可少的武器,而不仅仅是作为一个有用的程序验证工具。
加工仿真已经经过多个阶段的演变,现在大多数CAM系统都具有一定的仿真功能。不过,这些系统并不是都以同样的方法运行。当编程人员需要确定其在数字世界里面模拟发生的事情是否会真正发生在机床上时,这些差别就显得尤为重要。因此,要为手上的工作选择正确的过程,就需要了解不同机床仿真之间的差别。
Vynce Paradise先生是Siemens PLM Software NX CAM行销总监,他认为机床仿真非常重要,且需甄别刀具路径验证
最简单层次的仿真是CAM系统多年来所做而且现在还在做的事情。CAM系统通过坯料的一个3D模型的切削变化来表示切削过程,验证坯料的刀具路径。该模式一般被称为“刀具路径验证”,即使没有机床表示也可以执行该模式。在标准的铣削或车削作业中,对刀具路径的这种验证层次通常已经绰绰有余了。选定了自动材料切除选项之后,以现在的PC速度加上软件算法的进步,可以很好地改善这一层次的刀具路径验证,对验证内部刀具路径这一工作来说是合适的。用户可以轻易读取刀具路径的内部定义,清楚地知道刀具与被加工表面的相对位置。
内部刀具路径定义
具有不同的基本运动自由度或者多任务功能的更高级的机床则需要一种不同的仿真。我们需要了解并显示当NC控制器和机床识别推荐的刀具路径数据时,这些数据会做什么。需要把机床运动作为一个完整系统来看待,而不仅仅是切削刀具相对于坯料的运动。
CAM 供应商达到这一目的的最简单方法就是开发一种着眼于内部刀具路径定义的软件,就像用于基本刀具路径验证的软件一样,然后该软件会将其转换为一种通用运动输出形式。这种运动与3D CAD各个轴相连接。该方法的优点是它非常简单易用,最重要的是它具有相对的通用性。在软件发展的这一阶段,运动定义相对独立于最终的目标机床和控制器的造型和模型。在这种情况下,大多数CAM供应商都采用一个通用的第三方插件应用程序,将其用于3D运动学和运动显示,创建机床仿真解决方案。
后处理器
人们显然低估了后处理器的地位,它并不是整个计算机数控(CNC)系统中微不足道的一部分。在大多数情况下,大多数后处理器向机床控制器传输数据的惟一方法是采用众人皆知的“G代码和M代码”。这些代码是一组标准化的代码,在某个层次上是通用的。但是与所有标准一样,每个控制器制造商和机床车间都用很多不同的方法来延伸和解释这些代码。由于在大多数情况下控制器只拥有这些代码以及与这些代码相关的数值,因此解释这些代码的确切方法就至关重要。
问题的关键是,如果仿真系统要正确并完整地对机床运动进行仿真,则仿真系统需要读取后处理器的输出即被发送到控制器的数据。为此,仿真系统需要一个软件组件,该软件组件比基于内部刀具路径的仿真驱动程序要先进一倍。
G代码和M代码
为了提供由后处理器输出驱动的仿真,系统必须能够解读G代码和M代码以及控制器专用的其他命令和相关数据区,然后系统会把这些信息转化为机床上每个轴或可控制装置的相应运动输入。这就要求详细了解具体的目标机床和控制器,甚至需要详细到了解一个特定客户对该机床的预期目标配置。这是对后处理器所创建内容的逆向工程,即该逆向工程的方法最好与机床控制器执行该任务的方法相同,其结果是3D仿真,驱动该3D仿真的代码与进入机床对真实零件进行切割的G代码和M代码相同。
该软件还可以看到由处理器的逻辑增加的、但是在内部刀具路径阶段早期并不存在的其他动作,从而对机床实际加工进行更加真实、更加完整的仿真。在很多高级机床(尤其那些具有真实、同步多任务功能的机床)的封闭、复杂环境中,非常关键。
机床车间可以检查CAM系统是否能够进行G代码驱动的机床仿真。其中一项测试方法是检查CAM系统是否能够对一个外部来源的NC程序进行读入并仿真,如手动创建或修改的,或者从机床读入用G代码和M代码编写的NC程序。要做到这一点,就要能够对给定机床和控制器的这些代码进行逆向工程。
另外,还有一些独立软件包,能够提供后期的G代码和M代码验证,这些代码能够读入来自CAM系统的输出。不仅如此,这些软件包还能够完全以上面描述的方式使用数据。很多机床车间均已投资于这些外部机床仿真软件,即使投资超出了它们在CAM软件上的投资。
NC编程
如果把G代码驱动的单独仿真应用程序用作大多数CAM系统的附件,则在同步多通道机床的各个单独元件时又会产生另外一个问题。编程人员希望看到在任何情况下机床的关键部件、夹具和切削刀具的准确位置,在编程人员用软件来向程序运行顺序添加“等待”和“同步”代码时更是如此。就像繁忙路口的交通信号灯一样,这些代码在管理多加工顺序方面起到了关键作用,确保多任务机床不成为“多冲突”机床。
为了实现可靠的同步,必须确定每次操作或者每个NC程序块的准确时间。为了计算准确时间,需要准确表示控制器功能以及轴的参数(加速度、最大速度、速度、急跳限值、准确的停止时间等)。通用机床仿真只能提供大概值,但是当编程人员使用所有机床功能时,对于快速运动设备和小公差而言,只有这些大概值是不够的。与实际冲突风险相差甚远。
一些编程人员会用手动方式把这些“同步和等待”代码增加到其CAM系统后处理器的输出,然后用外部、第三方机床仿真软件包来进行全面测试。当然,如果发现问题,他们会对G代码和M代码进行一些局部、手动编辑,或者回到CAM系统,在反复试验的基础上重新按顺序运行。当编程人员对整套作业进行同步处理时,车间最好拥有 CAM系统内的所有功能。
事实上,真正需要的是完整集成后处理器功能和内部“G代码驱动”机床仿真,把该组合与CAM系统内的仿真功能直接连接,意味着NC编程人员可以在同一套软件内完成所有操作。
发展:真正的控制器
与基本内部刀具路径驱动的仿真相比,虽然G代码和M代码驱动的仿真取得了很大的进步,但是它不仅要依赖于软件对代码的翻译质量高低,而且还取决于用来测试以及匹配机床控制器和机床行为的运动算法。
要尽量接近现实,需要采取的下一个步骤是准确复制机床控制器是如何处理这些G代码、M代码以及所附的数据区的。所有控制器的黑匣子里面都有软件,大多数拥有复杂算法,这些算法用于解释来自CAM软件包后处理器的数据。在这方面,没有两个控制器是完全一样的,因此如果要对机床运动进行真正地仿真,需要找到一个好的方法来复制在给定的G代码和M代码顺序下某个特定控制器软件会如何运行。
要做到这一点,理想的方法是得到实际机床控制器中使用的一个软件版本,然后将其插入车床仿真软件。在后面一种情况下,可以用控制器制造商提供的“黑匣子”软件来解释CAM系统的虚拟、数字世界内的G代码和M 代码,这样可以进行“控制器驱动的机床仿真”。事实上,对于CAM系统或基于车间的仿真器,控制器驱动的仿真可以全面提高机床仿真的完整性和准确性水平。
目前只有极少数控制器制造商才能够提供控制器软件(可以加到机床仿真器软件)的插件版本,而西门子就是其中一个。西门子的Sinumerik 840D控制器把基于PC的软件作为其标准构造的一部分。西门子自动化和驱动集团(A&D)旗下机构Siemens PLM Software已经采用了该软件,在其NXTMCAM系统内提供基于CAM的控制器驱动仿真。另外,西门子和Siemens PLM Software已经与一些机床制造商携手开发最完整的独立车间机床仿真器,将其作为某些机床的附件选项。不仅如此,还提供了控制器的人机界面以提高仿真器的真实感和价值。
NX CAM工具
针对多功能机床一类的先进机床,Siemens PLM Software可以提供完整的“机床支持工具箱”,这些工具不仅仅包括后处理器,而且还包括机床的3D实体装配模型、G代码仿真驱动器、标准的加工作业模板、零件样品以及文件。对于使用西门子Sinumerik 840D 控制器的机床,还可以选择增加控制器驱动的功能。
一个 CAM 软件包里面可能有看起来很酷的3D仿真,让3D模型上有金属质感和光泽反射的外表。不过,更重要的是在计算机屏幕上的数字世界里面看到的东西是否与按下实际机床上的启动按钮后真正发生加工过程相同。
为了提供最佳结果,大多数先进机床可能需要在CAM系统的内部机床仿真器里面安装一个G代码驱动器。为了使机床投资价值最大化,可以采用“控制器驱动的仿真”,安装在CAM系统用于执行编程任务,也可以安装在车间里的一个独立机床仿真器内用于最终实现虚拟功效。