不用电感的电压反转:用Arduino+MOSFET搭建电荷泵实验台
不用电感的电压反转用ArduinoMOSFET搭建电荷泵实验台你是否也曾为电路板上需要一个负电压而烦恼比如驱动一个运算放大器或者点亮一个OLED屏幕传统的方案要么是使用笨重的变压器要么是引入一个带电感器的开关电源芯片不仅占地方布线也复杂。对于电子爱好者和创客来说我们总在寻找一种更简洁、更直观、更能“看见”原理的解决方案。今天我们就来动手搭建一个完全不用电感的电压反转电路——电荷泵并且用Arduino和几个廉价的MOSFET开关把它变成一个可以编程、可以实时观测的实验平台。这不仅仅是复现一个电路更是亲手触摸电子流动的脉搏通过示波器上的波形直观理解电容如何像水泵一样搬运电荷从而创造出我们需要的负电压。1. 电荷泵无电感能量搬运的艺术在深入动手之前我们有必要先抛开复杂的公式从物理直觉上理解电荷泵。想象一下你手里有两个水桶电容和一个水泵开关网络。你的目标是把低处水缸输入正电压里的水搬到高处一个倒置的水缸输出负电压里。直接搬是不可能的。但如果你先用水泵把水抽到一个水桶里给电容充电然后迅速把这个装满水的水桶拎到高处并把它倒进那个倒置的水缸改变电容连接极性水不就上去了吗电荷泵干的就是类似的事情只不过它搬运的是电子。电荷泵电路的核心思想是利用电容电压不能突变的特性通过一组开关周期性地改变电容与输入、输出端的连接关系从而逐步建立起一个与输入电压极性相反的电压。它最大的魅力在于完全摒弃了电感。电感体积大、有磁场干扰、设计参数复杂而电容特别是多层陶瓷电容MLCC体积可以做到非常小这为电路的小型化打开了大门。当然天下没有免费的午餐电荷泵通常输出电流能力有限效率在特定条件下才有优势但这并不妨碍它成为许多低功耗、小体积应用的绝佳选择。注意电荷泵产生的负电压其“地”参考点与输入电源的“地”是同一个。也就是说输出的-Vout是相对于这个公共地的负压而不是一个完全隔离的电源。1.1 从经典反压拓扑到我们的实验电路最常见的电压反转电荷泵拓扑只需要两个电容和四个开关。我们计划用Arduino控制的MOSFET来实现这四个开关。让我们先看一个简化的原理阶段分析阶段一充电阶段开关S1和S3闭合S2和S4断开。此时输入电压Vin直接加在飞跨电容Cfly两端为其充电至Vin。输出电容Cout暂时与电路隔离维持之前的电压假设初始为0。阶段二反转转移阶段开关S2和S4闭合S1和S3断开。此时Cfly被“翻转”过来接入电路。由于电容两端电压不能突变Cfly原来接Vin正极的那一端现在接到了公共地GND。那么它原来接GND的那一端对地的电压就变成了 -Vcfly -Vin。这个负压开始为Cout充电并供给负载。通过高速、周期性地在这两个阶段之间切换我们就能在输出端维持一个稳定的负电压。理想情况下Vout -Vin。但实际上由于开关损耗、电容等效串联电阻ESR以及负载电流的影响输出电压的绝对值会略低于输入电压并且带有纹波。为了将这个理论电路变成可编程的实验台我们用Arduino Nano作为大脑用四个N沟道MOSFET如常见的2N7002或IRLZ34N作为高速开关。Arduino的程序Sketch将精确控制这四个MOSFET的导通与关断时序和频率。开关阶段Arduino引脚控制 (示例)MOSFET状态 (Q1-Q4)Cfly 状态主电流路径阶段一充电D9高, D10低, D11低, D12高Q1开, Q2关, Q3关, Q4开被充电至 ~VinVin → Q1 → Cfly → Q4 → GND阶段二反转D9低, D10高, D11高, D12低Q1关, Q2开, Q3开, Q4关电压反转向输出放电Cfly() → GND; Cfly(-) → Q3 → Cout/负载 → Q2 → Cfly()这个表格清晰地展示了我们如何用代码控制硬件动作。你可以通过修改Arduino Sketch中的delayMicroseconds()函数来轻松调整开关频率从而观察频率对输出电压和纹波的影响。2. 硬件搭建从原理图到面包板理论清晰后是时候将零件变成实实在在的电路了。这个实验的乐趣之一就在于它的模块化和高度可调性。2.1 物料清单与选型考量你需要准备以下核心部件控制器Arduino Nano 或 Uno 一块。Nano体积更小更适合最终集成。开关器件N沟道MOSFET 4个。推荐逻辑电平驱动的型号如2N7002适合小电流实验或IRLZ34N电流能力更强。确保它们的Vgs(th)足够低能被Arduino的5V输出完全驱动。电容飞跨电容 (Cfly)1μF 至 10μF 的陶瓷电容X7R或X5R材质多个用于实验对比。这是电荷泵的“心脏”。输出电容 (Cout)10μF 至 100μF 的电解电容或钽电容并联一个0.1μF的陶瓷电容。用于平滑输出电压减小纹波。输入旁路电容在Arduino的5V输出和Vin入口处建议放置一个10μF电解电容并联一个0.1μF陶瓷电容为开关动作提供瞬时电流。其他面包板、跳线、万用表、示波器强烈推荐、一个阻值在100Ω到1kΩ之间的负载电阻。在电容选型上有几点实践经验值得分享Cfly首选陶瓷电容因为它在高频下ESR低且没有极性可以承受反复的电压反向。X7R和X5R是性价比和稳定性兼顾的选择。小心上电冲击在空载或轻载时如果Cfly容值很大在第一个充电阶段瞬间的充电电流可能非常大I C * dV/dt。虽然我们的实验电流不大但养成好习惯可以在充电回路串联一个小的限流电阻如1-10Ω或者在软件上实现一个软启动逻辑逐步提高开关频率。输出电容Cout的作用它就像一个水库在Cfly不提供电荷的阶段即开关切换的死区时间或另一阶段为负载持续供电从而降低输出电压的纹波。容值越大纹波通常越小但系统响应会变慢。2.2 布线技巧与实测要点在面包板上搭建这个电路时布局和走线至关重要尤其是地线。高频开关电流会产生噪声不良的接地会严重影响电路稳定性甚至干扰Arduino本身。星型接地为电路建立一个干净的“单点接地”。将Arduino的GND、输入电源的GND、输出电容的GND以及示波器探头的接地夹都集中连接到面包板的某一条电源总线的一点上。缩短高频路径连接MOSFET、Cfly和Cout的导线尽可能短。特别是Cfly的回路它是高频电流的主要路径长的导线会引入不必要的电感产生电压尖峰。示波器测量点通道1测量Arduino的一个驱动引脚如D9的波形观察控制信号的频率和占空比。通道2测量飞跨电容Cfly一端的电压波形。这是整个实验中最精彩的画面你会看到一个在0V和Vin之间或Vin和负压之间切换的方波。通道3测量输出电压Vout的波形。你会看到一个负直流电压上叠加着锯齿状的纹波。使用示波器的“数学函数”将通道2和通道3相减可以直观看到Cfly两端的电压变化。下面是一个简单的Arduino代码框架用于产生互补的两相控制信号需注意死区时间这里用简单延时模拟实际应用需更严谨// 定义引脚 const int phaseA_high 9; // 对应Q1 const int phaseA_low 10; // 对应Q2 const int phaseB_high 11; // 对应Q3 const int phaseB_low 12; // 对应Q4 int switchFreq 50000; // 开关频率 50kHz int halfPeriodUs 1000000 / (switchFreq * 2); // 半周期微秒数 int deadTimeUs 1; // 死区时间防止共态导通 void setup() { pinMode(phaseA_high, OUTPUT); pinMode(phaseA_low, OUTPUT); pinMode(phaseB_high, OUTPUT); pinMode(phaseB_low, OUTPUT); // 初始状态所有开关关断 digitalWrite(phaseA_high, LOW); digitalWrite(phaseA_low, LOW); digitalWrite(phaseB_high, LOW); digitalWrite(phaseB_low, LOW); } void loop() { // 阶段一充电 (S1, S4 ON) digitalWrite(phaseA_high, HIGH); // Q1 ON digitalWrite(phaseB_low, HIGH); // Q4 ON delayMicroseconds(halfPeriodUs - deadTimeUs); digitalWrite(phaseA_high, LOW); // Q1 OFF digitalWrite(phaseB_low, LOW); // Q4 OFF delayMicroseconds(deadTimeUs); // 死区时间 // 阶段二反转 (S2, S3 ON) digitalWrite(phaseA_low, HIGH); // Q2 ON digitalWrite(phaseB_high, HIGH); // Q3 ON delayMicroseconds(halfPeriodUs - deadTimeUs); digitalWrite(phaseA_low, LOW); // Q2 OFF digitalWrite(phaseB_high, LOW); // Q3 OFF delayMicroseconds(deadTimeUs); // 死区时间 }提示上述代码中的delayMicroseconds在较高频率下误差会变大。对于更精确的频率控制可以考虑使用Arduino的定时器中断来生成PWM信号并利用两路互补带死区的PWM输出驱动高端和低端开关。3. 实验探索改变参数观察世界电路搭建完毕并成功输出负压后我们的实验台才真正开始发挥价值。你可以通过修改几个关键参数亲眼见证它们对电路性能的影响这比读十篇理论文章都管用。3.1 飞跨电容容值的影响这是最直观的实验。准备三个不同容值的陶瓷电容例如0.1μF、1μF和10μF。保持开关频率比如50kHz和负载电阻比如500Ω不变。依次更换Cfly用万用表测量空载和带载时的输出电压并用示波器观察输出纹波。你会观察到容值增大空载输出电压更接近理想值-5V带载时电压跌落绝对值变小的程度减轻输出纹波的幅值显著减小。因为更大的电容每次转移的电荷量QC*V更多。容值减小输出电压绝对值下降纹波增大甚至可能因为电荷供应不足导致电压崩溃。但当负载极轻时小容值电容可能因为ESR更小在特定频率下效率反而略有优势。记录下数据你可以画出一个简单的曲线图X轴是Cfly容值Y轴是带载输出电压或纹波峰峰值。这种亲手得到的数据关系会让你对“安秒平衡”电荷泵中电容在一个周期内充电和放电的电荷量必须相等有刻骨的理解。3.2 开关频率的魔法接下来固定Cfly比如1μF和负载通过修改Arduino代码中的switchFreq变量来改变频率从20kHz扫描到200kHz。用示波器测量不同频率下的输出纹波波形。用万用表测量输出电压。你会发现一个有趣的权衡频率升高输出纹波的频率随之升高但纹波幅值通常会降低。因为单位时间内电荷搬运的次数更多了输出电容Cout上的电压波动更小。同时MOSFET的开关损耗会增加整体效率可能会在某个点后下降。频率降低纹波幅值变大尤其是低频时可能看到明显的锯齿波。但开关损耗降低。这个实验能让你深刻理解开关电源中频率选择的重要性它是在纹波、效率、体积电容可以更小和电磁干扰EMI之间取得平衡的关键。3.3 负载变化的考验最后我们来测试电路的带载能力。准备几个不同阻值的电阻作为负载。固定Cfly和开关频率。依次接入不同负载从开路、1kΩ、500Ω到100Ω测量输出电压的变化。计算每个负载点下的输出电流I |Vout| / R_load和粗略估算的输出功率。你会清晰地看到电荷泵的一个主要限制输出阻抗相对较高。随着负载加重电流增大输出电压的绝对值会明显下降。这是因为开关和电容的寄生参数如导通电阻Ron ESR产生了压降。当负载电流超过某个临界值电路可能无法维持正常的电压反转。记录下电压-电流曲线你就能大致评估出这个简易电荷泵实验台的“能力边界”。4. 从实验台到实用化的思考经过一系列动手实验我们已经对这个无电感电压反转电路了如指掌。但如何将面包板上的实验电路转化为一个可以嵌入实际项目的可靠模块呢这里有几个从实验走向实用的关键考量。4.1 性能优化与问题排查首先面对实测中不如人意的性能我们得有解决思路。输出电压绝对值偏低检查开关驱动确保MOSFET的栅极驱动电压足够高使其完全导通。Arduino的5V输出驱动逻辑电平MOSFET通常足够但如果输入电压Vin较高要确保MOSFET的Vgs耐压足够。测量开关节点波形用示波器看MOSFET的漏极波形。如果上升/下降沿非常缓慢说明开关损耗大会导致效率低下和压降。可以尝试减小栅极驱动电阻如果用了的话或选择Qg栅极电荷更小的MOSFET。审视寄生参数面包板的长引线会引入可观的寄生电感和电阻。尝试用更短的导线或者将核心开关环路制作在一小块万用板上。输出纹波过大增加输出电容Cout这是最直接的方法。可以并联多个不同容值的电容比如一个47μF的电解电容处理低频纹波再并联一个1μF和0.1μF的陶瓷电容滤除高频噪声。优化Cfly材质和容值确保使用低ESR的陶瓷电容。在空间和成本允许下适当增加Cfly容值。提高开关频率如前所述提高频率能有效降低纹波幅值但要注意频率上限受限于MOSFET开关速度和驱动能力。MOSFET发热严重计算导通损耗Pd_cond I_load² * Rds(on)。检查负载电流是否过大或所选MOSFET的Rds(on)是否不够低。计算开关损耗Pd_sw 0.5 * Vds * I_load * (trtf) * Fsw。在高频下这项损耗可能占主导。优化驱动减少开关时间(tr, tf)或适当降低频率。添加散热片对于TO-220封装的MOSFET即使损耗不大加一个小型散热片也能显著降低温升。4.2 进阶玩法引入反馈与稳压我们搭建的是开环电荷泵其输出电压大致等于负的输入电压但不够精确且随负载变化。在实际应用中我们常常需要稳定的负压。这里有两个主流方向后级加装LDO这是最简单粗暴也最有效的方法。将电荷泵产生的负压例如-5V输入到一个负压LDO如79L05中即可得到非常稳定、纹波极小的-5V。缺点是增加了元件且LDO本身有压差要求电荷泵的输出电压必须比LDO的额定输出电压更低绝对值更大。实现闭环电荷泵这更有挑战性也更有趣。基本思路是采样输出电压与一个参考电压如用齐纳二极管产生进行比较然后用比较结果通过一个简单的电路如误差放大器去调节电荷泵的开关频率或占空比。调频控制当输出电压绝对值偏高时降低开关频率减少单位时间内转移的电荷使电压下降反之则提高频率。这种方式实现起来相对简单。调占空比控制固定频率但调节充电阶段和反转阶段的相对时间比例。这需要能产生可变占空比互补PWM的控制器实现复杂度稍高。你可以尝试用另一个运放电路搭建一个简单的比较器将输出的负压分压、偏移后与基准比较其输出信号可以用来微调Arduino代码中的delay参数从而实现一个非常初级的闭环稳压。这个过程会让你对开关电源的反馈控制有第一手的认识。4.3 应用场景发散掌握了这个可编程电荷泵实验台你就能灵活地为各种项目提供小功率负电源运算放大器供电为需要双电源供电的运放如TL072, NE5532提供负轨用于音频前置放大、有源滤波器等。OLED屏幕驱动许多单色OLED模块需要-7V左右的负压来驱动像素内部往往就集成了一个电荷泵。传感器偏置某些特殊传感器需要负偏置电压。电平转换在通信接口中有时需要产生负电压来实现更宽的电平转换范围。这个实验台的价值远不止于产生一个负电压。它是一个绝佳的电力电子学教学平台让你直观地看到开关动作、电容充放电、纹波产生、负载调整率等抽象概念的具体表现。下次当你再看到一颗小小的电荷泵芯片时你脑海中浮现的不再是一个黑盒子而是那四个翩翩起舞的开关和那只忙碌搬运电荷的“电容水桶”。

相关新闻

HBase在智能制造中的大数据存储应用

HBase在智能制造中的大数据存储应用

好的,请看这篇关于HBase在智能制造中应用的技术博客。HBase在智能制造中的大数据存储:构建工业数据湖的核心引擎 引言:智能制造的“数据洪流”挑战 我们正处在一个由工业4.0和智能制造主导的新时代。现代工厂不再是齿轮与传送带的简单组合&am…

2026/7/5 1:03:34 阅读更多 →
避开这些坑!wxauto微信机器人开发中的5个常见问题及解决方案

避开这些坑!wxauto微信机器人开发中的5个常见问题及解决方案

避开这些坑!wxauto微信机器人开发中的5个常见问题及解决方案 最近有不少朋友在尝试用Python和AI大模型捣鼓一些自动化工具,其中微信聊天机器人是个热门方向。wxauto这个库因其相对简单的接口,吸引了不少开发者入坑。但说实话,从零…

2026/7/4 5:15:56 阅读更多 →
3D建模新突破:DMTET技术如何让AI生成高精度模型(附Magic3D实战对比)

3D建模新突破:DMTET技术如何让AI生成高精度模型(附Magic3D实战对比)

3D建模新突破:DMTET技术如何让AI生成高精度模型(附Magic3D实战对比) 最近和几个做游戏资产和工业设计的朋友聊天,大家不约而同地提到了同一个痛点:AI生成的3D模型,看着惊艳,用起来却头疼。要么是…

2026/7/4 7:31:26 阅读更多 →

最新新闻

终端别名清理:解决Shell会话冲突的实用技巧

终端别名清理:解决Shell会话冲突的实用技巧

1. 问题背景:为什么需要清理终端别名?在macOS或Linux系统中,alias(别名)是提高终端操作效率的利器。它允许我们将冗长的命令简化为短小的别名,比如用ll代替ls -l。但这也带来了一个常见问题:当我…

2026/7/5 11:51:29 阅读更多 →
Unity 2019.2.1 Ragdoll 性能优化:10个角色同屏实测,CPU占用降低40%方案

Unity 2019.2.1 Ragdoll 性能优化:10个角色同屏实测,CPU占用降低40%方案

Unity 2019.2.1 Ragdoll 性能优化实战:10角色同屏CPU占用降低40%的完整方案在移动端或中低配PC上实现大规模Ragdoll效果时,性能问题往往成为开发者的噩梦。本文将分享一套经过实战验证的优化方案,通过10个Ragdoll角色同屏测试,成功…

2026/7/5 11:45:28 阅读更多 →
AI时代技术人的核心壁垒:从想法到产品的转化能力实战指南

AI时代技术人的核心壁垒:从想法到产品的转化能力实战指南

这次我们来看一个关于“未来十年,将Idea落地的转化能力为何是人类的核心壁垒?”的深度探讨。这个话题看似偏向思维层面,但在技术领域,尤其是AI技术飞速发展的今天,它变得前所未有的具体和紧迫。我们不再空谈概念&#…

2026/7/5 11:43:27 阅读更多 →
基于YOLOv8的GUI元素自动化检测工具开发实践

基于YOLOv8的GUI元素自动化检测工具开发实践

1. 项目概述:GUI元素检测的自动化解决方案在软件测试和自动化领域,GUI元素检测一直是个痛点问题。传统基于坐标定位或元素树解析的方法在面对动态界面时表现脆弱,而基于计算机视觉的解决方案往往需要复杂的配置。这个项目将YOLO目标检测模型与…

2026/7/5 11:41:27 阅读更多 →
【开源推荐】S标签页 (STab) —— 一款融合双重核心功能的极简高效浏览器起始页(标签页)

【开源推荐】S标签页 (STab) —— 一款融合双重核心功能的极简高效浏览器起始页(标签页)

【开源推荐】S标签页 (STab) —— 一款融合双重核心功能的极简高效浏览器起始页(标签页) 📌 前言 在日常浏览网页时,你是否经常遇到以下痛点: 浏览器原生收藏夹层级太深,查找和管理非常繁琐?…

2026/7/5 11:41:27 阅读更多 →
企业级AI应用实战:基于Hermes Agent与Harness Engineering的智能体开发与工程化部署

企业级AI应用实战:基于Hermes Agent与Harness Engineering的智能体开发与工程化部署

🚀 30款热门AI模型一站整合,DeepSeek/GLM/Qwen 随心用,限时 5 折。 👉 点击领海量免费额度 这次我们聚焦一个在企业级AI大模型应用开发中备受关注的技术组合: Hermes Agent 与 Harness Engineering 。如果你正在…

2026/7/5 11:39:26 阅读更多 →

日新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/5 0:03:34 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/5 0:03:34 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/5 0:07:38 阅读更多 →

周新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/5 0:03:34 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/5 0:03:34 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/5 0:07:38 阅读更多 →

月新闻