マイクロビットで赤外線反射センサーを使ってみよう:AO



マイクロビットで赤外線反射センサーを使ってみよう:DOに引き続き、赤外線反射センサーのTCRT5000のAO(Analog Output)を使ってみます。

TCRT5000 赤外線 障害物回避モジュール IR反射センサモジュール トラッキングセンサー 赤外線反射型光電 - Amazon


AOでは反射の強弱を0〜1023の範囲の値で取得しますが、対象物からどんなに離れていても 0 より大きな値になりますので、DOの時に設定したプルアップ抵抗と半固定抵抗の調整は不要です。




先にAOで得られる値を確認します。



マイクロビットにコードをフラッシングした後にMakeCodeのShow data デバイスを使ってみようの内容を参考にして値を確認してみます。

冒頭の動画のように対象物を近づけたり遠ざけたりして値の変化を確認してみましょう。


対象物が近い程値が小さくなり、対象物が遠い程値が大きくなります。

※対象物が黒である場合、近い場合でも値が大きくなります。




白い紙をセンサーに3cm程近づけた時の値が100前後でしたので、この値で対象物が近づいたかのコードを作成してみます。



フラッシングをした後に対象物を近づけてディスプレイのアイコンが変更されるか確認してみましょう。




MicroPythonへの書き換え

from microbit import *

while True:
    if pin0.read_analog() < 100:
        display.show(Image.YES)
    else:
        display.show(Image.NO)
京都の東本願寺で開催されているプログラミング教室で講師をしています。
詳しくはTera schoolを御覧ください。
同じカテゴリーの記事
マインクラフト用ビジュアルエディタを開発しています。

詳しくはinunosinsi/mcws_blockly - githubをご覧ください。