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

NX1P2 控制器,通过 EtherCAT 带 3 个安川伺服轴。 软件里设置的正向软限位(Software Limit)是 1000.00mm。 最近遇到一个奇葩 Bug: 轴在走到 520.13m

联系人:15619475913010

电话/手机:联系客服

发布时间:2026-05-28 15:51

浏览:211次

NX1P2 控制器,通过 EtherCAT 带 3 个安川伺服轴。
软件里设置的正向软限位(Software Limit)是 1000.00mm。
最近遇到一个奇葩 Bug:
轴在走到 520.13mm 这个特定坐标时,PLC 突然报错提示‘超过正向软限位’,轴立马减速停止。

此时监控实际位置和指令位置,都是 520.13mm,根本没到 1000mm。

程序里没有动态修改过软限位参数。

如果我用手轮把轴摇过这个点(比如摇到 521mm),再启动自动,它又能继续往前走,直到 1000mm 正常停下。
为什么这个 520.13 会被 PLC 底层判定为超限?难道系统内部的数据类型转换溢出了?
明扬工控技术客服2026-05-28 15:53:24
答复内容:亲,这个 0.5V 没有被导轨或柜体“偷走”,它一定掉在了 B 柜这一路电流环的某个串联环节上。

先给结论:

A、B 柜 AI 模块互换后,低 0.5V 仍然跟着 B 柜走,说明问题不在 AI 模块本体,而在 B 柜这一路的外部回路:端子、保险、隔离器、防雷器、接线方式、公共端、屏蔽/接地漏流、AI 通道参数或程序换算。

一、0.5V 到底掉在哪里?

两线制 4-20mA 回路大概是这样:

+24V

压力变送器

信号线

AI 模块电流输入电阻 / 采样电路

0V

你测到 B 柜比 A 柜低 0.5V,意思是 B 柜回路里多了一个压降。

压降和电流、阻值的关系是:

U = I × R

如果现场电流大约是 20mA:

0.5V ÷ 0.02A = 25Ω

如果现场电流大约是 10mA:

0.5V ÷ 0.01A = 50Ω

所以这个“消失的 0.5V”很可能是 B 柜里多出来的几十欧姆等效阻抗造成的。

常见位置有:

端子排接触电阻
保险丝座
电流信号隔离器
防雷器 / 浪涌保护器
安全栅
中间端子压线不良
AI 模块前连接器接触不良
公共 0V 回路压降
屏蔽层或接地造成漏流
多串了一个 250Ω 采样电阻
信号回路串了电流表/显示表
二、但注意:电压低 0.5V 不一定会让读数偏小

两线制 4-20mA 变送器本质上是调节回路电流。只要变送器两端还有足够工作电压,它应该仍然能输出正确电流。

西门子 S7-1200 的 SM1231 模拟量输入支持 0-20mA 和 4-20mA 电流量程,电流输入的工程数据通常按 0 到 27648 表示满量程。也就是说,PLC 真正读的是电流,不是你测到的那 23V 电压。

所以要分两种情况:

情况 1:B 柜电流真的比 A 柜小

那就是回路里有压降、漏流、接线错误、负载过重,导致变送器输出能力受影响。

情况 2:B 柜电流其实一样,但 PLC 显示偏小

那问题不在现场电流环,而在:

AI 通道参数
4-20mA / 0-20mA 量程选择
程序缩放
通道地址
滤波设置
量程上下限
HMI 显示换算
三、最容易忽略的真凶:B 柜多串了一个东西

既然你换 AI 模块、换变送器、重新拉线都没改变,最该查的是 B 柜内部这段:

变送器信号线进柜

端子排

保险/隔离/防雷/中间端子

AI 模块端子

MANA / 0V

尤其看 B 柜是不是比 A 柜多了:

一个信号隔离器
一个浪涌保护器
一个安全栅
一个电流显示表
一个检修端子
一个保险丝端子
一个测试端子
一个 250Ω 电阻
一个跳线端子

很多柜子看起来“一模一样”,但端子排里可能多一只防雷器,或者某个端子带保险/带测试功能。

四、还有一个高概率:AI 通道组态不一致

S7-1200 的模拟量模块很多通道是按组设置电压/电流类型的。SM1231 规格里写到,部分模块的电压或电流输入是按 2 个通道一组选择的。

所以要检查 B 柜项目里:

该通道是否设为 4-20mA
有没有误设成 0-20mA
有没有误设成电压输入
同组另一个通道有没有影响
程序里 SCALE_X / NORM_X 参数是否一致
HMI 显示量程是否一致

如果 B 柜实际电流正常,但显示偏小,优先查这里。

五、怎么最快定位?
第一步:串入万用表,直接测电流

不要只测电压,要把万用表打到 mA 档,串到回路里。

比较 A、B 两柜:

A 柜实际电流 = ?
B 柜实际电流 = ?

判断:

电流一样,PLC 显示不一样:
查 AI 参数、程序缩放、地址、HMI。

电流不一样:
查回路压降、漏流、端子、隔离器、防雷器、接线。
第二步:用 4-20mA 信号发生器打入 B 柜 AI

把现场变送器断开,用信号源直接给 B 柜 AI 输入:

4mA
12mA
20mA

看 PLC 原始值是否正确。

理论上电流输入满量程对应 0 到 27648 这类工程值;4-20mA 时,4mA 大约对应 5529,20mA 对应 27648。

如果信号源打进去正常:

AI 模块和程序基本没问题,查现场回路。

如果信号源打进去也偏小:

查 B 柜 AI 参数、地址、程序缩放、模块前连接器。
第三步:沿着 B 柜回路逐段量压降

在 B 柜同一电流下,逐段测:

24V+ 到变送器+
变送器- 到端子排
端子排前后
保险端子前后
防雷器前后
隔离器输入输出
AI+ 到 AI-
AI MANA 到 0V
0V 到电源负极

只要找到某一段多了 0.5V,问题就在那一段。

六、导轨/柜体接地会不会“偷电压”?

正常不会。

但是如果 B 柜存在下面情况,接地确实可能间接造成偏差:

屏蔽层两端接地,形成地环流
信号负端被接到 PE
MANA、0V、PE 混接位置不一致
变送器外壳接地后,信号负端又和外壳有泄漏
防雷器对地有漏流
电缆破皮对地漏电

这不是导轨偷电压,而是电流环出现了额外分流或地回路。

4-20mA 回路最怕的不是“地线吸电”,而是:

一部分电流没有经过 AI 输入电阻

PLC 读到的电流就会偏小。

七、最可能的结论

亲,这个现象最像下面几种之一:

1. B 柜信号回路里多串了隔离器、防雷器、保险端子、测试端子或电阻
2. B 柜某个端子/前连接器接触不良,形成几十欧姆压降
3. B 柜 MANA/0V/PE 接法和 A 柜不一致,有漏流或分流
4. B 柜 AI 通道组态或程序缩放和 A 柜不一致
5. B 柜实际电流并没有偏,只是 PLC/HMI 显示换算偏小

最建议你马上做两个动作:

1. 串表测 A、B 两柜实际 mA 电流
2. 用 4-20mA 信号源直接打 B 柜 AI,看原始值是否正确

一句话:

0.5V 没有消失,它一定掉在 B 柜那一路电流环的串联阻抗或公共回路上;但读数偏小,最终要看“AI 实际收到的电流”有没有变小,而不是只看 23V 还是 23.5V。
对不起,请登录后再发表评论!

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