PR

2月23日 VISION COMMANDのChallenges(チャレンジ)を一つずつ,まめにこなしているかず。寒い中にも,春らしい空気が感じられる今日は,まず音を鳴らすMusic Machineに挑む。レゴカム(PCカメラ)の視界を5つのregion(領域)に区切り,それぞれの領域に入ったら違う音を鳴らすようにプログラムを組む。



 音を鳴らすのにはPlay Instrumentというコマンドブロックを使った。Play Instrumentでは楽器と音程を選択できる。Guitarを選択しregion1ではF(ファ)の音,region2ではG(ソ)の音と順に音階を上げていく。「ほのちゃん,テスト!」とかずと声を揃えてほのちゃん(4歳)を呼ぶ。



 まだ小さな,口の中にすっぽり入りそうな手をほのがカメラの視界に差し上げると「ギャン」みたいなギターの音がする。手を出す場所によって音が違うので,ほのは十分楽しめる。ダンスでもするかのように手を上げていた。

 次はSpy Cameraだ。アバウトなはずのかずが,几帳面にチャレンジを1つずつこなしていく。お題はThe challenge is to program your camera to take a picture whenever it sees a person move.(人が動いたら,写真を撮るようにプログラムせよ)だ。レゴカムは静止画を写すこともできる。

 ヒントはカメラのパターン4を使えと言う。丸い領域を3つ定義するパターンだ。



 1,2,3の丸の中に人が入ったらTake Snapshotコマンドで静止画を撮るように,かずがプログラムを作成し,再び「ほのちゃーん」とテスターほのを呼ぶ。



 そして,こんな写真が撮れた。久々のほのちゃん登場であるが全然,誰だかわからない。もう少し,画素数が多ければ実用的なのだが…。

3月2日 今日は部屋への侵入者を検出しアラームを鳴らすSecurity Camera(防犯カメラ)を作る。Challenges(チャレンジ)のProgram Brief(プログラムの概要)を口に出して読んでから,日本語にしてかずに伝える。黙読して,直接日本語訳をしゃべれるほどの英語力が筆者にはない。
1)Detect a color of your choice in one region.
 一つの領域で自分が選択した色を検出せよ。
2)Detect motion in the other region.
 別の領域でモーション(動き)を検出せよ。
3)Play an alarm if motion is detected.
 モーションを検出したら,アラームを鳴らせ。
4)Play a welcome sound and end the program if color is detected in the right region.
 選択した色を検出したら,歓迎の音を鳴らしプログラムを終了せよ。

 部屋を離れる時は,Security Cameraを手動でオンにして出かけ,戻ってきた時は自分の登録した秘密の色をカメラに見せ,Security Cameraをオフにするという仕様である。

 「自分が部屋に入った後,悪い人が入ってきたらアラームが鳴らんがいね。」かずは時たま,妙なことを言って人の思考を停止させる。「そんな時は自分で捕まえればいいの」となんとか,かわして先に進んだ。



 ドアとカメラのregion(領域),その領域に入った場合のコードを図にしてみた。2の領域では,モーションの変化を検出しアラーム音を2度鳴らしている。1の領域では色の変化を検出する。あらかじめ登録した色を検出したら,Effect(エフェクト)音cavalryを鳴らし,プログラムを終了させる。色の登録には,水色のクッションを使った。クッションをカメラの前に差し出し,Grab colorというボタンをクリックすると色を登録できる。

 かずと代わる代わるテストした。普通に部屋に入って来ると,アラームがなる。クッションをかざして入ってくるとCavalry(競馬でお馴染みのパ,パ,パ,パッパカ,パッパというサウンド)とともにプログラムは終了した。

 かずは「来週は何かな」と次のチャレンジの予習までした。