新しいマイクロビット(micro:bit v2.0)には
オリジナルにあった機能に加えて、
マイク、スピーカー、省エネモード、タッチロゴが追加されました。
今回は、マイクロビットのタッチロゴの機能と
タッチロゴを使った簡単なプログラムを紹介します。
タッチロゴとは
マイクロビットの表面にあるロゴは、
静電容量式タッチセンサーとして使うことができ
指などの電気を通すものでタッチすると反応します。
AボタンやBボタンのようにプログラムを
実行するきっかけとして使用することが可能です。
身の回りで使われている例
- デスクライト
- スマートフォン
- ニンテンドースイッチなどゲーム機
- 銀行のATM
タッチスクリーンのしくみについて
Nintendoさんのサイトで分かりやすく解説されていたので
リンクを貼っておきます。
(静電容量式の説明はページの下の方にあります)
今回作ったプログラム
- ロゴをタッチした時
「ビックリ顔」を表示 - ロゴからはなした時
「hello」を鳴らす
「うれしい顔」を表示
バージョンアップで追加された
ブロックを使ってプログラムを作ります。
MakeCodeエディターでプログラミング
MakeCodeエディターの画面を開いて
実際にプログラミングしてみましょう。
MakeCodeエディターの基本的な使い方は
こちらの記事をご覧ください。
プログラム
プログラムの内容は下の画像のようになります。
「音を演奏する」ブロックは、音楽カテゴリにあります。
「最初だけ」「アイコンを表示」ブロックは
基本カテゴリにあります。
ロゴに関するブロックは入力カテゴリにあります。
詳しくみていきましょう。
ロゴが押されたとき(on logo 押された)
ロゴが押されたとき、
中にあるプログラムを実行するイベントブロックです。
- 押された … ロゴにタッチして はなした時
- 触れた(touched) … ロゴにタッチした時
- 離した … ロゴから はなした時
- 長押し(long pressed) … ロゴを長押しして、はなした時
「押された」と「触れた」のちがいに注意です。
メイン(最初だけ、ずっと)のプログラムの外にあって、
あることをきっかけ(トリガーといいます)に
イベントブロックの中にあるプログラムが実行されます。
ロゴに触れている(logo is pressed)
今回のプログラムでは使いませんでしたが
こちらのブロックについても解説します。
画像のプログラムは、
ロゴに触れているときにハートを表示するプログラムです。
「ロゴに触れている(logo is pressed)」は
ロゴに触れているかどうかの状態を取得するブロック。
触れている場合は「真」、触れていない場合は「偽」を返します。
「真」と「偽」って何?ということですが、
- 真(true)はそうだよ(ロゴに触れている)
- 偽(false)はちがうよ(ロゴに触れていない)
という意味です。
「もし〇〇なら」ブロックは、
条件の〇〇が真のとき中のブロックを実行するブロック。
偽のときは「でなければ」の中のブロックを実行します。
条件に「ロゴに触れている」ブロックを入れた場合
ロゴに触れているときが「真」なので
ロゴに触れているとハートを表示するブロックが実行されます。
シミュレーターで確認
プログラムが完成したら
シミュレーターで思った通りに動くかテストしましょう。
ロゴをクリックしてみてください。
実機でテストしてみよう
シミュレーターで確認できたら
マイクロビットに転送して実際に動かしてみましょう。
まとめ
マイクロビットのタッチロゴの機能と、
タッチロゴを利用した簡単なプログラムを紹介しました。
ロゴは、「押された」だけでなく
「触れた」「離した」「長押し」をトリガーにすることができます。
ボタンよりトリガーになるアクションが
多いのでいろいろ試してみましょう。