最新新闻
我要投稿
联系电话:027-87592219/20/21转188
投稿邮箱:tb@e-works.net.cn
您所在的位置:首页 > 智库 > 智能装备

基于射频技术的刀具自动识别系统的设计与实现

发布时间:2012-09-21 作者:蒋帆宇 张为民  来源:万方数据
基于射频技术设计了一套适用于西门子840D数控系统的刀具自动识别系统。在对系统进行分析的基础上,给出了西门子840D数控系统与BALLUFF射频设备之间的数据交换机制,系统实现了刀具自动识别及刀具寿命信息更新。

2 系统功能实现

    本文所述刀具自动识别系统主要包括两个功能模块:数据转换模块和PLC监控模块。数据转换模块主要是利用RS232串口实现数据在射频设备和数控系统之问的传递。加工中心换刀时,PLC监控模块发送触发信号给数据转换模块,更新射频编码块内存储的刀具寿命信息。系统功能模块视图如图2所示。

   

图2 系统功能模块

    2.1 数据交换模块

    本文所述数据转换模块的串口通信软件主要应用Visual Basic 6.0(以下简称VB)进行编制。VB运用MSComm进行串口通信,DDE进行数据交换。DDE中的Linkitem属性与Linktopic属性结合使用,确定服务器应用程序与客户控件的完整数据链接。在DDE的各个属性中,LinkMode、Linktopic与Linkitem这三个属性的设置如下:

    LinkMode:

    Automatic(数据从射频编码块读出时)

    Manual(数据写入射频编码块时)

    Linktopic:NCDDE f NCU840d

    Linkitem:变量名称

    上述Linkitem的变量名是根据系统传递的数据在

    西门子840D数控系统刀具管理模块中表示的系统变量进行设置的。本文所使用的6个系统变量如表3所示,其中寿命信息的单位均为分钟。

 

表3 各数据的变量名

    MSComm控件是VB 6.0中的一个ActiveX控件,其提供了两种处理通信的方式:一种为事件驱动方式,另一种为查询方式。该控件常用属性和方法有:Commport(设置或返回串口号)、Setting(以字符串的形式设置或返回串口通信参数)、Portopen(设置或返回串口状态)、InputMode(设置或返回接收数据的类型)、Output(设置或返回发送缓冲区中等待计算机发送的字符数)、CommEvent(依据产生事件和错误,MSComm控件为CommEven属性赋不同的代码,同时产生OnComm事件)等。

    VB中,利用MSComm控件实现串口通信,发送命令主要程序语句如下:

    MSeomml.CommPort=1

    MSComml.OutBufferCount=0

    MSComml,Output=命令

    MSComml.InBufferCount=0

    接收数据主要程序语句如下:

    Dim lnbyte() As Byte

    Select Case MSComml.CommEvent

    Case comEvReceive

    Inbyte=MSComml.Input

    Case comEvSend

    End Select