* ²ÝÂêÆâÍÆ [#sf34144c] ** ¥é¥¤¥ó¥È¥ì¡¼¥¹ [#e0a11e64] ¥é¥¤¥ó¥È¥ì¡¼¥¹¤ò¤·¤Ê¤¬¤é¡¤ÅÓÃæ¤Ë¤¢¤ë¥Ô¥ó¥Ý¥ó¶Ì¤ò¥´¡¼¥ë¤Þ¤Ç±¿¤Ó¡¤¥´¡¼¥ë¤Ë¥·¥å¡¼¥È¤¹¤ë¡¥ »ä¤ÏA¤«¤éB¤Î¥³¡¼¥¹(PÃÏÅÀ¡¤QÃÏÅÀ¤È¤â¤Ëľ¿Ê)¤Ç¥é¥¤¥ó¥È¥ì¡¼¥¹¤ò¤¹¤ë¤³¤È¤Ë¤Ê¤Ã¤¿¡¥ #ref(2015a/Mission2/2015a-mission2.png,50%) *** ¥ë¡¼¥ë [#t0506adb] -PÃÏÅÀ¤ÈQÃÏÅÀ¤Î´Ö¤Î¤É¤³¤«¤Ë¥Ô¥ó¥Ý¥ó¶Ì¤òÃÖ¤¯¡¥ -»°ºµÏ©¤ª¤è¤Ó¸òº¹ÅÀ¤Ç¤Ï2ÉôÖÄä»ß¤¹¤ë¡¥ -²Äǽ¤Ç¤¢¤ì¤ÐA,B,C¤Î¤½¤ì¤¾¤ì¤Ë¥¨¥ê¥¢¤ËÆþ¤ë»°ºµÏ©Éնᤫ¤é¥Ü¡¼¥ë¤ò¥·¥å¡¼¥È¤¹¤ë¡¥ [[²ÝÂê2>2015a/Mission2]]»²¾È * Ìܼ¡ [#j88475a2] #contents * ¥³¡¼¥¹ [#e79a5a13] »ä¤Ï²«¿§¤¤´Ý¤Î¾ì½ê¤Ë¥Ô¥ó¥Ý¥ó¶Ì¤òÃÖ¤¤¤Æ¡¤¼¡¤Î¤è¤¦¤Ê¥³¡¼¥¹¤Ç¥é¥¤¥ó¥È¥ì¡¼¥¹¤ò¤·¤¿¡¥ #ref(./course.png,30%) * ¥í¥Ü¥Ã¥È [#b280d77c] ** Á´ÂÎ [#n12d0019] ¥Ô¥ó¥Ý¥ó¶Ì¤ò¶´¤ó¤Ç¥·¥å¡¼¥È¤¹¤ëÆ°ºî¤ò¤¹¤ë¤¿¤á¡¤¥¯¥ï¥¬¥¿¤Î¤è¤¦¤Ê¥í¥Ü¥Ã¥È¤òºî¤Ã¤¿¡¥ &ref(./DSC_0221 (2).JPG,10%); &ref(./DSC_0223.JPG,11%); ** ¥¿¥¤¥äÉôʬ [#ecacf051] ¶´¤ó¤Ç¥·¥å¡¼¥È¤¹¤ëµ¡¹½¤Î¤¿¤á½Ä¤ËŤ¯¤Ê¤Ã¤Æ¤·¤Þ¤Ã¤¿¤«¤é¡¤¼ÖÂΤò°ÂÄꤵ¤»¤ëɬÍפ¬¤¢¤Ã¤¿¡¥ ¤Þ¤¿¡¤Á°¥¿¥¤¥ä¤È¸å¤í¥¿¥¤¥ä¤Î´Ö³Ö¤¬¹¤¤¤È¤¦¤Þ¤¯¶Ê¤¬¤ì¤º¥é¥¤¥ó¥È¥ì¡¼¥¹¤Ç¤¤Ê¤¤¡¥ ¤½¤³¤Ç¡¤¥¤¥ó¥¹¥È¥é¥¯¥·¥ç¥ó¤Î¥í¥Ü¥Ã¥È¤Î¥¿¥¤¥äÉôʬ¤ò»²¹Í¤Ë¤·¤ÆÁȤßΩ¤Æ¤¿¡¥ ** ¥¢¡¼¥àÉôʬ [#fd189801] &ref(./DSC_0230_01.jpg,9%); &ref(./DSC_0233_01(1).jpg,9%); &ref(./DSC_0241 (2).JPG,9%); ¥Ô¥ó¥Ý¥ó¶Ì¤ò¶´¤à¡¤²¡¤·½Ð¤·¤Æ¥·¥å¡¼¥È¤¹¤ë¤È¤¤¤¦Æ°ºî¤ò¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¡¥ ¾å¤Î¿¿¤óÃæ¤Î¿Þ¤Î²«¿§¤Ç°Ï¤Ã¤Æ¼¨¤·¤Æ¤¢¤ë¥Ö¥í¥Ã¥¯¤Ï¥·¥ã¥Õ¥È¤òÄ̤»¤ë¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤ë¥Ö¥í¥Ã¥¯¤Ç¡¤RCX¥Ö¥í¥Ã¥¯¤Ë¼è¤êÉÕ¤±¤Æ¤¢¤ê¡¤ ¿å¿§¤Ç°Ï¤Ã¤Æ¼¨¤·¤Æ¤¢¤ëÉôʬ¤¬Æ°¤«¤»¤ëÉôʬ¤Ë¤Ê¤Ã¤Æ¤¤¤ë¡¥ »ÅÁȤߤϾå¿Þ¤Î¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤Æ¡¤ +¥â¡¼¥¿¡¼B¤Ë¤Ä¤¤¤Æ¤¤¤ë¥®¥¢¤¬²ó¤ë(ÜôÌð°õ) +¥é¥Ã¥¯¥®¥¢¤¬Ê¿¹Ô°ÜÆ°¤¹¤ë(ÀÖÌð°õ) +¤½¤ÎÀè¤Ë¼è¤êÉÕ¤±¤Æ¤¢¤ë¥¦¥©¡¼¥à¥®¥¢¤¬Á°¸å¤¹¤ë(ÀÄÌð°õ) +¥¢¡¼¥àÉôʬ¤¬³«ÊĤ¹¤ë(ÎÐÌð°õ) ¤È¤¤¤¦»ÅÁȤߤÀ¡¥³«¤¯¤ÈƱ»þ¤Ë¥Ô¥ó¥Ý¥ó¶Ì¤ò²¡¤·½Ð¤»¤ë¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤ë¡¥ ¤Þ¤¿¡¤³«¤¯¤È¤¤ÈÊĤ¸¤ë¤È¤¤ËËÜÂΤÎÉôÉʤˤ¢¤¿¤Ã¤Æ¡¤³«¤¤¹¤®¤¿¤êÊĤ¸¤¹¤®¤¿¤ê¤·¤Ê¤¤¤è¤¦¤Ë¤·¤Æ¤¤¤ë¤Î¤À¤¬¡¤¤½¤Î¤Þ¤Þ¤Ç¤Ï¥â¡¼¥¿¡¼¤äÉôÉʤËÉé²Ù¤¬¤«¤«¤Ã¤Æ¤·¤Þ¤¤¸Î¾ã¤Î¸¶°ø¤È¤Ê¤Ã¤Æ¤·¤Þ¤¦¡¥ ¤½¤³¤Ç¡¤¥â¡¼¥¿¡¼B¤Î¼´¤ÎÉôʬ¤Ë¥¯¥é¥Ã¥Á¥®¥¢¤òÍѤ¤¤ë¤³¤È¤Ç¡¤É¬Íװʾå¤ËÉé²Ù¤ò¤«¤±¤Ê¤¤¤è¤¦¤Ë¤·¤Æ¤¤¤ë¡¥ ** ¸÷¥»¥ó¥µ¡¼ [#w358038f] ¸÷¥»¥ó¥µ¡¼¤Ï¤Ç¤¤ë¤À¤±º¸±¦¤Î¥¿¥¤¥ä¤ÎÃæ¿´¤Ë»ý¤Ã¤Æ¤¯¤ë¤È¡¤º¸±¦¤Ë¶Ê¤¬¤Ã¤¿¤È¤¤Î¥»¥ó¥µ¡¼¤Î¿¶¤ìÉý¤¬¾®¤µ¤¯¤ÆºÑ¤à¤«¤é¡¤¼ÖÂΤÎÆ⦤˼è¤êÉÕ¤±¤¿¡¥ #ref(./DSC_0228(1).JPG,10%) ¤Þ¤¿¤³¤Î¥í¥Ü¥Ã¥È¤Ï¡¤¥Ô¥ó¥Ý¥ó¶Ì¤ò¥·¥å¡¼¥È¤¹¤ëÉôʬ¤¬¤¢¤ë¤¿¤á¡¤Ãæ¿´¤Ë¤Ï¼è¤êÉÕ¤±¤ë¤³¤È¤¬¤Ç¤¤Ê¤«¤Ã¤¿¤«¤é¡¤¥í¥Ü¥Ã¥È¤Î¾¯¤·º¸Â¦¤Ë¼è¤êÉÕ¤±¤ë¤³¤È¤Ë¤·¤¿¡¥ ¥×¥í¥°¥é¥à¤¬¥é¥¤¥ó¤Îº¸Â¦¤ò¥È¥ì¡¼¥¹¤¹¤ë¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤ë¤¿¤á¡¤¸÷¥»¥ó¥µ¡¼¤¬¾¯¤·º¸Â¦¤Ë¤¢¤ë¤È¥í¥Ü¥Ã¥È¤Ï¤Á¤ç¤¦¤É¥é¥¤¥ó¤Î¿¿¤óÃæ¤ò¤Ê¤¾¤Ã¤Æ¸«¤¨¤ë¤è¤¦¤Ë¤Ê¤Ã¤¿¡¥ * ¥×¥í¥°¥é¥à [#tc80bb2f] ** Äê¿ô[#e95297f7] - THRESHOLD¡¦¡¦¡¦°ìÈÖ¹õ¤¤¾ì½ê¡¤Çò¤¤¾ì½ê¤Î¥é¥¤¥È¥»¥ó¥µ¡¼¤ÎÃͤ«¤é¤·¤¤¤ÃÍTHRESHOLD¤òÀßÄꤷ¤¿¡¥ºÇ¤â¹õ¤¤¾ì½ê¤Ç¤Ï¥»¥ó¥µ¡¼¤ÎÃͤ¬37¡¤ºÇ¤âÇò¤¤¾ì½ê¤Ç¤Ï51¤Ç¤¢¤Ã¤¿¤¿¤á¡¤44¤È¤·¤¿¡¥ - STEP¡¦¡¦¡¦Äê¿ôSTEP¤Ï¥é¥¤¥ó¥È¥ì¡¼¥¹¤ò¤¹¤ë¤È¤¤Ë¡¤1²ó¤ÎȽÄê¤Ë¤è¤Ã¤Æ¹ÔÆ°¤¹¤ë»þ´Ö¤Ç¤¢¤ë¡¥ÀßÄê¤Ç¤¤ëºÇ¾®¤ÎÃͤǤ¢¤ë£±¤È¤·¤¿¤«¤é¡¤1²ó¤ÎȽÄê¤Ç0.01ÉùÔÆ°¤¹¤ë¤³¤È¤Ë¤Ê¤ë¡¥ - EYE¡¦¡¦¡¦¸÷¥»¥ó¥µ¡¼¤ÎÃͤòEYE¤È¤·¤¿¡¥ #define THRESHOLD 44 #define STEP 1 #define EYE SENSOR_2 ** ¥Þ¥¯¥í[#z0ce7e8f] - pause¡¦¡¦¡¦¸òº¹ÅÀ¡¤»°ºµÏ©¤ËÆþ¤Ã¤¿¤ÈȽÄꤷ¤¿¤È¤¡¤2ÉôÖÄä»ß¤¹¤ë¡¥ - go_forward¡¦¡¦¡¦¥é¥¤¥ó¥È¥ì¡¼¥¹¤Ç¥»¥ó¥µ¡¼¤ÎÃͤ¬ÃúÅÙ¤·¤¤¤Ãͤλþ¤È¡¤¸òº¹ÅÀ¤òľ¿Ê¤¹¤ë¤È¤¤Ë»È¤¦¡¥ - correct_direction(t)¡¦¡¦¡¦¸òºµÅÀ¡¤»°ºµÏ©¤ËÆþ¤Ã¤¿¸å¤Ï¾¯¤·º¸¤ò¸þ¤¤¤Æ¤¤¤ë¤Ï¤º¤À¤«¤é¡¤¤½¤Î¤º¤ì¤ò½¤Àµ¤¹¤ë¡¥¸òº¹ÅÀ¤ä»°ºµÏ©¤Î³ÑÅÙ¤¬¤½¤ì¤¾¤ì°Û¤Ê¤ë¤¿¤á¡¤°ú¿ô¤ò¼è¤ê»þ´Ö¤òÀßÄê¤Ç¤¤ë¤è¤¦¤Ë¤·¤¿¡¥ #define pause Off(OUT_AC);Wait(200); #define go_forward OnFwd(OUT_AC); #define correct_direction(t) OnFwd(OUT_A);OnRev(OUT_C);Wait(t); ** ¥µ¥Ö¥ë¡¼¥Á¥ó [#c64b4935] - catch_ball¡¦¡¦¡¦¿Ê¤ß¤Ê¤¬¤é¥Ô¥ó¥Ý¥ó¶Ì¤ò¥¥ã¥Ã¥Á¤¹¤ë¡¥ - shoot¡¦¡¦¡¦¾¯¤·»ß¤Þ¤Ã¤Æ¤«¤é¥Ô¥ó¥Ý¥ó¶Ì¤ò¥·¥å¡¼¥È¤¹¤ë¡¥Â®¤¤¥·¥å¡¼¥È¤¬½ÐÍè¤ë¤è¤¦¤Ë¥Ñ¥ï¡¼¤ò£·¤ËÀßÄꤷ¤¿¡¥ sub catch_ball() { go_forward;Wait(30); OnFwd(OUT_B);Wait(15); Off(OUT_ABC); PlaySound(SOUND_FAST_UP); } sub shoot() { Off(OUT_AC);Wait(10); SetPower(OUT_B,7); OnRev(OUT_B);Wait(13); Off(OUT_B); PlaySound(SOUND_UP); } ** ÊÑ¿ô [#v21dee11] cross_point¡¦¡¦¡¦¸òº¹ÅÀ¤Ëº¹¤·³Ý¤«¤Ã¤¿²ó¿ô¤ò¥«¥¦¥ó¥È¤¹¤ë¤¿¤á¤Ë»È¤Ã¤¿¡¥ ¤³¤ÎÊÑ¿ô¤ò»È¤Ã¤Æ¡¤¸òº¹ÅÀ¤òÄ̤俲ó¿ô¤Çmain¥¿¥¹¥¯¤ÎÃæ¤Îwhileʸ¤òÂ礤¯3¤Ä¤Ëʬ³ä¤·¤Æ¤¤¤ë¡¥ ** ¥é¥¤¥ó¥È¥ì¡¼¥¹ [#te113605] *** ľÀþ¤ä´Ë¤¤¥«¡¼¥Ö¤ò¥È¥ì¡¼¥¹¤¹¤ë¥×¥í¥°¥é¥à [#v0a15963] ¥µ¥Ö¥ë¡¼¥Á¥óline_trace¤È¤·¤ÆÄêµÁ¤·¤¿¡¥ ¤³¤Î¥×¥í¥°¥é¥à¤Ç¤Ï¥»¥ó¥µ¡¼¤ÎÃͤˤè¤Ã¤Æ¥í¥Ü¥Ã¥È¤Î¹ÔÆ°¤ò3¤Ä¤Ëʬ¤±¤Æ¤¤¤ë¡¥¸÷¥»¥ó¥µ¡¼¤ÎÃͤ¬¤·¤¤¤Ãͤè¤êÄ㤤¤È¹õ¤ÈȽÊ̤·¤Æº¸¤Ë¶Ê¤¬¤ë¡¤¹â¤¤¤ÈÇò¤ÈȽÊ̤·¤Æ±¦¤Ë¶Ê¤¬¤ë¡¤¹õ¤ÈÇò¤Î¤Á¤ç¤¦¤ÉÃæ´Ö¤Ï³¥¿§¤ÈȽÊ̤·¤Æ¿¿¤Ãľ¤°¿Ê¤à¡¥ ¶Ê¤¬¤ë¤È¤¤ÏÊÒÊý¤Î¥¿¥¤¥ä¤ò»ß¤á¤Æ¶Ê¤¬¤ë¤è¤¦¤Ë¤·¤Æ¤¤¤ë¡¥ ¤Þ¤¿¡¤¿¿¤Ãľ¤°¿Ê¤à¤È¤¤Î¥Ñ¥ï¡¼¤Ï3¤È¤·¡¤¶Ê¤¬¤ë¤È¤¤Î¥Ñ¥ï¡¼¤òÀäÂÐÃÍ|(¤·¤¤¤ÃÍ)¡½(¥»¥ó¥µ¡¼¤ÎÃÍ)|¤È¤¹¤ë¤³¤È¤Ç¡¤¥é¥¤¥ó¤Î¶³¦Àþ¤«¤éÎ¥¤ì¤Æ¤¤¤ë¤Û¤ÉÂ礤¤ÎϤǡ¤¶á¤¤¤È¾®¤µ¤¤ÎϤǶʤ¬¤ë¤è¤¦¤Ë¤·¤¿¡¥¥»¥ó¥µ¡¼¤ÎÃͤÏ37¡Á51¤ò¼¨¤¹¤«¤é¡¤¥Ñ¥ï¡¼¤ÎºÇÂçÃͤÏ6¤È¤Ê¤ê¡¤Äø¤è¤¤¥Ñ¥ï¡¼¤Ç¥¹¥à¡¼¥º¤Ë¥é¥¤¥ó¥È¥ì¡¼¥¹¤¬¤Ç¤¤¿¡¥ sub line_trace() { if(EYE < THRESHOLD) { //¥»¥ó¥µ¡¼¤ÎÃͤ¬¤·¤¤¤Ãͤè¤ê¤âÄ㤤¤È¤(¹õ)º¸¤Ë¶Ê¤¬¤ë SetPower(OUT_AC,THRESHOLD-EYE); OnFwd(OUT_C);Off(OUT_A); ClearTimer(1); } else { if(EYE == THRESHOLD) { //¥»¥ó¥µ¡¼¤ÎÃͤ¬¤Á¤ç¤¦¤É¤·¤¤¤ÃͤΤȤ(³¥¿§)¤Þ¤Ã¤¹¤°¿Ê¤à SetPower(OUT_AC,3); go_forward; ClearTimer(1); } else { //¥»¥ó¥µ¡¼¤ÎÃͤ¬¤·¤¤¤Ãͤè¤ê¤â¹â¤¤¤È¤(Çò)±¦¤Ë¶Ê¤¬¤ë SetPower(OUT_AC,EYE-THRESHOLD); OnFwd(OUT_A);Off(OUT_C); } ClearTimer(0); } Wait(STEP); /*¹õ¤Ë¤Ê¤Ã¤¿¤È¤¤ÏFastTimer(0)¤Ï¤½¤Î¤Þ¤Þ¡¤Çò¤È³¥¿§¤Î¤È¤¤Ï¥ê¥»¥Ã¥È(Ϣ³¤Ç¹õ¤Ë¤Ê¤Ã¤¿»þ´Ö¤ò·×¬) Çò¤Ë¤Ê¤Ã¤¿¤È¤¤ÏFastTimer(1)¤Ï¤½¤Î¤Þ¤Þ¡¤¹õ¤È³¥¿§¤Î¤È¤¤Ï¥ê¥»¥Ã¥È(Ϣ³¤ÇÇò¤Ë¤Ê¤Ã¤¿»þ´Ö¤ò·×¬)*/ if(FastTimer(1) > 80){¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡/*°ìÄê¤Î»þ´Ö¡Ê0.8Éá˰ʾåÇò¤¤¾ì½ê¤Ë¤¤¤ë¤È¤ OnRev(OUT_AC);until(EYE < THRESHOLD);Off(OUT_AC); ¹õ¤¤¾ì½ê¤Þ¤Ç²¼¤¬¤ë*/ ClearTimer(0); } } *** ¥¿¥¤¥Þ¡¼ FastTimer(0),FastTimer(1) [#r4a9195d] - FastTimer(0)¡¦¡¦¡¦½é¤á¤ÏÊÑ¿ô¤ò»È¤Ã¤Æ¡ÖϢ³¤Ç¹õ¤Ë¤Ê¤Ã¤¿(º¸¤Ë¶Ê¤¬¤Ã¤¿)²ó¿ô¡×¤Ç¸òº¹ÅÀ¤À¤ÈȽÄꤹ¤ë¤è¤¦¤Ë¤·¤Æ¤¤¤¿¡¥ ¡¡¡¡¡¡¤·¤«¤·¥¿¥¤¥Þ¡¼¤ò»È¤Ã¤Æ¡ÖϢ³¤Ç¹õ¤Ë¤Ê¤Ã¤¿»þ´Ö¡×¤Ç¸òº¹ÅÀ¤òȽÄꤹ¤ë¤è¤¦¤Ë¤·¤¿¤È¤³¤í¡¤¤è¤êÀµ³Î¤Ë¸òº¹ÅÀ¤ÈµÞ¤Ê¥«¡¼¥Ö¤òȽÊ̤Ǥ¤ë¤è¤¦¤Ë¤Ê¤Ã¤¿¡¥ ¡¡¡¡¡¡¤½¤Î¤¿¤á¡¤FastTimer(0)¤ò»È¤Ã¤Æ¡¤»þ´Ö¤Ç¸òº¹ÅÀ¤ÎȽÊ̤ò¤¹¤ë¤è¤¦¤Ë¤·¤¿¡¥ - FastTimer(1)¡¦¡¦¡¦FastTimer(0)¤È¤ÏµÕ¤Ç¡¤¡ÖϢ³¤ÇÇò¤Ë¤Ê¤Ã¤¿»þ´Ö¡×¤ò¥«¥¦¥ó¥È¤¹¤ë¡¥ ¡¡¡¡¡¡¤³¤ì¤ò»È¤Ã¤Æ°ìÄê¤Î»þ´ÖÇò¤ÈȽÄꤷ³¤±¤¿¾ì¹ç¡¤¥é¥¤¥ó¤Î¾å¤Ë¾è¤Ã¤Æ¤¤¤Ê¤¤¤ÈȽÃǤ·¡¤¥»¥ó¥µ¡¼¤ÎÃͤ¬¹õ¤Ë¤Ê¤ë¤Þ¤Ç²¼¤¬¤ë¤è¤¦¤Ë¤·¤Æ¤¤¤ë¡¥ main¥¿¥¹¥¯¤Ç¤Ï¥µ¥Ö¥ë¡¼¥Á¥óline_trace¤òwhileʸ¤Ç°Ï¤Ã¤Æ¤¢¤ë¤«¤é¡¤°ìÄê¤Î»þ´Ö°Ê¾å¹õ¤ÎȽÄê¤Ë¤Ê¤Ã¤¿¤È¤¡¤¥ë¡¼¥×¤òÈ´¤±½Ð¤·¸òº¹ÅÀ¤ä»°ºµÏ©¤ò¿Ê¤à¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤ë¡¥ while(FastTimer(0) < 35) { line_trace(); } pause; correct_direction(20); go_forward;Wait(15); *** µÞ¤Ê¥«¡¼¥Ö¤ò¥È¥ì¡¼¥¹¤¹¤ë¥×¥í¥°¥é¥à [#k52c9766] PÃÏÅÀ¤«¤éQÃÏÅÀ¤Ë¤ÏȾ·Â7.5Ñ(¤³¤Î¥×¥í¥°¥é¥à¤Ç¤Ï¥é¥¤¥ó¤Îº¸Â¦¤ò¥È¥ì¡¼¥¹¤¹¤ë¤«¤é¼ÂºÝ¤Ë¶Ê¤¬¤ë¤Î¤Ï¤Ï6.5Ñ)¤Î±ß¤¬¤¢¤ë¡¥ ¤³¤Î¥«¡¼¥Ö¤Ï¥µ¥Ö¥ë¡¼¥Á¥óline_trace¤Ç¤Ï¶Ê¤¬¤ê¤¤ë¤³¤È¤¬¤Ç¤¤Ê¤«¤Ã¤¿¡¥ ¤½¤³¤Ç¥µ¥Ö¥ë¡¼¥Á¥óline_trace¤ËOnRev¤òÄɲä·¡¤µÞ¤Ê¥«¡¼¥Ö¤ò¶Ê¤¬¤ì¤ë¥×¥í¥°¥é¥à¤ò¥µ¥Ö¥ë¡¼¥Á¥ócurve_trace¤È¤·¤¿¡¥È¿Å¾¤¹¤ë¥¿¥¤¥ä¤Î¥Ñ¥ï¡¼¤¬2¤òĶ¤¨¤ë¤È¥¹¥Ô¡¼¥É¤¬¶Ëü¤ËÍî¤Á¤Æ¤·¤Þ¤Ã¤¿¤¿¤á¡¤¥Ñ¥ï¡¼¤Ï1¤È¤·¤¿¡¥ sub curve_trace() //OnRev¤òÄɲ䷵ޤʥ«¡¼¥Ö¤ò¶Ê¤¬¤ì¤ë¤è¤¦¤Ë¤·¤¿ { if(EYE < THRESHOLD) { SetPower(OUT_C,THRESHOLD-EYE);SetPower(OUT_A,1); OnFwd(OUT_C);OnRev(OUT_A); ClearTimer(1); } else { if(EYE == THRESHOLD) { SetPower(OUT_AC,3); go_forward; ClearTimer(1); } else { SetPower(OUT_A,EYE-THRESHOLD);SetPower(OUT_C,1); OnFwd(OUT_A);OnRev(OUT_C); } ClearTimer(0); } Wait(STEP); if(FastTimer(1) > 80){ OnRev(OUT_AC);until(EYE < THRESHOLD);Off(OUT_AC); ClearTimer(0); } } ** main¥¿¥¹¥¯ [#tccf2fc7] *** whileʸ¤Îʬ³ä [#h72f4766] ¸òº¹ÅÀ¤È»°ºµÏ©¤´¤È¤Ë¡¤¥Ô¥ó¥Ý¥ó¶Ì¤ò¤È¤Ã¤Æ¤«¤éľ¿Ê¡¤Ä¾¿Ê¡¤¥Ô¥ó¥Ý¥ó¶Ì¤ò¥·¥å¡¼¥È¡¤¤È¤½¤ì¤¾¤ì°ã¤Ã¤¿Æ°ºî¤ò¤¹¤ë¤¿¤á¡¤ÊÑ¿ôcross_point¤ò»È¤Ã¤Æwhileʸ¤ò3ʬ³ä¤·¤¿¡¥¤Þ¤¿¡¤¤½¤¦¤¹¤ë¤³¤È¤Ç³Æwhileʸ¤Ë¤è¤Ã¤Æ¸òº¹ÅÀ¡¤»°ºµÏ©¤Î´ð½à(FastTimer(0)¤¬²¿Éðʲ¼¤«)¤òÊѤ¨¤ë¤³¤È¤¬¤Ç¤¤ë¤è¤¦¤Ë¤Ê¤Ã¤¿¡¥ *** ¥¿¥¤¥Þ¡¼ FastTimer(2) [#fc6471ea] FastTimer(2)¡¦¡¦¡¦£ÐÃÏÅÀ¤«¤é£ÑÃÏÅÀ¤Î´Ö¤Ë¡¤È¾·Â7.5ѤΥ«¡¼¥Ö¤¬¤¢¤ë¡¥¤½¤Î¥«¡¼¥Ö¤Ï¤½¤ì¤Þ¤Ç¤Î¥é¥¤¥ó¥È¥ì¡¼¥¹¤Ç¤Ï¶Ê¤¬¤ì¤Ê¤¤¡¥¤½¤Î¤¿¤áFastTimer(2)¤ò»È¤¤¡¤¥Ô¥ó¥Ý¥ó¶Ì¤ò¤È¤Ã¤Æ¤«¤éµÞ¥«¡¼¥Ö¤Þ¤Ç¤Î°ìÄê»þ´Ö¤Ï¥µ¥Ö¥ë¡¼¥Á¥óline_trace¡¥µÞ¥«¡¼¥Ö¤Ëº¹¤·³Ý¤«¤Ã¤Æ¤«¤é°ìÄê»þ´Ö¤ÏµÞ¥«¡¼¥Ö¤ò¶Ê¤¬¤ë¤¿¤á¤Î¥µ¥Ö¥ë¡¼¥Á¥ócurve_trace¤ò¤¹¤ë¤è¤¦¤Ë¤·¤¿¡¥ *** task main [#ic456ea0] task main() { SetSensor(SENSOR_2,SENSOR_LIGHT); ClearTimer(0); int cross_point=0; ClearTimer(2); ////////////////////// // // ¥¨¥ê¥¢£Á¤«¤é£ÐÃÏÅÀ // ////////////////////// while(cross_point==0) //cross_point¤¬£°¡ÊA¤«¤éP¡Ë¤Î¤È¤·«¤êÊÖ¤¹ { while(FastTimer(0) < 35) ¡¡¡¡¡¡¡¡//ºÇ½é¤Î»°ºµÏ©¤Þ¤Ç¥µ¥Ö¥ë¡¼¥Á¥óline_trace·«¤êÊÖ¤· { line_trace(); } pause; correct_direction(30); catch_ball(); ¡¡¡¡ //¥Ô¥ó¥Ý¥ó¶Ì¤ò¶´¤à ClearTimer(0); cross_point++; //¥ë¡¼¥×½ª¤ï¤ê } ////////////////////// // // £ÐÃÏÅÀ¤«¤é£ÑÃÏÅÀ // ////////////////////// ClearTimer(2); while(cross_point==1) //cross_point¤¬£±¡ÊP¤«¤éQ¡Ë¤Î¤È¤·«¤êÊÖ¤¹ { while((FastTimer(2) < 500)&&(FastTimer(0) < 100))¡¡ //¸òº¹ÅÀ¤òÄ̤äƤ«¤é£µÉô֤ϡ¤¸òº¹ÅÀ¤òǧ¼±¤·¤Ë¤¯¤¯¤·¤Æ¥µ¥Ö¥ë¡¼¥Á¥óline_trace·«¤êÊÖ¤· { line_trace(); } PlaySound(SOUND_CLICK); ¡¡¡¡ //ȽÄ꤬ÀÚ¤êÂؤï¤ë¹ç¿Þ while((FastTimer(2) < 1200)&&(FastTimer(0) < 100))¡¡ //¸òº¹ÅÀ¤òÄ̤äƤ«¤é£µÉ÷ФäƤ«¤é¡¤£·Éô֤ϥµ¥Ö¥ë¡¼¥Á¥ócurve_trace·«¤êÊÖ¤· { curve_trace(); } PlaySound(SOUND_CLICK); ¡¡¡¡¡¡¡¡¡¡¡¡ //ȽÄ꤬ÀÚ¤êÂؤï¤ë¹ç¿Þ while(FastTimer(0) < 35) ¡¡¡¡//µÞ¥«¡¼¥Ö¤ò¤À¤¤¤¿¤¤¶Ê¤¬¤ê¤¤Ã¤¿¤¢¤È¡¤¸òº¹ÅÀ¤Þ¤Ç¥µ¥Ö¥ë¡¼¥Á¥óline_trace·«¤êÊÖ¤· { line_trace(); } pause; correct_direction(20); go_forward;Wait(15); ¡¡ ¡¡//¸òº¹ÅÀ¤òľ¿Ê ClearTimer(0); cross_point++; //¥ë¡¼¥×½ª¤ï¤ê } ////////////////////// // // £ÑÃÏÅÀ¤«¤é¥¨¥ê¥¢£Â // ////////////////////// while(cross_point==2) //cross_point¤¬£²¡ÊQ¤«¤éB¡Ë¤Î¤È¤·«¤êÊÖ¤¹ { while(FastTimer(0) < 30) ¡¡ //ºÇ¸å¤Î»°ºµÏ©¤Þ¤Ç¥µ¥Ö¥ë¡¼¥Á¥óline_trace·«¤êÊÖ¤· { line_trace(); } pause; correct_direction(10); shoot(); ¡¡¡¡//¥·¥å¡¼¥È cross_point++; //¥ë¡¼¥×½ª¤ï¤ê } } * Æ°²è [#w7140d73] http://youtu.be/5y0AsZu49UQ * ¤Þ¤È¤á¤ÈÈ¿¾Ê [#db143145] ¥Ô¥ó¥Ý¥ó¶Ì¤ò¶´¤ó¤Ç¥·¥å¡¼¥È¤¹¤ëµ¡¹½¤Î¤¿¤á¤Ë¡¤¥í¥Ü¥Ã¥È¤¬Â礤¯¤Ê¤Ã¤Æ¤·¤Þ¤Ã¤¿¡¥ ¤½¤Î¤¿¤á¡¤¾®²ó¤ê¤¬Íø¤¤Ë¤¯¤¯¤Ê¤Ã¤Æ¤·¤Þ¤¤¡¤µÞ¥«¡¼¥ÖÍѤΥ饤¥ó¥È¥ì¡¼¥¹¤Î¥×¥í¥°¥é¥à¤òºî¤ë¤³¤È¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤Ã¤¿¡¥ ¤·¤«¤·¡¤¥¿¥¤¥Þ¡¼¤ò»È¤Ã¤Æ¥é¥¤¥ó¥È¥ì¡¼¥¹¤Î¥×¥í¥°¥é¥à¤òÀÚ¤êÂؤ¨¤ë¤³¤È¤Ç¡¤¤½¤ÎÌäÂê¤ò¤¦¤Þ¤¯²ò·è¤Ç¤¤¿¤È»×¤¦¡¥ ¤³¤Î¥×¥í¥°¥é¥à¤À¤È¡¤¥¿¥¤¥Þ¡¼¤ÇÀ©¸æ¤·¤Æ¤¤¤ëÉôʬ¤âÂçÉý¤Ë¤º¤ì¤ë¤³¤È¤â¤Ê¤¯¡¤À®¸ùΨ¤Î¹â¤¤°ÂÄꤷ¤¿Áö¤ê¤ò¤·¤¿¡¥