2011a/A3/²ÝÂꣲº¸

#ref(): File not found: "kadai2_1.jpg" at page "2011a/A3/²ÝÂê2º¸/okamoto¤Î¥Ú¡¼¥¸"

#define THRESHOLD 50                                                       // ïçÃÍ
#define turn_right(t) OnFwd(OUT_A);OnRev(OUT_C);Wait(t);Off(OUT_A+OUT_C);  //±¦¤Ë¶Ê¤¬¤ë
#define turn_left(t) OnRev(OUT_A);OnFwd(OUT_C);Wait(t);Off(OUT_A+OUT_C);   //º¸¤Ë¶Ê¤¬¤ë
#define go_straight(t) OnFwd(OUT_A+OUT_C);Wait(t);Off(OUT_A+OUT_C);        //Á°¿Ê
#define RUN_TIME1 90  //­¡¤Î»þ´Ö                                                     
#define RUN_TIME2 70  //­¢                                                     
#define RUN_TIME3 34  //­£                                                     
#define RUN_TIME4 27  //­¤
#define RUN_TIME5 23  //­¥
#define RUN_TIME6 25  //­¦
#define RUN_TIME7 25  //­§
#define RUN_TIME8 50  //­¨
#define RUN_TIME9 50  //­©

task main ()
{   
   SetSensor(SENSOR_1, SENSOR_LIGHT);//¥»¥ó¥µ¡¼1¤Ï¸÷¥»¥ó¥µ¡¼
   SetSensor(SENSOR_3, SENSOR_LIGHT);//¥»¥ó¥µ¡¼3¤Ï¸÷¥»¥ó¥µ¡¼
  ClearTimer(0);
   while (Timer(0) <=RUN_TIME1) //whileÆâ¤òRUN_TIME1Éôַ«¤êÊÖ¤¹¡¦¡¦¡¦­¡
                                       {
       if ((SENSOR_1 < THRESHOLD)&&(SENSOR_3 < THRESHOLD))
       {   
           OnFwd(OUT_A+OUT_C);//(¥»¥ó¥µ¡¼1¡¢¥»¥ó¥µ¡¼3)(¹õ¡¢¹õ)¤Î¤È¤­Á°¿Ê           
       } 
       if ((SENSOR_1 < THRESHOLD)&&(SENSOR_3 > THRESHOLD))
       {   
           Off(OUT_A);//¡Ê¹õ¡¢Çò¡Ë¤Î¤È¤­¡¢º¸¼ÖÎؤò»ß¤á¤Æ¿ÊÏ©¤òº¸¤Ë½¤Àµ¤·µÞ¥«¡¼¥Ö¤ò¶Ê¤¬¤ë
           OnFwd(OUT_C);
        }
       if ((SENSOR_1 > THRESHOLD)&&(SENSOR_3 < THRESHOLD))
        {   
           OnRev(OUT_C);//¡ÊÇò¡¢¹õ¡Ë¤Î¤È¤­¿ÊÏ©¤ò±¦¤Ë½¤Àµ
           OnFwd(OUT_A);
         }
        if ((SENSOR_1 > THRESHOLD)&&(SENSOR_3 > THRESHOLD))
         {   
           OnFwd(OUT_A+OUT_C);//¡ÊÇò¡¢Çò¡Ë¤Î¤È¤­Á°¿Ê           
         } 
                                        }
         Off(OUT_A+OUT_C);
     ClearTimer(0);//¥¿¥¤¥Þ¡¼¥ê¥»¥Ã¥È
     while (Timer(0) <=RUN_TIME2) //¥»¥ó¥µ¡¼1¤ò»ÈÍѤ»¤º¥³¡¼¥¹¤ÎÆ⦤Υ»¥ó¥µ¡¼¤À¤±´¶ÃΤµ¤»¤Æľ³Ñ¤ò¶Ê¤¬¤ë¡¦¡¦¡¦­¢
                     {
       if ((SENSOR_3 < THRESHOLD))
       {   
           OnFwd(OUT_A);//¥»¥ó¥µ¡¼3¤¬¹õ¤Î¤È¤­¿ÊÏ©¤ò±¦¤Ë½¤Àµ
           OnRev(OUT_C);
       } 
       if ((SENSOR_3 > THRESHOLD))
       {   
           OnFwd(OUT_A+OUT_C);//¥»¥ó¥µ¡¼3¤¬Çò¤Î¤È¤­Á°¿Ê          
        }      
                     }
         Off(OUT_A+OUT_C);
     ClearTimer(0);
   while (Timer(0) <=RUN_TIME3)¡¦¡¦¡¦­£
{
       if ((SENSOR_1 < THRESHOLD)&&(SENSOR_3 < THRESHOLD))
       {   
           OnFwd(OUT_A+OUT_C);//¡Ê¹õ¡¢¹õ¡ËÁ°¿Ê
           
       } 
       if ((SENSOR_1 < THRESHOLD)&&(SENSOR_3 > THRESHOLD))
       {   
           Off(OUT_A);//¡Ê¹õ¡¢Çò¡Ë¿ÊÏ©½¤Àµ
           OnFwd(OUT_C);
        }
       if ((SENSOR_1 > THRESHOLD)&&(SENSOR_3 < THRESHOLD))
        {   
           OnRev(OUT_C);//¡ÊÇò¡¢¹õ¡Ë¿ÊÏ©½¤Àµ
           OnFwd(OUT_A);
         }
        if ((SENSOR_1 > THRESHOLD)&&(SENSOR_3 > THRESHOLD))
         {   
           OnFwd(OUT_A+OUT_C);//¡ÊÇò¡¢Çò¡ËÁ°¿Ê
           
         } 
                                        }
         Off(OUT_A+OUT_C);
   turn_right(40);                  //¥í¡¼¥¿¥ê¡¼¤ËÆþ¤ëÁ°¤Ë±¦¤Ë¶Ê¤¬¤ë
   ClearTimer(0);
     while (Timer(0) <=RUN_TIME4) //¥í¡¼¥¿¥ê¡¼¤Ç¤Ï¥»¥ó¥µ¡¼1¤À¤±»ÈÍÑ¡¦¡¦¡¦­¤
                     {
       if ((SENSOR_1 < THRESHOLD))
       {   
           OnFwd(OUT_C);//¡Ê¹õ¡Ë¡¡¿ÊÏ©½¤Àµ
           OnRev(OUT_A);
       } 
       if ((SENSOR_1 > THRESHOLD))
       {   
           OnFwd(OUT_A+OUT_C);//¡ÊÇò¡Ë  Á°¿Ê        
        }      
                     }
         Off(OUT_A+OUT_C);

     turn_right(50);//¥í¡¼¥¿¥ê¡¼½Ð¤ë¤È¤­±¦¤Ë¶Ê¤¬¤ë

   ClearTimer(0);
   while (Timer(0) <=RUN_TIME5)¥×¥í¥°¥é¥à¤Ï­£¤ÈƱ¤¸¡¦¡¦¡¦­¥
{
       if ((SENSOR_1 < THRESHOLD)&&(SENSOR_3 < THRESHOLD))
       {   
           OnFwd(OUT_A+OUT_C);//¡Ê¹õ¡¢¹õ¡ËÁ°¿Ê            
       } 
       if ((SENSOR_1 < THRESHOLD)&&(SENSOR_3 > THRESHOLD))
       {   
           OnRev(OUT_A);//¡Ê¹õ¡¢Çò¡Ë¿ÊÏ©½¤Àµ
           OnFwd(OUT_C);
        }
       if ((SENSOR_1 > THRESHOLD)&&(SENSOR_3 < THRESHOLD))
        {   
           OnRev(OUT_C);//¡ÊÇò¡¢¹õ¡Ë¿ÊÏ©½¤Àµ
           OnFwd(OUT_A);
         }
        if ((SENSOR_1 > THRESHOLD)&&(SENSOR_3 > THRESHOLD))
         {   
          OnFwd(OUT_A+OUT_C); //¡ÊÇò¡¢Çò¡ËÁ°¿Ê            
          } 
                     }
         Off(OUT_A+OUT_C);
         turn_right(55);            //¶áÆ»¤ËÆþ¤ëÁ°¤Ë±¦¤Ë¶Ê¤¬¤ë
        go_straight(190);           //¶áÆ»¤òÁ°¿Ê
         turn_right(50);           //¶áÆ»¤Ë½Ð¤ë¤È¤­¤Ë±¦¤Ë¶Ê¤¬¤ë       
        ClearTimer(0);
   while (Timer(0) <=RUN_TIME6)¥×¥í¥°¥é¥à¤Ï­£¤ÈƱ¤¸ ¡¦¡¦¡¦­¦
{
       if ((SENSOR_1 < THRESHOLD)&&(SENSOR_3 < THRESHOLD))
       {   
           OnFwd(OUT_A+OUT_C);//¡Ê¹õ¡¢¹õ¡ËÁ°¿Ê           
       } 
       if ((SENSOR_1 < THRESHOLD)&&(SENSOR_3 > THRESHOLD))
       {   
           OnRev(OUT_A);//¡Ê¹õ¡¢Çò¡Ë¿ÊÏ©½¤Àµ
           OnFwd(OUT_C);
        }
       if ((SENSOR_1 > THRESHOLD)&&(SENSOR_3 < THRESHOLD))
        {   
           OnRev(OUT_C);//¡ÊÇò¡¢¹õ¡Ë¿ÊÏ©½¤Àµ
           OnFwd(OUT_A);
         }
        if ((SENSOR_1 > THRESHOLD)&&(SENSOR_3 > THRESHOLD))
         {   
          OnFwd(OUT_A+OUT_C); //¡ÊÇò¡¢Çò¡ËÁ°¿Ê           
          } 
                     }
         Off(OUT_A+OUT_C);
          turn_right(30);//¥í¡¼¥¿¥ê¡¼¤ËÆþ¤ëÁ°¤Ë±¦¤Ë¶Ê¤¬¤ë

      ClearTimer(0);
     while (Timer(0) <=RUN_TIME7) //¥×¥í¥°¥é¥à¤Ï­¤¤ÈƱ¤¸¡¦¡¦¡¦­§
                     {
       if ((SENSOR_1 < THRESHOLD))
       {   
           OnFwd(OUT_C);//¹õ
           OnRev(OUT_A);
       } 
       if ((SENSOR_1 > THRESHOLD))
       {   
           OnFwd(OUT_A+OUT_C);//Çò          
        }       
                     }
         Off(OUT_A+OUT_C);
      turn_right(50); //¥í¡¼¥¿¥ê¡¼½Ð¤ë¤È¤­±¦¤Ë¶Ê¤¬¤ë
      ClearTimer(0);
      while (Timer(0) <=RUN_TIME8) ¥×¥í¥°¥é¥à¤Ï­£¤ÈƱ¤¸¡¦¡¦¡¦­¨
{
       if ((SENSOR_1 < THRESHOLD)&&(SENSOR_3 < THRESHOLD))
       {   
           OnFwd(OUT_A+OUT_C);//¡Ê¹õ¡¢¹õ¡ËÁ°¿Ê           
       } 
       if ((SENSOR_1 < THRESHOLD)&&(SENSOR_3 > THRESHOLD))
       {   
           OnRev(OUT_A);//¡Ê¹õ¡¢Çò¡Ë¿ÊÏ©½¤Àµ
           OnFwd(OUT_C);
        }
       if ((SENSOR_1 > THRESHOLD)&&(SENSOR_3 < THRESHOLD))
        {   
           OnRev(OUT_C);//¡ÊÇò¡¢¹õ¡Ë¿ÊÏ©½¤Àµ
           OnFwd(OUT_A);
         }
        if ((SENSOR_1 > THRESHOLD)&&(SENSOR_3 > THRESHOLD))
         {   
          OnFwd(OUT_A+OUT_C); //¡ÊÇò¡¢Çò¡ËÁ°¿Ê           
          } 
                     }
         Off(OUT_A+OUT_C);
        ClearTimer(0);
      while (Timer(0) <=RUN_TIME9)¡¦¡¦¡¦­©
{
       if ((SENSOR_1 < THRESHOLD)&&(SENSOR_3 < THRESHOLD))
       {   
           OnFwd(OUT_A+OUT_C);//¡Ê¹õ¡¢¹õ¡ËÁ°¿Ê            
       } 
       if ((SENSOR_1 < THRESHOLD)&&(SENSOR_3 > THRESHOLD))
       {   
           OnRev(OUT_A);//¡Ê¹õ¡¢Çò¡Ë¿ÊÏ©½¤Àµ
           OnFwd(OUT_C);
        }
       if ((SENSOR_1 > THRESHOLD)&&(SENSOR_3 < THRESHOLD))
        {   
           Off(OUT_C);//(Çò¡¢¹õ)¤Î¤È¤­¡¢±¦¼ÖÎؤò»ß¤á¤Æ¿ÊÏ©¤ò±¦¤Ë½¤Àµ¤·µÞ¥«¡¼¥Ö¤ò¶Ê¤¬¤ë
           OnFwd(OUT_A);
         }
        if ((SENSOR_1 > THRESHOLD)&&(SENSOR_3 > THRESHOLD))
         {   
          OnFwd(OUT_A+OUT_C); //¡ÊÇò¡¢Çò¡ËÁ°¿Ê           
          } 
                     }
         Off(OUT_A+OUT_C);
}

¥È¥Ã¥×   ÊÔ½¸ Åà·ë º¹Ê¬ ÍúÎò źÉÕ Ê£À½ ̾Á°Êѹ¹ ¥ê¥í¡¼¥É   ¿·µ¬ °ìÍ÷ ¸¡º÷ ºÇ½ª¹¹¿·   ¥Ø¥ë¥×   ºÇ½ª¹¹¿·¤ÎRSS
Last-modified: 2011-06-17 (¶â) 12:10:33