†hirosソースコードの各行の頭にスペースくっつけるプログラム貼っておきます。誰か使いたい方添付ファイルからどうぞ。†テニスボールにマシンが当たったとき、ボールが転がってしまい、センサが反応しにくかった。力がかかっただけで反応するよう、てこの原理を使って敏感なセンサを実現した。黄色の棒にものが当たったとき、テコの原理で黒の棒の先端にあるセンサが強く押される様になっている。これにより、ボールが転がる前に機体を止めることができるようになった。明るさの最大値を求める際に余計な光が入ってこないようにカバーをつけた。写真ではカバーの一部を外している。†ボールを投げる/ボールを運ぶという二つのタスクがあったので、どちらも実現できるようにこの形のアームにした。ボールを掴んだまま光が最大になる方向を探索した後、ボールを投げるときはボールを離してバックしつつくことで転がし、ボールを運ぶ時にはそのままつかんだ状態でひこずっていくことにした。光の最大値を探す際にボールを離してしまわないように両脇に黒の部品をつけたことでストッパーの役割を果たしてもらった。このアームは上下する必要があったので、モータをつけなければならなかったが、付ける場所を機体の後ろに付けることで前をすっきりさせ、いろいろな拡張を容易にした。機体の背面と機体の内部。単純な構造なので改造が簡単だった。目的:ボールを見つけて、そのあとそのボールを光の方へ一定距離まで運んでいく。進み、ボールが当たったら止まり、アームを下ろす。これでボールが取れるので、その状態で一周回り、その間に光の最大値を求め、変数に格納しておく。その後、もう一度回り、その値以上を取る位置で停止、光が一定以上強くなるまで直進する。これで光の方に進み、一定の距離で停止できる。機能をまとめたので急な機体の変化にも耐えられた。main関数内がすっきりと見通せ、おかげでプログラミングにはそこまで時間を取られることがなかった。最大値を求めるとき、最初は光の強さを、係数がマイナスの2次関数のようなイメージをもっていたので、光センサが返す数値が下がった瞬間にそれを最大値としていた。現実には様々な光があるため、正確に最大値の方向に進むのは難しく、結局時間がかかっても現在のもののように正確に判定できる方が良いと考えた。今回は非常に大変だった。一人ひとりの予定の管理、把握の大切さや、責任というものがつきまとう、グループワークの難しさを実感した。今回は相方に任せっきりで申し訳なかった。課題はプログラミングはまだできたが、ロボットに相当時間をもっていかれ、辛かった。なんとか形にはできた。†コメントをお願いします。今日の授業中に借りたテニスボール、借りたままになってしまいました。18:19:37なぜか画像の倍率を変えると表示が不可能になるので見づらくなりました。