在线客服系统

数控仿真软件中数控程序纠错功能浅探

时间:2014-01-22 09:08 来源:发表吧 作者:夏伯融 点击:
    摘 要:针对数控仿真软件如何能对用户填写的数控代码具有简单的语法与词法纠错功能进行了简单的介绍和探索。
  关键词:数控仿真 语法纠错 词法纠错 指令纠错
  当前数控仿真软件主要运用于职业学校数控教学以及广大从事数控行业的人员进行自学与提高,其教学功能的重要性不言而喻,那么开发数控仿真软件不仅要具有仿真功能,还需要具有对用户输入数控代码的简单纠错功能,提高用户
  的学习效率,现将本人开发软件时对这部分的设想做一个简单介绍。
  数控加工程序以*.cld文本文件的形式存放在硬盘中,读入内存后才能进行处理。程序打开一个文本文件,使用读取语句依次读入一行NC程序到设置的Cstring字符串数组类的对象中,这个字符串数组规定为由10个字符串组成。每行以碰到回车符号为结束。然后把这个字符串数组对象中的信息进行解释,并储存到一个结构体对象中。这里有2种方法处理数据,一种方法是直接反复循环,直到把文件读取完毕。整个数控程序就被读入到CSrtingList类的对象中了,NC程序的每一行就成为了此对象中的一个元素。然后对整个NC程序进行词法和语法检查,译码解释程序成为图形模拟的计算机程序。但是这种方法对内存的要求比较高,容易使程序运行变慢。而第二种方法是每读取一行数控程序就直接进行语法和词法的检查。如果出错就直接报错,没有错误就继续读取下一行数控程序。如此循环,直到把程序完成为止。
  1.数控程序的词法检查
  数控程序词法检查时以一个程序段为解释单位,一次解释一个程序段。首先,数控程序都是按照严格的格式书写的,每个G代码、M代码、F代码、S代码、T代码都有严格的书写格式。这里做的第一步就是检查程序的格式是否正确,采取的方法是在检查类中为每一个G代码和M代码都定义一个严格的格式规则。 G00的格式是G00X…Z….就规定G00后面一定要跟上X和其后的数值以及Z和其后的数值,G01的格式是G01X…Z….F…就规定G01后面一定要跟上X和其后的数值以及Z和其后的数值还有F地址字和其后的数值。G02/G03的格式是G02(G03)X…Z….R…就规定G00后面一定要跟上X和其后的数值以及Z和其后的数值和地址字R和其后的数值。至于其他G代码规则也是如此规定,就不一一详述,M代码也一样比如M03格式为M03 S…..。后面一定要跟上S地址字以及其后的数值。对每一种代码都作了严格规定后,如果出现上述表中没有的G代码或M代码,程序就会识别错误并立即报错。如果出现了已规定的代码而其后的地址数值不对也报错。如果没有检查出错误即进入下一步检查,下一步骤将检查我们输入的错误。如在程序中使用了未定义的地址符号“E”,,为此把数控程序中常用的N、G、M、F、S、T、X、Z等代码建立了一个字符集库,依次检查数控程序字符字是不是N、M、G、F、S、T、X、Z…..中的一个。如果是就继续进行,如果不是,调用报错函数报 “字符使用错误”。所以当我们遇到数控程序不会用到的代码字时就会报错。另外,其实每种数控程序中大部分代码其后都跟有数值,如X100、 Z100等等,他们代表该点在此坐标名称下的坐标值,由于数控机床所加工的工件大小是有规定的,刀架的运行也是有一定范围的。所以对X、Z代码后的数值也限定了范围,如X设置在-10到500之间,Z设置在-300到200之间,如果超出这个范围,即报 “超过机床允许范围”错误。比如我们输入时把X200输入成为X-200,把Z-150输入成为Z1500等等错误都可以检查出来。以上三种检查方法可以发现我们大部分的因粗心而出现的输写错误。
  2.数控程序的语法检查
  语法检查主要检查数控代码语法是否符合规则。数控代码中主要有以下几方面的语法错误:
  2.1.我们把具有相近类型的G代码分成一个组,比如G00、G01、G02、G03、G32就属于一个组。同组代码不能在一个程序段中同时出现。所以定义一个方法,该方法读取一行数控代码时如果有2个同组G代码出现就报错,M代码也是一样,可以实现把刚才定义的方法加上同一行出现2个M代码时会报错的功能。在此,先把需要识别的G代码或M代码分为几个组,把不能同时在一行出现的代码放置在一个组中,识别时如果在一行中出现了2个同组的代码即系统报错。

www.fabiaoba.com),是一个专门从事期刊推广期刊发表、投稿辅导、发表期刊的网站。
  本站提供如何投稿辅导、发表期刊,寻求论文刊登合作,快速投稿辅导,投稿辅导格式指导等解决方案:省级论文刊登/国家级论文刊登/ CSSCI核心/医学投稿辅导/职称投稿辅导。

投稿邮箱:fabiaoba365@126.com
 在线咨询: 投稿辅导275774677投稿辅导1003180928
 在线咨询: 投稿辅导610071587投稿辅导1003160816
 联系电话:13775259981

联系方式
李老师QQ:发表吧客服610071587 陈老师QQ:发表吧客服275774677 刘老师QQ:发表吧客服1003160816 张老师QQ:发表吧客服1003180928 联系电话:18796993035 投稿邮箱:fabiaoba365@126.com
期刊鉴别
  • 刊物名称:
  • 检索网站:
热门期刊
发表吧友情提醒

近来发现有些作者论文投稿存在大量剽窃、抄袭行为,“发表吧”对此类存在大量剽窃、抄袭的论文已经停止编辑、推荐。同时我们也提醒您,当您向“发表吧”投稿时请您一定要保证论文的原创性、唯一性,这既是对您自己负责,更是对他人的尊敬。

此类投稿的论文如果发表之后,对您今后的人生和事业将造成很大的麻烦,后果不堪设想,请您一定要慎重,三思而后行。

如因版权问题引起争议或任何其他原因,“发表吧”不承担任何法律责任,侵权法律责任概由剽窃、抄袭者本人承担。

 
QQ在线咨询
陈老师:275774677
张老师:1003180928
李老师:610071587
刘老师:1003160816
论文刊登热线:
137-7525-9981
微信号咨询:
fabiaoba-com

友情链接

申请链接