課題3

課題

光を認識してその場所にボールを放出するロボットの作成

工夫した点

ボールをつかむのにタイヤを付ける

ボールを安定して放出したりキャッチ出来るようにタイヤを取り付けた。その周りにボールを入れるスペースを作ることでボールをしっかりキープして放出する時のためにスペースを程よい大きさにしてぎりぎりタイヤにあたるようにした。

IMG_1104.JPG

モーターを安定させる

モーターの下にブロックを付けることでモーターが動いたときにモーターが移動しないようにした。

IMG_1103.JPG

プログラム

プログラムではタイマーを2つ使い1つは回転する時間を決めてそれまで時間を計測するので、2つ目は光源から時間を測り回転し終えたときにその値をintに代入してそこから逆回転するものである。

#define spin OnFwd(OUT_A);OnRev(OUT_C);//回転
#define reverse OnRev(OUT_A);OnFwd(OUT_C);逆回転
int runtime=500;//回転して光源を探す時間
task main(){
    spin;
    SetSensor(SENSOR_2,SENSOR_LIGHT);//センサーを付ける
    int slight = 0;
    ClearTimer(0);//タイマーをリセット
    ClearTimer(1);//タイマーをリセット
    OnRev(OUT_B);//球をキャッチ
    while(runtime>FastTimer(0)){
        if(slight<SENSOR_2){//光の強さを比較して大きかったら値を変える
        slight = SENSOR_2;
        ClearTimer(1);
        }//時間をリセットする
    }
    reverse;
    int spin_time=FastTimer(1);//光からの時間を代入する
    Wait(spin_time);//光源まで戻す
    Off(OUT_AC);
    OnFwd(OUT_B);
    }

感想

慣れてきたのか作るのがだんだん速くなってきて今回制作したロボットは割と早く終わった。次が最後なので頑張っていいものを作りたい。


添付ファイル: fileIMG_1104.JPG 103件 [詳細] fileIMG_1103.JPG 96件 [詳細] fileIMG_1102.JPG 40件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2015-07-31 (金) 23:28:31 (1486d)