#contents
*課題1:似顔絵ロボットの作成 [#u7ac9691]
ペアになった相手の似顔絵を書くプログラムを作る。
 
**メンバー紹介 [#t22ae3b2]

小次郎  ロボット担当 頼りになります!

コリン  ホムペ担当 ロボットには全く関与せず・・・せめてホムペくらいは作れるかと・・・

プログラムは二人で考えて、Sが書き込む感じ。仲良く協力してやってます!

**使用するロボットについて [#cf08e12a]
 ローラーを使ったロボット。
 
 ペンを持つ部分は、B出力のモータを利用。
 どこかにある機動兵器みたいです!ごついです。

 

*プログラムについて [#c066720d]
**その1 (小次郎の似顔絵)[#z954d1aa]

 void go(int t)   //  前に進む動作を go と設定
 {
 OnFwd(OUT_A+OUT_C);    //  AとC出力のモータを正回転させる
 Wait(t);          //  t秒間実行
 Off(OUT_A+OUT_C);     //  AとC出力のモータを止める
 }

 void back(int t)   //  後ろに下がる動作を back と設定
 {
 OnRev(OUT_A+OUT_C);    //  AとC出力のモータを負回転させる
 Wait(t);          //  t秒間実行
 Off(OUT_A+OUT_C);     //  AとC出力のモータを止める
 }

 void go_right(int t)   //  右に曲がる動作を go_right と設定
 {
 OnFwd(OUT_A);       //  A出力のモータを正回転させる
 Wait(t);          //  t秒間実行
 Off(OUT_A);        //  A出力のモータを止める
 } 

 void back_left(int t)   //  左に下がる動作を  back_left と設定
 {
 OnRev(OUT_C);       //  C出力のモータを負回転させる
 Wait(t);          //  t秒間実行
 Off(OUT_C);        //  C出力のモータを止める
 }

 void turn_left(int t)   //  反時計回りに回転する動作を turn_left と設定 
 {
 OnFwd(OUT_C);       //  C出力のモータを正回転させる
 OnRev(OUT_A);       //  A出力のモータを負回転させる
 Wait(t);          //  t秒間実行
 Off(OUT_A+OUT_C);     //  AとC出力のモータをとめる
 }

 void turn_right(int t)   //  時計回りに回転する動作を turn_right と設定 
 {
 OnFwd(OUT_A);       //  A出力のモータを正回転させる
 OnRev(OUT_C);       //  C出力のモータを負回転させる
 Wait(t);          //  t秒間実行
 Off(OUT_A+OUT_C);     //  AとC出力のモータをとめる
 }

 void pen_sage(int t)   //ペンを下げる動作を pen_sage と設定 
 {
 OnFwd(OUT_B);       //B出力のモータを正回転させる
 Wait(t);          //t秒間実行
 Off(OUT_B);        //B出力のモータをとめる
 } 

 void pen_age(int t)   //ペンを上げる動作を pen_age と設定 
 {
 OnRev(OUT_B);       //B出力のモータを負回転させる
 Wait(t);          //t秒間実行
 Off(OUT_B);        //B出力のモータをとめる
 }
 
 
↓上記で定義した関数を用いてロボットの動きを作る。
 task main()
 {
 pen_sage(150);   //ペンを下げる。
 go(140);      //まずは向かって右側の輪郭の線から書き始める。
 
 go_right(180);   //あごの部分を書く。すこし丸く。
 
 pen_age(200);   
 go_right(310);   
 back_left(170);   
 back(120);     //ペンを上げて向きを変える。
 
 pen_sage(150);   //ペンを下げる。
 go(210);      //まっすぐ進む。向かって左側の輪郭を書く。
 
 go_right(270);   
 
 pen_age(200);  
 go_right(250);   
 back_left(300);
 back(70);     
 
 pen_sage(150);
 go(50);       
 
 pen_age(200);
 go(150);
 back_left(380);
 back(50);    

 pen_sage(150);
 go(120);       //頭&髪を書く。
 
 pen_age(200);
 go(200);
 
 turn_left(160);
 go(100);
 
 turn_left(160);    //目をかくために方向を変えて移動。
 
 pen_sage(150);
 go(30);
 pen_age(200);
 go(25);
 pen_sage(150);
 go(30);         //目を書く。
 }

**その2(コリンの似顔絵) [#u74c7137]
**制作してみての感想 [#y9cee856]

 電池の消耗が早く、プログラムを作って実行するたびに結果が違うので、微調整ができず、とても苦労しました。

 二人で協力して作ったので、プログラムだけでなく信頼感も生まれた!!はず!!

 その2はその1をベースにして作る予定・・・。(まだ、その1が途中です。)

トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS