已不用这种方法。
2) 编译实现。与逐行解释的不同在于这种方法是以整个加工程序为单位进
行检错和编译动作的。这种方式需要较大的内存且编译和加工存在时间间隔,但
它克服了逐行解释的时候只能执行顺序动作的弱点,借助于现在数控系统日益强
大的 CPU 和内存,这种方法也很好地规避了自己的弱点。现在的 NC 编译器大多
采用这种设计逻辑。
总的来说, NC代码编译器技术已发展得比较成熟。在 2000年之后的几年里,
各类工程师在软件的框架结构,可视化的实现和编译算法方面都做了大量的研
究。也由于编译器技术的成熟,最近几年 NC 编译器的研究工作已不多见,工程
师们更注重软件的交互性和功能的完善,而编译技术并无革命性的进展。 1.4 国内外研究现状
为提高 NC 代码编译效率,采用高级编程语言,用面向对象的思想开发 NC
编译软件是未来NC系统编译技术发展方向。国内外对此都作了许多研究工作。
1.4.1 国外的研究现状
在数控仿真领域,美国Machine Works公司有极其强大的实力,它开发了功
能强大的同名通用机械加工仿真软件,该软件能计算数控加工周期。它可以将特
定的数控程序段格式,也就是通常意义上的 G 代码转换成一种通用文件或其它
用户需要的数据格式,并进行词法、语法方面的检查。它可以实现多轴的三文加
工仿真,包括多轴铣削、车削和线切割加工仿真。Machine Works包含了 100多
个数控系统,这使得该软件的编译功能非常全面,可以解释每个 NC 代码的含义
并提取它的信息,然后在仿真模块显示出来。用户可以根据自身需要对代码进行
检错、编译,还可以进行多个系统间代码格式的转换,自由度非常高 [8]。
成立于 1974 年的美国数字控制科学公司(NCCS)是美国西部最大的数控
服务中心,它的业务非常广泛,涵盖了从代码撰写,三文建模,代码检错,加工
过程仿真在内的一条龙服务。它开发的三个软件:NCL,IPV和PostWorks 提供
了整套多轴联动加工的解决方案。其多轴加工软件 PostWorks与Machine Works
功能大同小异,也是是一个功能强大的通用 NC 代码处理软件。不过其仿真的侧
重点不同,值得一提的是它可以仿真多轴激光加工的过程 [9]
。 日本的数控系统研究水平也处于世界前列。日本 Aikoku Alpha 公司开发的
Super Verify 是该领域的代表软件。与前面介绍的两款通用编译器不同,它是一
个专门进行代码检查的软件。它的特点是适用范围广,通用性好,内置了很多知
名厂家的数控系统,而且可以兼容车削、铣削等多轴联动的加工形式,并且可以
支持宏/子程序功能 [10]。
1.4.2 国内的研究现状
国内在数控代码编译器方面的成果也很丰富,我国已有几家高等院校如清华
大学、华中科技大学、合肥工业大学、华侨大学和西南交通大学[11,12,13]
等都实现了针对单一NC 系统的代码编译器,目前应用情况良好。其中清华大学和华中科
技大学的研究成果最有代表性。
清华大学开发了一个简单的 NC 代码翻译器, 该软件仅有翻译和检查两个功
能,与先前介绍的Super Verify功能差不多。但是没有集成大量的数控系统,所
以通用性稍差。检查阶段包括了数控代码的文法检查和逻辑检查,若通过代码检
错,则进入翻译阶段。软件会提取相关加工信息,包括机床的位移信息和状态信
息,并根据这些信息计算出加工时间 [14] 基于正则表达式的NC程序编译器设计与开发(4):http://www.751com.cn/zidonghua/lunwen_18775.html