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

基于QT+PMAC的V沟机数控软件的开发

发布时间:2014-06-17 作者:王彩芳 刘建群 高伟强 李一雄  来源:万方数据
关键字:PMAC V沟机 数控软件 
在windows平台上利用QT4.8图形界面开发工具,调用PMAC的库函数,开发V沟机的数控软件。论文介绍了QT与PMAC的通讯方法,软件主界面的设计和实现,系统的初始化,NC代码的编译,自动、手动、回零等CNC控制功能,三维图形的显示和模拟仿真。并详述了系统的参数设置,V槽参数化编程模块的实现过程。初步完成了V沟机数控软件应用程序的开发。

0 引言

  随着近年来光纤通讯行业的迅猛发展,对光纤产品的质量要求越来越高。光纤连接器用于光纤之间的对接,其主要组成部件是V型槽结构。V型槽结构作为连接光纤的微光学器件,其加工精度直接影响着光纤连接器的性能。通常V型槽的加工精度由槽的倾斜角、表面粗糙度、直线度等来衡量。为了实现V槽的亚微米级的加工精度,需寻求一种最为有效的加工方式。目前V型槽阵列的加工方法主要有三种:湿法腐蚀,压膜,超精密加工。利用超精密机床对V型槽进行磨削加工,是实现其高精度的一种非常有效的方法。

  超精密数控系统作为超精密数控机床的控制核心,也是加工V型槽阵列需要重点研究的环节。QT是C++图形用户界面应用程序框架,具备艺术级的图形界面开发功能,QT的良好封装机制也使得QT的模块化程度非常高,可重用性较好。PMAC则是功能强大,市场定位较高的一款控制器。本课题在上位机上借助QT开发工具,调用Turbo PMAC clipper提供的PcommSeRer Pr02:Lih岬库函数,开发了V型槽加工机床的数控系统软件。该软件不仅实现了优越的人机界面功能,还能根据V槽的关键参数自动生成NC代码并检测代码的正确性,并能对系统的参数进行规范的数据库管理,以及进行V槽加工过程的三维模拟仿真,可视化强。同时,软件也实现了系统的CNC运动控制功能。针对这样一款专门应用于V型槽阵列加工的软件,它的实用性,市场需求度都是不言而喻的。

1 V沟机数控系统的硬件设计

  系统硬件结构如图1所示,主要包括:研华工控机,Turbo PMAC Clipper多轴运动控制器,端子板,KOI工MORGEN AKD.P系列驱动,气浮主轴,KOmMORGEN直线电机,ReniShaw光栅尺,气浮工作台,配以其他的I/O等辅助设备。

图1系统硬件结构
图1系统硬件结构 

2 V沟机数控系统的软件开发

  V沟机数控系统具有普通数控系统的数控加工、系统诊断、数据采集等功能。同时还应具有本身特殊的功能,即根据V型槽的关键参数以及加工工艺自动生成NC代码,将代码下载至PMAC控制器中,从而进行加工。整个软件开发过程包括:软件功能的设计以及功能模块的划分,人机界面的设计,各功能模块的编写和调试,整个应用程序的集成、调试和运矧引。在访n(10ws7操作系统下,利用QT4.8开发工具,通过调用PcommServer Pr02 Library库函数,实现软件的编写和系统的控制功能。

  2.1 建立QT与PM渔C的通讯

  基于QT+PMAc的开放式数控系统,其开放性既体现在软件上,又体现在硬件上。QT提供了非常强大的图形用户功能,允许用户根据自己的需要开发人机交互界面;PMAC运动控制卡则提供了多于400个运动相关的函数,实现数控系统插补、前瞻、补偿、伺服算法、联动功能等各种控制功能。

  PcommSenrer Pm2“bEary是PMAC为在Windows系统下开发人机界面提供的动态链接库。它是基于COM组件的形式提供的,用户通过安装PMAC Executive pr02 suite软件包,在系统盘里可找到pcommserver.exe、pcomm32w.dll、pcomlIl32w.1ib等文件,但并没有提供库的头文件,因此不能用一般的显式隐式来调用。那么要在QT中调用库函数,就必须知道QT如何调用COM接口,下面说明其调用方法。

  QT提供的QAxContainer模块,该模块允许使用COM对象,以及在QT应用程序中嵌入ActiveX控件。它提供了2个类:QAxwidget(Qwidget的子类,作为ActiveX控件的容器)和QAxObject(QWidget的子类,易于访问非可视化COM对象)。本次开发中采用生成命名空间的方式来调用cOM对象的APIs。具体操作流程如下:

  (1)通过VC++6.0中的Tools工具条中的OLE/COM object viewer选项,查找类型库,可查得pcom—mserver.exe的类型库ID{50ECCF67-B73C-431B-A53D-9EDDAF3CE611}

  (2)叫提供了一个名为d啪pcpp的工具可以为想要访问的类型库生成一个c++名空间,将dumpcpp工具所在的bin目录添加到系统路径中。

  (3)运行命令提示符,在用户名后输人命令:dumpcpp-n PCOMMSERVERKb{50ECCF67-B73C-431B-A53D-9EDDAF3CE611}。运行后,会自动生成两个文件:ponmmserverHb.cpp和ponmmserver lib.h。

  (4)在QT应用程序的.pm中添加“CONnG+=qaxcontainer”,并添加上述导出的头文件和源文件。通过包含头文件“#include ponmmserver lib .h”和在程序开头使用“using namespace PCOMMSERVERLib;”语句,并定义“PCOMMSERVERLib:PmacDevice*Pmac”对象指针,利用Pmac即可调用运动库函数。

3
本文为授权转载文章,任何人未经原授权方同意,不得复制、转载、摘编等任何方式进行使用,e-works不承担由此而产生的任何法律责任! 如有异议请及时告之,以便进行及时处理。联系方式:editor@e-works.net.cn tel:027-87592219/20/21。