小学生はインターネットで何をしているのだろうか?親の理想としては夏休みの自由研究などの調べものである。しかし,現実に一番多いのはゲームだろう。次から次へと新しいゲームが無料で楽しめるのだから無理もない。友達とのメール交換も多いようだ。何を連絡する必要があるんだろうと思うが,帰宅後に連絡したいこともあるのかもしれない。

 それから,こうしろうの友達の間で流行っているのがチャットである。かなり盛り上がっているらしいが,中味はあまりないようだ。大人でも暇つぶしにチャットをする人が多いと思うが,欠点は時間を忘れて,はまってしまうことだ。いろいろな人が参加するチャットには危険が付きまとうし,逆にクローズドなチャットでは得るものは少ないだろう。そんな私の気持ちを知ってか,こうしろうは私の見ているところではチャットはしない(見ていないところでは…)。

 かずはゲーム一辺倒である。こうしろうは以前にも書いたように,インターネットでせっせと懸賞応募をしている。だが切手代が不要な分だけ,なかなか当選しにくいようだ。これまで彼が懸賞応募でゲットしたものは,トヨタの車の絵が書いてあるマウスパット,これは物が良いので結構重宝している。それと東日本放送のテレカ,平山郁夫画伯の絵が金箔になっている要保存の一品である。この2点を得るためにたくさんのサイトで懸賞応募したことは,彼あてに送られてくる商品販売サイトからのメールマガジンの量で容易に推測できる。

 人と繋がる道具として,また自分の意見を発表する場としてインターネットを使って欲しいと思うのだが…。

さてさて, MindStorms日記。

3月10日 前回作成したペットロボットのプログラムをテストする。



前方に障害物があると接近センサーで回避する仕様なのだが,ロボットは何の迷いもなくチェストに猪突猛進して,大破する。「ライトセンサーの角度がわるいのかな」と言うこうしろうに「そうかもしれんね」と答えつつプログラムをチェックする。(*接近センサーは,赤外線ポートから出力した光をライトセンサーで読み取ることで実現するので,角度が合っていないと読み取れないことがある)

 「こうしろう,プログラムやわ。センサーの設定忘れとるぞ。」センサーのタイプを設定するSetSensorType(SENSOR_2,SENSOR_TYPE_LIGHT)とセンサーのモードを設定するSetSensorMode(SENSOR_2,SENSOR_MODE_RAW)が抜けていたのでMainタスクに追加した(*SENSOR_MODE_RAWはセンサーが生の値を返すモードである)。ペットロボットはチェストの手前で方向転換するようになった。接近センサーの醍醐味は「わあー,ダメだ。やっぱり,ぶつかる」という瞬間にクルッと方向を変えるところにある。

 もう一つの仕様ミス。頭に軽く触れるとタッチセンサーが押され,しっぽを振るようにプログラムしているのだが,ロボットがずっと走り回っているので頭に触ることができない。「タイマー使って走ったり止まったりするようにしようぜ。」とtimer_waitタスクを追加した。

task timer_wait()
{
 ClearTimer(0);
 while (true) {
   if (Timer(0) == 50) {   // 1/10 sec.
    Off(OUT_A+OUT_C);
    Wait(500);       // 1/100 sec.
    ClearTimer(0);
    OnFwd(OUT_A+OUT_C);
   }
 }
}

 タイマーの値が50になったら(5秒経過),モーターA,Cを止め5秒(500)待機した後,再度モーターを回す。これでペットロボットは走ったり休んだりするようになった。こうしろうと私で「ああでもない,こうでもない」とプログラムをいじったのだが,どうも私はif文でタイマーの値を聞くところが気に食わない。ひょっとして,こうしろうも同じ気持ちでいるならば,次回もう一度プログラムを改良することになる。