Ìܼ¡
¤³¤Î²ÝÂê¤Ï¡¢¿Þ¤Î¥Ô¥ó¥¯¤Î´Ý¤ËÃÖ¤«¤ì¤¿´Ì¤òGOAL¤Þ¤Ç±¿¤Ó¡¢ÀѤó¤Ç¤¤¤¯¤â¤Î¤Ç¤¢¤ë(²ÝÂꣳ»²¾È)¡£¡£
Ëͤ¿¤Á¤ÎÈɤϴ̤òÀѤà¥í¥Ü¥Ã¥È¤È´Ì¤ò½¸¤á¤ÆGOAL¤Þ¤Ç±¿¤Ö¥í¥Ü¥Ã¥È¤Ëʬ¤±¤Æ¤ä¤ë¤³¤È¤Ë¤·¤¿¡£
¡-ÀѤà¥í¥Ü¥Ã¥È¤ÏºÇ½é¤Ë¥í¡¼¥¿¥ê¡¼¤«¤é¥¹¥¿¡¼¥È¤·¤Æ¡¢TÃÏÅÀ¤Î´Ì¤òÄϤó¤ÇÂÔµ¡¤·¤Æ¤ª¤¯¡£ ¢-bluetooth¤Î¿®¹æ¤¬Í褿¤é¡¢´Ì¤òÀѤࡣ £-ÀѤޤ줿´Ì¤Î°ìÈÖ²¼¤òÄϤó¤Ç»ý¤Á¾å¤²¤ÆÂÔµ¡ °Ê¹ß¢¡¢£¤ò·«¤êÊÖ¤·¡£
¡-´Ì¤ò½¸¤á¤ÆGOALÃÏÅÀ¤ËÆϤ±¤ë¡£ ¢-ÀѤà¥í¥Ü¥Ã¥È¤Ë¿®¹æ¤òÁ÷¤ë¡£ °Ê¹ß¡¡¢¢¤ò·«¤êÊÖ¤·
¥¢¡¼¥à¤ÎÀèü¤Ë¥´¥à¥¿¥¤¥ä¤ò¤Ä¤±¤ë¤³¤È¤Ç´Ì¤ò»Ù¤¨¤é¤ì¤ë¤è¤¦¤Ë ¤·¤¿¡£¤Þ¤¿¡¢¤³¤Î¥¢¡¼¥à¤ÎÀèüÉô¤Ë¥â¡¼¥¿¤òÁȤ߹þ¤à¤³¤È¤ÇÀèüÉô¤ò³«ÊĤǤ¤ë¤è¤¦¤Ë¤·¡¢´Ì¤òÄϤà¤È¤¤¤¦Æ°ºî¤ò¤Ç¤¤ë¤è¤¦¤Ë¤·¤¿¡£
»Í³Ñ·Á¤òÊÑ·Á¤µ¤»¤ë¤è¤¦¤Ë¤·¤Æ¥¢¡¼¥à¤ÎÀèü¤ò¾å²¼¤µ¤»¤Æ¤¤¤ë¡£ ´Ì¤òÀѤà¤È¤¤Ë¥¢¡¼¥à¤ò¿åÊ¿¤ËÊݤĤ¿¤á¤Ë¤³¤Îµ¡¹½¤òºÎÍѤ·¤¿¡£ ¥â¡¼¥¿¤Ç¥¢¡¼¥à¤ò¾å²¼¤µ¤»¤ë¤¬¡¢¤½¤Î¤Þ¤Þ¤Ç¤Ï²ó¤é¤Ê¤«¤Ã¤¿¤¿¤á¡¢¥®¥¢¤ò¤«¤Þ¤»¤Æ²óž¤µ¤»¤Æ¤¤¤ë¡£ ¥¢¡¼¥à¤ò²¼¤Ë²¼¤²Àڤ俤Ȥ¤ËÁ°¤Ë¤Ä¤ó¤Î¤á¤Ã¤Æ¤·¤Þ¤¦¤¿¤á¡¢¥¿¥¤¥ä¤ÎÁ°¤Ë¤Ä¤Ã¤«¤¨¤ò¼è¤êÉÕ¤±¤¿¡£¤Þ¤¿¡¢º¸±¦¤Ë¿¶¤é¤ì¤ë¤ÎÍÞ¤¨¤ë¤¿¤á¤ËÁ°Îؤò4¤Ä¤Ë¤·¤¿¡£
ËÜÂΤϲÝÂꣲ¤ÇÍѤ¤¤¿µ¡ÂΤ˴̤òÊÝ»ý¤·¤Æ±¿¤Ö¤¿¤á¤Î¥¢¡¼¥à¤ò¼è¤êÉÕ¤±¤¿¡£¤Þ¤¿¡¢´Ì¤¬Åݤì¤Ê¤¤¤è¤¦¤Ë¥¢¡¼¥à¤ËÉý¤ò»ý¤¿¤»¤¿¡£
¡¦±¿¤Ö¥í¥Ü¥Ã¥È¤Ïmattu¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
¡¦ÀѤà¥í¥Ü¥Ã¥È¤Ï¤³¤Á¤é¢
//A¡¦¡¦¡¦Â²ó¤ê B¡¦¡¦¡¦¥¢¡¼¥à¾å²¼ C¡¦¡¦¡¦¥¢¡¼¥à #define CONN 0 #define INBOX MAILBOX3 #define ang_up 340 //»ý¤Á¾å¤²ÍѳÑÅÙ #define ang_put 80 //¥«¥óÃÖ¤¯³ÑÅÙ #define ANGLE 50 //ÄϤàÍѳÑÅÙ #define POWER 30 //ÀµÅ¾ #define POWER_LEGS 40 //²ó¤êÍÑ #define POWER_RE -30 //µÕž sub go_f(int l){ //»ØÄêµ÷Î¥Á°¿Ê float Ang=l*2.0463; //²óž³ÑÅÙ·×»» RotateMotor(OUT_A,POWER_LEGS,Ang); //Á°¿Ê Off(OUT_A); } sub hold(){ //¥«¥ó¤òÄϤà go_f(100); //Á°¿Ê¤·¤Æ¥«¥ó¤Î°ÌÃÖ¤ò¹ç¤ï¤»¤ë RotateMotor(OUT_C,POWER_RE,ANGLE); ¡¡¡¡¡¡¡¡//¥«¥óÄϤà } sub stack(){ //¥«¥ó¤òÀѤà go_f(170); //Á°¿Ê¤·¤Æ¥«¥ó¤Î°ÌÃÖ¤ò¹ç¤ï¤»¤ë go_f(-10); //¥«¥ó¤«¤éÎ¥¤ì¤Æ°ÌÃÖÄ´À° RotateMotor(OUT_B,POWER_RE,ang_put); //¥«¥ó¤òÃÖ¤¯(ÀѤà) } sub down_arm(){ //¥¢¡¼¥à¤ò²¼¤²¤ë OnFwd(OUT_B,POWER_RE); Wait(1100); Off(OUT_B); } task main(){ int msg=0; until(BluetoothStatus(CONN)==NO_ERR);¡¡¡¡¡¡¡¡¡¡¡¡¡¡ //bluetooth¤¬³ÎΩ¤¹¤ë¤Þ¤ÇÂÔµ¡ go_f(-50); //¥¢¡¼¥à¤ò²¼¤²¤ë¤¿¤á¤Î°ÌÃÖÄ´À° down_arm(); //¥¢¡¼¥à¤ò²¼¤²¤Æ¥«¥ó¤òÄϤà½àÈ÷ while(1){ hold(); //¥«¥óÄϤà OnFwd(OUT_C,POWER_RE); ¡¡¡¡¡¡//ÊÝ»ý¤·Â³¤±¤ë RotateMotor(OUT_B,50,ang_up);¡¡ ¡¡¡¡¡¡¡¡//»ý¤Á¾å¤²¤ë go_f(-150); //°ÌÃÖÄ´À° ReceiveRemoteNumber(MAILBOX3,true,msg); //½¸¤á¤ë¦¤«¤é¤Î¿®¹æ¤¬Íè¤ë¤Þ¤ÇÂÔµ¡ while(msg!=2){ ReceiveRemoteNumber(MAILBOX3,true,msg); Wait(10); } stack(); //£²¤Î¿®¹æ¤¬Í褿¤éÀѤà Off(OUT_C); //¥«¥ó¤òÊÝ»ý¤¹¤ëÎϤòÈ´¤¯ RotateMotor(OUT_C,POWER,ANGLE); //¥«¥óÎ¥¤¹ go_f(-100); //°ÌÃÖÄ´À° down_arm(); //¥¢¡¼¥à¤ò²¼¤²¤Æ¼¡¤Î½àÈ÷ } }
¾Ü¤·¤¯¤Ïkiryu¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£
¼ÂºÝ¤Îȯɽ¤Ç¤Ï½¸¤á¤ë¥í¥Ü¥Ã¥È¤Î¥×¥í¥°¥é¥à¤ÎÄ´À°¤¬¤¦¤Þ¤¯¤¤¤«¤º¡¢ÀѤळ¤È¤ò¤¢¤¤é¤á¤Æ´Ì¤òGOAL¤ÎÎΰè¤Ë±¿¤Ö¤³¤È¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤Ã¤¿¡£ ·ë²Ì¤Ï´Ì¤òÆó¤Ä¤òGOAL¤Þ¤Ç±¿¤Ó6ÅÀ³ÍÆÀ¤·¤¿¡£
ºÇ½ªÅª¤Ë´Ì¤òÀѤàÊý¤Î¥í¥Ü¥Ã¥È¤ò¤¦¤Þ¤¯Æ°¤«¤¹¤³¤È¤¬¤Ç¤¤Ê¤«¤Ã¤¿¤Î¤Ï»ÄÇ°¤Ç¤¢¤ë¡£¤³¤Î²ÝÂê¤Ë¤ª¤¤¤Æ¼«Ê¬¤Ï¼ç¤Ë¥í¥Ü¥Ã¥ÈËÜÂΤκîÀ®¤ÈÀѤà¥×¥í¥°¥é¥à¤ÎÄ´À°¤ò¹Ô¤Ã¤¿¡£¥Æ¥¹¥È¤ä¥µ¡¼¥¯¥ë³èÆ°¤Ê¤É¤Ç¥á¥ó¥Ð¡¼Á´°÷¤Ç½¸¤Þ¤ëµ¡²ñ¤ò¤Ê¤«¤Ê¤«ºî¤ë¤³¤È¤¬¤Ç¤¤º¡¢¥³¡¼¥¹¤ò»È¤Ã¤Æ2Âæ¤ÇÏ¢·È¤µ¤»¤ëµ¡²ñ¤¬¾¯¤Ê¤«¤Ã¤¿¤Î¤òÈ¿¾ÊÅÀ¤È¤·¤Æ¹Í¤¨¤ë¡£²áµî2²ó¤Î²ÝÂê¤Ç¤âºÇ¸å¤ÎÄ´À°¤ËºÇ¤â»þ´Ö¤¬¤«¤«¤Ã¤Æ¤¤¤¿¤³¤È¤ò¹Íθ¤ËÆþ¤ì¤Æ¤ª¤¯¤Ù¤¤À¤Ã¤¿¡£¤¿¤À¡¢½¸¤á¤Æ±¿¤ó¤Ç¤¯¤ë¥í¥Ü¥Ã¥È¤Ï¤¦¤Þ¤¯Æ°¤¤¤¿¤Î¤Ï¤è¤«¤Ã¤¿¡£
¼«Ê¬¤¬½ñ¤¤¤¿¥×¥í¥°¥é¥à¤ò¥í¥Ü¥Ã¥ÈËÜÂΤËžÁ÷¤·¤Æ¤â¼«Ê¬¤¬¹Í¤¨¤Æ¤¤¤¿Æ°¤¤È¤ÏÁ´¤¯°ã¤¦Æ°¤¤ò¤¹¤ë¤³¤È¤¬Â¿¤¯¡¢¤½¤ì¤ò°ì¤Ä¤º¤Äľ¤·¤Æ¤¤¤¯¤Î¤ÏÂçÊѤǤ⤢¤Ã¤¿¤¬¡¢³Ú¤·¤¯¤ä¤ê¤¬¤¤¤ò´¶¤¸¤¿¡£´Êñ¤ÊÆ°ºî¤ò¤µ¤»¤ë¤À¤±¤Ç¤â¤È¤Æ¤âÂçÊѤʤ³¤È¤Ç¤¢¤ë¤³¤È¤¬¤ï¤«¤Ã¤¿¡£¼«Ê¬¤ÏÁ¡°Ý³ØÉôµ¡³£¡¦¥í¥Ü¥Ã¥È³Ø²Ê¤Ë½ê°¤·¤Æ¤¤¤ë¤Î¤Ç¤³¤Î¤è¤¦¤Êµ¡²ñ¤Ï¤³¤ì¤«¤é¤â¤¿¤¯¤µ¤ó¤¢¤ë¤È»×¤¦¤¬¡¢¤³¤³¤Ç³Ø¤ó¤À´ðÁäòÂçÀڤˤ·¤¿¤¤¡£