0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

将Excel的VBA应用到FANUC的NC数据处理来诊断NC参数

工业机器人 2017-12-21 18:00 次阅读

对于数控机床,最常见也是最难解决的问题就是由于错误设定NC参数而引起的机床异常,这种错误通常是由误操作引起,很难发觉,机床也没有任何报警,但运行时却会表现异常。数控系统的NC参数通常多至4千~8千,如何从如此众多的参数中找到设定错误的参数就变得十分棘手。基于这种情况,可以巧妙利用Excel强大的数据处理能力,来对NC参数进行诊断。

1. 导入NC参数

想要诊断NC参数,首先是要将NC参数的输出文件导入Exce中,可以使用“导入数据”功能,选择数据来源是文本即可。

对应程序代码如下:

filename2 = Application.GetOpen Filename(“(i5)NC参数文件(文本文件) ,*.txt”)

If filename2 = False Then Exit Sub

If filename1 = filename2 Then

MsgBox “选择的是同一文件”,vbInformation, “提示”

Exit Sub

End If

i = 1

Dim TextObj

Application.ScreenUpdating = False

Set fs = CreateObject(“Scripting. _FileSystemObject”)

Set TextObj = fs.OpenTextFile (filename2)

Do While Not TextObj.AtEndOfLine

txtline = Trim(TextObj.ReadLine)

If InStr(1, txtline, “:”) > 0 Then

Cells(i, 3) = Mid(txtline, 1, InStr(1, txtline, “:”) - 1)

Cells(i, 4) = Mid(txtline, InStr(1, txtline, “:”) + 1, Len(txtline))

Else

Cells(i, 3) = txtline

End If

i = i + 1

Loop

Set fs = Nothing

Application.ScreenUpdating = True

Excel导入NC参数文件后部分参数如表1所示。

2. 参数诊断

为了更加方便地诊断参数,需要将所有的轴参数、主轴参数和通道参数进行分别提取,放在不同列中,便于分类进行诊断,这里使用Excel自有的函数功能即可实现。

首先,提取各轴及通道参数,如提取X轴数据为

=IFERROR(IF(SEARCH ( “ A ” ,A3,1)>1,MID (A3,SEARCH(“A1”,A3)+3,SEARCH( “ A2 ” ,A3 )-3-SEARCH( “ A1 ” , A3)),””),””)

提取参数后部分如表2所示。

将提取的参数进行汇总比较,轴参数分类成X轴参数、Y轴参数、Z轴参数、四轴参数、主轴参数及通道参数,在这里将通道参数及主轴参数汇总到B轴参数列表中,X轴参数汇总公式

IF(A2=””,””,IF(LOOKUP(A2,Sheet1!C:C,Sheet1!D:D)<>””,LOOKU

P(A2,Sheet1!C:C,Sheet1!D:D),”非轴参数”))

Y轴参数汇总公式

=IF(A2=””,””,IF(LOOKUP(A2,Sheet1!C:C,Sheet1!E:E)<>””

LOOKUP(A2,Sheet1!C:C,Sheet1!E:E),IF(ISNUMBER(MATCH(A2,Sheet7

!D:D,0)),”M参数”,IF(ISNUMBER(MATCH(A2,Sheet7!E:E,0)),”主轴参数”,”通用参数”))))

Z轴参数汇总公式

=IF(A2=””,””,IF(LOOKUP(A2,Sheet1!C:C,Sheet1!F:F)<>””,LOOKUP

(A2,Sheet1!C:C,Sheet1!F:F),”→”))

四轴、主轴及通道参数汇总公式

=IF(A2=””,””,IF(B2=”非轴参数”,MID(LOOKUP(A2,Sheet1!C:C,Sh

eet1!H:H),2,15),LOOKUP(A2,Sheet1!C:C,Sheet1!G:G)))

参数汇总后如表3所示。

在比较参数时遇到如下问题:不同型号的机床电动机不同,意味着参数不同,不可简单进行参数比较,需要将待诊断的NC参数文件的电动机参数进行提取、模糊匹配、注入以及再比较。也就是说,通过模糊匹配调出待诊断NC参数文件中真实的电动机代码,再从标准库中调出相应的电动机参数注入到标准NC参数列表中,然后与待诊断NC参数文件进行比较,电动机参数一致后,在诊断时受到的干扰就大大减少了。

电动机固有参数,顾名思义就是指电动机的特征参数,绝大部分都是只读参数。根据电动机固有参数的参数值就可以确定电动机的具体型号。笔者做过统计,伺服轴的参数是101个,主轴参数是69个。

很多时候,电动机代码参数与实际电动机并不一致,所以要利用电动机固有参数进行模糊匹配,匹配度最高的即是真实电动机代码。

由于电动机固有参数有一小部分是可以修改的,所以这里要用到模糊匹配方法找到待诊断的NC参数文件中电动机的真实代码。本文所用到的模糊匹配属于一维模糊匹配,方法很简单,是将所有的电动机参数文件汇总,然后逐组进行调用并与待诊断的NC参数文件中电动机固有参数进行比较,然后将匹配率最高的电动机代码返回给标准NC参数文件。

通过模糊匹配的方法获取到待诊断NC参数文件的真实电动机代码,然后再将汇总的电动机参数调用出来注入到已经提取到的标准NC参数列表中。这样一来,待诊断NC参数文件与标准NC参数文件电动机方面的参数就是一致的了,如果待诊断的NC参数文件与标准电动机参数不一致,则用紫色对参数进行标注,作为特别提醒予以重点关注。

之后,将有问题的NC参数文件同标准参数文件进行比较,即可找到异常参数,将不同的参数标记成数字255,255是红色的数字代码,然后进行单独提取。如X轴参数比较公式

=IF(B2=F2,””,IF(OR(F2=””, F2=”无此参数”),IFERROR(IF (VALUE(B2)=0,” “,255),””),255))

比较参数后如表4所示。

最后将提取出来的异常参数根据参数重要性进行归类并标示颜色,方便以后在界面上进行标识。颜色标识归类的公式为:

IF(N2=49152,””,IF(ISNUMBER(MATCH(A2,Sheet8!N:N,0)),49152,IF(ISNUMBER(MATCH(A2,Sheet8!O:O0)),65535,IF(ISNUMBER(MATCH(A2Sheet8!P:P,0)),16776960,IF(ISNUMBER(MATCH(A2,Sheet8!Q:Q,0)),16711935,IF(ISNUMBER(MATCH(A2,Sheet8!R:R,0)),255,””))))))

根据参数的重要性将异常参数定义成不同数值,分别为49152、65535、16711935及16776960。再根据不同轴数、不同NC型号建立相应的标准NC参数库,在诊断NC参数文件时就可以进行相应选择并调用与之相同的NC参数进行比较诊断了。

3. 诊断界面

在Excel的开发选项中提供了VB界面,方便将数据以界面的方式展现出来。在Excel界面下,按Alt+F11,显示VBA编程页面。可以根据实际功能进行页面设计及功能定义。设计功能界面按钮如图1所示。

设计好诊断界面后,将Excel中的数据导入到界面中,并根据参数重要性进行颜色上的区分显示如表5所示。

由于异常参数的重要性是根据颜色的不同来确定的,所以在查找问题参数时,可以根据颜色来进行,在这里将绿色标识的参数号定义为对机床无影响参数,黄色为优化参数,蓝色为有影响参数,紫色为电动机固有参数。优先考虑的顺序为紫色、蓝色、黄色,绿色不考虑。如图2所示。

为更加方便查找问题,可以将诊断结果进行过滤。当主轴出现问题时,只看主轴部分的异常参数,当伺服轴出现问题时,只看伺服轴部分参数,这样更加方便快捷。为验证Excel处理数据所需要的时间,在程序的首行和末行添加上时间功能,显示结果如图3所示。

仅需7s就能轻松诊断出异常的NC参数,其效率要远远高于操作人员手动查询效率。

4. 结语

本文将Excel的VBA应用到FANUC的NC数据处理上,使得机床调试更加方便快捷,极大地提高了效率。由于数控系统的版本和机床制造厂家的设置不同,切莫生搬硬套文中的导入方法和函数公式,要参照机床说明书的具体要求导出数据表格,正确利用Excel的自动处理功能来诊断NC参数。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • NC
    NC
    +关注

    关注

    0

    文章

    19

    浏览量

    13980
  • Excel
    +关注

    关注

    4

    文章

    212

    浏览量

    55178
  • Fanuc
    +关注

    关注

    18

    文章

    116

    浏览量

    36220

原文标题:基于Excel的FANUC系统参数诊断

文章出处:【微信号:indRobot,微信公众号:工业机器人】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    有关VBA的一些编程总结

    这几天在做一个数据处理,文件是EXCEL格式的,本来想用PATHON或C++做,但时间关系,本来就没有想到要做成多复杂,只是简单的做必要的数据处理。因此,使用了
    发表于 06-28 13:59

    TwinCAT NC PTP的控制周期

    1.TwinCAT NC PTP的控制周期通常说的NC周期,是指轨迹规划和PID运算的周期,是NC与伺服驱动器交换数据的周期,目标位置、当前位置、控制字、状态字都以这个频率更新。在Tw
    发表于 09-01 07:07

    Allegro 15.2 NC 資料輸出設定作業流程

    Allegro 15.2 NC 資料輸出設定作業流程   本文件內容主要是針對 Allegro 15.2 版本的 NC Drill 輸出功能做介紹,不同於以前的版本 , Allegro 在這個版本的 NC D
    发表于 04-05 06:27 0次下载

    VBA在多Excel工作薄数据汇总的应用

    利用Excel进行数据处理分析时,常需要对大量独立的具有相同表结构的原始工作薄中的数据进行汇总合并到一个工作薄的指定工作表中。通过VBA编程调用Ex
    发表于 05-24 15:37 0次下载

    excel vba代码 示例讲解

    excel vba代码 示例讲解
    发表于 09-07 09:36 24次下载
    <b class='flag-5'>excel</b> <b class='flag-5'>vba</b>代码 示例讲解

    NC7SZ373 TinyLogic UHS D型闩锁(带3态输出)

    电子发烧友网为你提供()NC7SZ373相关产品参数数据手册,更有NC7SZ373的引脚图、接线图、封装手册、中文资料、英文资料,NC7S
    发表于 04-18 21:24

    NC7SP86 TinyLogic ULP 2输入 异或 门

    电子发烧友网为你提供()NC7SP86相关产品参数数据手册,更有NC7SP86的引脚图、接线图、封装手册、中文资料、英文资料,NC7SP8
    发表于 04-18 21:15

    NC7SP157 与门

    电子发烧友网为你提供()NC7SP157相关产品参数数据手册,更有NC7SP157的引脚图、接线图、封装手册、中文资料、英文资料,NC7S
    发表于 04-18 21:15

    NC7S86 TinyLogic HS 2输入异或门

    电子发烧友网为你提供ON Semiconductor(ti)NC7S86相关产品参数数据手册,更有NC7S86的引脚图、接线图、封装手册、中文资料、英文资料,
    发表于 08-02 11:02

    NC7S32 TinyLogic HS 2输入或门

    电子发烧友网为你提供ON Semiconductor(ti)NC7S32相关产品参数数据手册,更有NC7S32的引脚图、接线图、封装手册、中文资料、英文资料,
    发表于 08-02 11:02

    NC7S08 TinyLogic HS 2输入 与 门

    电子发烧友网为你提供ON Semiconductor(ti)NC7S08相关产品参数数据手册,更有NC7S08的引脚图、接线图、封装手册、中文资料、英文资料,
    发表于 08-02 11:02

    NC7SZ386 TinyLogic UHS 3输入 异或 门

    电子发烧友网为你提供ON Semiconductor(ti)NC7SZ386相关产品参数数据手册,更有NC7SZ386的引脚图、接线图、封装手册、中文资料、英文资料,
    发表于 08-02 09:02

    NC7SV32 TinyLogic ULP-A 2输入或门

    电子发烧友网为你提供ON Semiconductor(ti)NC7SV32相关产品参数数据手册,更有NC7SV32的引脚图、接线图、封装手册、中文资料、英文资料,
    发表于 08-02 07:02

    NC7SZ00 TinyLogic UHS 2输入 与非 门

    电子发烧友网为你提供ON Semiconductor(ti)NC7SZ00相关产品参数数据手册,更有NC7SZ00的引脚图、接线图、封装手册、中文资料、英文资料,
    发表于 08-02 07:02

    接触器no和nc分别代表什么_接触器no和nc有什么用

    本文首先阐述了接触器no和nc的定义,其次介绍了接触器no和nc的作用,最后介绍了接触器上的NO和NC的区分方法。
    的头像 发表于 03-11 14:00 16.7w次阅读