一种将中文程序转化为G代码的方法和装置与流程

文档序号:25541297发布日期:2021-06-18 20:37阅读:399来源:国知局
一种将中文程序转化为G代码的方法和装置与流程
本申请属于数字控制
技术领域
,具体涉及一种将中文程序转化为g代码的方法和装置。
背景技术
:数控机床包括数控车床、数控铣床、车铣复合机、数控加工中心等数控设备,是一类高精度、高效率的机加工设备,配备多工位刀塔或刀架,可以根据加工程序对多种类型的产品进行加工。目前,数控机床广泛采用nc程序(numericalcontrol,nc程序,数字控制程序)作为加工程序,nc程序也称为g代码,g代码(g-code,又称rs-274),是一种以指令字符和数值文本组合的形式构成的数控编程语言,也是应用最为广泛的数控(numericalcontrol)编程语言,已经存在多个版本的g代码,g代码主要用于控制自动机床。g代码中包含数控程序指令,一般都称为g指令,使用g代码可以控制数控机床实现快速定位、逆圆插补、顺圆插补、中间点圆弧插补、半径编程、跳转加工等操作。随着数控机床技术的进一步发展,数控机床的可加工范围不断拓宽,相应的g代码编程也变得越来越复杂,并且由于目前g代码存在多个版本,在各版本的g代码中,有一些g指令名称相同,但表达的含义不同甚至相反,操作者在进行g代码编程时经常会出现混淆的情况,为了避免这种情况,企业需要不断地对操作者进行g代码知识培训和更新,这给企业带来过高的培训成本。同时对于刚接触数控机床的操作者来说,企业需要对其进行系统的g代码培训,使其掌握g代码编程能力,才可以进行数控机床的操作,因此采用g代码编程存在入门门槛高的问题。技术实现要素:为了解决目前在对数控机床进行操作时,采用g代码编程存在入门门槛高,需要操作者掌握g代码编程能力,对于不具备g代码编程能力的操作者很难进行数控机床操作的问题,根据第一方面,本申请实施例公开了将中文程序转化为g代码的方法,包括:获取从用户终端输入的中文程序;对中文程序进行分词处理,得到中文文本和数值文本;将中文文本输入到预先设定好的代码转换模型中,查询与中文文本对应的g代码指令字符;获取从用户终端输入的中文程序;对中文程序进行分词处理,得到中文文本和数值文本;将中文文本输入到预先设定好的代码转换模型中,查询与中文文本对应的g代码指令字符;获取中文文本对应的g代码指令字符,将中文文本对应的g代码指令字符与数值文本进行组合,形成中文程序对应的g代码。进一步地,在对中文程序进行分词处理,得到中文文本和数值文本之前,还包括:识别中文程序,判断中文程序是否存在分隔符,其中,分隔符用于对中文程序的子程序进行分隔;若存在,则根据分隔符,将中文程序划分成若干个中文子程序;对中文程序进行分词处理,得到中文文本和数值文本的步骤为:对若干个中文子程序分别进行分词处理,得到每一个中文子程序的中文文本和数值文本。进一步地,对中文程序进行分词处理,得到中文文本和数值文本之后包括:判断数值文本是否为空值;若数值文本不为空值,则在中文文本和数值文本之间建立匹配标识;根据匹配标识,对中文文本和数值文本进行关联。进一步地,将中文文本输入到预先设定好的代码转换模型中,查询与中文文本对应的g代码指令字符具体包括:提取中文文本中的中文关键字;对提取的中文关键字进行标准化处理;将标准化处理后的中文关键字输入到预先设定好的代码转换模型中,查询与标准化处理后的中文关键字对应的g代码指令字符。进一步地,将标准化处理后的中文关键字输入到预先设定好的代码转换模型中,查询与标准化处理后的中文关键字对应的g代码指令字符具体包括:判断预先设定好的代码转换模型中是否存在标准化处理后的中文关键字对应的代码转换模板;若存在,则根据代码转换模板,查询与标准化处理后的中文关键字对应的g代码指令字符;若不存在,则生成代码转换失败的提示信息;将代码转换失败的提示信息输出到用户终端的显示界面。进一步地,获取中文文本对应的g代码指令字符,将中文文本对应的g代码指令字符与数值文本进行组合,形成中文程序对应的g代码具体包括:获取中文关键字对应的g代码指令字符;根据匹配标识,查找与g代码指令字符对应的数值文本;将g代码指令字符和g代码指令字符对应的数值文本进行组合,形成中文子程序对应的g代码;获取若干个中文子程序对应的g代码,将若干个中文子程序对应的g代码进行组合,形成中文程序对应的g代码。进一步地,在获取若干个中文子程序对应的g代码,将若干个中文子程序对应的g代码进行组合,形成中文程序对应的g代码之后,将中文程序转化为g代码的方法还包括:判断中文程序对应的g代码是否存在语法错误;若存在,则生成代码存在语法错误的提示信息;若不存在,则将中文程序对应的g代码加载到内部存储器中,并生成代码转换成功的提示信息。根据第二方面,本申请实施例提供了一种将中文程序转化为g代码的装置,包括:获取模块,用于获取从用户终端输入的中文程序;分词模块,用于对中文程序进行分词处理,得到中文文本和数值文本;查询模块,用于将中文文本输入到预先设定好的代码转换模型中,查询与中文文本对应的g代码指令字符;组合模块,用于获取中文文本对应的g代码指令字符,将中文文本对应的g代码指令字符与数值文本进行组合,形成中文程序对应的g代码。根据第三方面,为了解决上述技术问题,本申请实施例还提供一种计算机设备,采用了如下所述的技术方案:一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,处理器执行计算机程序时实现如上述第一方面中任一项的将中文程序转化为g代码的方法的步骤。根据第四方面,为了解决上述技术问题,本申请实施例还提供一种计算机可读存储介质,采用了如下所述的技术方案:一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述第一方面中任一项的将中文程序转化为g代码的方法的步骤。本申请的有益效果在于:本申请公开了一种将中文程序转化为g代码的方法和装置,属于数字控制
技术领域
,所述方法包括:获取从用户终端输入的中文程序;对中文程序进行分词处理,得到中文文本和数值文本;将中文文本输入到预先设定好的代码转换模型中,查询与中文文本对应的g代码指令字符;获取中文文本对应的g代码指令字符,将中文文本对应的g代码指令字符与数值文本进行组合,形成中文程序对应的g代码。通过对中文程序进行分词处理,得到中文文本和数值文本,将中文文本输入到预先设定好的代码转换模型中进行查找,得到与中文文本对应的g代码指令字符,通过将g代码指令字符和数值文本进行组合,形成中文程序对应的g代码,实现了中文程序和g代码之间的自动转换,提高了数控机床领域的编程速度,同时降低了数控机床编程操作的入门门槛,使得不具备g代码基础的操作者也可以对数控机床进行操作或者编程。附图说明为了更清楚地说明本申请具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施方式,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本申请实施例的一种将中文程序转化为g代码的方法的实现流程图;图2为本申请实施例的方法中在中文文本和数值文本之间进行关联的具体实现流程图;图3为图1中步骤s103的一种具体实现流程图;图4为本申请实施例的一种将中文程序转化为g代码的装置的结构示意图;图5为根据本申请的计算机设备的一个实施例的结构示意图。具体实施方式除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的
技术领域
的技术人员通常理解的含义相同;本文中在申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请;本申请的说明书和权利要求书及上述附图说明中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。本申请的说明书和权利要求书或上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。为了使本
技术领域
的人员更好地理解本申请方案,下面将结合附图,对本申请实施例中的技术方案进行清楚、完整地描述。本申请公开了一种将中文程序转化为g代码的方法和装置,属于数字控制
技术领域
,所述方法包括:获取从用户终端输入的中文程序;对中文程序进行分词处理,得到中文文本和数值文本;将中文文本输入到预先设定好的代码转换模型中,查询与中文文本对应的g代码指令字符;获取中文文本对应的g代码指令字符,将中文文本对应的g代码指令字符与数值文本进行组合,形成中文程序对应的g代码。本申请公开的将中文程序转化为g代码的方法实现了中文程序和g代码之间的自动转换,提高了数控机床领域的编程速度,同时降低了数控机床编程操作的入门门槛,使得不具备g代码基础的操作者也可以对数控机床进行操作或者编程。以下对本申请的实施例作进一步的描述:实施例一本申请实施例公开了一种将中文程序转化为g代码的方法,请参照图1,图1示出了本申请实施例的一种将中文程序转化为g代码的方法的实现流程图,该将中文程序转化为g代码的方法包括:s101,获取从用户终端输入的中文程序;具体的,当用户通过用户终端输入的中文程序后,直接从用户终端中获取用户输入的中文程序。s102,对中文程序进行分词处理,得到中文文本和数值文本;其中,中文程序包括中文文本和数值文本部,在将中文程序转换为g代码之前需要对中文程序进行分词处理,将分词处理得到的中文文本转化为g代码指令字符,而数值文本文本则不需要进行转换。g代码是一种以指令字符和数值文本组合的形式构成的数控编程语言,g代码的指令字符通常指的是g代码指令中的字母字符部分,而数值文本将作为数值字符部分。具体的,对步骤s101中文程序进行分词处理,得到中文文本和数值文本。s103,将中文文本输入到预先设定好的代码转换模型中,查询与中文文本对应的g代码指令字符;其中,预先设定好的代码转换模型指的是开发人员在系统开发时就已经设定好的代码转换模型,代码转换模型内包括若干个代码转换模板,代码转换模板用于将中文文本和中文文本对应的g代码指令字符联系起来,代码转换模板也是由开发人员根据数控机床加工的实际需求来设定。在代码转换模型中,直接利用代码转换模板快速查询中文文本对应的g代码指令字符。需要说明的是,代码转换模型中的每一种特定的中文文本都对应着一种g代码指令字符,而每一种特定的中文文本和其对应的g代码指令字符共同构成一个代码转换模板。例如,在本申请一种具体的实施例中,中文程序“定位、定位点”对应的g代码指令字符形式为“g00x数值字符,y数值字符,z数值字符”,其中,“g00”表示该指令为定位,“x数值字符,y数值字符,z数值字符”表示定位点的具体坐标,定位和定位点之间用空格符隔开,以形成标准的g代码指令,数值字符部分可将步骤s102中得到的数值文本直接填入,最终形成完整的g代码指令。具体的,将步骤s102中得到的中文文本输入到预先设定好的代码转换模型中,利用代码转换模板查询与该中文文本对应的g代码指令字符。s104,获取中文文本对应的g代码指令字符,将中文文本对应的g代码指令字符和数值文本进行组合,形成中文程序对应的g代码。具体的,在步骤s103中利用代码转换模板查询查询到与该中文文本对应的g代码指令字符后,获取该中文文本对应的g代码指令字符,并将该中文文本对应的g代码指令字符和步骤s102中得到的数值文本进行组合,形成中文程序对应的g代码。本申请公开了一种将中文程序转化为g代码的方法通过对中文程序进行分词处理,得到中文文本和数值文本,将中文文本输入到预先设定好的代码转换模型中进行查找,得到与中文文本对应的g代码指令字符,通过将g代码指令字符和数值文本进行组合,形成中文程序对应的g代码,实现了中文程序和g代码之间的自动转换,提高了数控机床领域的编程速度,同时降低了数控机床编程操作的入门门槛,使得不具备g代码基础的操作者也可以对数控机床进行操作或者编程。在本实施例的一些可选的实现方式中,在步骤s102对中文程序进行分词处理,得到中文文本和数值文本之前,该将中文程序转化为g代码的方法还包括:识别中文程序,判断中文程序是否存在分隔符,其中,分隔符用于对中文程序的子程序进行分隔;若存在,则根据分隔符,将中文程序划分成若干个中文子程序;对中文程序进行分词处理,得到中文文本和数值文本的步骤为:对若干个中文子程序分别进行分词处理,得到每一个中文子程序的中文文本和数值文本。其中,用户输入的中文程序可以由多个中文子程序组合而成,这些中文子程序通过分隔符进行分隔,分隔符可由用户输入中文程序时,根据需求进行输入。具体的,识别用户输入的中文程序,判断中文程序是否存在分隔符,若中文程序中存在分隔符,则根据分隔符,将中文程序划分成若干个中文子程序;若中文程序中不存在分隔符,则确定所述中文程序只包含一条中文子程序。在上述实施例中,识别中文程序,判断中文程序是否存在分隔符,其中,分隔符用于对中文程序的子程序进行分隔;若存在,则根据分隔符,将中文程序划分成若干个中文子程序。通过分隔符将中文程序划分成若干个中文子程序,然后在分别对划分出来的中文子程序进行处理,简化处理操作,可以提高代码转换处理的效率。在本实施例的一些可选的实现方式中,请参照图2,图2示出了本申请实施例的方法中在中文文本和数值文本之间进行关联的具体实现流程图,步骤s102对中文程序进行分词处理,得到中文文本和数值文本之后,所述方法还包括:s121,判断数值文本是否为空值;s122,若数值文本不为空值,则在中文文本和数值文本之间建立匹配标识;s123,根据匹配标识,对中文文本和数值文本进行关联。其中,匹配标识用于中文文本和数值文本进行关联,利用匹配标识关联后的中文文本和数值文本。中文文本和数值文本关联后,可以利用匹配标识查找中文文本对应的数值文本,在中文文本转化为对应的g代码指令字符后,g代码指令字符与数值文本也通过匹配标识进行关联,利用匹配标识查找g代码指令字符对应的数值文本。具体的,骤s102对中文程序进行分词处理,得到中文文本和数值文本之后,判断得到的数值文本是否为空值,若得到的数值文本不为空值,则在中文文本和数值文本之间建立匹配标识,并根据匹配标识,对中文文本和数值文本进行关联。若得到的数值文本为空值,则不需要在中文文本和数值文本之间建立匹配标识。在本申请一种具体的实施例中,中文程序“定位、定位点(100,10,10)”中的“、”为中文文本的分隔符,根据分隔符先划分中文程序“定位、定位点(100,10,10)”,得到第一中文子程序“定位”和第二中文子程序“定位点(100,10,10)”。对第一中文子程序进行分词处理,得到第一中文文本“定位”和第一数值文本,对第二中文子程序进行分词处理,得到第二中文文本“定位点”和第二数值文本“(100,10,10)”,判断数值文本是否为空值,其中,第一数值文本为空值,因此不需要在第一中文文本和第一数值文本之间建立匹配标识;第二数值文本不为空值,因此在第二中文文本“定位点”和数值文本“(100,10,10)”之间建立匹配标识,并通过匹配标识将数值文本“(100,10,10)”与第二中文文本“定位点”进行关联。在上述实施例中,判断得到的数值文本是否为空值,来确定是否在中文文本和数值文本之间建立匹配标识,有效地减小了处理器的负担,提高了代码转换的效率。通过在中文文本和数值文本之间建立匹配标识,将中文文本和数值文本关联起来,使得在将中文文本转化为g代码指令字符过程中不会出现数据丢失,也有利于在完成中文文本转化为g代码指令字符后,查找g代码指令字符对应的数值文本,提高了g代码指令字符和g代码指令字符对应的数值文本组合准确率和组合效率。在本实施例的一些可选的实现方式中,步骤s103将中文文本输入到预先设定好的代码转换模型中,查询与中文文本对应的g代码指令字符具体包括:提取中文文本中的中文关键字;其中,预先设定好的代码转换模型中包括中文关键字提取单元,通过直接将中文文本输入到中文关键字提取单元中,提取中文文本中的中文关键字。具体的,在将中文文本输入到预先设定好的代码转换模型中后,通过中文关键字提取单元在中文文本中提取中文关键词。在本申请一种具体的实施例中,中文关键字提取单元可以预先设定,中文关键字提取单元包括提取模板,根据预先设定的提取模板在中文文本中提取中文关键字。例如,一种中文关键字提取模板“正+转”,利用该提取模板进行中文关键字提取,中文文本中的关键字“正”和“转”均会被提取出来,而其他关键字则被忽略,如采用该提取模板分别对中文程序“正转”、中文程序“正向转动”进行中文关键词提取,最终结果均为中文关键字均为“正转”。对提取的中文关键字进行标准化处理;其中,预先设定好的代码转换模型中包括标准化处理单元,通过直接将提取中文关键字输入到标准化处理单元,得到标准化处理后的中文关键字。具体的,将提取到的中文关键字输入到标准化处理单元进行标准化处理。将标准化处理后的中文关键字输入到预先设定好的代码转换模型中,查询与标准化处理后的中文关键字对应的g代码指令字符。在上述实施例中,通过提取中文文本中的中文关键字;对提取的中文关键字进行标准化处理;将标准化处理后的中文关键字输入到预先设定好的代码转换模型中,查询与标准化处理后的中文关键字对应的g代码指令字符,可以根据用户输入的中文程序,提取中文程序中的关键字,根据关键字查找g代码指令字符,避免了因为用户编写中文程序的习惯不同,而造成的程序转化失败。在本实施例的一些可选的实现方式中,请参照图3,图3示出了图1中步骤s103的一种具体实现流程图,将标准化处理后的中文关键字输入到预先设定好的代码转换模型中,查询与标准化处理后的中文关键字对应的g代码指令字符具体包括:s131,判断预先设定好的代码转换模型中是否存在标准化处理后的中文关键字对应的代码转换模板;其中,代码转换模型内包括预先设置好的若干个代码转换模板,代码转换模板用于实现中文关键字和中文关键字对应的g代码指令字符一一对应,代码转换模板由开发人员根据数控机床加工的实际需求来开发设定,在代码转换模型中,利用代码转换模板可以快速查询中文关键字对应的g代码指令字符。需要说明的是,代码转换模板包括目标关键字和目标关键字对应的g代码指令字符,每一个目标关键字对应一个g代码指令字符。具体的,标准化处理后的中文关键字输入到预先设定好的代码转换模型后,将标准化处理后的中文关键字与所有代码转换模板的目标关键字一一进行比对,根据标准化处理后的中文关键字的特征与所有代码转换模板的目标关键字的特征,判断预先设定好的代码转换模型中是否存在标准化处理后的中文关键字对应的代码转换模板。s132,若存在,则根据代码转换模板,查询与标准化处理后的中文关键字对应的g代码指令字符;s133,若不存在,则生成代码转换失败的提示信息;具体的,将标准化处理后的中文关键字与所有代码转换模板的目标关键字一一进行比对,若存在与标准化处理后的中文关键字的特征一致的代码转换模板的目标关键字的特征,则判定预先设定好的代码转换模型中存在标准化处理后的中文关键字对应的代码转换模板,根据代码转换模板,查询与标准化处理后的中文关键字对应的g代码指令字符;若不存在与标准化处理后的中文关键字的特征一致的代码转换模板的目标关键字的特征,则判定预先设定好的代码转换模型中不存在标准化处理后的中文关键字对应的代码转换模板,生成代码转换失败的提示信息。s134,将代码转换失败的提示信息输出到用户终端的显示界面。具体的,在步骤s133生成代码转换失败的提示信息后,将该代码转换失败的提示信息输出到用户终端的显示界面,供用户查看。在上述实施例中,通过判断预先设定好的代码转换模型中是否存在标准化处理后的中文关键字对应的代码转换模板;若存在,则根据代码转换模板,查询与标准化处理后的中文关键字对应的g代码指令字符;若不存在,则生成代码转换失败的提示信息;将代码转换失败的提示信息输出到用户终端的显示界面。通过上述步骤,提高了将中文文本转化为g代码指令字符准确率。在本实施例的一些可选的实现方式中,步骤s104获取中文文本对应的g代码指令字符,将中文文本对应的g代码指令字符与数值文本进行组合,形成中文程序对应的g代码具体包括:获取中文关键字对应的g代码指令字符;具体的,在查询到标准化处理后的中文关键字对应的g代码指令字符之后,获取该标准化处理后的中文关键字对应的g代码指令字符。根据匹配标识,查找与g代码指令字符对应的数值文本;具体的,根据建立的匹配标识,查找与该标准化处理后的中文关键字对应的g代码指令字符所对应的数值文本。需要说明的是,在利用匹配标识将中文文本和数值文本关联后,从中文文本中提取的中文关键字也带有匹配标识,将带有匹配标识的中文关键字转化为g代码指令字符,对应的g代码指令字符与数值文本也通过匹配标识进行关联,可以利用匹配标识查找g代码指令字符对应的数值文本。将g代码指令字符和g代码指令字符对应的数值文本进行组合,形成中文子程序对应的g代码;具体的,将标准化处理后的中文关键字对应的g代码指令字符和查找到的数值文本进行组合,形成中文子程序对应的g代码。获取若干个中文子程序对应的g代码,将若干个中文子程序对应的g代码进行组合,形成中文程序对应的g代码。在上述实施例中,获取中文关键字对应的g代码指令字符,根据匹配标识,查找与g代码指令字符对应的数值文本;将g代码指令字符和g代码指令字符对应的数值文本进行组合,形成中文子程序对应的g代码;获取若干个中文子程序对应的g代码,将若干个中文子程序对应的g代码进行组合,形成中文程序对应的g代码。通过上述方案将g代码指令字符和g代码指令字符对应的数值文本进行组合,以形成中文程序对应的g代码。在本实施例的一些可选的实现方式中,在步骤s104在获取若干个中文子程序对应的g代码,将若干个中文子程序对应的g代码进行组合,形成中文程序对应的g代码之后,该将中文程序转化为g代码的方法还包括:判断中文程序对应的g代码是否存在语法错误;其中,预先设定好的代码转换模型中包括g代码语法检查单元,g代码语法检查单元中存储有g代码的标准编码规则,可以利用g代码的标准编码规则对输入的g代码的语法进行检测。具体的,将中文程序对应的g代码直接输入g代码语法检查单元,检测输入中文程序对应的g代码的编码是否存在语法错误。若存在,则生成代码存在语法错误的提示信息;具体的,如果g代码语法检查单元检测到输入的中文程序对应的g代码的编码存在语法错误,则生成代码存在语法错误的提示信息,将语法错误的提示信息输出到用户终端的显示界面,提示用户输入的中文程序存在错误,请用户重新输入。若不存在,则将中文程序对应的g代码加载到内部存储器中,并生成代码转换成功的提示信息。具体的,如果g代码语法检查单元检测到输入的中文程序对应的g代码的编码不存在语法错误,将中文程序对应的g代码加载到内部存储器后,并生成代码转换成功的提示信息。将代码转换成功的提示信息输出到用户终端的显示界面。具体的,在生成代码转换成功的提示信息后,将代码转换成功的提示信息到用户终端的显示界面。在上述实施例中,检测输入中文程序对应的g代码的编码是否存在语法错误,来判断用户在输入中文程序时是否出现输入错误的情况,如果出现输入错误,则提示用户重新输入,通过将不存在语法错误的g代码加载到内部存储器,便于系统的后续调用,在将g代码加载到内部存储器后,生成代码转换成功的提示信息,并将该代码转换成功的提示信息输出到用户终端的显示界面,供用户查看。在本实施例的一些可选的实现方式中,在获取若干个中文子程序对应的g代码,将若干个中文子程序对应的g代码进行组合,形成中文程序对应的g代码之前,该将中文程序转化为g代码的方法还包括:判断中文子程序对应的g代码是否存在语法错误;具体的,在判断中文程序对应的g代码是否存在语法错误之前,先将中文子程序对应的g代码输入到预先设定好的代码转换模型中的g代码语法检查单元进行语法检测,根据g代码语法检查单元中的g代码的标准编码规则检测中文子程序对应的g代码是否存在语法错误。若存在,则生成子程序语法错误的提示信息;具体的,在进行中文子程序对应的g代码组合之前,对需要组合的中文子程序对应的g代码进行语法检测,将需要组合的中文子程序对应的g代码逐个输入到g代码语法检查单元进行语法检测,如果存在中文子程序对应的g代码出现语法错误,则生成子程序语法错误的提示信息,将子程序语法错误的提示信息输出到用户终端的显示界面,提示用户输入的中文程序存在错误,请用户重新输入。若不存在,获取若干个中文子程序对应的g代码,将若干个中文子程序对应的g代码进行组合。在上述实施例中,通过判断中文子程序对应的g代码是否存在语法错误,先检测中文子程序转化为对应的g代码后是否存在语法错误,如果中文子程序转化为对应的g代码后存在语法错误,则直接生成子程序语法错误的提示信息,已提示用户,不需要等到组合成中文程序对应的g代码在进行判断,提高了代码转换的效率。在本申请其他具体的实施例中,中文程序如下表1所示:表1中文程序序号中文程序1主轴正转、转速8002切刀、刀号013定位、定位点(0,10,10)4直线切割、开始点(40,10,10)、速度1005直线切割、中间点(60,10,10)、速度1006直线切割、结束点(80,10,10)、速度1007定位、定位点(100,10,10)8主轴停止9结束根据中文程序中的分隔符对表1中的中文程序进行分隔,得到中文程序分隔结果,其中,中文程序分隔结果包括第一中文子程序、第二中文子程序和第三中文子程序,中文程序分隔结果如下表2所示:表2中文程序分隔结果序号第一中文子程序第二中文子程序第三中文子程序1主轴正转转速8002切刀刀号013定位定位点(0,10,10)4直线切割开始点(40,10,10)速度1005直线切割中间点(60,10,10)速度1006直线切割结束点(80,10,10)速度1007定位定位点(100,10,10)8主轴停止9结束分别对对表2中的中文子程序进行分词处理,得到中文文本结果,其中,中文文本结果包括第一中文文本、第二中文文本和第三中文文本,中文文本结果如下表3所示:表3中文文本结果分别将表3中得到的中文文本输入到预先设定好的代码转换模型,将中文文本转化为g代码指令字符,并将g代码指令字符和g代码指令字符对应的数值文本进行组合,得到g代码,完成中文程序转换为g代码,代码转换结果如下表4所示:表4g代码转换结果序号g代码1m03s8002t01013g00x0,y10,z104g01x40,y10,z10f1005g01x60,y10,z10f1006g01x80,y10,z10f1007g00x100,y10,z108m059m30在上述实例中,具体的将中文程序转化为g代码的方法的转换过程如下:如序号1的中文程序“主轴正转、转速800”,通过分隔符“、”划分为第一中文子程序“主轴正转”、第二中文子程序“转速800”,分别对中文子程序进行分词处理,得到中文文本和数值文本,其中,第一中文文本为“主轴正转”和第二中文文本“转速”,第一数值文本为空值,第二数值文本为“800”,在第二中文文本为“转速”和第二数值文本为“800”通过建立匹配标识进行联系。将第一中文文本“主轴正转”输入到预先设定好的代码转换模型中,将“主轴正转”转化为g代码指令字符“m03”,得到第一中文子程序“主轴正转”对应的g代码为“m03”。将第二中文文本“转速”输入到预先设定好的代码转换模型中,将“转速”转化为g代码指令字符“s”,根据匹配标识查找g代码指令字符“s”对应的第二数值文本为“800”,将g代码指令字符“s”与对应的第二数值文本为“800”进行组合,得到第二中文子程序“转速800”对应的g代码“s800”。将第一中文子程序“主轴正转”对应的g代码为“m03”、和第二中文子程序“转速800”对应的g代码“s800”进行组合,形成序号1的中文程序“主轴正转、转速800”对应的g代码“m03s800”。本申请公开了一种将中文程序转化为g代码的方法,属于数字控制
技术领域
,所述方法包括:获取从用户终端输入的中文程序;对中文程序进行分词处理,得到中文文本和数值文本;将中文文本输入到预先设定好的代码转换模型中,查询与中文文本对应的g代码指令字符;获取中文文本对应的g代码指令字符,将中文文本对应的g代码指令字符与数值文本进行组合,形成中文程序对应的g代码。通过对中文程序进行分词处理,得到中文文本和数值文本,将中文文本输入到预先设定好的代码转换模型中进行查找,得到与中文文本对应的g代码指令字符,通过将g代码指令字符和数值文本进行组合,形成中文程序对应的g代码,实现了中文程序和g代码之间的自动转换,提高了数控机床领域的编程速度,同时降低了数控机床编程操作的入门门槛,使得不具备g代码基础的操作者也可以对数控机床进行操作或者编程。实施例二作为对上述图1所示方法的实现,本申请实施例还公开了一种将中文程序转化为g代码的装置,请参照图4,图4示出了本申请实施例的一种将中文程序转化为g代码的装置的结构示意图,该装置实施例与图1所示的方法实施例相对应,该将中文程序转化为g代码的装置,包括获取模块401、分词模块402、查询模块403和组合模块404,其中:获取模块401,用于获取从用户终端输入的中文程序;分词模块402,用于对中文程序进行分词处理,得到中文文本和数值文本;查询模块403,用于将中文文本输入到预先设定好的代码转换模型中,查询与中文文本对应的g代码指令字符;组合模块404,用于获取中文文本对应的g代码指令字符,将中文文本对应的g代码指令字符与数值文本进行组合,形成中文程序对应的g代码。进一步地,该将中文程序转化为g代码的装置还包括:第一判断模块,用于识别中文程序,判断中文程序是否存在分隔符,其中,分隔符用于对中文程序的子程序进行分隔;第一判断结果模块,用于在存在分隔符时,则根据分隔符,将中文程序划分成若干个中文子程序。进一步地,该将中文程序转化为g代码的装置还包括:第二判断模块,用于判断数值文本是否为空值;第二判断结果模块,用于数值文本不为空值,则在中文文本和数值文本之间建立匹配标识;关联模块,用于根据匹配标识,对中文文本和数值文本进行关联。进一步地,查询模块403具体包括:提取单元,用于提取中文文本中的中文关键字;标准化处理单元,用于对提取的中文关键字进行标准化处理;查询单元,用于将标准化处理后的中文关键字输入到预先设定好的代码转换模型中,查询与标准化处理后的中文关键字对应的g代码指令字符。进一步地,查询单元具体包括:第一判断子单元,用于判断预先设定好的代码转换模型中是否存在标准化处理后的中文关键字对应的代码转换模板;查询子单元,用于在存在对应的代码转换模板时,则根据代码转换模板,查询与标准化处理后的中文关键字对应的g代码指令字符;转换失败子单元,用于在不存在对应的代码转换模板时,则生成代码转换失败的提示信息;失败信息输出子单元,用于将代码转换失败的提示信息输出到用户终端的显示界面。进一步地,组合模块404具体包括:获取单元,用于获取中文关键字对应的g代码指令字符;查找单元,用于根据匹配标识,查找与g代码指令字符对应的数值文本;第一组合单元,用于将g代码指令字符和g代码指令字符对应的数值文本进行组合,形成中文子程序对应的g代码;第二组合单元,用于获取若干个中文子程序对应的g代码,将若干个中文子程序对应的g代码进行组合,形成中文程序对应的g代码。进一步地,该将中文程序转化为g代码的装置还包括:语法判断模块,用于判断中文程序对应的g代码是否存在语法错误;第一语法判断结果模块,用于在存在语法错误时,则生成代码存在语法错误的提示信息;第二语法判断结果模块,用于在不存在语法错误时,则将中文程序对应的g代码加载到内部存储器中,并生成代码转换成功的提示信息。本申请公开了一种将中文程序转化为g代码的装置,属于数字控制
技术领域
,所述装置包括:获取模块401,用于获取从用户终端输入的中文程序;分词模块402,用于对中文程序进行分词处理,得到中文文本和数值文本;查询模块403,用于将中文文本输入到预先设定好的代码转换模型中,查询与中文文本对应的g代码指令字符;组合模块404,用于获取中文文本对应的g代码指令字符,将中文文本对应的g代码指令字符与数值文本进行组合,形成中文程序对应的g代码。通过对中文程序进行分词处理,得到中文文本和数值文本,将中文文本输入到预先设定好的代码转换模型中进行查找,得到与中文文本对应的g代码指令字符,通过将g代码指令字符和数值文本进行组合,形成中文程序对应的g代码,实现了中文程序和g代码之间的自动转换,提高了数控机床领域的编程速度,同时降低了数控机床编程操作的入门门槛,使得不具备g代码基础的操作者也可以对数控机床进行操作或者编程。实施例三为解决上述技术问题,本申请实施例还提供计算机设备。具体请参阅图5,图5为本实施例计算机设备基本结构框图。所述计算机设备6包括通过系统总线相互通信连接存储器61、处理器62、网络接口63。需要指出的是,图中仅示出了具有组件61-63的计算机设备6,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。其中,本
技术领域
技术人员可以理解,这里的计算机设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(applicationspecificintegratedcircuit,asic)、可编程门阵列(field-programmablegatearray,fpga)、数字处理器(digitalsignalprocessor,dsp)、嵌入式设备等。所述计算机设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述计算机设备可以与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互。所述存储器61至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘等。在一些实施例中,所述存储器61可以是所述计算机设备6的内部存储单元,例如该计算机设备6的硬盘或内存。在另一些实施例中,所述存储器61也可以是所述计算机设备6的外部存储设备,例如该计算机设备6上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。当然,所述存储器61还可以既包括所述计算机设备6的内部存储单元也包括其外部存储设备。本实施例中,所述存储器61通常用于存储安装于所述计算机设备6的操作系统和各类应用软件,例如一种将中文程序转化为g代码的方法的程序代码等。此外,所述存储器61还可以用于暂时地存储已经输出或者将要输出的各类数据。所述处理器62在一些实施例中可以是中央处理器(centralprocessingunit,cpu)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器62通常用于控制所述计算机设备6的总体操作。本实施例中,所述处理器62用于运行所述存储器61中存储的程序代码或者处理数据,例如运行所述一种将中文程序转化为g代码的方法的程序代码。所述网络接口63可包括无线网络接口或有线网络接口,该网络接口63通常用于在所述计算机设备6与其他电子设备之间建立通信连接。本申请还提供了另一种实施方式,即提供一种计算机可读存储介质,所述计算机可读存储介质存储有一种将中文程序转化为g代码的方法的程序,所述一种将中文程序转化为g代码的方法的程序可被至少一个处理器执行,以使所述至少一个处理器执行如上述的一种将中文程序转化为g代码的方法的步骤。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例所述的方法。显然,以上所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例,附图中给出了本申请的较佳实施例,但并不限制本申请的专利范围。本申请可以以许多不同的形式来实现,相反地,提供这些实施例的目的是使对本申请的公开内容的理解更加透彻全面。尽管参照前述实施例对本申请进行了详细的说明,对于本领域的技术人员来而言,其依然可以对前述各具体实施方式所记载的技术方案进行修改,或者对其中部分技术特征进行等效替换。凡是利用本申请说明书及附图内容所做的等效结构,直接或间接运用在其他相关的
技术领域
,均同理在本申请专利保护范围之内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1