[RPI]树莓派监控温度及报警关机保护「建议收藏」

最近把树莓派用作了Aria2下载机+无线路由,24小时不间断工作,生怕机子有时会过热烧坏,所以写了个脚本做温度记录,以及在温度过高时能自动关机保护。下面直接上Shell脚本(/data/temperature.sh):#!/bin/sh#高温阈值hot_temp=80.0#低温阈值cold_temp=-70.0#过热预警连续出现次数hot_cnt=0#过冷预警连…

大家好,又见面了,我是你们的朋友全栈君。

最近把树莓派用作了Aria2下载机+无线路由,24小时不间断工作,生怕机子有时会过热烧坏,所以写了个脚本做温度记录,以及在温度过高时能自动关机保护。下面直接上Shell脚本(/data/temperature.sh):

#!/bin/sh

# 高温阈值
hot_temp=80.0

# 低温阈值
cold_temp=-70.0

# 过热预警连续出现次数
hot_cnt=0

# 过冷预警连续出现次数
cold_cnt=0

while (true) do
	temp=`/opt/vc/bin/vcgencmd measure_temp|awk -F= '{print $2}'|awk -F\' '{print $1}'`
	echo $temp
	# 网上有实验表明,树莓派温度达到 -78°C 的低温下会停止工作
	# http://shumeipai.nxez.com/2019/04/02/what-is-the-ideal-raspberry-pi-cpu-temperature-range.html
	if [ `expr "$temp < $cold_temp"` ]; then
		if [ $cold_cnt > 3 ]; then
			echo "太冷了,我不会是在太空中吧!" >&2
			halt -p
			break
		else
			let cold_cnt+=1
		fi
	elif [ `expr "$temp > $hot_temp"` ]; then
		if [ $hot_cnt > 3 ]; then
			echo "太热了,需要关机休息一下!" >&2
			halt -p
			break
		else
			let hot_cnt+=1
		fi
	else
		# 需要连续出现温度预警才会关机
		hot_cnt=0
		cold_cnt=0

		if [ `expr "$temp < 0.0"` ]; then # 有点冷
			echo "警告:当前温度有点冷,小心受凉!" >&2
		elif [ `expr "$temp < 40.0"` ]; then # 待机温度
			sleep 0.1
		elif [ `expr "$temp < 70.0"` ]; then # 正常工作温度
			sleep 0.1
		elif [ `expr "$temp < $hot_temp"` ]; then # 挖矿温度?
			echo "警告:我有点热,注意控制温度!" >&2
		fi
	fi

	sleep 10
done

另外,还可以写个服务配置文件(/etc/systemd/system/temperature.service):

[Unit]
Description=Temperature Monitor
After=network.target

[Service]
ExecStart=/data/temperature.sh > /data/temperature.log &
Restart=on-abort

[Install]
WantedBy=multi-user.target

最后执行一下systemctl enable temperature,这样每次开机时就会自动启动温度监控脚本。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/128631.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • idea启动tomcat控制台乱码_idea tomcat 乱码

    idea启动tomcat控制台乱码_idea tomcat 乱码找到你的tomcat的安装目录,如下图,找到conf下的logging.properties文件用notepad++等工具打开logging.properties文件,找到内容为java.util.logging.ConsoleHandler.encoding=UTF-8这一行,在前面加#注释掉该行,并保存,重新启动tomcat,你就会发现已经修改成功了,如下图注:如果还没有解决,…

    2022年9月26日
    6
  • TI ADI DSP 与 ARM Cortex-A 的 FIR FFT 性能对比

    TI ADI DSP 与 ARM Cortex-A 的 FIR FFT 性能对比DSP作为计算密集型的芯片,一度是FIR和FFT运算的主力芯片,而TI和ADI两大DSP芯片公司推出的DSP产品也互不相让。可以预见,随着ARM的广泛使用和性能的提高,DSP作为独立的芯片,应用场景会越来越少,也许会慢慢退出历史的舞台;而数字信号处理,会以DSPIP软核或者硬核的形式,出现在各种芯片当中。摩尔定律和制造工艺的发展,推动着芯片行业飞速前进,不进则退。

    2022年10月14日
    1
  • 光盘制作软件UltraISO软碟通-原版下载+正版注册码

    光盘制作软件UltraISO软碟通-原版下载+正版注册码下载地址为官方下载,个人再提供个正版注册码!一、简要软件类型:光碟工具出品商:EZBSystems语言:中文简体运行平台:WindowsVista,WindowsServer2003,WindowsXP,Windows2000等二、功能UltraISO是一款功能强大而又方便实用的光盘映像文件制作/编辑/格式转换工具。它可以直接编辑光盘映像和从映像中直接提取…

    2022年7月26日
    4
  • 为什么必须做密评

    为什么必须做密评密评全称 商用密码应用安全性评估定义 对采用商用密码技术 产品和服务集成建设的网络和信息系统密码应用的合规性 正确性 有效性进行评估 1 密评发展史 2011 年 ZUC 序列算法成为了 4G 移动通信密码算法国际标准 2017 年 非对称算法 SM2 和 SM9 的数字签名算法成为国际标准 2018 年 密码杂凑算法 SM3 成为国际标准 2021 年 2 月 SM9 标识加密算法成为国际标准 6 月 SM4 分组密码算法成为国际标准 10 月 SM9 密钥交换协议成为国际标准我国自主研发的密码算法相继走出国门并受到国际上的认可 国密局

    2025年6月21日
    3
  • MT4行情交易API接口开发手记

    MT4行情交易API接口开发手记之前开发的外汇量化交易系统,行情和交易接口都是通过在MT4平台下编写EA来实现,具体方法是:1、用C++编写一个动态库文件,在里面实现行情和交易数据调用接口,将报价数据和K线数据写入数据库中,并从数据库中获取外汇量化系统发出的交易指令。2、在MT4中编写EA文件,在MT4上不间断运行,从MT4平台实时获取报价和K线数据,并调用动态库写入数据库中,于此同时,不断从数据库中获取交易指令,再调用MT4的交易指令完成交易。采用此种方法的好处就是兼容性强,只要打开MT4软件运行EA,就可以完成行情和交易接..

    2022年5月30日
    164
  • 第三章数据链路层_数据链路层链路管理包括

    第三章数据链路层_数据链路层链路管理包括冗余链路出现的背景由于公司对网络的可靠性的要求,大部分公司都会增加额外的交换机,防止在某台交换机出现故障时造成网络的无法使用的情况,例如形成如下图的拓扑的结构。假设W和X交换中的一台出现故

    2022年8月2日
    6

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号