亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Manufacturing Technology >> 制造工艺

树莓派室温监测系统:Gnuplot 绘图与邮件报警

高性能计算环境中维持最佳环境温度至关重要。本指南讲解如何用树莓派、USB 温湿度传感器、Gnuplot 可视化分析、Gmail 自动报警构建可靠实时温度监测系统。

步骤 1:硬件连接

USB 温湿度传感器直插树莓派 USB 口。低功耗传感器树莓派原生 5V 供电即可;高功耗设备建议用带电源集线器避免过载。

传感器持续输出串口字符串,格式如:

temperature=20.9°C humidity=62.7% dewpoint=13.0°C

Python 脚本每 5 分钟读取一次,加时间戳写入三个滚动日志:daily.dat、24hour.dat、48hour.dat。这些文件供 Gnuplot 生成最新图表。

步骤 2:软件 – Web 服务器与依赖

安装 Apache 托管监控面板:

sudo apt-get install apache2

安装 Python 依赖:

sudo apt-get install python-serial python-gnuplot

将面板 HTML 文件放入 /var/www/html。页面每分钟刷新 Gnuplot 生成的最新 PNG 图片(daily.png、24hour.png、48hour.png)。

步骤 3:邮件报警配置

创建专用 Gmail 账号发报警(任何支持 SMTP 的服务器配合正确端口均可)。Python 脚本配置 SMTP:

from_address = "[email protected]"
username = "[email protected]"
password = "your_email_password"

定义收件人:

to_addresses = ["recipient1@example.com", "recipient2@example.com"]

温度超阈值时,脚本发送邮件并附带最新 Gnuplot 图片,收件人即时看到严重程度。

步骤 4:串口解析与数据记录

配置串口匹配传感器 9600 bps、8-N-1 格式:

import serial
ser = serial.Serial('/dev/ttyUSB0', 9600, timeout=1)

解析输入字符串:定位 “temperature” 关键字提取数值。带时间戳写入三个日志文件:

from time import strftime, localtime
timestamp = strftime("%d%b%Y %H:%M:%S", localtime())
# 追加写入文件

步骤 5:Gnuplot 图表生成

用 Gnuplot 将日志转 PNG。每日图表示例脚本:

import Gnuplot
p = Gnuplot.Gnuplot(debug=0)
p('cd "{path}"')
p('set xdata time')
p('set timefmt "%d%b%Y %H:%M:%S"')
p('set format x "%H:%M\n%d%b"')
p('set title "Daily Current Temperature Display"')
p('set key off')
p('set grid')
p('set xlabel "Time\nDate"')
p('set yrange [15:35]')
p('set ylabel "Temperature (°C)"')
p('set datafile missing "NaN"')
p('set terminal png size 800,400')
p('set output "daily.png"')
p('plot "daily.dat" using 1:($3) with lines')

24 小时、48 小时视图同理,替换文件名即可。

步骤 6:面板与报警逻辑

Apache 托管的 HTML 页面每分钟刷新 PNG,提供实时视觉快照。Python 脚本检查最新温度;超出用户阈值则触发 SMTP 邮件并附带最新图表。

此方案低成本、开源,实现持续环境监测,兼具即时报警与历史数据可视化。

制造工艺

  1. 集成二维码、RFID与体温验证的门禁控制系统
  2. 树莓派多路DS18B20 1-Wire温度监测:接线与编程全指南
  3. 树莓派+Nagios高效监控机房温度
  4. 树莓派2上使用DS18B20读取温度完整指南
  5. 树莓派家庭温湿度监测系统:Web仪表盘实时远程追踪
  6. 树莓派专业温度监测:基于 DS18B20 传感器的完整指南
  7. 树莓派结合 Maxim 1-Wire 传感器与 DS2482 I2C 桥接器的多点温度测量
  8. 树莓派与 Python 构建远程温度传感器:分步实战指南
  9. 家庭能源中心:树莓派与 Moteino 监测光伏、光热与室温
  10. 树莓派配合 EzTemp 实现无缝温湿度监测
  11. 树莓派精准监测机柜温度:DS18B20 多点部署实战
  12. DIY 家酿温控系统:Arduino 监测与调节发酵温度