2005/MemberOnly/進行状況B

"左"を書くロボ!!?

まず、ペンをどのようにして持たせたら良いか。そこまでの過程がかなり長かった。グループのメンバーや、ロボを取っている友達の意見を参考にして、タイヤでペンをはさむように、うまく組み立てた。途中、プログラムの送り方が全く分からなくなったり、どこでエラーが発生しているのかが分からなくなったりして大変だったが、消して、書いて、動かして、の作業を細かく繰り返し、目標の左が書けるようになった。以下は、そのプログラムである。

"左"のプログラム ? 作成者:B3L

task main()

{

 OnFwd(OUT_C);              //筆は、下ろした状態からスタート
 OnRev(OUT_A);
 Wait(230);
 Off(OUT_A+OUT_C)           //1画目スタート
 
 OnRev(OUT_B);
 Wait(50);
 Off(OUT_B);                //筆上げる
 
 OnFwd(OUT_C);
 OnFwd(OUT_A);        
 Wait(300);                 
 Off(OUT_A+OUT_C);          //左回転330°
 
 OnFwd(OUT_C);
 OnRev(OUT_A);
 Wait(200);                 
 Off(OUT_A+OUT_C);          //2画目の始めまで
 
 OnFwd(OUT_C);
 OnFwd(OUT_A);
 Wait(125);                 
 Off(OUT_A+OUT_C);          //左回転180°
 
 OnFwd(OUT_B);
 Wait(50);                  
 Off(OUT_B);                //筆下ろす
 
 OnFwd(OUT_C);
 OnRev(OUT_A);
 Wait(280);
 Off(OUT_A+OUT_C);          //2画目スタート
 
 OnRev(OUT_B);
 Wait(50);
 Off(OUT_B);                //筆上げる
 
 OnFwd(OUT_A);
 OnRev(OUT_C);
 Wait(200);                 
 Off(OUT_A+OUT_C);          //3画目の始めまでバック
 
 OnFwd(OUT_A);
 OnFwd(OUT_C);
 Wait(185);                 
 Off(OUT_A+OUT_C);          //左回転120°  
 
 OnFwd(OUT_C);
 OnRev(OUT_A);
 Wait(80);
 Off(OUT_A+OUT_C);          //3画目の始めを2画目に近づけるため
 
 OnFwd(OUT_B);
 Wait(50);
 Off(OUT_B);                //筆下ろす
 
 OnFwd(OUT_C);
 OnRev(OUT_A);
 Wait(150);
 Off(OUT_A+OUT_C);          //3画目スタート
 
 OnRev(OUT_B);
 Wait(50);
 Off(OUT_B);                //筆上げる
 
 OnFwd(OUT_A);
 OnRev(OUT_C);
 Wait(150);           
 Off(OUT_A+OUT_C);          //4画目の始めまでバック
 
 OnRev(OUT_A);
 OnRev(OUT_C);
 Wait(150);
 Off(OUT_A+OUT_C);          //右回転90°
 
 OnFwd(OUT_C);
 OnRev(OUT_A);
 Wait(50);                  
 Off(OUT_A+OUT_C);          //4画目の始めを3画目に合わせる
 
 OnFwd(OUT_B);
 Wait(50);
 Off(OUT_B);                //筆下ろす
 
 OnFwd(OUT_C);
 OnRev(OUT_A);
 Wait(100);                 
 Off(OUT_A+OUT_C);          //4画目スタート
 
 OnRev(OUT_B);
 Wait(50);
 Off(OUT_B);                //筆上げる
 
 OnFwd(OUT_A);
 OnRev(OUT_C);
 Wait(50);
 Off(OUT_A+OUT_C);          //うまいこといくようバック(笑)
 
 OnFwd(OUT_C);
 OnFwd(OUT_A);
 Wait(150);
 Off(OUT_A+OUT_C);          //左回転90°回転
 
 OnFwd(OUT_B);
 Wait(50);
 Off(OUT_B);                 //筆下ろす
 
 OnFwd(OUT_C);
 OnRev(OUT_A);
 Wait(200);
 Off(OUT_A+OUT_C);           //5画目スタート

}

  • ページの体裁はきちんと整えて下さい。プログラムも関数やマクロを使ってもう少し整理してみよう。 -- まいける(TA) 2005-12-02 (金) 17:03:45


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2005-12-02 (金) 17:03:45