树莓派3B PNP三极管 智能温控风扇

我的树莓派3B放在客厅,估计是长期磨损加上灰尘的原因,最近小散热扇声音特别大,逼得我必须做一个智能风扇了。

大家也想做的话跟着我的步骤即可实现,不用再去网上研究各种细节问题了。

采购

杜邦线

为了避免焊接,我们要用杜邦线:

杜邦线 母对母 公对母公对公40P彩色排线连接线10/15/30/20/40CM

大家把”公母”,”母母”,”公公”都买一下,以后都会用到的。

40P的意思就是40根,不是什么连起来的意思,都可以拆成1根1根的用。

电阻

我们会在电路里串联一个电阻降低电流,避免三极管发热,大家照做即可:

Quason 1K 1/4W金属膜电阻 1% 五色环0.25W 编带装100只1.5元

电阻是1K欧姆的。

三极管

三极管顾名思义有3个插头,其中2个是走正负极电的,中间1个是GPIO控制三极管是否开关的,从而可以GPIO编程控制电流的流通与断开,实现智能风扇。

三极管 S9012 9012 PNP小功率晶体管 封装TO-92 50只

大家一定要买PNP的,和我的教程才能完全吻合,型号照着买就行,我也是随便选了一个小功率的,应该都能用。

硬件安装

这是我的安装结果:

先用杜邦线,把树莓派的5V和风扇的红线(正极)连到一起,这样电就走到风扇正极了,但此时电路还没接地,没有电流通过。

再拿一个杜邦线,把风扇的黑线(负极)和三极管的e极(发射)接到一块,这样电就从风扇走到了三极管了。

这里的问题就是三极管的3个针脚,哪个是e啊?

把扁平的一边面向自己,照着图看就行。

再拿一根杜邦线,把三极管的c极(集电)和树莓派的GND地线接到一起,这样电就流经三极管到达地面了,电通路就完整了。

此时风扇是不会转的,因为PNP三极管默认是断开的,除非给向它的b极(基极)输出低电平,而我们知道树莓派上的GPIO口就是拿来输出高或者低电平的。

但是别急,这里咱不能让b极直接接GPIO口,这样运行的时候电流太大对三极管不好。

拿出一根杜邦线,再拿1个1k欧姆的电阻,把三极管b极和电阻接起来。

拿出一根杜邦线,把电阻另一头和某个GPIO针脚连起来,我用的是18号GIPO针脚。

不知道GPIO引脚布局? 看下图:

现在三极管b极就和GPIO联通了,并且中间有个电阻来降低电流。

整个硬件安装结束,下图是电路的一个示意图:

连接的位置很松动,我用绝缘胶随便缠了一下,因为杜邦线太长放不到外壳里面了,所以就露在外面拉倒。

软件

我们写个常驻的程序,检测树莓派温度,如果高于某个温度就输出低电平,三极管就通电了,否则输出高电平,风扇就不转了。

开机启动

为了开机启动,以及脚本异常重启,我们利用systemctl来实现守护进程。

编辑文件: /etc/systemd/system/pi-temp.service,其中pi-temp是服务的名字,你可以起自己喜欢的:

你根据脚本位置,修改执行命令即可。

现在让这个service生效:

立即启动服务:

现在无论是强制杀死python脚本还是重启机器,脚本都会重新拉起,确保始终工作。

有问题欢迎留言交流,我不懂电路但我也一次成功了,说明还是很简单的。

如果文章帮助您解决了工作难题,您可以帮我点击屏幕上的任意广告,或者赞助少量费用来支持我的持续创作,谢谢~