株式会社インデペンデンスシステムズ横浜

システム開発エンジニアの西田五郎が運営しております。Raspberry Pi や Arduino その他新規開発案件のご依頼をお待ちしております。

Raspberry Pi

Raspberry Piでセンサネットワーク稼働試験(基本編)構成・課題等

投稿日:2018年8月9日 更新日:

Raspberry Piでセンサネットワークを構築して実際に稼働してみます。基本編としてRaspberry Piにセンサを直接接続する構成です。その構成で安定して稼働させるにはどういった課題があるか書いてみます。

システム構成
ハードウェア系
Raspberry Pi Zero WH と公式のACアダプタ
Aitendo BME280(温度、湿度、気圧センサ)Aitendoで購入
Adafruit TSL2561(光センサ)スイッチサイエンスで購入
その他 GROVE I2Cハブ、ブレッドボード、ケース、ジャンパワイヤ等
  スイッチサイエンスで購入

クラウド系
Ambient(IoTデータの可視化サービス)

以下のようなデータの流れになります。
Rapberry Pi本体(センサは直接接続) => (Wi-Fi) ==> インターネット ==> Ambient(ここでデータを確認)

ソフトウェア系
Python系のI2C、各センサのライブラリとAmbientのライブラリ

以下のように接続してWi-Fi経由でAmbientにセンサのデータをアップします。ブレッドボードの左側がTSL2561で右側がBME280です。画像には入っていませんが、GROVE I2Cハブからの配線がRaspberry Piと繋がっています。

(※今回はプログラム詳細については取り上げません。こういった構成で稼働試験をやってみますということが要点です。必要な場合はページ最後の関連リンク等を参照して下さい。)

課題
この構成で安定してセンサのデータをアップするには何が課題というか問題になってくるかです。今までの経験も踏まえてSDカードWi-Fiの接続について考えてみました。

SDカード
Raspberry Piを使っていて急に起動しなくなったという経験をお持ちの方もいらっしゃるかもしれませんが、SDカードに問題が起きることがあります。そこでここでは以下のSDカードを使用しています。

もう少し高額の製品からいろいろと種類があるようです。SDカードのタイプについては以下等を参照して下さい。
SDカードの話 ”産業用SDカード”について

ちなみに、産業用の利用を想定しているRaspberry Pi Compute Moduleの場合はeMMCから起動するようです。

Wi-Fiの接続
Wi-Fiの接続ですが、どうしても切れてしまう瞬間があると思います。Raspberry Piは今現在、接続が切れてまた接続可能な状態になっても自動的に再接続はしません。その対応として以下のような再接続のスクリプトを用意してcronで定期的に実行するという処理を追加しました。

#!/bin/sh
ping -c 1 192.168.3.1
test $? -ne 0 && sudo /etc/ifplugd/action.d/action_wpa wlan0 up

実際の稼働状況
実際の稼働状況ですが、20分毎にセンサのデータを送信するようにして今現在一ヶ月以上経過しました。間違って電源を落とした時以外は正常に稼働し続けています。以下はAmbientのグラフのスクリーンショットです。BME280の温度、湿度、気圧のグラフです。別途TSL2561の照度データも蓄積出来ています。
しばらくはこのままで様子を見たいと思います。

2018/10/22追記
今現在も無事に動作しています。3ヶ月以上経過しました。間違えて電源を切った以外は問題なく動作しています。

2019/12/29追記
稼働を終了しました。最後まで稼働していました。Raspberry Pi Zeroでの実験でしたが今回のような内容であれば十分に実用性があると思います。

プログラム関係の関連リンク
当サイトの記事
Raspberry PiでIoT(温度・湿度・気圧データ編 その1)BME280でデータ取得
Ambientのサイト
AmbientのデーターをPythonで扱う
今回利用したTSL2561のライブラリ
Python library for TSL2561

最後に自社PRですが、Raspberry Pi 関連のご依頼お待ちしております。本記事と同様のセンサネットワークの試用、試作等対応可能です。

AdSense

AdSense

-Raspberry Pi

執筆者:

関連記事

Raspberry PiでIoT(温度・湿度・気圧データ編 その4)アラートメール送信

Raspberry PiでIoT 温度・湿度・気圧データ編の4回目です。前回までで、Raspberry Piから温度、湿度、気圧データをWebサーバへ送信してそのデータを蓄積、表示出来るようになりまし …

感染症対策のためのIoT技術(その4)WebRTCを利用したリモート関連システム

感染症対策のためのIoT技術について書いています。今回はWebRTC(Web Real-Time Communication)を利用したリモート関連システムについてです。リモート関連システムとは具体的 …

Raspberry Piでタッチアプリ開発(その4)ボタンとGPIOの連動

Raspberry Piでタッチアプリ開発の4回目です。前回作成したレイアウトとボタンのコールバックにGPIOの処理を組み込みます。そして、このアプリを自動起動するように設定します。 (※2021/0 …

Raspberry Piをモニターとキーボードなしで導入する(2021年5月版 その3)リモートデスクトップの導入から初期設定まで

今現在(2021年5月)の方法でRaspberry Piをヘッドレス(モニターとキーボードなしの状態)で導入する方法について書いています。前回まででSSH経由でログインするところまで書きました。今回で …

Raspberry PiでAvahi を使ってホスト名でアクセスする

Raspberry PiでAvahiを使ってホスト名でのアクセスを可能にする方法についてです。ホスト名でのアクセスとは192.168.1.10といったIPアドレスではなく、raspberrypi.lo …