[[2019a/Member]] Ìܼ¡ #contents *²ÝÂê2 [#ze94ad70] ²¼¤Î¿Þ¤Î¤è¤¦¤Ê¥³¡¼¥¹¤ò³Æ¥Á¡¼¥à¤ÇºîÀ®¤·¡¢¡Ö¥ß¥Ã¥·¥ç¥ó¡×¤ò¿ë¹Ô¤¹¤ë¤¿¤á¤Î¥í¥Ü¥Ã¥È¤òºîÀ®¤»¤è¡£ ¹õÀþ¤ÎÉý¤Ï20mm¤Ç¤Ê¤ë¤Ù¤¯¶ÑÅù¤ÊÇ»¤µ¤Ë¤¹¤ë¤³¤È¡£ ¥´¡¼¥ë¤Ë¤Ï¡¢Ä¹¤µ15¤Þ¤¿¤Ï16¤Î¥Ö¥í¥Ã¥¯¤ª¤¯¡£ &ref(2019a/Member/Kasai/Mission2/map.png,50%); **¥³¡¼¥¹ [#s8de8959] AÃÏÅÀ¤«¤é½Ðȯ ¢ª M ¢ª K(ľ¿Ê) ¢ª L(¥Ô¥ó¥Ý¥ó¶Ì¤ò¤Ä¤«¤à) ¢ª K(±¦ÀÞ) ¢ª J(°ì»þÄä»ß¤Î¸å¡¢º¸ÀÞ) ¢ª I(ľ¿Ê) ¢ª H(ľ¿Ê) ¢ª G(º¸ÀÞ) ¢ª F ¢ª E ¢ª D(°ì»þÄä»ß¤Î¸å¡¢Ä¾¿Ê) ¢ª C(ľ¿Ê) ¢ª B(°ì»þÄä»ß) ¢ª ¥·¥å¡¼¥È¢ª AÃÏÅÀ¤ËÆþ¤ë(¥´¡¼¥ë) ¸òº¹ÅÀ¤Ç¤Ï1ÉôÖÄä»ß¤·¡¢Ãú»úÏ©¤Ç¤Ïľ³ÑÊý¸þ¤Ë¿ÊÆþ¤¹¤ë»þ¤Î¤ß°ì»þÄä»ß¤¹¤ë¤³¤È¡£ &ref(2019a/Member/Kasai/Mission2/map_line.png,50%); *¥í¥Ü¥Ã¥È¤Ë¤Ä¤¤¤Æ [#d1081fe1] **¥í¥Ü¥Ã¥È¤ÎÁ´ÂÎ [#c1e673a9] º£²ó¤Ï¡¤¥í¥Ü¥Æ¥£¥¯¥¹¤ÎºÇ½é¤Î¼ø¶È¤Çºî¤Ã¤¿¥í¥Ü¥Ã¥È¤ò²þÎɤ·¤Æºî¤Ã¤¿¡¥ &ref(2019a/Member/Kasai/Mission2/robo_all.jpg,50%); **ƹÂÎ [#xc23c187] ¥Ü¡¼¥ë¤òÄϤàÉôʬ¤Î¼è¤êÉÕ¤±¤ò¹Íθ¤·¡¤¥Ð¥Ã¥Æ¥ê¡¼¤Î°ÌÃÖ¤ò¸å¤í¤Ë°ÜÆ°¤µ¤»¤¿¡¥ &ref(2019a/Member/Kasai/Mission2/robo_honntai.jpg,50%); **¸÷¥»¥ó¥µ¡¼ [#sbc2b3bb] ¾®²ó¤ê¤¬Íø¤¯¤è¤¦¤Ë¤Ç¤¤ë¤À¤±¥í¥Ü¥Ã¥È¤Î¼Ö¼´¤Ë¶á¤Å¤±¤Æºî¤Ã¤¿¡¥ &ref(2019a/Member/Kasai/Mission2/senser.jpg,50%); &ref(2019a/Member/Kasai/Mission2/senser_posi_new.jpg,50%); **¤Ä¤«¤àÉôʬ [#j0244368] &ref(2019a/Member/Kasai/Mission2/arm.jpg,50%);&ref(2019a/Member/Kasai/Mission2/arm_explain.jpg,50%); ²£¤«¤é¶´¤àµ¡¹½¤Ë¤·¤¿¡¥ ¡Êý¸þ¤Ë²ó¤¹¤È¥¢¡¼¥à¤¬³«¤¡¤¢Êý¸þ¤Î²ó¤¹¤È¥¢¡¼¥à¤¬ÊĤ¸¤ë¡¥ *¥×¥í¥°¥é¥à¤Ë¤Ä¤¤¤Æ [#xaeb4206] **¥é¥¤¥ó¥È¥ì¡¼¥¹ [#eec3449e] ¤Þ¤º¡¤¹õ¤¤Àþ¤òÄɽ¾¤¹¤ë¥é¥¤¥ó¥È¥ì¡¼¥¹¤Î¥×¥í¥°¥é¥ß¥ó¥°¤òºî¤Ã¤¿¡¥ ¡Ö´°Á´¤Ë¿¿¤ÃÇò¡×¡¤¡ÖÇò¤È¶Ìܤδ֡ס¤¡Ö¶Ìܡס¤¡Ö¹õ¤È¶Ìܤδ֡ס¤ ¡Ö´°Á´¤Ë¹õ¡×¤Î£µ¤Ä¤ÎÉôʬ¤Ë¿§¤òʬ¤±¤Æ¸÷¤ÎÃͤò¬¤Ã¤¿¡¥ ¤½¤ì¤é¤ÎÃͤϰʲ¼¤Î¿Þ¤Î¤è¤¦¤Ë¤Ê¤Ã¤¿¡¥ &ref(2019a/Member/Kasai/Mission2/light_number.png,50%); ¥×¥í¥°¥é¥ß¥ó¥°¤Ç¤Ï°Ê²¼¤Î¤è¤¦¤ËÄêµÁ¤¹¤ë¡¥ #define black 20 #define white 50 #define lightgray 40 #define darkgray 28 #define center 35 ¤Þ¤¿¡¤¥È¥ì¡¼¥¹»þ¤ÎÆ°ºî¤â¤½¤ì¤¾¤ìÄêµÁ¤·¤Æ¤ª¤¯¡¥ #define turn_right OnFwd(OUT_C,25);OnRev(OUT_B,15);//±¦ÀÞ #define turn_left OnFwd(OUT_B,25);OnRev(OUT_C,15);//º¸ÀÞ #define rotate_right OnFwd(OUT_C,20);OnRev(OUT_B,20);//±¦Àû²ó #define rotate_left OnFwd(OUT_B,20);OnRev(OUT_C,20);//º¸Àû²ó #define go_straight OnFwd(OUT_BC,20);//½ÐÎÏ20¤Îľ¿Ê #define go_straight2 OnFwd(OUT_BC,15);//½ÐÎÏ15¤Îľ¿Ê **¥µ¥Ö¥ë¡¼¥Á¥ó [#yc4e5aff] ***º¸Â¦¤Î¥é¥¤¥ó¥È¥ì¡¼¥¹ [#g13f81db] sub followline_L(int stop_time) { long t0=CurrentTick(); while(CurrentTick()-t0<stop_time){ //¸½ºß¤Î»þ¹ï¤¬°ìÄê¤ÎÃͤòĶ¤¨¤ë¤Þ¤Ç if(SENSOR_1<black){ //¥»¥ó¥µ¡¼¤¬¹õ¤Î»þ rotate_left; //º¸Àû²ó }else if(SENSOR_1<darkgray){ //¥»¥ó¥µ¡¼¤¬¹õ³¥¤Ê¤é turn_left; //º¸ÀÞ }else if(SENSOR_1>lightgray){ //¥»¥ó¥µ¡¼¤¬Çò³¥¤Ê¤é turn_right; //±¦ÀÞ t0=CurrentTick(); //»þ´Ö¤ò¥ê¥»¥Ã¥È }else if(SENSOR_1<35){ //ÌÀ¤ë¤µ35°Ê²¼¤Ç go_straight; //ľ¿Ê t0=CurrentTick(); //»þ´Ö¤ò¥ê¥»¥Ã¥È }else{ //¤½¤ì°Ê³°¤Ï rotate_right; //±¦Àû²ó t0=CurrentTick(); //»þ´Ö¤ò¥ê¥»¥Ã¥È } } Off(OUT_BC); //»þ¹ï¤¬°ìÄê¤ÎÃͤòĶ¤¨¤ë¤ÈÄä»ß Wait(1000); //1ÉôÖÄä»ß } ***±¦Â¦¤Î¥é¥¤¥ó¥È¥ì¡¼¥¹ [#p36e96c9] sub followline_R(int stop_time) { long t0=CurrentTick(); while(CurrentTick()-t0<stop_time){ //¸½ºß¤Î»þ¹ï¤¬°ìÄê¤ÎÃͤòĶ¤¨¤ë¤Þ¤Ç if(SENSOR_1<black){ //¥»¥ó¥µ¡¼¤¬¹õ¤Î»þ rotate_right; //±¦Àû²ó }else if(SENSOR_1<darkgray){ //¥»¥ó¥µ¡¼¤¬¹õ³¥¤Ê¤é turn_right; //±¦ÀÞ }else if(SENSOR_1>lightgray){ //¥»¥ó¥µ¡¼¤¬Çò³¥¤Ê¤é turn_left; //º¸ÀÞ t0=CurrentTick(); //»þ´Ö¤ò¥ê¥»¥Ã¥È }else if(SENSOR_1<35){ //¥»¥ó¥µ¡¼¤¬35°Ê²¼¤Ê¤é go_straight; //ľ¿Ê t0=CurrentTick(); //»þ´Ö¤ò¥ê¥»¥Ã¥È }else{ //¤½¤ì°Ê³°¤Ï rotate_left; //º¸Àû²ó t0=CurrentTick(); //»þ´Ö¤ò¥ê¥»¥Ã¥È } } Off(OUT_BC); //°ìÄê¤Î»þ´Ö¤òĶ¤¨¤ë¤ÈÄä»ß Wait(1000); //°ìÉôÖÄä»ß } ***JÃÏÅÀ¤Ç¤ÎT»úÏ©¤Þ¤Ç±¦Â¦¤ò¥È¥ì¡¼¥¹¤¹¤ë¥µ¥Ö¥ë¡¼¥Á¥ó [#n8f9379f] sub followline_R2(int stop_time) { long t0=CurrentTick(); while(CurrentTick()-t0<stop_time){ //»þ¹ï¤¬¤¢¤ë°ìÄê¤ÎÃͤè¤ê¾®¤µ¤¤¤È¤ if(SENSOR_1<black){ //¹õ¤Ê¤é rotate_right; //±¦Àû²ó t0=CurrentTick(); //»þ´Ö¤ò¥ê¥»¥Ã¥È }else if(SENSOR_1<darkgray){ //³¥¹õ¿§¤Ê¤é turn_right; //±¦ÀÞ t0=CurrentTick(); //»þ´Ö¤ò¥ê¥»¥Ã¥È }else if(SENSOR_1>lightgray){ //³¥Çò¿§¤Ê¤é turn_left; //º¸ÀÞ }else if(SENSOR_1<35){ //ÌÀ¤ë¤µ35°Ê²¼¤Ç go_straight2; //¤æ¤Ã¤¯¤êľ¿Ê t0=CurrentTick(); //»þ´Ö¤ò¥ê¥»¥Ã¥È }else{ //¤½¤ì°Ê³°¤Ê¤é rotate_left; //º¸Àû²ó } } Off(OUT_BC); //Ää»ß Wait(2000); //2ÉôÖÄä»ß } ***¸òº¹ÅÀ²£ÃÇ [#dea5769a] -ľ¿Ê ¹õ³¥(28)¤è¤ê¾®¤µ¤¤Ãͤò¸¡ÃΤ·¤Æ¤¤¤ë»þ¤Ïľ¿Ê¤·¡¤ ¹õ³¥(28)¤è¤êÂ礤¤Ãͤò¸¡ÃΤ·¤¿¤é»ß¤Þ¤ë¡¥¢ª¹õ¤¤Àþ¾å¤Ç¤Ïľ¿Ê sub Blackto_White() { while(SENSOR_1<darkgray){ OnFwd(OUT_BC,15); } Off(OUT_BC); } -±¦Àû²ó Çò³¥(40)¤è¤ê¾®¤µ¤¤Ãͤò¸¡ÃΤ·¤Æ¤¤¤ë»þ¤Ï±¦ÀÞ¤·¡¤ Çò³¥(40)¤è¤êÂ礤¤Ãͤò¸¡ÃΤ·¤¿¤é»ß¤Þ¤ë¡¥ ¢ª¹õ¤¤Àþ¾å¤Ç¤Ï±¦Àû²ó sub Blackto_White_R() { while(SENSOR_1<lightgray){ OnFwd(OUT_C,20); OnRev(OUT_B,20); } Off(OUT_BC); } -º¸Àû²ó Çò³¥(40)¤è¤ê¾®¤µ¤¤Ãͤò¸¡ÃΤ·¤Æ¤¤¤ë»þ¤Ïº¸ÀÞ¤·¡¤ Çò³¥(40)¤è¤êÂ礤¤Ãͤò¸¡ÃΤ·¤¿¤é»ß¤Þ¤ë¡¥¢ª¹õ¤¤Àþ¾å¤Ç¤Ïº¸Àû²ó sub Blackto_White_L() { while(SENSOR_1<lightgray){ OnFwd(OUT_B,20); OnRev(OUT_C,20); } Off(OUT_BC); } **¸òº¹ÅÀǧ¼± [#x6b6474f] ¥é¥¤¥ó¥È¥ì¡¼¥¹¤ò¤·¤Æ¤¤¤ëºÝ¡¤¸òº¹ÅÀ¤Ë¤¿¤É¤êÃ夤¤Æ¤â¤½¤Î¤Þ¤Þ¥È¥ì¡¼¥¹¤ò³¤±¤Æ¤·¤Þ¤¤¶Ê¤¬¤Ã¤Æ¤·¤Þ¤¦¡¥¤½¤Î¤¿¤á¡¤¸òº¹ÅÀ¤òǧ¼±¤¹¤ë¥×¥í¥°¥é¥à¤òºîÀ®¤·¤¿¡¥ ¥é¥¤¥ó¥È¥ì¡¼¥¹¤ò¤·¤Æ¤¤¤ëºÝ¡¤¸òº¹ÅÀ¤Ë¤¿¤É¤êÃ夤¤Æ¤â¤½¤Î¤Þ¤Þ¥È¥ì¡¼¥¹¤ò³¤±¤Æ¤·¤Þ¤¤¶Ê¤¬¤Ã¤Æ¤·¤Þ¤¦¡¥¤½¤Î¤¿¤á¡¤¸òº¹ÅÀ¤òǧ¼±¤¹¤ë¥×¥í¥°¥é¥à¤òºîÀ®¤·¤¿¡¥¤Þ¤¿¡¤¾ò·ï¤Ç¤¢¤ë¸òº¹ÅÀ¤Ç¤Î1ÉÃÄä»ß¤Î¥×¥í¥°¥é¥à¤òÁȤ߹þ¤ó¤À¡¥ ***º¸Â¦¥È¥ì¡¼¥¹¤Î¸òº¹ÅÀǧ¼± [#l9128f0d] &ref(2019a/Member/Kasai/Mission2/left_trace.png,50%); º¸Â¦¤Î¥é¥¤¥ó¥È¥ì¡¼¥¹¤Î¾ì¹ç¡¤¡Ö¹õ¡×¤È¡Ö¹õ³¥¡×¤Î¢¤È¤¤ÎÆ°ºî¤¬Ï¢Â³¤Ç²¿Éô֤«Â³¤¤¤¿¤È¤¡¤»ß¤Þ¤ë¤è¤¦¤Ë¤¹¤ë¡¥ sub followline_L(int stop_time) { long t0=CurrentTick(); while(CurrentTick()-t0<stop_time){¡¡//stop_time¤Ë¤¤¤ì¤¿ÃͤòĶ²á¤¹¤ë¤È¼¡¤Î¥×¥í¥°¥é¥à¤Ø if(SENSOR_1<black){ //black¤¹¤Ê¤ï¤Á20¤è¤ê¾®¤µ¤¤Ãͤò¸¡ÃΤ¹¤ë¤Èº¸¤ØÀû²ó rotate_left;¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡//¤³¤ÎÆ°ºî¤¬Ï¢Â³¤¹¤ë¤È»ß¤Þ¤ë }else if(SENSOR_1<darkgray){¡¡¡¡//darkgray¤¹¤Ê¤ï¤Á28¤è¤ê¾®¤µ¤¤Ãͤò¸¡ÃΤ¹¤ë¤Èº¸¤Ø turn_left; ¡¡¡¡¡¡ //¤³¤ÎÆ°ºî¤¬Ï¢Â³¤¹¤ë¤È»ß¤Þ¤ë }else if(SENSOR_1>lightdark){¡¡¡¡//lightdray¤¹¤Ê¤ï¤Á40¤è¤êÂ礤¤Ãͤò¸¡ÃΤ¹¤ë¤È±¦¤Ø¶Ê¤¬¤ë turn_right; ¡¡¡¡¡¡ //¤³¤ÎÆ°ºîÃæ¤Ï¥é¥¤¥ó¥È¥ì¡¼¥¹¤·Â³¤±¤ë t0=CurrentTick(); }else if(SENSOR_1<center){¡¡¡¡¡¡//center¤¹¤Ê¤ï¤Á35¤è¤ê¾®¤µ¤¤Ãͤò¸¡ÃΤ¹¤ë¤Èľ¿Ê¤¹¤ë go_straight; ¡¡¡¡¡¡ //¤³¤ÎÆ°ºîÃæ¤Ï¥é¥¤¥ó¥È¥ì¡¼¥¹¤·Â³¤±¤ë t0=CurrentTick(); }else{¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡//white¤¹¤Ê¤ï¤Á50¤è¤êÂ礤¤Ãͤò¸¡ÃΤ¹¤ë¤È±¦¤ØÀû²ó rotate_right; ¡¡¡¡¡¡ //¤³¤ÎÆ°ºîÃæ¤Ï¥é¥¤¥ó¥È¥ì¡¼¥¹¤·Â³¤±¤ë t0=CurrentTick(); } } Off(OUT_BC); Wait(1000); } ***±¦Â¦¥È¥ì¡¼¥¹¤Î¸òº¹ÅÀǧ¼± [#s4f7665d] &ref(2019a/Member/Kasai/Mission2/right_trace.png,50%); º¸Â¦¤ÈƱÍͤˡֹõ¡×¤È¡Ö¹õ³¥¡×¤Î¡¤È£¤ÎÆ°ºî¤¬Ï¢Â³¤Ç²¿Éô֤«Â³¤¤¤¿¤È¤»ß¤Þ¤ë¤è¤¦¤Ë¤¹¤ë¡¥ sub followline_R(int stop_time) { long t0=CurrentTick(); while(CurrentTick()-t0<stop_time){¡¡//stop_time¤Ë¤¤¤ì¤¿ÃͤòĶ²á¤¹¤ë¤È¼¡¤Î¥×¥í¥°¥é¥à¤Ø if(SENSOR_1<black){ //black¤¹¤Ê¤ï¤Á20¤è¤ê¾®¤µ¤¤Ãͤò¸¡ÃΤ¹¤ë¤È±¦¤ØÀû²ó rotate_right; //¤³¤ÎÆ°ºî¤¬Ï¢Â³¤¹¤ë¤È»ß¤Þ¤ë }else if(SENSOR_1<darkgray){¡¡¡¡//darkgray¤¹¤Ê¤ï¤Á28¤è¤ê¾®¤µ¤¤Ãͤò¸¡ÃΤ¹¤ë¤È±¦¤Ø turn_right; //¤³¤ÎÆ°ºî¤¬Ï¢Â³¤¹¤ë¤È»ß¤Þ¤ë }else if(SENSOR_1>lightdark){¡¡¡¡//lightdray¤¹¤Ê¤ï¤Á40¤è¤êÂ礤¤Ãͤò¸¡ÃΤ¹¤ë¤Èº¸¤Ø¶Ê¤¬¤ë turn_left; //¤³¤ÎÆ°ºîÃæ¤Ï¥é¥¤¥ó¥È¥ì¡¼¥¹¤·Â³¤±¤ë t0=CurrentTick(); }else if(SENSOR_1<center){¡¡¡¡¡¡//center¤¹¤Ê¤ï¤Á35¤è¤ê¾®¤µ¤¤Ãͤò¸¡ÃΤ¹¤ë¤Èľ¿Ê¤¹¤ë go_straight; //¤³¤ÎÆ°ºîÃæ¤Ï¥é¥¤¥ó¥È¥ì¡¼¥¹¤·Â³¤±¤ë t0=CurrentTick(); }else{¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡//white¤¹¤Ê¤ï¤Á50¤è¤êÂ礤¤Ãͤò¸¡ÃΤ¹¤ë¤Èº¸¤ØÀû²ó rotate_left; //¤³¤ÎÆ°ºîÃæ¤Ï¥é¥¤¥ó¥È¥ì¡¼¥¹¤·Â³¤±¤ë t0=CurrentTick(); } } Off(OUT_BC); Wait(1000); } ¤Þ¤¿¡¤¥³¡¼¥¹¤ÎK¤«¤éL¤Ë¸þ¤«¤¤¡¤L¤Ç»ß¤Þ¤ë¥×¥í¥°¥é¥ß¥ó¥°¤Ë¤ª¤¤¤Æ¤Ï¡¤±¦Â¦¤Î¥é¥¤¥ó¥È¥ì¡¼¥¹¤Ç¡ÖÇò¡×¤È¡ÖÇò¤Î¶Ìܡפ΢¤È¤¤ÎÆ°ºî¤òϢ³¤Ç¹Ô¤¦¤È»ß¤Þ¤ë¤è¤¦¤Ë¤·¤¿¡£ ¤Þ¤¿¡¤¥³¡¼¥¹¤ÎK¤«¤éL¤Ë¸þ¤«¤¤¡¤L¤Ç»ß¤Þ¤ë¥×¥í¥°¥é¥ß¥ó¥°¤Ë¤ª¤¤¤Æ¤Ï¡¤±¦Â¦¤Î¥é¥¤¥ó¥È¥ì¡¼¥¹¤Ç¡ÖÇò¡×¤È¡ÖÇò¤Î¶Ìܡפ΢¤È¤¤ÎÆ°ºî¤òϢ³¤Ç¹Ô¤¦¤È»ß¤Þ¤ë¤è¤¦¤Ë¤·¤¿¡£lightdray¤¹¤Ê¤ï¤Á40¤è¤êÂ礤¤ÃÍ¡¢white¤¹¤Ê¤ï¤Á50¤è¤êÂ礤¤Ãͤò¸¡ÃΤ·¤¿»þ´Ö¤¬stop_time¤ÎÃͤλþ´Öʬ¤òĶ²á¤·¤¿¾ì¹ç¤Ë¤Ïwhile¤ÎÆ°ºî¤¬Ää»ß¤¹¤ë¡¥ sub followline_R2(int stop_time) { long t0=CurrentTick(); while(CurrentTick()-t0<stop_time){¡¡//stop_time¤Ë¤¤¤ì¤¿ÃͤòĶ²á¤¹¤ë¤È¼¡¤Î¥×¥í¥°¥é¥à¤Ø if(SENSOR_1<black){ //black¤¹¤Ê¤ï¤Á20¤è¤ê¾®¤µ¤¤Ãͤò¸¡ÃΤ¹¤ë¤È±¦¤ØÀû²ó rotate_right;¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡//¤³¤ÎÆ°ºîÃæ¤Ï¥é¥¤¥ó¥È¥ì¡¼¥¹¤·Â³¤±¤ë t0=CurrentTick(); }else if(SENSOR_1<darkgray){¡¡ ¡¡//darkgray¤¹¤Ê¤ï¤Á28¤è¤ê¾®¤µ¤¤Ãͤò¸¡ÃΤ¹¤ë¤È±¦¤Ø turn_right; //¤³¤ÎÆ°ºîÃæ¤Ï¥é¥¤¥ó¥È¥ì¡¼¥¹¤·Â³¤±¤ë t0=CurrentTick(); }else if(SENSOR_1>lightdark){¡¡ ¡¡//lightdray¤¹¤Ê¤ï¤Á40¤è¤êÂ礤¤Ãͤò¸¡ÃΤ¹¤ë¤Èº¸¤Ø¶Ê¤¬¤ë turn_left; //¤³¤ÎÆ°ºî¤¬Ï¢Â³¤¹¤ë¤È»ß¤Þ¤ë }else if(SENSOR_1<center){¡¡ ¡¡¡¡//center¤¹¤Ê¤ï¤Á35¤è¤ê¾®¤µ¤¤Ãͤò¸¡ÃΤ¹¤ë¤Èľ¿Ê¤¹¤ë go_straight2; //¤³¤ÎÆ°ºîÃæ¤Ï¥é¥¤¥ó¥È¥ì¡¼¥¹¤·Â³¤±¤ë t0=CurrentTick(); }else{¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ ¡¡//white¤¹¤Ê¤ï¤Á50¤è¤êÂ礤¤Ãͤò¸¡ÃΤ¹¤ë¤Èº¸¤ØÀû²ó rotate_left; //¤³¤ÎÆ°ºî¤¬Ï¢Â³¤¹¤ë¤È»ß¤Þ¤ë } } Off(OUT_BC); Wait(2000); } **¥Ü¡¼¥ë¤Î¥·¥å¡¼¥È [#i119d10d] º£²ó¤Î²ÝÂê¤Ç¤Ï¡¤¥³¡¼¥¹¤ÎÅÓÃæ¤Ç¥Ü¡¼¥ë¤òÄϤߡ¤¥´¡¼¥ëÁ°¤ÇÊü¤·¡¤¥·¥å¡¼¥È¤¹¤ëÆ°¤¤¬¤¢¤ë¡¥»ä¤¿¤Á¤Î ¥°¥ë¡¼¥×¤Ç¤Ï¡¤¥Ü¡¼¥ë¤òÊü¤·¤¿¸å¤Ë¥í¥Ü¥Ã¥ÈËÜÂΤÇÁ°¤Ë²¡¤·½Ð¤·¤Æ¥·¥å¡¼¥È¤¹¤ë¥×¥í¥°¥é¥à¤òºî¤Ã¤¿¡¥¤Þ¤¿¡¤¤½¤ì¤¾¤ì¤ò #define ¤ÇÄêµÁ¤·¤¿¡¥ -¥Ü¡¼¥ë¤òÄϤà¥×¥í¥°¥é¥à #define catch OnRev(OUT_A,25);Wait(500);Off(OUT_A); -¥Ü¡¼¥ë¤òÊü¤¹¥×¥í¥°¥é¥à #define release OnFwd(OUT_A,25);Wait(500);Off(OUT_A); -¥Ü¡¼¥ë¤ò²¡¤·½Ð¤¹¥×¥í¥°¥é¥à ¥â¡¼¥¿¡¼¤Î½ÐÎϤòÂçÉý¤Ë¾å¤²¤Æ¥Ü¡¼¥ë¤¬¤Þ¤Ã¤¹¤°¿Ê¤à¤è¤¦¤Ë¤·¤¿¡¥ #define osidasi OnFwd(OUT_BC,100);Wait(100);Off(OUT_BC); *¥³¡¼¥¹¾å¤òÆ°¤«¤¹ [#t492d4c1] ¥³¡¼¥¹¤Î¾å¤òÆ°¤¯Î®¤ì¤Ï¼¡¤Î¤è¤¦¤Ë¤Ê¤ë¡¥ &ref(2019a/Member/Kasai/Mission2/map_junnbann.png,50%); **¥á¥¤¥ó¥×¥í¥°¥é¥à [#k8a404a7] task main() { SetSensorLight(S1); followline_R(150); //1 Blackto_White_L(); //2 followline_L(200); //3 Blackto_White_R(); //4 followline_R2(200); //5 catch; //¥Ü¡¼¥ë¤òÄϤà turn; //º¸¤ËÀû²ó followline_R(150); //6 Blackto_White(); //7 followline_L(150); //8 Blackto_White_L(); //9 followline_L(200); //10 Blackto_White(); //11 followline_L(200); //12 Blackto_White(); //13 followline_L(200); //14 Blackto_White(); //15 followline_R(150); //16 Blackto_White(); //17 followline_R(150); //18 release; //¥Ü¡¼¥ë¤òÊü¤¹ osidasi; //¥´¡¼¥ë¤¹¤ë } **Á´ÂÎ¤Î¥×¥í¥°¥é¥à [#d398e02c] #define turn_right OnFwd(OUT_C,25);OnRev(OUT_B,15); #define turn_left OnFwd(OUT_B,25);OnRev(OUT_C,15); #define rotate_right OnFwd(OUT_C,20);OnRev(OUT_B,25); #define rotate_left OnFwd(OUT_B,20);OnRev(OUT_C,25); #define go_straight OnFwd(OUT_BC,20); #define go_straight2 OnFwd(OUT_BC,15); #define turn OnRev(OUT_C,25);OnFwd(OUT_B,25);Wait(1500);Off(OUT_BC); #define catch OnRev(OUT_A,25);Wait(500);Off(OUT_A); #define release OnFwd(OUT_A,25);Wait(500);Off(OUT_A); #define osidasi OnFwd(OUT_BC,100);Wait(100);Off(OUT_BC); #define black 20 #define white 50 #define lightgray 40 #define darkgray 28 sub followline_L(int stop_time) { long t0=CurrentTick(); while(CurrentTick()-t0<stop_time){ if(SENSOR_1<black){ rotate_left; }else if(SENSOR_1<darkgray){ turn_left; }else if(SENSOR_1>lightgray){ turn_right; t0=CurrentTick(); }else if(SENSOR_1<35){ go_straight; t0=CurrentTick(); }else{ rotate_right; t0=CurrentTick(); } } Off(OUT_BC); Wait(1000); } sub followline_R(int stop_time) { long t0=CurrentTick(); while(CurrentTick()-t0<stop_time){ if(SENSOR_1<black){ rotate_right; }else if(SENSOR_1<darkgray){ turn_right; }else if(SENSOR_1>lightgray){ turn_left; t0=CurrentTick(); }else if(SENSOR_1<35){ go_straight; t0=CurrentTick(); }else{ rotate_left; t0=CurrentTick(); } } Off(OUT_BC); Wait(1000); } sub followline_R2(int stop_time) { long t0=CurrentTick(); while(CurrentTick()-t0<stop_time){ if(SENSOR_1<black){ rotate_right; t0=CurrentTick(); }else if(SENSOR_1<darkgray){ turn_right; t0=CurrentTick(); }else if(SENSOR_1>lightgray){ turn_left; }else if(SENSOR_1<35){ go_straight2; t0=CurrentTick(); }else{ rotate_left; } } Off(OUT_BC); Wait(2000); } sub Blackto_White() { while(SENSOR_1<darkgray){ OnFwd(OUT_BC,15); } Off(OUT_BC); } sub Blackto_White_R() { while(SENSOR_1<darkgray){ OnFwd(OUT_C,20); OnRev(OUT_B,20); } Off(OUT_BC); } sub Blackto_White_L() { while(SENSOR_1<lightgray){ OnFwd(OUT_B,20); OnRev(OUT_C,20); } Off(OUT_BC); } task main() { SetSensorLight(S1); followline_R(150); Blackto_White_L(); followline_L(200); Blackto_White_R(); followline_R2(200); catch; turn; followline_R(150); Blackto_White(); followline_L(150); Blackto_White_L(); followline_L(200); Blackto_White(); followline_L(200); Blackto_White(); followline_L(200); Blackto_White(); followline_R(150); Blackto_White(); followline_R(150); release; osidasi; } *¤Þ¤È¤á [#b411665f] º£²ó¤â¤Ê¤ó¤È¤«²ÝÂê¤ò¥¯¥ê¥¢¤¹¤ë¤³¤È¤¬¤Ç¤¤¿¡¥ ¤·¤«¤·¡¤¥×¥í¥°¥é¥ß¥ó¥°¤ÎÀ©ºî»þ¤Ë¤Ï¡¤¥×¥í¥°¥é¥à¼«ÂΤϴְã¤Ã¤Æ¤Ê¤¤¤Ï¤º¤Ê¤Î¤Ë¡¤¥í¥Ü¥Ã¥È¤¬Æ°¤«¤Ê¤«¤Ã¤¿¤êÆ°¤¤¬Æߤ¯¤Ê¤ë¤³¤È¤¬Â¿¡¹¤¢¤Ã¤¿¡¥¤½¤Î¸¶°ø¤Ï¥â¡¼¥¿¤ÎÎô²½¤Ê¤É¤Î¸¶°ø¤â¤¢¤ë¤À¤í¤¦¤¬¡¤¤ª¤½¤é¤¯ÅÅÃÓÀÚ¤ì¤Ç¤Ï¤Ê¤¤¤«¤È¹Í¤¨¤é¤ì¤¿¡¥Á°²ó¤Î²ÝÂê¤Î»þ¤Ë¤Ï¤Û¤È¤ó¤É¤Ê¤Ã¤«¤¿¥Ï¥×¥Ë¥ó¥°¤À¤Ã¤¿¤¿¤á¤Ë¡¤ÅÅÃÓÀÚ¤ì¤È¤¤¤¦¤³¤È¤Ëµ¤ÉÕ¤«¤ºÂ¿¤¯¤Î̵Â̤ʻþ´Ö¤òÈñ¤ä¤·¤Æ¤·¤Þ¤Ã¤¿¡¥¾ï¤Ë¤¢¤é¤æ¤ë²ÄǽÀ¤ä¸¶°ø¤ò¹Íθ¤·¤ÆÀ©ºî¤·¤Æ¤¤¤¯É¬Íפ¬¤¢¤ë¤È´¶¤¸¤¿¡¥¤Þ¤¿¡¤¥×¥í¥°¥é¥à¼«ÂΤâ¤Þ¤À¤Þ¤À;·×¤Ê½ê¤¬¤¢¤ë¤È»×¤¦¤Î¤Ç¡¤¼¡²ó¤Î²ÝÂê¤Ç¤Ï´Ê·é¤Ê¤è¤êÎɤ¤¥×¥í¥°¥é¥à¤òÀ©ºî¤·¤¿¤¤¡¥