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

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

Raspberry Pi

Groveコネクタとi2cハブでセンサを接続する

投稿日:

Groveコネクタとi2cハブを使ってi2cセンサを接続してみました。こうすることによって接続を間違えたり、見た目が悪くなったりしないように出来ると思います。

まずここでのGroveコネクタとはSeeed社の規格のことです。共通の規格でセンサ類の接続が容易になるということと理解しています。このGroveコネクタを搭載している開発ボードはM5Stack系などいろいろとあると思います。今回はi2cのセンサ2個をGroveで接続します。私自身の気持ちとしては「Grove対応のi2cセンサを自作する」ということです。ここではソフトウェアエンジニアの私がこのように作ってみましたということでご覧頂ければと思います。

ここからの画像はそれぞれクリックで拡大します。

Groveのコネクタとi2cハブ
袋に入った状態で以下です。電子部品を扱っているショップで入手出来ます。

L型ヘッダーソケット 1列×4P
センサについているピンヘッダではなくこのヘッダソケットをはんだ付けしました。

温湿度センサと光量(照度)センサを接続した状態
i2cハブからはRaspberry Piに接続するためにジャンパワイヤで延長しています。

温湿度センサBME280
ここでは以下の製品を使用しました。実際に動作したのですが何とも表記があいまいです。商品名にSPIとありますが、4ピンのI2C接続です。あと電圧ですがどうも5Vでないと動作しないようです。また基板にBMP280の表記もありますが、BME280のライブラリでデータが取得出来ます。GAOHOUとは深センの企業のようです。

小さくて4ピン接続なのでこれを使ってみました。


実際の商品です。

L型ヘッダーソケットをはんだ付けしました。

光量(照度)センサ
以下の製品です。低価格ですが動作しました。HiLetgoはアマゾンでよく見かけますが本当に低価格です。こちらも深センの企業のようです。


実際の商品の両面です。


これもL型ヘッダーソケットをはんだ付けしました。

Raspberry Piとの接続
Raspberry PiのI2cと5V、GNDに接続します。何ともまとまりはないですが、以下のようになりました。Raspberry Piに重ねているのは、前回の電源管理ボードです。

センサ部分拡大です。

コマンドでI2cのアドレスを確認します。”i2cdetect -y 1″ を実行します。温湿度センサのアドレス(0x76)と光量センサのアドレス(0x23)が確認出来ました。(UUは電源管理ボードのRTCだと思います。)

温湿度データの取得
実際に温湿度を取得します。このサイトで何回も利用していますがスイッチサイエンスさんの以下のライブラリを利用します。以下のようにPython2.7で実行してデータが取得出来ました。
SWITCHSCIENCE/BME280 GitHub

光量(照度)データの取得
ここでのプログラムは以下を利用させて頂きました。ありがとうございます。
⑦Raspberry Pi3で照射量を取得する(BH1750FVI) – Qiita
結果は以下です。

以上で接続からデータの取得まで出来ました。見た目やまとまりという点ではまだまだかもしれないですが、今回はここまでとします。

ケース関連で少し補足
Grove Wrapperという製品があってこれを利用すれば今回のI2cハブも固定したり、安定させることが出来ると思います。実際にハブを設置した状態が以下です。

これはいいなと思ったのですが国内で購入するとなると以下のマルツさんしか見つかりませんでした。しかも在庫なしで取り寄せになるようです。私も実際に一ヶ月ほど待ったと思います。(それ程は売れないものなのでしょうか。)
Grove – Blue Wrapper 1*1(4 PCS pack)【110070022】

それから、センサー部分のケースとしてはもちろんこれも自作すればいいのかもしれないですが、以下のタカチのケース(SW-30)なら加工は必要ですが今回のセンサ部分なら収まりそうです。参考までに。

AdSense

AdSense

-Raspberry Pi

執筆者:

関連記事

Raspberry PiでIoT(温度・湿度・気圧データ編 その2)Webサーバ側構築とデータ送信

Raspberry PiでIoT 温度・湿度・気圧データ編の2回目です。前回はRaspberry Piに温度・湿度・気圧データが測定出来るセンサモジュールのBME280を接続して値を取得しました。 以 …

温度センサADT7410(その3)Raspbery Piでの利用

温度センサADT7410の3回目です。前回までの内容は以下です。 温度センサADT7410(その1)I2C通信とは 温度センサADT7410(その2)Arduinoでの利用 ADT7410は以下を使っ …

Raspberry PiでAC100V(ソリッド・ステート・リレー)制御

Raspberry PiでAC100VのON/OFF制御を試してみました。今回そのために以下のソリッド・ステート・リレーキットを利用しました。この製品を選んだ理由としては「扱いが簡単」かなと思ったから …

Raspberry Piでタッチアプリ開発(その1)ハードウェア構成・開発環境等

Raspberry Piで簡単なタッチアプリを開発する手順について書きます。もちろんですがこれからの手順は一例です。他にもいろいろな方法があると思いますので必要な場合は最適と思われる方法を検討して選択 …

Raspberry PiでC言語版Lチカを試す(その1)デバイスドライバ利用

Raspberry PiでC言語を使ったLEDの点灯、消灯(いわいるLチカ)を試してみました。やはりGPIOの入出力に関してはこのLチカをやってみないと始まらないというところでしょうか。今回はGPIO …