2017b/Member/smith/Mission2
¤ò¥Æ¥ó¥×¥ì¡¼¥È¤Ë¤·¤ÆºîÀ®
[
¥È¥Ã¥×
] [
¿·µ¬
|
°ìÍ÷
|
¸¡º÷
|
ºÇ½ª¹¹¿·
|
¥Ø¥ë¥×
|
¥í¥°¥¤¥ó
]
³«»Ï¹Ô:
*¥é¥¤¥ó¥È¥ì¡¼¥¹¤ò¤·¤Ê¤¬¤é¥´¡¼¥ë¤Þ¤Ç°ÜÆ°¤¹¤ë¥í¥Ü¥Ã¥È [#a6565059]
#contents
**£±¡¡¥í¥Ü¥Ã¥È [#n8016b9d]
***¥í¥Ü¥Ã¥ÈÁ´ÂÎ [#ub8431c5]
&ref(2017b/Member/smith/Mission2/kadai2-2.jpg,30%,¥í¥Ü¥Ã¥È¤ÎÁ°Éô¡£¥¿¥¤¥ä¤òÁ°ÎØ£²ÎؤΤߤˤ·¡¢¸÷¥»¥ó¥µ¤òº¸¥¿¥¤¥ä¤Î²£¤Ë¼è¤êÉÕ¤±¤¿¡£);
&ref(2017b/Member/smith/Mission2/kadai2-3.jpg,30%,¥í¥Ü¥Ã¥È¤Î±¦Éô¡£»æ¥³¥Ã¥×¤ò¤Ä¤«¤àµ¡¹½¤Î»õ¼Ö¤ò¤¦¤Þ¤¯²óž¤µ¤»¤ë¤Î¤Ë¶ìÏ«¤·¤¿¡£);
¡¦º£²óºî¤Ã¤¿¥í¥Ü¥Ã¥È¤Ï¡¢·ÇºÜ¥¬¥¤¥É¤Ë¤¢¤ë£²¤Ä¤Î¥â¡¼¥¿¤Ç£´ÎؤòÆ°¤«¤¹¤â¤Î¤ò¥Ù¡¼¥¹¤Ë¤½¤ì¤Ë¸÷¥»¥ó¥µ¤È»æ¥³¥Ã¥×¤ò¤Ä¤«¤àµ¡¹½¤ò¼è¤êÉÕ¤±¤¿¤â¤Î¤òºîÀ®¤·¤¿¡£º¸¥¿¥¤¥ä¤Ë¥â¡¼¥¿A¤ò¡¢±¦¥¿¥¤¥ä¤Ë¥â¡¼¥¿C¤ò³äÅö¤Æ¤Æ¤¤¤ë¡£ËÜÂξåÉô¤Î¥®¥¢¤Ï¡¢»æ¥³¥Ã¥×¤ò¤Ä¤«¤àµ¡¹½¤òÆ°¤«¤¹¤¿¤á¤Î¤â¤Î¤Ç¤¢¤ë¡£¤È¤Æ¤â¶õž¤·¤ä¤¹¤¯¡¢´è¾æ¤Ë¸ÇÄꤹ¤ë¤¿¤áËÜÂξåÉô¤Ï¿¤¯¤Î¥Ö¥í¥Ã¥¯¤ò¼è¤êÉÕ¤±¤Æ¤¤¤ë¡£¸÷¥»¥ó¥µ¤Ïº¸¥¿¥¤¥ä¤Î²£¤Ë¤Ä¤±¤¿¤¬¡¢¤½¤ì¤¬¸¶°ø¤Ç»æ¥³¥Ã¥×¤¬ÃÖ¤«¤ì¤Æ¤¤¤ë±ß¤ÎÆâÉô¤òËÜÂΤ¬Ä̤뤳¤È¤Ë¤Ê¤ê¡¢»æ¥³¥Ã¥×¤ÎµóÆ°¤ËǺ¤Þ¤µ¤ì¤¿¡£¤Þ¤¿¡¢º£²ó¼«Ê¬¤¬Ã´Åö¤·¤¿¤Î¤Ï¥ë¡¼¥È£²¤Ç¤¢¤ê¡¢¼«Ê¬¤¬ÁÛÄꤷ¤¿µ¡Æ°¤Ç¤Ï±¦ÀÞ¤¬É¬ÍפǤʤ«¤Ã¤¿¤¿¤á¸òº¹ÅÀ¤ò±¦ÀÞ¤¹¤ë¥×¥í¥°¥é¥à¤ÏºîÀ®¤·¤Ê¤«¤Ã¤¿¡£
***¥¿¥¤¥ä¤ÎÌäÂê¤È²ò·è [#f6f6032a]
&ref(2017b/Member/smith/Mission2/kadai2-5.jpg,30%,¥í¥Ü¥Ã¥È¤Î΢¦¡£¸åÉô¤ÎË໤¤ò¸º¤é¤¹¤¿¤á¤Ë¤â¤È¤Ë¤¢¤Ã¤¿£²ÎؤθåÎؤÎÃæ±û¤¢¤¿¤ê¤Ë¹õ¤¤È¾µå¾õ¤ÎÉôÉʤò¤Ä¤±¤ÆÂкö¤·¤¿¡£);
¡¦¥¬¥¤¥É¤Î¥í¥Ü¥Ã¥È¤Î¤Þ¤Þ¤À¤ÈE¡ÁF´Ö¤ÎS»ú¥«¡¼¥Ö¤¬¶Ê¤¬¤êÀÚ¤ì¤Ê¤«¤Ã¤¿¤Î¤Ç¡¢¾å¿Þ¤Î¤è¤¦¤Ë¥¿¥¤¥ä¤ò¸åÎؤò³°¤·¤ÆÁ°ÎؤΤߤÎ2Îؤˡ¢¸÷¥»¥ó¥µ¤òº¸¤Î¥¿¥¤¥ä¤Î¤¹¤°¤½¤Ð¤Ë¤Ä¤±¤Æ¾®²ó¤ê¤¬Íø¤¤ä¤¹¤¯¤·¡¢¤³¤ÎÌäÂê¤ò²ò·è¤·¤è¤¦¤È¤·¤¿¡£¤·¤«¤·¡¢¸åÎؤò³°¤·¤¿¤Þ¤Þ¤À¤ÈËÜÂΤθåÉô¤¬ÃÏÌ̤˻¤¤ì¤ÆÆ°¤¤Ë¤¯¤¯¤Ê¤ë¤Î¤Ç¡¢¾å¿Þ¤Î¤è¤¦¤Ë¹õ¤¤È¾µå¾õ¤ÎË໤¤ò¸º¤é¤¹ÉôÉʤò¤Ä¤±¡¢°ìÏ¢¤ÎÌäÂê¤ò²ò·è¤·¤¿¡£
***»æ¥³¥Ã¥×¤ò¤Ä¤«¤àµ¡¹½ [#na4eb7a4]
&ref(2017b/Member/smith/Mission2/kadai2-6.jpg,30%,»æ¥³¥Ã¥×¤ò¤Ä¤«¤ó¤À¾õÂÖ);
&ref(2017b/Member/smith/Mission2/kadai2-7.jpg,30%,»æ¥³¥Ã¥×¤ò¤Ä¤«¤àÆ°ºî¤ò¿Þ¤Ë¤·¤¿¤â¤Î);
¡¦»æ¥³¥Ã¥×¤ò¤Ä¤«¤àµ¡¹½¤Ï¾å¿Þ°ìÈÖ±¦¤Î¤è¤¦¤Ë¡¢»æ¥³¥Ã¥×¤Î¤¹¤°¸å¤í¤ËËÜÂΤ¬¤¿¤É¤êÃ夯Á°¤Þ¤ÇËÜÂθåÉô¤Ë¤¢¤ê¡¢»æ¥³¥Ã¥×¤ò¤Ä¤«¤à¤È¤¤À¤±Á°¤ËÆ°¤¯¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤ë¡£¤³¤Îµ¡¹½¤Ë¤Ï¥â¡¼¥¿B¤ò³ä¤êÅö¤Æ¤Æ¤¤¤Æ¡¢B¤òÁ°¿Ê¤Ç»æ¥³¥Ã¥×¤ò¤Ä¤«¤ß¡¢¸å¿Ê¤Ç»æ¥³¥Ã¥×¤ò¤Ï¤Ê¤¹¡£ËÜÂΤÎÀâÌÀ¤Ç½ñ¤¤¤¿Ä̤êËÜÂΤ¬±ß¤ÎÆâÉô¤òÄ̤ë»ÅÍͤΤ¿¤á¡¢»æ¥³¥Ã¥×¤òÃÖ¤¯¤È¤¤Ë¾¯¤·±ü¤ËÃÖ¤«¤Ê¤¤¤ÈËÜÂΤ¬Ä̤ꤹ¤®¤ë¤È¤¤Ë»æ¥³¥Ã¥×¤ËÅö¤¿¤ê±ß¤Ë¼ý¤Þ¤é¤Ê¤¤¾ì¹ç¤¬¤¢¤Ã¤¿¤Î¤Ç¤½¤ÎÄ´À°¤Ë¡¢¤Þ¤¿¤³¤Îµ¡¹½¤¬·ë¹½½Å¤¯¡¢¤½¤Îʬ¥â¡¼¥¿¤Èµ¡¹½¤ò²óž¤µ¤»¤ë¥®¥¢¤¬¶õž¤·¤ä¤¹¤«¤Ã¤¿¤Î¤Ç¤½¤Î£²¤Ä¤ò¸Ç¤¯¸ÇÄꤹ¤ë¤Î¤Ë¶ìÀ路¤¿¡£
**£²¡¡¥×¥í¥°¥é¥à [#v88f3c69]
¡¦º£²ó¤Î²ÝÂê¤Ï¡¢ºÇ½é¤Î²ÝÂê¤è¤ê¤â¤è¤êÊ£»¨¤Ë¤Ê¤ê¡¢¤½¤Îʬ¥×¥í¥°¥é¥à¤ÎÎ̤âÂ礤¯¤Ê¤Ã¤¿¡£
***´ðÁÃÉôʬ [#j07930c0]
#define Threshold 40 //¥»¥ó¥µ¤ÎÆɤ߼è¤ì¤ëÈϰϤÎÃæ±ûÃÍ
#define Hp 7 //¥Ñ¥ï¡¼Âç
#define Mp 1 //¥Ñ¥ï¡¼Ãæ
#define Lp 0 //¥Ñ¥ï¡¼¾®
#define Cross_time 15 //¸òº¹ÅÀ¤ò²£ÀÚ¤ë»þ´Ö
#define Set_power_h SetPower(OUT_AC,Hp); //º¸±¦¤Î¥Ñ¥ï¡¼Âç
#define Set_power_m SetPower(OUT_AC,Mp); //º¸±¦¤Î¥Ñ¥ï¡¼Ãæ
#define Set_power_l SetPower(OUT_AC,Lp); //º¸±¦¤Î¥Ñ¥ï¡¼¾®
#define Go_forward Set_power_h; OnFwd(OUT_AC); //¥Ñ¥ï¡¼Âç¤ÇÁ°¿Ê
#define Back Set_power_h; OnRev(OUT_AC); //¥Ñ¥ï¡¼Âç¤Ç¸å¿Ê
#define Turn_right_l Set_power_m; OnFwd(OUT_A); Off(OUT_C); //¥Ñ¥ï¡¼Ãæ¤Ç±¦ÀÞ
#define Turn_right_h Set_power_l; OnFwd(OUT_A); OnRev(OUT_C); //¥Ñ¥ï¡¼¾®¤Ç±¦Àû²ó
#define Turn_left_l Set_power_m; Off(OUT_A); OnFwd(OUT_C); //¥Ñ¥ï¡¼Ãæ¤Çº¸ÀÞ
#define Turn_left_h Set_power_l; OnRev(OUT_A); OnFwd(OUT_C); //¥Ñ¥ï¡¼¾®¤Çº¸Àû²ó
#define Break Off(OUT_AC); Wait(100); //¾®µÙ·Æ
#define Cross Set_power_h; OnFwd(OUT_AC); Wait(Cross_time); //¥Ñ¥ï¡¼Âç¤Ç¤Î¸òº¹ÅÀ¤Î²£ÃÇ
#define Step 1 //¥é¥¤¥ó¤Î¸¡ÃδֳÖ
#define Max 5 //¸òº¹ÅÀ¤ÎȽÄꤹ¤ë¤È¤¤ÎËÜÂΤ¬º¸ÀÞ¤¹¤ë»þ´Ö
#define N2_time 200 //¥µ¥Ö¥ë¡¼¥Á¥óN2¤ÎÆ°ºî¤¹¤ë»þ´Ö
#define S_time 1000 //¥µ¥Ö¥ë¡¼¥Á¥óS¤ÎÆ°ºî¤¹¤ë»þ´Ö
¡¦¤³¤ÎÉôʬ¤Ï¡¢¤³¤³¤«¤é²¼¤Î¥µ¥Ö¥ë¡¼¥Á¥ó¡¦¥á¥¤¥ó¥×¥í¥°¥é¥à¤Ë»ÈÍѤ¹¤ë¸÷¥»¥ó¥µ¤ÎÃͤÎÈϰϤä¥â¡¼¥¿¤Î¥Ñ¥ï¡¼¤ÎÂ礤µ¡¢¥»¥ó¥µ¤Î¸¡Ãδֳ֤ʤɤòÀßÄꤷ¤Æ¤¤¤ë¡£
¡¦¸÷¤ÎÈϰϤδð½àÃͤÏ40¤Ë¤·¤Æ¡¢¤½¤³¤«¤é°ìÄêÃͤ·¤¿¤ê°ú¤¤¤¿¤ê¤·¤ÆÈϰϤòÄ´À°¤·¤Æ¤¤¤ë¡£
¡¦¸÷¤ÎÌÀ¤ë¤µ¤Ë¤è¤ëËÜÂΤÎÆ°¤¤Ï5¥Ñ¥¿¡¼¥ó¤Ç¤¢¤ê¡¢Ä¾¿Ê¤Î¾ì¹ç¤Ï¥â¡¼¥¿¤Î¥Ñ¥ï¡¼¤ò7¤Ë¡¢±¦¡¦º¸Àޤξì¹ç¤Ï¥â¡¼¥¿¤Î¥Ñ¥ï¡¼¤ò1¤Ë¡¢±¦¡¦º¸Àû²ó¤Î¾ì¹ç¤Ï¥â¡¼¥¿¤Î¥Ñ¥ï¡¼¤ò0¤Ë¤·¤Æ¤¤¤ë¡£¤Þ¤¿¡¢»æ¥³¥Ã¥×¤òÃÖ¤¤¤¿¸åÀþ¾å¤ËÌá¤ë¤¿¤á¤Ë¸å¿Ê¤¹¤ë¤È¤¤Î¥â¡¼¥¿¤Î¥Ñ¥ï¡¼¤â7¤Ç¤¢¤ë¡£
¡¦¸÷¥»¥ó¥µ¤Î¸¡ÃΤ¹¤ë´Ö³Ö¤Ï0.01É䴤Ȥˤ·¤Æ¤¤¤ë¡£
***¸òº¹ÅÀ²£ÃǤΥµ¥Ö¥ë¡¼¥Á¥ó [#s42b216f]
sub C()
{
SetSensor(SENSOR_2, SENSOR_LIGHT); //¥»¥ó¥µ¤ÎÄêµÁ
int Online=0; //º¸Àû²ó¤Î¥«¥¦¥ó¥È
int Cross_count=0; //¸òº¹ÅÀ¤òÄ̲ᤷ¤¿²ó¿ô
while (Cross_count < 1) { //¸òº¹ÅÀ¤òÄ̲᤹¤ë¤Þ¤Ç
while (Online < Max) { //º¸Àû²ó¤ò5²óϢ³¤¹¤ë¤Þ¤Ç
if (SENSOR_2 < Threshold - 5) { //¥»¥ó¥µ¤ÎÃͤ¬35̤Ëþ¤Î»þº¸Àû²ó¡¢²»¤òÌĤ餷¤Æ Online¤Î¥«¥¦¥ó¥È¤ò1¤¹
Turn_left_h;
PlayTone(523,1);
Online++;
} else {
if (SENSOR_2 < Threshold - 2) { //¥»¥ó¥µ¤ÎÃͤ¬35°Ê¾å¡¢38̤Ëþ¤Î»þº¸ÀÞ
Turn_left_l;
} else if (SENSOR_2 < Threshold + 2) { //¥»¥ó¥µ¤ÎÃͤ¬38°Ê¾å¡¢42̤Ëþ¤Î»þľ¿Ê
Go_forward;
} else if (SENSOR_2 < Threshold + 5) { //¥»¥ó¥µ¤ÎÃͤ¬42°Ê¾å¡¢45̤Ëþ¤Î»þ±¦ÀÞ
Turn_right_l;
} else { //¥»¥ó¥µ¤ÎÃͤ¬45°Ê¾å¤Î»þ¡¢±¦Àû²ó
Turn_right_h;
}
Online=0; //º¸Àû²ó°Ê³°¤Î»þ¡¢Online¤ÎÃͤò¥ê¥»¥Ã¥È
}
Wait(Step); //0.01É䴤ȤËÀþ¤ò¸¡ÃÎ
}
Break; //¾®µÙ·Æ
Turn_right_h; //0.3Éôֱ¦Àû²ó
Wait(30);
Cross; //¸òº¹ÅÀ¤ò²£ÃÇ
Online=0; //Online¤ÎÃͤò¥ê¥»¥Ã¥È
Cross_count++; //Cross_count¤ò1¤·¤Æ¤³¤Î¥ë¡¼¥Á¥ó¤ò½ªÎ»¡¢¼¡¤Î¥ë¡¼¥Á¥ó¤Ø
}
}
¡¦¸òº¹ÅÀ¤ò²£ÃǤ¹¤ë¤È¤¤Î¥µ¥Ö¥ë¡¼¥Á¥ó¡£¸÷¥»¥ó¥µ¤¬¡Á34¤Ç¤Ïº¸Àû²ó¡¢35¡Á37¤Ïº¸ÀÞ¡¢38¡Á41¤Ç¤Ïľ¿Ê¡¢42¡Á45¤Ç¤Ï±¦ÀÞ¡¢46¡Á¤Ç¤Ï±¦Àû²ó¤¹¤ë¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤ë¡£
¡¦¸òº¹ÅÀ²£ÃǤϡ¢¤³¤Î¥µ¥Ö¥ë¡¼¥Á¥óÆâ¤Çº¸Àû²ó¤ò0.05ÉôÖϢ³¤Ç¸¡ÃΤ·¤¿¾ì¹ç¤Ë¤¹¤ë¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤ë¡£¡ÖOnline¡×¤Ïº¸Àû²ó¤ò¤·¤¿²ó¿ô¤ò¥«¥¦¥ó¥È¤·¡¢¤½¤ì°Ê³°¤Î¹ÔÆ°¤ò¤·¤¿¤È¤¤Ï¤³¤ÎÃͤò¥ê¥»¥Ã¥È¤·¤Æ¤¤¤ë¡£
¡¦¡ÖOnline¡×¤ÎÃͤ¬5¤Ë¤Ê¤ë¤È¥é¥¤¥ó¥È¥ì¡¼¥¹¤Î¥ë¡¼¥×¤«¤é³°¤ì¡¢£±Éôֻߤޤ俸å¤Ë¸òº¹ÅÀ¤ò²£ÃǤ·¤Æ¡ÖOnline¡×¤ò¥ê¥»¥Ã¥È¤·¡¢¸òº¹ÅÀ¤òÄ̲ᤷ¤¿²ó¿ô¤ò¥«¥¦¥ó¥È¤¹¤ë¡ÖCross_count¡×¤Ë£±¤ò¤·¤Æ¤³¤Î¥µ¥Ö¥ë¡¼¥Á¥ó¤Î¥ë¡¼¥×¤«¤é³°¤ì¤ë¡£
***¸òº¹ÅÀº¸ÀޤΥµ¥Ö¥ë¡¼¥Á¥ó¡ [#h98b52a3]
sub N1()
{
SetSensor(SENSOR_2, SENSOR_LIGHT); //¥»¥ó¥µ¤ÎÄêµÁ
int Online=0; //º¸Àû²ó¤Î¥«¥¦¥ó¥È
int Cross_count=0; //¸òº¹ÅÀ¤òÄ̲ᤷ¤¿²ó¿ô
while (Cross_count < 1) { //¸òº¹ÅÀ¤òÄ̲᤹¤ë¤Þ¤Ç
while (Online < Max) { //º¸Àû²ó¤ò5²óϢ³¤¹¤ë¤Þ¤Ç
if (SENSOR_2 < Threshold - 5) { //º¸Àû²ó¡ÊÈϰϤϸòº¹ÅÀ²£ÃǤΥµ¥Ö¥ë¡¼¥Á¥ó¤ÈƱ¤¸¡¢°Ê²¼Æ±¡Ë¡¢²»¤òÌĤ餷Online¤Î¥«¥¦¥ó¥È¤ò1¤¹
Turn_left_h;
PlayTone(523,1);
Online++;
} else {
if (SENSOR_2 < Threshold - 2) { //º¸ÀÞ
Turn_left_l;
} else if (SENSOR_2 < Threshold + 2) { //ľ¿Ê
Go_forward;
} else if (SENSOR_2 < Threshold + 5) { //±¦ÀÞ
Turn_right_l;
} else { //±¦Àû²ó
Turn_right_h;
}
Online=0; //º¸Àû²ó°Ê³°¤Î»þ¡¢Online¤ÎÃͤò¥ê¥»¥Ã¥È
}
Wait(Step); //0.01É䴤ȤËÀþ¤ò¸¡ÃÎ
}
Break; //¾®µÙ·Æ
Cross_count++; //Cross_count¤ò1¤·¤Æ¤³¤Î¥ë¡¼¥Á¥ó¤ò½ªÎ»¡¢¼¡¤Î¥ë¡¼¥Á¥ó¤Ø
}
}
¡¦¸òº¹ÅÀ¤òº¸ÀÞ¤¹¤ë¤È¤¤Î¥µ¥Ö¥ë¡¼¥Á¥ó¡£¥é¥¤¥ó¥È¥ì¡¼¥¹¤Î¥×¥í¥°¥é¥à¤Ï²£ÃǤξì¹ç¤ÈƱ¤¸¤À¤¬¡¢¥é¥¤¥ó¥È¥ì¡¼¥¹¤Î¥ë¡¼¥×¤ò³°¤ì¤¿¸å¤½¤Î¤Þ¤Þ¡ÖCross_count¡×¤Ë£±¤ò¤·¤Æ¥µ¥Ö¥ë¡¼¥Á¥óN2¤Ë¿Ê¤à¡£
***¸òº¹ÅÀº¸ÀޤΥµ¥Ö¥ë¡¼¥Á¥ó¢ [#x5f2f3af]
sub N2()
{
SetSensor(SENSOR_2, SENSOR_LIGHT); //¥»¥ó¥µ¤òÄêµÁ
ClearTimer(0); //¥¿¥¤¥Þ¤ò¥ê¥»¥Ã¥È
while (FastTimer(0) < N2_time) { //¥¿¥¤¥Þ¤¬2Éäˤʤë¤Þ¤Ç
if (SENSOR_2 < Threshold - 5) { //º¸Àû²ó
Turn_left_h;
} else if (SENSOR_2 < Threshold - 2) { //º¸ÀÞ
Turn_left_l;
} else if (SENSOR_2 < Threshold + 2) { //ľ¿Ê
Go_forward;
} else if (SENSOR_2 < Threshold + 5) { //±¦ÀÞ
Turn_right_l;
} else { //±¦Àû²ó
Turn_right_h;
}
}
}
¡¦¥µ¥Ö¥ë¡¼¥Á¥óN1¤À¤±¤Ç¼Â¹Ô¤¹¤ë¤È¡¢¸òº¹ÅÀº¸ÀÞľ¸å¤ËÀþ¾å¤ËÉüµ¢¤¹¤ë¤È¤¤Ëº¸Àû²ó¤ò¤·¤Æ¡ÖOnline¡×¤¬N1¤Î¥ë¡¼¥×¤Î¾ò·ï¤òËþ¤¿¤·¤Æ¸íºîÆ°¤·¤Æ¤·¤Þ¤¦¤Î¤Ç¡¢¤³¤ì¤òËɤ°¤¿¤á¤ËN1¤Îľ¸å¤Ë£²Éô֥饤¥ó¥È¥ì¡¼¥¹¤Î¤ß¤ò¤¹¤ë¥µ¥Ö¥ë¡¼¥Á¥óN2¤ò¼Â¹Ô¤¹¤ë¡£
***E¡ÁF´Ö¤ÎS»ú¥«¡¼¥ÖÉôʬ¤Î¥µ¥Ö¥ë¡¼¥Á¥ó [#h6e8519f]
sub S()
{
SetSensor(SENSOR_2, SENSOR_LIGHT); //¥»¥ó¥µ¤òÄêµÁ
ClearTimer(0); //¥¿¥¤¥Þ¤ò¥ê¥»¥Ã¥È
while (FastTimer(0) < S_time) { //¥¿¥¤¥Þ¤¬10Éäˤʤë¤Þ¤Ç
if (SENSOR_2 < Threshold - 5) { //º¸Àû²ó
Turn_left_h;
} else if (SENSOR_2 < Threshold - 2) { //º¸ÀÞ
Turn_left_l;
} else if (SENSOR_2 < Threshold + 2) { //ľ¿Ê
Go_forward;
} else if (SENSOR_2 < Threshold + 5) { //±¦ÀÞ
Turn_right_l;
} else { //±¦Àû²ó
Turn_right_h;
}
}
}
¡¦E¡ÁF´Ö¤ÏµÞ¤ÊS»ú¥«¡¼¥Ö¤Ë¤Ê¤Ã¤Æ¤¤¤Æ¡¢¤³¤³¤âº¸Àû²ó¤¬µ¯¤³¤ê¤ä¤¹¤¯¥µ¥Ö¥ë¡¼¥Á¥óN1¤¬¸íºîÆ°¤ò¤ª¤³¤¹¤Î¤Ç10Éô֥饤¥ó¥È¥ì¡¼¥¹¤Î¤ß¤ò¤¹¤ë¥µ¥Ö¥ë¡¼¥Á¥óS¤ò¼Â¹Ô¤·¤ÆÂкö¤·¤Æ¤¤¤ë¡£
***»æ¥³¥Ã¥×¤ò¤Ä¤«¤à¥µ¥Ö¥ë¡¼¥Á¥ó¡¦¤Ï¤Ê¤¹¥µ¥Ö¥ë¡¼¥Á¥ó [#f76d8d75]
sub MFwd()
{
OnFwd(OUT_B); //µ¡¹½¤ò0.5Éô־夲¤ë
Wait(50);
Off(OUT_B);
}
sub MRev()
{
OnRev(OUT_B); //µ¡¹½¤ò0.5Éôֲ¼¤²¤ë
Wait(50);
Off(OUT_B);
}
¡¦»æ¥³¥Ã¥×¤ò¤Ä¤«¤à¡¦¤Ï¤Ê¤¹¥µ¥Ö¥ë¡¼¥Á¥ó¡£MFwd¤¬¤Ä¤«¤ß¡¢MRev¤¬¤Ï¤Ê¤¹¥µ¥Ö¥ë¡¼¥Á¥ó¤Ç¤¢¤ë¡£»æ¥³¥Ã¥×¤ò¤Ä¤«¤à¡¦¤Ï¤Ê¤¹ÃÏÅÀ¤ËÍ褿»þ¤Ë0.5Éô֥⡼¥¿B¤òÆ°¤«¤¹¡£
***»æ¥³¥Ã¥×¤òÃÖ¤¯¤¿¤á¤Ë±ßPQR¤ÎÃæ¿´¤Ë°ÜÆ°¤¹¤ë¥µ¥Ö¥ë¡¼¥Á¥ó¡¦Ìá¤ë¥µ¥Ö¥ë¡¼¥Á¥ó [#r616e487]
sub R1()
{
Turn_right_h; //1.2Éôֱ¦Àû²ó
Wait(120);
Go_forward; //0.5ÉôÖľ¿Ê
Wait(50);
Break; //¾®µÙ·Æ
}
sub R2()
{
Back; //0.5Éôָå¿Ê
Wait(50);
Turn_left_h; //1.2Éôֺ¸Àû²ó
Wait(120);
Break; //¾®µÙ·Æ
}
¡¦¥ë¡¼¥È£²¤Î¾ì¹ç±ßS¤Ç»æ¥³¥Ã¥×¤ò¤Ä¤«¤ß¡¢±ßPQR¤ÎÃæ±û¤Ç¤Ï¤Ê¤¹É¬Íפ¬¤¢¤ë¡£¤Ä¤«¤à¾ì¹ç¤ÏÃæ¿´¤Ë¹Ô¤«¤Ê¤¯¤Æ¤âËÜÂΤ¬±ß¤ÎÆ⦴ó¤ê¤ËÁö¤Ã¤Æ¤¤¤ë¤Î¤Ç¤½¤Î¤Þ¤Þ¼Â¹Ô¤Ç¤¤ë¤¬¡¢¤Ï¤Ê¤¹¾ì¹ç¤ÏÃæ¿´¤Ë¹Ô¤¯É¬Íפ¬¤¢¤ë¡£¥µ¥Ö¥ë¡¼¥Á¥óR1¤ÏÃæ¿´¤Ë¹Ô¤¯¤¿¤á¤Î¡¢R2¤Ï¸µ¤ÎÀþ¾å¤ËÌá¤ë¤¿¤á¤Î¥×¥í¥°¥é¥à¤Ç¤¢¤ë¡£
***¥á¥¤¥ó¥×¥í¥°¥é¥à [#o4faff30]
task main() //¥á¥¤¥ó¤Î¥×¥í¥°¥é¥à
{
Go_forward;
Wait(30);
C(); //C¤òľ¿Ê
N1(); //B¤òº¸ÀÞ
N2();
N1(); //P¤òº¸ÀÞ
N2();
C(); //Q¤òľ¿Ê
N1(); //R¤òº¸ÀÞ
N2();
N1(); //E¤ò¶Ê¤¬¤ë
N2();
S(); //S»ú¥«¡¼¥Ö
N1(); //F¤òº¸ÀÞ
N2();
C(); //S¤òľ¿Ê
MRev(); //»æ¥³¥Ã¥×¤ò¤Ä¤«¤à
C(); //S¤òľ¿Ê
N1(); //Q¤òº¸ÀÞ
N2();
C(); //R¤òľ¿Ê
R1(); //±ßPQR¤ÎÃæ¿´¤Ë¸þ¤«¤¦
MFwd(); //»æ¥³¥Ã¥×¤òÃÖ¤¯
R2(); //Àþ¾å¤ËÌá¤ë
N1(); //P¤òº¸ÀÞ
N2();
N1(); //B¤òº¸ÀÞ
N2();
C(); //A¤Ë¿¯Æþ
Go_forward;
Wait(30);
Break;
}
¡¦¤³¤ì¤é¤Î8¤Ä¤Î¥µ¥Ö¥ë¡¼¥Á¥ó¤òÁȤ߹ç¤ï¤»¤Æ¡¢
D¡¡¢ª¡¡C¤òľ¿Ê¡¡¢ª¡¡B¤òº¸ÀÞ¡¡¢ª¡¡P¤òº¸ÀÞ¡¡¢ª¡¡Q¤òľ¿Ê¡¡¢ª¡¡R¤òº¸ÀÞ¡¡¢ª¡¡E¡ÁF´Ö¤ÎS»ú¥«¡¼¥Ö¡¡¢ª¡¡F¤òº¸ÀÞ¡¡¢ª¡¡S¤òľ¿Ê¡¡¢ª¡¡»æ¥³¥Ã¥×¤ò¤Ä¤«¤à¡¡¢ª¡¡S¤òľ¿Ê¡¡¢ª¡¡Q¤òº¸ÀÞ¡¡¢ª¡¡R¤òľ¿Ê¡¡¢ª¡¡±ßPQR¤ÎÃæ±û¤Ë»æ¥³¥Ã¥×¤ò¤Ï¤Ê¤¹¡¡¢ª¡¡Ìá¤ë¡¡¢ª¡¡P¤òº¸ÀÞ¡¡¢ª¡¡B¤òº¸ÀÞ¡¡¢ª¡¡A
¤Î¹ÔÆ°½ç¤Ë¤Ê¤ë¤è¤¦¤Ë¤·¤¿¡£
**£³¡¡¼Â¹Ô·ë²Ì [#sa02b435]
¡¦¤³¤Î¥í¥Ü¥Ã¥È¤òËÜÈ֤Ǽ¹Ԥ·¤¿·ë²Ì¡¢¥â¡¼¥¿B¤ÎÀÜ¿¨ÉÔÎɤǻ楳¥Ã¥×¤ò¤Ä¤«¤à¡¦¤Ï¤Ê¤¹µ¡¹½¤¬Æ°¤«¤Ê¤«¤Ã¤¿¤¬¡¢¥é¥¤¥ó¥È¥ì¡¼¥¹¼«ÂΤϤ¦¤Þ¤¯¤¤¤¸Ä¿ÍŪ¤Ë¤ÏËþ¤Τ¤¤¯·ë²Ì¤È¤Ê¤Ã¤¿¡£¤¢¤Þ¤ê¤¦¤Þ¤¯¤¤¤«¤Ê¤«¤Ã¤¿Á°¤Î²ÝÂê¤ÎÈ¿¾Ê¤â³è¤«¤»¤ë¤³¤È¤¬¤Ç¤¤¿¤È»×¤¦¡£¤³¤ÎÄ´»Ò¤Ç²ÝÂꣳ¤Î¥í¥Ü¥³¥ó¤â¤¬¤ó¤Ð¤Ã¤Æ¤¤¤¤¿¤¤¤È»×¤¦¡£
½ªÎ»¹Ô:
*¥é¥¤¥ó¥È¥ì¡¼¥¹¤ò¤·¤Ê¤¬¤é¥´¡¼¥ë¤Þ¤Ç°ÜÆ°¤¹¤ë¥í¥Ü¥Ã¥È [#a6565059]
#contents
**£±¡¡¥í¥Ü¥Ã¥È [#n8016b9d]
***¥í¥Ü¥Ã¥ÈÁ´ÂÎ [#ub8431c5]
&ref(2017b/Member/smith/Mission2/kadai2-2.jpg,30%,¥í¥Ü¥Ã¥È¤ÎÁ°Éô¡£¥¿¥¤¥ä¤òÁ°ÎØ£²ÎؤΤߤˤ·¡¢¸÷¥»¥ó¥µ¤òº¸¥¿¥¤¥ä¤Î²£¤Ë¼è¤êÉÕ¤±¤¿¡£);
&ref(2017b/Member/smith/Mission2/kadai2-3.jpg,30%,¥í¥Ü¥Ã¥È¤Î±¦Éô¡£»æ¥³¥Ã¥×¤ò¤Ä¤«¤àµ¡¹½¤Î»õ¼Ö¤ò¤¦¤Þ¤¯²óž¤µ¤»¤ë¤Î¤Ë¶ìÏ«¤·¤¿¡£);
¡¦º£²óºî¤Ã¤¿¥í¥Ü¥Ã¥È¤Ï¡¢·ÇºÜ¥¬¥¤¥É¤Ë¤¢¤ë£²¤Ä¤Î¥â¡¼¥¿¤Ç£´ÎؤòÆ°¤«¤¹¤â¤Î¤ò¥Ù¡¼¥¹¤Ë¤½¤ì¤Ë¸÷¥»¥ó¥µ¤È»æ¥³¥Ã¥×¤ò¤Ä¤«¤àµ¡¹½¤ò¼è¤êÉÕ¤±¤¿¤â¤Î¤òºîÀ®¤·¤¿¡£º¸¥¿¥¤¥ä¤Ë¥â¡¼¥¿A¤ò¡¢±¦¥¿¥¤¥ä¤Ë¥â¡¼¥¿C¤ò³äÅö¤Æ¤Æ¤¤¤ë¡£ËÜÂξåÉô¤Î¥®¥¢¤Ï¡¢»æ¥³¥Ã¥×¤ò¤Ä¤«¤àµ¡¹½¤òÆ°¤«¤¹¤¿¤á¤Î¤â¤Î¤Ç¤¢¤ë¡£¤È¤Æ¤â¶õž¤·¤ä¤¹¤¯¡¢´è¾æ¤Ë¸ÇÄꤹ¤ë¤¿¤áËÜÂξåÉô¤Ï¿¤¯¤Î¥Ö¥í¥Ã¥¯¤ò¼è¤êÉÕ¤±¤Æ¤¤¤ë¡£¸÷¥»¥ó¥µ¤Ïº¸¥¿¥¤¥ä¤Î²£¤Ë¤Ä¤±¤¿¤¬¡¢¤½¤ì¤¬¸¶°ø¤Ç»æ¥³¥Ã¥×¤¬ÃÖ¤«¤ì¤Æ¤¤¤ë±ß¤ÎÆâÉô¤òËÜÂΤ¬Ä̤뤳¤È¤Ë¤Ê¤ê¡¢»æ¥³¥Ã¥×¤ÎµóÆ°¤ËǺ¤Þ¤µ¤ì¤¿¡£¤Þ¤¿¡¢º£²ó¼«Ê¬¤¬Ã´Åö¤·¤¿¤Î¤Ï¥ë¡¼¥È£²¤Ç¤¢¤ê¡¢¼«Ê¬¤¬ÁÛÄꤷ¤¿µ¡Æ°¤Ç¤Ï±¦ÀÞ¤¬É¬ÍפǤʤ«¤Ã¤¿¤¿¤á¸òº¹ÅÀ¤ò±¦ÀÞ¤¹¤ë¥×¥í¥°¥é¥à¤ÏºîÀ®¤·¤Ê¤«¤Ã¤¿¡£
***¥¿¥¤¥ä¤ÎÌäÂê¤È²ò·è [#f6f6032a]
&ref(2017b/Member/smith/Mission2/kadai2-5.jpg,30%,¥í¥Ü¥Ã¥È¤Î΢¦¡£¸åÉô¤ÎË໤¤ò¸º¤é¤¹¤¿¤á¤Ë¤â¤È¤Ë¤¢¤Ã¤¿£²ÎؤθåÎؤÎÃæ±û¤¢¤¿¤ê¤Ë¹õ¤¤È¾µå¾õ¤ÎÉôÉʤò¤Ä¤±¤ÆÂкö¤·¤¿¡£);
¡¦¥¬¥¤¥É¤Î¥í¥Ü¥Ã¥È¤Î¤Þ¤Þ¤À¤ÈE¡ÁF´Ö¤ÎS»ú¥«¡¼¥Ö¤¬¶Ê¤¬¤êÀÚ¤ì¤Ê¤«¤Ã¤¿¤Î¤Ç¡¢¾å¿Þ¤Î¤è¤¦¤Ë¥¿¥¤¥ä¤ò¸åÎؤò³°¤·¤ÆÁ°ÎؤΤߤÎ2Îؤˡ¢¸÷¥»¥ó¥µ¤òº¸¤Î¥¿¥¤¥ä¤Î¤¹¤°¤½¤Ð¤Ë¤Ä¤±¤Æ¾®²ó¤ê¤¬Íø¤¤ä¤¹¤¯¤·¡¢¤³¤ÎÌäÂê¤ò²ò·è¤·¤è¤¦¤È¤·¤¿¡£¤·¤«¤·¡¢¸åÎؤò³°¤·¤¿¤Þ¤Þ¤À¤ÈËÜÂΤθåÉô¤¬ÃÏÌ̤˻¤¤ì¤ÆÆ°¤¤Ë¤¯¤¯¤Ê¤ë¤Î¤Ç¡¢¾å¿Þ¤Î¤è¤¦¤Ë¹õ¤¤È¾µå¾õ¤ÎË໤¤ò¸º¤é¤¹ÉôÉʤò¤Ä¤±¡¢°ìÏ¢¤ÎÌäÂê¤ò²ò·è¤·¤¿¡£
***»æ¥³¥Ã¥×¤ò¤Ä¤«¤àµ¡¹½ [#na4eb7a4]
&ref(2017b/Member/smith/Mission2/kadai2-6.jpg,30%,»æ¥³¥Ã¥×¤ò¤Ä¤«¤ó¤À¾õÂÖ);
&ref(2017b/Member/smith/Mission2/kadai2-7.jpg,30%,»æ¥³¥Ã¥×¤ò¤Ä¤«¤àÆ°ºî¤ò¿Þ¤Ë¤·¤¿¤â¤Î);
¡¦»æ¥³¥Ã¥×¤ò¤Ä¤«¤àµ¡¹½¤Ï¾å¿Þ°ìÈÖ±¦¤Î¤è¤¦¤Ë¡¢»æ¥³¥Ã¥×¤Î¤¹¤°¸å¤í¤ËËÜÂΤ¬¤¿¤É¤êÃ夯Á°¤Þ¤ÇËÜÂθåÉô¤Ë¤¢¤ê¡¢»æ¥³¥Ã¥×¤ò¤Ä¤«¤à¤È¤¤À¤±Á°¤ËÆ°¤¯¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤ë¡£¤³¤Îµ¡¹½¤Ë¤Ï¥â¡¼¥¿B¤ò³ä¤êÅö¤Æ¤Æ¤¤¤Æ¡¢B¤òÁ°¿Ê¤Ç»æ¥³¥Ã¥×¤ò¤Ä¤«¤ß¡¢¸å¿Ê¤Ç»æ¥³¥Ã¥×¤ò¤Ï¤Ê¤¹¡£ËÜÂΤÎÀâÌÀ¤Ç½ñ¤¤¤¿Ä̤êËÜÂΤ¬±ß¤ÎÆâÉô¤òÄ̤ë»ÅÍͤΤ¿¤á¡¢»æ¥³¥Ã¥×¤òÃÖ¤¯¤È¤¤Ë¾¯¤·±ü¤ËÃÖ¤«¤Ê¤¤¤ÈËÜÂΤ¬Ä̤ꤹ¤®¤ë¤È¤¤Ë»æ¥³¥Ã¥×¤ËÅö¤¿¤ê±ß¤Ë¼ý¤Þ¤é¤Ê¤¤¾ì¹ç¤¬¤¢¤Ã¤¿¤Î¤Ç¤½¤ÎÄ´À°¤Ë¡¢¤Þ¤¿¤³¤Îµ¡¹½¤¬·ë¹½½Å¤¯¡¢¤½¤Îʬ¥â¡¼¥¿¤Èµ¡¹½¤ò²óž¤µ¤»¤ë¥®¥¢¤¬¶õž¤·¤ä¤¹¤«¤Ã¤¿¤Î¤Ç¤½¤Î£²¤Ä¤ò¸Ç¤¯¸ÇÄꤹ¤ë¤Î¤Ë¶ìÀ路¤¿¡£
**£²¡¡¥×¥í¥°¥é¥à [#v88f3c69]
¡¦º£²ó¤Î²ÝÂê¤Ï¡¢ºÇ½é¤Î²ÝÂê¤è¤ê¤â¤è¤êÊ£»¨¤Ë¤Ê¤ê¡¢¤½¤Îʬ¥×¥í¥°¥é¥à¤ÎÎ̤âÂ礤¯¤Ê¤Ã¤¿¡£
***´ðÁÃÉôʬ [#j07930c0]
#define Threshold 40 //¥»¥ó¥µ¤ÎÆɤ߼è¤ì¤ëÈϰϤÎÃæ±ûÃÍ
#define Hp 7 //¥Ñ¥ï¡¼Âç
#define Mp 1 //¥Ñ¥ï¡¼Ãæ
#define Lp 0 //¥Ñ¥ï¡¼¾®
#define Cross_time 15 //¸òº¹ÅÀ¤ò²£ÀÚ¤ë»þ´Ö
#define Set_power_h SetPower(OUT_AC,Hp); //º¸±¦¤Î¥Ñ¥ï¡¼Âç
#define Set_power_m SetPower(OUT_AC,Mp); //º¸±¦¤Î¥Ñ¥ï¡¼Ãæ
#define Set_power_l SetPower(OUT_AC,Lp); //º¸±¦¤Î¥Ñ¥ï¡¼¾®
#define Go_forward Set_power_h; OnFwd(OUT_AC); //¥Ñ¥ï¡¼Âç¤ÇÁ°¿Ê
#define Back Set_power_h; OnRev(OUT_AC); //¥Ñ¥ï¡¼Âç¤Ç¸å¿Ê
#define Turn_right_l Set_power_m; OnFwd(OUT_A); Off(OUT_C); //¥Ñ¥ï¡¼Ãæ¤Ç±¦ÀÞ
#define Turn_right_h Set_power_l; OnFwd(OUT_A); OnRev(OUT_C); //¥Ñ¥ï¡¼¾®¤Ç±¦Àû²ó
#define Turn_left_l Set_power_m; Off(OUT_A); OnFwd(OUT_C); //¥Ñ¥ï¡¼Ãæ¤Çº¸ÀÞ
#define Turn_left_h Set_power_l; OnRev(OUT_A); OnFwd(OUT_C); //¥Ñ¥ï¡¼¾®¤Çº¸Àû²ó
#define Break Off(OUT_AC); Wait(100); //¾®µÙ·Æ
#define Cross Set_power_h; OnFwd(OUT_AC); Wait(Cross_time); //¥Ñ¥ï¡¼Âç¤Ç¤Î¸òº¹ÅÀ¤Î²£ÃÇ
#define Step 1 //¥é¥¤¥ó¤Î¸¡ÃδֳÖ
#define Max 5 //¸òº¹ÅÀ¤ÎȽÄꤹ¤ë¤È¤¤ÎËÜÂΤ¬º¸ÀÞ¤¹¤ë»þ´Ö
#define N2_time 200 //¥µ¥Ö¥ë¡¼¥Á¥óN2¤ÎÆ°ºî¤¹¤ë»þ´Ö
#define S_time 1000 //¥µ¥Ö¥ë¡¼¥Á¥óS¤ÎÆ°ºî¤¹¤ë»þ´Ö
¡¦¤³¤ÎÉôʬ¤Ï¡¢¤³¤³¤«¤é²¼¤Î¥µ¥Ö¥ë¡¼¥Á¥ó¡¦¥á¥¤¥ó¥×¥í¥°¥é¥à¤Ë»ÈÍѤ¹¤ë¸÷¥»¥ó¥µ¤ÎÃͤÎÈϰϤä¥â¡¼¥¿¤Î¥Ñ¥ï¡¼¤ÎÂ礤µ¡¢¥»¥ó¥µ¤Î¸¡Ãδֳ֤ʤɤòÀßÄꤷ¤Æ¤¤¤ë¡£
¡¦¸÷¤ÎÈϰϤδð½àÃͤÏ40¤Ë¤·¤Æ¡¢¤½¤³¤«¤é°ìÄêÃͤ·¤¿¤ê°ú¤¤¤¿¤ê¤·¤ÆÈϰϤòÄ´À°¤·¤Æ¤¤¤ë¡£
¡¦¸÷¤ÎÌÀ¤ë¤µ¤Ë¤è¤ëËÜÂΤÎÆ°¤¤Ï5¥Ñ¥¿¡¼¥ó¤Ç¤¢¤ê¡¢Ä¾¿Ê¤Î¾ì¹ç¤Ï¥â¡¼¥¿¤Î¥Ñ¥ï¡¼¤ò7¤Ë¡¢±¦¡¦º¸Àޤξì¹ç¤Ï¥â¡¼¥¿¤Î¥Ñ¥ï¡¼¤ò1¤Ë¡¢±¦¡¦º¸Àû²ó¤Î¾ì¹ç¤Ï¥â¡¼¥¿¤Î¥Ñ¥ï¡¼¤ò0¤Ë¤·¤Æ¤¤¤ë¡£¤Þ¤¿¡¢»æ¥³¥Ã¥×¤òÃÖ¤¤¤¿¸åÀþ¾å¤ËÌá¤ë¤¿¤á¤Ë¸å¿Ê¤¹¤ë¤È¤¤Î¥â¡¼¥¿¤Î¥Ñ¥ï¡¼¤â7¤Ç¤¢¤ë¡£
¡¦¸÷¥»¥ó¥µ¤Î¸¡ÃΤ¹¤ë´Ö³Ö¤Ï0.01É䴤Ȥˤ·¤Æ¤¤¤ë¡£
***¸òº¹ÅÀ²£ÃǤΥµ¥Ö¥ë¡¼¥Á¥ó [#s42b216f]
sub C()
{
SetSensor(SENSOR_2, SENSOR_LIGHT); //¥»¥ó¥µ¤ÎÄêµÁ
int Online=0; //º¸Àû²ó¤Î¥«¥¦¥ó¥È
int Cross_count=0; //¸òº¹ÅÀ¤òÄ̲ᤷ¤¿²ó¿ô
while (Cross_count < 1) { //¸òº¹ÅÀ¤òÄ̲᤹¤ë¤Þ¤Ç
while (Online < Max) { //º¸Àû²ó¤ò5²óϢ³¤¹¤ë¤Þ¤Ç
if (SENSOR_2 < Threshold - 5) { //¥»¥ó¥µ¤ÎÃͤ¬35̤Ëþ¤Î»þº¸Àû²ó¡¢²»¤òÌĤ餷¤Æ Online¤Î¥«¥¦¥ó¥È¤ò1¤¹
Turn_left_h;
PlayTone(523,1);
Online++;
} else {
if (SENSOR_2 < Threshold - 2) { //¥»¥ó¥µ¤ÎÃͤ¬35°Ê¾å¡¢38̤Ëþ¤Î»þº¸ÀÞ
Turn_left_l;
} else if (SENSOR_2 < Threshold + 2) { //¥»¥ó¥µ¤ÎÃͤ¬38°Ê¾å¡¢42̤Ëþ¤Î»þľ¿Ê
Go_forward;
} else if (SENSOR_2 < Threshold + 5) { //¥»¥ó¥µ¤ÎÃͤ¬42°Ê¾å¡¢45̤Ëþ¤Î»þ±¦ÀÞ
Turn_right_l;
} else { //¥»¥ó¥µ¤ÎÃͤ¬45°Ê¾å¤Î»þ¡¢±¦Àû²ó
Turn_right_h;
}
Online=0; //º¸Àû²ó°Ê³°¤Î»þ¡¢Online¤ÎÃͤò¥ê¥»¥Ã¥È
}
Wait(Step); //0.01É䴤ȤËÀþ¤ò¸¡ÃÎ
}
Break; //¾®µÙ·Æ
Turn_right_h; //0.3Éôֱ¦Àû²ó
Wait(30);
Cross; //¸òº¹ÅÀ¤ò²£ÃÇ
Online=0; //Online¤ÎÃͤò¥ê¥»¥Ã¥È
Cross_count++; //Cross_count¤ò1¤·¤Æ¤³¤Î¥ë¡¼¥Á¥ó¤ò½ªÎ»¡¢¼¡¤Î¥ë¡¼¥Á¥ó¤Ø
}
}
¡¦¸òº¹ÅÀ¤ò²£ÃǤ¹¤ë¤È¤¤Î¥µ¥Ö¥ë¡¼¥Á¥ó¡£¸÷¥»¥ó¥µ¤¬¡Á34¤Ç¤Ïº¸Àû²ó¡¢35¡Á37¤Ïº¸ÀÞ¡¢38¡Á41¤Ç¤Ïľ¿Ê¡¢42¡Á45¤Ç¤Ï±¦ÀÞ¡¢46¡Á¤Ç¤Ï±¦Àû²ó¤¹¤ë¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤ë¡£
¡¦¸òº¹ÅÀ²£ÃǤϡ¢¤³¤Î¥µ¥Ö¥ë¡¼¥Á¥óÆâ¤Çº¸Àû²ó¤ò0.05ÉôÖϢ³¤Ç¸¡ÃΤ·¤¿¾ì¹ç¤Ë¤¹¤ë¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤ë¡£¡ÖOnline¡×¤Ïº¸Àû²ó¤ò¤·¤¿²ó¿ô¤ò¥«¥¦¥ó¥È¤·¡¢¤½¤ì°Ê³°¤Î¹ÔÆ°¤ò¤·¤¿¤È¤¤Ï¤³¤ÎÃͤò¥ê¥»¥Ã¥È¤·¤Æ¤¤¤ë¡£
¡¦¡ÖOnline¡×¤ÎÃͤ¬5¤Ë¤Ê¤ë¤È¥é¥¤¥ó¥È¥ì¡¼¥¹¤Î¥ë¡¼¥×¤«¤é³°¤ì¡¢£±Éôֻߤޤ俸å¤Ë¸òº¹ÅÀ¤ò²£ÃǤ·¤Æ¡ÖOnline¡×¤ò¥ê¥»¥Ã¥È¤·¡¢¸òº¹ÅÀ¤òÄ̲ᤷ¤¿²ó¿ô¤ò¥«¥¦¥ó¥È¤¹¤ë¡ÖCross_count¡×¤Ë£±¤ò¤·¤Æ¤³¤Î¥µ¥Ö¥ë¡¼¥Á¥ó¤Î¥ë¡¼¥×¤«¤é³°¤ì¤ë¡£
***¸òº¹ÅÀº¸ÀޤΥµ¥Ö¥ë¡¼¥Á¥ó¡ [#h98b52a3]
sub N1()
{
SetSensor(SENSOR_2, SENSOR_LIGHT); //¥»¥ó¥µ¤ÎÄêµÁ
int Online=0; //º¸Àû²ó¤Î¥«¥¦¥ó¥È
int Cross_count=0; //¸òº¹ÅÀ¤òÄ̲ᤷ¤¿²ó¿ô
while (Cross_count < 1) { //¸òº¹ÅÀ¤òÄ̲᤹¤ë¤Þ¤Ç
while (Online < Max) { //º¸Àû²ó¤ò5²óϢ³¤¹¤ë¤Þ¤Ç
if (SENSOR_2 < Threshold - 5) { //º¸Àû²ó¡ÊÈϰϤϸòº¹ÅÀ²£ÃǤΥµ¥Ö¥ë¡¼¥Á¥ó¤ÈƱ¤¸¡¢°Ê²¼Æ±¡Ë¡¢²»¤òÌĤ餷Online¤Î¥«¥¦¥ó¥È¤ò1¤¹
Turn_left_h;
PlayTone(523,1);
Online++;
} else {
if (SENSOR_2 < Threshold - 2) { //º¸ÀÞ
Turn_left_l;
} else if (SENSOR_2 < Threshold + 2) { //ľ¿Ê
Go_forward;
} else if (SENSOR_2 < Threshold + 5) { //±¦ÀÞ
Turn_right_l;
} else { //±¦Àû²ó
Turn_right_h;
}
Online=0; //º¸Àû²ó°Ê³°¤Î»þ¡¢Online¤ÎÃͤò¥ê¥»¥Ã¥È
}
Wait(Step); //0.01É䴤ȤËÀþ¤ò¸¡ÃÎ
}
Break; //¾®µÙ·Æ
Cross_count++; //Cross_count¤ò1¤·¤Æ¤³¤Î¥ë¡¼¥Á¥ó¤ò½ªÎ»¡¢¼¡¤Î¥ë¡¼¥Á¥ó¤Ø
}
}
¡¦¸òº¹ÅÀ¤òº¸ÀÞ¤¹¤ë¤È¤¤Î¥µ¥Ö¥ë¡¼¥Á¥ó¡£¥é¥¤¥ó¥È¥ì¡¼¥¹¤Î¥×¥í¥°¥é¥à¤Ï²£ÃǤξì¹ç¤ÈƱ¤¸¤À¤¬¡¢¥é¥¤¥ó¥È¥ì¡¼¥¹¤Î¥ë¡¼¥×¤ò³°¤ì¤¿¸å¤½¤Î¤Þ¤Þ¡ÖCross_count¡×¤Ë£±¤ò¤·¤Æ¥µ¥Ö¥ë¡¼¥Á¥óN2¤Ë¿Ê¤à¡£
***¸òº¹ÅÀº¸ÀޤΥµ¥Ö¥ë¡¼¥Á¥ó¢ [#x5f2f3af]
sub N2()
{
SetSensor(SENSOR_2, SENSOR_LIGHT); //¥»¥ó¥µ¤òÄêµÁ
ClearTimer(0); //¥¿¥¤¥Þ¤ò¥ê¥»¥Ã¥È
while (FastTimer(0) < N2_time) { //¥¿¥¤¥Þ¤¬2Éäˤʤë¤Þ¤Ç
if (SENSOR_2 < Threshold - 5) { //º¸Àû²ó
Turn_left_h;
} else if (SENSOR_2 < Threshold - 2) { //º¸ÀÞ
Turn_left_l;
} else if (SENSOR_2 < Threshold + 2) { //ľ¿Ê
Go_forward;
} else if (SENSOR_2 < Threshold + 5) { //±¦ÀÞ
Turn_right_l;
} else { //±¦Àû²ó
Turn_right_h;
}
}
}
¡¦¥µ¥Ö¥ë¡¼¥Á¥óN1¤À¤±¤Ç¼Â¹Ô¤¹¤ë¤È¡¢¸òº¹ÅÀº¸ÀÞľ¸å¤ËÀþ¾å¤ËÉüµ¢¤¹¤ë¤È¤¤Ëº¸Àû²ó¤ò¤·¤Æ¡ÖOnline¡×¤¬N1¤Î¥ë¡¼¥×¤Î¾ò·ï¤òËþ¤¿¤·¤Æ¸íºîÆ°¤·¤Æ¤·¤Þ¤¦¤Î¤Ç¡¢¤³¤ì¤òËɤ°¤¿¤á¤ËN1¤Îľ¸å¤Ë£²Éô֥饤¥ó¥È¥ì¡¼¥¹¤Î¤ß¤ò¤¹¤ë¥µ¥Ö¥ë¡¼¥Á¥óN2¤ò¼Â¹Ô¤¹¤ë¡£
***E¡ÁF´Ö¤ÎS»ú¥«¡¼¥ÖÉôʬ¤Î¥µ¥Ö¥ë¡¼¥Á¥ó [#h6e8519f]
sub S()
{
SetSensor(SENSOR_2, SENSOR_LIGHT); //¥»¥ó¥µ¤òÄêµÁ
ClearTimer(0); //¥¿¥¤¥Þ¤ò¥ê¥»¥Ã¥È
while (FastTimer(0) < S_time) { //¥¿¥¤¥Þ¤¬10Éäˤʤë¤Þ¤Ç
if (SENSOR_2 < Threshold - 5) { //º¸Àû²ó
Turn_left_h;
} else if (SENSOR_2 < Threshold - 2) { //º¸ÀÞ
Turn_left_l;
} else if (SENSOR_2 < Threshold + 2) { //ľ¿Ê
Go_forward;
} else if (SENSOR_2 < Threshold + 5) { //±¦ÀÞ
Turn_right_l;
} else { //±¦Àû²ó
Turn_right_h;
}
}
}
¡¦E¡ÁF´Ö¤ÏµÞ¤ÊS»ú¥«¡¼¥Ö¤Ë¤Ê¤Ã¤Æ¤¤¤Æ¡¢¤³¤³¤âº¸Àû²ó¤¬µ¯¤³¤ê¤ä¤¹¤¯¥µ¥Ö¥ë¡¼¥Á¥óN1¤¬¸íºîÆ°¤ò¤ª¤³¤¹¤Î¤Ç10Éô֥饤¥ó¥È¥ì¡¼¥¹¤Î¤ß¤ò¤¹¤ë¥µ¥Ö¥ë¡¼¥Á¥óS¤ò¼Â¹Ô¤·¤ÆÂкö¤·¤Æ¤¤¤ë¡£
***»æ¥³¥Ã¥×¤ò¤Ä¤«¤à¥µ¥Ö¥ë¡¼¥Á¥ó¡¦¤Ï¤Ê¤¹¥µ¥Ö¥ë¡¼¥Á¥ó [#f76d8d75]
sub MFwd()
{
OnFwd(OUT_B); //µ¡¹½¤ò0.5Éô־夲¤ë
Wait(50);
Off(OUT_B);
}
sub MRev()
{
OnRev(OUT_B); //µ¡¹½¤ò0.5Éôֲ¼¤²¤ë
Wait(50);
Off(OUT_B);
}
¡¦»æ¥³¥Ã¥×¤ò¤Ä¤«¤à¡¦¤Ï¤Ê¤¹¥µ¥Ö¥ë¡¼¥Á¥ó¡£MFwd¤¬¤Ä¤«¤ß¡¢MRev¤¬¤Ï¤Ê¤¹¥µ¥Ö¥ë¡¼¥Á¥ó¤Ç¤¢¤ë¡£»æ¥³¥Ã¥×¤ò¤Ä¤«¤à¡¦¤Ï¤Ê¤¹ÃÏÅÀ¤ËÍ褿»þ¤Ë0.5Éô֥⡼¥¿B¤òÆ°¤«¤¹¡£
***»æ¥³¥Ã¥×¤òÃÖ¤¯¤¿¤á¤Ë±ßPQR¤ÎÃæ¿´¤Ë°ÜÆ°¤¹¤ë¥µ¥Ö¥ë¡¼¥Á¥ó¡¦Ìá¤ë¥µ¥Ö¥ë¡¼¥Á¥ó [#r616e487]
sub R1()
{
Turn_right_h; //1.2Éôֱ¦Àû²ó
Wait(120);
Go_forward; //0.5ÉôÖľ¿Ê
Wait(50);
Break; //¾®µÙ·Æ
}
sub R2()
{
Back; //0.5Éôָå¿Ê
Wait(50);
Turn_left_h; //1.2Éôֺ¸Àû²ó
Wait(120);
Break; //¾®µÙ·Æ
}
¡¦¥ë¡¼¥È£²¤Î¾ì¹ç±ßS¤Ç»æ¥³¥Ã¥×¤ò¤Ä¤«¤ß¡¢±ßPQR¤ÎÃæ±û¤Ç¤Ï¤Ê¤¹É¬Íפ¬¤¢¤ë¡£¤Ä¤«¤à¾ì¹ç¤ÏÃæ¿´¤Ë¹Ô¤«¤Ê¤¯¤Æ¤âËÜÂΤ¬±ß¤ÎÆ⦴ó¤ê¤ËÁö¤Ã¤Æ¤¤¤ë¤Î¤Ç¤½¤Î¤Þ¤Þ¼Â¹Ô¤Ç¤¤ë¤¬¡¢¤Ï¤Ê¤¹¾ì¹ç¤ÏÃæ¿´¤Ë¹Ô¤¯É¬Íפ¬¤¢¤ë¡£¥µ¥Ö¥ë¡¼¥Á¥óR1¤ÏÃæ¿´¤Ë¹Ô¤¯¤¿¤á¤Î¡¢R2¤Ï¸µ¤ÎÀþ¾å¤ËÌá¤ë¤¿¤á¤Î¥×¥í¥°¥é¥à¤Ç¤¢¤ë¡£
***¥á¥¤¥ó¥×¥í¥°¥é¥à [#o4faff30]
task main() //¥á¥¤¥ó¤Î¥×¥í¥°¥é¥à
{
Go_forward;
Wait(30);
C(); //C¤òľ¿Ê
N1(); //B¤òº¸ÀÞ
N2();
N1(); //P¤òº¸ÀÞ
N2();
C(); //Q¤òľ¿Ê
N1(); //R¤òº¸ÀÞ
N2();
N1(); //E¤ò¶Ê¤¬¤ë
N2();
S(); //S»ú¥«¡¼¥Ö
N1(); //F¤òº¸ÀÞ
N2();
C(); //S¤òľ¿Ê
MRev(); //»æ¥³¥Ã¥×¤ò¤Ä¤«¤à
C(); //S¤òľ¿Ê
N1(); //Q¤òº¸ÀÞ
N2();
C(); //R¤òľ¿Ê
R1(); //±ßPQR¤ÎÃæ¿´¤Ë¸þ¤«¤¦
MFwd(); //»æ¥³¥Ã¥×¤òÃÖ¤¯
R2(); //Àþ¾å¤ËÌá¤ë
N1(); //P¤òº¸ÀÞ
N2();
N1(); //B¤òº¸ÀÞ
N2();
C(); //A¤Ë¿¯Æþ
Go_forward;
Wait(30);
Break;
}
¡¦¤³¤ì¤é¤Î8¤Ä¤Î¥µ¥Ö¥ë¡¼¥Á¥ó¤òÁȤ߹ç¤ï¤»¤Æ¡¢
D¡¡¢ª¡¡C¤òľ¿Ê¡¡¢ª¡¡B¤òº¸ÀÞ¡¡¢ª¡¡P¤òº¸ÀÞ¡¡¢ª¡¡Q¤òľ¿Ê¡¡¢ª¡¡R¤òº¸ÀÞ¡¡¢ª¡¡E¡ÁF´Ö¤ÎS»ú¥«¡¼¥Ö¡¡¢ª¡¡F¤òº¸ÀÞ¡¡¢ª¡¡S¤òľ¿Ê¡¡¢ª¡¡»æ¥³¥Ã¥×¤ò¤Ä¤«¤à¡¡¢ª¡¡S¤òľ¿Ê¡¡¢ª¡¡Q¤òº¸ÀÞ¡¡¢ª¡¡R¤òľ¿Ê¡¡¢ª¡¡±ßPQR¤ÎÃæ±û¤Ë»æ¥³¥Ã¥×¤ò¤Ï¤Ê¤¹¡¡¢ª¡¡Ìá¤ë¡¡¢ª¡¡P¤òº¸ÀÞ¡¡¢ª¡¡B¤òº¸ÀÞ¡¡¢ª¡¡A
¤Î¹ÔÆ°½ç¤Ë¤Ê¤ë¤è¤¦¤Ë¤·¤¿¡£
**£³¡¡¼Â¹Ô·ë²Ì [#sa02b435]
¡¦¤³¤Î¥í¥Ü¥Ã¥È¤òËÜÈ֤Ǽ¹Ԥ·¤¿·ë²Ì¡¢¥â¡¼¥¿B¤ÎÀÜ¿¨ÉÔÎɤǻ楳¥Ã¥×¤ò¤Ä¤«¤à¡¦¤Ï¤Ê¤¹µ¡¹½¤¬Æ°¤«¤Ê¤«¤Ã¤¿¤¬¡¢¥é¥¤¥ó¥È¥ì¡¼¥¹¼«ÂΤϤ¦¤Þ¤¯¤¤¤¸Ä¿ÍŪ¤Ë¤ÏËþ¤Τ¤¤¯·ë²Ì¤È¤Ê¤Ã¤¿¡£¤¢¤Þ¤ê¤¦¤Þ¤¯¤¤¤«¤Ê¤«¤Ã¤¿Á°¤Î²ÝÂê¤ÎÈ¿¾Ê¤â³è¤«¤»¤ë¤³¤È¤¬¤Ç¤¤¿¤È»×¤¦¡£¤³¤ÎÄ´»Ò¤Ç²ÝÂꣳ¤Î¥í¥Ü¥³¥ó¤â¤¬¤ó¤Ð¤Ã¤Æ¤¤¤¤¿¤¤¤È»×¤¦¡£
¥Ú¡¼¥¸Ì¾: