Raspberry Pi4にnode-REDとGrafanaが使える環境を作る
概要
ICT農業と言われて久しい今日このごろ。市販システムもいいけれど、せっかくだから俺はこの赤の扉を選ぶぜnode-RED等の環境を自分で構築するメモ。
・node-RED
・InfluxDB
・Grafana
・Munin
材料
・Raspberry Pi4
せっかくUSB3があるので、USB-SSD等にRaspbianをインストールしてUSBブートにすることをオススメします。
・電源やSDカード、インターネット環境等
・困ったらgoogle検索する能力
ソフトウェアのインストール
muninとapache2
sudo apt install -y munin apache2 libapache2-mod-fcgid
LANからのアクセスを許可する場合、設定を変えてapache2を再起動。
sudo nano /etc/apache2/conf-available/munin.conf
Require ip [LANのネットワーク]/24を追加。
<Directory /var/cache/munin/www>
Require local
Require ip 10.0.1.0/24
Options None
</Directory>
<Directory /usr/lib/munin/cgi>
Require local
Require ip 10.0.1.0/24
sudo service apache2 restart
node-RED
influxDBとGrafana
だいたい同じなので、最初にそれぞれのapt-keyを入れて一気にインストール。
wget -q -O - https://packages.grafana.com/gpg.key | sudo apt-key add -
echo "deb https://packages.grafana.com/oss/deb stable main" | sudo tee -a /etc/apt/sources.list.d/grafana.list
curl -sL https://repos.influxdata.com/influxdb.key | sudo apt-key add -
echo "deb https://repos.influxdata.com/debian stretch stable" | sudo tee /etc/apt/sources.list.d/influxdb.list
sudo apt-get update
sudo apt-get install -y grafana influxdb
自動起動するように設定
sudo systemctl enable grafana-server
sudo systemctl start grafana-server
sudo systemctl unmask influxdb
sudo systemctl enable influxdb
sudo systemctl start influxdb
データベースを作っておく
influx
CREATE DATABASE mysensor
quit
Grafanaの設定
農業現場的にはWiFiさえ存在しない野生環境で使う事が多いと思われるので、認証機構が不要の人は以下を設定して認証機構を外しておく。
行頭に;があるので外してtrueに書き換えます。
Grafana自体の設定変更する場合、ID admin,Pass admin(初期設定の場合)でログインする必要があります。
sudo nano /etc/grafana/grafana.ini
allow_embedding = true
enabled = true
sudo service restart grafana-server
node-REDからinfluxDBを使うためのノードを追加する
PCとかからRaspberrypi.local:1880のnode-REDにアクセスして、influxDBノードを追加する。
なんか怖いこと言ってくるけど追加する。
influxdbのノードが追加されました。
influxDBノードの設定
influxDBのノードをマウスで「フロー1」にD&Dして追加→ダブルクリックすると、編集できます。
Serverの右にあるペンの形?をしたボタンを押すと、サーバへの接続情報を入力できるので、設定して追加する。
Host 127.0.0.1
Database mysensor
活用例
後述のDS18B20温度センサーを4つ繋げた例。たまに温度センサーを見失うので、delay等を入れたほうがいいかもしれません。
まとめ
・node-RED
http://raspberrypi.local:1880/
・influxDB
http://raspberrypi.local:3000/
・munin
http://raspberrypi.local/munin/
その他おすすめノード
・DS18B20 温度センサーノード
https://flows.nodered.org/node/node-red-contrib-ds18b20-sensor
農業あるある「とりあえず温度を知りたい」って場合に使われがちな1-wire温度センサーを使えるようにするノード。Raspberry Piにはこんな感じで繋ぎます。
https://www.google.com/search?q=raspberry+pi+ds18b20
Aliexpressやamazonなんかで安いものを買うと、偽物掴まされます。(掴まされました)
偽物の場合、5個1200円程度で、国内の信頼できるメーカと比べると段違いに安いですが、導線が無茶苦茶細くて切れやすく、ケーブルの長さが2〜3cm違い、パラサイト・パワー機能がありません。
私が掴んだ偽物では温度を測れましたが、たぶん二度と買いません。
多少高いけれども、偽物を掴みたくない場合は国内の信頼できる通販等を利用しましょう。
・LINE
https://flows.nodered.org/node/node-red-contrib-line-messaging-api
・twitter
https://flows.nodered.org/node/node-red-node-twitter
参照資料
http://bluearth.cocolog-nifty.com/blog/2020/04/post-4dea15.html
apt-cacher-ngを使っている環境の場合、node.js等のサーバをapt-cacher-ngが参照してくれないので、その対策。
Author And Source
この問題について(Raspberry Pi4にnode-REDとGrafanaが使える環境を作る), 我々は、より多くの情報をここで見つけました https://qiita.com/yasunori_oi/items/bc70e5e6560e0b734050著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .