【発展編】17-a フライト・シミュレーター(1)

Q1. ☆問題☆

飛行機を左右に動かすためのコントローラーには、タッチセンサーを2つ使ったよね。それ以外のセンサーって飛行機を左右に動かすコントローラーを作ることはできるのだろうか。ただし、カラーセンサーやジャイロセンサーなども2つ以上使えるものとするよ。このとき、ふさわしいと考えられるものを次の中から全て選んでね。

  • カラーセンサーは「色」を感知させることで、タッチセンサーと同じように使うことができる。
  • カラーセンサーは、傾きを感知させられないため、どのように工夫してもここでは使うことができない。
  • ジャイロセンサーは、取りつける向きを工夫しても、左右の動きを感知させることができないため、使うことはできない。
  • 超音波センサーを使うこともできなくないが、とても大きなコントローラーになってしまうため、現実的ではない。
  • 超音波センサーには「目」が2つあるため、1つだけでも、左右のどちらに傾けるかを感知させられる。

正解

  • カラーセンサーは「色」を感知させることで、タッチセンサーと同じように使うことができる。
  • カラーセンサーは、傾きを感知させられないため、どのように工夫してもここでは使うことができない。
  • ジャイロセンサーは、取りつける向きを工夫しても、左右の動きを感知させることができないため、使うことはできない。
  • 超音波センサーを使うこともできなくないが、とても大きなコントローラーになってしまうため、現実的ではない。
  • 超音波センサーには「目」が2つあるため、1つだけでも、左右のどちらに傾けるかを感知させられる。

解説

まず、カラーセンサーについて考えよう。
確かにカラーセンサーに「傾き」を感知させることはできない。でも、工夫することでタッチセンサーと同じような働きをさせられるはずだ。
ここで考えられるのが、問題文にあるように、「色」を感知させる方法。「フライト・シミュレーター」でタッチセンサーをおしている部分に色をつければ、レバーを傾けたときに色を感知することができる。同じような仕組みは、「スマート・アーム」でアームをあげすぎないように感知させたときに経験しているよね。

次に、ジャイロセンサーはどうだろうか。上下に動かすところで使えているのだから、同じような組み立てをすれば、左右に動かすようにできるよね。

最後に、超音波センサーだ。まず思い出してほしいのは、超音波センサーは「3cmから250cmまでのきょりをはかることができる」こと。3cmよりも小さなきょりをはかることはできないんだ。だとすると、「フライト・シュミュレーター」でタッチセンサーをおしている部分が近づいたら「タッチセンサーがおされた」とするためには、大きなコントローラーにしないと感知できないよね。それでなくても、超音波センサーは大きいから、タッチセンサーを使ったものよりも大きくなってしまうと考えられる。
そして、超音波センサーの「目」。これは、実は左右で役目がちがうんだ。片方の目から超音波を出して、もう片方の目ではねかえってくる超音波を感知している。だから、「目」が2つあっても、それぞれで感知することはできないんだ。

このように、ほかのセンサーを使って同じような仕組みが作れないか、考えてみるのも面白いよ。

Q2. ☆問題☆

「ミッション3 飛行機を左右に動かそう」では、Mモーターを動かすときに「オン」を使っていたよね。
ここは「回転数」や「角度」、「秒数」ではだめなのかな? もっともふさわしいと思うものを一つ選んでね。

  • 「秒数」では動かないが、「回転数」と「角度」の設定なら動く
  • 「角度」を360°にすれば動く
  • 「回転数」「角度」「秒数」でも動くが、スムーズにコントロールできない
  • 「オン」を使った時しか動かない

正解

  • 「秒数」では動かないが、「回転数」と「角度」の設定なら動く
  • 「角度」を360°にすれば動く
  • 「回転数」「角度」「秒数」でも動くが、スムーズにコントロールできない
  • 「オン」を使った時しか動かない

解説

「回転数」「角度」「秒数」の設定でも動かすことはできるよ。ただ、飛行機のコントロールが難しくなってしまうんだ。
例えば、タッチセンサーをおしたら1回転動くプログラムを作ったとしよう。一度タッチセンサーをおすと、途中で止めたくてもモーターが1回転し終わるまで止まらないよね。
だから、タッチセンサーがおされている間だけ動き続けてほしい時には「オン」を使うよ。

Q3. ☆問題☆

障害物をよけることはできたかな。今回は障害物が回るはやさを変えると「難しさ」が変わったけど、ほかの方法で「難しさ」を変えることはできないだろうか。次の中から、もっともふさわしいと考えられるものを選んでね。

  • フライト・シミュレーターをおく場所を変える
  • 飛行機が左右に動かないようにする
  • 障害物の真ん中についている黒い部品を取る
  • 障害物の形を変える

正解

  • フライト・シミュレーターをおく場所を変える
  • 飛行機が左右に動かないようにする
  • 障害物の真ん中についている黒い部品を取る
  • 障害物の形を変える

解説

難しさのことを「難易度(なんいど)」ということもあるね。ゲームのレベルだと思えばいいよ。

さて、難易度を変えるにはどうすればいいだろうか。
フライト・シミュレーターをおく場所を変えても、難易度は変わらないよね。もちろん、ぐらぐらした場所におけばちがうかもしれないけど、
それは「難易度」というよりは、おちついてそうさできるかどうか、の問題になってしまう。

飛行機が左右に動かなければ、どのように動かしても障害物にぶつかってしまうよね。だから「難易度」以前の話だ。

最後に、障害物だ。真ん中の黒い部品をとっても動きは変わらないけど、障害物の形をうまくかえてあげれば、もっと難しくもなるし、やさしくもなるよね。だから、障害物を変えてあげることで難易度を変えることができる。

それをしているのが、「フライト・シミュレーター(2)」のさいごのミッションだよ。