[[2014b/Member]]

Ìܼ¡
#contents

*¤Ï¤¸¤á¤Ë [#h65b02b1]
²ÝÂê¤Ï½ñÆ»¥í¥Ü¥Ã¥È¤ÎºîÀ®¤Ç¤¢¤ë¡£
¾Ü¤·¤¤ÆâÍƤȤ·¤Æ¡¢
³Æ¼«¤Î̾Á°¤ÎÃæ¤Î°ìʸ»ú¤òA4ÍÑ»æ¤ÎÃæ¤Ë½ñ¤­¤Ê¤µ¤¤¡£ ¤¿¤À¤·7²è°Ê¾å¤Îʸ»ú¤òÁª¤Ö¤³¤È¡£¤â¤·7²è°Ê¾å¤Îʸ»ú¤¬¤Ê¤¤¾ì¹ç¤Ë¤Ï¹ç·×7²è°Ê¾å¤Ë¤Ê¤ë¤è¤¦¤ËÊ£¿ô¤Îʸ»ú¤ò½ñ¤­¤Ê¤µ¤¤¡£
¥Þ¥¯¥í¤ä´Ø¿ô¤Ê¤É¤ò»È¤¤¡¢main´Ø¿ô¤Ï¤Ê¤ë¤Ù¤¯Ã±½ã¤Ë¤Ê¤ë¤è¤¦¤Ë¥×¥í¥°¥é¥à¤òºî¤ë¤³¤È¡£
([[2014ǯ¸å´ü/²ÝÂ꣱:http://yakushi.shinshu-u.ac.jp/robotics/?2014b%2FMission1]]¤è¤ê)

º£²ó¤Ï¡Ö¹á¡×¤È¤¤¤¦Ê¸»ú¤ò¥í¥Ü¥Ã¥È¤Ë½ñ¤«¤»¤ë¡£


*¥í¥Ü¥Ã¥È¤ÎÀâÌÀ [#l6d65f52]
#ref(2014b/Member/arisyka/Mission1/IMG_3305 p.gif,30%)

¥Ú¥ó¤ò»ý¤¿¤»¤ë¤¿¤á¤ËÀ֤ǰϤޤ줿Éôʬ¤ò´ðÁäȤʤë¼ÖÂΤ˼è¤êÉÕ¤±¡¢¥Ú¥ó¤òÎØ¥´¥à¤Ç¸ÇÄꤷ¤¿¤À¤±¤Î¥·¥ó¥×¥ë¤Ê¹½Â¤¤Ç¤¢¤ë¡£

*¥í¥Ü¥Ã¥È¤ÎÆ°ºî¡¦¥×¥í¥°¥é¥ß¥ó¥°¤ÎÀâÌÀ [#yb48396e]

¥í¥Ü¥Ã¥È¤Ëµá¤á¤ëÆ°¤­¤Ï

¡¦É¬ÍפʳÑÅÙ¤ò²óž¤µ¤»¤ë

¡¦¥Ú¥ó¤Î¾å¤²²¼¤²

¤Î£²¤Ä¤¬¼ç¤È¤Ê¤ë¡£

Á´ÂΤǻȤ¦ÄêµÁ¤È¤·¤ÆSPEED=50¡¢¥â¡¼¥¿¡¼B¡¢C¤ò¤½¤ì¤¾¤ì±¦¡¢º¸¤Î¥¿¥¤¥ä¤ÎÆ°¤­¤È¤·¤Æ¹Í¤¨¤ë¡£

º£²ó¤Ïµ÷Î¥¤«¤é¥¿¥¤¥ä¤Î²óž³Ñ¤ò·×»»¤¹¤ëfloat·¿¤Î´Ø¿ô¤ò»È¤Ã¤¿¥×¥í¥°¥é¥ß¥ó¥°¤ò¸µ¤Ë¥í¥Ü¥Ã¥È¤òÆ°¤«¤·¤Æ¤¤¤¯¡£


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



**¥í¥Ü¥Ã¥È¤ò²óž¤µ¤»¤ë [#q9d8bfe3]
ʸ»ú¤ò½ñ¤¯¤¿¤á¤Ë¤Ï¡¢¥í¥Ü¥Ã¥ÈËÜÂΤò²óž¤µ¤»¤ëɬÍפ¬¤¢¤ë¡£¤³¤³¤Ç¤Ï¥Ú¥ó¤Ç½ñ¤¤¤¿Àþ¤ÈÀþ¤ò·Ò¤²¤ë¤¿¤á¤Ë¥¿¥¤¥ä¤òÊÒÊý¤À¤±Æ°¤«¤¹¤À¤±¤Ç¤Ï¤Ê¤¯¡¢Á°¸å¤ÎÆ°¤­¤âɬÍפȤʤ롣

¥¿¥¤¥ä¤È¥¿¥¤¥ä¤ÎŤµ¡Êr¡Ë¤¬10.5­Ñ¤Ç¤¢¤ë¤«¤é¡¢¤³¤ì¤ò¸µ¤Ëfloat·¿¤Î´Ø¿ô¤òÍøÍѤ·¤Æ¥¿¥¤¥ä¤Îé¤ë±ß¼þ¤ÎŤµ¡ÊL=2¦ÐrX/360¡Ëµá¤á¤ë¡£¡ÊX=³ÑÅÙ¡Ë
¤Þ¤¿¡¢¥Ú¥ó¤ò¾å¤²¤¿°ÌÃÖ¤ÈƱ¤¸¾ì½ê¤Ë»ý¤Ã¤Æ¤¤¤¯¤¿¤á¤Ë¡¢¼ÂºÝ¤Ë¥í¥Ü¥Ã¥È¤ò²óž¤µ¤»¡¢½Ä¤È²£¤ÎŤµ¤Îº¹¤òÄ구¤Ç¬¤ê¡¢¤½¤Îº¹¤ò¥í¥Ü¥Ã¥È¤ËÁ°¸å°ÜÆ°¤µ¤»¤ë¡£


***90ÅÙ²óž [#aca1e640]
90Åٲ󞤵¤»¤ë¤¿¤á¤Î±ß¼þ¤ÎŤµ¤Ï¡¢

L¡á2¡ß3.1415¡ß10.5¡ß90/360¡á16.5­Ñ

¤Þ¤¿¡¢90Åٲ󞤷¤¿¸å¤Ë10­Ñ¸å¤í¤Ë²¼¤²¤ë¤È¸µ¤Î¥Ú¥ó¤Î°ÌÃ֤ˤ¤¤¯¡£


 #define Ninety  GetAngle(16.5)
 #define Ten GetAngle(10)

 #define¡¡NBB¡¡RotateMotor(OUT_B,SPEED,Ninety);RotateMotor(OUT_BC,-50,Ten);¡¡¡¡¡¡¡¡//±¦¤Î¥¿¥¤¥ä¤ò16.5­Ñ¿Ê¤Þ¤»¡¢10­ÑÌá¤ë¢ª±¦¤Ë90ÅÙ²óž
 #define¡¡NBC RotateMotor(OUT_C,SPEED,Ninety);RotateMotor(OUT_BC,-50,Ten);¡¡¡¡¡¡¡¡//º¸¤Ë90ÅÙ²óž


***60ÅÙ²óž [#ff4fe7c6]
90ÅÙ²óž¤ÈƱ¤¸¤ä¤êÊý¤Ç¡¢

L=2¡ß3.1415¡ß10.5¡ß60/360¢â10.995­Ñ

¤Þ¤¿¡¢3­ÑÁ°¤Ë¿Ê¤ó¤À¸å¡¢60Åٲ󞤷¡¢10.494­Ñ¸å¤í¤Ë²¼¤²¤ë¤È¸µ¤Î°ÌÃ֤ˤ¤¤¯¡£

 #define Sixty GetAngle(10.995)
 #define Three RotateMotor(OUT_BC,SPEED,GetAngle(3));

 #define SixtyBackB Three;RotateMotor(OUT_B,SPEED,Sixty);RotateMotor(OUT_BC,-50,GetAngle(10.494));¡¡¡¡¡¡¡¡//3­Ñ¿Ê¤á¡¢±¦¤Î¥¿¥¤¥ä¤ò10.494­Ñ¿Ê¤Þ¤»¤¿¸å¡¢10.494­Ñ¸åÊý¤Ø¢ª±¦¤Ë60ÅÙ²óž
 #define SixtyBackC Three;RotateMotor(OUT_C,SPEED,Sixty);RotateMotor(OUT_BC,-50,GetAngle(10.494));¡¡¡¡¡¡¡¡//º¸¤Ë60ÅÙ²óž


***20ÅÙ²óž [#afd6aa67]
90ÅÙ²óž¤ÈƱ¤¸¤ä¤êÊý¤Ç

L=2¡ß3.1415¡ß10.5¡ß20/360¢â3.665­Ñ

¤Þ¤¿¡¢5­Ñ¿Ê¤ó¤À¸å¡¢20Åٲ󞤷¡¢¸å¤í¤Ë6.146¡Ê3.646+2.5¡Ë­Ñ¸å¤í¤Ë²¼¤²¤ë¤È¸µ¤Î°ÌÃ֤ˤ¤¤¯¡£

 #define Twenty GetAngle(3.665)
 #define Five RotateMotor(OUT_BC,SPEED,GetAngle(5));
 #define TwoFiveB RotateMotor(OUT_BC,-50,GetAngle(2.5));

 #define TwentyBackB Five;RotateMotor(OUT_B,SPEED,Twenty);RotateMotor(OUT_BC,-50,GetAngle(3.646));TwoFiveB;¡¡¡¡¡¡¡¡//5­Ñ¿Ê¤á¡¢±¦¤Î¥¿¥¤¥ä¤ò3.665­Ñ¿Ê¤Þ¤»¤¿¸å¡¢6.146­Ñ¸åÊý¤Ø¢ª±¦¤Ë20ÅÙ²óž
 #define TwentyBackC Five;RotateMotor(OUT_C,SPEED,Twenty);RotateMotor(OUT_BC,-50,GetAngle(3.646));TwoFiveB;¡¡¡¡¡¡¡¡//º¸¤Ë20ÅÙ²óž


**¥Ú¥ó¤ÎÆ°ºî [#x33b61aa]

¤³¤³¤Ç¤ÏÍ£°ìfloat·¿¤Î´Ø¿ô¤ò»È¤ï¤º¤Ë¥â¡¼¥¿¡¼¤Î²óž³ÑÅÙ¤ò»ØÄꤷ¤Æ¥â¡¼¥¿¡¼¤ò²óž¤µ¤»¤ë¤³¤È¤Ç¥Ú¥ó¤Î¾å¤²²¼¤²¤ÎÆ°ºî¤ò¹Ô¤¦¡£

 #define UP RotateMotor(OUT_A,SPEED,-50);¡¡¡¡¡¡¡¡//¥Ú¥ó¤ò¾å¤²¤ë
 #define DOWN RotateMotor(OUT_A,SPEED,50);¡¡¡¡¡¡//¥Ú¥ó¤ò²¼¤²¤ë

#ref(2014b/Member/arisyka/Mission1/down up ¥ë¡¼¥×.gif,40%)


*»ú¤ò½ñ¤¯ [#h20e4079]
**½ñ¤¯½çÈÖ [#o48f3095]
¡Ö¹á¡×¤ò½ñ¤¯¤¿¤á¤Ë¡¢

1¡¢­¡¡Ö½½¡×¤ò½ñ¤¯¢ª­¢¡ÖÆü¡×¤ò½ñ¤¯¡Ê¡Ö¸ý¡×¢ª¡Ö°ì¡×¡Ë¢ª­£¡ÖȬ¡×¤ò½ñ¤¯¢ª­¤¡Ö¥Î¡×¤ò½ñ¤¯ 
#ref(2014b/Member/arisyka/Mission1/nxc senn 1.2.gif,50%)

2¡¢­¡¡Ö¥Î¡×¤ò½ñ¤¯¢ª­¢²£Àþ4Ëܤò½ñ¤¯¢ª­£½ÄÀþ3Ëܽñ¤¯¢ª­¤¡ÖȬ¡×¤ò½ñ¤¯ 
#ref(2014b/Member/arisyka/Mission1/nxc senn 3.gif,50%) 


½çÈÖ¤ò3¤Ä¹Í¤¨¡¢¥×¥í¥°¥é¥ß¥ó¥°¤·¡¢»î¤·¤Æ¤ß¤¿·ë²Ì¡¢2¤ÎÊý¤¬¤Þ¤À¾å¼ê¤¯¤«¤±¤¿¤Î¤Ç2¤Î½ñ¤¯½çÈÖ¤ò¾Ò²ð¤¹¤ë¡£



**¥×¥í¥°¥é¥à [#qc6c67ee]
»Ï¤á¤ËŤµ¤òÄêÍý¤·¤Þ¤¹¤¬¡¢Á°¤Ø¿Ê¤àµ÷Î¥¤ò±Ñ¸ì¤Çɽµ­¤·¡¢¸å¤í¤Ë¿Ê¤àÆ°¤­¤Ï±Ñ¸ì¤Çɽµ­¤·¤¿¤¹¤°¸å¤í¤Ë¡ÉBack¡É¤È¤¤¤¦°ÕÌ£¤Ç¡ÖB¡×¤Èɽµ­¤·¤Æ¤¢¤ê¤Þ¤¹¡£

 #define Two RotateMotor(OUT_BC,SPEED,GetAngle(2));¡¡¡¡¡¡//2­ÑÁ°¤Ë¿Ê¤à¡¡
 #define TwoFive RotateMotor(OUT_BC,SPEED,GetAngle(2.5));¡¡¡¡//2.5­ÑÁ°¤Ë¿Ê¤à¡Ê°Ê²¼Î¬¡Ë
 #define ThreeFive RotateMotor(OUT_BC,SPEED,GetAngle(3.5));
 #define Four RotateMotor(OUT_BC,SPEED,GetAngle(4));¡¡
 #define FiveFive RotateMotor(OUT_BC,SPEED,GetAngle(5.5));
 #define Six RotateMotor(OUT_BC,SPEED,GetAngle(6));
 #define Seven RotateMotor(OUT_BC,SPEED,GetAngle(7));
 #define Eight RotateMotor(OUT_BC,SPEED,GetAngle(8));
 #define Eleven RotateMotor(OUT_BC,SPEED,GetAngle(11));

 #define OneB RotateMotor(OUT_BC,-50,GetAngle(1));¡¡¡¡¡¡//1­Ñ¸å¤í¤Ë¿Ê¤à¡Ê°Ê²¼Î¬¡Ë
 #define ThreeB RotateMotor(OUT_BC,-50,GetAngle(3));
 #define SixB RotateMotor(OUT_BC,-50,GetAngle(6));

-¡Ö¥Î¡×¤ò½ñ¤¯

 task main ()
 {
 Wait(2000);

 DOWN;
 Eight;¡¡¡¡¡¡¡¡//¡Ö¥Î¡×¤ò½ñ¤¯

-²£Àþ4ËÜ°ú¤¯

 UP;
 Two;
 SixtyBackB;
 Two;
 NBB;

 DOWN;
 Eleven;¡¡//¡Ö½½¡×¤Î¡Ö°ì¡×¤ò½ñ¤¯
 UP;¡¡¡¡¡¡

 NBC;
 TwoFive;
 NBC;
 Two;

 DOWN;
 Seven;¡¡¡¡¡¡//¡ÖÆü¡×¤Î¾å¤Î¡Ö°ì¡×¤ò½ñ¤¯
 UP;

 NBB;
 Two;
 NBB;

 DOWN;
 Seven;¡¡¡¡¡¡//¡ÖÆü¡×¤Î¿¿¤óÃæ¤Î¡Ö°ì¡×¤ò½ñ¤¯
 UP;

 NBC;
 Two;
 NBC;

 DOWN;
 Seven;¡¡¡¡¡¡//¡ÖÆü¡×¤Î²¼¤Î¡Ö°ì¡×¤ò½ñ¤¯
 UP;

-½ÄÀþ3ËÜ°ú¤¯

 NBC;

 DOWN;
 Four;¡¡¡¡¡¡//¡ÖÆü¡×¤Îº¸¤Î¡Ö¡Ã¡×¤ò½ñ¤¯
 UP;

 NBC;
 Seven;
 NBC;

 DOWN;
 Four;¡¡¡¡¡¡//¡ÖÆü¡×¤Î±¦¤Î¡Ö¡Ã¡×¤ò½ñ¤¯
 UP;

 NBC;
 ThreeFive;
 NBC;
 Four;
 TwentyBackC;
 TwentyBackC;

 DOWN;
 Five;¡¡¡¡¡¡//¡Ö½½¡×¤Î¡Ö¡Ã¡×¤ò½ñ¤¯
 UP;

-¡ÖȬ¡×¤ò½ñ¤¯

 ThreeB;
 OneB;
 OneB;
 NBC;
 Three;
 NBB;

 DOWN;
 RotateMotor(OUT_B,SPEED,Sixty);¡¡¡¡¡¡//10.494­Ñ¤Î¸Ì¤òÉÁ¤¯¤³¤È¤Ç¡ÖȬ¡×¤òɽ¸½¤¹¤ë
 UP;
 }


*´¶ÁÛ [#nc23b398]


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