目次

課題3 懐中電灯に向かってブロックを投げるロボット

   1. 全方向から懐中電灯の方向を探しだし、懐中電灯を狙ってブロックを投げる。方向を定めたのち、
      懐中電灯の30cm以内に近づかない範囲で必要な距離を移動してもよい。懐中電灯は動かさないが、
      いろいろな距離や方向にある懐中電灯に対応できるロボットにすること

ロボット

ロボットの制作過程

ディファレンシャルギア.JPG

今回は、モーターを二つしか使えないってことで、上の写真のような ディファレンシャルギアとゆうものを使います。

まずギアの部分は、下の写真のように組み立てます。

手順1.JPG
手順2.JPG

あとは、車体を創って、タイヤをつけます。

手順3.JPG
手順4.JPG
手順5.JPG

ここで、 右側のギアのつけ方と左側のつけ方が異なるのと、 右、左のストッパーのつけ方に、注目すると、

1)右側のギア

ギアのつけ方(右).JPG

2)左側のギア

ギアのつけ方(左).JPG

3)右側のストッパー

ストッパー(右).JPG

4)左側のストッパー

ストッパー(左).JPG

また、 後ろの車輪を見ると、

後ろの車輪.JPG

これは、レゴの、マニュアルに書いてあったものを若干アレンジしたものです。

さらに!、 ホイールを投げる肝心なパーツを紹介します。 ロケットパンチってゆうものから閃いて創りました。

ミサイル装置.jpg

モーターにつながるでかいギアが時計回りすると、

ミサイル装置2.jpg

ホイールを固定していた棒が、抜けてロケットパンチ発射!です。

完成したロボット

全体像.JPG
全体像2.JPG
後ろ姿.JPG

今回もロボットのヴィジュアル面に気合を入れて創ってみました。

ロボット作成において工夫した点

やっぱり、モーターを縦につなげて創ったのと、 ホイールを投げる仕組みが工夫した点です。

モーターを縦につなごうとしたのは、「ただ、みんなと違うふうにしたいなぁ」って 思ったからですが、

ロケットパンチは、 なんか、投石器みたいな仕組みで飛ばしたとき、どうも飛んでくれなくて、困ってまして、「輪ゴムで飛ばせたらいいなぁ」と思ったことから創ってみました。

プログラムの説明

恵のプログラム

#define THRESHOLD 50                                     //閾値
#define MAX 65
#define GO OnRev(OUT_A); Wait(10); Float(OUT_A); Wait(10); OnFwd(OUT_A); Wait(10); Float(OUT_A); Wait(10); Off(OUT_A); 

task main()
{ 
  SetSensor(SENSOR_1,SENSOR_LIGHT);                             //センサー1は光センサー
  SetSensor(SENSOR_3,SENSOR_LIGHT);                              //センサー3は光センサー
  Int move_count = 0;                                         //変数に0を代入 
  
while(move_count == 0){                                     //変数が0の間
 if((SENSOR_1<THRESHOLD) || (SENSOR_3<THRESHOLD))                        //値が49以下のとき
 {OnRev(OUT_C);}                                         //その場で回転する

if( (SENSOR_1>=THRESHOLD)&&(SENSOR_1<MAX) )||( (SENSOR_3>=THRESHOLD)&&   (SENSOR_3<MAX) )
  {
  {                         
while(((SENSOR_1>=THRESHOLD)&&(SENSOR_1<MAX))||((SENSOR_3>=THRESHOLD)&&(SENSOR_3<MAX)))
   { GO;                                   //値が50以上、65未満の時ジグザグに前へ進む
               until(((SENSOR_1>= 53)||(SENSOR_3>= 53)); 
               until((SENSOR_1>=MAX)||(SENSOR_3>=MAX)));
   }}
 
 if ((SENSOR_1>MAX) || (SENSOR_3>MAX))                             //値が65以上の時
  {Off(OUT_C);Wait(30);OnFwd(OUT_A);        //センサー1とセンサー3が65以上になるまで車体前方を持ち上げる
   until((SENSOR_1>MAX)&&(SENSOR_3>MAX));
   Off(OUT_A);Wait(50);OnRev(OUT_B);Wait(50);Off(OUT_B);Float(OUT_A);          //トリガーが引かれタマが飛ぶ
   (move_count);move_count = move_count +1;                         //変数が1になって停止する
   }
}
}

感想、反省点

なんかグループの人が、急に来なくなって自分ひとりで

ホムペから、レゴ創りまで、全てやることになったので、

思ったより大変だった。

でも意外と上出来(自分なりに)だったと思う。

コメント

コメントよろしくお願いしますm(_ _)m



添付ファイル: file全体像2.JPG 469件 [詳細] file全体像.JPG 521件 [詳細] fileストッパー(左).JPG 458件 [詳細] fileストッパー(右).JPG 459件 [詳細] fileギアのつけ方(左).JPG 429件 [詳細] fileギアのつけ方(右).JPG 510件 [詳細] file手順5.JPG 521件 [詳細] file手順4.JPG 506件 [詳細] file手順3.JPG 77件 [詳細] file手順2.JPG 541件 [詳細] file手順1.JPG 548件 [詳細] fileミサイル装置2.jpg 538件 [詳細] fileミサイル装置.jpg 474件 [詳細] fileディファレンシャルギア.JPG 668件 [詳細] file後ろの車輪.JPG 433件 [詳細] file後ろ姿.JPG 479件 [詳細]

トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2009-09-01 (火) 18:06:52