ITmedia NEWS > STUDIO >

これが“らずキャン△”だ! キャンプ場で役立つ「気温・湿度・気圧センサー」の作り方名刺サイズの超小型PC「ラズパイ」で遊ぶ(第1回)(3/3 ページ)

» 2018年12月15日 13時00分 公開
[岩泉茂ITmedia]
前のページへ 1|2|3       

デバイスを接続する

 いよいよハードウェアの製作に入りましょう。ただし、今回使うセンサーモジュールのAE-BME280は半完成品になっていて、基板とコネクターをハンダ付けする必要があります。基板は熱に弱いので、注意してハンダ付けをしてください。

 無事ハンダ付けが終わったら、まずはブレッドボードで動作を確認してみましょう。利用するセンサーモジュールは3.3Vで駆動するので、これの「VDO」端子をラズパイのGPIO1番ピンにつなぎます。

 ラズパイで、I2C用に用意されているのは3番ピンと5番ピン。3番ピンの「SDA」にセンサーモジュールの「SDI」、5番ピンの「SCL」にモジュールの「SCK」をつなぎます。

 センサーモジュールの残りの端子ですが、「GND」と「SDO」はGPIOの9番ピン「GND」につないでおきましょう。つなぐと分かりますが、今回はGPIOに向かって左側、上から4本のピンを使うことになります。これでハードウェアの準備は完了です。

photo ■画像7 ラズパイとBME280の接続

 I2Cで認識をしているか、「i2cdetect」というコマンドを入力して調べます。

$ sudo i2cdetect -y 1

 すると以下のような文字列が表示されるはずです。

     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- 76 --

 この表示が出れば「0x76」で接続されていますので、無事認識されたことになります。この表示がでない場合は、接続をもう一度確認してください。

 では次の作業に移ります。実際にBME280を扱うための方法もいろいろとありますが、今回はPythonで動くプログラムを使ってデータを収集します。電子部品メーカーのスイッチサイエンスにサンプルコードが掲載されていますので、そちらを使うことにします。

 まずは適当な場所にディレクトリを作成してダウンロードしましょう。ここでは「BME280」というディレクトリを作っていますが、名前は何でも構いません。「mkdir」(make directoryの意味)コマンドで作成します。

$ mkdir BME280
$ cd BME280
$ wget https://raw.githubusercontent.com/SWITCHSCIENCE/BME280/master/Python27/bme280_sample.py

 なおこのサンプルプログラムでは「smbus2」というパッケージが必要となりますので、以下の手順でこちらをインストールしておきます。

$ wget https://github.com/SWITCHSCIENCE/BME280/archive/master.zip
$ unzip master.zip
$ cd BME280-master/
$ sudo pip install smbus2

 smbus2のインストールには少し時間がかかりますので、反応がないからと「Ctrl+C」で中断してリブートしてはいけません(私は気が短いのでよくやってしまいます……)。ダウンロードとインストールが終了したら、以下のコマンドを入力して実際に動かしてみましょう。

$ python ~/BME280/bme280_sample.py

 すると以下のように計測したデータが表示されます。

temp : 27.93  ℃
pressure : 1017.10 hPa
hum :  40.29 %

 これで現在の気温、湿度、気圧が測定できました! ハンダ付け作業は大変だったかもしれませんが、測定自体はそれほど難しいものではなかったかと思います。「習うより慣れろ」──実際に手を動かしてみると、意外とできるものですよ。

 次回はこの値をCSV形式で記録する手順について紹介していきましょう。

前のページへ 1|2|3       

Copyright © ITmedia, Inc. All Rights Reserved.