以前レビューした「embot+ スターターキット」にはセンサー類を3つまで接続することができます。
今回はその中の一つ「超音波センサー」の詳しい使い方を解説します。
▼本記事の内容
- 【embot+】超音波センサーの使い方
超音波センサーは物体までの距離を計測するセンサーです。
物体までの距離がわかれば、物体が近づいたら音を鳴らすプログラムなどを作ることができますよ。
【embot+】超音波センサーの使い方
embot+コアと超音波センサーの接続
まずはembot+コアに超音波センサーを接続してembotアプリで使用できるように設定します。
詳しい設定方法は「embot+に別売りのセンサー類を接続する方法と簡単な使い方解説」をご覧ください。
超音波センサーの仕組み・仕様
超音波センサーは発信した超音波が物体にぶつかり、反射して受信するまでの時間から距離を割り出すセンサーです。
embotアプリでは物体までの距離[mm]が取得できます。自分で反射時間から距離を計算する必要はありません。
超音波センサーで得られる値
それでは簡単なプログラムを作って超音波センサーで得られる値を確認しましょう。
下記は超音波センサーに物体を近づけると距離を表示するプログラムです。
プログラムの実行結果は次のとおりです。
手を近づけたり離したりして実際の値を確認してみてください。
超音波センサーを活用したプログラム例
最後にロボットとの距離に応じてLEDの明るさを変えるプログラムを作ります。
つまり、ロボットまでの距離とLEDの明るさの関係を次のようにしたいわけです。
ロボットまでの距離 | 20mm | ~ | 147mm | ~ | 275mm以上 |
超音波センサーの値 | 20 | ~ | 147 | ~ | 275 |
LEDの明るさ | 一番暗い | ~ | 中間 | ~ | 一番明るい |
LEDの値 | 0 | ~ | 127 | ~ | 255 |
これをプログラムにするとこんな感じです。
まず、超音波センサーの値が275以上かどうかチェックします。275以上の場合は◯の処理が実行されます。
超音波センサーの値が275以上の場合の処理です。ライトの明るさを255にしています。
プログラムが回りくどく感じるかもですが、変換の意味をわかりやすくするためにこうしています。(直接255と書いてもいいですよ。)
超音波センサーの値が275未満の場合の処理です。
ではプログラムを動かしてみましょう。実行すると次のとおりです。
おー、定規を近づけたり離したりするとLEDの明るさが変わるようになりました。
以上が超音波センサーの活用方法でした。
他のセンサー類の使い方
また、他のセンサー類の使い方は下記をご覧ください。
それでは embot+を楽しんでください(^^)/~~~