首页 > 全部分类 > 技术问答 > 帖子内容

FX5U 的 40SSC 模块电子齿轮比动态修改报错: FX5-40SSC-S 模块带 MR-J4-B 伺服,走光纤 SSCNET III/H 模式。 系统正常运行,伺服定位很准。 核心故障: 现

联系人:1563406791339

电话/手机:联系客服

发布时间:2026-09-21 07:10

浏览:82次

FX5U 的 40SSC 模块电子齿轮比动态修改报错:
FX5-40SSC-S 模块带 MR-J4-B 伺服,走光纤 SSCNET III/H 模式。

系统正常运行,伺服定位很准。

核心故障: 现场需要根据不同产品切替‘电子齿轮比(Numerator/Denominator)’。我在 PLC 逻辑里通过专用指令/缓冲存储区(Buffer Memory)去动态更新齿轮比,只要指令一激活,40SSC 模块直接报错跳闸,代码 3201(Electronic Gear Setting Error)!

我明明是在伺服处于 Servo OFF(伺服准备就绪但未使能)状态下修改的参数,依然报警。
难道 SSCNET 光纤总线下,电子齿轮比只能在软件里死配置,不能在运行中通过 PLC 动态改写吗?
明扬工控技术客服2026-09-21 08:54:25
答复内容:亲,这个故障我认为核心不是“SSCNET III/H 下电子齿轮完全不能动态改”,而是:
你改的这个电子齿轮属于 40SSC 的“Basic Parameters 1 / 坐标换算层”,它不是普通运行参数。Servo OFF 只关掉伺服使能,并没有让 40SSC 重新装载这组轴参数。

对 FX5-40SSC-S,三菱把电子齿轮定义在:
[Pr.2] Number of pulses per rotation (AP)
[Pr.3] Movement amount per rotation (AL)
[Pr.4] Unit magnification (AM)
电子齿轮关系本质上是:
Electronic Gear = AP / (AL × AM)
这是 Simple Motion 模块的机械坐标换算参数,不是简单的“运行中倍率”。manualzz.com
而三菱对这类 Basic Parameters 1 的说明非常关键:
它们是系统启动时根据机器和电机设置的参数,并在 PLC READY 有效时被装载/生效。

也就是说,生效边界是 PLC READY,不是 Servo ON/OFF。 eu-assets.contentstack.com
所以你现在做:
Servo OFF
↓
40SSC仍然 PLC READY = ON
↓
直接改 AP / AL / AM
↓
要求立即应用
对模块来说其实是在:
运动控制坐标系仍然已经建立的情况下,突然改变“1 mm 到底等于多少内部脉冲”。

这就是为什么仅仅 Servo OFF 仍然不够。
第一件事还要先纠正:MR-J4-B 下别把 PA06/PA07 当成主要电子齿轮层
你这个组合是:
FX5-40SSC-S
+
MR-J4-B
+
SSCNET III/H
对 FX5-SSC-S + MR-J4-B,三菱的电子齿轮计算主要就在 Simple Motion 模块的:
AP
AL
AM
这一层。
官方例子里,HG-KR 4194304 pulse/rev 时,FX5-SSC-S 直接用:
Pr.2 AP
Pr.3 AL
Pr.4 AM
建立机械单位和电机转数的关系。相反,PA06/PA07 Electronic gear numerator/denominator 是后来的 FX5-SSC-G / MR-J5-G 场景中明确参与的一层。manualzz.com
所以如果你现在 PLC 程序实际上是在尝试通过 SSCNET 去在线改:
MR-J4-B PA06 / PA07
我会先停下来。
对于你这个 FX5-40SSC-S + MR-J4-B 系统,产品切换时真正应该考虑的是 40SSC 的 AP/AL/AM,而不是把 J4-B 的伺服参数 PA06/PA07 当成一个实时倍率寄存器。
为什么会一激活就报 Electronic Gear Setting Error?
我认为最可能有两个原因。
第一:新参数组合在“生效检查”那一刻不合法
电子齿轮不是一个参数,而是三参数组合:
AP
AL
AM
三菱要求它们最终满足电子齿轮换算关系,并且各自都必须在允许范围内。manualzz.com
假设原来:
AP = 4194304
AL = 10000.0
AM = 1
你想切成另一套:
AP = 4194304
AL = 5000.0
AM = 1
如果 PLC 是逐扫描写:
Scan 1:先改 Numerator / AP
Scan 2:再改 Denominator / AL
模块中间可能短暂看到:
新 AP
+
旧 AL
+
旧 AM
形成一个暂时不合理的电子齿轮关系。
如果此时又触发了参数更新/重新装载,就可能直接判参数错误。
所以这种参数不能像普通速度设定值那样:
MOV 新值
↓
马上执行
而应该作为一整组参数原子性地更新。
第二:PLC READY 仍然 ON
这才是我认为你现场最可能的主因。
正常启动顺序,三菱本身给的是:
设置 Servo parameters / Axis parameters
↓
Cd.190 PLC READY = ON
↓
Cd.191 All axis Servo ON = ON
``` :chatgpt-content-reference{index="4"}


这实际上已经暗示了反过来的正确改参数顺序:

```text
先 Servo OFF
↓
All axis Servo ON = OFF
↓
PLC READY = OFF
↓
写完整新参数组
↓
PLC READY = ON
↓
等待 READY / Synchronization 正常
↓
再 Servo ON
而不是:
Servo OFF
↓
PLC READY一直ON
↓
直接写电子齿轮
所以:
Servo OFF ≠ 40SSC参数重建状态。

我建议你现场按这个顺序做一次
先不要继续在线硬改。
安全停轴后:
1. Md.26 Axis operation status
   确认 Standby / Stopped

2. Md.141 BUSY = OFF

3. Cd.191 All axis Servo ON = OFF

4. 确认各轴 Servo OFF

5. Cd.190 PLC READY = OFF

6. 一次性写入新的:
   Pr.2 AP
   Pr.3 AL
   Pr.4 AM

7. 再次读取并核对三个值

8. Cd.190 PLC READY = ON

9. 等待:
   READY = ON
   Synchronization flag = ON
   无 Error

10. Cd.191 All axis Servo ON = ON
40SSC 的正常启动条件本来就要求 READY、Synchronization、BUSY 等状态满足后才能启动定位。ManualZilla
如果按照这个过程:
3201 不再出现,

那基本就能坐实:
问题不是“不能写”,而是参数生效时机不对。

但是我更建议你重新考虑:产品切换真的应该改“电子齿轮”吗?
这是这个案例最值得提醒的一点。
如果机械本身:
电机
减速机
丝杠
编码器
都没换,
只是:
产品A一圈走10 mm
产品B希望程序里表现成另外一个比例

那我通常不会去改 Axis Electronic Gear。
因为电子齿轮定义的其实是:
机器物理坐标系。

比如:
电机转1圈
=
工作台真实移动10.000 mm
这个事实不会因为产品换型而改变。
你如果动态把它改成:
电机转1圈
=
5.000 mm
40SSC 会认为整个轴的坐标尺度变了。
于是受影响的不只是“定位倍率”,还有:
当前位置
目标位置
速度
加速度
软件限位
回零坐标
插补距离
同步控制比例
甚至绝对位置系统的一致性。
这就相当于运行中告诉控制器:
“从现在开始,一毫米不是原来那个一毫米了。”

这本来就属于高风险操作。
如果只是不同产品需要不同比例,应该改哪一层?
更推荐下面两种方式。
方案 A:保持 AP/AL/AM 永远固定
产品配方只改:
Position command
Movement amount
Pitch
Feed length
例如:
产品A:
Target = 100 mm

产品B:
Target = 125 mm
轴坐标永远是真实机械 mm。
这是最干净的。
方案 B:如果真的是“同步倍率”需求
如果你的实际目的不是改变轴机械比例,而是:
主轴转一圈,从轴产品A走1倍,产品B走1.2倍

那应该去用 Advanced Synchronous Control 里的:
Gear
Speed change gear
Synchronous parameter
这类本来就是为运行倍率设计的功能。
不要通过修改整个轴的:
Pr.2 / Pr.3 / Pr.4
来实现。
因为 AP/AL/AM 是“坐标基础”,同步齿轮参数才是“工艺倍率”。
还有一个很容易忽略的后果:改完电子齿轮以后当前位置怎么办?
假设改前:
当前位置 = 100.000 mm
但是你把比例从:
1 motor rev = 10 mm
改成:
1 motor rev = 5 mm
物理轴根本没动,
但同一个 encoder count 按新比例解释以后,理论机械位置可能就变成:
50.000 mm
所以即使参数更新成功,也必须考虑:
Current feed value
Home position
Soft limits
Absolute position relation
如何重新建立。
否则下一个定位命令可能比 3201 更危险。
这也是为什么三菱把 AP/AL/AM 放在系统启动用的 Basic Parameters 1,而不是普通运行控制数据里。eu-assets.contentstack.com
我现在给这个故障的嫌疑排序
第一:
PLC READY没有OFF
Servo OFF 了,但参数坐标系统仍然处于有效状态。
第二:
改错了层级
把 MR-J4-B 的 PA06/PA07 当成了 SSCNET 实时电子齿轮;FX5-40SSC-S 的轴电子齿轮核心其实是 AP/AL/AM。manualzz.com
第三:
AP / AL / AM不是作为完整组合一起更新
中间产生瞬时非法齿轮比。
第四:
新比值本身超出允许范围
或者小数位、unit magnification 配合错误。
第五:
改完比例以后当前坐标没有重新处理
导致模块发现坐标/绝对位置关系不一致。
所以这个案例一句话讲透:
FX5-40SSC-S 下的电子齿轮不是普通的运行中倍率参数,而是决定轴机械坐标体系的 Basic Parameters 1。Servo OFF 只停止功率输出,并不会让 40SSC 重新装载坐标参数;这组参数是在 PLC READY 建立时生效的。因此要程序改写,必须把轴真正退出运动控制状态、关闭 All Axis Servo ON 和 PLC READY,完整写入 AP/AL/AM 后重新建立 PLC READY,再 Servo ON。

而且如果你只是为了“不同产品使用不同倍率”,我反而建议不要动态改电子齿轮:
机械坐标 AP/AL/AM 固定;产品差异放到定位距离、同步齿轮或配方倍率层。

这样系统会稳定得多,也不会每次换产品都去重建整个坐标系。
另外有一点我需要保留:我在当前可检索的 Mitsubishi 官方错误表里没有确认到 3201 明确对应 FX5-40SSC-S 的 “Electronic Gear Setting Error”;如果你现场能看到 GX Works3 的完整报错画面,最好同时核一下它显示的是 3201、3201H 还是子代码,因为 3201H 在三菱其他参数表里也会作为型号设定值出现。根因判断上,先看 PLC READY 是否在改参数期间一直为 ON,这一项最有价值。
对不起,请登录后再发表评论!

触屏端
扫一扫手机也能发信息
明扬工控商城-工控网-工控自动化真品,一站式专业服务!