APP下载

基于DDE技术的机床远程诊断技术研究

2010-08-01杨家荣徐志明王浩林程松上海电气集团股份有限公司中央研究院200070

装备机械 2010年2期
关键词:数控系统控件西门子

文/杨家荣,徐志明,王浩林,程松 上海电气集团股份有限公司中央研究院 (200070)

一、引言

以数控机床设备为主体的生产车间及生产厂的大量出现,为我国机械加工技术的提高提供了良好的基础条件。但由于数控机床设备是集机、电、液、气、计算机技术于一体的高技术含量的设备,其运行过程中不可避免地存在各种故障,一般多是由操作工发现故障后上报,再由维修人员到现场检查机床并排除故障。这种方式对拥有多个车间,大量数控机床的大型企业来说,管理效率非常低下。虽然随着通讯技术的发展,部分企业开始尝试利用远程诊断技术来统一集中管理所有的数控机床,但这些诊断装置都需要添加额外的数据采集装置,如安装传感器,监测仪等,增加费用的同时,还无法与现有数控系统实现整合。且一般企业都有来自不同厂商品牌的机床,所使用的数控系统也各不相同,这也对诊断装置的开发带来了一定的难度。

针对这一现状,研究探讨了一种基于DDE技术的数控机床远程诊断方法,可在局域网内实现诊断计算机与西门子840D数控系统的通讯,能远程实时读取来自数控系统的坐标位置信息、参数、PLC状态变量,报警内容等信息,且无需增加额外的数据采集装置,节约了成本,将维护人员从大量繁琐的工作中解放出来,增强管理的灵活性和可控性,减少了因故障带来的各种不良影响。

二、西门子840D数控系统平台简介

西门子840D是20世纪90年代推出的高性能数控系统。系统基于PC平台,拥有各类丰富的接口,以及比一般数控系统更好的人机交互能力和上层应用系统集成能力,便于用户对系统功能进行定制和参数调节,其硬件框架如图1所示。

图1 840D硬件结构

目前为止,对采用西门子840D数控系统的机床所进行的远程诊断,主要是采用安装SINCOM软件或者ReachOut等远程诊断软件,再通过以太网进行通讯。这些软件都需要额外向西门子购买,且安装不便,安装完成后需要进行大量配置,如SINCOM软件还需要修改PLC,编制相应的PLC程序来配合实现诊断功能,功能也有限,最重要的是,不能按照用户的需求进行诊断,不够灵活。

实际上,西门子数控系统控制器中,包含了一个叫做动态数据交换(DDE)的数据通讯接口服务器程序(NCDDE),通过与用户编写的DDE用户端通讯,可使用户进行存取NCK中的各个变量和数据,如图2所示。借助如今发展成熟的以太网网络,更可实现机床的远程管理。这种通讯方式具有统一的接口规范,可将车间内其他具有相同DDE数据接口的设备全部纳入诊断管理的范畴,如上海电气中央研究院研究开发的SE300系列数控系统等。

图2 西门子840D数据通讯方式及其接口

三、动态数据交换(DDE)技术简介

DDE的全称是动态数据交换(Dynamic data exchange)。自从微软推出Windows操作系统以来,DDE就已经成为Windows的一部分,并且很多Windows应用程序都使用了DDE技术来实现进程之间的数据交换。DDE是建立在Windows内部消息系统、全局和共享全局内存基础上的一种协议,用来协调Windows应用程序之间的数据交换和命令调用,它已经成为应用程序之间通信的一种常用方法。DDE过程可以比喻为两个人的对话,一方向另一方提出问题,然后等待回答,提问的一方称为“顾客”(Client,本文中为用户编制的监控应用程序),回答一方称为“服务器”(Server,本文中为西门子840D数控系统)。一个应用程序可以同时是“顾客”和“服务器”:当它向其应用程序中请求数据时,它充当“顾客”,若其他程序需要它提供数据,它是“服务器”。如图3所示。

图3 DDE链接示意

DDE对话的内容通过三级树型命名:应用程序名(Application)、主题(Topic)和数据项(Item)来标识DDE所要传送的数据单元。

(1) 应用程序名(Application):DDE对话的双方名称,如在本机上运行自己编写的应用程序,则一般是该应用程序的名称。西门子840D提供的应用程序名称为“NCDDE”。

(2) 主题(Topic):主题类似于目录,是建立会话连接的参数,本例中为"NUC|840D"。报警的获取则为“MBDDE|ALARME”。

(3) 数据项(Item):这是具体通信时要传送的数据内容,比如一个数据或一个字符串,可以是获取坐标位置的命令,获取PLC状态的命令等,按照实际需要获取的内容编写。

建立DDE会话后,用户程序和服务器程序可以通过三种链接方式进行数据交换,分别是:

1、冷链接:用户程序申请数据,服务器程序立即给用户程序发送数据;

2、温链接:服务器程序通知用户程序数据数据项发生了改变,但是并没有将已发生的值发送给用户程序。

3、热链接:当数据项发生变化时,服务器程序立即把变化后的值发送给用户程序。

基层党群工作要从基层党支部建设、思想政治工作和创新工作机制等方面入手。通过加强思想建设、组织建设、作风建设、廉政建设、班子建设等方面的建设统一思想认识,从而发挥出党支部的战斗堡垒作用。

本文讨论的数据交换方法为上述第一种方法。

四、DDE方式实现诊断程序与西门子840D数控系统的通讯

笔者利用VISUAL BASIC6.0开发了用户端测试应用程序,由该应用程序将用户输入的数据或者需要读取的内容通过DDE方式传送给作为服务器的西门子 840D数控系统,再由数控系统将返回的数据通过DDE发送给用户端诊断计算机实现诊断,利用该诊断技术可实现如下几种功能:

(1) 数控系统NCU中各种变量的访问,如刀具信息、刀偏、零偏、轴坐标位置值等。

(2) R参数的访问。

(3) PLC中各中变量的访问,如I/O接口,标志区M、数据块DB等,通过访问这些变量,控制人员可远程判断机床故障点,有利于故障的快速排除和集中管理。

(4) 利用VB设计应用界面,如显示数据、图形、输入数据,文件管理等。

(5) 当机床出现报警时,可远程实时显示报警内容,便于维修人员迅速掌握报警内容,实现集中控制和管理。

在VISUAL BASIC 提供的标准控件中,TextBox、Lable、PictureBox及Form均具有动态数据交换的功能。因此,可利用这些控件实现数据的发送和接收,应用程序的实现方式如下:

(1) 新建一个窗体;

(2) 向窗体中加入相应的控件并命名;

(3) 设置相应控件的属性,如果在运行时建立联系,则通过语句设置属性的值。

(4) 编写代码并测试;

(5) 运行所编写的程序,编译生成EXE可执行文件。

以TextBox为例,在窗体上创建一个TextBox控件,命名为TxtReceive, 另外创建二个Command对象,分别命名为CmdConnect及CmdEnd。分别设置其属性,并编写代码如下:

(1) 建立DDE连接

(2) 退出连接

(3) 数据更新通知,每当数据变化后,自动显示新数据

以上程序编写完成后,将其编译成EXE可执行文件,再拷贝到西门子840D数控系统XP系统硬盘上运行,当HMI启动后,即可获得当前数控系统的第一个通道的第一根轴的位置信息。TxtReceive.LinkItem 语句中的内容即为所要获取或发送的数据内容,将其替换为不同的内容,即可获得不同的信息,图4所示的诊断测试程序能读取某840D系统的X/Y/Z/W4根轴的轴位置信息、PLC I/O状态数据、DB块数据、标志区M值、R参数值、报警文本等。具体数据项内容的获取办法,可参考相关资料。

图4 机床远程诊断测试软件界面

五、服务器端与用户端计算机的设置

上述程序调试成功后,还只能在本地计算机即西门子840D数控系统本机上运行,要想在同一个局域网内的远程客户计算机上通过网络来运行该程序,实现远程数据获取,就要借助微软的NetDDE技术了。NetDDE是DDE技术的扩展,它提供了一种代理,用来响应网络上发到服务器计算机DDE的各种请求,并将请求传递到上层应用程序,NetDDE同时也将本机的NetDDE请求发送到网络。它在DDE链接中起到底层通信的桥梁作用,如图5所示。每台装有Windows操作系统的计算机目录下(2000/XP),都有一个NetDDE.EXE的文件,对其设置可参考Windows相关帮助,不再详述。

另外,为了使所开发的程序能通过网络顺利获取数据,需要在源程序中对应用程序名和主题稍做改动,本地DDE的地址包括3个部分:应用程序名、主题、项目。而NetDDE则由如下部分组成:\计算机名称\NDDE$\DDE共享名。完成上述修改后,诊断程序即可顺利运行, 通过分别设置网络上不同计算机的名称,即可实现多台机床的远程诊断,如图6所示。

图5 NetDDE实现远程诊断

图6 机床远程诊断网络

六、结束语

用动态数据交换(DDE)技术实现了自己设计的诊断程序与西门子840D数控系统之间的通讯,简化了开发的难度,提高了效率,可视为开发数控系统远程诊断系统的一种很好的方法。该方法具有程序实现简单、方便、通用性强等特点,可以说,只要数控系统基于PC平台,并提供了DDE的通讯接口,都可以结合DDE方式,实现数控系统的远程诊断功能开发。相关的机床维护人员,经培训后即可开发出适合自己需求的诊断程序。

猜你喜欢

数控系统控件西门子
基于.net的用户定义验证控件的应用分析
基于西门子VCS的大型五轴机床空间误差补偿
关于.net控件数组的探讨
西门子重型燃机出海
基于FANUC 32i A数控系统的外部测量设计
西门子840D sl数控系统在SC125大型车铣镗床技术改造中的应用
基于FANUC Oi mate TD数控系统的手动功能开发
数控系统中GUI软件平台设计和实现
西门子 分布式I/O Simatic ET 200AL
西门子引领制造业的未来