首页
/
行业洞察
/
正文
INDUSTRY INSIGHT · 深度
ESP32漏水报警器断线检测方案:电阻分压法实现传感器在线监测
📅 2026/10/11 11:16:07
✍️ 爱科研究院
👁 阅读 3,247
1. 从一个误报说起这个漏水报警器到底在解决什么问题漏水报警器这东西做过智能家居的朋友应该都不陌生。市面上常见的方案无非就是一块开发板加一根探针探针碰到水导通板子检测到电平变化就报警。逻辑简单到几乎不需要写代码很多入门教程拿它当第一个练手项目。但真正把这类设备部署到实际环境里——比如机房空调下方、地下室水泵旁边、老房子的水管井里——你会发现一个非常隐蔽的问题传感器断线了系统却以为一切正常。这个问题的根源在于检测原理。绝大多数漏水传感器用的是常开逻辑没水的时候电路断开有水的时候电路导通。开发板检测到导通就报警。那么问题来了——如果传感器本身因为接头氧化、线缆被老鼠咬断、或者插头松动而彻底断开电路同样是断开的。从开发板的角度看断开和没水是完全一样的状态。于是传感器已经失效了系统还在安安静静地显示正常。这就是标题里说的Disconnected Sensor场景。一个只检测有没有水的报警器和一个能检测传感器本身还在不在线的报警器是两回事。后者才是一个真正可以长期无人值守运行的设备。我之所以对这个项目特别有感触是因为之前帮一个朋友处理过机房漏水的事故。他们的漏水报警器装了两年多一直没响过大家都觉得挺安心。结果某天空调冷凝水管堵了水漫了一地报警器一声没吭。事后排查发现传感器的接线端子早就因为潮湿环境氧化断了而系统一直显示正常。如果当时用的是带断线检测的方案至少能提前发现传感器失效不至于等到水淹了才知道。所以这篇文章要聊的就是怎么用 ESP32 做一个既能检测漏水、又能检测传感器断线的报警器。核心思路、电路设计、代码实现、参数计算、踩坑经验我都会尽量讲透。适合有一定 Arduino/ESP32 基础、想把 DIY 项目做成能真正用起来的产品的朋友。如果你只是想让 LED 亮一下那这个项目可能有点过度设计但如果你想做一个能挂在无人值守环境里跑上几年的设备那断线检测这个环节是绕不过去的。2. 核心设计思路为什么断线检测不是加一根线那么简单2.1 常开与常闭两种逻辑的本质区别要理解断线检测先得把传感器的两种基本逻辑搞清楚。常开Normally OpenNO传感器在正常状态下电路是断开的触发时闭合。漏水探针大多是这个逻辑——没水断开有水导通。常闭Normally ClosedNC传感器在正常状态下电路是闭合的触发时断开。很多工业用的限位开关、门磁用的是这个逻辑。关键点来了常闭逻辑天然具备断线检测能力。因为正常状态下电路是闭合的如果线断了电路变成断开——这个断开和触发是同一个状态但你可以通过逻辑反推正常应该是闭合的现在断开了要么是触发要么是断线。虽然不能直接区分这两者但至少不会出现断线了还以为正常的情况。而常开逻辑就麻烦了。正常是断开触发是闭合断线也是断开。断线和正常状态无法区分。那怎么办有两个主流方案方案一改用常闭型传感器。这是最省事的做法。买一个常闭输出的漏水传感器正常时电路闭合有水时断开。这样断线断开和触发断开虽然状态相同但至少不会漏报。缺点是市面上常闭型漏水传感器相对少而且你无法区分真的漏水了和线断了。方案二在常开传感器基础上加一个在线检测机制。这是更彻底的方案也是这个项目的核心。具体做法是在传感器回路上串联一个已知阻值的电阻开发板持续测量回路电阻。如果电阻值在预期范围内说明传感器在线如果电阻变成无穷大开路说明断线如果电阻骤降说明漏水导通。我最终选的是方案二。原因很简单它不仅能检测断线还能区分断线和漏水两种状态报警信息更精确。而且这个思路可以复用到其他类型的传感器上通用性强。2.2 电阻检测法的原理与参数选择电阻检测法的电路其实不复杂。核心是一个分压电路传感器回路和一个已知电阻串联开发板通过 ADC模数转换器读取分压点的电压反推传感器回路的电阻。假设供电电压是 3.3V上拉电阻 R1 接在 3.3V 和 ADC 引脚之间传感器回路含串联的检测电阻 R_sensor接在 ADC 引脚和 GND 之间。那么 ADC 读到的电压 V_adc 满足V_adc 3.3V × R_sensor / (R1 R_sensor)反过来R_sensor R1 × V_adc / (3.3V - V_adc)现在设计传感器回路。我在探针回路上串联了一个 10kΩ 的电阻 R_ref探针本身在干燥状态下是开路的电阻无穷大有水时电阻会降到几十 kΩ 到几百 kΩ 不等取决于水质。等等这里有个问题如果探针干燥时是开路的那 R_sensor 就是无穷大ADC 读到的就是 3.3V满量程。断线时也是无穷大ADC 也是 3.3V。还是区分不了。所以关键在于那个串联的 R_ref。如果我把 R_ref 放在探针之后那么探针干燥 线路正常回路电阻 R_ref 10kΩ因为探针开路但 R_ref 还在回路里不对探针开路的话整个回路都断了这里需要重新理清拓扑。正确的做法是把 R_ref 和探针并联然后整体作为一个传感器模块接入分压电路。探针干燥开路传感器模块电阻 R_ref 10kΩ探针有水导通假设探针电阻 R_probe传感器模块电阻 R_ref × R_probe / (R_ref R_probe)会小于 10kΩ线路断线整个模块开路传感器模块电阻 无穷大这样一来三种状态对应三个不同的电阻区间状态传感器模块电阻ADC 电压R110kΩ3.3V正常干燥10kΩ1.65V漏水探针导通 10kΩ 1.65V断线开路无穷大3.3V完美。三个状态清晰可辨。R1 和 R_ref 都选 10kΩ 是为了让正常状态的分压点落在量程中间给两个方向都留出足够的检测余量。注意ESP32 的 ADC 在满量程附近接近 3.3V线性度很差所以断线状态虽然理论上是 3.3V实际读数可能在 3.1V 到 3.3V 之间波动。判断断线时不要用等于 3.3V而要用大于某个阈值比如大于 2.8V 就判定为断线。2.3 为什么不用数字引脚而用 ADC有人可能会想直接用 digitalRead 读高低电平不就行了干燥时读到一个电平有水时读到另一个电平断线时……还是同一个电平区分不了。数字引脚只有 0 和 1 两个状态信息量不够。而 ADC 能读出连续的电压值对应连续的电阻值才能区分三种甚至更多状态。这是用 ADC 的根本原因。ESP32 的 ADC 是 12 位的理论分辨率 4096 级对应 3.3V 量程每级约 0.8mV。但实际上 ESP32 的 ADC 噪声比较大有效位数可能只有 9-10 位。所以我在代码里做了多次采样取平均并且加了软件滤波。这个后面代码部分会详细说。3. 硬件搭建从选型到接线的完整过程3.1 元器件清单与选型理由这个项目的元器件不多但每一个的选择都有讲究。我列一下我实际用的清单元器件规格数量选型理由主控板ESP32 开发板1自带 WiFi方便后续接入通知系统ADC 引脚多上拉电阻 R110kΩ 1% 精度1分压用1% 精度保证检测一致性参考电阻 R_ref10kΩ 1% 精度1与探针并联提供断线检测基准漏水探针自制或成品1我用的是两块不锈钢片自制滤波电容100nF1并联在 ADC 引脚和 GND 之间抑制噪声蜂鸣器有源 5V1本地报警LED红/绿各一2状态指示电阻220Ω2LED 限流关于探针我试过几种方案。成品探针贵且不一定适合自制的话用不锈钢片比铜片好因为铜在潮湿环境里容易氧化氧化层会影响导通电阻的稳定性。不锈钢耐腐蚀长期用更靠谱。两块不锈钢片间距 5mm 左右固定在绝缘基板上就行。R1 和 R_ref 用 1% 精度的金属膜电阻不要用碳膜电阻。碳膜电阻温漂大在温度变化大的环境里比如地下室会导致检测阈值漂移可能误报。这个钱不能省一个 1% 电阻也就几毛钱。3.2 电路连接与分压点计算接线逻辑我画不出来图这里就不放图了用文字描述清楚ESP32 的 3.3V 引脚 → R1 一端R1 另一端 → 节点 A同时也是 ADC 输入引脚比如 GPIO34节点 A → 传感器模块一端传感器模块另一端 → GND传感器模块内部R_ref 和探针并联等等这里要再确认一下。如果 R_ref 和探针并联后接在节点 A 和 GND 之间那么探针干燥模块电阻 R_ref 10kΩ探针有水模块电阻 R_ref // R_probe 10kΩ断线模块电阻 ∞ADC 读节点 A 的电压。R1 10kΩ。正常状态V_adc 3.3 × 10k / (10k 10k) 1.65V 漏水状态假设 R_probe 50kΩ模块电阻 10k // 50k 8.33kΩV_adc 3.3 × 8.33k / (10k 8.33k) 1.50V 断线状态V_adc 3.3V嗯漏水和正常状态的电压差只有 0.15V有点小。如果探针电阻更大水质纯净时可能到几百 kΩ差值会更小。这说明 R_ref 选 10kΩ 可能偏大。如果 R_ref 选小一点比如 4.7kΩ正常模块电阻 4.7kΩV_adc 3.3 × 4.7k / (10k 4.7k) 1.05V漏水R_probe 50kΩ模块电阻 4.7k // 50k 4.30kΩV_adc 3.3 × 4.30k / (10k 4.30k) 0.99V差值更小了。不对方向反了。让我重新想。漏水的本质是探针电阻从无穷大降到某个有限值。模块电阻从 R_ref 降到 R_ref // R_probe。R_probe 越小模块电阻越小V_adc 越低。如果 R_ref 选大一点比如 22kΩ正常模块电阻 22kΩV_adc 3.3 × 22k / (10k 22k) 2.27V漏水R_probe 50kΩ模块电阻 22k // 50k 15.3kΩV_adc 3.3 × 15.3k / (10k 15.3k) 1.99V差值 0.28V好一些。但正常状态电压 2.27V 偏高离断线的 3.3V 近了断线检测的余量变小。这是个权衡R_ref 越大漏水检测越灵敏但断线检测余量越小R_ref 越小断线检测余量越大但漏水检测越迟钝。我最后折中选了R_ref 15kΩR1 10kΩ正常V_adc 3.3 × 15k / (10k 15k) 1.98V漏水R_probe 50kΩ模块电阻 15k // 50k 11.5kΩV_adc 3.3 × 11.5k / (10k 11.5k) 1.77V断线V_adc 3.3V正常和漏水的差值约 0.21V断线和正常的差值约 1.32V。两个方向的余量都还可以接受。实际阈值我设的是V_adc 2.8V断线V_adc 1.85V漏水1.85V ≤ V_adc ≤ 2.8V正常这些阈值需要在你的实际硬件上校准因为 ESP32 的 ADC 有偏差不同板子读数可能差几十 mV。校准方法后面讲。3.3 焊接与布线注意事项这个电路简单但有几个细节容易翻车第一ADC 引脚的选择。ESP32 不是所有引脚都能做 ADC。GPIO34、35、36、39 是纯输入引脚只能做 ADC不能做输出用它们做 ADC 最合适。注意 GPIO34-39 没有内部上拉/下拉所以外部电路必须确定电平不能悬空。我用的 GPIO34。第二滤波电容的位置。100nF 电容要尽量靠近 ADC 引脚焊接引线越短越好。长引线会引入额外噪声抵消滤波效果。第三探针引线的屏蔽。如果探针离开发板比较远比如超过 1 米引线会像天线一样拾取环境噪声导致 ADC 读数跳动。我用的是双绞线两根线绞在一起能抵消一部分共模干扰。如果环境特别恶劣可以考虑用屏蔽线屏蔽层接 GND。第四防水处理。探针本身要接触水但接线端子和焊接点不能碰水。我用热缩管把焊接点包起来再用硅胶密封。开发板本身放在防水盒里只留探针引线出来。实操心得焊接 R_ref 和探针的并联节点时先焊 R_ref再焊探针引线。因为探针引线比较粗焊接时需要更多热量先焊细的电阻可以避免电阻过热损坏。另外焊完后用万用表量一下节点 A 到 GND 的电阻干燥状态下应该接近 R_ref 的阻值15kΩ如果差很多说明焊错了。4. 代码实现从 ADC 采样到状态判断的完整逻辑4.1 ADC 采样与滤波ESP32 的 ADC 噪声是出了名的。直接 analogRead 读一次你会发现读数在几十甚至上百 mV 范围内跳动。所以必须做滤波。我用的方案是多次采样 中值滤波 滑动平均。具体来说#define ADC_PIN 34 #define SAMPLE_COUNT 15 int readFilteredADC() { int samples[SAMPLE_COUNT]; // 采集 15 次 for (int i 0; i SAMPLE_COUNT; i) { samples[i] analogRead(ADC_PIN); delay(2); } // 冒泡排序 for (int i 0; i SAMPLE_COUNT - 1; i) { for (int j 0; j SAMPLE_COUNT - i - 1; j) { if (samples[j] samples[j 1]) { int temp samples[j]; samples[j] samples[j 1]; samples[j 1] temp; } } } // 取中间 5 个的平均值去掉最大最小各 5 个 long sum 0; for (int i 5; i 10; i) { sum samples[i]; } return sum / 5; }为什么用中值滤波而不是直接平均因为 ADC 偶尔会出现离群的尖峰噪声比如 WiFi 发射瞬间的干扰直接平均会被这些尖峰拉偏。中值滤波能有效剔除离群值只保留中间趋势。15 次采样去掉最大最小各 5 个取中间 5 个平均。这个参数是我实测调出来的。采样次数太少滤波效果不够太多则响应变慢。15 次配合 2ms 间隔总耗时约 30ms对于漏水检测这种慢速场景完全够用。4.2 电压到电阻的换算与阈值判断ESP32 的 ADC 读数范围是 0-4095对应 0-3.3V理论上。但实际有偏差需要用校准系数修正。float adcToVoltage(int adcValue) { // 校准系数需要根据实际板子调整 const float VREF 3.3; const float ADC_MAX 4095.0; // 实测修正ESP32 ADC 在中间量程偏线性两端偏差大 return (adcValue / ADC_MAX) * VREF; }然后根据电压判断状态enum SensorState { STATE_NORMAL, STATE_LEAK, STATE_DISCONNECTED }; SensorState checkSensorState(float voltage) { if (voltage 2.8) { return STATE_DISCONNECTED; } else if (voltage 1.85) { return STATE_LEAK; } else { return STATE_NORMAL; } }但这里有个问题瞬时波动可能导致状态误判。比如正常状态下电压偶尔跳到 2.85V就会误报断线。所以还需要加状态确认机制连续 N 次检测到同一异常状态才真正报警。int disconnectCount 0; int leakCount 0; const int CONFIRM_THRESHOLD 5; void updateState(float voltage) { SensorState state checkSensorState(voltage); if (state STATE_DISCONNECTED) { disconnectCount; leakCount 0; } else if (state STATE_LEAK) { leakCount; disconnectCount 0; } else { disconnectCount 0; leakCount 0; } if (disconnectCount CONFIRM_THRESHOLD) { triggerAlarm(STATE_DISCONNECTED); } else if (leakCount CONFIRM_THRESHOLD) { triggerAlarm(STATE_LEAK); } }连续 5 次确认配合每次采样间隔 2 秒意味着异常状态持续约 10 秒才报警。这个延迟对于漏水检测完全可以接受但能有效过滤掉瞬时干扰。4.3 报警逻辑与状态指示报警分本地和远程两部分。本地用蜂鸣器和 LED远程通过 WiFi 推送这部分我留了接口具体推送方式各人需求不同可以接各种通知服务。void triggerAlarm(SensorState state) { if (state STATE_DISCONNECTED) { // 断线报警红灯快闪 蜂鸣器间歇响 digitalWrite(LED_RED, HIGH); digitalWrite(LED_GREEN, LOW); tone(BUZZER_PIN, 2000, 200); delay(300); digitalWrite(LED_RED, LOW); delay(200); } else if (state STATE_LEAK) { // 漏水报警红灯常亮 蜂鸣器长鸣 digitalWrite(LED_RED, HIGH); digitalWrite(LED_GREEN, LOW); tone(BUZZER_PIN, 3000); } }断线和漏水的报警模式要区分开这样现场人员一听一看就知道是什么问题。断线是设备故障漏水是真实事件处理优先级和方式不同。正常状态下绿灯常亮表示设备在线且传感器正常。这个绿灯很重要——它代表的是传感器在线且无漏水而不仅仅是没有漏水。这正是这个项目区别于普通漏水报警器的地方。4.4 校准流程与代码参数调整代码写好后必须在校准模式下运行一次记录实际电压值。void calibrationMode() { Serial.println(校准模式请确保传感器干燥且连接正常); delay(5000); float normalVoltage adcToVoltage(readFilteredADC()); Serial.print(正常状态电压); Serial.println(normalVoltage); Serial.println(请将探针浸入水中); delay(10000); float leakVoltage adcToVoltage(readFilteredADC()); Serial.print(漏水状态电压); Serial.println(leakVoltage); Serial.println(请拔掉传感器插头); delay(10000); float disconnectVoltage adcToVoltage(readFilteredADC()); Serial.print(断线状态电压); Serial.println(disconnectVoltage); Serial.println(请根据以上三个值设置阈值); }把这三个值记下来然后设置阈值。比如实测正常 1.95V漏水 1.72V断线 3.15V那么阈值可以设为断线阈值2.8V正常和断线之间偏断线一侧漏水阈值1.85V正常和漏水之间偏正常一侧阈值不要取在中间要偏向安全一侧。比如漏水阈值取 1.85V 而不是 1.83V这样正常状态的波动不会误触发漏水报警。宁可稍微迟钝一点也不要频繁误报——误报多了人会麻木真出事反而不当回事。5. 常见问题与排查技巧实录5.1 读数不稳定、频繁跳变这是最常见的问题。可能原因和排查方法现象可能原因排查方法解决读数在 ±0.3V 内随机跳ADC 噪声示波器看 ADC 引脚波形加滤波电容增加采样次数读数周期性跳变WiFi 发射干扰关闭 WiFi 对比ADC 采样时暂停 WiFi或加屏蔽读数缓慢漂移温漂手摸电阻看是否变化换 1% 金属膜电阻读数固定在极端值接线错误万用表量分压点检查 R1 和 R_ref 焊接我遇到过一次读数疯狂跳变排查了半天发现是探针引线太长3 米而且和电源线捆在一起走。电源线的工频干扰耦合到了探针线上。后来把探针线单独走并且改成双绞线问题解决。5.2 断线检测误报断线检测误报通常是因为阈值设得太低正常状态的电压波动偶尔超过阈值。排查步骤打印正常状态下的电压范围连续记录 100 次看最大最小值如果最大值接近断线阈值说明余量不够要么提高断线阈值要么增大 R_ref 让正常电压更低我一开始断线阈值设的 2.5V结果正常状态偶尔跳到 2.6V误报了几次。后来把 R_ref 从 10kΩ 换成 15kΩ正常电压从 1.65V 升到 1.98V断线阈值设 2.8V余量就足够了。注意R_ref 换大后漏水检测的灵敏度会下降。如果水质很纯净电阻很大可能漏水时电压变化不明显。这时候需要在灵敏度和稳定性之间再权衡。我的经验是R_ref 在 10kΩ 到 22kΩ 之间比较合适具体看你的水质。5.3 漏水检测不灵敏如果探针碰到水了但电压变化很小说明探针电阻太大或者 R_ref 太小。改善方法增大 R_ref但会影响断线检测余量增大探针面积接触面积大电阻小减小探针间距间距小电阻小在水中加一点盐增加导电性但会腐蚀探针不推荐长期用我用的是不锈钢片面积 20mm × 30mm间距 5mm。自来水条件下浸水后电压从 1.98V 降到 1.75V 左右变化 0.23V足够检测。5.4 长期运行后的漂移设备跑几个月后可能出现阈值漂移。原因通常是探针氧化或积垢。不锈钢探针虽然耐腐蚀但长期泡在水里或者潮湿环境还是会表面变化。我建议每半年检查一次用细砂纸轻轻打磨探针表面恢复原始状态。另外代码里可以加一个自动基线校准功能设备启动时如果检测到状态是正常就把当前电压记为基线后续判断相对于基线做。这样能自动补偿缓慢漂移。float baselineVoltage 0; void setup() { // ... 初始化 ... delay(10000); // 等待传感器稳定 baselineVoltage adcToVoltage(readFilteredADC()); Serial.print(基线电压); Serial.println(baselineVoltage); } SensorState checkSensorState(float voltage) { float diff voltage - baselineVoltage; if (diff 0.8) { return STATE_DISCONNECTED; } else if (diff -0.15) { return STATE_LEAK; } else { return STATE_NORMAL; } }用相对值而不是绝对值判断能有效抵抗缓慢漂移。但基线校准有个前提启动时必须确保传感器是正常状态。如果启动时就在漏水基线就错了。所以我在 setup 里加了 10 秒等待并且建议设备安装在干燥环境下再上电。5.5 电源与功耗考虑如果设备要长期运行功耗是个问题。ESP32 全速运行加 WiFi 常开功耗大概 100-200mA用电池撑不了多久。我的方案是间歇工作每 2 秒唤醒一次采样、判断、如果需要报警就报警然后进入轻度睡眠。这样平均功耗能降到 20-30mA。如果用深度睡眠deep sleep功耗能降到几百微安但唤醒后需要重新初始化响应会慢一些。对于有市电的环境比如机房直接插电源适配器就行不用考虑功耗。对于电池供电的场景建议用深度睡眠 定时唤醒或者用太阳能板加锂电池的方案。6. 这个方案还能怎么扩展断线检测这个思路其实不只能用在漏水报警上。任何常开型传感器都有同样的问题——门磁、红外对射、烟雾报警器的某些类型都存在断线后无法区分正常和故障的隐患。把 R_ref 并联到传感器回路上这个技巧可以推广到很多场景。比如门磁正常时磁铁吸合常闭门开时断开。如果改成常开型门磁加 R_ref就能检测门磁是否被拆掉或线断了。另外ESP32 的 WiFi 能力还没用上。可以加一个简单的 Web 服务器手机浏览器直接访问就能看状态。或者接入各种通知服务漏水时推送到手机。这部分代码不复杂但涉及具体服务的选择各人需求不同我就不展开写了。最后分享一个我在实际部署中总结的小经验报警器的安装位置比报警器本身更重要。漏水探针要放在水最可能积聚的地方——空调下方、水管接头下方、水泵底座周围。放在错误的位置再灵敏的传感器也没用。我见过有人把探针放在机柜顶上说是怕水淹上来结果水管是从下面漏的水都流到地上了探针还没碰到。探针要放在水会流到的地方而不是水会淹到的地方。
📌 标签:
工业官网
设计趋势
AI 建站
SEO
获取完整报告 →
RELATED ARTICLES
推荐阅读
2026/10/11 11:16:07
个人Agent接入AI硬件:Muse Gadgets链路搭建与状态管理实战
2026/10/11 11:11:07
太阳能智能灌溉与物联网监控系统:从硬件选型到远程控制的完整实战指南
2026/10/11 11:11:07
Muse Gadgets:面向AI外设的嵌入式软硬协同开发框架
2026/10/11 12:06:14
Spring Boot失物招领系统实战:全栈开发与部署指南
2026/10/11 12:06:14
REA建模实战:从ER图到可追溯业务事件
2026/10/11 12:06:14
SpringBoot+Vue大学生创新创业项目管理系统设计与实现
2026/10/11 12:06:14
从RAG到AI Agent:用个人知识库打造逻辑分身的实践指南
2026/10/11 12:06:14
LangAlpha记忆体系完整拆解:双层Memory、LiveFS挂载与跨周长期研究如何不断档
2026/10/11 12:01:14
光链路可靠性设计:scale_up协议的状态机与阈值实践
2026/10/11 0:00:10
流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南
2026/10/11 0:00:10
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别
2026/10/11 0:00:10
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容
2026/10/11 0:00:10
流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南
2026/10/11 0:00:10
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别
2026/10/11 0:00:10
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容
2026/10/10 3:41:56
我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频
2026/10/10 3:41:54
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证
2026/10/9 11:36:17
2026 大模型集体涨价:用 Python 做企业 Token 成本测算与选型避坑(附配置)