- Äɲ䵤줿¹Ô¤Ï¤³¤Î¿§¤Ç¤¹¡£
- ºï½ü¤µ¤ì¤¿¹Ô¤Ï¤³¤Î¿§¤Ç¤¹¡£
Ìܼ¡
#contents
* ¥á¥ó¥Ð¡¼ [#ibb85475]
kiyomizu : ¥¹¥¿¡¼¥È¢ª¥´¡¼¥ë¤òôÅö
suiden : ¥´¡¼¥ë¢ª¥¹¥¿¡¼¥È¤òôÅö
* ²ÝÂê¤ÎÆâÍÆ [#w222b816]
¿Þ¤Î¤è¤¦¤Ê¥³¡¼¥¹¤ò³Æ¼«¤ÇºîÀ®¤·¤¿¾å¤Ç¡¢¼¡¤Î¤è¤¦¤ÊÆ°ºî¤ò¤¹¤ë¥í¥Ü¥Ã¥È¤òºîÀ®¤»¤è¡£ ¥³¡¼¥¹¤Î¾ÜºÙ¤Ë¤Ä¤¤¤Æ¤Ï¼ø¶ÈÃæÀâÌÀ¤¹¤ë¡Ê²¼¤Î¿Þ¤Ë¤ª¤¤¤Æ¡¢¹õ¤¤Àþ¤ÎÂÀ¤µ¤Ï20mm¤Ç¡¢Àþ¤ÎÃæ±û¤Þ¤Ç¤Îµ÷Î¥¤¬cmɽ¼¨¤µ¤ì¤Æ¤¤¤ë¡Ë¡£
+ ¥¹¥¿¡¼¥ÈÃÏÅÀ¤«¤é½Ðȯ¤·¡¢¹õ¤¤Àþ¤Ë¤½¤Ã¤ÆÆ°¤¯¡£
+ °ì¤ÄÌܤν½»ú¤Î¸òº¹ÅÀ¤ÈÆó¤Ä¤á¤Î½½»ú¤Î¸òº¹ÅÀ¤Î´Ö¤ËÃÖ¤«¤ì¤¿¥Ô¥ó¥Ý¥ó¶Ì¤ò¤Ä¤«¤à¡£
+ ¤µ¤é¤Ë¹õÀþ¤Ë±è¤Ã¤ÆÆ°¤¤¤Æ¥´¡¼¥ëÃÏÅÀ¤òÌܻؤ¹¡£
+ ¥´¡¼¥ë¤Ë¸þ¤±¤Æ¥Ô¥ó¥Ý¥ó¶Ì¤ò¥·¥å¡¼¥È¤¹¤ë¡£
¤¿¤À¤·T»úÏ©¤Ç¤Ï¡¢Ä¾¿Ê¡¢±¦ÀÞ¡¢º¸ÀÞ¤òÀµ¤·¤¯È½ÃǤµ¤»¤ë¤³¤È¡£¤Þ¤¿Æó¿Í°ìÁȤÇƱ¤¸¥í¥Ü¥Ã¥È¤ò»ÈÍѤ·¡¢¸ß¤¤¤Ë¥¹¥¿¡¼¥ÈÃÏÅÀ¤È¥´¡¼¥ëÃÏÅÀ¤òÆþ¤ìÂؤ¨¤ë¤³¤È¡£¥í¥Ü¥Ã¥ÈËÜÂΤ϶¦Ä̤Τâ¤Î¤ò»È¤¦¤È¤¹¤ë¡£
¤µ¤é¤Ë°Ê²¼¤Î¤è¤¦¤ÊÆ°ºî¤ËÄ©À魯¤ë¤³¤È¤¬Ë¾¤Þ¤·¤¤¡£
+ ¥´¡¼¥ë¥¨¥ê¥¢³°¤«¤é¥Ô¥ó¥Ý¥ó¶Ì¤ò¥·¥å¡¼¥È¤¹¤ë¡£
+ ¶ÊÀþÉôÃæ±û¤Î¾ã³²Êª¤ËÀÜ¿¨¤·¤Ê¤¤¤è¤¦¤Ë¤¹¤ë¤³¤È¡£
&ref(2014a-mission1.png);
* ¥í¥Ü¥Ã¥È¤Î¾Ò²ð [#qd0e48a4]
** ¥í¥Ü¥Ã¥È¤Î³°´Ñ [#e9cd888b]
&ref(robo2.jpg);
&ref(robo1.jpg);
&ref(robo2.jpg);
&ref(robo3.jpg);
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¥¢¡¼¥à¤ò¾å¤²¤¿¾õÂ֤Υí¥Ü¥Ã¥È¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¥¢¡¼¥à¤ò²¼¤²¤¿¾õÂ֤Υí¥Ü¥Ã¥È¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¸å¤í¤«¤é¸«¤¿¥í¥Ü¥Ã¥È
** ¸÷¥»¥ó¥µ¡¼¡¦¥Ð¥ó¥Ñ¡¼[#ld0a546a]
&ref(robo4.jpg);
Ãæ±û¤Ë¤¢¤ë¤Î¤¬¸÷¥»¥ó¥µ¡¼¤Ç¤¢¤ê¡¢¥é¥¤¥ó¤ò¥È¥ì¡¼¥¹¤¹¤ë¤È¤¤Ë»ÈÍѤ¹¤ë¡£
ξ¥µ¥¤¥É¤Ë¤¢¤ë¤Î¤¬¥Ð¥ó¥Ñ¡¼¤Ç¤¢¤ê¡¢¤è¤ê³Î¼Â¤Ë¥Ü¡¼¥ë¤ò³ÎÊݤǤ¤ë¤è¤¦¤Ë¤·¤Æ¤¤¤ë¡£
** ¥¢¡¼¥à [#d4f186e7]
&ref(robo8.jpg);
&ref(robo9.jpg);
¥¢¡¼¥à¤ÏÎؤΤ褦¤Ê¹½Â¤¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢¥â¡¼¥¿¡¼¤ò²óž¤µ¤»¡¢¥í¥Ü¥Ã¥È¤«¤é¸«¤Æ¼êÁ°¤ÎËÀ¤È¥Ð¥ó¥Ñ¡¼¤Ç¥Ü¡¼¥ë¤ò¶´¤ß¡¢¥Ü¡¼¥ë¤Î²¼¤ËËÀ¤òÄ̤·¡¢³ÎÊݤ¹¤ë»ÅÁȤߤˤʤäƤ¤¤ë¡£
ÎؤÎÃæ¤Ë¥Ü¡¼¥ë¤¬Æþ¤ì¤Ð¡¢³Î¼Â¤Ë¥´¡¼¥ë¤Þ¤Ç»ý¤Ã¤Æ¤¤¤¥·¥å¡¼¥È¤òÂǤĤ³¤È¤¬¤Ç¤¤ë¤Î¤Ç¡¢¤³¤Î»ÅÁȤߤòºÎÍѤ·¤¿¡£
¤·¤«¤·¡¢ÎؤÎÃæ¤Ë¥Ü¡¼¥ë¤¬Æþ¤é¤Ê¤¤¤³¤È¤¬¤¢¤Ã¤¿¤Î¤Ç¡¢L»ú·Á¤Î¥Ñ¡¼¥Ä¤ÇÊÖ¤·¤ò¤Ä¤±¡¢¥Ü¡¼¥ë¤ò¼è¤ê¤³¤Ü¤µ¤Ê¤¤¤è¤¦¤Ë¹©Éפ·¤¿¡£
** ¥Ü¡¼¥ë¤ÎÊá¤êÊý¡¦¥·¥å¡¼¥È¤ÎÂǤÁÊý [#s1fd127d]
&ref(robo5.jpg);
&ref(robo6.jpg);
&ref(robo7.jpg);
¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¥¢¡¼¥à¤ò²¼¤²¤Æ¥Ü¡¼¥ë¤òÊá¤ë¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¥Ü¡¼¥ë¤ò³ÎÊÝ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ ¡¡¡¡¥¢¡¼¥à¤ò¾å¤²¤Æ¥·¥å¡¼¥È¤òÂǤÄ
* ¥×¥í¥°¥é¥à¤ÎÆâÍÆ [#n91931a1]
&ref(2014a-mission1-kouryaku.png);
¥×¥í¥°¥é¥à¤ÎÆâÍƤò¾å¤Î¿Þ¤ÎPart¤´¤È¤Ëʬ¤±¤ÆÀâÌÀ¤¹¤ë¡£
¥×¥í¥°¥é¥à¤ÎÆâÍƤò¾å¿Þ¤Ç¼¨¤µ¤ì¤¿Part¤´¤È¤Ëʬ¤±¤ÆÀâÌÀ¤¹¤ë¡£
** Part0:ÄêµÁ [#c2c9cc66]
#define THRESHOLD 50 // ¤·¤¤¤Ãͤò50¤ËÀßÄê
#define turn_left0 OnFwd(OUT_B,50); // º¸ÀÞ
#define turn_left1 OnFwd(OUT_B,30);OnFwd(OUT_C,-30); // º¸Àû²ó
#define turn_right0 OnFwd(OUT_C,50); // ±¦ÀÞ
#define turn_right1 OnFwd(OUT_C,30);OnFwd(OUT_B,-30); // ±¦Àû²ó
#define STEP 1 // 1²ó¤ÎȽÃǤÇÆ°ºî¤µ¤»¤ë»þ´Ö
#define nMAX 250 // Ä̾ï¤Î¥«¡¼¥Ö¤È¤·¤ÆµöÍƤǤ¤ë·«¤êÊÖ¤·»þ´Ö¤ÎºÇÂçÃÍ
#define short_break Off(OUT_BC);Wait(1000); // ¾®µÙ»ß
#define cross_line¡¡OnFwd(OUT_BC,50);Wait(250);short_break;PlaySound(SOUND_UP); // ¥é¥¤¥ó¤ò²£ÃÇ
#define THRESHOLD 50 ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ // ¤·¤¤¤Ãͤò50¤ËÀßÄê
#define turn_left0 OnFwd(OUT_B,30); ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ // º¸ÀÞ
#define turn_left1 OnFwd(OUT_B,20);OnFwd(OUT_C,-20); ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡// º¸Àû²ó
#define turn_right0 OnFwd(OUT_C,30); ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ // ±¦ÀÞ
#define turn_right1 OnFwd(OUT_C,20);OnFwd(OUT_B,-20); ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡// ±¦Àû²ó
#define STEP 1 ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ // 1²ó¤ÎȽÃǤÇÆ°ºî¤µ¤»¤ë»þ´Ö
#define nMAX 250 ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ // Ϣ³¤·¤Æ¥é¥¤¥ó¤òǧ¼±¤¹¤ë²ó¿ô¤Î¸ÂÅÙ
#define short_break Off(OUT_BC);Wait(1000); ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡// ¾®µÙ»ß
#define cross_line¡¡OnFwd(OUT_BC,30);Wait(300);short_break;PlaySound(SOUND_UP); // ¸òº¹ÅÀ¤òÅϤë
** Part1 [#u87a2841]
task main()
{
SetSensorLight(S1);
long t0 = CurrentTick();
int nOnline = 0;
int nPoint = 0;
SetSensorLight(S1); // ¸÷¥»¥ó¥µ¡¼¤ò¥Ý¡¼¥È1¤ËÀܳ
long t0 = CurrentTick(); // ¥¿¥¤¥Þ¡¼¡¤òÍÑ°Õ
int nOnline = 0; // ¥é¥¤¥ó¾å¤Ë¸ºß¤·¤¿²ó¿ô¤ò¥«¥¦¥ó¥È¤¹¤ëÊÑ¿ô¤òÍÑ°Õ
int nPoint = 0; // ¼¡¤ÎPart¤Ë°Ü¹Ô¤¹¤ë¤¿¤á¤ÎÊÑ¿ô¤òÍÑ°Õ
OnFwd(OUT_BC,30);
OnFwd(OUT_BC,30);¡¡¡¡¡¡¡¡¡¡ // 0.7ÉôÖľ¿Ê
Wait(700);
Part1¤Ï¡¢¥¹¥¿¡¼¥È¤ÎÏÈÆ⤫¤é½Ð¤ë¤¿¤á¤Î¥×¥í¥°¥é¥à¤Ç¤¢¤ë¡£
** Part2 [#q3248486]
while (CurrentTick() - t0 < 10000) {
if (SENSOR_1 < THRESHOLD -7) {
while (CurrentTick() - t0 < 10000) { // ³«»Ï¤«¤é10ÉÃ̤Ëþ¤Î¤È¤°Ê²¼¤ÎÆ°ºî¤ò¼Â¹Ô
if (SENSOR_1 < THRESHOLD -10) { // ¹õ¤¤Éôʬ¤Î¾å¤Ç¤Ïº¸Àû²ó
turn_left1;
} else {
if (SENSOR_1 < THRESHOLD -5) {
if (SENSOR_1 < THRESHOLD -5) { // ¤ä¤ä¹õ¤¤Éôʬ¤Î¾å¤Ç¤Ïº¸ÀÞ
turn_left0;
} else if (SENSOR_1 < THRESHOLD +2) {
OnFwd(OUT_BC,50);
} else if (SENSOR_1 < THRESHOLD +7) {
} else if (SENSOR_1 < THRESHOLD +2) { // ¹õ¤ÈÇò¤Î¶³¦¤Ç¤Ïľ¿Ê
OnFwd(OUT_BC,30);
} else if (SENSOR_1 < THRESHOLD +15) { // ¤ä¤äÇò¤¤Éôʬ¤Î¾å¤Ç¤Ï±¦ÀÞ
turn_right0;
} else {
} else { // Çò¤¤Éôʬ¤Î¾å¤Ç¤Ï±¦Àû²ó
turn_right1;
}
Wait(STEP);
Wait(STEP); // 1/1000É䴤ȤËȽÃǤò¹Ô¤¦
}
}
Part2¤Ï¡¢³«»Ï10ÉÃ̤Ëþ¤Î¤È¤¡¢¥é¥¤¥ó¤Îº¸Â¦¤ò¥È¥ì¡¼¥¹¤¹¤ë¥×¥í¥°¥é¥à¤Ç¤¢¤ë¡£
Part2¤Ï¡¢³«»Ï¤«¤é10ÉÃ̤Ëþ¤Î¤È¤¡¢¥é¥¤¥ó¤Îº¸Â¦¤ò¥È¥ì¡¼¥¹¤¹¤ë¥×¥í¥°¥é¥à¤Ç¤¢¤ë¡£
** Part3 [#c5040110]
while (nPoint == 0) {
while (nOnline < nMAX){
if (SENSOR_1 < THRESHOLD -7) {
turn_left1;
nOnline++;
while (nPoint == 0) { // nPoint=0(½é´ü¾õÂÖ)¤Î¤È¤°Ê²¼¤ÎÆ°ºî¤ò¼Â¹Ô
while (nOnline < nMAX){ // ¸òº¹ÅÀ¤ÈȽÃǤ·¤Ê¤¤¸Â¤ê°Ê²¼¤ÎÆ°ºî¤ò¼Â¹Ô
if (SENSOR_1 < THRESHOLD -10) { // ¹õ¤¤Éôʬ¤Î¾å¤Ç¤Ïº¸Àû²ó
turn_left1;
nOnline++; // nOnline¤Ë¡Ü1¤¹¤ë
} else {
if (SENSOR_1 < THRESHOLD -5) {
if (SENSOR_1 < THRESHOLD -5) { // ¤ä¤ä¹õ¤¤Éôʬ¤Î¾å¤Ç¤Ïº¸ÀÞ
turn_left0;
} else if (SENSOR_1 < THRESHOLD +2) {
OnFwd(OUT_BC,50);
} else if (SENSOR_1 < THRESHOLD +7) {
} else if (SENSOR_1 < THRESHOLD +2) { // ¹õ¤ÈÇò¤Î¶³¦¤Î¾å¤Ç¤Ïľ¿Ê
OnFwd(OUT_BC,30);
} else if (SENSOR_1 < THRESHOLD +15) { // ¤ä¤äÇò¤¤Éôʬ¤Î¾å¤Ç¤Ï±¦ÀÞ
turn_right0;
} else {
} else { // Çò¤¤Éôʬ¤Î¾å¤Ç¤Ï±¦Àû²ó
turn_right1;
}
nOnline=0;
nOnline=0; // nOnline¤ò0¤Ë¥ê¥»¥Ã¥È
}
Wait(STEP);
Wait(STEP); // 1/1000É䴤ȤËȽÃǤò¹Ô¤¦
} // ¸òº¹ÅÀ¤ÈȽÃǤ·¤¿¤È¤°Ê²¼¤ÎÆ°ºî¤ò¼Â¹Ô
short_break; // ¾®µÙ»ß
turn_right1; Wait(nMAX*STEP); // Êý¸þ½¤Àµ
cross_line; // ¸òº¹ÅÀ¤òÅϤë
nOnline=0; // nOnline¤ò0¤Ë¥ê¥»¥Ã¥È
nPoint++; // nPoint¤Ë¡Ü1¤¹¤ë(nPoint=1¤Ë¤¹¤ë)
}
short_break;
turn_right1; Wait(nMAX*STEP);
cross_line;
nPoint++;
nOnline=0;
}
Part3¤Ï¡¢"nPoint=0"¤Î¤È¤(½é´ü¾õÂÖ)¡¢¥é¥¤¥ó¤Îº¸Â¦¤ò¥È¥ì¡¼¥¹¤·¤Ä¤Ä¡¢¸òº¹ÅÀ¤òÅϤë¥×¥í¥°¥é¥à¤Ç¤¢¤ë¡£¤Þ¤¿¡¢¸òº¹ÅÀ¤òÅϤ俤Ȥ¡¢nPoint¤ò¡Ü1¤·¤ÆPart4¤Ë°Ü¹Ô¤¹¤ë¡£
Part3¤Ï¡¢"nPoint=0"¤Î¤È¤(½é´ü¾õÂÖ)¡¢¥é¥¤¥ó¤Îº¸Â¦¤ò¥È¥ì¡¼¥¹¤·¤Ä¤Ä¡¢¸òº¹ÅÀ¤òÅϤë¥×¥í¥°¥é¥à¤Ç¤¢¤ë¡£
** Part4 [#t9300c7c]
long t1 = CurrentTick();
¤Þ¤¿¡¢¸òº¹ÅÀ¤òÅϤ俤Ȥ¡¢nPoint¤ò¡Ü1¤·¤ÆPart4¤Ë°Ü¹Ô¤¹¤ë¡£
** Part4 [#x2bdc966]
long t1 = CurrentTick(); // ¥¿¥¤¥Þ¡¼¢¤òÍÑ°Õ
while (nPoint == 1) {
if (CurrentTick() - t1 == 5000) {
Off(OUT_BC);
RotateMotor(OUT_A,85,210);
nPoint++;
PlaySound(SOUND_UP);
while (nPoint == 1) { // nPoint=1¤Î¤È¤°Ê²¼¤ÎÆ°ºî¤ò¼Â¹Ô
if (CurrentTick() - t1 == 5000) { // 5É÷вᤷ¤¿¤È¤°Ê²¼¤ÎÆ°ºî¤ò¼Â¹Ô
Off(OUT_BC); // ¥í¥Ü¥Ã¥È¤ò»ß¤á¤ë
RotateMotor(OUT_A,85,210); // ¥¢¡¼¥à¤ò²¼¤²¤ë
nPoint++; // nPoint¤Ë¡Ü1¤¹¤ë
PlaySound(SOUND_UP); // ²»¤òÌĤ餹
} else {
if (SENSOR_1 < THRESHOLD -10) {
if (SENSOR_1 < THRESHOLD -10) { // ¹õ¤¤Éôʬ¤Î¾å¤Ç¤Ïº¸Àû²ó
turn_left1;
} else if (SENSOR_1 < THRESHOLD -5) {
} else if (SENSOR_1 < THRESHOLD -5) { // ¤ä¤ä¹õ¤¤Éôʬ¤Î¾å¤Ç¤Ïº¸ÀÞ
turn_left0;
} else if (SENSOR_1 < THRESHOLD +10) {
} else if (SENSOR_1 < THRESHOLD +15) { // ¤ä¤äÇò¤¤Éôʬ¤Î¾å¤Ç¤Ï±¦ÀÞ
turn_right0;
} else {
} else { // Çò¤¤Éôʬ¤Î¾å¤Ç¤Ï±¦Àû²ó
turn_right1;
}
Wait(STEP);
Wait(STEP); // 1/1000É䴤ȤËȽÃǤò¹Ô¤¦
}
}
Part4¤Ï¡¢"nPoint=1"¤Î¤È¤¡¢¥é¥¤¥ó¤Îº¸Â¦¤ò¥È¥ì¡¼¥¹¤·¤Ä¤Ä¡¢Part4³«»Ï¤«¤é5É䬷вᤷ¤¿¤È¤¡¢¥¢¡¼¥à¤ò²¼¤í¤·¥Ü¡¼¥ë¤ò³ÎÊݤ¹¤ë¥×¥í¥°¥é¥à¤Ç¤¢¤ë¡£¤Þ¤¿¡¢¥Ü¡¼¥ë¤ò³ÎÊݤ·¤¿¤È¤¡¢nPoint¤ò¡Ü1¤·¤ÆPart5¤Ë°Ü¹Ô¤¹¤ë¡£
Part4¤Ï¡¢"nPoint=1"¤Î¤È¤¡¢¥é¥¤¥ó¤Îº¸Â¦¤ò¥È¥ì¡¼¥¹¤·¤Ä¤Ä¡¢Part4³«»Ï¤«¤é5É䬷вᤷ¤¿¤È¤¡¢¥¢¡¼¥à¤ò²¼¤í¤·¥Ü¡¼¥ë¤ò³ÎÊݤ¹¤ë¥×¥í¥°¥é¥à¤Ç¤¢¤ë¡£
¥¿¥¤¥Þ¡¼¤òÍøÍѤ·¤Æ¥Ü¡¼¥ë¤ò³ÎÊݤ¹¤ë¤¿¤á¤Ë°ÂÄꤷ¤¿Æ°¤¤¬É¬ÍפǤ¢¤ë¤¿¤á¡¢¤³¤Î¥×¥í¥°¥é¥à¤Ë¸Â¤êľ¿Ê"OnFwd(OUT_BC,50)"¤òÆþ¤ì¤Æ¤¤¤Ê¤¤¡£
¤Þ¤¿¡¢¥Ü¡¼¥ë¤ò³ÎÊݤ·¤¿¤È¤¡¢nPoint¤ò¡Ü1¤·¤ÆPart5¤Ë°Ü¹Ô¤¹¤ë¡£
** Part5 [#m89b5795]
while (nPoint == 2) {
while (nOnline < nMAX - 100){
if (SENSOR_1 < THRESHOLD -7) {
while (nPoint == 2) { // nPoint=2¤Î¤È¤°Ê²¼¤ÎÆ°ºî¤ò¼Â¹Ô
while (nOnline < nMAX -100){ // ¸òº¹ÅÀ¤ÈȽÃǤ·¤Ê¤¤¸Â¤ê°Ê²¼¤ÎÆ°ºî¤ò¼Â¹Ô
if (SENSOR_1 < THRESHOLD -10) { // ¹õ¤¤Éôʬ¤Î¾å¤Ç¤Ïº¸Àû²ó
turn_left1;
nOnline++;
nOnline++; // nOnline¤Ë¡Ü1¤¹¤ë
} else {
if (SENSOR_1 < THRESHOLD -5) {
if (SENSOR_1 < THRESHOLD -5) { // ¤ä¤ä¹õ¤¤Éôʬ¤Î¾å¤Ç¤Ïº¸ÀÞ
turn_left0;
} else if (SENSOR_1 < THRESHOLD +2) {
OnFwd(OUT_BC,50);
} else if (SENSOR_1 < THRESHOLD +7) {
} else if (SENSOR_1 < THRESHOLD +2) { // ¹õ¤ÈÇò¤Î¶³¦¤Ç¤Ïľ¿Ê
OnFwd(OUT_BC,30);
} else if (SENSOR_1 < THRESHOLD +15) { // ¤ä¤äÇò¤¤Éôʬ¤Î¾å¤Ç¤Ï±¦ÀÞ
turn_right0;
} else {
} else { // Çò¤¤Éôʬ¤Î¾å¤Ç¤Ï±¦Àû²ó
turn_right1;
}
nOnline=0;
nOnline=0; // nOnline¤ò0¤Ë¥ê¥»¥Ã¥È
}
Wait(STEP);
Wait(STEP); // 1/1000É䴤ȤËȽÃǤò¹Ô¤¦
} // ¸òº¹ÅÀ¤ÈȽÃǤ·¤¿¤È¤°Ê²¼¤ÎÆ°ºî¤ò¼Â¹Ô
short_break; // ¾®µÙ»ß
turn_right1; Wait(nMAX*STEP); // Êý¸þ½¤Àµ
cross_line; // ¸òº¹ÅÀ¤òÅϤë
nOnline=0; // nOnline¤ò0¤Ë¥ê¥»¥Ã¥È
nPoint++; // nPoint¤Ë¡Ü1¤¹¤ë(nPoint=3¤Ë¤¹¤ë)
}
short_break;
turn_right1; Wait(nMAX*STEP);
cross_line;
nOnline=0;
nCross++;
}
Part5¤Ï¡¢"nPoint=2"¤Î¤È¤¡¢¥é¥¤¥ó¤Îº¸Â¦¤ò¥È¥ì¡¼¥¹¤·¤Ä¤Ä¡¢¸òº¹ÅÀ¤òÅϤë¥×¥í¥°¥é¥à¤Ç¤¢¤ë¡£¤Þ¤¿¡¢¸òº¹ÅÀ¤òÅϤ俤Ȥ¡¢nPoint¤ò¡Ü1¤·¤ÆPart6¤Ë°Ü¹Ô¤¹¤ë¡£
Ãæ±û¤Î¸òº¹ÅÀ¤òÅϤë¤È¤¡¢¸òº¹ÅÀ¤Ç¤Ï¤Ê¤¯Ä̾ï¤Î¥«¡¼¥Ö¤È¸íǧ¼±¤·¤Æ¤·¤Þ¤¦¤³¤È¤¬Â¿¤«¤Ã¤¿¤¿¤á¡¢"nMAX"¤ò"nMAX - 100"¤ËÊѹ¹¤¹¤ë¤³¤È¤Ç¡¢¸íǧ¼±¤ò¸º¤é¤·¤Æ¤¤¤ë¡£
Part5¤Ï¡¢"nPoint=2"¤Î¤È¤¡¢¥é¥¤¥ó¤Îº¸Â¦¤ò¥È¥ì¡¼¥¹¤·¤Ä¤Ä¡¢¸òº¹ÅÀ¤òÅϤë¥×¥í¥°¥é¥à¤Ç¤¢¤ë¡£
Ãæ±û¤Î¸òº¹ÅÀ¤òÅϤë¤È¤¡¢¸òº¹ÅÀ¤Ç¤Ï¤Ê¤¯¥«¡¼¥Ö¤È¸íǧ¼±¤·¤Æ¤·¤Þ¤¦¤³¤È¤¬Â¿¤«¤Ã¤¿¤¿¤á¡¢"nMAX"¤ò"nMAX -100"¤ËÊѹ¹¤¹¤ë¤³¤È¤Ç¡¢¸òº¹ÅÀ¤ÈȽÃǤ·¤ä¤¹¤¯¤·¤Æ¤ª¤ê¡¢¸íǧ¼±¤ò¸º¤é¤·¤Æ¤¤¤ë¡£
¤Þ¤¿¡¢¸òº¹ÅÀ¤òÅϤ俤Ȥ¡¢nPoint¤ò¡Ü1¤·¤ÆPart6¤Ë°Ü¹Ô¤¹¤ë¡£
** Part6 [#oa31f38f]
while (nPoint == 3) {
while (nOnline < nMAX){
if (SENSOR_1 < THRESHOLD -7) {
while (nPoint == 3) { // nPoint=3¤Î¤È¤°Ê²¼¤ÎÆ°ºî¤ò¼Â¹Ô
while (nOnline < nMAX){ // ¸òº¹ÅÀ¤ÈȽÃǤ·¤Ê¤¤¸Â¤ê°Ê²¼¤ÎÆ°ºî¤ò¼Â¹Ô
if (SENSOR_1 < THRESHOLD -10) { // ¹õ¤¤Éôʬ¤Î¾å¤Ç¤Ïº¸Àû²ó
turn_left1;
nOnline++;
nOnline++; // nOnline¤Ë¡Ü1¤¹¤ë
} else {
if (SENSOR_1 < THRESHOLD -5) {
if (SENSOR_1 < THRESHOLD -5) { // ¤ä¤ä¹õ¤¤Éôʬ¤Î¾å¤Ç¤Ïº¸ÀÞ
turn_left0;
} else if (SENSOR_1 < THRESHOLD +2) {
} else if (SENSOR_1 < THRESHOLD +2) { // ¹õ¤ÈÇò¤Î¶³¦¤Ç¤Ïľ¿Ê
OnFwd(OUT_BC,50);
} else if (SENSOR_1 < THRESHOLD +7) {
} else if (SENSOR_1 < THRESHOLD +15) { // ¤ä¤äÇò¤¤Éôʬ¤Î¾å¤Ç¤Ï±¦ÀÞ
turn_right0;
} else {
} else { // Çò¤¤Éôʬ¤Î¾å¤Ç¤Ï±¦Àû²ó
turn_right1;
}
nOnline=0;
nOnline=0; // nOnline¤ò0¤Ë¥ê¥»¥Ã¥È
}
Wait(STEP);
Wait(STEP); // 1/1000É䴤ȤËȽÃǤò¹Ô¤¦
} // ¸òº¹ÅÀ¤ÈȽÃǤ·¤¿¤È¤°Ê²¼¤ÎÆ°ºî¤ò¼Â¹Ô
short_break; // ¾®µÙ»ß
turn_left1; Wait(nMAX*STEP -50); // Êý¸þ½¤Àµ
cross_line; // ¸òº¹ÅÀ¤òÅϤë
nOnline=0; // nOnline¤ò0¤Ë¥ê¥»¥Ã¥È
nPoint++; // nPoint¡Ü1¤¹¤ë(nPoint=4¤Ë¤¹¤ë)
}
short_break;
turn_left1; Wait(nMAX*STEP -50);
cross_line;
nOnline=0;
nPoint++;
}
Part6¤Ï¡¢"nPoint=3"¤Î¤È¤¡¢¥é¥¤¥ó¤Îº¸Â¦¤ò¥È¥ì¡¼¥¹¤·¤Ä¤Ä¡¢¸òº¹ÅÀ¤òÅϤë¥×¥í¥°¥é¥à¤Ç¤¢¤ë¡£¤Þ¤¿¡¢¸òº¹ÅÀ¤òÅϤ俤Ȥ¡¢nPoint¤ò¡Ü1¤·¤ÆPart7¤Ë°Ü¹Ô¤¹¤ë¡£
¾åÉô¤Î¸òº¹ÅÀ¤òÅϤë¤È¤¡¢¼Ð¤á¤Ë²£ÃǤ·¤Æ¤·¤Þ¤¤¥é¥¤¥ó¤Î±¦Â¦¤Ë½Ð¤Æ¤·¤Þ¤¦¤³¤È¤¬Â¿¤«¤Ã¤¿¤¿¤á¡¢"turn_right1"¤ò"turn_left1"¤Ë¡¢"nMAX*STEP"¤ò"nMAX*STEP -50"Êѹ¹¤¹¤ë¤³¤È¤Ç¡¢Å¬Åö¤Ê»þ´Ö¤Çº¸¤Ë¶Ê¤¬¤ê¤Ê¤¬¤é¸òº¹ÅÀ¤òÅϤꡢ¥é¥¤¥ó¤Îº¸Â¦¤Ë½Ð¤é¤ì¤ë¤è¤¦¤Ë¤·¤Æ¤¤¤ë¡£
Part6¤Ï¡¢"nPoint=3"¤Î¤È¤¡¢¥é¥¤¥ó¤Îº¸Â¦¤ò¥È¥ì¡¼¥¹¤·¤Ä¤Ä¡¢¸òº¹ÅÀ¤òÅϤë¥×¥í¥°¥é¥à¤Ç¤¢¤ë¡£
¾åÉô¤Î¸òº¹ÅÀ¤òÅϤë¤È¤¡¢¼Ð¤á¤Ë²£ÃǤ·¤Æ¤·¤Þ¤¤¥é¥¤¥ó¤Î±¦Â¦¤Ë½Ð¤Æ¤·¤Þ¤¦¤³¤È¤¬Â¿¤«¤Ã¤¿¤¿¤á¡¢Êý¸þ½¤Àµ¤Î"turn_right1"¤ò"turn_left1"¤Ë¡¢"nMAX*STEP"¤ò"nMAX*STEP -50"Êѹ¹¤¹¤ë¤³¤È¤Ç¡¢Å¬Åö¤Ê»þ´Ö¤Çº¸¤Ë¶Ê¤¬¤ê¤Ê¤¬¤é¸òº¹ÅÀ¤òÅϤꡢ¥é¥¤¥ó¤Îº¸Â¦¤Ë½Ð¤é¤ì¤ë¤è¤¦¤Ë¤·¤Æ¤¤¤ë¡£
¤Þ¤¿¡¢¸òº¹ÅÀ¤òÅϤ俤Ȥ¡¢nPoint¤ò¡Ü1¤·¤ÆPart7¤Ë°Ü¹Ô¤¹¤ë¡£
** Part7 [#ibc0bdc7]
while (nPoint == 4) {
while (nOnline < nMAX){
if (SENSOR_1 < THRESHOLD -7) {
while (nPoint == 4) { // nPoint=4¤Î¤È¤°Ê²¼¤ÎÆ°ºî¤ò¼Â¹Ô
while (nOnline < nMAX){ // ¸òº¹ÅÀ¤ÈȽÃǤ·¤Ê¤¤¸Â¤ê°Ê²¼¤ÎÆ°ºî¤ò¼Â¹Ô
if (SENSOR_1 < THRESHOLD -10) { // ¹õ¤¤Éôʬ¤Î¾å¤Ç¤Ïº¸Àû²ó
turn_left1;
nOnline++;
nOnline++; // nOnline¤Ë¡Ü1¤¹¤ë
} else {
if (SENSOR_1 < THRESHOLD -5) {
if (SENSOR_1 < THRESHOLD -5) { // ¤ä¤ä¹õ¤¤Éôʬ¤Î¾å¤Ç¤Ïº¸ÀÞ
turn_left0;
} else if (SENSOR_1 < THRESHOLD +2) {
OnFwd(OUT_BC,50);
} else if (SENSOR_1 < THRESHOLD +7) {
} else if (SENSOR_1 < THRESHOLD +2) { // ¹õ¤ÈÇò¤Î¶³¦¤Ç¤Ïľ¿Ê
OnFwd(OUT_BC,30);
} else if (SENSOR_1 < THRESHOLD +15) { // ¤ä¤äÇò¤¤Éôʬ¤Î¾å¤Ç¤Ï±¦ÀÞ
turn_right0;
} else {
} else { // Çò¤¤Éôʬ¤Î¾å¤Ç¤Ï±¦Àû²ó
turn_right1;
}
nOnline=0;
nOnline=0; // nOnline¤ò0¤Ë¥ê¥»¥Ã¥È
}
Wait(STEP);
Wait(STEP); // 1/1000É䴤ȤËȽÃǤò¹Ô¤¦
} // ¸òº¹ÅÀ¤ÈȽÃǤ·¤¿¤È¤°Ê²¼¤ÎÆ°ºî¤ò¼Â¹Ô
short_break; // ¾®µÙ»ß
turn_right1; Wait(nMAX*STEP +100); // Êý¸þ½¤Àµ
OnFwd(OUT_BC,-50); Wait(500); // 0.5ÉôָåÂह¤ë
nOnline=0; // nOnline¤ò0¤Ë¥ê¥»¥Ã¥È
nPoint++; // nPoint¡Ü1¤¹¤ë(nPoint=5¤Ë¤¹¤ë)
}
short_break;
turn_right1; Wait(nMAX*STEP +100);
OnFwd(OUT_BC,-50); Wait(500);
nOnline=0;
nPoint++;
}
Part7¤Ï¡¢"nPoint=4"¤Î¤È¤¡¢¥é¥¤¥ó¤Îº¸Â¦¤ò¥È¥ì¡¼¥¹¤¹¤ë¥×¥í¥°¥é¥à¤Ç¤¢¤ë¡£¤Þ¤¿¡¢¥´¡¼¥ëÁ°¤Îľ³Ñ¥«¡¼¥Ö¤ò¸òº¹ÅÀ¤Èǧ¼±¤¹¤ë¤¬¡¢"cross_line"¤ò"OnFwd(OUT_BC,-50); Wait(500)"¤Ë¡¢nMAX*STEP"¤ò"nMAX*STEP +100"¤ËÊѹ¹¤¹¤ë¤³¤È¤Ç¡¢Àµ³Î¤Ë¥´¡¼¥ë¤ËÀµÂФ·¤¿¸å¡¢¸åÂह¤ë¡£¤½¤·¤Æ¡¢nPoint¤ò¡Ü1¤·¤ÆPart7¤Ë°Ü¹Ô¤¹¤ë¡£
Part7¤Ï¡¢"nPoint=4"¤Î¤È¤¡¢¥é¥¤¥ó¤Îº¸Â¦¤ò¥È¥ì¡¼¥¹¤¹¤ë¥×¥í¥°¥é¥à¤Ç¤¢¤ë¡£
¥´¡¼¥ëÁ°¤Îľ³Ñ¥«¡¼¥Ö¤ò¸òº¹ÅÀ¤Èǧ¼±¤¹¤ë¤¬¡¢"cross_line"¤ò¸åÂà"OnFwd(OUT_BC,-50); Wait(500)"¤Ë¡¢nMAX*STEP"¤ò"nMAX*STEP +100"¤ËÊѹ¹¤¹¤ë¤³¤È¤Ç¡¢Àµ³Î¤Ë¥´¡¼¥ë¤ËÀµÂФ·¤¿¸å¡¢¸åÂह¤ë¡£
¤Þ¤¿¡¢nPoint¤ò¡Ü1¤·¤ÆPart8¤Ë°Ü¹Ô¤¹¤ë¡£
** Part8 [#d79427ce]
while (nPoint == 5) {
RotateMotor(OUT_A,-100,90);
PlaySound(SOUND_UP);
Off(OUT_ABC);
nPoint++;
while (nPoint == 5) { // nPoint=5¤Î¤È¤°Ê²¼¤ÎÆ°ºî¤ò¼Â¹Ô
Off(OUT_BC); // ¥í¥Ü¥Ã¥È¤ò»ß¤á¤ë
RotateMotor(OUT_A,-100,90); // ¥¢¡¼¥à¤ò¾å¤²¤ë
PlaySound(SOUND_UP); // ²»¤òÌĤ餹
Off(OUT_A); // ¥¢¡¼¥à¤ò»ß¤á¤ë
nPoint++; // nPoint¤Ë¡Ü1¤¹¤ë(nPoint=6¤Ë¤¹¤ë)
}
}
Part8¤Ï¡¢"nPoint=5"¤Î¤È¤¡¢¥¢¡¼¥à¤ò¾å¤²¡¢¥·¥å¡¼¥È¤òÂÇ¤Ä¥×¥í¥°¥é¥à¤Ç¤¢¤ë¡£¤Þ¤¿¡¢¥·¥å¡¼¥È¤òÂǤ俸塢nPoint¤ò¡Ü1¤·¤Æ"nPoint=6"¤Ë¤¹¤ë¤³¤È¤Ç¾ò·ï¤«¤é³°¤·¡¢¥×¥í¥°¥é¥à¤ò½ªÎ»¤¹¤ë¡£
Part8¤Ï¡¢"nPoint=5"¤Î¤È¤¡¢¥¢¡¼¥à¤ò¾å¤²¡¢¥·¥å¡¼¥È¤òÂÇ¤Ä¥×¥í¥°¥é¥à¤Ç¤¢¤ë¡£
¤Þ¤¿¡¢¥·¥å¡¼¥È¤òÂǤ俸塢nPoint¤ò¡Ü1¤·¤Æ"nPoint=6"¤Ë¤¹¤ë¤³¤È¤Ç¾ò·ï¤«¤é³°¤·¡¢¥×¥í¥°¥é¥à¤ò½ªÎ»¤¹¤ë¡£
** ¼ÂºÝ¤Î¥×¥í¥°¥é¥à [#g3c01e9c]
Íý²ò¤·¤ä¤¹¤¯¤¹¤ë¤¿¤á¤ËPart¤´¤È¤Ë¶èÀڤäÆÀâÌÀ¤·¤¿¤¬¡¢¼ÂºÝ¤Î¥×¥í¥°¥é¥à¤ÏPart0¡§ÄêµÁ¡ÁPart8¤Þ¤Ç¤ò¤Ä¤Ê¤²¤¿¤â¤Î¤Ç¤¢¤ë¡£
¤Þ¤¿¡¢¼¡¤Î¤³¤È¤ËÃí°Õ¤¬É¬ÍפǤ¢¤ë¡£
+ ÅÅÃÓ»ÄÎ̤¬100¡ó¤Î¤È¤¤òÁÛÄꤷ¤Æ¥×¥í¥°¥é¥à¤òÁȤó¤À¤¿¤á¡¢ÅÅÃÓ»ÄÎ̤¬¾¯¤Ê¤¤¤ÈÀµ¾ï¤ËÆ°ºî¤·¤Ê¤¤¾ì¹ç¤¬¤¢¤ë¡£
+ ¤·¤¤¤Ãͤ¬Æü¤ä»þ´Ö¤Ë¤è¤Ã¤ÆÊѤï¤ë¤³¤È¤¬¤¢¤ë¤¿¤á¡¢¤·¤¤¤ÃͤÎÊѹ¹¤¬É¬Íפʾì¹ç¤¬¤¢¤ë¡£
* ´¶ÁÛ¡¦È¿¾Ê [#y966b4ba]
º£²ó¤Î²ÝÂê¤Ï¡¢À®¸ùΨ10³ä¤òÌܻؤ¹Ãæ¤ÇºÙ¤«¤¤¿ôÃÍÄ´À°¤¬É¬ÍפÀ¤Ã¤¿¤¿¤á¡¢Á´ÂΤÇ172¹Ô¤È¤¤¤¦ËÄÂç¤Ê¥×¥í¥°¥é¥à¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤Ã¤¿¡£
¥í¥Ü¥Ã¥È¤Ï¡¢»î¹Ôºø¸í¤ò·«¤êÊÖ¤·¤¿¤À¤±¤¢¤Ã¤Æ¥Ù¥¹¥È¤Ë¶á¤¤¤â¤Î¤òºî¤ê¾å¤²¤é¤ì¤¿¤È»×¤¦¡£ÍýÁÛ¤ò¸À¤¦¤Ê¤é¤Ð¡¢¤â¤Ã¤È¾®²ó¤ê¤ÎÍø¤¯¤è¤ê¾®·¿¤Ê¥í¥Ü¥Ã¥È¤òºî¤ê¤¿¤«¤Ã¤¿¡£
¥×¥í¥°¥é¥à¤Ï¡¢À®¸ùΨ10³ä¤òÌܻؤ¹Ãæ¤ÇƱ¤¸¤è¤¦¤Ê¥×¥í¥°¥é¥à¤Ç¤âºÙ¤«¤¤¿ôÃÍÄ´À°¤äÊѹ¹¤¬É¬ÍפÀ¤Ã¤¿¤¿¤á¡¢Á´ÂΤÇ173¹Ô¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤Ã¤¿¡£173¹Ô¤È¤¤¤¦¤Î¤¬Â¿¤¤¤Î¤«¾¯¤Ê¤¤¤Î¤«¤Ïʬ¤«¤é¤Ê¤¤¤¬¡¢¤â¤Ã¤ÈÍÆÎ̤¬¾¯¤Ê¤¯ºÑ¤à¤è¤¦¤Ê¡¢¸úΨŪ¤Ê¥×¥í¥°¥é¥à¤¬ºî¤ì¤¿¤È»×¤¦¤Î¤Ç¡¢¤³¤ì¤«¤é¤âÊÙ¶¯¤ò³¤±¤Æ¤¤¤¤¿¤¤¡£
¤Þ¤¿¡¢Åö½é¤ÏĶ²»ÇÈ¥»¥ó¥µ¡¼¤òÍøÍѤ·¤Æ¥Ü¡¼¥ë¤ò³ÎÊݤ¹¤ëͽÄê¤Ç¤¢¤Ã¤¿¤¬¡¢¤¦¤Þ¤¯¥×¥í¥°¥é¥à¤òÁȤळ¤È¤¬¤Ç¤¤º¡¢´Êñ¤ËÁȤळ¤È¤¬¤Ç¤¤ë¥¿¥¤¥Þ¡¼¤òÍøÍѤ¹¤ë¥×¥í¥°¥é¥à¤ËÊѹ¹¤·¤¿¤¿¤á¡¢À®¸ùΨ¤¬²¼¤¬¤Ã¤Æ¤·¤Þ¤Ã¤¿¡£
ºÇ½ªÅª¤ÊÀ®¸ùΨ¤Ï¡¢Àµ³Î¤Ë¿ô¤¨¤Æ·×»»¤·¤¿¤ï¤±¤Ç¤Ï¤Ê¤¤¤¬¡¢£¸¡Á£¹³ä¤Ï¤¢¤Ã¤¿¤È»×¤¦¡£ÌÜɸ¤Ç¤¢¤ë10³ä¤Ë¤ÏÆϤ«¤Ê¤«¤Ã¤¿¤¬Ëþ¤ΤǤ¤ë·ë²Ì¤È¤Ê¤Ã¤¿¡£
¼¡¤Î²ÝÂê¤Ç¤Ï¡¢ÂŶ¨¤¹¤ë¤³¤È¤Ê¤¯¡¢¥Ù¥¹¥È¤Ê¥×¥í¥°¥é¥à¤òÁȤá¤ë¤è¤¦¤Ë¤·¤¿¤¤¡£