【発展編】3-a ボールゲーム

Q1. ☆問題☆

「ミッション2 ボールを投げよう」で作ったプログラムでは、Lモーターブロックのオプションを「角度」にしたよね。ここは「回転数」のままではいけないのかな。このことに対する説明でもっともふさわしいものを、次の中から選んでね。

  • ○ 「回転数」ではいけない。どのように設定しても、ボールを投げられない。
  • ○ 「回転数」ではいけない。どのように設定しても、モーターをこわしてしまうおそれがある。
  • ○ 「回転数」でもよい。2回転させても3回転させても何の問題もない。
  • ○ 「回転数」でもよい。「角度」で60としたときと全く同じ動きをさせられる。
  • ○ 「回転数」でもよい。ただし、調整しづらいのと、どれくらい回るかわかりにくいので、できたら「角度」のほうがよい。

正解

  • 「回転数」ではいけない。どのように設定しても、ボールを投げられない。
  • 「回転数」ではいけない。どのように設定しても、モーターをこわしてしまうおそれがある。
  • 「回転数」でもよい。2回転させても3回転させても何の問題もない。
  • 「回転数」でもよい。「角度」で60としたときと全く同じ動きをさせられる。
  • 「回転数」でもよい。ただし、調整しづらいのと、どれくらい回るかわかりにくいので、できたら「角度」のほうがよい。

こう考えよう

ボールを投げるためには、もちろん「回転数」としてOKだ。1回転は360度だから、60度だけ回転させたければ、約0.17回転(1回転の1/6)でほぼ同じ動きをするよ。もし70度回転させたければ、0.19回転くらいさせればいいんだ。

でも、こんな小さな数字を調整するよりも、60や70のほうが調整しやすいよね。それに、「60度」は(分度器を使えば)どれくらい回転するのかがわかるけど、0.17回転がどれくらいなのかはわかりづらいという人も多いんじゃないのかな。だから、ワークブックでは「角度」でプログラムを作ったんだよ。

なお、60度と0.17回転はぴったり同じではないんだ。ほぼ同じなんだけど、どうしてもずれてしまう。また、1回転以上させようとすると、地面やストッパーでひっかかってしまう。動かないところを無理に動かそうとすると、モーターをこわしてしまうから、やらないでね!

Q2. ☆問題☆

待機(たいき)ブロックを使って、「インテリジェントブロックの真ん中のボタンがおされるまで待つ」ようにしたよね。「真ん中のボタン」ではなく、「右のボタン」にするためには、どこの数字を変えればいいのかな。次の中から選んでね。

  • ○ [2]と書いてあるところの数字
  • ○ 1と書いてあるところの数字
  • ○ そのような方法はない

正解

  • [2]と書いてあるところの数字
  • 1と書いてあるところの数字
  • そのような方法はない

こう考えよう

ぜひ、実際に試してみてね。[2]と書いてある部分を変えると、「上」「下」「右」「左」を選ぶことができるよ。

Q3. ☆問題☆

ロボットのシュートは毎回必ず同じ動きをしているはずだよね。でも、実際には、ボールが入ったり入らなかったりしなかったかな。その理由として、ふさわしいものを次から全て選んでね。

  • □ 正しいプログラムを作れば必ず入るから、プログラムが間違っていた。
  • □ ボールをのせる位置が少しずれたりしているから。
  • □ ロボットの位置やカップの位置が少しずれたりするから。
  • □ ロボットが自分で判断して投げているが、それが正しくないから。
  • □ 同じと思っている動きでも、必ず少しずれがあるから。

正解

  • 正しいプログラムを作れば必ず入るから、プログラムが間違っていた。
  • ボールをのせる位置が少しずれたりしているから。
  • ロボットの位置やカップの位置が少しずれたりするから。
  • ロボットが自分で判断して投げているが、それが正しくないから。
  • 同じと思っている動きでも、必ず少しずれがあるから。

こう考えよう

今回作ったロボットが自分で考えて勝手に動くことはないよね。こちらが「やれ」と言ったようにしか動かないはずだ。だから、「自分で判断して投げる」ことはない。それでは、毎回同じにならない理由はなんだろう……?

当たり前のことかもしれないけど、必ずどこかに「ズレ」があるはず。例えば

 ・ロボットアームがスタートする位置
 ・ロボットを置く位置
 ・カップの位置
 ・ボールを置く位置

などなど。これだけではなく、もしかしたらボールもまん丸ではなく、少しゆがんでいるかもしれないよね。そうすると、ボールを置いた位置が全く同じでも、飛び方はちがってしまうはず。

こうした「ちょっとしたずれ」が積み重なって、思ったものとちがう動きをしてしまうんだね。