5 分钟快速上手!MicroPython+MWFD 气泡探测器实现非接触识别管路空管 / 气泡
引言

在饮水机、咖啡机、医疗输液、工业流体输送等场景,管道内的气泡或断流检测是保障设备安全与稳定运行的关键环节。传统接触式气泡检测方案,不仅易被液体污染、腐蚀,还会因液体电导率差异、管壁厚度等因素出现误判,影响设备的正常工作。
传统接触式气泡检测方案,始终存在难以克服的行业难题:
- 易污染、易腐蚀:电极需直接与液体接触,长期使用会被水垢、杂质污染,或被腐蚀性液体腐蚀,导致检测失灵;
- 受液体与管道影响大:液体电导率差异、管壁材质与厚度变化,都会影响检测结果,误判率高;
- 安装限制多:需在管道上开孔安装电极,破坏管道完整性,且适配性差,难以兼容不同管径的管道;
- 响应速度慢:无法快速识别气泡,难以及时触发断流保护,存在安全隐患。
而 MWFD 水流气泡探测器,正是针对这些痛点设计的新一代非接触式检测方案。

MWFD 的核心优势—精准、快速、非接触的气泡检测:
- ✅ 非接触式检测,彻底杜绝污染与腐蚀:MWFD 采用高频电容检测技术,无需与管道内的液体直接接触,从根源上避免了电极被污染、腐蚀的问题;探测器可穿透塑料、硅胶等非金属管壁检测,无需破坏管道结构,安装便捷,且适配不同材质的管道。
- ✅ 强穿透 + 高抗干扰,复杂场景也能稳定输出:传感器穿透性强,可有效克服水管材质不同、管壁较厚、不同液体电导率差异等问题;内置微处理器与智能算法,支持参数校准、温度补偿和报警阈值配置,能有效滤除环境干扰,稳定区分管道内的空气与液体,不受水质、液体成分影响。
- ✅ 超快响应速度,实时保护设备安全:测量响应速度最高可达 20ms 一次检测周期,配合微处理器算法可在 500ms 内快速区分管道内的状态,当检测到空气 / 气泡时,可输出高电平报警信号,及时触发断流保护,避免设备干烧、空转等风险,保障设备运行安全。
- ✅ 多管径适配 + 易集成,适配多类场景:探测器提供多种弹簧内径规格,可适配 3.5mm~12.5mm 不同管径的管道;模组结构小巧,安装便捷,支持快速集成到各类流体输送设备中,是饮水机、咖啡机、医疗设备、工业流体系统的理想气泡检测方案。
可以用于:
- 小家电场景:饮水机 / 咖啡机的断流 / 气泡防护:在饮水机、咖啡机等设备中,MWFD 可安装在输水管道上,实时检测水流中的气泡与断流情况。当管道内出现气泡或断流时,探测器能快速识别并输出信号,触发设备的防干烧保护,避免加热管因无水空转损坏;非接触式设计不会被水垢污染,长期使用也能保持稳定的检测性能,为设备提供可靠的安全防护。
- 医疗设备场景:输液 / 流体输送的气泡监测:在医疗输液设备中,MWFD 可安装在输液管路上,非接触式检测管道内的气泡,避免气泡进入人体造成安全隐患;探测器适配不同管径的输液管,且不与药液接触,不会污染药液,同时快速的响应速度能及时识别气泡,为医疗设备的安全运行提供保障。
- 工业流体场景:管道流体的连续监测:在工业流体输送系统中,MWFD 可用于检测管道内的断流、气泡情况,防止泵体空转、管道堵塞等问题;探测器不受液体电导率、杂质影响,能在复杂的工业环境中稳定工作,为流体系统的自动化控制与安全监测提供可靠的数据支持。
一、模块简介
水流气泡探测器 MWFD(Minyuan Water Flow Detector)通过高频电容检测芯片测量管内液体介电常数的变化:不同电容值反映管内是空气还是液体,当检测到空气时,输出高电平进行报警。传感器穿透性强,可以有效克服水管材质不同、管壁较厚、不同液体电导率差异等问题。传感器测量响应快,最高可达 20ms 一次检测周期,配合微处理器算法可在 500ms 内区分出当前状态。内置的微处理器芯片,可进行参数校准,温度补偿,检测算法,报警阈值配置等。



该图展示了 MWFD 的产品简介、模块外观和主要应用场景。
- 通过高频电容检测管内介电常数变化,区分空气与液体状态;
- 检测到空气、气泡或缺液时输出高电平报警;
- 穿透性强,可适配不同管材、较厚管壁及不同液体电导率场景;
- 适用于净饮机、咖啡机、奶茶机、输液管路、水泵抽液等场景。
二、主要芯片介绍
2.1 芯片概述
模块整体基于高频电容检测原理工作,通过测量管内介电常数变化识别水流、气泡和缺液状态,并输出对应的数字电平信号。
2.2 引脚定义


2.3 功能框图
无。
2.4 性能参数



2.5 参考电路
无。
2.6 芯片配置
无。
2.7 通信接口和相关协议
该模块采用 DIO 高低电平输出,不涉及 UART / I2C / SPI 等串行通信协议。输出高电平表示检测到气泡或缺液报警,输出低电平表示液体状态正常。
三、电路工程
3.1 电路源工程
获取电路源工程,请查看下面链接:
https://mysentech.com/productinfo/2423155.html
3.2 模块使用说明
3.2.1 模块测试环境搭建和注意事项
将被测管路同时穿过模块的两个弹簧电极,为保证检测灵敏度,需满足:
- 弹簧内径与管路外径尽量匹配,避免两者间存在过大间隙,间隙过大会降低检测精度
- 弹簧电极不可直接接触桌面、金属等导电物体,防止引入干扰
- 安装时避免管路与弹簧发生相对位移,减少机械振动带来的检测波动

模块支持两种使用场景的连接:
- 开发板调试:将 MWFD 接入
MCSK-MWFD校准开发板的 3pin 插座,开发板通过 USB 连接 PC 端,用于校准与数据调试 - 主控集成:模块可直接接入用户主控 IO 口,通过输出电平判断检测状态,核心接口定义:

首次使用、更换管路 / 液体、检测出现偏差时,需执行空载校准消除系统误差,步骤如下:



完成空载校准后,查看下面章节的内容,进入正常使用模式。
在使用时,还需要注意:
- 干扰源防护:人体或金属物体触碰 / 接近传感器 1cm 以内时,会对电容检测造成干扰,导致误判,安装时需预留足够的无干扰空间。
- 校准维护:更换管路、液体类型,或检测环境(温度、湿度)发生较大变化时,需重新执行空载校准,保证检测精度。
- 安装稳定性:弹簧与管路需保持贴合状态,避免长期使用中出现松动、位移,影响检测灵敏度。
- 环境适配:避免在高温、强电磁干扰环境中使用模块,防止高频检测信号受到影响,导致检测异常。
常见问题排查:

3.2.2 Modbus Poll 的使用
Modbus Poll 是一款通用型 Modbus 主站调试工具,适配本系列所有支持 Modbus-RTU 协议的电容式传感器,可快速实现传感器与电脑的串口通信调试、实时数据读取与日志导出,是验证传感器功能、采集测试数据的通用上位机工具。软件支持 Modbus RTU/ASCII/TCP/IP 协议,兼容多种寄存器类型与数据格式,操作流程对全系列传感器通用。
使用前需先完成软件安装与激活,可通过官方渠道下载安装包,首次打开可试用 30 天,也可输入注册码永久激活。硬件连接传感器与电脑后,打开软件点击「Connection」-「Connect」,在弹出窗口中配置串口参数(端口号、波特率、数据位 / 校验位 / 停止位,本系列传感器默认采用 9600 Baud、8N1 格式,具体以对应型号规格书为准),确认后即可建立通信连接。

以下为通用操作流程说明:
- 串口连接配置:将传感器通过 USB 转串口模块接入电脑后,打开 Modbus Poll 软件,点击菜单栏「Connection」-「Connect」,在弹出窗口中选择传感器对应的 COM 端口号,并配置与传感器匹配的串口参数(波特率、数据位、校验方式、停止位,本系列传感器默认采用 9600 Baud、8N1 格式),确认后即可建立通信连接。
- 导入传感器配置文件:软件支持导入各传感器型号对应的
.mbp预配置文件,文件中已预设好寄存器地址、数据格式与别名定义,无需手动配置寄存器。直接在软件中打开对应传感器的.mbp文件,即可自动加载所有参数,连接成功后将直接显示传感器的实时检测数据(如尘 / 雨 / 霜厚度值、状态标志位等)。 - 数据日志记录(可选):如需保存测试数据,可通过「Setup」-「Excel Log」功能配置日志记录规则,支持按固定周期或每次数据更新记录数据,并可设置记录条数上限,方便后续对传感器数据进行分析与验证。
以上为通用的上位机基础操作,不同传感器型号的 .mbp 预配置文件、具体寄存器定义、特殊配置细节,可参考「七、相关资料」中内容。
3.3 应用实验
这里,我们使用 GraftPort-RP2040 开发板进行测试,水流气泡探测器 MWFD 上使用 DIO 接口与主控进行通信。
这里,我们首先使用 HY2.0-4P 连接线将模块通过 PH2.0-3P 转 Grove 转接板连接到 GraftPort-RP2040 开发板的 DIO0 接口:

模块连线如下表所示:
| 开发板引脚 | 模块引脚 | 说明 |
|---|---|---|
| 引脚 16 | MTX |
UART 数据传输线,对应开发板的发送引脚 |
| GND | GND |
地线 |
| VCC | VCC |
|
| 电源线,PH2.0-3P 转 Grove 转接板带 5V 转 3.3V 电路, | ||
| 水流气泡探测器 MWFD 需要 3.3V 供电 |
这里,我们需要在 uPyPI 上搜索相关驱动包:https://upypi.net/zh/
该图演示了在 uPyPI 中搜索 MWFD 驱动包的操作过程。
输入 mwfd_driver 进行搜索,显示如下:

该图展示了 mwfd_driver 的搜索结果,可用于确认驱动名称。
点击复制本地安装命令:

该图展示了 MWFD 驱动安装命令的复制界面,便于本地快速安装。
通过 mip 工具导入模块驱动库代码,以下是 mpremote 工具使用指令:
mpremote mip install https://upypi.net/pkgs/mwfd_driver/1.0.0
导入水流气泡探测器 MWFD-MicroPython 驱动代码后,将下面 main.py 代码复制到我们的工程中:
# Python env : MicroPython v1.23.0
# -*- coding: utf-8 -*-
# @Time : 2026/4/3 下午2:30
# @Author : hogeiha
# @File : main.py
# @Description : MWFD水流气泡探测器中断与轮询示例程序
# ======================================== 导入相关模块 =========================================
from machine import Pin
from mwfd import MWFD
import time
# ======================================== 全局变量 ============================================
# ======================================== 功能函数 ============================================
def on_state_change(state):
"""
中断回调函数,当传感器状态变化时自动触发
Args:
state (bool): True表示气泡/缺液,False表示正常液体
Raises:
无
Notes:
该函数由中断服务程序调用,应保持简洁快速
==========================================
Interrupt callback function, automatically triggered when sensor state changes
Args:
state (bool): True for bubble/lack of liquid, False for normal liquid
Raises:
None
Notes:
This function is called by interrupt service routine, keep it short and fast
"""
# 根据状态打印不同信息
if state:
print("[Interrupt] Warning: Bubble or lack of liquid")
else:
print("[Interrupt] Normal liquid")
# ======================================== 自定义类 ============================================
# ======================================== 初始化配置 ===========================================
# 等待3秒让系统稳定
time.sleep(3)
# 打印启动标识
print("FreakStudio: MWFD sensor demo started")
# 初始化传感器引脚(GPIO15,输入模式,内部下拉)
sensor_pin = Pin(15, Pin.IN, Pin.PULL_DOWN)
# 创建MWFD驱动实例
sensor = MWFD(sensor_pin)
# 启用中断,绑定回调函数
sensor.irq(callback=on_state_change)
# ======================================== 主程序 ============================================
# 主循环:主动轮询读取传感器状态并打印
while True:
# 读取当前状态
state = sensor.read()
# 根据状态输出信息
if state:
print("[Polling] Warning: Bubble or lack of liquid")
else:
print("[Polling] Normal liquid")
# 延时200毫秒
time.sleep(0.2)
烧录代码,打开终端,输出如下:

该图展示了 MWFD 示例程序的中断与轮询输出效果,可直观看到状态变化反馈。
相关资料




浙公网安备 33010602011771号