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 也一样,使用厂商自定义参数

📌 总结一句话

你截图中的下拉框是:

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


相关推荐
进阶小白猿1 分钟前
Java技术八股学习Day33
java·开发语言·学习
收菜福星2 分钟前
当AI Agent成为大学标配:2026年学习模式的深层变革
人工智能·学习
蒟蒻的贤14 分钟前
yolo12结构学习
学习
●VON1 小时前
CANN推理引擎:从云端到边缘的极致加速与部署实战
学习·react native
笔画人生1 小时前
深度解析 CANN 项目:以 `ops-transformer` 为例探索高性能 AI 算子库
学习·开源
AI视觉网奇2 小时前
3d数字人 ue blender 绑定衣服对齐 2026
学习·ue5
Nan_Shu_6142 小时前
学习: Blender 基础篇
学习·blender
奶茶精Gaaa3 小时前
工具分享--json在线转换工具
学习
wdfk_prog3 小时前
[Linux]学习笔记系列 -- [drivers][I2C]I2C
linux·笔记·学习
盐焗西兰花3 小时前
鸿蒙学习实战之路-Reader Kit自定义字体最佳实践
学习·华为·harmonyos