【仅以私家云为例,其他有风扇的盒子同理,只是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. 【Java】面试官灵魂拷问:if语句执行完else语句真的不会再执行吗?
  2. struts启动时加载_iOS优化篇之App启动时间优化
  3. keras 自定义层 2
  4. CALL TRANSACTION - bdc_options
  5. Java-reflect(反射)初步理解_1
  6. 基于JAVA+Servlet+JSP+MYSQL的航空订票系统
  7. paip.ollydbg 常用流程以及找到子程序调用地址
  8. 《码农翻身》之浪潮之巅的Web
  9. activiti7的网关
  10. Linux网络管理实战2-组建局域网
  11. HUPlayer 使用向导和常见问题
  12. 空气质量模型:操作指南与案例研究(模型概述)
  13. 魔方cfop公式软件_如何学习魔方?这份提速心得,亲测有效
  14. redis cli命令详解
  15. ODOO13 开发教程四 模型中的字段
  16. 蓝桥杯训练题1427: [蓝桥杯][2013年第四届真题]买不到的数目【筛选符合题目的数字。有点类似筛素数】
  17. 北邮智能车仿真培训(五)—— 数据可视化工具的使用
  18. UE4 Gameplay框架浅析笔记
  19. (最简单)红米手机5A的USB调试模式在哪里开启的方法
  20. [Economist] Print me a phone 给我印一部手机

热门文章

  1. 重识Nginx - 12 SSL/TLS 浅析
  2. 科创西安:秦创原·鸿蒙生态人才培养发展论坛成功举行
  3. UCL-Dehaze: Towards Real-world Image Dehazing via Unsupervised Contrastive Learning 基于对比学习的无监督真实图像去雾
  4. QML之PathAnimation路径动画
  5. java 常量放在哪里_浅谈JAVA中字符串常量的储存位置
  6. 适合自己才是最好的,又是一个能替代 Postman 的工具,Apifox 真香!
  7. viewport的深入理解
  8. ROS学习:URDF语法详解一link篇
  9. Solaris10下Telnet、SSH、ftp使用root登录
  10. 你未曾了解过的顶级Tequila:培恩龙舌兰