#contents *Mission2 [#g4cc89ea] ²¼¿Þ¤Î¹õÀþ¤òÄ󼨤µ¤ì¤¿¥ë¡¼¥ëÄ̤ê¤Ë±è¤Ã¤ÆÆ°¤¯¥í¥Ü¥Ã¥È¤ÎºîÀ®¡£&br;&ref(2017a/Member/kyo/Mission2/2017a-mission2.png,60%);&br;¾Ü¤·¤¤ÆâÍƤÏ[[2018a/Mission2]]¤ò»²¾È¡£ *¥í¥Ü¥Ã¥È [#pd8bb293] &ref(2018a/Member/montbell/Mission2/IMG_20180719_001833.jpg,30%,Mission2 ); &ref(2018a/Member/montbell/Mission2/IMG_20180719_001944.jpg,30%,Mission2 ); &ref(2018a/Member/montbell/Mission2/IMG_20180719_002013.jpg,30%,Mission2 ); ¡mA = MediumMotor('outA') ¡¡¡¡ ¡¡¡¡´Ì¤ò¥¥ã¥Ã¥Á¤¹¤ë¥¢¡¼¥à¤òÆ°ºî¤µ¤»¤ë¤¿¤á¤Î¥â¡¼¥¿¡¼¡£ ¢mR = LargeMotor('outB') ¡¡¡¡¿Ê¹ÔÊý¸þ±¦Â¦¤Î¥¿¥¤¥ä¤òÆ°¤«¤¹¥â¡¼¥¿¡¼¡£ £mL = LargeMotor('outC') ¡¡¡¡¿Ê¹ÔÊý¸þº¸Â¦¤Î¥¿¥¤¥ä¤òÆ°¤«¤¹¥â¡¼¥¿¡¼¡£ ¤cs = ColorSensor('in1') ¡¡¡¡ÃÏÌ̤理òȽÊ̤¹¤ë¥»¥ó¥µ¡£¤³¤ì¤ò»ÈÍѤ·¹õ¤¤Àþ¤òȽÊ̤µ¤»¤ë¡£ *¥×¥í¥°¥é¥à [#qd85b783] #!/usr/bin/env python3 from ev3dev.ev3 import * from time import sleep#¥í¥Ü¥Ã¥È¤òÆ°¤«¤¹¤¿¤á¤Î´ðËÜŪ¤Ê¥×¥í¥°¥é¥à mA = MediumMotor('outA') mR = LargeMotor('outB') mL = LargeMotor('outC') cs = ColorSensor('in1')#Á°½Ò¤Î¥â¡¼¥¿¡¼¤ä¥»¥ó¥µ¡¼ cs.mode = 'COL-REFLECT' Itime = 1.8#¥»¥ó¥µ¡¼¤ÎÀßÄê¡¥ÌÀ¤ë¤µ¡ÊÇò¤È¹õ¡Ë¤òȽÊ̤· £±¡¥£¸Éôֹõ¤òǧ¼±¤·Â³¤±¤ë¤È¸å½Ò¤¹¤ëÍÍ¡¹¤Ê´Ø¿ô¤¬ºîÆ°¤¹¤ë¡¥ def move_foward(): mR.run_forever(speed_sp=100, stop_action='brake') mL.run_forever(speed_sp=100, stop_action='brake') Á°¤Ë¿Ê¤ß³¤±¤ë´Ø¿ô def move_right1(): mR.run_forever(speed_sp=60, stop_action='brake') mL.run_forever(speed_sp=90, stop_action='brake') ¶Ï¤«¤Ë±¦¤Ë¸þ¤«¤¤¤Ê¤¬¤éÁ°¿Ê¤¹¤ë def move_right2(): mR.run_forever(speed_sp=35, stop_action='brake') mL.run_forever(speed_sp=90, stop_action='brake') ¾¯¤·±¦¤Ë¸þ¤«¤¤¤Ê¤¬¤éÁ°¿Ê def move_right3(): mR.run_forever(speed_sp=-45, stop_action='brake') mL.run_forever(speed_sp=80, stop_action='brake') Â礤¯±¦Á°Êý¤Ë¸þ¤«¤¦ def turn_right(): mR.run_forever(speed_sp=-80, stop_action='brake') mL.run_forever(speed_sp=80, stop_action='brake') ±¦¤Ë90ÅÙ¥¿¡¼¥ó¤¹¤ë def move_left1(): mR.run_forever(speed_sp=90, stop_action='brake') mL.run_forever(speed_sp=60, stop_action='brake')¡¡ def move_left2(): mR.run_forever(speed_sp=90, stop_action='brake') mL.run_forever(speed_sp=35, stop_action='brake') move_right¤Îº¸ÈÇ def turn_left(): mR.run_forever(speed_sp=80, stop_action='brake') mL.run_forever(speed_sp=-80, stop_action='brake') º¸¤Ë¥¿¡¼¥ó def stop(): mR.run_timed(time_sp=0, speed_sp=0, stop_action='coast') mL.run_timed(time_sp=0, speed_sp=0, stop_action='coast') Á´¤Æ¤Î¥¿¥¤¥ä¤ÎÆ°ºî¤òÄä»ß¤µ¤»¤ë def armturn(t): mA.run_to_rel_pos(position_sp=t, speed_sp=70, stop_action='brake') sleep(1)#¥¢¡¼¥à¤ò¾å²¼¤µ¤»¤ë def toresu_right():#¹õÀþ¤Î±¦Ã¼¤ò¤Ê¤¾¤Ã¤ÆÁö¤ë t0 = time.time() while time.time() - t0 < Itime: if 80 < cs.value(0): move_left3() t0 = time.time() if 60 < cs.value(0) < 80: move_left2() t0 = time.time() if 45 < cs.value(0) < 60: move_left1() t0 = time.time() if 40 < cs.value(0) < 45: move_foward() t0 = time.time() if 40 < cs.value(0) < 45: move_right1() if 35 < cs.value(0) < 40: move_right2() if cs.value(0) < 35: move_right3()#ÌÀ¤ë¤µ¤Ë¤è¤Ã¤Æ¾å¤Î´Ø¿ô¤¿¤Á¤òÀÚ¤êÂؤ¨¤ÆºîÆ°¤µ¤»¤Æ¤¤¤ë def toresu_left():#¾å¤ÈƱÍͺ¸Â¦¤ò¤Ê¤¾¤ë t0 = time.time() while time.time() - t0 < Itime: if 80 < cs.value(0): move_right3() t0 = time.time() if 60 < cs.value(0) < 80: move_right2() t0 = time.time() if 45 < cs.value(0) < 60: move_right1() t0 = time.time() if 40 < cs.value(0) < 45: move_foward() t0 = time.time() if 40 < cs.value(0) < 45: move_left1() if 35 < cs.value(0) < 40: move_left2() if cs.value(0) < 35: move_left3() def return_toresu_left(R,L): mR.run_to_rel_pos(position_sp=R, speed_sp=100, stop_action='brake') mL.run_to_rel_pos(position_sp=L, speed_sp=100, stop_action='brake') sleep(3.5) while cs.value(0) > 45: move_right1()#¹õÀþ¤«¤éÂ礤¯³°¤ì¤¿¤È¤Àþ¤ËÌá¤ë¤¿¤á¤Î´Ø¿ô def return_toresu_right(R,L): mR.run_to_rel_pos(position_sp=R, speed_sp=100, stop_action='brake') mL.run_to_rel_pos(position_sp=L, speed_sp=100, stop_action='brake') sleep(4) while cs.value(0) > 45: move_left1()#¾å¤ËƱ¤¸ def return_circle_right(): mR.run_to_rel_pos(position_sp=180, speed_sp=80, stop_action='brake') sleep(4) while cs.value(0) > 45: mR.run_forever(speed_sp=100, stop_action='brake') ¾å¤Î´Ø¿ô¤¿¤Á¤ÈƱÍͤÎÌÜŪ¤À¤¬¤³¤Á¤é¤Ï±ß¸Ì¤Ë³°Â¦¤«¤éÀÜ¿¨¤¹¤ë¤¿¤á¤Î¤â¤Î def return_circle_left(): mL.run_to_rel_pos(position_sp=180, speed_sp=80, stop_action='brake') sleep(4) while cs.value(0) > 45: mL.run_forever(speed_sp=100, stop_action='brake')#¾å¤ËƱ¤¸ °Ê¹ß¤Ï´Ø¿ô¤òÁȤ߹ç¤ï¤»¤Æ¥í¥Ü¥Ã¥È¤Ë½Ð¤·¤¿Ì¿Îá¤Ç¤¢¤ë¡¥ return_toresu_right(180,180) toresu_right() toresu_left() stop() sleep(1) armturn(30) sleep(1) toresu_left() return_circle_left() stop() *´¶ÁÛ¡¦¹Í»¡ [#q53e94fb] º£²ó¤Ï²ÝÂê¤òãÀ®¤Ç¤¤Ê¤«¤Ã¤¿¡¥ ¤³¤ì¤Ï¥È¥é¥¤¡õ¥¨¥é¡¼¤ò·«¤êÊÖ¤¹½½Ê¬¤Ê»þ´Ö¤¬Â¤ê¤Ê¤«¤Ã¤¿¤¿¤á¤Ç¤¢¤ë¡¥ ¼¡²ó¤Ï¥Á¡¼¥à¥á¥¤¥È¤È¶¨ÎϤ·¤Æ¸úΨ¤è¤¯À©ºî¤Ë¼è¤êÁȤߤ¿¤¤¡¥