一种基于解释型语言的加工工艺编程方法与装置与流程
未命名
10-08
阅读:142
评论:0

1.本技术涉及计算机编程技术领域,具体是一种基于解释型语言的加工工艺编程方法与装置。
背景技术:
2.g代码是数控程序中的指令,可以实现快速定位、插补等运动。传统的加工工艺编程方法使用cnc宏程序语言,cnc宏程序语言中可以编写g代码,可以使用一些以“#”号加数字组成的变量(比如:#100),也可以编写简单的条件语句、循环和跳转语句。但是,使用传统的cnc宏程序语言编写加工程序有以下缺点:
3.a.以“#”号加数字作为变量,含义不直观;
4.b.使用跳转语句使得程序逻辑不清晰;
5.c.难以模块化,代码复用性低,开发效率低。
6.因此,需要一种新的加工工艺编程技术来提高编程效率和质量。
技术实现要素:
7.本技术的目的在于提供一种基于解释型语言的加工工艺编程方法与装置,以提高编程效率和质量。
8.为实现上述目的,本技术公开了以下技术方案:
9.第一方面,本技术公开了一种基于解释型语言的加工工艺编程方法,该方法包括以下步骤:
10.步骤a:打开待执行的程序文件;
11.步骤b:判断是否已到所述程序文件的尾部,若已到所述程序文件的尾部时,解释结束,否则执行步骤c;
12.步骤c:从所述程序文件中读取一个语句;
13.步骤d:对读取到的所述语句进行语法分析和语义分析,得到抽象语法树,并检查语法和语义是否存在错误,若存在错误则报错并结束,否则执行步骤e;
14.步骤e:判断所述语句是否为g代码,若该语句是g代码,则将该语句发送至cnc系统进行执行,否则在解释器内部进行计算;
15.步骤f:重复执行所述步骤b,直到所述程序文件执行完成或出现语法和语义错误时结束。
16.在一种实施方式中,在所述步骤c中,所述语句包括复合语句。
17.在一种实施方式中,所述复合语句包括条件判断语句、循环语句。
18.第二方面,本技术公开了一种基于解释型语言的加工工艺编程装置,包括:ide和cnc系统;
19.所述ide配置为进行程序文件的编写,还配置为将编写完成的所述程序文件发送至所述cnc系统;
20.所述cnc系统配置为对所述程序文件进行分析和解释,其包括解释器。
21.在一种实施方式中,所述解释器的工作流程包括权利要求1-3中任意一项所述的基于解释型语言的加工工艺编程方法。
22.在一种实施方式中,所述cnc系统还包括共享内存模块,所述共享内存模块配置为使所述解释器与其他模块进行数据交互。
23.在一种实施方式中,所述cnc系统通过总线连接有外部设备连接。
24.在一种实施方式中,所述总线至少包括数据总线和地址总线。
25.有益效果:本技术的基于解释型语言的加工工艺编程方法与装置,是一种兼容g代码的解释型编程语言,既可以执行由机器生成的g代码加工程序文件,也可以执行手工编写的加工程序文件。条件判断语句、循环语句的调用以及函数封装让程序逻辑更清晰,同时,模块封装特性则提高了代码复用性,进而提高了编程效率。
附图说明
26.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅是本技术的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
27.图1为本技术实施例中基于解释型语言的加工工艺编程方法的流程框图;
28.图2为本技术实施例中基于解释型语言的加工工艺编程装置的结构框图。
具体实施方式
29.下面将对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
30.在本文中,术语“包括”意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
31.本实施例在第一方面公开了如图1所示的一种基于解释型语言的加工工艺编程方法,该方法包括以下步骤:
32.步骤a:打开待执行的程序文件;
33.步骤b:判断是否已到所述程序文件的尾部,若已到所述程序文件的尾部时,解释结束,否则执行步骤c;
34.步骤c:从所述程序文件中读取一个语句,该语句可以但不限于是复合语句,这些复合语句可以是条件判断语句、循环语句等;
35.步骤d:对读取到的所述语句进行语法分析和语义分析,得到抽象语法树,并检查语法和语义是否存在错误,若存在错误则报错并结束,否则执行步骤e;
36.步骤e:判断所述语句是否为g代码,若该语句是g代码,则将该语句发送至cnc系统进行执行,否则在解释器内部进行计算;
37.步骤f:重复执行所述步骤b,直到所述程序文件执行完成或出现语法和语义错误时结束。
38.基于上述,本实施例提供了一种兼容g代码的解释型编程语言,既可以执行由机器生成的g代码加工程序文件,也可以执行手工编写的加工程序文件。在上述的技术内容中,使用到的解释性语言采用中文命名,解决了宏程序代码可读性差的问题。同时,条件判断语句、循环语句的调用以及函数封装让程序逻辑更清晰,且模块封装特性则提高了代码复用性,进而提高了编程效率。
39.在第二方面,本实施例公开了如图2所示的一种基于解释型语言的加工工艺编程装置,包括ide和cnc系统。
40.具体的:所述ide配置为进行程序文件的编写,还配置为将编写完成的所述程序文件发送至所述cnc系统;所述cnc系统配置为对所述程序文件进行分析和解释,其包括解释器。
41.在本实施例中,该解释器的工作方法包括:
42.步骤a:打开待执行的程序文件;
43.步骤b:判断是否已到所述程序文件的尾部,若已到所述程序文件的尾部时,解释结束,否则执行步骤c;
44.步骤c:从所述程序文件中读取一个语句,该语句可以但不限于是复合语句,这些复合语句可以是条件判断语句、循环语句等;
45.步骤d:对读取到的所述语句进行语法分析和语义分析,得到抽象语法树,并检查语法和语义是否存在错误,若存在错误则报错并结束,否则执行步骤e;
46.步骤e:判断所述语句是否为g代码,若该语句是g代码,则将该语句发送至cnc系统进行执行,否则在解释器内部进行计算;
47.步骤f:重复执行所述步骤b,直到所述程序文件执行完成或出现语法和语义错误时结束。
48.进一步地,所述cnc系统还包括共享内存模块,所述共享内存模块配置为使所述解释器与其他模块(这里的其他模块指的是cnc系统中的除解释器和共享内存之外的模块,如计数模块、定时模块、电源模块等等)进行数据交互。
49.在本实施例中,所述cnc系统通过总线连接有外部设备连接,所述总线至少包括数据总线和地址总线。数据总线用于将cnc系统中的数据传输到外部设备,还用于将外部设备的数据回传至cnc系统中,从而还可以实现对指令运行结果的接收,为后续语言的改进提供数据基础。可以理解的是,数据总线的位数是微型计算机的一个重要指标,通常与微处理的字长相一致。地址总线是一种计算机总线,用于使外部设备沟通cnc系统的共享内存模块的物理地址,其是专门用来传送地址的,并且,由于地址只能从cnc系统传向外部设备,所以使用的地址总线是单向三态的。
50.在本技术所提供的实施例中,应该理解到,可以以硬件、软件、固件、中间件、代码或其任何恰当组合来实现这里描述的实施例。对于硬件实现,处理器可以在一个或多个下列单元中实现:专用集成电路(asic)、数字信号处理器(dsp)、数字信号处理设备(dspd)、可
编程逻辑器件(pld)、现场可编程门阵列(fpga)、处理器、控制器、微控制器、微处理器、设计用于实现这里所描述功能的其他电子单元或其组合。对于软件实现,实施例的部分或全部流程可以通过计算机程序来指令相关的硬件来完成。实现时,可以将上述程序存储在计算机可读介质中或作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是计算机能够存取的任何可用介质。计算机可读介质可以包括但不限于ram、rom、eeprom、cd-rom或其他光盘存储、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质。
51.最后应说明的是:以上所述仅为本技术的优选实施例而已,并不用于限制本技术,尽管参照前述实施例对本技术进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换,凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。
技术特征:
1.一种基于解释型语言的加工工艺编程方法,其特征在于,该方法包括以下步骤:步骤a:打开待执行的程序文件;步骤b:判断是否已到所述程序文件的尾部,若已到所述程序文件的尾部时,解释结束,否则执行步骤c;步骤c:从所述程序文件中读取一个语句;步骤d:对读取到的所述语句进行语法分析和语义分析,得到抽象语法树,并检查语法和语义是否存在错误,若存在错误则报错并结束,否则执行步骤e;步骤e:判断所述语句是否为g代码,若该语句是g代码,则将该语句发送至cnc系统进行执行,否则在解释器内部进行计算;步骤f:重复执行所述步骤b,直到所述程序文件执行完成或出现语法和语义错误时结束。2.根据权利要求1所述的基于解释型语言的加工工艺编程方法,其特征在于,在所述步骤c中,所述语句包括复合语句。3.根据权利要求2所述的基于解释型语言的加工工艺编程方法,其特征在于,所述复合语句包括条件判断语句、循环语句。4.一种基于解释型语言的加工工艺编程装置,其特征在于,包括:ide和cnc系统;所述ide配置为进行程序文件的编写,还配置为将编写完成的所述程序文件发送至所述cnc系统;所述cnc系统配置为对所述程序文件进行分析和解释,其包括解释器。5.根据权利要求4所述的基于解释型语言的加工工艺编程装置,其特征在于,所述解释器的工作流程包括权利要求1-3中任意一项所述的基于解释型语言的加工工艺编程方法。6.根据权利要求4所述的基于解释型语言的加工工艺编程装置,其特征在于,所述cnc系统还包括共享内存模块,所述共享内存模块配置为使所述解释器与其他模块进行数据交互。7.根据权利要求4所述的基于解释型语言的加工工艺编程装置,其特征在于,所述cnc系统通过总线连接有外部设备连接。8.根据权利要求7所述的基于解释型语言的加工工艺编程装置,其特征在于,所述总线至少包括数据总线和地址总线。
技术总结
本申请涉及计算机编程技术领域,公开了一种基于解释型语言的加工工艺编程方法与装置,该方法包括步骤a:打开待执行的程序文件;步骤b:判断是否已到程序文件的尾部,若已到程序文件的尾部时,解释结束,否则执行步骤c;步骤c:从程序文件中读取一个语句;步骤d:对读取到的语句进行语法分析和语义分析,得到抽象语法树,并检查语法和语义是否存在错误,若存在错误则报错并结束,否则执行步骤e;步骤e:判断语句是否为G代码,若该语句是G代码,则将该语句发送至CNC系统进行执行,否则在解释器内部进行计算;步骤f:重复执行步骤b,直到程序文件执行完成或出现语法和语义错误时结束。该装置应用到前述的方法。本申请提高了编程效率和质量。量。量。
技术研发人员:金昌 袁会强 宋恒 马鹏程
受保护的技术使用者:广州亿达科技有限公司
技术研发日:2023.06.30
技术公布日:2023/10/5
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/