micro:bit で明るさを測ろう

プログラミング

前回記事にてIO端子にLEDを繋げて光らせる出力側を行いました。

今回は光センサを使って入力側を紹介しようと思います。

必要な物

光センサを使って明るさを測定するために以下の物を準備します。

  • ワニ口クリップ
  • 光センサ(CdS)
  • 抵抗(10kΩ)

micro:bit(マイクロビット)

価格:2,530円
(2020/2/23 07:01時点)
感想(0件)

ワニ口 クリップ コード セット (10本セット) |L

価格:599円
(2020/4/7 03:54時点)
感想(8件)

光センサー【送料300円 ゆうパケット対応可】CdSセル5mmタイプ在庫処分品

価格:22円
(2020/4/9 03:58時点)
感想(4件)

600個 30値 * 20個 1%1/4 W 抵抗 セット diy 金属皮膜 固定 抵抗器 キット 使用色付き 金属皮膜抵抗器 (10オーム〜1 Mオーム)

価格:712円
(2020/4/7 04:00時点)
感想(0件)

CdSをmicro:bitへ繋ぐ

必要な物が揃ったらCdSをmicro:bitへ繋げます。

IO端子(3V)->CdS->抵抗->IO端子(GND)
IO端子(3V)->CdS->IO端子(P0)

光センサ(CdS)をmicro:bitに繋ぐ

これでmicro:bitからCdSの値を読み取る準備ができました。(絵ではブレッドボードを使って繋げていますが実際にはワニ口クリップで以下のように繋げました)

光センサ(CdS)をmicro:bitに繋ぐ(写真)

回路はショートしないように気を付けてください。

光センサ(CdS)と抵抗は向きが無いので気にせず繋げてください。

光センサ(CdS)の値を読み取る

回路が作れたら次はプログラムです。

IO端子からセンサの値を読み取るには「入出力端子」の「アナログ値を読み取る 端子「P0」」ブロックを使います。

「アナログ値を読み取る 端子「P0」」ブロック

簡単にセンサの値を確認したいのでmicro:bitのLEDに読み取った値を表示させるために「数を表示「0」」ブロックと組み合わせて「ずっと」ブロックに配置します。

光センサ(CdS)から値を読み取るプログラム

これでプログラムは完成です。

プロジェクトをmicro:bitへ書き込んで動作を確認してみましょう。

光センサの値を読み取り

プロジェクトをmicro:bitへ書き込みが完了すると光センサの値がmicro:bitのLEDに表示されます。(LEDへの表示では値が大きい(2桁以上)あるため、文字がスクロールして見づらいです)

読み取った値をLEDに表示

これで光センサ(CdS)を使って明るさを読み取る事ができるようになりました。

値を判定して分岐するプログラムを作れば明るさが変わると動作するような物が作れます。

まとめ

今回はアナログセンサの値の読み取りについて回路とプログラムを組んで実際に動かしてみました。

micro:bitはアナログの入出力端子とそれを制御するブロックが準備されているので、とりあえず動かすにはすぐ行えます。

実際に値を適切な値に変換して利用するにはその電子部品の仕様理解が必要ですがこれらも何度か扱ううちにスキルが上がり自由に回路を組んでいけると思います。

これからも電子工作の記事を増やしていこうと思います。

コメント

タイトルとURLをコピーしました