前言:
很多人一直以为树莓派(Raspberry Pi)只是创客圈子里的小玩具——一块信用卡大小的开发板,用来点亮 LED、跑个 Python 脚本、或者给中学生上一堂入门编程课。然而,事实远比想象震撼:树莓派已经悄悄完成了从“教学演示”到“工业级主力”的华丽转身,正在产线、机房、实验室甚至外太空里 7×24 小时不间断服役。
如果你和我一样,你的树莓派总是运行着某些东西:可能是备份、网络监控,或者只是一个简单的脚本。但是每天重复同样的任务很快就会让人厌烦。这时Python就派上用场了。只需几个简单的脚本,你的树莓派就能自动处理这些无聊的事情。我测试了许多脚本,并挑选出了其中最有用的几个。
Python脚本可以在树莓派上用于自动化功能任务,如备份、监控、警报和设备控制,只需几行代码即可实现。与bash脚本相比,它们更容易编写、阅读和扩展,尤其是在使用库或Web API时。
在本文中,我将分享一些我最常用的Python脚本,这些脚本让我的树莓派变得更智能、更省心。你会发现一些想法、代码片段和提示,你可以立即应用它们,不需要高级技能。
资源使用记录器
你是否想知道你的树莓派是否运行过热或使用了过多内存?如果你的树莓派突然变慢,有一个性能日志可以帮助你找出原因。
虽然有几种工具可用于监控树莓派的健康状况,但大多数工具都需要你现场操作。你可以使用psutil库开发一个Python脚本来跟踪CPU、内存和磁盘使用情况,并在任何指标超过设定限制时发出警告。
你可以使用以下命令安装psutil库:
pip install psutil
然后你可以使用psutil的内置函数获取CPU、RAM和磁盘使用情况,如下所示:
import psutilcpu = psutil.cpu_percent()ram = psutil.virtual_memory().percentdisk = psutil.disk_usage('/').percent
另一个需要监控的重要统计数据是树莓派的CPU温度。CPU温度也可以通过读取
/sys/class/thermal/thermal_zone0/temp
文件中的值来获取。你也可以将其转换为Python代码:
# Function to get CPU temperaturedef get_cpu_temp():try:with open("/sys/class/thermal/thermal_zone0/temp", "r") as f:temp_str = f.readline()return round(int(temp_str) / 1000, 1)except FileNotFoundError:return None
然后你可以将所有这些数据保存到一个带有日期和时间戳的CSV文件中,创建一个日志,以便稍后查看以分析系统性能。
你还可以通过使用Pushbullet在离开时发送通知来增强这个脚本,如果任何指标变得过高(例如CPU温度过高)。
注意:确保你的PC或手机上安装并配置了Pushbullet以接收通知。
你可以使用如下所示的Python脚本向所有连接的设备发送Pushbullet通知:
import requestsPUSHBULLET_TOKEN = "your_token_here"def send_alert(msg):requests.post("https://api.pushbullet.com/v2/pushes",headers={"Access-Token": PUSHBULLET_TOKEN},json={"type": "note", "title": "Raspberry Pi Alert", "body": msg})if temp and temp > TEMP_LIMIT:send_alert(f"CPU temperature is high: {temp}°C")
现在,每当你的树莓派过热时,它都会自动通知你,即使你不在它旁边:
Pushbullet通知也可以在手机上接收。
如果你的树莓派经常过热,请参考这篇关于树莓派温度的全面指南:限制、监控、冷却等。
https://raspberrytips.com/raspberry-pi-temperature/
如果觉得文章不错记得点赞,收藏,关注,转发~
我们很乐意为您提供工业树莓派的解决方案,项目有需求请联系我们~
官方网站:www.edatec.cn/cn
1074