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

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

*

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

   

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の照度データも蓄積出来ています。
しばらくはこのままで様子を見たいと思います。

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

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

 - Raspberry Pi

AdSense

AdSense

  関連記事

Raspberry Piでも温度センサADT7310をつかってみる

以下の記事でArduino Unoで温度センサのADT7310を使ってみました。 …

Raspberry Piでwifiに接続する

Raspberry Pi(Raspbian)でwifiを使って無線LANに接続し …

Node.jsでRaspberryPiのGPIOを使う(その2)ブラウザからの操作

Node.jsでRaspberryPiのGPIOを使うの2回目です。前回はGPI …

Raspberry Pi 3でのコンソールケーブル利用と初期設定

Raspberry Pi 3 でコンソールケーブルを利用する方法と初期設定につい …

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

Raspberry Piでセンサネットワークを構築して実際に稼働してみます。今回 …

Raspberry PiでIoT(温度・湿度・気圧データ編 その1)BME280でデータ取得

Raspberry PiでIoTに取り組んでみるという内容で実際に動作させながら …

Raspberry Piでタッチアプリ開発(その2)Kivyの導入と動作確認

Raspberry Piでタッチアプリ開発の2回目です。前回はハードウェア構成や …

無線マイコン ToCoStickのシリアル通信専用アプリを使ってみた

無線マイコンの ToCoStick(トコスティック)のシリアル通信専用アプリを使 …

温度センサADT7410(その1)i2C通信とは

温度センサのADT7410を使ってみます。ADT7410はアナログ・デバイセズ社 …

Node.jsでRaspberryPiのGPIOを使う(その1)デバイスドライバでLED

Node.jsでRaspberryPiのGPIOを使ってみます。今回はデバイスド …