059_地电位差引起的总线通信间歇性失效
凌晨三点,第七次重启
那是一个做工业现场数据采集的项目。主控单元和若干采集节点之间用一对双绞线做总线通信,线缆长度大概一百二十米,穿过两个配电区域。节点是总线供电,电源和信号共用同一对差分线。
调试阶段一切正常。通信用示波器看眼图张开得漂漂亮亮,连续跑二十四小时误码率为零。然后设备拉到现场,第一天就出事了。
现象很怪:白天基本正常,到了晚上七八点开始,通信开始间歇性丢包。不是完全断,是每隔几分钟丢一两帧,然后又恢复。主控端的错误计数器缓慢增长,节点端偶尔报校验错误。第二天白天又好了。连续三天如此,像闹鬼一样准时。
现场值班的人说了一句话让我记到现在:“你们这个设备怕黑。”
我一开始怀疑是温度。晚上温度降了,某处接触不良。于是把所有接线端子重新拧了一遍,问题依旧。又怀疑是电源纹波,换了线性电源,依旧。怀疑是终端电阻匹配,重新算了特征阻抗,改了匹配电阻,依旧。
后来用一个笨办法:在总线两端各接了一路高阻抗差分探头,同时录波。把触发条件设成校验错误脉冲,抓到了异常波形。波形显示,每次误码发生时,差分信号上叠加了一个缓慢漂移的共模电压,幅度大概在几伏到十几伏之间来回摆动,周期和市电的负载变化节奏高度吻合。
问题不在信号本身,在于两个节点之间的“地”根本不是同一个地。
地电位差是怎么钻进差分总线里的
差分通信之所以抗干扰,前提是接收端只关心两根线之间的电压差。理论上,只要差分接收器的共模输入范围足够宽,两根线上同时叠加一个相同的干扰,差分输入看到的差值为零,通信不受影响。
但这个“同时叠加相同干扰”的前提,在真实工程里经常不成立。
原因
相关新闻
皮肤病变检测数据集 | 皮肤病变 痤疮检测 皮肤健康 目标检测 YOLO格式 9278期
皮肤病变检测数据集 | 皮肤病变 痤疮检测 皮肤健康 目标检测 YOLO格式 9278期 数据集概述 本数据集专注于皮肤表面常见病变与痘印的视觉检测与分类,服务于皮肤科辅助诊断、医疗美容及智能健康管理。数据涵盖 16 类不同的皮肤瑕疵,适配目标检测模型训练…
PUBG(绝地求生)游戏内目标检测数据集 | PUBG 游戏目标检测 多目标识别 计算机视觉 YOLO格式9277期
PUBG(绝地求生)游戏内目标检测数据集 | PUBG 游戏目标检测 多目标识别 计算机视觉 YOLO格式9277期 数据集概述 本数据集专注于第一人称射击游戏《绝地求生》(PUBG)画面中的多类别目标检测,服务于游戏视觉分析、AI 辅…
工业控制系统深度解析:31 流量控制回路
第31章 流量控制回路 31.1 为什么流量控制是工业控制最典型的回路? 在工业现场,温度、压力、液位、成分控制最终大量依赖流量控制。 例如化工装置:原料进入反应器需要控制流量,冷却水、蒸汽、压缩空气都需要控制流量。能源系统则有燃气流量、氢气流量、水流量、油流量。…
最新新闻
LPDDR5联调避坑:WCK2CK、Bank Group与ZQ训练
简介:JESD209-5B LPDDR5 标准文档面向移动设备、低功耗存储芯片的硬件设计、验证与固件开发人员,提供 JEDEC 于2021年6月发布的 LPDDR5 第五版规范,便于在接口设计、时序核对与合规性评估中直接查阅权威依据。压缩包内为1个 PDF 文件…
机器动物控制技术在工业自动化中的应用与优化
1. 项目概述在制造业自动化升级的浪潮中,机器动物控制技术正成为生产线上的新星。不同于传统的机械臂或传送带系统,机器动物控制系统需要模拟生物运动特性,实现更灵活、更智能的生产操作。这种融合了仿生学原理与工业控制算法的技术ÿ…
2024年Android Studio安装与配置全指南
1. 为什么选择Android Studio作为开发工具作为一名从Eclipse时代走过来的Android开发者,我见证了Android Studio从最初的测试版到如今成为官方唯一推荐IDE的全过程。2024年的Android Studio 2024.2.2版本已经集成了Kotlin多平台开发支持、更智能的代码补全和经过优化…
栈与括号匹配:从合法括号判断到工程级字符串校验
判断一个字符串里的括号写法是否合法,这行字看着平平无奇,但它是很多人第一次真正跟“栈”打照面的地方。题面不复杂:给定字符串 s,只考虑圆括号、方括号、花括号三种成对符号,左括号必须以正确顺序被同类型右括号闭合…
NIO零拷贝技术原理与性能优化实践
1. 项目概述:为什么需要理解NIO零拷贝?我第一次在生产环境遇到性能瓶颈时,追踪发现80%的时间都花在了数据拷贝上。一个简单的文件传输服务,竟然要经历4次数据拷贝和3次内核态切换。这就是传统IO的痛点,也是NIO零拷贝技…
技术方案设计与系统架构实战方法论
1. 技术方案设计的核心逻辑与实战方法论技术方案设计本质上是在约束条件下寻找最优解的决策过程。从业15年来,我总结出技术方案设计的三个黄金法则:首先必须明确业务目标与技术指标的映射关系,其次要建立可量化的评估体系,最后必须…
日新闻
PIC18F86J10与MAX14431BAEE+的隔离SPI通信设计与调试
/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …
基于MAX14431与PIC18F47K42的隔离SPI通信设计实战
/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …
MAX14431与STM32F417ZG的SPI隔离通信链路设计与实战
/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …
周新闻
DRV8818+MK20DX128步进电机驱动方案:从电路到固件实战
/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …
DRV8818PWPR+PIC18LF46K40双极步进电机驱动实战指南
/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …
DRV8818PWPR与MK20DX128VFM5工业级双极步进控制协同设计
/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …
月新闻
DRV8818+MK20DX128步进电机驱动方案:从电路到固件实战
/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …
DRV8818PWPR+PIC18LF46K40双极步进电机驱动实战指南
/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …
DRV8818PWPR与MK20DX128VFM5工业级双极步进控制协同设计
/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …