【仅以私家云为例,其他有风扇的盒子同理,只是GPIO参数不同而已】

【1】建立一个 温控程序,例如 /123/temp_ctrl.sh
以及下面的两个开、关风扇程序 都放在 /123 目录下,
并设置所有sh程序为755权限 chmod 755 *.sh

其中 temp_warn=57 为设定的cpu监控温度,
一般夏天大约在这个上下吧,自己根据实际情况设定。
/etc/update-motd.d/30-armbian-sysinfo 是armbian系统里的一个小程序,
能输出cpu温度,用awk提取出来就可以用了

#!/bin/sh -e
temp_cpu=$(/etc/update-motd.d/30-armbian-sysinfo | grep temp | awk '{print substr($4,1,2)}' )
temp_warn=57
if [ $temp_cpu -lt $temp_warn ]; then
        /123/fan_off.sh
else
        /123/fan_on.sh
fi

【2】创建两个sh,一个开风扇并设置LED为黄色,另一个关风扇并设置LED为绿色
都放在 /123 目录下,并设置所有sh程序为755权限 chmod 755 *.sh

开风扇程序 fan_on.sh

#!/bin/sh -e
#fan's gpio is 504 in armbian
if [ ! -e  /sys/class/gpio/gpio504/direction ]; then
     echo 504 > /sys/class/gpio/export
fi
echo high > /sys/class/gpio/gpio504/direction

# setLED G off
if [ ! -e  /sys/class/gpio/gpio476/direction ]; then
     echo 476 > /sys/class/gpio/export
fi
echo high > /sys/class/gpio/gpio476/direction

# setLED Y on
if [ ! -e  /sys/class/gpio/gpio474/direction ]; then
     echo 474 > /sys/class/gpio/export
fi
echo low > /sys/class/gpio/gpio474/direction

另一个程序关风扇:fan_off.sh

#!/bin/sh -e
#fan's gpio is 504 in armbian
if [ ! -e  /sys/class/gpio/gpio504/direction ]; then
     echo 504 > /sys/class/gpio/export
fi
echo low > /sys/class/gpio/gpio504/direction

# setp LED  W on
if [ ! -e  /sys/class/gpio/gpio477/direction ]; then
     echo 477 > /sys/class/gpio/export
fi
echo high > /sys/class/gpio/gpio477/direction

# setLED G on
if [ ! -e  /sys/class/gpio/gpio476/direction ]; then
     echo 476 > /sys/class/gpio/export
fi
echo low > /sys/class/gpio/gpio476/direction

【3】运行 crontab -e 写入定时,每分钟执行一下温控脚本
* * * * *  /123/temp_ctrl.sh

完工,让机器自己去启停风扇吧,你看看面板的LED灯就行了。

昨天又仔细看了看前面板几个GPIO接口的连接,
发现稍有错漏,实在抱歉,特订正如下图:

请各位自己按表里的情况,
自己选择平时,以及过热风扇开启时候的不同颜色。

私家云前面板LED颜色表.jpg (22.97 KB, 下载次数: 3)

前面板LED颜色表

把fan_on 和 fan_off 程序稍微修改如下,
三个灯的组合放在了一起,这样看得更为清楚一些:

程序 :fan_on.sh   
面板灯粉色

#!/bin/sh -e

###-------fan's gpio is 504 ------###
if [ ! -e  /sys/class/gpio/gpio504/direction ]; then
     echo 504 > /sys/class/gpio/export
fi
echo high > /sys/class/gpio/gpio504/direction

###--------font-LED-------###
# open474-BLUE
if [ ! -e  /sys/class/gpio/gpio474/direction ]; then
     echo 474 > /sys/class/gpio/export
fi
#  open476-RED
if [ ! -e  /sys/class/gpio/gpio476/direction ]; then
     echo 476 > /sys/class/gpio/export
fi
#  open477-GREEN
if [ ! -e  /sys/class/gpio/gpio477/direction ]; then
     echo 477 > /sys/class/gpio/export
fi

echo high > /sys/class/gpio/gpio474/direction
echo high > /sys/class/gpio/gpio476/direction
echo low > /sys/class/gpio/gpio477/direction

====================
程序:fan_off.sh
面板灯绿色

#!/bin/sh -e

###-------fan's gpio is 504 ------###
if [ ! -e  /sys/class/gpio/gpio504/direction ]; then
     echo 504 > /sys/class/gpio/export
fi
echo low > /sys/class/gpio/gpio504/direction

###--------font-LED-------###
# open474-BLUE
if [ ! -e  /sys/class/gpio/gpio474/direction ]; then
     echo 474 > /sys/class/gpio/export
fi
#  open476-RED
if [ ! -e  /sys/class/gpio/gpio476/direction ]; then
     echo 476 > /sys/class/gpio/export
fi
#  open477-GREEN
if [ ! -e  /sys/class/gpio/gpio477/direction ]; then
     echo 477 > /sys/class/gpio/export
fi

echo low > /sys/class/gpio/gpio474/direction
echo low > /sys/class/gpio/gpio476/direction
echo high > /sys/class/gpio/gpio477/direction

让私家云等自己温控风扇、改变前面板LED颜色相关推荐

  1. 树莓派 + SSD启动 + CentOS 8 64位 + 内网穿透 + 自动温控风扇 + SMB服务 + 文件分类备份

    功能描述 上闲鱼拿下了个树莓派4B 8G,300块,我仿佛听见有人说"哇"?哦,其实它的外显输出有点问题,但我是不关心,真香. 到手之后自然是传统装机,点到为止,64位centos ...

  2. 基于Blinker ESP8266 远程电压电流、功率计、温湿度计、ADC接口测温、温控风扇、低电压保护、低压报警功能。用来监测我的太阳能充电。SSD1306可轮番显示电压信息和温度信息。APP图表

    ESP8266系列文章目录 目录 ESP8266系列文章目录 经过不断的努力,处女之作终于做出来了.用的Arduino 经过一段时间不断熟练了,做了一些更新:2022.10.30   可以直接主页下载 ...

  3. S0011基于51单片机DS18B20温控风扇仿真设计

    基于51单片机DS18B20温控风扇仿真设计 (仿真+原理图+源码+设计报告) 原理图:Altium Designer 仿真原版本:proteus 7.8 程序编译器:keil 4/keil 5 编程 ...

  4. 【电路】基于单片机智能睡眠枕系统设计-基于单片机音乐喷泉制作设计-基于单片机智能温控风扇调速系统设计-基于单片机智能自动循迹小车控制系统设计-基于数字电路的4人投票系统设计(仿真,报告)毕设课设资料

    1620基于单片机智能睡眠枕系统设计-文档+PPT+PCB图+原理图+源码 智能睡眠枕主要由lcd屏幕.蓝牙.压力传感器.蜂鸣器.单片机等等组成,用户可通过四个独立按键进行操控(四个按键从左至右为1. ...

  5. 新秀发挥云17号:RHEL改变以太网地址克隆虚拟机后,

    新秀发挥云17号:RHEL改变以太网地址克隆虚拟机后, (一)变化hostname # vi /etc/sysconfig/networkNETWORKING=yes HOSTNAME=your-vm ...

  6. 树莓派3B+温控风扇

    树莓派3B+温控风扇 已添加散热片的树莓派3B+,在空载工作过程中温度过高,需要增加风扇达到物理降温的效果.但在使用过程中,风扇发出的声音过高,需要在温度较低的情况下停止风扇的工作. 准备材料 树莓派 ...

  7. RK3588 实现温控风扇之获取cpu温度(一)

    RK3588 实现温控风扇系列文章 第一章: RK3588 实现温控风扇之如何获取cpu温度(一) 第二章: RK3588 实现温控风扇之pwm驱动调试(二) 第三章: RK3588 实现温控风扇之通 ...

  8. 毕业设计 stm32智能温控风扇系统 - 单片机 嵌入式

    文章目录 1 简介 2 绪论 2.1 课题背景 3 系统设计 3.1 系统架构 3.2 硬件部分 3.2.1 DS18B20 简介 3.2.2 LCD1602 液晶屏简介 3.3 软件部分 3.3.1 ...

  9. 基于stm32单片机智能温控风扇控制系统Proteus仿真

    资料编号:103  下面是相关功能视频演示: 103-基于stm32单片机智能温控风扇控制系统Proteus仿真(源码+仿真+全套资料) 功能介绍:采用stm32单片机.ds18b20温度传感器采集温 ...

最新文章

  1. CentOS6.3配置yum源
  2. 常看 Shell: 文本文件操作
  3. 2.WindowsServer2012R2装完的一些友好化设置
  4. 带有en的单词有哪些_律师不只是lawyer,还有barrister等其他单词
  5. linux-tomcat连接数查询
  6. 【C++ Primer】第十五章 友元、异常和其他 --之一---友元和嵌套类
  7. pycharm的项目文件中包括什么_一个完整的项目管理流程包括什么?
  8. 枚举也能直接转换为对应的数值输出
  9. 阶段1 语言基础+高级_1-3-Java语言高级_08-JDK8新特性_第1节 常用函数接口_7_常用的函数式接口_Supplier接口...
  10. 2014青岛初中组第2题 洪水 详解(C++)
  11. 教师工作量管理系统设计_教育培训机构为什么一定要用管理系统?
  12. 牛客网算法题目-最优乘车题解
  13. jdk 6u45 下载地址
  14. mysql批量导出_mysql批量导出导入
  15. CSS DIV 折角的代码
  16. 彻底解决360安全卫士广告问题-终极解决方案(含360后台广告程序下载解决方案)
  17. Mocking Techniques for Go
  18. PHP获取自然周始末时间
  19. Python+Excel 华尔街的一股清流
  20. Android应用开发之PNG、IconFont、SVG图标资源优化详解

热门文章

  1. AIR中调用exe或者bat可执行文件
  2. python list转string_【幼儿园级】0基础学python一本通(上)——AI未来系列1
  3. css阴影遮盖其他组件
  4. 青岛电子学校中美计算机班分数线,青岛中考分数线出炉:二中普通班324.5分,五十八中普通班318分...
  5. 在视频背景前加字html,如何在一个视频前加封面(片头) 以及配音乐, 视频如何同时加片头和背景音乐...
  6. Java项目---搜索引擎
  7. 用纯css3仿ios水晶icon,仅支持webkit浏览器
  8. TI SAE J1772兼容电动汽车充电器参考设计TIDA-010071
  9. 新题库所有题目的汇总
  10. 将彩色图片转为黑白粉笔画