-2006年度ロボコン総まとめ-

                              Text/program:A6 all member

◇目次◇  

ロボコン

 制作者:トシ/カツヤ/ヨコチン/J/イケス/ウメ/まさ/カトゥ

今年度のロボコンの概要

缶転がしロボットチームR

スタート地点から缶に向かい、缶を転がし、スタート地点に誘導するキッド

 制作者:マサ/ヨコチン/トシ/J

プログミング

#define go_straight OnFwd(OUT_A+OUT_C);              //直進を定義
#define turn_right OnFwd(OUT_A);OnRev(OUT_C);        //右折を定義
#define turn_left OnFwd(OUT_C);OnRev(OUT_A);         //左折を定義
#define go_back OnRev(OUT_A+OUT_C);                  //後退を定義
#define  of  Off(OUT_A+OUT_C);                       //停止を定義
#define THRESHOLD  45
#define  ku (SENSOR_1< 40)&&(SENSOR_3<40)            //光センサーの読み取りを定義
#define  sk1  (SENSOR_1< 45)                         //同上
#define  sk2  (SENSOR_3< 45)                         //同上

task main()
{
SetSensor(SENSOR_1, SENSOR_LIGHT);                   //センサー1を光センサーに設定
SetSensor(SENSOR_3, SENSOR_LIGHT);                   //センサー3を光センサーに設定
SetSensor(SENSOR_2, SENSOR_TOUCH);                   //センサー2をタッチセンサーに定義
SetPower(OUT_A,10);                                  //モーターの出力を設定
SetPower(OUT_B,10);                                  //同上
SetPower(OUT_C,10);                                  //同上
  
OnRev(OUT_B);                                        //アームを上げる
go_straight                                          //直進
Wait(200);                                           //2秒
until (ku);                                          //光センサーで読み取るまで下記の動作
go_straight                                          //直進
Wait(35);                                            //0.35秒
turn_right                                           //右折
Wait(117);                                           //1.17秒

go_straight                                          //直進
Wait(250);                                           //2.5秒

until (ku);                                          //光センサーが読み取るまで
go_straight                                          //直進
Wait(35);                                            //0.35秒
turn_right                                           //右折
Wait(125);                                           //1.25秒

go_straight                                          //直進
Wait(200);                                           //2秒
until  (SENSOR_2 == 1) ;                             //タッチセンサーがオンになったら
Off(OUT_A+OUT_C);                                    //停止
Wait(40);                                            //4秒
OnFwd(OUT_B);                                        //アームを下げる
Wait(25);                                            //0.25秒
Off(OUT_B);                                          //アームの上げ下げを停止

go_back                                              //後退
Wait(200);                                           //2秒
until (ku);                                          //光センサーが読み取るまで
go_back                                              //後退
Wait(35);                                            //0.35秒
turn_left                                            //左折
Wait(125);                                           //1.25秒

go_back                                              //後退
Wait(250);                                           //0.25秒
until (ku);                                          //光センサーが読み取るまで
go_back                                              //後退
Wait(35);                                            //0.35秒
turn_right                                           //右折
Wait(125);                                           //1.25秒
 
go_straight                                          //直進
Wait(100);                                           //1秒
OnRev(OUT_B);                                        //アームを上げて、缶を相方に転がす
Wait(80);                                            //0.8秒
Off(OUT_B);                                          //アームの上げ下げを停止
go_straight                                          //直進
Wait(180);                                           //1.8秒
Off(OUT_A+OUT_C);                                    //停止
Wait(200);                                           //2秒
Off(OUT_B);                                          //アームを停止
Wait(200);                                           //2秒
go_back                                              //後退
Wait(100);                                           //1秒

turn_right                                           //右折
Wait(250);                                           //2.5秒
Float(OUT_A+OUT_C);                                  //ゆっくり停止
}

変更後のプログラム

#define go_straight OnFwd(OUT_A+OUT_C);               //直進を定義
#define turn_right OnFwd(OUT_A);OnRev(OUT_C);         //右折を定義
#define turn_left OnFwd(OUT_C);OnRev(OUT_A);          //左折を定義
#define go_back OnRev(OUT_A+OUT_C);                   //後退を定義
#define  of  Off(OUT_A+OUT_C);                        //停止を定義
#define THRESHOLD  45                                 //45を定義
#define  ku (SENSOR_1< 40)&&(SENSOR_3<40)             //光センサーの読み取りを定義
#define  sk1  (SENSOR_1< 45)                          //同上
#define  sk2  (SENSOR_3< 45)                          //同上

task main()
{
   SetSensor(SENSOR_1, SENSOR_LIGHT);                 //センサー1を光センサーに定義
   SetSensor(SENSOR_3, SENSOR_LIGHT);                 //センサー3を光センサーに定義
   SetSensor(SENSOR_2, SENSOR_TOUCH);                 //センサー2をタッチセンサーに定義
   SetPower(OUT_A,10);                                //モーターの出力を設定
   SetPower(OUT_B,7);                                 //同上
   SetPower(OUT_C,10);                                //同上
  
OnFwd(OUT_B);                                         //アームをあげる
go_straight                                           //直進
Wait(200);                                            //2秒
until (ku);                                           //光センサーが読み取るまで
go_straight                                           //直進
Wait(35);                                             //0.35秒
turn_right                                            //右折
Wait(98);                                             //0.98秒
 
go_straight                                           //直進
Wait(250);                                            //2.5秒
 
until (ku);                                           //光センサーが読み取るまで
go_straight                                           //直進
Wait(35);                                             //0.35秒
turn_right                                            //右折
Wait(105);                                            //1.05秒
go_straight                                           //直進
Wait(120);                                            //1.2秒
until  (SENSOR_2 == 1) ;                              //タッチセンサ−がオンになるまで
Off(OUT_A+OUT_C);                                     //停止
Wait(40);                                             //0.4秒
OnRev(OUT_B);                                         //アームを下ろす
Wait(80);                                             //0.8秒
Off(OUT_B);                                           //アームの上げ下げを停止 
  
go_back                                               //公害
Wait(100);                                            //1秒
until (ku);                                           //光センサーが読み取るまで
go_back                                               //後退
Wait(10);                                             //0.1秒
turn_left                                             //左折
Wait(110);                                            //1.1秒

go_back                                               //後退
Wait(250);                                            //2.5秒
until (ku);                                           //光センサーが読み取るまで
go_straight                                           //直進
Wait(5);                                              //0.05秒
turn_right                                            //右折
Wait(104);                                            //1.04秒
 
go_straight                                           //直進
Wait(150);                                            //1.5秒
OnFwd(OUT_B);                                         //アームを上げる
Wait(80);                                             //0.8秒
Off(OUT_B);                                           //アームの上げ下げを停止
go_straight                                           //直進
Wait(80);                                             //0.8秒
Off(OUT_A+OUT_C);                                     //停止
Wait(200);                                            //2秒
Off(OUT_B);                                           //アームの上げ下げを停止
Wait(200);                                            //2秒
go_back                                               //後退
Wait(200);                                            //2秒

turn_right                                            //右折
Wait(180);                                            //1.8秒
Float(OUT_A+OUT_C);                                   //ゆっくりと停止
} 

完成したキッド

13.9KB,缶運びヤロウ←→67.8KB,缶運びヤロウ2

キッド作成に工夫した点

キッド作成に苦労した点

プログラムの解説

プログラムで工夫した点

プログラムで苦労した点

缶転がしロボットチームL

スタート地点に来た缶をゴールネットにぶちこむキッド

 制作者:カトゥ/イケス/カツヤ/ウメ

プログラミング

#define straight OnFwd(OUT_A+OUT_C);                  //前進を定義
#define right OnFwd(OUT_A) ;OnRev(OUT_C);             //右折を定義
#define left OnFwd(OUT_C);OnRev(OUT_A);               //左折を定義
#define back OnRev(OUT_A+OUT_C);                     //後退を定義
#define THRESHOLD     45                              //45を定義
#define ku (SENSOR_1<40)&&(SENSOR_3<40)               //光センサーの読み取りを定義

task main()
{
SetSensor(SENSOR_2, SENSOR_TOUCH);                    //センサー2をタッチセンサーに定義
SetSensor(SENSOR_1,SENSOR_LIGHT);                     //センサー1を光センサーに定義
SetSensor(SENSOR_3,SENSOR_LIGHT);                     //センサー3を光センサーに定義
SetPower(OUT_A,8);                                    //モーターの出力を設定
SetPower(OUT_B,8);                                    //同上
SetPower(OUT_C,8);                                    //同上

until  (SENSOR_2==1);                                 //タッチセンサーがオンになるまで
OnFwd(OUT_B);                                         //アームを上げる
Wait(25);                                             //0.25秒

back Wait(100);                                       //1秒
until(ku);                                            //光センサーが読み取るまで
right Wait(120);                                      //右折

straight Wait(100);                                   //直進
until (ku);                                           //光センサーが読み取るまで
left Wait(300);                                       //左折
straight Wait(70);                                    //直進
OnRev(OUT_B);Wait(60);                                //アームを上げる

straight Wait(150);                                   //直進

Off(OUT_A+OUT_C);                                     //停止
}

変更後のプログラム

task main()
{
SetSensor(SENSOR_1, SENSOR_TOUCH);                   //センサー1をタッチセンサーに設定
SetSensor(SENSOR_2,SENSOR_LIGHT);                    //センサー2を光センサーに設定
SetSensor(SENSOR_3,SENSOR_LIGHT);                    //センサー3を光センサーに設定
SetPower(OUT_A,5);                                   //モーターの出力を設定
SetPower(OUT_B,8);                                   //同上
SetPower(OUT_C,8);                                   //同上

until  (SENSOR_1==1);                                //タッチセンサーが反応するまで待つ
OnFwd(OUT_B);                                        //アームを下げる
Wait(25);Off(OUT_B);
back Wait(130);                                      //バックする

until(ku);                                           //光センサー2.3が反応するまで待つ
back Wait(30);                                       //バックする
right Wait(105);                                     //右に旋回

straight Wait(60);                                   //直進する
until (ku);                                          //光センサー2.3が反応するまで待つ
straight Wait(35);                                   //直進する
left Wait(100);                                      //左に旋回

straight Wait(10);                                   //少し直進
OnRev(OUT_B);Wait(60);                               //アームをあげる
straight Wait(80);                                   //直進する
Off(OUT_A+OUT_C);Wait(10);                           //モーターA.Cを止める

back Wait(30);                                       //少しバックする
Off(OUT_A+OUT_C);Wait(10);                           //モーターA.Cを止める

straight Wait(30);                                   //少し直進する
Off(OUT_A+OUT_C);Wait(10);                           //モーターA.Cを止める
back Wait(30);                                       //少しバックする
Off(OUT_A+OUT_C);Wait(10);                           //モーターA.Cを止める

Off(OUT_A+OUT_C+OUT_B);                              //モーターA.B.Cを止める
} 

完成したキッド

13.0KB,シュートヤロウ←→68.1KB,シュートヤロウ 

キッド作成に工夫した点

キッド作成に苦労した点

プログラムの解説

プログラムで工夫した点

プログラムで苦労した点

ロボコン&ロボティクスを終えて

結果

全体的に苦労した点&反省点&etc

感想

みんな!!本当におつかれ!!!(*^^*)

次回ロボティクス受講者へのアドバイス

コメント♪


ロボコンを終えての感想、この班のロボットについての感想などをいただければ幸いです。


添付ファイル: file06-08-02_10-502.jpg 315件 [詳細] file06-08-02_10-501.jpg 313件 [詳細] file06-08-02_10-51.jpg 284件 [詳細] file06-08-02_10-50.jpg 317件 [詳細]

トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2006-08-15 (火) 23:29:51