机床上的手轮(MPG,Manual Pulse Generator)突然不灵,是最容易被当成”大事”的一类故障——其实它的根因高度集中,而且排序非常固定:先看伺服有没有励磁,再看脉冲有没有进 CNC,再看 I/O Link 有没有分配到位,最后才翻参数。绝大多数现场按这个顺序走,不用拆床、不用换板。
本文把这四步拆成可执行的判断动作,并补上三个网络流传版本里几乎没人讲清的点:手轮脉冲到底是走哪条物理通道进 CNC 的、为什么 I/O 模块”字节数分配少一点”手轮就废了、以及换新手轮后为什么”能摇动”不等于”摇得对”。
相关阅读:本文多处要用 PMC 信号画面,不熟的话先看《FANUC PMC 梯形图入门:从信号地址到在线监控》。
一、先分清三种”手轮不灵”
不同现象指向完全不同的那一层,先花一分钟归类,能省掉后面一半的排查:
| 现象 | 最可能的层 | 优先查什么 |
|---|---|---|
| A. 完全无反应:摇手轮屏幕坐标不动、机床也不动 | 伺服未就绪 / 未进手轮方式 / 脉冲没进 CNC | 放大器 LED 是否为 0、屏幕左下是否显示 HND、PMC 里 X12 是否翻转 |
| B. 能转但机床不动:某轴不动、某倍率不动、或走了却与刻度不符 | 轴选/倍率信号、倍率参数、快速进给钳位累积 | G18.x 轴选、G19.4/19.5 倍率、No.7113/7114、No.7100#4(HPF) |
| C. 某一模式才失灵:HANDLE 能用 JOG 不能用(或反之) | 方式选择与使能参数 | 方式选择信号 MD1/MD2/MD4(G43.0~G43.2)、参数 No.7100#0(JHD) |
经验:A 类里”伺服没就绪”和”I/O Link 没分配”合计占了七八成;B 类里多数是倍率参数或轴选译码;C 类基本是方式选择信号或 JHD 参数。

二、第 1 步:伺服是否就绪(先看放大器 LED)
手轮能让机床动起来的前提和 JOG、自动运行是同一个:伺服必须已经励磁(准备好)。所以这一层没过,什么都别往下查。
判定方法:看 αi 系列伺服放大器(SVM)和电源模块(PSM)正面的一位七段 LED。
- 显示
-:PSM 未就绪(主电源 MCC 未吸合、急停中);SVM 则是在等待就绪信号 - 显示
0:就绪(Ready)——这才是唯一”OK”的显示 - 显示其他任何内容:即为该模块的报警代码(红色 ALM 灯同时点亮即为报警;右下角小数点点亮则为”警告”,模块暂时还在运行但迟早会报警)
按 αi 系列维护说明的用法:只有 LED 为”0″才算伺服励磁完成。是”0″以外的显示,JOG 运行和自动运行都不会动作——手轮当然也不动。此时该查的是伺服相关参数和布线,而不是手轮本身。
⚠️ 别犯这一个错:这套”看数码管”的方法只适用于 αi / αi-B 这类带七段显示的模块。如果你床子上是 βi SV(一体式),它没有七段 LED,只有一个 POWER 灯、一个 LINK 灯和一个黄色 ALM 灯——这种情况只能以CNC 屏幕上的报警号判断,不要因为”看不到数码管”就慌。
顺手在同一个界面查的三件事(CNC 诊断数据 No.0000、No.1010 中右侧为”1″的项):
- 到位检查(定位确认):诊断 No.0300 位置偏差量 > 参数 No.1826 到位宽度 时置 1,表示轴还在移动未结束
- 互锁:是否输入了禁止轴移动的互锁信号 —— 全轴互锁
*IT(G8.0)、各轴互锁*IT1~*IT4(G130.0~G130.3) - CNC 处于复位状态:此时手动与自动都不能操作
参考更多诊断号的读法见《FANUC DGN 诊断号速查:000–605 怎么看》。

三、第 2 步:MPG 本体、电缆与接头
确认伺服 OK、波形(脉冲)确实没进来之前,不要急着改参数。手轮本体就是个增量式正交编码器,输出两路相差 90° 的方波 HA(A 相)/ HB(B 相),供电是 +5 V。
判定步骤(按官方排查顺序):
- 先量 +5 V:在手轮背面的螺丝端子上量有没有 5 V。没有 5 V,先查供电线,别怪编码器。
- 再量波形:转动手轮,用示波器在同样位置测 HA/HB。正常情况下应看到两路方波,A 相上升沿时看 B 相电平即可判断正/反转(正转时 A↑ 而 B 为低电平,反转时 A↑ 而 B 为高电平)。同时确认通断比(占空比)和 HA/HB 的相位差。没有任何输出 → 手轮本体或电缆开路;有输出但进不了 CNC → 往第 3 步走。
- 查电缆异常:断线、短路、屏蔽层断。
- 反接与干扰:A/B 相反接会导致计数反向或丢脉冲;屏蔽层应在控制器侧单点接地,两端都搭铁形成地环会注入噪声,表现为”静止时自己微微漂移/自走”;电缆不要与动力线并行,远离变频器。
小提醒:手轮转速不要超过每秒 5 转。摇太快超出限制时,可能出现”停不住”或者”摇的距离和刻度对不上”——这不一定是丢步,可能是第 4 步讲的脉冲累积机制在起作用。

四、第 3 步:I/O Link 分配(★ 最易被忽略的一环)
这是本文最想强调的一点:手轮脉冲信号不是走某个”模拟口”,而是挂在 I/O Link 总线上的。这也是为什么”机床侧什么都没坏,手轮就是不认”。
4.1 手轮脉冲的物理通道
以 0i 系列常见配置为例,手轮的 HA/HB 脉冲线接在 I/O 模块的 JA3 接口(不是 CNC 主板),+5 V/GND 也由同一接口的对应脚提供。注意这里有个关键分叉:
- 有的机床手轮接在系统侧 I/O 板的 JA3
- 有的接在标准机床操作面板背后的 JA3
这两个 JA3 只有被 PMC 地址分配到的那一个是有效的——分配给了系统侧,面板后那个就无效;反之亦然。如果你把新手轮换接到了”没被分配的那个”接口上,会出现一个极具迷惑性的现象:线路怎么量都是通的、5 V 也正常、波形用手持表也能测到,但信号就是进不了 CNC。这是多面板配置下最隐蔽的一个坑。
4.2 手轮所在模块必须按 16 字节分配
一个 I/O 模块要在 PMC 里申领到多大地址,是靠模块名决定的。规则很硬:
OC02I= 16 字节;OC01I= 12 字节;输出用/8(8 字节)、/6、/4- 连接手轮的模块必须至少 16 字节(OC02I)——即使它实际只用了几个点,也必须按 16 字节分配,否则手轮脉冲不被识别
- 手轮要接在离系统最近的那个 ≥16 字节模块的 JA3 上
为什么 OC01I 不行?12 字节(96 点)刚好被普通 I/O 占满,根本没有留给手轮的地址空间。所以”手轮模块用 OC01I”是最典型的分配错误——分配的是同型号硬件,错的是字节数。
4.3 手轮信号到底落在哪个地址
在一个起始地址为 Xm、按 16 字节分配的模块上:
| 地址区间 | 用途 |
|---|---|
| Xm+0 ~ Xm+11 | 普通输入点(12 字节 = 96 点,哪怕实际没用满也要这么分配) |
| Xm+12 ~ Xm+14 | 三台手轮的脉冲信号输入 |
| Xm+15 | 输出侧报警/状态用字节 |
举例:某配置里手轮所在的 16 字节模块从 X0 开始,那么旋转手轮时应当能看到 X12 里的信号在翻转;用第二、第三台手轮则分别看 X13、X14。
这是全篇最好用的一条现场判据:
PMC → PMCDGN → STATUS,一边慢摇手轮一边盯住 Xm+12(X12)是否翻转。
不翻 → 脉冲没进 CNC,问题在①本体/电缆 ②5 V ③ JA3 接到无效那个口 ④ 模块没按 16 字节分配。
翻了还不动 → CNC 已经收到脉冲,问题在方式选择、PMC 输出信号或参数,跳到第 4 步。
改完分配后必须保存,并断电再上电才生效;另外注意模块要先于系统上电,系统上电时检测不到模块,分配就白设了。
排查 PMC 信号的实操手法可参考《FANUC PMC 故障排查 5 个真实案例》。

五、第 4 步:参数优先级与手轮选择开关
到这一步,脉冲已确认进 CNC 了,剩下的就是”CNC 认不认、按什么倍率认”。
5.1 常用参数速查表
下表依据 0i 系列(含 0i-B/C/D/F)相应的连接说明书/操作说明书,具体适用性请以随机床参数手册为准:
| 参数 | 名称 / 位 | 作用与说明 |
|---|---|---|
| No.7100 #0 | JHD | JOG 方式下手轮进给是否有效。置 1 时,手轮进给与增量进给同时有效 |
| No.7100 #1 | THD | TEACH IN JOG 方式下手轮是否有效 |
| No.7100 #4 | HPF | 遇超快移速度时脉冲如何处理。0 = 超出部分被丢弃(走的距离与刻度不符);1 = 超出部分被累积(停手后机床还会继续走) |
| No.7100 #5 | MPX | 每台手轮是否使用各自的倍率信号(详见 5.2) |
| No.7102 #0 | HNGx | 每个轴相对手轮回转方向的移动方向。0 = 同向,1 = 反向 |
| No.7110 | 手轮个数 | 使用几台手轮。有效值 1、2、3(T 系列通常 1~2,M 系列 1~3) |
| No.7113 | 倍率 m | 有效范围 1~127。倍率选择信号 MP2=1、MP1=0 时的放大倍数(多数面板上就是标 ×100 的那一档,常设 100) |
| No.7114 | 倍率 n | 有效范围 1~1000。MP1=1、MP2=1 时的放大倍数(多数面板上就是标 ×1000 的那一档,常设 1000) |
| No.7117 | 累积脉冲上限 | HPF=0 时,允许被累积(而非丢弃)的脉冲数上限,范围 0~99999999 |
表里是当下主流 0i 系列的口径。不同代际差异很大——例如要在老机型上启用手轮进给功能,另有对应的使能位(有资料对比:0i-D/30i 一类取 No.8131 #0,而 18/18i/0i-A/0i-B/0i-C 一类另有 9920 系列的对应位,更早的 0C/0D 系列又是另一组号)。这类”使能位”必须先确认系统型号再查手册,不要跨型号照抄——这正是”换了新机上却不行”的最常见原因。
5.2 H3:多台手轮并存时的参数优先级陷阱
很多机床同时存在一个面板上的手轮(或小键盘侧的手轮)和一个独立的悬挂式/手持盒 MPG。两者并存时,最容易踩三个坑:
坑一:台数没开够。 CNC 只认 No.7110(手轮个数) 设定的那几台。你接了 2 台却设成 1,第 2 台即便线接得漂漂亮亮,也必须是无效——它连”被识别”的资格都没有。
坑二:所有手轮共用一组倍率信号(MPX=0)。 这是默认情况,此时第 1~5 台手轮共用 MP1/MP2 这一组倍率信号,倍率值统一由 No.7113 / No.7114 决定。后果是:你在 A 手轮上调的倍率会同时影响 B 手轮;如果给第二台手轮单独接了倍率开关(接成 MP21/MP22),在 MPX=0 下这些信号是被忽略的,那台手轮的倍率会被钉死在最小档(×1)上——表现就是”能摇,但摇半天只走一点点”。
坑三:反过来,MPX=1 时地址变了。 把 No.7100 #5(MPX)置 1,切换为”每台手轮各自一套倍率信号”:
| MPX | 手轮 | 倍率信号 | 倍率参数 |
|---|---|---|---|
| 0 | 第 1~5 台(共用) | MP1、MP2 | No.7113(m) / No.7114(n) |
| 1 | 第 1 台 | MP1、MP2 | No.7113 / No.7114 |
| 1 | 第 2 台 | MP21、MP22 | No.7131 / No.7132 |
| 1 | 第 3 台 | MP31、MP32 | No.7133 / No.7134 |
也就是说:MPX 一改,第二、第三台手轮的倍率参数号就整体平移了。如果你只改了 MPX 却没同步填 No.7131 以后这些参数,那两台手轮的倍率就失去来源。改这个位之前,先明确”这台床子到底有几台手轮”。
综合起来一句话:多台手轮并存的优先级规则是 先 No.7110 决定”有几台算数”,再 MPX 决定”各自还是共用倍率”,最后才是各自己的倍率参数。跳过前两级直接查倍率参数,是这类问题久拖不决的典型原因。
5.3 H3:PMC 侧该盯的信号
参数告诉 CNC 怎么解释脉冲,而选哪个轴、用哪档倍率是 PMC(梯形图)告诉 CNC 的。信号不对,参数再对也没用:
| 信号 | 地址 | 说明 |
|---|---|---|
| MD1 / MD2 / MD4 | G43.0 / G43.1 / G43.2 | 方式选择信号(HANDLE 方式由组合决定) |
| HS1A~HS1D | G18.0~G18.3 | 第 1 台手轮的进给轴选择(4 位编码) |
| HS2A~HS2D | G18.4~G18.7 | 第 2 台手轮的轴选择 |
| HS3A~HS3D | G19.0~G19.3 | 第 3 台手轮的轴选择 |
| MP1 / MP2 | G19.4 / G19.5 | 手轮进给(与增量进给)倍率选择 |
| RT | G19.7 | 手动快速进给选择 |
| *IT / *ITn | G8.0 / G130.0~G130.3 | 全轴互锁 / 各轴互锁(为 0 时禁止移动) |
轴选择编码(第 1 台,HS1E~HS1A 五位):0000 = 未选择任何轴;0001 = 第 1 轴;0010 = 第 2 轴;0011 = 第 3 轴;依次类推到 0100 = 第 4 轴(实际轴号与地址对应关系以该机 PMC 为准)。
倍率编码:MP2/MP1 = 00 → 最小单位 ×1;01 → ×10;10 → ×m(No.7113);11 → ×n(No.7114)。注意在增量进给方式下,同样这两位的含义是 ×1 / ×10 / ×100 / ×1000。
现场判据:手轮能动但某个轴不动 → 进 PMC 信号状态画面看 G18.0~G18.3 有没有随轴选择开关变化。不变说明 X 输入没进梯形图,或者译码那一级没把 G 地址驱动起来,这属于 PMC 问题不是手轮问题。
能自己读懂梯形图就能自己定位,见《PMC 项目六阶段:怎么独立调试梯形图》。
六、三种方式的差异与切换条件
手轮相关的方式主要有三种,先认清它们的边界:
- HANDLE(手轮方式,屏幕左下显示
HND):专门用于手轮进给。选到手轮方式时只要左下显示出”HND”,说明方式选择信号已正常输入;没显示出 HND,就去看 PMC 信号状态画面里的 MD1/MD2/MD4(G43.0~G43.2)。 - JOG(手动连续进给):默认情况下 JOG 方式里手轮是无效的。想要”JOG 方式下手轮也能用”,把参数 No.7100 #0(JHD)置 1——置 1 后手轮进给与增量进给同时有效。这就是典型”A 方式能用、B 方式不能用”的参数开关。
- INC(增量进给):走的是与手轮倍率同一套信号(MP1/MP2),所以 No.7113/7114 设定的 m、n 同时影响这两种操作(
10→×m、11→×n,在增量进给下对应 ×100/×1000)。
切换不生效时,按顺序排这四样:① HND 是否显示(方式选择信号)② 是否输入了手轮进给轴选择信号 HS1A~HS1D ③ 倍率选择是否正确 ④ CNC 是否处于复位/互锁状态。
一个容易被忽略的限制:加工中心上被指定为分度工作台分度轴的那个轴(如 B 轴),既不能 JOG 进给、也不能增量进给、同样不能手轮进给。如果”就某个轴摇不动”,且那轴正好是分度轴,那是设计如此,不是故障。
如果机床是没有任何报警但就是不动这一类毛病,排查思路和维度见《FANUC 无报警故障诊断:先看 DGN000/003/005》。
七、更换 MPG 后的校验步骤(”能动”不等于”摇得对”)
新手轮装上能摇,只说明脉冲进去了;每一格走多少、方向对不对、会不会累积,都还是未知数。换完之后按下面逐条回写:
- 确认新手轮的每转脉冲数(常见的手轮每转 100 脉冲,但不同厂牌/型号差别很大)。以手轮铭牌或样本为准,不要照抄别人的数字——这一项决定了后面所有数字。
- 回写倍率参数:常用 No.7113(m)、No.7114(n)。多数机床的常规值分别是 100 与 1000,但必须对照该机面板的实际档位设定来验证,不要假设。
- 核方向:参数 No.7102 #0(HNGx) 决定每个轴相对手轮回转方向的移动方向(0 同向 / 1 反向);部分机型另有方向反转信号 HDN。摇一格看屏幕坐标往哪边走,不对就改。
- 核高速钳位:确认 No.7100 #4(HPF) 的设定与需求一致,并理解它的副作用——HPF=0 时超出快移速度的脉冲被丢弃(机床走得比刻度少),HPF=1 时会被累积(停手还继续走,甚至短时失控感)。需要累积时留意 No.7117(累积脉冲上限)。
- 实走验证:从最小档开始摇。每一格移动量 = 该档倍率 × 最小指令单位。在 ×1 档慢摇数格,用屏幕机械坐标核对是否与”每脉冲 × 脉冲数 × 最小单位”相符;再逐档向上验证 ×10、×m、×n。
- 限速提醒:告知操作者手轮转速控制在每秒 5 转以内,否则可能停不住或与刻度不符。
一句话记牢:换手轮后只确认”能动”是用坏的放大镜——每转脉冲数、倍率参数、方向、高速钳位这四项没回写,机床就只是”能动”,不是”摇得对”。
最后给一个可直接照做的顺序:看放大器 LED 是否”0″ → 屏幕左下是否”HND” → 看 X12(Xm+12)随转动是否翻转 → 看 G43.2 是否进入手轮方式 → 看 G18.x(轴选)与 G19.4/19.5(倍率) → 最后才翻 No.7100/7102/7110/7113/7114 参数。前两步锁死硬件层,中间三步锁死信号链,最后一步才是软件层——按这个顺序,绝大多数手轮故障现场就能完事。
常见问题
FANUC 机床手轮没反应是什么原因?
按固定顺序查四层:①伺服未励磁——αi 放大器七段 LED 只有显示 0 才算就绪,其余显示(含 -)都不是就绪状态,此时 JOG 和自动运行也不动;②手轮未进手轮方式——屏幕左下应显示 HND,没有就是方式选择信号 MD1/MD2/MD4(G43.0~G43.2)没到位;③手轮脉冲没进 CNC——在 PMC 状态画面看手轮所在模块的 Xm+12(常为 X12)随手轮转动是否翻转;④I/O Link 分配问题——连接手轮的模块必须按 16 字节(OC02I)分配,OC01I(12 字节)放不下手轮。
手轮能转但机床不动,怎么检查?
脉冲已经进 CNC 了,问题在信号或参数层:①PMC 信号状态画面看轴选择信号 HS1A~HS1D(G18.0~G18.3)是否随轴选开关变化,不变就是 X 输入没进梯形图或译码没驱动 G 地址;②看倍率信号 MP1/MP2(G19.4/G19.5)编码是否正确:00=×1、01=×10、10=×m(No.7113)、11=×n(No.7114);③某轴摇不动先确认它是不是分度工作台分度轴——分度轴不能 JOG、增量、手轮进给;④走距离与刻度不符查 No.7100#4(HPF):0=超出快移速度的脉冲被丢弃,1=被累积(停手还会继续走,上限 No.7117)。
I/O Link 没分配会导致手轮失效吗?
会,而且这是最容易被忽略的一环。手轮脉冲挂在 I/O Link 总线上(接在 I/O 模块的 JA3),连接手轮的模块必须在 PMC 地址分配中设为至少 16 字节(模块名 OC02I),即使实际点数少也必须按 16 字节分配,否则手轮脉冲不被识别;OC01I 只有 12 字节,是典型的分配错误。手轮要接在离系统最近的那块 ≥16 字节模块的 JA3 上;改完分配必须保存并断电再上电才生效,且模块要先于系统上电。
换了新的手轮后走位不准,需要改什么参数?
能动只说明脉冲进去了,还要回写四项:①按新手轮的每转脉冲数(以手轮铭牌为准,常见 100 脉冲/转,不同厂牌差别大)核对倍率参数 No.7113(m,范围 1~127)与 No.7114(n,范围 1~1000),常用值 100/1000;②方向参数 No.7102#0(HNGx):0=同向 1=反向,摇一格看坐标方向;③高速钳位 No.7100#4(HPF)与累积上限 No.7117,否则会出现停不住或走距离与刻度不符;④多台手轮并存时确认 No.7110(手轮个数)与 No.7100#5(MPX,各手轮是否用独立倍率信号)。验证时从 ×1 档慢摇,手轮转速控制在每秒 5 转以内。

























暂无评论内容