- Äɲ䵤줿¹Ô¤Ï¤³¤Î¿§¤Ç¤¹¡£
- ºï½ü¤µ¤ì¤¿¹Ô¤Ï¤³¤Î¿§¤Ç¤¹¡£
Ìܼ¡
#contents
*¥í¥Ü¥Ã¥È¤ÎÀâÌÀ [#u91f4c0f]
-Ǥ̳
+º£²óºî¤Ã¤¿¥í¥Ü¥Ã¥È¤Ï¼«ºî¤·¤¿¥³¡¼¥¹¤Ë±è¤Ã¤Æ°ì¼þ¤¹¤ë¤¹¤ë¥í¥Ü¥Ã¥È¤Ç¤¹¡£¸òº¹ÅÀ¤ò¤¤Á¤ó¤Èǧ¼±¤·¡¢Àµ¤·¤¯È½ÃǤ·¤ÆÄ̲á¤Ç¤¤ë¤è¤¦¤Ë¤¹¤ë¡£ ³Î¼Â¤Ë°ì¼þ¤Ç¤¤ë¤è¤¦¤Ë¤¹¤ë¡£¥¹¥¿¡¼¥ÈÃÏÅÀ¤«¤é½Ðȯ¤·¤Æ¸µ¤Ë¤â¤É¤ë¤è¤¦¤Ë¤¹¤ë¡£¶õ¤´Ì¤ò¸òº¹ÅÀ¤«¤é10cm°Ê¾åÎ¥¤·¤¿Àþ¾å¤Ëµ¯¤¡¢¤½¤ì¤ò°ìö¤É¤±¤ÆºÆ¤Ó¸µ¤Î°ÌÃ֤ˤâ¤É¤¹¤è¤¦¤Ë²þÎɤ¹¤ë¡£
+º£²óºî¤Ã¤¿¥í¥Ü¥Ã¥È¤Ï¼«ºî¤·¤¿¥³¡¼¥¹¤Ë±è¤Ã¤Æ°ì¼þ¤¹¤ë¥í¥Ü¥Ã¥È¤Ç¤¹¡£¸òº¹ÅÀ¤ò¤¤Á¤ó¤Èǧ¼±¤·¡¢Àµ¤·¤¯È½ÃǤ·¤ÆÄ̲á¤Ç¤¤ë¤è¤¦¤Ë¤¹¤ë¡£ ³Î¼Â¤Ë°ì¼þ¤Ç¤¤ë¤è¤¦¤Ë¤¹¤ë¡£¥¹¥¿¡¼¥ÈÃÏÅÀ¤«¤é½Ðȯ¤·¤Æ¸µ¤Ë¤â¤É¤ë¤è¤¦¤Ë¤¹¤ë¡£¶õ¤´Ì¤ò¸òº¹ÅÀ¤«¤é10cm°Ê¾åÎ¥¤·¤¿Àþ¾å¤Ëµ¯¤¡¢¤½¤ì¤ò°ìö¤É¤±¤ÆºÆ¤Ó¸µ¤Î°ÌÃ֤ˤâ¤É¤¹¤è¤¦¤Ë²þÎɤ¹¤ë¡£
-ÌäÂêÅÀ
+¸òº¹ÅÀ¤Îǧ¼±¤¬°ìÈÖÆñ¤·¤¤¤À¤È»×¤¦¡¢¥»¥ó¥µ¡¼¤Îǧ¼±ÅÙ¤¬Ä㤤¤Ç¤¹¡£
-²ò·èÊýË¡
+¥í¥Ü¥Ã¥È¤Ï°ì¤Ä¤º¤Ä¸òº¹ÅÀÅþÃ夹¤ë»þ´Ö¤ò¬Î̤¹¤ë¡¢»þ´Ö¤Ë¤è¤Ã¤Æ¤É¤Á¤é¤Î¸òº¹ÅÀ¤ÎÁ°»ß¤á¤Ç¤¤ë¡¢¤½¤·¤Æ¼«¿È¤òÄ´À᤹¤ë¸òº¹ÅÀ¤òÄ̲᤹¤ë¡£
-Ĺ½ê
+Àµ³Î¤Ë¸òº¹ÅÀ¤òÅϤµ¤»¤ë
-¼Ì¿¿
&ref(./32764676.jpeg,100%,robotto);
-¹¶Î¬
&ref(2013b/Member/dtb/Mission1/bk201.gif,100%,keiro);
¡Ü¥³¡¼¥¹¤ò£µÊ¬³ä¤¹¤ë¡£¾Ü¤·¤¯¤Ï¿Þ¤è¤ê¡£¤½¤ì¤Ëȼ¤¤¥×¥í¥°¥é¥à¤â¿¤¤¤¯¤¯¤ê¤Ç¸«¤ë¤È5¤Ä¤Î¹½À®¤Ë
¤Ê¤Ã¤Æ¤¤¤ë(¥´¡¼¥ë¤ÎÆ°ºî¤Ï¾Ê¤¯)
¡Ü(¤Ê¤ªÁö¤ë½çÈ֤ϡ¢ª¢¢ª£¢ª¤¢ª¥¢ª¥´¡¼¥ë¤Ç¡¢¿á¤½Ð¤·¤ÎÃæ¤Î¿ô»ú¤Ï¸òº¹ÅÀ¤ÎÈÖ¹æ¤Ç¤¢¤ë¡£)
*¥×¥í¥°¥é¥à [#s2c3add9]
#define THRESHOLD 37
#define HIPOWER 6
#define LOWPOWER 1
#define set_power_H SetPower(OUT_AC,HIPOWER);
#define set_power_L SetPower(OUT_AC,LOWPOWER);
#define turn_left set_power_L;Off(OUT_A);OnFwd(OUT_C);
#define senkai_left set_power_L;OnRev(OUT_A);OnFwd(OUT_C);
#define turn_right set_power_L;Off(OUT_C);OnFwd(OUT_A);
#define senkai_right set_power_L;OnRev(OUT_C);OnFwd(OUT_A);
#define go_forward set_power_H;OnFwd(OUT_AC);
#define STEP 1
#define SAIDAI 3
#define short_break Off(OUT_AC);Wait(80); //¾®µÙ·Æ
#define CROSS_TIME 60 //¸òº¹ÅÀ¤òÅϤë»þ´Ö
#define cross_line(p,q) short_break;senkai_right;Wait(p);senkai_left;Wait(q);go_forward;\
Wait(CROSS_TIME);Off(OUT_AC); //¸òº¹ÅÀÅϤë
#define counter3 PlaySound(SOUND_CLICK);Off(OUT_AC);Wait(50);//3²óÌĤë¤È¸òº¹ÅÀ¤òÅϤë
#define GOOL short_break;turn_right;Wait(350);go_forward;Wait(100);Off(OUT_AC);
sub akikan_1() //¶õ¤´Ì¤ò¤É¤«¤¹¥×¥í¥°¥é¥à1²óÌÜ
{
if(SENSOR_3==1){
Off(OUT_AC);Wait(60);
turn_left;Wait(460);
go_forward;Wait(80);
senkai_left;Wait(500);
OnRev(OUT_AC);Wait(80);
senkai_right;Wait(110);
go_forward;until(SENSOR_2 <= THRESHOLD);
senkai_right;Wait(170);}
}
sub akikan_2() //¶õ¤´Ì¤ò¤É¤«¤¹¥×¥í¥°¥é¥à2²óÌÜ
{
if(SENSOR_3==1){
Off(OUT_AC);Wait(60);
senkai_left;Wait(120);
go_forward;Wait(180);
senkai_left;Wait(500);
OnRev(OUT_AC);Wait(100);
senkai_right;Wait(80);
go_forward;until(SENSOR_2 <= THRESHOLD);}
}
sub line_race() //ÉáÄ̤ιõÀþ¤òÁö¤ë¥×¥í¥°¥é¥à
{
int nOnline=0;
if(SENSOR_2 < THRESHOLD -2){
senkai_right;
}else if(SENSOR_2 < THRESHOLD -1){ //¹õ¤¤Àþ¾å
turn_right;
}else if(SENSOR_2 <= THRESHOLD){¡¡//¹õ¤¤Àþ¤ÈÇò¤¤Àþ¤Î´Ö¡¡
go_forward;
}else if(SENSOR_2 < THRESHOLD +2){¡¡//Çò¤¤Àþ¾å
turn_left;
}else{senkai_left;}
Wait(STEP);nOnline=0;
}
sub before_cross_line() ////¶³¦ÀþÉÕ¶á¤Î¹õÀþ¤òÁö¤ë¥×¥í¥°¥é¥à
sub before_cross_line() //¶³¦ÀþÉÕ¶á¤Î¹õÀþ¤òÁö¤ë¥×¥í¥°¥é¥à
{
int nOnline=0;
while (nOnline < SAIDAI){
if(SENSOR_2 < THRESHOLD -3){
counter3;
senkai_right;
nOnline++;
}else{
if(SENSOR_2 < THRESHOLD -1){
turn_right;
}else if(SENSOR_2 <= THRESHOLD){
go_forward;
}else if(SENSOR_2 < THRESHOLD +2){
turn_left;
}else{senkai_left;}
nOnline=0;
}
Wait(STEP);
} //while(<saidai)ʸ½ª¤ï¤ê
}
task main()
{
SetSensor(SENSOR_3,SENSOR_TOUCH);
SetSensor(SENSOR_2,SENSOR_LIGHT);
int nCross=0;
ClearTimer(0);
while(nCross<6){
if(nCross==0){
while(FastTimer(0)<2350){ //£²£³£µ£°¥ß¥ê¤ÇÂè°ì¸òº¹ÅÀ¤ËÅþÃ夹¤ë
line_race();
akikan_1();
} //while(line_race)ʸ½ª¤ï¤ê
if(FastTimer(0)>=2350){ //Âè°ì¸òº¹ÅÀ¤òÅϤë
before_cross_line();
cross_line(30,0);
} //if(cross_line)ʸ½ª¤ï¤ê
PlaySound(SOUND_DOWN);¡¡¡¡//À¼¤ò½Ð¤¹
ClearTimer(0);
nCross++;
} //nCross0½ª¤ï¤ê
else if(nCross==1){
while(FastTimer(0)<830){ ¡¡¡¡//ÂèÆó¸òº¹ÅÀÅþÃ夹¤ë
line_race();
} //while(line_race)ʸ½ª¤ï¤ê
if(FastTimer(1)>=830){¡¡¡¡//¸òº¹ÅÀ¤òÅϤë
before_cross_line();
cross_line(0,0);
} //while(cross_line)ʸ½ª¤ï¤ê
PlaySound(SOUND_DOWN);
ClearTimer(0);¡¡¡¡¡¡//¥¿¥¤¥Þ¡¼¤ò¥¼¥í¤Ë¤Ê¤ë
nCross++;
} //nCross1½ª¤ï¤ê
else if(nCross==2){
while(FastTimer(0)<100){ ¡¡¡¡//Âè»°¸òº¹ÅÀ
line_race();
} //while(line_race)ʸ½ª¤ï¤ê
if(FastTimer(0)>=100){¡¡¡¡¡¡//¸òº¹ÅÀ¤òÅϤ¹
before_cross_line();
cross_line(0,0);
} //while(cross_line)ʸ½ª¤ï¤ê
PlaySound(SOUND_DOWN);
ClearTimer(0); ¡¡¡¡¡¡//¥¿¥¤¥Þ¡¼¤ò¥¼¥í¤Ë¤Ê¤ë
nCross++;
} //nCross2½ª¤ï¤ê
else if(nCross==3){
while(FastTimer(0)<1070){ ¡¡¡¡//Âè»Í¸òº¹ÅÀ¡×
line_race();
} //while(line_race)ʸ½ª¤ï¤ê
if(FastTimer(1)>=1070){¡¡¡¡¡¡//¸òº¹ÅÀ¤òÅϤ¹
before_cross_line();
cross_line(0,60);
} //if(cross_line)ʸ½ª¤ï¤ê
PlaySound(SOUND_DOWN);¡¡¡¡¡¡¡¡//À¼¤ò½Ð¤¹
ClearTimer(0); ¡¡¡¡¡¡¡¡¡¡¡¡¡¡//¥¿¥¤¥Þ¡¼¤ò¥¼¥í¤Ë¤Ê¤ë
nCross++;
} //nCross3½ª¤ï¤ê
else if(nCross==4){
while(FastTimer(0)<1650){ ¡¡//½ÐȯÅÀ¤ËÅþÃå
line_race();
akikan_2();
} //while(line_race)ʸ½ª¤ï¤ê
if(FastTimer(0)>=1650){¡¡¡¡¡¡
before_cross_line();
} //if¡Ê¥´¡¼¥ëÁ°¡Ëʸ½ª¤ï¤ê
PlaySound(SOUND_UP);
nCross++;
} //nCross4½ª¤ï¤ê
else{
GOOL;
nCross++;
} //¥´¡¼¥ë
}
}