树莓派散热风扇自动启停

a 夏天 提交于 2019-11-29 06:28:39

有张3b+的派,买了个壳子,装了个风扇。但这风扇是不会停的一直很吵…..

那么,树莓派检测芯片温度实现自动启停风扇!

准备工作:

1.三极管(电流能到200毫安以上),或者继电器(不建议,太大了,又难看,三极管贴风扇上基本能看不着)

2.焊接好风扇,gpio端口14。

3.安装Node.js 6以上

4.编辑linux服务脚本并添加到/etc/init.d/,chkconfig add autofun
启停实现过程:

1.获取CPU温度 cat /sys/devices/virtual/thermal/thermal_zone0/temp

2.检查温度是否高于48. 启动

3.检查温度是否低于40. 停止

代码部分

var rpio = require('rpio'),
CLOSE=rpio.HIGH,
OPEN=rpio.LOW,
currentStatus=CLOSE,
max=52000,
min=40000,
funPin=8;
rpio.open(funPin, rpio.OUTPUT, currentStatus);

var exec = require('child_process').exec;
setInterval(function(){
  exec("cat /sys/devices/virtual/thermal/thermal_zone0/temp",function(err,stdout,stderr){
    if(err){
      console.error(err);
      return;
    }
    let val=parseInt(stdout);
    if(currentStatus===CLOSE && val>=max){
      currentStatus=OPEN;
      rpio.write(funPin,OPEN);
      console.log(new Date().toLocaleString(),'OPEN');
      return;
    }
    if(currentStatus===OPEN && val<=min){
      currentStatus=CLOSE;
      rpio.write(funPin,CLOSE);
      console.log(new Date().toLocaleString(),'CLOSE');
      return;
    }
  });
},1000);

需要完整代码请入GITHUB自己下 https://github.com/newbreach/autofun

为啥写这么没有水准的东西,因为meibi

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!