名刺サイズの超小型PC「ラズパイ」で遊ぶ(第44回)
550円の「Raspberry Pi Pico」でIoT その1:気温と湿度、気圧を測定する(1/2 ページ)
Raspberry Pi Picoについては第36回でざっと紹介しました。当時は本体に付いているLEDを光らせてみただけですが、今回はもう一歩進んで、気温、気圧、湿度が測定できる、BME280搭載デバイスを使ってみましょう。
ラズパイとRaspberry Pi Picoが大きく異なるのが、シリアル通信「I2C」で利用する「SDA」(データ入出力)と「SCL」(クロック)に対応する端子が多く用意されていることです。ラズパイで使えるのは1番ピンと3番ピンだけですが、小型のRaspberry Pi Picoには12ペアのSDAとSCLがあり、いずれにつないでも利用できます。
I2C接続でBME280を使う準備
気温などをラズパイで測定する方法はこの連載の第1回から第3回までで紹介しました。今回もRaspberry Pi PicoとBME280を、I2C接続で使います。使うモジュールは、秋月電子通商で販売されているBME280使用 温湿度・気圧センサモジュールキット(AE-BME280)です。
I2C接続で利用する端子ですが、分かりやすいように1番ピンと2番ピンを選びました。ここを基本としてつなげていくことになります。なおAE-BME280ですが、VDDとCSB、GNDとSDOをつないで使います。Raspberry Pi Picoとの接続は、SDIに1番ピンを、SCKに2番ピンをつなげればOKです。
プログラムですが、第36回に紹介した「Thonny」を使って入力します。以前紹介したのはRaspberry Pi版のThonnyですが、Windows版もあり、これをPCにインストールするとWindows PCとRaspberry Pi Picoをつないでプログラムを動作させられます。
PCとはUSB Type-A⇔microUSBのケーブルで接続します。その際にはRaspberry Pi Picoの基板にあるボタンスイッチを押しながら接続する必要があります。PCからはUSBマスストレージとして認識されます。
接続が終了したら、以下のプログラムを走らせて、BME280を認識しているか確認しましょう。
import machine
sda=machine.Pin(0)
scl=machine.Pin(1)
i2c=machine.I2C(0,sda=sda, scl=scl, freq=400000)
print(i2c.scan())
i2cscan.py
このプログラムでは、SDAの入力にGPIO0(1番ピン)を、SCLの入力にGPIO1(2番ピン)に設定したあと、「i2c.scan()」でI2Cに接続されている機器を検索しています。「machine」はMicroPythonで使う関数ですが、CPU、タイマー、バスなどのハードウェアを扱うためのものです。
プログラムをThonnyの上部に記述したら、左上にある「▶」をクリックすると実行されます。下のカラムに「118」と表示されればOKです。この数字は10進数で表されているので、16進数に変換すると「76」。つまり「0x76」で認識していることになり、正しく接続されています。
次に、BME280を扱うためのパッケージを導入します。Thonnyの「ツール」-「Manage Packages」を選びます。上のカラムに「bme280」と入力したら「Search PyPI」をクリックします。「Search results」にある中から「micropython-bme280」を選んで「インストール」をクリックすると、パッケージがインストールされます。これでパッケージの導入は終わりです。
Copyright © ITmedia, Inc. All Rights Reserved.
名刺サイズの超小型PC「ラズパイ」で遊ぶ
今やスマートフォンアプリで何でも完結できてしまう時代。しかし、一から自分の手でデバイスを作り上げ、試行錯誤しながらアイデアを具現化する楽しさは格別です。この連載では、テーマや用途にあわせてマイクロコンピュータ(マイコン)と呼ばれる名刺サイズの超小型PC「Raspberry Pi」(通称ラズパイ)の活用方法から具体的な工作手順までを紹介します。
この記事の著者
関連記事
こんなメディアも見られています
ITmedia NEWSに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
SpecialPR
本日の新着記事
アクセスランキング
-
1
GMO、ランサム被害にあった顧客に新しいPC提供へ 犯行グループは1人の顧客情報公開か
-
2
NECのルータ「Aterm」、PHP脆弱性の影響なし 設定画面URLの「.php」は無関係
-
3
GMO不正アクセスの犯人サイト、ドメイン停止を確認
-
4
GMO、不正アクセス実行犯の手がかりに懸賞金 1億5000万円規模
-
5
「楽天トラベル」に不正アクセス 顧客情報最大約260万件など流出か 予約者約3.6万件のクレカ情報も
-
6
メアドを検索→AIで“その人専用フィッシングメール”を生成する手法、クリック率が約2.7倍に 7000人以上で実験
-
7
So-net、会員情報約259万件が漏えい 一部メールサービスではパスワードも流出
-
8
GMO、攻撃者の公開情報に「アクセスは絶対に控えて」 悪質な拡散者には法的措置を準備
-
9
【復旧】auで大規模障害 全国で通話・データ通信しづらい状態 緊急通報にも影響
-
10
Google、プライバシーポリシーに「Gmail」「Googleフォト」のデータを広告に使う例外を追加 回避方法は
ITmedia NEWS SNS
インフォメーション
注目情報をチェック
ITmediaNEWSをフォロー
あなたにおすすめの記事PR