手里有一份 0i-MF 的梯形图,换到 0i-MD 上编译直接报错;地址表打开一看,两边的 X/Y 地址范围根本不一样;朋友说”我们厂里 0i-MD 和 0i-MF 梯形图通用”,结果一上机就动作异常。
这类问题的根源不在梯形图逻辑,而在于发那科不同 CNC 机型搭载的 PMC 平台本身就不一样。对 PMC 梯形图编程的人来说,机型对比不是理论问题,是每个项目都会撞上的现实问题。0i 系列内部按用途分了多条产品线,PMC 的容量、指令集、地址范围都有差异。你在 A 机型上跑通的方案,搬到 B 机型上很可能要动结构。
这篇文章把 0i-MD 与 0i-MF 的 PMC 差异摆在一起讲,并给出一套跨机型移植的检查方法。
说明:本文讨论的 0i-MD / 0i-MF PMC 差异为系列层面的通用特征。具体 PMC 模块型号、可用指令范围、地址总数、定时器/计数器/数据寄存器数量随机型配置与 PMC 型号差异较大,本文不列具体参数号与固定地址数,请以随机官方手册、PMC 参数画面与现场实测为准。
一、先说结论:这两个机型不是”同系列所以兼容”
很多人默认 0i-MD 和 0i-MF 同属 0i 系列,发那科梯形图应该通用。这个假设是错的,也是绝大多数跨机型移植故障的起点。
两条产品线的定位不同:
| 对比项 | 0i-MD | 0i-MF |
|---|---|---|
| 产品定位 | 中高端加工中心 / 复杂多轴 | 高性价比加工中心 / 车铣复合 |
| 搭载 PMC | 内装型 PMC,偏向内置控制 | 内装型 PMC 为主,机型跨度较大 |
| 梯形图程序来源 | 原厂标准梯形图 + 厂家追加 | 原厂标准梯形图 + 厂家追加 |
| 常见差异点 | I/O 容量、功能指令、地址分配 | 同左,但整体规模可能不同 |
相关文章推荐:一文读懂 FANUC 0i-D 系列 CNC 系统:型号、功能与应用全解析。那篇讲的是 CNC 系统本身,本篇只聚焦 PMC 侧的跨机型差异。
关键认知:跨机型移植时,梯形图的逻辑逻辑可以参考,资源不能假定一致。把 MD 的发那科梯形图搬到 MF 上先试,不试不知道,一试就是事故。同一段控制需求,MD 上能跑通,不代表 MF 上有足够的定时器、数据寄存器或 I/O 点可用。
下面这张对照表把两条产品线的 PMC 差异点逐条列出,红黄两行是移植时最容易出问题的位置。

二、PMC 梯形图与 CNC 的关系:先理解再对比
要理解机型差异,得先理解 PMC 在系统里的位置。
FANUC PMC(Programmable Machine Control)就是 CNC 里的 PLC,负责在顺序程序与机床侧之间传递信号:读取 X 输入、驱动 Y 输出、和 NC 侧交换 F/G 信号、执行定时计数与流程跳转。入门概念可以看站内这篇:FANUC PMC 是什么?工作原理与应用详解。
发那科梯形图本质上就是用 PMC 顺序程序描述机床的动作时序:什么条件启动、延时多久、什么条件切换、异常时怎么处理。所以同一台 CNC 换一款 PMC 型号,梯形图的骨架能沿用,但骨架里能填多少东西会变。所以同一台 CNC 换一款 PMC 型号,梯形图的”骨架”能沿用,但”骨架里能填多少东西”会变。
顺序程序怎么组织,可以看:FANUC PMC 编程核心:深度解析顺序程序的 8 大数据构成。
三、FANUC Ladder III 基础:移植前必须先做的三件事
做跨机型对比和移植,FANUC Ladder III 是绕不开的工具。关于它的安装与基础用法,站内有一篇完整教程:FANUC LADDER III 软件下载安装教程。
用 FANUC Ladder III 做正式对比之前,先把三件事做扎实,否则后面全是白忙:
- 确认 PMC 型号,不要只看 CNC 型号。同一 CNC 机型可以挂不同 PMC 模块,PMC 型号才是梯形图资源的直接决定因素
- 在目标机上做一次完整备份,包括顺序程序、参数、报警表。没有备份就不要动别人的机器
- 记录当前 PMC 参数画面,尤其是定时器、计数器、数据存储区(对应站内这篇提到的容量查看方法:如何使用 LADDER III 软件查看梯形图程序的步数)
四、发那科梯形图跨机型移植:四步走完再谈上机
把上面三件事做完,正式的移植流程可以拆成四步。下面这张图是完整流程和三类高发区的对照:
三类高发区:X/Y 地址范围、定时器与时基、资源与等级划分。这三块在程序报错之前就要人工过一遍,因为很多情况下编译能过、运行时才暴露。

五、发那科梯形图地址表:X/Y/F/G/R/K/D 的跨机型差异点
地址表是移植时最容易出问题的地方,也是发那科 PMC 调试里最基础的一块。站内这篇专门讲了格式:FANUC PMC 地址表详解 | X/Y/G/F/R 信号对照表。
各信号段的定位回顾:
| 信号 | 方向 | 谁产生 | 谁接收 |
|---|---|---|---|
| X(机床输入) | MT 侧 → PMC | 按钮、接近开关、限位 | 梯形图读取 |
| Y(机床输出) | PMC → MT 侧 | 梯形图写入 | 电磁阀、接触器、灯 |
| F(CNC 送 PMC) | CNC → PMC | NC 侧内部信号 | 梯形图读取 |
| G(PMC 送 CNC) | PMC → CNC | 梯形图写入 | NC 侧功能逻辑 |
| R | PMC 内部 | 保持型继电器 | 断电保持 |
| K | 保持型存储 | 保持型存储区 | 跨扫描保持 |
| D | 数据存储 | 数据存储区 | 位数据/数值运算 |
跨机型移植时的三个差异高发点:
- X/Y 地址范围不同:I/O 模块型号与通道数不同,地址分配范围就不一样。同一个物理按钮在两台机床上可能是不同地址
- F/G 地址范围不同:NC 侧功能信号数量随机型配置变化,涉及 NC 功能联动的地方最容易踩
- R/K/D 容量不同:保持区与数据区容量差异,直接决定你的梯形图能存多少中间数据
这里必须强调一条铁律:地址以现场为准,不是以程序为准。FANUC CNC 梯形图里的地址从来不是行业标准,只是”这台机床的约定”。详见站内这篇:FANUC PMC 与 NC 信号交换异常怎么查?X / Y 地址对不上的排查路径。
六、常见梯形图程序段的移植检查清单
以下几类程序段在跨机型移植时最容易出问题,按段对照检查:
顺序执行框架
END1 → END2 → END3 → 回 END1 循环执行,第 1 级优先级最高。检查两台机器的等级划分是否一致,尤其是原厂程序里第 3 级放长定时器的写法,某些 PMC 平台并不支持。详见:FANUC PMC 顺序程序 END1 / END2 / END3 详解。
延时与计数
定时器的实际延时 = 预置值 × 时基,预置值是数字不是时间,时基在 PMC 参数里、梯形图里看不到。移植时如果时基配置不同,同一段程序的实际动作时间会变。详见:FANUC PMC 定时器 TMR 指令详解 与 定时器不动作 / 提前动作 5 个原因排查。
流程控制
跳转与循环逻辑在两台机器上如果有不同的跳转目标或标签冲突,会出现”死循环”或”某段被绕过”。详见:FANUC PMC 跳转指令 JMP / LBL 怎么用?4 种写法。条件跳转 CJMP 记得必须配兜底 JMP,否则两条分支会串行执行。
边沿检测
单脉冲处理靠 DIF / DIFU / DIFD,不是靠 CNT(CNT 是计数器指令)。移植时如果边沿处理方式不同,会出现重复触发或漏触发。详见:FANUC PMC 上升沿 / 下降沿检测 DIF 指令详解。
七、刀库、主轴、报警与外围控制的移植重点
刀库控制
刀库程序是移植难度最高的部分,因为它同时依赖 X/Y(现场侧)、F/G(NC 侧)和大量中间继电器。移植时重点核对:刀位检测信号地址、ATC 换刀时序各步之间的延时、刀具计数用的计数器号、错误路径的输出信号。原地照搬地址是最危险的做法。
主轴控制
主轴转速指令走 G 信号到 NC 侧,主轴运行/停止状态由 F 信号回读。这两段都要核对地址范围。主轴相关的模拟量与多段速数据也要确认目标 PMC 的存储容量。
报警与外围
报警输出通常是 Y 段输出到指示灯或通过 B 报警号送屏幕显示,两种方式用的资源不同。冷却、润滑、排屑、防护门这类外围动作相对独立,移植风险较低,但要检查互锁条件里有没有引用别的机床特有地址。
外围 I/O 侧的硬件基础可以看这篇:数控机床 I/O 模块全解析。
移植前逐段过一遍的动作:把源程序每个地址列成一张表(这是 PMC 梯形图编程里最枯燥但最可靠的一步),标注”源机地址 / 目标机地址 / 确认依据”,依据必须是目标机的实际地址表或现场实测,不是猜。改完之后,这份对照表就是这台机床的私人字典。
八、发那科 PMC 调试:跨机型验证的五个动作
做发那科 PMC 调试时,机型差异带来的验证工作比单机型多一整轮。下面五个动作按顺序走,每一步都建立在上一步确认为真的基础上。
程序写进去不等于能用。跨机型移植后,按这五步验证,每一步都别省:
- 先空运行:断开实际负载或把输出强制到安全状态,观察有无异常报警
- 看 PMC 诊断画面:确认没有资源超限、步数超限、地址越界类提示
- 单动作测试:拆成最小单元逐个动作,先手动、再半自动、再自动
- 看扫描周期:顺序程序过长会导致扫描时间变化,进而影响高速加工时的信号时序
- 保留原机程序备份:确认目标机稳定运行前,不要覆盖任何原始备份
调试环境可以参考站内这篇:数控机床电气调试必备软件全解析。遇到报警时对照:FANUC 基本报警代码大全。
如果上线后某个输出完全不动作,可以走站内这条路径排查:发那科梯形图 Y 输出上电后全为 0 六方向排查。若是改完程序行为没变化,多半是跳转绕过或改的不是实际在跑的那份程序,参考:FANUC PMC 在线编辑失效 / 程序保护与 PMC 停止许可解除。
九、零基础学习路径
按这个顺序补,跨机型对比这一块会自然落地:
- PMC 是什么 —— FANUC PMC 是什么?工作原理与应用详解
- 顺序程序构成 —— FANUC PMC 编程核心:8 大数据构成
- 地址表格式(本篇前置基础,必读) —— FANUC PMC 地址表详解 | X/Y/G/F/R 信号对照表,也是 FANUC PMC programming 里最常被跳过的一课
- 梯形图入门 —— FANUC PMC 梯形图编程入门
- 延时与计数 —— TMR 定时器、CTR 计数器
- 流程与边沿 —— JMP / LBL 跳转、DIF 微分指令
- 工具准备 —— FANUC Ladder III 软件下载安装教程、数控机床电气调试必备软件全解析
- 地址错位排查 —— X / Y 地址对不上的排查路径
- 实战案例 —— FANUC PMC 故障排查实战 5 案例、「望眼法」解决 FANUC 机床故障分类
如果你需要一份系统的 PMC 维修学习资料作为长期参考,可以看看这篇:
FANUC PMC 维修学习资料 —— 站内 PMC 维修方向的学习资料汇总,适合配合上面的路径系统学。
English readers searching for Fanuc ladder diagram portability between 0i-MD and 0i-MF will find that FANUC PMC programming manuals define each PMC platform’s actual limits — the same reference hierarchy applies on FANUC’s official support pages: FANUC America and FANUC Europe 。
零基础学习发那科梯形图:数控机床 PMC 视频教程全攻略 | 从看不懂梯形图到独立调试
免责声明
本文内容来自 CNCShare 站点维护团队与一线维修工程师的实战经验整理,仅供技术学习与参考。FANUC 0i 系列不同机型搭载的 PMC 模块型号、可用资源数量、指令支持范围与地址分配随配置差异较大,本文未列出具体 PMC 型号、参数号与地址号,请以随机官方手册与现场实测为唯一依据。跨机型移植梯形图属于高风险操作,会真实驱动机床动作,必须在机床处于安全状态、断电挂牌条件下由具备资质的人员执行;操作前必须完成目标机顺序程序、参数与报警表的完整备份,并保留原机备份。未经充分验证不得直接上机自动运行,否则可能引发意外动作或设备损坏。由此产生的后果由操作者自行承担。
常见问题
X/Y 和 G/F 地址有什么区别?
X/Y 属于「MT 侧 ↔ PMC」段,G/F 属于「PMC ↔ CNC」段,两段机制不同。按钮无反应先查 X 段,NC 功能不生效才往 G/F 方向想。
该用 G 地址却写成 Y 地址,会有报警吗?
不会报警。信号会石沉大海,这是最隐蔽的一类错误,必须逐地址核对。
同一个地址被多处驱动会有什么现象?
会时好时错,这是最直接的原因。应查地址分配表,确认该地址有几个驱动源。























暂无评论内容