基于FANUC数控系统的数据采集系统的设计与实现
2014-03-11徐洪健赵波上海三一精机有限公司研究院电气所
徐洪健 赵波/上海三一精机有限公司研究院电气所
基于FANUC数控系统的数据采集系统的设计与实现
徐洪健 赵波/上海三一精机有限公司研究院电气所
本文以FANUC数控系统为基础,分析数控机床数据采集的需求,对现场数控机床运行情况、NC、PMC和报警等重要数据进行实时采集,形成可靠完善的数据采集技术,确保生产安全高效,产品质量优良。重点是完成数据采集系统用户界面的开发。采用原型法设计数据采集系统,使用C#语言在。NET框架上开发用户界面,应用FANUC的FOCAS库函数实现PC机与CNC的通讯和实时数据的采集,应用SQLServer数据库对相关数据进行存放。
数控系统;数据采集;用户界面
一、引言
本课题所开发的数据采集系统以FANUC 0i-TD数控系统为实验对象。FANUC0i-TD数控系统装配有高可靠性、高性价比的纳米CNC,带有纳米插补功能,并且配有高速、大容量的PMC,支持100Mbps的内嵌式以太网。
通过内嵌式以太网可将CNC与PC机连接起来,即可进行NC程序的传输、机械的控制和运行状态的监视、机械的调整和维护。其基本功能包括:
1.基于FTP(File Transfer Protocol)文件传输功能的NC程序的传输可通过CNC画面的操作来传输NC程序。电脑侧使用FTP服务器·软件,所以,可以与Windows环境以外的主机传输NC程序。
2.基于FOCAS1/Ethernet的机械控制和监视可利用 i CELL和 CIMPLICITY(FANUC数控系统机床集中管理软件),创建进行机械的控制和监视的系统。此外,也可通过CNC主导信息通知功能,利用NC程序、或者梯图程序发出的指令,从CNC自发地向电脑的应用程序通知信息(CNC/PMC数据)。
3.可以在线进行基于FANUC LADDER-Ⅲ以及SERVO GUIDE的机械的调整和维护、梯形图程序的维护和伺服电机的调整。
二、FANUC数控系统通讯
在数据采集系统中,FANUC数控系统与PC机的通讯通过FANUC以太网功能(Ethernet Function)实现。FANUC以太网功能主要包含:NC数据传送、远程控制等功能。其主要通过TCP/IP协议实现,使用时在CNC系统上只需设定CNC的IP、TCP和UDP端口等信息,在PC机人机界面中设置IP和端口号即可。
采用FANUC数控系统的机床均具有以太网功能,它的通讯协议是TCP/IP(Transmission ControlPtotocol/Internet Protool)协议,TCP/IP采用四层的层级结构,每一层都呼叫它的下一层所提供的网络来完成自己的需求。这四层分别为:
1.应用层:应用程序间沟通的层,如简单电子邮件传输(SMTP)、文件传输协议(FTP)、网络远程访问协议(Telnet)等。
2.传输层:提供了节点间的数据传输服务,如传输控制控制协议(TCP)、用户数据报协议(UDP)等。
3.互联网络层:负责提供基本的数据封包传送功能,让每一块数据包都能够到达目的主机(但不检查是否被正确接收),如网际协议(IP)。
4.网络接口层:对实际的网络媒体的管理,定义如何使用实际网络(如Ethernet、Serial Line等)来传送数据。
a)数据采集系统的构架分析
在FANUC数控机床上开通FOCAS功能,将数控系统和PC机通过网线连接,分别在CNC和数据采集软件中设置相关数据,实现通讯。在数据采集软件上实现对NC各个轴坐标、主轴转速、进给速度等信息的查看,实现对主轴伺服参数实时线性显示,对报警记录和用户登录信息在数据库中进行记录。
b)FOCAS技术
FOCAS可以通过HSSB或以太网(TCP/IP)接口在PC和CNC之间完成交换数据和信息共享,它的主要功能包括以下几部分:
1.CNC:NC控制的伺服轴、主轴相关数据的读写
2.CNC:加工程序相关的操作
3.CNC:读写CNC文件数据
4.CNC:读取刀具寿命管理信息
5.CNC:读取历史信息记录
6.CNC:读取伺服、主轴数据
7.CNC:读取数据服务器、DNC1、DNC2、OSI-Ethernet(只能使用高速串行总线HSSB)相关信息
8.CNC:读取波形诊断数据
9.CNC:读取冲床CNC相关数据
10.CNC:读写激光器CNC相关数据
11.CNC:读写伺服学习控制相关数据(只能使用HSSB)
12.CNC:读写其他数据
这些数据包括连续工作状态数据、诊断数据、A/D转换数据、报警信息和操作提示信息等等。
13.PMC:读写PMC相关数据
这些数据包括G、F、Y、A、R、T、C、D地址等。
PMC:读写PROFIBUS-DP相关内容
如后图1FOCAS功能
FOCAS函数库功能非常强大,但在软件的实际设计中,只取用数据采集相关的函数,不对其他函数进行使用,原因是对原函数对数据的处理并不满足需求。因此,在报警解决信息与报警录入到历史信息中,采用自行编程,更加贴近实际,满足需求。
在使用C#编程中,嵌入FANUC提供FOCAS的fwlib32.dll文件和fwlib32.cs类库,实现与CNC的通讯和数据采集。
DLL文件为动态链接库(Dynamic Link Library),是Microsoft Windows最重要的组成要素之一。动态链接库是不能直接执行的,也不能接收消息,它只是一个独立的文件,其中包含能被程序或其他DLL调用来完成一定操作的方法。但这方法不是执行程序本身的一部分,而是根据进程的需要按需载入,才能发挥作用。FOCAS中的fwlib32.dll中的方法就是通过fwlib32.cs的调用实现,用户通过使用fwlib32.cs类库就可以调用这些方法,使用非常方便。
c)功能设计与实现
除了纯粹的数据采集,系统还需要对采集的数据进行存储和处理,方便进一步应用。软件具体功能设计如下:
如后图2软件功能结构
数据采集是指PC机与CNC进行连接,将CNC中信息采集到PC机上。软件所采集的数控机床数据分为报警信息、CNC中各个轴坐标、主轴的I/O点状态和主轴伺服参数。
软件以监测为主,通过报警信息可以直接了解到数控机床是否正常运行及机床运行不正常的原因。通过各个轴的位置坐标信息和进给速度可以了解到机床加工状态。主轴的性能决定加工的质量和切削效率的重要因素,所以对主轴的数据采集尤为重要。所以对PMC中与主轴相关的档位、主轴松拉刀和风冷油冷等信号进行采集;对主轴伺服功率绘制线性图,实时了解其稳定性。
数据处理功能:
数据处理指数据库表的建立,对用户和历史报警等信息进行管理,实现增加、删除、查询、刷新等操作;实现对现报警的存储和将现报警添加到历史报警记录中;对报警的解决办法进行管理,实现自主写入解决办法。
用户可以查看用户数量及各用户的用户名与密码,更可以实现用户的增加删除与查询功能。
用户可查看当前报警的详细信息,包括报警序号,报警内容及报警解决办法;也可以查看历史报警,并对历史报警信息进行查询、删除和刷新的操作,而且用户可以通过相关操作将处理完的现报警信息转入到历史报警信息中。
可视化功能:
可视化通过人机界面的设计实现,实现用户登录,显示NC、PMC、主轴伺服参数与报警信息,帮助等功能。对主轴伺服系数等进行记录并显示实时曲线。
第一部分是登陆界面。通过验证后才可以进入到主界面,验证成功后隐去登陆界面,显示数据采集主界面。
第二部分是数据采集主界面。在主界面中,用户可以查看到报警信息的报警序号和报警描述;监测到NC各个轴的实际坐标与机器坐标与主轴转速和进给速度;查看主轴各I/O点状态与主轴伺服参数。辅助功能是机床运转状态和系统时间。配有“报警详情”按钮、“用户管理”按钮、“系统配置”按钮、“帮助”按钮,方便用户进一步操作。
第三部分是用户管理界面,用户通过点击主界面的“用户”按钮进入。在此界面中,用户可以查看和修改用户数量及各用户的用户名与密码。
第四部分是报警界面,用户通过点击主界面的“详情”按钮进入。在此界面中,可查看当前报警的详细信息,包括报警序号,报警内容及报警解决办法;也可以查看历史报警,并对历史报警信息进行查询、删除和刷新的操作,而且用户可以通过“确认”按钮将处理完的现报警信息转入到历史报警信息中。
第五部分是系统界面,用户通过点击主界面的“系统”按钮进入。此界面分为两部分:
1.连接:用于设置PC机的IP地址,与数控机床进行匹配,实现相互通讯。软件预设初始IP地址为192.168.1.11,端口号为8193,用户也可根据需要更改。
2.报警录入:用于对报警的序号、报警描述和解决办法进行增加,删除、查询与刷新的操作。
第六部分是帮助界面,用户通过点击主界面的“帮助”按钮进入。此界面介绍了本采集系统的功能与操作说明。
如后图3界面部分效果图
三、结论
该界面软件可广泛应用在Fanuc版本的人机交互界面中,主要面向高端数控机床。弥补了Fanuc自身软件在人机交互方面专机化特点的不足。
该界面软件能够直接显示,而且始终显示机床重要信息,比如机床主轴、刀具当前状况信息,托盘、工位当前加工工件信息等等。能第一时间将系统信息传递给操作者,避免繁琐操作。采用该界面软件,可以丰富机床信息的显示方式,如图片、文字,而不再是单一地以LED灯的方式显示,人机交互性可明显提高,用户体验好。
[1]曹锦江,汪木兰,左健民。PC机与FANUC数控系统远程通信软件的开发[J].中国制造业信息化,2006,07: 53-55+61.
[2]林勤花NET平台下基于LINQ三层架构的应用 [J].电脑与信息技术,2013,01: 63-65.
图1 FOCAS功能
图2 软件功能结构
图3 界面部分效果图