[[2016a/Member]]

#contents

*¤Ï¤¸¤á¤Ë [#db5768ef]

º£²ó¤Î²ÝÂê¤Ï²¼¤Î¿Þ¤Î¤è¤¦¤Ê¥³¡¼¥¹¤ò³Æ¥Á¡¼¥à¤ÇºîÀ®¤·¡¢¥ß¥Ã¥·¥ç¥ó¤ò¿ë¹Ô¤¹¤ë¤³¤È¤Ç¤¢¤ë¡£

#ref(2016a-mission2.png)

¤Ê¤ª¡¢º£²ó¤Î»ä¤Î¥ß¥Ã¥·¥ç¥ó¤Ï

BÃÏÅÀ¤«¤éCÃÏÅÀ¤Ø

(BÃÏÅÀ ¢ª R±¦ÀÞ ¢ª Qľ¿Ê ¢ª Qľ¿Ê ¢ªP±¦ÀÞ ¢ª S±¦ÀÞ ¢ª CÃÏÅÀ)

¤Ç¤¢¤ë¡£([[2016ǯÅÙÁ°´ü ²ÝÂê2:http://yakushi.shinshu-u.ac.jp/robotics/?2016a%2FMission2]]°úÍÑ)

*¥í¥Ü¥Ã¥È¤ÎÀâÌÀ [#dcc4ff80]

*¥×¥í¥°¥é¥à [#h080aa93]

 float GetAngle(float d)
 { 
  const float diameter=5.45;  //¥¿¥¤¥ä¤Îľ·Â(­Ñ)
  const float pi=3.1415;      //±ß¼þΨ(¦Ð)
  float ang =d/(diameter*pi)*360.0;  //³ÑÅÙ¤ò·×»»¤¹¤ë
  return ang;                 //³ÑÅÙ¤òÊÖ¤¹¡¡
 }

 #define Ninety  GetAngle(16.5)
 #define Two GetAngle(2)
 #define Usetsu RotateMotorEx(OUT_BC,50,Ninety,100,true,false);
 #define Tyokushin RotateMotorEx(OUT_BC,50,Two,0,true,true);

 #define SHIKIICHI 45
 #define OnRL(b,c) OnFwd(OUT_B,b);OnFwd(OUT_C,c);
 #define go_forward OnRL(50,50);
 #define turn_left1 OnRL(25,-25); // º¸Àû²ó
 #define turn_left0 OnRL(25,0); // º¸ÀÞ
 #define turn_right0 OnRL(0,25); // ±¦ÀÞ
 #define turn_right1 OnRL(-25,25); // ±¦Àû²ó
 #define nMAX 120
 #define Sound PlaySound(SOUND_UP);Off(OUT_BC);Wait(2000); //¸òº¹ÅÀ¤Ç²»¤òÌĤ餹
 int t=0; //¸òº¹ÅÀ¤òÄ̤俲ó¿ô
 
 sub L_susumu() //¹õÀþ¤Îº¸Â¦¤ò¿Ê¤à
 {
  SetSensorLight(S3);
  int n=0; 
  while (n < nMAX) {
    if (SENSOR_3 < SHIKIICHI-15) {
     turn_left1
     n++;
     t=t+1;
    } else {
      if (SENSOR_3 < SHIKIICHI-7) {
      turn_left0
    } else if (SENSOR_3 < SHIKIICHI+7) {
      go_forward
    } else if (SENSOR_3 < SHIKIICHI+15) {
      turn_right0
    } else {
      turn_right1
     } 
      n=0;
    }
    Wait(1000);
  }
 }

 
 sub R_susumu() //¹õÀþ¤Î±¦Â¦¤ò¿Ê¤à
 {
  SetSensorLight(S3);
  int n=0; 
  while (n < nMAX) {
   if (SENSOR_3 < SHIKIICHI-15) {
    turn_right1
    n++;
    t=t+1;
   } else {
     if (SENSOR_3 < SHIKIICHI-7) {
     turn_right0
   } else if (SENSOR_3 < SHIKIICHI+7) {
     go_forward
   } else if (SENSOR_3 < SHIKIICHI+15) {
     turn_left0
   } else {
     turn_left1
    }
     n=0;
   }
    Wait(1000);
  }
 }


 task main()
 {
  SetSensorLight(S3);
  int n=0;
  while (t <= 6) {
     if(t <= 1){
      L_susumu();
      Sound
      Tyokushin //¥¹¥¿¡¼¥ÈÃÏÅÀ¤Ïľ¿Ê
      n=0;
    } else if (t <= 2){
      Sound
      Usetsu
      n=0;
      Off(OUT_BC);
      OnFwd(OUT_B,50);
      Wait(200);
      Off(OUT_B); //1¤ÄÌܤθòº¹ÅÀ¤ò±¦À޸塢¹õÀþ¤Î±¦Â¦¤ò¿Ê¤à¤¿¤á°ÌÃÖÊÑ
      R_susumu();
    } else if (t <= 3){
      Sound
      Tyokushin
      n=0;
      Off(OUT_BC);
      OnFwd(OUT_C,50);
      Wait(200);
      Off(OUT_C); //2¤ÄÌܤθòº¹ÅÀ¤òľ¿Ê¸å¡¢¹õÀþ¤Îº¸Â¦¤ò¿Ê¤à¤¿¤á°ÌÃÖÊÑ
      L_susumu();
    } else if (t <= 4){
      Sound
      Tyokushin //3¤ÄÌܤθòº¹ÅÀ¤Ïľ¿Ê
      n=0;
      L_susumu();
    } else {
      Sound
      Usetsu //4,5¤ÄÌܤθòº¹ÅÀ¤Ï±¦ÀÞ
      n=0;
      L_susumu();
    }
  }
  OnFwd(OUT_BC,50);
  Wait(3000);
  Off(OUT_BC);
 }

*´¶ÁÛ¡¦¹Í»¡ [#r903969b]

¥È¥Ã¥×   ¿·µ¬ °ìÍ÷ ¸¡º÷ ºÇ½ª¹¹¿·   ¥Ø¥ë¥×   ºÇ½ª¹¹¿·¤ÎRSS