PC DMIS 二次开发 - API详解(第6篇)_第1页
PC DMIS 二次开发 - API详解(第6篇)_第2页
PC DMIS 二次开发 - API详解(第6篇)_第3页
PC DMIS 二次开发 - API详解(第6篇)_第4页
PC DMIS 二次开发 - API详解(第6篇)_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

PC‑DMIS二次开发—API详解(第6篇)一、PC‑DMISAPI基础概念1.1什么是PC‑DMISAPIPC‑DMIS对外提供COM自动化接口(ActiveX),外部程序(VBScript、VBA、VB6、C#、Python、Delphi等)可以调用这套接口,实现对PC‑DMIS软件的自动化控制:打开程序、执行测量、读取测量结果、修改特征、输出报告、控制硬件等。底层本质:PCDLRN.Application这个COM对象,是二次开发的入口。1.2开发环境支持列表内置脚本:PC‑DMIS自带VBScript编辑器(脚本窗口),无需额外软件;OfficeVBA(Excel/Access);VisualBasic6.0;.NET(C#/\hVB.NET);Python(win32com.client调用COM);C++(ATL/COM调用)。⚠️版本兼容提示:不同PC‑DMIS版本(2020/2022/2024)API对象、方法略有差异,高版本向下兼容,但新增函数低版本不可用。1.3开发模式区分内部脚本模式:直接在PC‑DMIS脚本编辑器运行,依附软件进程;外部独立程序模式:外部exe启动PC‑DMIS或连接已打开的PC‑DMIS实例。二、核心入口对象:PCDLRN.Application2.1创建/连接PC‑DMIS实例VBS示例(内置脚本)vb

DimpcdApp

SetpcdApp=Application'直接获取当前运行实例外部VBS/C#/Python绑定python

#Python示例

importwin32com.client

pcdApp=win32com.client.Dispatch("PCDLRN.Application")两种模式:CreateObject:启动新的PC‑DMIS进程GetObject:绑定已经打开运行的PC‑DMIS2.2Application常用属性&方法成员说明.ActivePartProgram获取当前激活的测量程序对象(PartProgram).Visible=True/False控制PC‑DMIS窗口显示隐藏.Quit关闭PC‑DMIS软件.Version读取软件版本号.ExecuteCommand(命令字符串)执行PC‑DMIS命令行(等价于脚本命令)三、PartProgram测量程序对象(最核心对象)PartProgram代表一个.prg测量程序文件,几乎所有测量操作都基于这个对象。3.1常用方法Open(文件完整路径):打开一个prg程序vb

Dimprog

Setprog=pcdApp.PartPrograms.Open("D:\test\demo.prg")Save()/SaveAs(路径):保存/另存程序Execute:执行整个测量程序ExecuteFromLine(行号):从指定代码行开始运行Pause/Stop:暂停、停止测量执行Close:关闭程序3.2关键状态属性.IsExecuting:布尔值,判断程序是否正在运行.ExecutionMode:运行模式(脱机/联机模式).ActiveAlignment:当前激活坐标系.Features:特征集合(点、线、面、圆、圆柱等所有测量元素).Dimensions:评价尺寸集合(距离、角度、同轴度、平行度等公差评价)四、Feature特征对象集合PartProgram.Features是所有几何特征的容器。4.1遍历所有特征示例(VBS)vb

Dimft

ForEachftInprog.Features

MsgBoxft.Name&"类型:"&ft.Type

NextFeature对象核心属性属性含义.Name特征名称,如CIR1、PLN1.Type特征类型:POINT/LINE/PLANE/CYLINDER/CIRCLE/SPHERE.X,.Y,.Z特征理论坐标.MeasuredX,.MeasuredY,.MeasuredZ实测坐标.Nominal理论值对象.Measured实测结果对象可以读取实测值、偏差、矢量方向、直径、高度等几何参数。4.2动态新建特征(API创建测量点/圆)高级API允许外部代码自动生成测量特征、自动生成测量路径,实现程序自动编程(脱机自动构建检测方案)。五、Dimension公差评价对象(尺寸&形位公差)PartProgram.Dimensions,对应PC‑DMIS里的尺寸评价命令。获取评价结果:.Actual(实测值)、.Nominal(理论)、.TolerancePlus、.ToleranceMinus、.Deviation(偏差).Status:判定结果(合格/超差)

示例逻辑:循环读取所有公差,自动导出OK/NG结果。六、Report报告输出API6.1报告对象PartProgram.Report

常用功能:Report.SaveAsPDF(保存路径):直接导出PDF检测报告Report.SaveAsExcel:导出Excel结果Report.Refresh:刷新报告数据自定义报告模板加载(调用模板文件.rpt)生产自动化常用场景:测量完成后,自动命名PDF报告,保存到指定目录。七、Command脚本命令对象(底层代码行)PartProgram.Commands对应prg文件里一行一行的PC‑DMIS脚本代码。Commands.Add:插入一行PC‑DMIS指令(相当于手写DMIS代码)修改、删除、插入DMIS语句,实现动态修改测量程序示例:动态插入注释、赋值变量、跳转语句。八、变量接口:PartProgram.Variables读写PC‑DMIS内部变量(V1,V2,V3或者自定义变量)vb

'给变量赋值

prog.Variables("V1").Value=10.0

'读取变量值

Dimval

val=prog.Variables("V1").Value适合外部程序传递参数给测量程序(产品批号、序列号、补偿值)。九、探针/测头管理APIpcdApp.Probe对象:获取当前激活测头文件读取测尖角度、补偿数据调用测头校验程序自动运行校验自动化产线常用:切换不同测头配置。十、执行回调与事件(Event事件驱动)高级开发可以监听事件:OnExecutionStart程序开始运行OnExecutionFinish测量完成触发回调OnFeatureMeasured单个特征测量完成事件用途:每测完一个特征实时上传数据到MES系统。十一、完整最小示例代码(VBS,可直接粘贴到PC‑DMIS脚本窗口运行)vb

'连接当前PC‑DMIS实例

Dimapp

Setapp=Application

Dimprog

Setprog=app.ActivePartProgram

'执行程序

prog.Execute

'等待运行结束

DoWhileprog.IsExecuting

WScript.Sleep500

Loop

'导出PDF报告

prog.Report.SaveAsPDF"D:\Report\Result.pdf"

MsgBox"测量完成,报告已保存!"十二、API开发常见坑与注意事项COM对象释放问题:外部程序必须释放对象Setxxx=Nothing,否则PC‑DMIS进程残留后台占用许可;联机权限:外部API控制机床运动,必须保证PC‑DMIS处于联机模式、控制器就绪;多线程禁止:PC‑DMISCOM接口不是线程安全,不能多并发调用;权限许可:部分高级自动化功能需要PC‑DMIS购买AUTOMAT

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论