2007a/A6/ロボコン
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
[[2007a/MemberOnly/進行状況A]]
#counter
#hr
CENTER:&size(25){[[ロボコン>2007a/ロボコン]]:目指せロボットコンテスト!! };
#hr
//CENTER:&size(25){[[''ロボコン:'' >2007a/ロボコン]]
CENTER:頑張った人たち→&color(green,){ギョーザ};、アンゼリカ、たけぽん、あつみ
-目次
#contents
-------
* 課題:紙パック収集・積み上げロボット [#fafb8345]
紙パックを収集して所定の位置にできるだけ高く積み上げる
&ref(2007a/ロボコン/robocon-2007a-field.gif,100%,ロボコンのフィールド平面図);
:フィールドの説明 |
--フィールドは約160cm×110cm
--運搬する500mlの紙パック(以下単に紙パックと呼ぶ)は約7cm×7cm×10.3cm
--紙パックはすべての面に白あるいは緑色の画用紙がはられている
--紙パックは(目的地の円周上を除く)各交差点に立てて配置されている
--目的地の円を囲む正方形の4隅には緑の紙パックが配置されている
--1つの格子はの境界の黒線の芯々で20cm平方の正方形である
--黒い線の太さは約25mm*ルール説明 [#icd0cc3f]
詳しい説明はこちらをどうぞ→
&size(25){[[ロボコンルール>2007a/ロボコン]]:};
//&size(25){[[''ロボコンルール'' >2007a/ロボコン]]
*このルールから高得点を狙うためには [#r4fadc37]
--まず時間が少ないことが問題であり、たくさん真ん中に持ってきて、ピラミットのように積み上げるということも考えたが、それではとても時間が足りないということである。そのため高得点を狙うためには、&color(blue,){いかにたくさんパックを集める};か、&color(red,){いかにパックをたくさん積む};か、という2つの戦法に限られてくる。
--パックをたくさん集めることの長所は、簡単かつ安全で失敗することが少ないということである。短所はさほど高得点が狙えないうえにロボットの芸術性が見せつけにくいところである。
--パックをたくさん積むことの長所は、とにかく高得点が狙え、ロボットの芸術性が見られやすく、他の班からの評価も良くなりやすいことである。短所はとにかく失敗しやすく、危険で、もし失敗すると点数が0になりかねないことである。
--まとめると、&color(blue,){ローリスクローリターンの集めることを重視する};か、&color(red,){ハイリスクハイリターンの積むことを重視する};か、という2択であり、以下の説明を見てもらうとわかると思うが、うちの班ではどちらかというと集めることを重視していることがわかると思う。
*ロボット紹介 [#e1d23fcc]
***|&size(30){''メインロボット''};→牛乳パックを上げる [#g795fae0]
|>|CENTER:BGCOLOR(orange):&ref(sd 024.JPG);&ref(sd 029.JPG);|
**プログラム [#c154473e]
#define Do 523
#define Re 587
#define Mi 659
#define Fa 698
#define Sol 784
#define Ra 440
#define Shi 494
#define DO 1047
task play_music() // doreminouta 音楽をつける
{
while (true)
{
PlayTone(Do,25); Wait(30);
PlayTone(Re, 5); Wait(10);
PlayTone(Mi,25); Wait(30);
PlayTone(Do, 5); Wait(10);
PlayTone(Mi,10); Wait(15);
PlayTone(Do,10); Wait(15);
PlayTone(Mi,20); Wait(25);
PlayTone(Re,25); Wait(30);
PlayTone(Mi, 5); Wait(10);
PlayTone(Fa, 5); Wait(10);
PlayTone(Fa, 5); Wait(10);
PlayTone(Mi, 5); Wait(10);
PlayTone(Re, 5); Wait(10);
PlayTone(Fa,40); Wait(45);
PlayTone(Mi,25); Wait(30);
PlayTone(Fa, 5); Wait(10);
PlayTone(Sol,25); Wait(30);
PlayTone(Mi, 5); Wait(10);
PlayTone(Sol,10); Wait(15);
PlayTone(Mi,10); Wait(15);
PlayTone(Sol,20); Wait(25);
PlayTone(Fa,25); Wait(30);
PlayTone(Sol, 5); Wait(10);
PlayTone(Ra, 5); Wait(10);
PlayTone(Ra, 5); Wait(10);
PlayTone(Sol, 5); Wait(10);
PlayTone(Fa, 5); Wait(10);
PlayTone(Ra,40); Wait(45);
PlayTone(Sol,25); Wait(30);
PlayTone(Do, 5); Wait(10);
PlayTone(Re, 5); Wait(10);
PlayTone(Mi, 5); Wait(10);
PlayTone(Fa, 5); Wait(10);
PlayTone(Sol, 5); Wait(10);
PlayTone(Ra,40); Wait(45);
PlayTone(Ra,25); Wait(30);
PlayTone(Re, 5); Wait(10);
PlayTone(Mi, 5); Wait(10);
PlayTone(Fa, 5); Wait(10);
PlayTone(Sol, 5); Wait(10);
PlayTone(Ra, 5); Wait(10);
PlayTone(Shi,40); Wait(45);
PlayTone(Shi,25); Wait(30);
PlayTone(Mi, 5); Wait(10);
PlayTone(Fa, 5); Wait(10);
PlayTone(Sol, 5); Wait(10);
PlayTone(Ra, 5); Wait(10);
PlayTone(Shi, 5); Wait(10);
PlayTone(DO,40); Wait(45);
PlayTone(DO, 5); Wait(10);
PlayTone(Shi, 5); Wait(10);
PlayTone(Ra,10); Wait(15);
PlayTone(Fa,10); Wait(15);
PlayTone(Shi,10); Wait(15);
PlayTone(Sol,10); Wait(15);
PlayTone(DO,40); Wait(45);
}}
#define go OnRev(OUT_A); //前に進む
#define back OnFwd(OUT_A);//後ろに下がる
#define hand OnFwd(OUT_B);//アームを開く
#define up OnFwd(OUT_C);//アームを持ち上げる
task main ()
{
SetSensor(SENSOR_1, SENSOR_LIGHT);
SetSensor(SENSOR_3, SENSOR_LIGHT);
start play_music ; //音楽を始める
while(true){
if(SENSOR_1<=42&&SENSOR_3<=40){
go ;
}
if(SENSOR_1>=42&&SENSOR_3>=40){
stop play_music; //音楽を止める
Off(OUT_A); //モータを止める
hand ; Wait(300); //3秒間開く
up ; Wait(500); // 5秒間持ち上げる
go ; Wait(50); Off(OUT_A); //前に進む
OnRev(OUT_B); Wait(300); Off(OUT_B); //置く
back ; Wait(300); Off(OUT_A); //後ろに下がる
}}}
**このロボットの特徴 [#oe6b6002]
|>|CENTER:BGCOLOR(blue):&ref(sd 025.JPG);||&size(30){光センサーの位置が重要!}; &br;2つが適当な位置にあるため、例外なく物体を認識することが出来る&br;|
|>|CENTER:BGCOLOR(yellow):&ref(sd 047.JPG);||&size(30){4つのギアを用いることにより、アームを上に上げることができる};|
|>|CENTER:BGCOLOR(red):&ref(sd 048.JPG);||&size(30){アームの動作の中心となるギア}; &br;小さいギアと大きいギアの2種類を用いることによって、柔らかい動きを作ることができた&br;|
&size(30){大変だった所};
-キット本体の黄色の部分の重さとアームとの部品との重さのバランスをとるのが難しかった。
-アームを上に上げるための機構を作るのが大変だった &br;→4つのキアを使うことによって、アームを上に上げるときの安定感をもたらした&br;&br;→アームの先にタイヤをつけることにより、摩擦力を上げて、パックがすべらないようにした。
**このロボの働き [#t888c88d]
&ref(sd 033.JPG);&ref(sd 034.JPG);&ref(sd 036.JPG);
-2つのパックを積み上げるときの動き
--アームを開いて、前にあるパックをつかむ
--アームを閉じて、あらかじめ置いてあるパックの上まで持ち上げて、のせる。
--アームを開いて、後ろに下がる。
***&size(30){''サブロボット''};→牛乳パックを集める [#j35c4407]
|>|CENTER:BGCOLOR(pink):&ref(sd 038.JPG);&ref(sd 039.JPG);|
-サブロボの単純で明確な動きはパックをとにかくあつめて押す!ってことである。
--そのために、いらない部品やプログラムはすべてカット、シンプルな構造にしました。
--試合の時、あらかじめ、サブロボをパックが沢山おいてある所に置いて、スタートするのがポイント。
**プログラム [#j21446ad]
#define Do 1047 //音楽スタート
#define Re 1175
#define Mi 1319
#define Fa 1397
#define So 1568
#define Ra 1760
#define Shi 1976
#define Doo 2093
task play_music()
{
while (true)
{
PlayTone(Do,20); Wait(30);
PlayTone(Re,20); Wait(30);
PlayTone(Mi,20); Wait(30);
PlayTone(Fa,20); Wait(30);
PlayTone(So,20); Wait(30);
PlayTone(Ra,20); Wait(30);
PlayTone(Shi,20); Wait(60);
PlayTone(Doo,20); Wait(120);
}}
void left(int t) //左に動く
{
OnRev(OUT_A); OnFwd(OUT_C); Wait(t);
Off(OUT_A+OUT_C);
}
void right(int t) //右に動く
{
OnFwd(OUT_A); OnRev(OUT_C); Wait(t);
Off(OUT_A+OUT_C);
}
void go(int t) //前に進む
{
OnFwd(OUT_A+OUT_C); Wait(t);
Off(OUT_A+OUT_C);
}
void back(int t) //後ろに下がる
{
OnRev(OUT_A+OUT_C); Wait(t);
Off(OUT_A+OUT_C);
}
task main()
{
start play_music ; //音楽を流す時間の設定
go(350);
back(250);
left(60);
go(250);
right(80);
go(350);
right(135);
go(150);
back(300);
stop play_music;
}
**このロボットの働き [#baed10bd]
&ref(sd 042.JPG);&ref(sd 043.JPG);
*&size(30){結果発表!!!}; [#l466ecdf]
-ロボコンの単純な点数では、大接戦のロボコンの中、一位がA8の54点、二位がA9で26点、そして我がA6は15点で三位でした。
*反省&感想 [#pe27c1f0]
-ロボコンにあたって、1人の人(ギョーザさん)にほとんど任せてしまって申し訳なかった。
-ロボコンまでの準備時間の不足と試験後の疲れでまともに集中できなかった。
-やっている期間は、辛いこととか大変なことがたくさんあったけど終わってみると、楽しい授業でした。普段、教えてもらえないことを数多く学べたし、なにより協調性が豊かになったと思えます。これからも、今日まで学んだことを忘れずに学業に励んでいきたいと思います。
-普段教科書で勉強できない日本語をいっぱい聞く機会になり、留学生としては特別な時間だったと思います。ここで学んだ日本人との付き合いを大切にしこれからも日本での生活を楽しみたいと思います。
*先生、TAの方々のコメント [#r06f54b0]
-ルールに関して1個づつ取り上げて吟味していくのでなければ、ロボコンの課題やルールについての説明は[[2007a/ロボコン]]にリンクを張れば十分でしょう。転載は必要ありません。 -- [[松本]] &new{2007-08-06 (月) 08:33:50};
#comment
終了行:
[[2007a/MemberOnly/進行状況A]]
#counter
#hr
CENTER:&size(25){[[ロボコン>2007a/ロボコン]]:目指せロボットコンテスト!! };
#hr
//CENTER:&size(25){[[''ロボコン:'' >2007a/ロボコン]]
CENTER:頑張った人たち→&color(green,){ギョーザ};、アンゼリカ、たけぽん、あつみ
-目次
#contents
-------
* 課題:紙パック収集・積み上げロボット [#fafb8345]
紙パックを収集して所定の位置にできるだけ高く積み上げる
&ref(2007a/ロボコン/robocon-2007a-field.gif,100%,ロボコンのフィールド平面図);
:フィールドの説明 |
--フィールドは約160cm×110cm
--運搬する500mlの紙パック(以下単に紙パックと呼ぶ)は約7cm×7cm×10.3cm
--紙パックはすべての面に白あるいは緑色の画用紙がはられている
--紙パックは(目的地の円周上を除く)各交差点に立てて配置されている
--目的地の円を囲む正方形の4隅には緑の紙パックが配置されている
--1つの格子はの境界の黒線の芯々で20cm平方の正方形である
--黒い線の太さは約25mm*ルール説明 [#icd0cc3f]
詳しい説明はこちらをどうぞ→
&size(25){[[ロボコンルール>2007a/ロボコン]]:};
//&size(25){[[''ロボコンルール'' >2007a/ロボコン]]
*このルールから高得点を狙うためには [#r4fadc37]
--まず時間が少ないことが問題であり、たくさん真ん中に持ってきて、ピラミットのように積み上げるということも考えたが、それではとても時間が足りないということである。そのため高得点を狙うためには、&color(blue,){いかにたくさんパックを集める};か、&color(red,){いかにパックをたくさん積む};か、という2つの戦法に限られてくる。
--パックをたくさん集めることの長所は、簡単かつ安全で失敗することが少ないということである。短所はさほど高得点が狙えないうえにロボットの芸術性が見せつけにくいところである。
--パックをたくさん積むことの長所は、とにかく高得点が狙え、ロボットの芸術性が見られやすく、他の班からの評価も良くなりやすいことである。短所はとにかく失敗しやすく、危険で、もし失敗すると点数が0になりかねないことである。
--まとめると、&color(blue,){ローリスクローリターンの集めることを重視する};か、&color(red,){ハイリスクハイリターンの積むことを重視する};か、という2択であり、以下の説明を見てもらうとわかると思うが、うちの班ではどちらかというと集めることを重視していることがわかると思う。
*ロボット紹介 [#e1d23fcc]
***|&size(30){''メインロボット''};→牛乳パックを上げる [#g795fae0]
|>|CENTER:BGCOLOR(orange):&ref(sd 024.JPG);&ref(sd 029.JPG);|
**プログラム [#c154473e]
#define Do 523
#define Re 587
#define Mi 659
#define Fa 698
#define Sol 784
#define Ra 440
#define Shi 494
#define DO 1047
task play_music() // doreminouta 音楽をつける
{
while (true)
{
PlayTone(Do,25); Wait(30);
PlayTone(Re, 5); Wait(10);
PlayTone(Mi,25); Wait(30);
PlayTone(Do, 5); Wait(10);
PlayTone(Mi,10); Wait(15);
PlayTone(Do,10); Wait(15);
PlayTone(Mi,20); Wait(25);
PlayTone(Re,25); Wait(30);
PlayTone(Mi, 5); Wait(10);
PlayTone(Fa, 5); Wait(10);
PlayTone(Fa, 5); Wait(10);
PlayTone(Mi, 5); Wait(10);
PlayTone(Re, 5); Wait(10);
PlayTone(Fa,40); Wait(45);
PlayTone(Mi,25); Wait(30);
PlayTone(Fa, 5); Wait(10);
PlayTone(Sol,25); Wait(30);
PlayTone(Mi, 5); Wait(10);
PlayTone(Sol,10); Wait(15);
PlayTone(Mi,10); Wait(15);
PlayTone(Sol,20); Wait(25);
PlayTone(Fa,25); Wait(30);
PlayTone(Sol, 5); Wait(10);
PlayTone(Ra, 5); Wait(10);
PlayTone(Ra, 5); Wait(10);
PlayTone(Sol, 5); Wait(10);
PlayTone(Fa, 5); Wait(10);
PlayTone(Ra,40); Wait(45);
PlayTone(Sol,25); Wait(30);
PlayTone(Do, 5); Wait(10);
PlayTone(Re, 5); Wait(10);
PlayTone(Mi, 5); Wait(10);
PlayTone(Fa, 5); Wait(10);
PlayTone(Sol, 5); Wait(10);
PlayTone(Ra,40); Wait(45);
PlayTone(Ra,25); Wait(30);
PlayTone(Re, 5); Wait(10);
PlayTone(Mi, 5); Wait(10);
PlayTone(Fa, 5); Wait(10);
PlayTone(Sol, 5); Wait(10);
PlayTone(Ra, 5); Wait(10);
PlayTone(Shi,40); Wait(45);
PlayTone(Shi,25); Wait(30);
PlayTone(Mi, 5); Wait(10);
PlayTone(Fa, 5); Wait(10);
PlayTone(Sol, 5); Wait(10);
PlayTone(Ra, 5); Wait(10);
PlayTone(Shi, 5); Wait(10);
PlayTone(DO,40); Wait(45);
PlayTone(DO, 5); Wait(10);
PlayTone(Shi, 5); Wait(10);
PlayTone(Ra,10); Wait(15);
PlayTone(Fa,10); Wait(15);
PlayTone(Shi,10); Wait(15);
PlayTone(Sol,10); Wait(15);
PlayTone(DO,40); Wait(45);
}}
#define go OnRev(OUT_A); //前に進む
#define back OnFwd(OUT_A);//後ろに下がる
#define hand OnFwd(OUT_B);//アームを開く
#define up OnFwd(OUT_C);//アームを持ち上げる
task main ()
{
SetSensor(SENSOR_1, SENSOR_LIGHT);
SetSensor(SENSOR_3, SENSOR_LIGHT);
start play_music ; //音楽を始める
while(true){
if(SENSOR_1<=42&&SENSOR_3<=40){
go ;
}
if(SENSOR_1>=42&&SENSOR_3>=40){
stop play_music; //音楽を止める
Off(OUT_A); //モータを止める
hand ; Wait(300); //3秒間開く
up ; Wait(500); // 5秒間持ち上げる
go ; Wait(50); Off(OUT_A); //前に進む
OnRev(OUT_B); Wait(300); Off(OUT_B); //置く
back ; Wait(300); Off(OUT_A); //後ろに下がる
}}}
**このロボットの特徴 [#oe6b6002]
|>|CENTER:BGCOLOR(blue):&ref(sd 025.JPG);||&size(30){光センサーの位置が重要!}; &br;2つが適当な位置にあるため、例外なく物体を認識することが出来る&br;|
|>|CENTER:BGCOLOR(yellow):&ref(sd 047.JPG);||&size(30){4つのギアを用いることにより、アームを上に上げることができる};|
|>|CENTER:BGCOLOR(red):&ref(sd 048.JPG);||&size(30){アームの動作の中心となるギア}; &br;小さいギアと大きいギアの2種類を用いることによって、柔らかい動きを作ることができた&br;|
&size(30){大変だった所};
-キット本体の黄色の部分の重さとアームとの部品との重さのバランスをとるのが難しかった。
-アームを上に上げるための機構を作るのが大変だった &br;→4つのキアを使うことによって、アームを上に上げるときの安定感をもたらした&br;&br;→アームの先にタイヤをつけることにより、摩擦力を上げて、パックがすべらないようにした。
**このロボの働き [#t888c88d]
&ref(sd 033.JPG);&ref(sd 034.JPG);&ref(sd 036.JPG);
-2つのパックを積み上げるときの動き
--アームを開いて、前にあるパックをつかむ
--アームを閉じて、あらかじめ置いてあるパックの上まで持ち上げて、のせる。
--アームを開いて、後ろに下がる。
***&size(30){''サブロボット''};→牛乳パックを集める [#j35c4407]
|>|CENTER:BGCOLOR(pink):&ref(sd 038.JPG);&ref(sd 039.JPG);|
-サブロボの単純で明確な動きはパックをとにかくあつめて押す!ってことである。
--そのために、いらない部品やプログラムはすべてカット、シンプルな構造にしました。
--試合の時、あらかじめ、サブロボをパックが沢山おいてある所に置いて、スタートするのがポイント。
**プログラム [#j21446ad]
#define Do 1047 //音楽スタート
#define Re 1175
#define Mi 1319
#define Fa 1397
#define So 1568
#define Ra 1760
#define Shi 1976
#define Doo 2093
task play_music()
{
while (true)
{
PlayTone(Do,20); Wait(30);
PlayTone(Re,20); Wait(30);
PlayTone(Mi,20); Wait(30);
PlayTone(Fa,20); Wait(30);
PlayTone(So,20); Wait(30);
PlayTone(Ra,20); Wait(30);
PlayTone(Shi,20); Wait(60);
PlayTone(Doo,20); Wait(120);
}}
void left(int t) //左に動く
{
OnRev(OUT_A); OnFwd(OUT_C); Wait(t);
Off(OUT_A+OUT_C);
}
void right(int t) //右に動く
{
OnFwd(OUT_A); OnRev(OUT_C); Wait(t);
Off(OUT_A+OUT_C);
}
void go(int t) //前に進む
{
OnFwd(OUT_A+OUT_C); Wait(t);
Off(OUT_A+OUT_C);
}
void back(int t) //後ろに下がる
{
OnRev(OUT_A+OUT_C); Wait(t);
Off(OUT_A+OUT_C);
}
task main()
{
start play_music ; //音楽を流す時間の設定
go(350);
back(250);
left(60);
go(250);
right(80);
go(350);
right(135);
go(150);
back(300);
stop play_music;
}
**このロボットの働き [#baed10bd]
&ref(sd 042.JPG);&ref(sd 043.JPG);
*&size(30){結果発表!!!}; [#l466ecdf]
-ロボコンの単純な点数では、大接戦のロボコンの中、一位がA8の54点、二位がA9で26点、そして我がA6は15点で三位でした。
*反省&感想 [#pe27c1f0]
-ロボコンにあたって、1人の人(ギョーザさん)にほとんど任せてしまって申し訳なかった。
-ロボコンまでの準備時間の不足と試験後の疲れでまともに集中できなかった。
-やっている期間は、辛いこととか大変なことがたくさんあったけど終わってみると、楽しい授業でした。普段、教えてもらえないことを数多く学べたし、なにより協調性が豊かになったと思えます。これからも、今日まで学んだことを忘れずに学業に励んでいきたいと思います。
-普段教科書で勉強できない日本語をいっぱい聞く機会になり、留学生としては特別な時間だったと思います。ここで学んだ日本人との付き合いを大切にしこれからも日本での生活を楽しみたいと思います。
*先生、TAの方々のコメント [#r06f54b0]
-ルールに関して1個づつ取り上げて吟味していくのでなければ、ロボコンの課題やルールについての説明は[[2007a/ロボコン]]にリンクを張れば十分でしょう。転載は必要ありません。 -- [[松本]] &new{2007-08-06 (月) 08:33:50};
#comment
ページ名: