不难想象在工业应用中将传感器连接到 Raspberry Pi 的情况。特别是,它们被广泛用于温度和湿度控制。
在将获取的数据 “可视化 “时,图表和数字表都很有效,但将数据叠加在图纸上显示更为直观。
下图是一个使用数据库中测试数据的示例,但实际上传感器的数据可以实时更新和显示。

随着近年来极端天气的增多,许多行业都面临着应对高温的挑战。
在物流行业,如仓库和配送中心,以及处理食品的生产工厂和零售店,预计产品的温度和湿度控制将比过去更加困难。
在这些场所,与工业级 Raspberry Pi 相连接的传感器可用作测量每个区域的系统,并有效地控制空调。
这不仅能控制产品质量,还能改善员工的工作环境。
本文将向您介绍如何在工业级 Raspberry PiPL-R5M 上安装和使用 Grafana。
请注意,本文不使用 Grafana Cloud,而是用于在本地环境中安装。
什么是 Grafana?
它主要用于实时 “可视化 “数据。

它的特点是能够连接到各种数据源,包括时间序列数据库、传感器数据、监控服务器和物联网设备,以及各种云服务用途。
除了本测试中的图表和数字表格外,它还能以各种格式显示,包括地图图像。
警报功能也很实用,可以设置通知的阈值。
,既可用于小型个人用途,也可用于大规模工业应用。
- 支持多数据源
- 仪表板定制
- 警报功能
- 可通过插件进行扩展
有了 Grafana Cloud,还可以使用同样开源的 Prometheus 收集数据,并使用 Grafana Cloud 中创建的数据库进行集中管理。
由于它是开源的,因此在本地环境下是免费的,Grafana Cloud 也有免费计划,因此很容易实施。
安装 Grafana
对于 Ubuntu 和 Debian 系统,可使用 apt 软件包管理系统进行安装。
添加 GPG 密钥和软件源后,使用 apt 命令进行安装。
先安装所需内容(如果不使用 SQLite 作为数据库,则不需要第二行)
sudo apt install software-properties-common
sudo apt install sqlite3
下载和移动 GPG 密钥
wget -q -O - https://apt.grafana.com/gpg.key | gpg --dearmor | sudo tee /etc/apt/keyrings/grafana.gpg > /dev/null
注册为存储库
echo "deb [signed-by=/etc/apt/keyrings/grafana.gpg] https://apt.grafana.com stable main" | sudo tee /etc/apt/sources.list.d/grafana.list
使用 apt 命令安装
sudo apt update
sudo apt install grafana
服务启动且始终有效
sudo /bin/systemctl start grafana-server
sudo /bin/systemctl enable grafana-server
之后,您就可以使用网络浏览器工作了。
如果您在同一个网络中,可以通过http://<ip address>:3000 连接到网络浏览器。
登录 Grafana

通过网络浏览器连接后,将进入登录界面。
使用默认用户名admin和默认密码admin 登录 Grafana。然后会要求您更改管理员用户密码,但仅限于首次更改。

测试数据准备和设置
首先,作为测试数据,我们准备了用于创建数据库的 shell 脚本和用于仪表盘的 json 文件。
我将在文章末尾提供下载,以备各位尝试。希望你们能加以利用。
提前将用于测试数据的三个文件传输(复制)到 Raspberry Pi 上。
💡 如果要从另一台机器复制到 Raspberry Pi,请使用 SCP 命令
scp (オプション)転送するファイルへのパス 転送先の場所のパス
scp [[user@]ホスト 1:]ファイル 1[...] [[user@]ホスト 2:]ファイル 2
scp ./create_db.sh pi@192.168.0.51:/home/pi
数据库是在包含以下内容的 sh 文件中准备的,运行后可创建sensor_data.db文件。
这项工作在 Raspberry Pi 端完成。
#!/bin/bash
DB_FILE="sensor_data.db"
sqlite3 "$DB_FILE" <<EOF
CREATE TABLE IF NOT EXISTS sensor (
address INTEGER,
temp REAL,
humidity REAL,
"update" TEXT
);
INSERT INTO sensor (address, temp, humidity, "update") VALUES
(1, 23.5, 45.2, '2025-07-24 10:00:00'),
(2, 26.1, 50.8, '2025-07-24 10:05:00'),
(3, 22.9, 42.0, '2025-07-24 10:10:00');
EOF
.db 文件保存到/var/work/grafana_test 。create_db.sh复制并执行该文件,并授予执行权限。
sudo mkdir -p /var/work/grafana_test
cd /var/work/grafana_test
sudo hmod +x create_db.sh
./create_db.sh
同样,图像文件(sample.png)被复制到/usr/share/grafana/public/img/bg 。
这是 Grafana 的默认(标准)加载目标。
sample.json可以从其他机器上拖放,因此无需复制到 Raspberry Pi 上。
使用 Grafana 进行配置
要使用 SQLite 作为数据库,请先安装 SQLite 插件。
安装插件
按照左侧菜单选择 SQLite:
管理 -> 插件和数据 -> 插件 -> SQLite

您可以使用搜索窗口缩小搜索范围。
您点击的屏幕上有一个安装按钮,按下按钮即可。

处理图像也需要画布,但在当前版本中,画布从一开始就已安装,无需进行任何工作。
指定数据源
将刚刚在 Raspberry Pi 上创建的 *.db 文件指定为数据源。
从左侧菜单中选择并指定 SQLite 为数据源。
连接 –> 数据源 -> sqlite

这里我们只输入了路径。
这是刚才输入的 *.db 文件的完整路径。

名称:frser-sqlite-datasource
路径:/var/work/grafana_test/sensor_data.db
最后,按下 “保存和测试 “按钮,如果显示Data source is working,就可以了。

在仪表板中导入 json 文件
在这种情况下,我们事先准备了一个仪表盘的 sample.json,我们将导入它。
以下 JSON 模型是定义仪表盘的数据结构。其中包括仪表盘设置、面板设置、布局、查询等。点击菜单中的仪表盘后,可以从右上角的新建按钮中选择导入。


json 文件是通过拖放上传的。
⚠︎ 备注 UID
UID 在创建数据库时分配。这是创建时分配的。这次我们准备的 json 文件中也包含了它。由于 json 文件是事先从仪表盘导出的,因此 uid 保留在 JSON 模型中。
导入数据后,发现数据无法显示,于是回过头来再看了一遍,似乎是 UID 的指定有误。原因是该 UID 与当前数据库的 UID 不同。
导入后可对 json 文件进行编辑。
指定 UID 的部分格式如下。
"datasource": {
"type": "frser-sqlite-datasource",
"uid": "devqnl8xvnrwgf"
在准备好的 sample.json 中,这几行分别是第 27、340 和 351 行。
你可以将值设为null,或者首先删除 uid 键。
或者,我也可以在之后创建的数据库中指定 uid,这样也能正常工作。
只保留第一个现有注释列表的 uid 和仪表板本身的 uid。
{
"annotations": {
"list": [
{
"builtIn": 1,
"datasource": {
"type": "grafana",
"uid": "-- Grafana --"
由于标题和 UID 必须是唯一的,因此如果要更改,似乎最好同时更改这两个内容。
"timezone": "browser",
"title": "Sample",
"uid": "46ada52f-f62f-41a5-927f-1a597dc35f59",
"version": 4
}
如果想从头开始手动创建仪表盘,则无需执行这些任务。
请注意,这仅适用于导入预先创建的仪表盘 json 文件。
如果您稍后导入 json 文件,如果遇到数据不显示在仪表板上的情况,请对其进行审查。
这是撰写本文时的处理方式。
确认执行
完成这些设置后,您的仪表盘将与本节开头显示的图片一样。下面是一个仓库的图片。
从数据库中读取温度和采集日期/时间。
在实际操作中,它可以在一定秒数内更新,这比数字表格更容易直观地了解每个区域的情况。

/usr/share/grafana/public/img/bg如果将图片放在 “设置背景 “上,它就会出现在仪表板的画布上,右键单击子菜单 “设置背景 “即可。

然后你就可以添加另一个数据源,自定义仪表盘的显示方式,并尝试你希望实现的任何其他显示效果。
将 Grafana 与 Raspberry Pi 结合使用
Grafana 的特点是支持广泛的数据导入。
此外,还有许多插件,因此您不必担心与云服务和各种数据的接口问题。
Grafana 已在许多公司和网站的系统监控和工业应用中广泛使用,并广为人知。可以肯定的是,Grafana 的可用信息相对较多。
有了 Raspberry Pi,传感器就可以连接到 GPIO 端子上,并在一个可以立即执行 Python 程序和处理数据库的环境中工作。
如果在 Raspberry Pi 上安装 Grafana,就能在仪表盘上轻松实现数据可视化。
此外,Raspberry Pi 还可以通过 HDMI 连接到显示器,实现全屏显示。它还可以作为本地环境的永久显示器。
假定 Grafana 用于工业应用,那么它的各种组合都非常实用,例如传感器数据的实时可视化、服务器状态监控以及自身的警报功能。
从多个设备收集多种数据将进一步扩大使用规模和使用场景。
测试数据
我们将保留用作测试数据的三个文件。
按照文章中的步骤查看 Grafana 如何与 PL-R5M 或 Pi 5 等设备配合使用。
参考资料:https://grafana.com/tutorials/install-grafana-on-raspberry-pi/
記事寄稿:ラズパイダ
非エンジニアでも楽しく扱えるRaspberry Pi 情報サイト raspida.com を運営。ラズベリーパイに長年触れた経験をもとに、ラズベリーパイを知る人にも、これから始めたいと興味を持つ人にも参考になる情報・トピックを数多く発信。PiLinkのサイトへは産業用ラズベリーパイについて技術ブログ記事を寄稿。

