IoTパート PiNodeセットアップ#
このNotebookは,Raspberry Pi(Raspi)を用いて,IoTシステム(PiNode)を構築するためのセットアップ手順をまとめたものです.
PiNode3のハードウェアと01_raspi_setup.ipynbの実施を前提に,以下の流れで進めます.
IoTシステム(PiNode)のセットアップ
データ収集と収集確認
データ自動送信
実行はRaspiにアクセスしたPCのターミナルから行います.
1. IoTシステム(PiNode)のセットアップ#
1.1 リポジトリのクローン#
以下のコマンドを実行して,リポジトリのクローンを行います.
$ git clone [リポジトリURL]
リポジトリURLは以下
PiNode3#
<インストールする前に設定>
・ラズパイのユーザ名:pinode3
・ラズパイのホスト名:固定IPアドレスの下2桁を付ける(例:PiNode1-11)
1.2-a ソフトウェアのインストール(リモートDBに自動送信する場合)#
クローンしたリポジトリの中にあるinstall_remotedb.shを実行して,必要なソフトウェアのインストールを行います.
$ cd PiNode3
$ bash install_remotedb.sh
<インストールする時に>
・InfluxDBのトークンの入力:APIキーを確認して入力(例:0123456789abcdef0123456789abcdef01)
・接続先ホストIPアドレスの入力:アップロード先のホストIPアドレスを入力(例:192.168.XX.XX)
・接続先ユーザ名の入力:アップロード先のユーザ名を入力
1.2-b ソフトウェアのインストール(ローカルDBに保存する場合)#
クローンしたリポジトリの中にあるinstall.shを実行して,必要なソフトウェアのインストールを行います.
$ cd PiNode3
$ bash install.sh
2. データ収集と収集確認#
データ収集は,サービスファイルが実行され,Raspiの起動と同時に開始されるようになっています. データ収集が正常に行われているかは,以下のコマンドで確認できます.
収集データが保存されているか確認する
$ ls -l /home/data/image/image*
$ ls -l /home/data/sensor/
サービスの状態を確認する
$ sudo systemctl status data_collector.service
$ journalctl -u data_collector.service -e
カメラが認識されていない場合は,以下のコマンドでカメラが認識されているか確認してください.
$ ls /dev/ttyUSB*
カメラ名のルールはPiNode3/driver/usb/以下のファイルに記載されています.
3. データ自動送信#
収集データは,Raspiのローカルストレージに保存されますが,これを自動的にPCに送信するための設定が行われています.
送信は,データ収集同様に,サービスファイルが実行され,Raspiの起動と同時に開始されるようになっています.
サービスファイルは全て/etc/systemd/system/に保存されており,daily_rsync.serviceがデータ送信のサービスファイルになります.
データ送信間隔を変更したい場合は以下のコマンドでサービスファイルを編集してください.
$ sudo nano /etc/systemd/system/daily_rsync.timer
# 5分ごとに送信する場合は以下に変更
[Unit]
Description=Run upload every 5min
[Timer]
OnCalendar=*:0/5 #5分ごとに実行
RandomizedDelaySec=180 #実行時間を0~180秒ランダムに遅らせる(他の機器のデータ送信との混雑を避ける)
サービスファイルの編集後は,以下のコマンドでサービスを再起動してください.
$ sudo systemctl daemon-reload
$ sudo systemctl restart daily_rsync.service