宁波匠测科技

马波斯 MIDA 工件测量与激光对刀编程 — SELCA 30xx/40xx 系统篇

前言

马波斯MIDA触发式测头系统应用于CNC加工中心,实现机内测量(In-Machine Measurement)——在加工准备阶段进行工件找正,在工序间/工后进行原位尺寸检测,无需将工件移至三坐标测量机。

SELCA是意大利早期CNC系统品牌(后被发格FAGOR收购),其 30xx/40xx 系列数控系统曾广泛配套于意大利产加工中心。马波斯 MIDA 为 SELCA 系统定制了工件测量和激光对刀两套独立的宏程序包。

本文基于马波斯官方手册 D310F2AG00(工件测量)和 D310F3AG04(激光对刀)。

与发那科 G65 体系的区别:SELCA 系统不使用发那科的 G65/G66 宏调用方式,而是通过 L 命令(如 L\MARPPRB\O9301:)进行子程序跳转调用,参数通过 P0~P999 变量传递。所有工件测量和激光对刀宏程序均遵循此调用约定,详见后文各章节示例。


一、工件测量(D310F2AG00)

SELCA 30xx/40xx 系统的工件测量宏程序使用 O930x 系列编号,通过 SELCA 的 L 命令调用(类似子程序跳转)。

1.1 软件安装

在 CNC 硬盘的工件程序根目录下创建文件夹:

D:S4000PARTPROGMARPPRB

将以下文件复制到此目录:

文件 功能
O9301 标准标定循环
O9302 单轴标定循环
O9304 测头保护定位
O9305 单面测量
O9306 型腔/台阶测量
O9307 孔/销测量(4/6触)
O9308 角点检测
O9360~O9364 系统配置 + 触测移动 + 串行输出
O9391~O9393 辅助输入/输出/自定义

如果 CNC 存储空间有限,可只加载需要的测量循环,但标定循环(O9301/O9302)和公共循环(O9360~O9393)是必需的。

1.2 O9360 系统配置

在首次使用任何测量循环前,必须先编辑 O9360.SSB 文件,设置以下参数:

参数 说明 取值
P51 测量单位 1 = 毫米(mm)
P52 标定数据指针(首个参数号) 例如 P52=501,则占用 P501~P515(15个参数)
P53 触测进给速度(mm/min) 推荐 100~400 mm/min
P54 快速移动速度(mm/min) 推荐 1000~2000 mm/min
P55 探针球头半径(mm 或 in) 需精确输入

标定数据指针(P52)指向的 15 个连续参数用于存储三个探头的标定结果(每个探头5个方向数据):

P52+n 方向 探头1 探头2 探头3
+0 X+ 标定值 P(P52) P(P52+6) P(P52+12)
+1 X- 标定值 P(P52+1) P(P52+7) P(P52+13)
+2 Y+ 标定值 P(P52+2) P(P52+8) P(P52+14)
+3 Y- 标定值 P(P52+3) P(P52+9) P(P52+15)
+5 Z- 标定值 P(P52+5) P(P52+11) P(P52+17)

系统支持最多 3 个测头同时在机,各使用独立的标定数据集。

1.3 O9301 — 标准标定循环

对测头进行 X+/X-/Y+/Y-/Z- 六方向标定,使用已知尺寸的基准规。

调用格式:

P1=...          ; 标定类型:1=分度主轴,2=非分度主轴
P7=...          ; 基准规尺寸(mm 或 in)
P4=...          ; Z-触测时X方向偏移(相对基准规中心)
P5=...          ; Z-触测时Y方向偏移(相对基准规中心)
P19=...         ; 基准规类型:1=内径,2=外径
P3=...          ; 探头编号:1~3
P6=...          ; Z触测深度(绝对坐标,相对当前工件原点)
LMARPPRBO9301:  ; 调用标定循环

参数详解:

参数 说明 取值范围
P1=1 分度主轴模式:系统自动通过分度触测找基准规中心 适用带分度功能主轴
P1=2 非分度主轴模式:需预先设定基准规中心的精确坐标 适用普通主轴
P7 基准规的实际测量尺寸 必须精确已知(如 49.995 mm)
P4 Z-触测时X方向偏移量,从基准规中心向外 建议 20~30mm
P5 Z-触测时Y方向偏移量 0 = 沿X方向即可
P19=1 内径测量(环规) 探针向内触碰
P19=2 外径测量(圆柱) 探针向外触碰
P3 多测头系统中选择使用第几组标定数据 1、2 或 3
P6 Z轴触测深度(绝对值),在基准规表面以下 例如 -8mm

完整示例:

T3 M6                                ; 装测头到主轴
G48 I0                               ; 清除刀长补偿
G49 I0                               ; 清除半径补偿
M32                                  ; 测头开启
G4 K10                               ; 等待测头稳定(10秒)
O1                                   ; 激活1号工件原点
G90                                  ; 绝对值编程
P1=2                                 ; 非分度主轴
P7=49.995                            ; 基准规内径 49.995mm
P4=30                                ; Z-触测时 X+30mm 偏移
P5=0                                 ; Y方向不偏移
P19=1                                ; 内径基准规
P3=2                                 ; 使用第2组标定数据
P6=-8                                ; Z触测深度 -8mm
LMARPPRBO9301:                     ; 执行标定
M42                                  ; 测头关闭

1.4 O9302 — 单轴标定循环

对指定单一方向进行标定,适用于更换探针后快速修正某个方向。

支持标定方向:X+, X-, Y+, Y-, Z+, Z-。

调用格式(独立格式):

P1=...          ; 标定方向
P24=...         ; 目标位置(如起点 X20 Y30 Z40,P24=30 → X+ 方向移动;P24=10 → X- 方向移动)
P3=...          ; 探头编号:1~3
LMARPPRBO9302:  ; 调用单轴标定循环

输出:单轴标定结果布局含 +4=Z+ 行 P(P52+4)(O9301 无 Z+ 行)。

1.5 O9304 — 安全定位循环

带碰撞保护的安全定位移动循环。在移动过程中持续监控测头信号,遇碰撞立即停止。

调用格式:

P1=...          ; 移动轴:1=X, 2=Y, 3=Z
P24=...         ; 目标位置(工件坐标)
LMARPPRBO9304:  ; 调用安全定位循环
参数 说明
P1 移动轴(1=X / 2=Y / 3=Z)
P24 目标位置(工件坐标)
速度 通过 O9360 的 P54 设定

1.6 O9305 — 单面测量

对工件在 X、Y 或 Z 轴单一方向进行触碰测量,获取该面坐标值。

应用场景: 工件找边、Z轴高度确认、余量测量。

1.7 O9306 — 型腔/台阶测量

测量凹槽或凸台的内外尺寸,适用于型腔宽度、台阶高度等特征。

1.8 O9307 — 孔/销测量(4/6触)

测量圆孔、方孔、外圆、方形销的圆心坐标和直径/边长。支持 4 触或 6 触模式。

4 触模式: 适用于标准圆孔/外圆,X+/X-/Y+/Y- 四个方向。
6 触模式: 适用于方形或需更高精度的场合,增加对角触测。

1.9 O9308 — 角点检测

检测内角或外角的顶点坐标,用于工件找正和坐标系偏置。

1.10 辅助循环

宏号 功能
O9360 系统配置参数设定(P51~P55)
O9361~O9363 X/Y/Z 轴触测移动底层循环
O9364 串行输出(测量结果打印/下载)
O9391~O9393 用户自定义输入/输出/辅助

二、激光对刀(D310F3AG04)

SELCA 30xx/40xx 上的 MIDA LASER 非接触激光对刀系统使用独立的程序包,最大支持 2 台激光器 + 3 个工作头 的配置。

2.1 软件安装

在 CNC 硬盘的工件程序根目录下创建文件夹:

D:S4000PARTPROGLASER

将以下所有文件复制到此目录:

测量循环(MARPOSS1~MARPOSS9)

程序名 功能
MARPOSS1 MIDA 激光标定
MARPOSS2 刀具预设(长度/半径)
MARPOSS3 直刃刀具切削效率检测
MARPOSS4 复杂刀具刃口检测
MARPOSS5 圆形刀具扇区检查
MARPOSS6 轴向断刀检测
MARPOSS7 盘铣刀预设
MARPOSS8 热漂移检测
MARPOSS9 镗刀半径和长度测量

初始化程序

程序名 功能
LSHEAD 初始化调用程序(需自定义激光数量和工作头数量)
INI1 激光1 / 工作头1 参数初始化
INI2 激光2 / 工作头1 参数初始化(单激光时不需要)
INI3 激光1 / 工作头2 参数初始化
INI4 激光2 / 工作头2 参数初始化
INI5 激光1 / 工作头3 参数初始化
INI6 激光2 / 工作头3 参数初始化

辅助程序

程序名 功能
AUX_IN1~6 自定义输入文件(每个循环开始时执行)
AUX_OUT1~6 自定义输出文件(每个循环结束时执行)
LSON / LSOFF 激光开关程序
RDTOOL / WRTOOL 刀具表数据读/写
MOVEG1 / MOVEG2 / MOVEG3 / MOVEGT 移动控制底层
TOUCH 触测程序
TLASER 静态输出测试
ENGLISH~GERMAN 多语言报警消息
LASPOS1~6 标定参数调用(激光×工作头)
SELUSIN / SELUSOUT 可定制输入/输出调用
MESSAGE 消息显示调用

2.2 LSHEAD 初始化配置

LSHEAD 程序必须在使用前自定义,设置以下核心参数(官方参数编号):

参数 说明 取值
P20 激光/工作头数量 0=1 台激光器 + 1 个工作头;1=多激光/多工作头
P146 报警消息显示语言 1=意大利语, 2=英语, 3=法语, 4=西班牙语, 5=德语
P178 镗刀不转测量转速 1000

2.3 初始化参数(INI1~INI6)

每个 INI 文件(INI1~INI6)中定义的参数,官方编号为 P0~P24:

参数 说明
P0 测量单位(1=mm;0.0394=in)
P1 标定基准类型(1=盘形;2=带球)
P2 动态输出脉冲时长(0.005 / 0.010 / 0.020 / 0.100 s)
P3 半径测量接近方向(±1)
P4 长度测量接近方向(±1)
P5~P7 激光束位置(半径轴/平行轴/长度轴)
P8 激光叉深
P9 工作平面(1~6)
P10 断刀管理(0=不停机;1=停机报警)
P11 触测重复性(0.005)
P12~P14 最小刀长 / 最大刀长 / 最大刀径
P15~P17 第1/2/3次触测回退
P18 快速速度
P19 测量速度
P21 / P22 激光开/关 M 码(51/52)
P23 / P24 动态输出使能/禁止(53/54)

注:官方 INI 参数为 P0~P24 编号体系,无”刀具类型””信号极性”参数(原描述已删除)。

2.4 PLC 程序要求

机床制造商必须在 PLC 中提供以下 M 功能:

M 功能 作用
气动快门开启/关闭 在激光窗口前形成或消除气幕
激光开启/关闭 控制激光发射
CWDTF=1 在 PLC 初始化段 INIZ 中写入,禁用测量按键报警(激光专用)

2.5 多激光系统的工作区域管理

当系统配置 2 台激光器(Laser A / Laser B)和 3 个工作头(Head 1 / Head 2 / Head 3)时,机床空间被划分为若干逻辑工作区域,每个区域映射到一台特定的激光器:

┌──────────────────────────────────────────────┐
│                  空间划分                       │
│                                                │
│  工作头1 (Head 1)  ── 区域 A1 ──  Laser A    │
│  工作头2 (Head 2)  ── 区域 A2 ──  Laser A    │
│                      区域 B2 ──  Laser B      │
│  工作头3 (Head 3)  ── 区域 A3 ──  Laser A    │
│                      区域 B3 ──  Laser B      │
└──────────────────────────────────────────────┘

区域分配规则:

  1. 每区域独占一台激光器 — 每个工作区域必须始终分配一台激光器,不允许存在无激光器覆盖的区域。例如 Head 1 可固定分配 Laser A,Head 2 可根据实际布局选择 Laser A 或 Laser B。

  2. 全局区域模式 — 当全局区域(Global Zone)激活时,系统自动计算机床各工作头与激光器的空间距离,选择距当前工作头最近的激光器执行测量,确保最短移动路径和最快换刀检测。

  3. INI 文件对应关系 — 每台激光器在每个工作头的配置参数通过独立的 INI 文件管理,各 INI 文件与激光器、工作头的对应关系如下:

INI 文件 所属激光器 所属工作头 作用
INI1 激光器 1 (Laser A) 工作头 1 激光1·头1 接近速度、进给速度、退回距离等
INI2 激光器 2 (Laser B) 工作头 1 激光2·头1 配置参数
INI3 激光器 1 (Laser A) 工作头 2 激光1·头2 配置参数
INI4 激光器 2 (Laser B) 工作头 2 激光2·头2 配置参数
INI5 激光器 1 (Laser A) 工作头 3 激光1·头3 配置参数
INI6 激光器 2 (Laser B) 工作头 3 激光2·头3 配置参数

即每台激光器在每个工作头位置都有独立的配置参数,实际使用中仅需配置与装机数量相符的 INI 文件(例如单激光系统只需 INI1、INI3、INI5)。调用测量循环时,系统根据当前活动区域自动路由到对应的激光器和 INI 配置文件。


三、调用方式

SELCA 系统使用 L 命令调用宏程序,与发那科的 G65 体系不同:

; 工件测量 — 通过 L 命令跳转到 MARPPRB 目录下的程序
P1=2
P7=49.995
LMARPPRBO9301:     ; 调用标定循环

; 激光对刀 — 官方 F3AG04 调用格式文本为 LMARPOSS1:(未带路径前缀)
LMARPOSS2:           ; 调用刀具预设(是否带 LLASER 路径前缀待官方确认)

SELCA 系统以 P 参数 传递数据(类似发那科的 # 变量),参数范围从 P0 到 P999。


四、常见问题与排查

现象 可能原因 解决方案
标定循环不触发 测头未开启(M32未执行) 标定前执行 M32 + G4 K10 延时
标定结果异常 P52 标定数据指针与系统占用参数重叠 将 P52 改为空闲参数区域(如 P600+)
激光不响应 LSHEAD 中激光数量设置错误 确认 LSHEAD 中 P20 与实际激光和工作头数量一致
触测速度不合适 P53 设定过快导致测头过冲 将 P53 降至 200 mm/min 以下
气幕未形成 PLC 中气动快门 M 码未触发 检查 PLC 梯形图中气动快门开/关逻辑
多激光系统串光 工作区域与激光器映射错误 检查 INI1~INI6 中各自激光器的配置参数

参考文档

文档编号 名称 用途
D310F2AG00 Part Check on Machining Centres – CNC SELCA Series 30xx/40xx 工件测量宏程序
D310F3AG04 Tool Check on Machining Centre – SELCA CNC Series 30xx/40xx 激光对刀系统

需要更具体的方案?

每台机床的配置、工况和预算都不一样,本文给出的只是参考框架。您可以:

  • 发机床型号和加工需求(如"VCN-530C + BT40 + 铝件批量"),我们帮您匹配具体型号和配置
  • 提供测头/对刀仪故障现象,我们免费帮您初步判断故障等级和维修方向
  • 索取报价单或预约现场勘察,工程师上门评估后出正式方案

宁波匠测科技——15 年专注精密测量,服务雷尼绍、马波斯、波龙全系测头与对刀仪的选型、安装、校准、维修与维保。

联系方式 信息
官方预约 jcetech.cn/contact
咨询热线 157-5780-7400 / 132-2194-1413
寄修地址 宁波鄞州研发园 A2-12B17
服务范围 全国上门 · 加急维修 48 小时响应

把问题发给我们,让专业工程师帮您算清楚这笔账。