840D sl(QT)使用ocx外部控件

(废话,可以不看)事情是这样的,这一段时间有个项目需要使用AE(可以采集主轴加工时的声音,用来判断加工状态)和动平衡。AE和动平衡原来自带一个软件可以用的,但是需要切换界面,这样就不方便一边查看加工参数一边看加工状态。所以决定将厂家提供控件加到我们自己二次开发的软件中去。

1、(半废话,如果不使用AE可以略过)首先数控系统和二次开发的虚拟环境都需要安装AE厂家提供的软件,安装过程比较简单没有特别需要注意的,能选的都选上,软件接口的文档是英文的,目录如下:D:\动平衡软件安装包\Documents\English\Programming_Interface_D60020.pdf

2、找到需要控件的注册ID,有多种方法,这里我选择直接在QT Designer中获取,首先打开QT Designer,并且新建一个窗体,然后添加QAxWidget控件,如图:

 3、在控件上右击,选择“设置控件”,在弹窗中选择需要的控件,AE的控件为M6000(该控件是安装AE软件时已经注册好了,如果找不到控件可以试着注册一下需要的控件,详细的方法网上有很多,不再赘述),如图:

4、点击确定,可以在控件属性中找到控件的ID,貌似ID不可以复制,可以手动记录下来,如图: 

 5、现在需要通过QT提供的工具将我们用的控件转化为QT可以直接调用的,这个方法是我觉得最方便最好用的。首先打开CMD控制台(这个不在赘述,详细请百度),然后在CMD中输入如下代码“W:\hmisl\siemens\sinumerik\hmi\osal\qt\bin\dumpcpp.exe {c098cd58-f8b1-4981-96c4-dd5217d40592}”然后回车,如果你用的是840D sl二次开发的环境,将W盘符替换为你所用的虚拟盘符即可,如果是其他环境请搜索dumpcpp.exe的路径,如图:

 6、这时候C:\Documents and Settings\Administrator目录下出现两个文件m6000lib.cpp和m6000lib.h,将这两个复制到项目目录里面,然后添加到项目中去,如图:

7、这个时候,那里需要就在那里引用这个控件就可以了,然后需要将控件显示出来并且调用一些函数,如图:

至此控件已经在窗体中显示出来了,下面是对控件的详细操作,不做详细解释,如图:

 在开发环境中由于没有AE硬件支持,所以效果如图:

真机上面的效果如图:

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值