DI滤波学习


DI滤波


下面我把你截图中的功能 完整、专业、但容易理解地解释清楚


这是什么界面?

这是 Phoenix Contact 菲尼克斯 的 **Inline / Axioline 远程 IO 配置软件(例如 Startup+ 或 I/O Assistant)**里,对一个数字量输入模块 AXL DI 64/1-ME"滤波时间(Filter Time)" 参数进行配置。

你展开的是:

复制代码
参数 → 滤波 → 过滤时间

右侧下拉框显示可选的滤波时间:

  • 1 ms
  • 3 ms
  • 10 ms
  • < 100 μs

🎯 滤波时间(Filter Time)是什么?为什么要设置?

数字量输入模块 DI(Digital Input) 会读取现场信号,比如:

  • 按钮
  • 开关
  • 传感器输出
  • 接触器辅助触点
  • 继电器的干接点

这些信号在实际工业环境中非常容易出现:

  • 抖动(Bounce)
  • 电磁干扰(EMI)
  • 触点弹跳(CHF-bounce)
  • 干扰噪声尖峰

因此 DI 模块会自带一个"数字滤波器(Digital Input Filter)"

📌 目的:让信号更稳定,不要误判。


📌 各个选项什么意思?

说明 适用场景
< 100 μs 几乎不滤波,输入几乎实时变化 高速检测,例如编码器 Z 相、快速光电开关
1 ms 输入变化必须保持稳定超过 1ms 才认定 一般的工业按钮、光电开关
3 ms 更强抗干扰,延迟更高 电磁干扰较强、线缆较长
10 ms 非常强的抗干扰,延迟变大 动作慢的机械设备,如继电器触点、大型按键

🧠 举个工业现场真实例子

情况 1:按钮按下

按钮触点抖动:

0 → 1 → 0 → 1 → 0 → 1

如果没有滤波,会被当成 多次触发

设置 3ms 或 10ms 滤波后:

  • 必须连续 3ms 都是 "1"
  • 才会被认为是真正按下

避免误触发。


情况 2:高速传感器

高速传感器输出脉宽:200 μs

如果设置 1 ms 滤波 → 这脉冲会被完全过滤掉

必须设置:

  • <100 μs

才能正确识别。


🔧 这些参数会写到哪里?

在 Phoenix Contact 的 Inline / Axioline 系统中,滤波参数会写入:

  • 设备参数块
  • 最终存入 Startup+ 导出的 DTM / Device Parameter File
  • CoDeSys 或 PLC 会读取到这些参数,写入到设备

如果对应 EtherCAT,则最终可能写入:

  • ESI → CFG → ENI → Slave EEPROM(部分类型支持)

🔍 AXL DI 64/1-ME 的滤波时间属于什么标准?

这是 厂商(Phoenix Contact)定义的参数,不属于 EtherCAT 标准寄存器。

属于:

  • 菲尼克斯 Inline/Axioline 产品的模块特定参数
  • 不属于 PDO/SDO 标准对象

各家 DO/DI 模块滤波参数都不同,例如:

  • Beckhoff DI 模块通常用对象 0x8000/0x80n0(厂商扩展)
  • Phoenix Contact 也一样,使用厂商自定义参数

📌 总结一句话

你截图中的下拉框是:

设置数字量输入滤波时间,用于抗干扰/去抖,并根据不同场景选择不同延迟。


相关推荐
盐水冰3 小时前
【烘焙坊项目】后端搭建(12) - 订单状态定时处理,来单提醒和顾客催单
java·后端·学习
Hello小赵3 小时前
视频压缩编码学习(一)—— 基础知识大集合
学习
似水明俊德4 小时前
02-C#.Net-反射-学习笔记
开发语言·笔记·学习·c#·.net
adore.9685 小时前
3.18 复试学习
学习
留白_5 小时前
MySQL学习(9)——索引
学习
请你喝好果汁6416 小时前
生信学习笔记:ArchR 处理小麦单细胞 ATAC-seq 中的细胞数差异与 Embedding 报错调试
学习
jinanwuhuaguo6 小时前
OpenClaw、飞书、Claude Code、Codex:四维AI生态体系的深度解构与颗粒化对比分析
大数据·人工智能·学习·飞书·openclaw
萨文 摩尔杰7 小时前
GPS原理学习
学习·fpga开发
fengci.7 小时前
ctfshow(web入门)295-300
java·开发语言·学习
renhongxia19 小时前
多模态融合驱动下的具身学习机制研究
运维·学习·机器人·自动化·知识图谱