数码之家

 找回密码
 立即注册
搜索
查看: 15685|回复: 111

[Arduino] 使用MC34063搭建程控电源,配合Arduino实现多平台WiFi调速风扇(原创)

    [复制链接]
发表于 2021-6-26 00:01:22 | 显示全部楼层 |阅读模式

爱科技、爱创意、爱折腾、爱极致,我们都是技术控

您需要 登录 才可以下载或查看,没有账号?立即注册

x
之前折腾暴力风扇的时候,发现小口径风扇噪音大、风量小,无论多高转数都无法调谐这个矛盾。回想家中日常电扇,口径远大于小口径散热扇,转数不高但风量巨大。

这又到夏天,恰逢剁手时搞到了 12cm 口径的散热扇,于是搭一套 wifi 无线程控电源给电扇调速,特过来分享。


【设想】

这次入手的是温柔版的两线风扇,风力均匀柔和。标称 12V/0.45A,实测 4V 即可启动,速度调整均匀。

1.jpg

由于风扇比较薄、易倾倒,特找来铝型材装个支架:

2.jpg

理论上随便一个可调电源就可当调速器,但实际睡觉时风扇放置较远,若能有遥控调速最为舒适。
Arduino 主板有着兼容的插针位置,如果搞一套程控调压板,再配合不同主控,想要切换遥控媒介并不困难。

IMG3.png

例如 UNO 端口较多,使用 UNO 主板配合一层堆叠板,就可以实现红外遥控,或者电位器线控。
而 Wemos 有Wifi功能,可以接入局域网走 Tcp/Udp  协议,如果再做一个 HttpServer,跨平台免App遥控并不困难。


【程控原理】

整个调压系统是个基于 MC34063 的程控电源,Arduino 主板以 PWM-DAC 方式参与电压调节。
选择 34063 主要是懒,风扇功率不大,正好适合这玩意使用 Buck 模式进行降压调速。

原本 34063 这类开关电源使用的是电压负反馈方式进行恒压控制:

4.png

当不接入 R3、Vda 时,输出电压 Vout 经过 R1-R2 反馈给 34063.Pin5(Vfb) 脚,与 1.25v 基准进行比较。稳定方程为:

Vout * R2/(R1+R2) = Vfb = 1.25v

可以解得此时稳压输出:Vout= 1.25*(1+R1/R2).
为用最少的零件实现程控电源,在此分压网络基础上进行改动,增加了 R3-Vda 直流偏量,此时稳定方程为:

(Vout/R1 + Vda/R3) * (R1//R2//R3) = Vfb = 1.25v

再由此解得稳压输出:Vout= 1.25*(1+R1/R2+R1/R3) - Vda*R1/R3.
选择合适的 R1~R3,即可确保 Vda 在 0-3.3v 范围变化时,Vout 在 0~12v 范围内连续可调。附上整个电路原理:

5.png

Arduino PWM 频率约为 500Hz~1kHz,因而使用 RC>1ms 网络进行了平滑处理,实际用了三级 RC 滤波。
电压负反馈网络(R5-R7)选择了 R7>>R1+R2+R3 的范围,避免前级滤波输出阻抗太大,电压跑偏。


【硬件焊接】

已然确认硬件参数,焊接就是个功夫活,CAD 先排一下线:

IMG5A.png

之后上板子焊接,先从低矮零件搞起:

7.jpg

之后焊上高一些的电感电容:

8.jpg

最后焊上 Arduino 插座、风扇线插座,大功告成:

9.jpg


【硬件调试】

由于扩展板大多数器件都工作在模拟状态,因而需要确认下各自工作点波形是否正常。首先从 RC 滤波开始测:

10.jpg

第一级 RC 输入 Wemos 产生的方波信号,3.3Vpp, 1kHz, D=50%;
第一级 RC 输出类似三角波的玩意,峰峰值降至 90mVpp(AC档隔直流);
第二级 RC 输出微弱的正弦波,峰峰值降至 4-5mVpp(AC档隔直流);
第三级 RC 输出几乎无法测到,目测峰峰值 <1mVpp(AC档隔直流).

至此确认 PWM-DAC 信号经过三级 RC 滤波输出直流干净稳定,不会干扰到 34063 工作。
之后确认 34063 振荡,加载了合适的 Vda 后可以看到 34063 的间歇振荡,周期约 40us,和 1nF 振荡电容相吻合。

11.jpg

最后确认下输出端的纹波,大致有 300-400mVpp 的样子,带个大惯性的电扇还是没啥压力的:

12.jpg

系统输入 15v,输出 0-12V 带载测试中 34063 微热,考虑到 Buck 的效率也就不强求自行车了。最终打胶固定完成硬件:

13.jpg


【Wemos固件】

Arduino Wemos 固件就一个功能:输出 PWM 波,但是占空比需要支持后台 wifi 调整。
在 Arduino 的环境下编译 8266-wifi 非常简单,基本上改改示例就能用了:

IMG8A.png

由于纯 Tcp/Udp 通信需要网络调试助手,操作起来并不方便,因而在 Wemos 端搭建一个简单 Http 服务器。
相当于在局域网内由 Wemos-8266 搭建了一个简单的网站,通过访问特定网页实现加减速控制、油门监视。

附上整个 Wemos 固件源码: FanServer-SRCv1.0.zip (1.65 KB, 下载次数: 8)


【Html 网页】

Http 服务器只负责与远程浏览器的文本/文件传输,但具体界面仍需要另一层代码实现。
这里用纯 html 语言写个简单网页当做 UI,一行显示风扇油门,剩下两个文字链接到加速/减速网页:

IMG8B.png

附上网页 html 源码(已包含在 Wemos 源码中):
  1. <html>
  2.     <head>
  3.         <title>ESP8266 Fan</title>
  4.         <style>
  5.         body { background-color: #cccccc; font-family: Arial, Helvetica, Sans-Serif; Color: #000088; }
  6.         </style>
  7.     </head>
  8.     <body>
  9.         <h1>Fan Speed= %d<br/><br/>
  10.         <a href="/spdup">Speed UP</a>&nbsp;&nbsp;&nbsp;
  11.         <a href="/spddn">Speed DN</a></h1>
  12.     </body>
  13. </html>
复制代码


使用纯 html 有个好处:远程控制端不需要安装任何App,直接浏览器登录 Wemos 地址即可操作。
操作原理、体验类似于路由器的配置页面,通过 web 完成工作状态调整、监视。


【效果】

分别使用不同平台自带的浏览器,对风扇进行调速动作,起始时油门 100 不足以启动,之后逐步加速。

#1. iPhone4S,操作系统 iOS,浏览器 safari:
EFF1.gif

#2. 三星平板,操作系统 Android,浏览器系统自带:
EFF2.gif

#3. 笔记本,操作系统 Win8-x64,浏览器 IE11:
EFF3.gif

实测调速效果良好,网络延时基本无感。即使躺床上玩手机,也可以随时调整远端电扇风力,不影响睡意。

---------------------------------------------


以上,使用 MC34063 搭建了一套程控电源扩展板,配合 Arduino 可以实现程控调压输出;
主板选用 Wemos 编写 wifi-http 固件,在局域网内实现 Http 网页遥控风扇调速;
由于使用了标准 html 界面,因而远程遥控支持跨平台、免App操作,专用于躺平玩手机。

最后祝大家折腾愉快!




补充内容 (2021-8-17 02:54):
在 #94 楼更新了 web 控制界面(含源码),猫羽登场!附上链接:
https://www.mydigit.cn/forum.php ... 34&pid=10407643

打赏

参与人数 10家元 +179 收起 理由
kkdkj + 20 高手,绝对的高手!赞一个!
febwind + 4 優秀文章
rallyezhang + 20 原創內容
大道必成 + 15 原創內容
萧错 + 20 優秀文章
飞向狙沙 + 20 謝謝分享
moontree + 20 謝謝分享
zzqqzzz + 20 欢迎回粉呵呵
jf201006 + 20 優秀文章
玛德陛下 + 20 謝謝分享

查看全部打赏

本帖被以下淘专辑推荐:

发表于 2021-6-26 09:05:20 来自手机浏览器 | 显示全部楼层
如果风扇能调节扇叶的扇距的话,就能不用调节转速控制风量了:lol:
回复 支持 反对

使用道具 举报

发表于 2021-6-26 09:05:25 | 显示全部楼层
用暴力风扇,戴降噪耳机,那才爽。接入语音助手,用语音控制不就好了
回复 支持 反对

使用道具 举报

发表于 2021-6-26 09:55:46 来自手机浏览器 | 显示全部楼层
老大好,这么久了
液晶屏幕的电压电量4056
为何还没有现身?
回复 支持 反对

使用道具 举报

发表于 2021-6-26 12:42:24 | 显示全部楼层
纯今 发表于 2021-6-26 09:55
老大好,这么久了
液晶屏幕的电压电量4056
为何还没有现身?

有啥用:lol:
回复 支持 反对

使用道具 举报

发表于 2021-6-26 12:44:07 | 显示全部楼层
又想起了寝室那个外挂白色盒子手工调速的风扇:lol:
回复 支持 反对

使用道具 举报

发表于 2021-6-26 13:17:07 | 显示全部楼层
我想到了我之前用358控制降压dcdc来实现恒流输出的方法就是给fb下电阻注入额外电流实现的并且能够控制任何dcdc
回复 支持 反对

使用道具 举报

发表于 2021-6-26 13:26:15 来自手机浏览器 | 显示全部楼层
不错 不错 ,懒人必备 :lol:
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-6-26 13:33:12 来自手机浏览器 | 显示全部楼层
wfzdm 发表于 2021-6-26 09:05
如果风扇能调节扇叶的扇距的话,就能不用调节转速控制风量了

最好能调叶片角,然后还能反桨
回复 支持 3 反对 0

使用道具 举报

 楼主| 发表于 2021-6-26 13:33:48 来自手机浏览器 | 显示全部楼层
纯今 发表于 2021-6-26 09:55
老大好,这么久了
液晶屏幕的电压电量4056
为何还没有现身?

在测试啊,固件比这些大多了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-6-26 13:34:42 来自手机浏览器 | 显示全部楼层
jlhgold 发表于 2021-6-26 12:42
有啥用

准备挂过来换M币
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-6-26 13:35:19 来自手机浏览器 | 显示全部楼层
jlhgold 发表于 2021-6-26 12:44
又想起了寝室那个外挂白色盒子手工调速的风扇

憋说寝室,睡个觉老鼠都能爬床上的
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-6-26 13:35:56 来自手机浏览器 | 显示全部楼层
水表君 发表于 2021-6-26 09:05
用暴力风扇,戴降噪耳机,那才爽。接入语音助手,用语音控制不就好了

然后语音助手是不也得降噪,要不听不清指令
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-6-26 13:38:03 来自手机浏览器 | 显示全部楼层
我不是小连 发表于 2021-6-26 13:17
我想到了我之前用358控制降压dcdc来实现恒流输出的方法就是给fb下电阻注入额外电流实现的并且能够控制任何d ...

之前也做过类似的事情,不过我运放直接都放在反馈环里了,运放直接运算输出和参考,之后给Vfb。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-6-26 13:38:58 来自手机浏览器 | 显示全部楼层
jf201006 发表于 2021-6-26 13:26
不错 不错 ,懒人必备

躺平装备+1
回复 支持 反对

使用道具 举报

发表于 2021-6-26 17:52:10 | 显示全部楼层
感谢分享!正想做一个PC电源风扇的调速电路呢,以前用PWM直接进行调速,感觉噪音比直接调电压大,后来就用LM317进行调速的,但是效率不高,又不可控,你的电路正是我需要的。
回复 支持 反对

使用道具 举报

发表于 2021-6-27 11:34:06 | 显示全部楼层
理论扎实、手工精妙,贴贴精华!

乐于分享,楼主人才、这才是真正的高手!:praise:
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-6-28 02:14:40 来自手机浏览器 | 显示全部楼层
mengfc 发表于 2021-6-26 17:52
感谢分享!正想做一个PC电源风扇的调速电路呢,以前用PWM直接进行调速,感觉噪音比直接调电压大,后来就用L ...

34063 在间歇振荡的时候,和电感发生周期性激励,也可能落入音频带来电流声。建议用一体成型屏蔽电感
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-6-28 02:15:27 来自手机浏览器 | 显示全部楼层
lyy-cy 发表于 2021-6-27 11:34
理论扎实、手工精妙,贴贴精华!

乐于分享,楼主人才、这才是真正的高手! ...

感谢支持,欢迎来讨论!
回复 支持 反对

使用道具 举报

发表于 2021-6-28 09:34:43 | 显示全部楼层
34063好老的芯片,效率差点:lol:
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

APP|手机版|小黑屋|关于我们|联系我们|法律条款|技术知识分享平台

闽公网安备35020502000485号

闽ICP备2021002735号-2

GMT+8, 2024-4-20 08:49 , Processed in 0.249600 second(s), 17 queries , Redis On.

Powered by Discuz!

© 2006-2023 smzj.net

快速回复 返回顶部 返回列表