[[2018b/Member]] *²ÝÂê [#k8a07480] º£²ó¤Î²ÝÂê¤Ï¥é¥¤¥ó¥È¥ì¡¼¥¹¡¡²¼¤Î¿Þ¤Î¤è¤¦¤Ê¥³¡¼¥¹¤ò³Æ¥Á¡¼¥à¤ÇºîÀ®¤·¡¢¡Ö¥ß¥Ã¥·¥ç¥ó¡×¤ò¿ë¹Ô¤¹¤ë¤¿¤á¤Î¥í¥Ü¥Ã¥È¤òºîÀ®¤¹¤ë¡£ **¥³¡¼¥¹¡¡ [#l7051c32] Àþ¤ÎÉý¤Ï20ФǤʤë¤Ù¤¯¶ÑÅù¤ÊÇ»¤µ¤Ë¤¹¤ë¤³¤È¡£¤Ê¤ª¿Þ¤ÎÃæ¤ÎÀ£Ë¡¤Îñ°Ì¤ÏѤǡ¢¹õÀþ¤Ë¤Ä¤¤¤Æ¤Ï¤½¤Î¿¿¤óÃ椫¤é¤Îµ÷Î¥¤Ç¤¢¤ë #ref(robot01.png,,100%) **¥ß¥Ã¥·¥ç¥ó [#x5e5b1a6] ¼¡¤Î¤¤¤º¤ì¤«¤Î¥³¡¼¥¹¤Ç¹õ¤¤Àþ¤Ë±è¤Ã¤ÆÆ°¤ÅÓÃæ¤Ç¥Ü¡¼¥ë¤ò¥´¡¼¥ëÉÕ¶á¤ËΩ¤Æ¤¿350ml¤Î¶õ¤´Ì¡Ê²«¿§¤Çɽ¼¨¡Ë¤ËÅö¤Æ¤ë¥í¥Ü¥Ã¥È¤òºîÀ®¤»¤è¡£¡ÊÁêÊý¤È°ã¤¦¥³¡¼¥¹¤òÁª¤Ö¤³¤È¡Ë ***Âè°ì¥³¡¼¥¹ [#id485b8b] 1.¥í¥Ü¥Ã¥È¤òĹÊý·ÁXÆâ¤Ë¤ª¤¡¢A¤ò¥¹¥¿¡¼¥È 2.B¤ò±¦ÀÞ 3.K¤Ç°ì»þÄä»ß¤·¤Æº¸ÀÞ 4.J¤òľ¿Ê 5.I¤òľ¿Ê 6.H¤òº¸ÀÞ 7.G¤Ç°ì»þÄä»ß¤·¤Æº¸ÀÞ 8.E¤Ç°ì»þÄä»ß¤·¤Æ±¦ÀÞ 9.L¤ò·Ð¤ÆÀµÊý·ÁYÆâ¤ËÆþ¤Ã¤ÆÄä»ß (°ì»þÄä»ß¤Î»ØÄ꤬¤¢¤ë¾ì½ê¤Ï¡¢1ÉôÖÄä»ß¤¹¤ë¤³¤È) ¥Ü¡¼¥ë¤Ï¥í¥Ü¥Ã¥È¤¬¸ÌKJIH¾å¤Ë¤¢¤ë»þ¤ËQÃÏÅÀ¤Î¶õ¤´Ì¤ËÅö¤Æ¤ë ***ÂèÆ󥳡¼¥¹ [#vfb1846f] 1.¥í¥Ü¥Ã¥È¤òÀµÊý·ÁXÆâ¤Ë¤ª¤¡¢L¤ò¥¹¥¿¡¼¥È 2.E¤ò°ì»þÄä»ß¤·¤Æľ¿Ê 3.I¤ò°ì»þÄä»ß¤·¤Æº¸ÀÞ 4.H¤òľ¿Ê 5.K¤òľ¿Ê 6.J¤òº¸ÀÞ 7.C¤ò°ì»þÄä»ß¤·¤Æ±¦ÀÞ 8.E¤ò°ì»þÄä»ß¤·¤Æľ¿Ê 9.G¤ò°ì»þÄä»ß¤·¤Æľ¿Ê 10.ĹÊý·ÁXÆâ¤ËÆþ¤Ã¤ÆÄä»ß (°ì»þÄä»ß¤Î»ØÄ꤬¤¢¤ë¾ì½ê¤Ï¡¢1ÉôÖÄä»ß¤¹¤ë¤³¤È) ¥Ü¡¼¥ë¤Ï¥í¥Ü¥Ã¥È¤¬¸ÌIHKJ¾å¤Ë¤¢¤ë»þ¤ËQÃÏÅÀ¤Î¶õ¤´Ì¤ËÅö¤Æ¤ë ***Ãí°Õ [#ud98b516] ¡¦°ì»þÄä»ß¤Î»Ø¼¨¤¬¤¢¤ë¸òº¹ÅÀ¤ÈÃú»úÏ©¡¢¤ª¤è¤Ó¥Ü¡¼¥ë¤òÅꤲ¤ë»þ°Ê³°¤ÏÄä»ß¤·¤Ê¤¤¤³¤È¡£ ¡¦°ì¤Ä¤Î¸òº¹ÅÀ(or T»úÏ© or ľ³Ñ¥«¡¼¥Ö)¤«¤é¼¡¤Î¸òº¹ÅÀ(or T»úÏ© or ľ³Ñ¥«¡¼¥Ö)¤Þ¤Ç¤Î°ÜÆ°¤ò°ì¤Ä¤Î´Ø¿ô¤ÇÄêµÁ¤¹¤ë¤³¤È¡£ ¡¦Á°¤Î¸òº¹ÅÀ¤«¤é¤Î»þ´Ö¤äµ÷Î¥¤òÈùÄ´À°¤·¤Æ¸òº¹ÅÀ¤òȽÃǤ¹¤ë¤Î¤Ç¤Ï¤Ê¤¯¡¢Ä̾ï¤Î¥«¡¼¥Ö¤È¸òº¹ÅÀ¤Î°ã¤¤¤ò¸÷¥»¥ó¥µ¤ÎÃͤ«¤éȽÃǤ¹¤ë¤³¤È¡£ *¥í¥Ü¥Ã¥È¤ÎÀâÌÀ [#r6dde026] #ref(IMG_0795-min.jpg,,10%) ¤³¤ì¤¬¥í¥Ü¥Ã¥È¤ÎÁ´ÂοޤǤʤë¤Ù¤¯¥·¥ó¥×¥ë¤Ê·Á¤Ë¤·¤¿ ¥«¥é¡¼¥»¥ó¥µ¡¼¤ÈĶ²»ÇÈ¥»¥ó¥µ¡¼¤ò¤Û¤ÜÃæ¿´¤Ë¼è¤êÉÕ¤±¡¢¥é¥¤¥ó¥È¥ì¡¼¥¹¤¬º¸±¦ÂоΤˤä¤ê¤ä¤¹¤¤¤è¤¦¤Ë¡¢¤Þ¤¿¶õ¤´Ì¤Î°ÌÃÖ¤ò¤è¤êÀµ³Î¤ËÄ´¤Ù¤é¤ì¤ë¤è¤¦¤Ë¤·¤¿¡£ ¤½¤·¤Æ¥Ü¡¼¥ë¤Ï¥â¡¼¥¿¡¼¤ò²óž¤µ¤»¤Æ½³¤ê½Ð¤¹·Á¤Çȯ¼Í¤µ¤»¤ë¤è¤¦¤Ë¤·¤¿¡£ *¥×¥í¥°¥é¥à [#kb69f6c7] **¤Ï¤¸¤á¤Ë [#de08090e] ¤½¤ì¤¾¤ì¤Î¥»¥ó¥µ¡¼¤È¥â¡¼¥¿¡¼¤ò°Ê²¼¤Î¤è¤¦¤ËÄêµÁ¤¹¤ë #!/usr/bin/env python3 from ev3dev.ev3 import * import time from time import sleep mR=LargeMotor('outC') mL=LargeMotor('outB') mM=MediumMotor('outD') cs=ColorSensor('in3') us=UltrasonicSensor('in1') ±¦¥¿¥¤¥ä¤Î¥â¡¼¥¿¡¼¤òmR¡¢º¸¥¿¥¤¥ä¤Î¥â¡¼¥¿¡¼¤òmL¡¢È¯¼Íµ¡¹½¤Î¥â¡¼¥¿¡¼¤òmM¤È¤·¤ÆÄêµÁ¤·¤¿ **¥é¥¤¥ó¥È¥ì¡¼¥¹¤Î¥×¥í¥°¥é¥à [#a0e8098f] def traceR(): t0=time.time() while time.time()-t0<0.35: if cs.value()<35: #¥«¥é¡¼¥»¥ó¥µ¡¼¤ÎÃͤ¬35̤Ëþ¤Î»þÂ礤¯±¦¤Ë²ó¤ë turnR2() if 35<=cs.value()<40:¡¡¡¡#¥«¥é¡¼¥»¥ó¥µ¡¼¤ÎÃͤ¬35°Ê¾å40̤Ëþ¤Î»þ¾®¤µ¤¯±¦¤Ë²ó¤ë turnR1() t0=time.time()¡¡ if 40<=cs.value()<=50:¡¡¡¡#¥«¥é¡¼¥»¥ó¥µ¡¼¤ÎÃͤ¬40°Ê¾å50°Ê¾å¤Î»þ¤Þ¤Ã¤¹¤°¿Ê¤à run() t0=time.time() if 50<cs.value()<=60:¡¡¡¡#¥«¥é¡¼¥»¥ó¥µ¡¼¤ÎÃͤ¬50¤è¤êÂ礤¯60̤Ëþ¤Î»þº¸¤Ë¾®¤µ¤¯²ó¤ë turnL1() t0=time.time() if cs.value()>60:¡¡¡¡#¥«¥é¡¼¥»¥ó¥µ¡¼¤ÎÃͤ¬60¤è¤êÂ礤¤¤È¤º¸¤ËÂ礤¯²ó¤ë turnL2() t0=time.time() mR.stop() mL.stop() def traceL(): t0=time.time() while time.time()-t0<0.25: if cs.value()<35:¡¡¡¡#¥«¥é¡¼¥»¥ó¥µ¡¼¤ÎÃͤ¬35̤Ëþ¤Î»þº¸¤ËÂ礤¯²ó¤ë turnL2() if 35<=cs.value()<40:¡¡¡¡#¥«¥é¡¼¥»¥ó¥µ¡¼¤ÎÃͤ¬35°Ê¾å40̤Ëþ¤Î»þº¸¤Ë¾®¤µ¤¯²ó¤ë turnL1() t0=time.time() if 40<=cs.value()<=50:¡¡¡¡#¥«¥é¡¼¥»¥ó¥µ¡¼¤ÎÃͤ¬40°Ê¾å50°Ê²¼¤Î»þ¤Þ¤Ã¤¹¤°¿Ê¤à run() t0=time.time() if 50<cs.value()<=60:¡¡¡¡#¥«¥é¡¼¥»¥ó¥µ¡¼¤ÎÃͤ¬50¤è¤êÂ礤¯60°Ê²¼¤Î»þ±¦¤Ë¾®¤µ¤¯²ó¤ë turnR1() t0=time.time() if cs.value()>60:¡¡¡¡#¥«¥é¡¼¥»¥ó¥µ¡¼¤ÎÃͤ¬60¤è¤êÂ礤¤¤È¤±¦¤ËÂ礤¯¤Þ¤ï¤ë turnR2() t0=time.time() ¤½¤ì¤¾¤ìtraceR¤Ï±¦Â¦traceL¤Ïº¸Â¦¤ò¥È¥ì¡¼¥¹¤¹¤ë¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤ë¡¢¤³¤¦¤¹¤ë¤³¤È¤Çº¸Â¦¤Î¸òº¹ÅÀ¤Þ¤¿±¦Â¦¤Î¸òº¹ÅÀ¤½¤ì¤¾¤ì¤òȯ¸«¤·¤ä¤¹¤¯¤·¤¿¡¢¸òº¹ÅÀ¤Îǧ¼±ÊýË¡¤Ï0.35Éðʾå¹õ¤¤¤È¤³¤í¤òÄ̤ä¿»þ¤Ë¸òº¹ÅÀ¤È¤·¤Æ»ß¤Þ¤ë¤è¤¦¤Ë¤·¤¿ °Ê²¼¤Ï¤³¤ì¤é¤Îtrace´Ø¿ô¤ÎÃæ¿È¤Î´Ø¿ô¤Ç¤¢¤ë def turnR1():¡¡#±¦¤Ë¾®¤µ¤¯²ó¤ë mL.run_forever(speed_sp=100,stop_action='brake') mR.stop() def turnL1():¡¡#º¸¤Ë¾®¤µ¤¯²ó¤ë mR.run_forever(speed_sp=100,stop_action='brake') mL.stop() def run():¡¡#¤Þ¤Ã¤¹¤°¿Ê¤à mR.run_forever(speed_sp=100,stop_action='brake') mL.run_forever(speed_sp=100,stop_action='brake') def turnR2():¡¡#±¦¤ËÂ礤¯²ó¤ë mL.run_forever(speed_sp=100,stop_action='brake') mR.run_forever(speed_sp=-70,stop_action='brake') def turnL2():¡¡#º¸¤ËÂ礤¯²ó¤ë mR.run_forever(speed_sp=100,stop_action='brake') mL.run_forever(speed_sp=-70,stop_action='brake') ¼¡¤Ë¾®¤µ¤¤È¾·Â¤Ç¥é¥¤¥ó¥È¥ì¡¼¥¹¤ò¤¹¤ë»þ¤Ë¸òº¹ÅÀ¤È¸íǧ¼±¤¹¤ë¤³¤È¤¬¤¢¤Ã¤¿¤Î¤Ç°Ê²¼¤Î°ìÄê»þ´Ö¥È¥ì¡¼¥¹¤ò¤¹¤ë´Ø¿ô¤òºî¤Ã¤¿ def traceLa(t): t1=time.time() while time.time()-t1<t: if cs.value()<35: turnL2() if 35<=cs.value()<40: turnL1() if 40<=cs.value()<=50: run() if 50<cs.value()<=60: turnR1() if cs.value()>60: turnR2() mR.stop() mL.stop() def traceRa(t): t0=time.time() while time.time()-t0<t: if cs.value()<35: turnR2() if 35<=cs.value()<40: turnR1() if 40<=cs.value()<=50: run() if 50<cs.value()<=60: turnL1() if cs.value()>60: turnL2() mR.stop() mL.stop() ¼¡¤Ë¸òº¹ÅÀ¤òȯ¸«¤·¤¿¸å¤Ë¤½¤Î¸òº¹ÅÀ¤òÄ̲᤹¤ë¤¿¤á¤Î¥×¥í¥°¥é¥à¤ò½ñ¤¯ def turnR3(t): #tÉ佤ξì¤Ç±¦¤Ë²óž¤¹¤ë mL.run_timed(time_sp=t,speed_sp=100,stop_action='brake') mR.run_timed(time_sp=t,speed_sp=-100,stop_action='brake') sleep(t/1000) mR.stop() mL.stop() def turnL3(t):¡¡#tÉ佤ξì¤Çº¸¤Ë²óž¤¹¤ë mR.run_timed(time_sp=t,speed_sp=100,stop_action='brake') mL.run_timed(time_sp=t,speed_sp=-100,stop_action='brake') sleep(t/1000) mR.stop() mL.stop() def runT(t):¡¡#tÉäޤ乤°¿Ê¤à mR.run_timed(time_sp=t, speed_sp=100, stop_action='brake') mL.run_timed(time_sp=t, speed_sp=100, stop_action='brake') sleep(t/1000) mR.stop() mL.stop() ¸òº¹ÅÀ¤òȯ¸«¤·¤¿¸åturnR3¤Þ¤¿¤ÏturnL3¤Ç¸þ¤¤òÌᤷ¤¿¸årunT¤Ç¤Þ¤Ã¤¹¤°¿Ê¤ó¤Ç¸òº¹ÅÀ¤ò±Û¤¨¤ë¤è¤¦¤Ë¤·¤¿ **´Ì¤òȯ¸«¤·È¯¼Í¤¹¤ë¥×¥í¥°¥é¥à [#h44f0951] ¤Þ¤º¤Ï´Ì¤òȯ¸«¤¹¤ë¥×¥í¥°¥é¥à¤Ë¤Ä¤¤¤Æ def search(): d_min=5000¡¡#²¾¤ÎºÇ¾®Ãͤòºî¤ë t1=time.time() while time.time()-t1 < 15: #15Éôֲó¤ê³¤±¤ë turnR() if us.value()<d_min:¡¡ d_min=us.value()¡¡#¤â¤·²¾¤ÎºÇ¾®Ãͤè¤êĶ²»ÇÈ¥»¥ó¥µ¡¼¤ÎÃͤ¬¾®¤µ¤«¤Ã¤¿¤é¿·¤·¤¤ºÇ¾®ÃͤòµÏ¿¤¹¤ë t2=time.time()¡¡#ºÇ¾®ÃͤòµÏ¿¤·¤¿»þ¤Î»þ´Ö¤òµÏ¿¤¹¤ë mM.reset() mR.stop() mL.stop() t3=time.time() sleep(1) mR.run_timed(time_sp=1000*(t3-t2), speed_sp=50, stop_action='brake') mL.run_timed(time_sp=1000*(t3-t2), speed_sp=-50, stop_action='brake') sleep(t3-t2+2)¡¡#²óž¤·½ª¤ï¤Ã¤¿»þ´Ö¤«¤éºÇ¸å¤ËºÇ¾®ÃͤòµÏ¿¤·¤¿»þ´Ö¤ËµÕ²óž¤¹¤ë fire()¡¡#¥Ü¡¼¥ë¤òȯ¼Í¤¹¤ë sleep(1) ¥Ü¡¼¥ë¤òȯ¼Í¤¹¤ë¥×¥í¥°¥é¥à´Ø¿ô¤Ï°Ê²¼¤Ç¤¢¤ë def fire():¡¡ mM.run_to_abs_pos(position_sp=150,speed_sp=500,stop_action='coast') #mM¤ò²óž¤µ¤»¤Æ¥Ü¡¼¥ë¤òȯ¼Í¤¹¤ë **¤Þ¤È¤á [#m73c9511] def LtoE(): traceL() sleep(1) turnR3(230) runT(500) def EtoI(): traceL() sleep(1) turnL3(600) def ItoH(): traceLa(2) traceL() turnR3(230) runT(700) def HtoJ(): traceLa(4) turnR3(600) traceRa(4) turnL3(600) traceLa(2) traceL() turnL3(600) def JtoC(): traceLa(2) traceL() sleep(1) turnR3(1500) def CtoE(): traceRa(30) traceR() turnL3(300) runT(500) def EtoG(): traceRa(30) traceR() turnL3(300) runT(500) def GtoGole(): traceR() turnL3(300) runT(4000)¡¡#ºÇ¸å¤Î¸òº¹ÅÀ¤òȯ¸«¤·¤¿¸å°ìÄê¤ÎÃͿʤó¤Ç¥´¡¼¥ë¤Ë¼ý¤Þ¤ë ¤½¤ì¤¾¤ì¤Î´Ø¿ô̾¤Ï¤É¤ÎÃÏÅÀ¤«¤é¤É¤ÎÃÏÅÀ¤Ø¤È°ÜÆ°¤¹¤ë¤È¤¤Ë»È¤¦¥×¥í¥°¥é¥à¤ò¼¨¤·¤Æ¤¢¤ë¡£ LtoE() EtoI() ItoH() search() HtoJ() JtoC() CtoE() EtoG() GtoGole() °Ê¾å¤¬¥í¥Ü¥Ã¥È¤òÆ°¤«¤¹¥×¥í¥°¥é¥à¤Ç¤¢¤ë *´¶ÁÛ [#x9ec2d09] À®¸ùΨ¤È¤·¤Æ¤Ï50%¤¯¤é¤¤¤Çȯɽ²ñ¤Ç¤Ï¼ºÇÔ¤ò¤·¤Æ¤·¤Þ¤Ã¤¿¡£ ¸¶°ø¤È¤·¤Æ¤Ï¸òº¹ÅÀ¤òȯ¸«¤¹¤ëÀ©ÅÙ¤¬¹â¤¯¤Ê¤¯Ç§¼±¤·¤Ê¤«¤Ã¤¿¤ê¸íǧ¼±¤òµ¯¤³¤·¤Æ¤·¤Þ¤Ã¤¿¤«¤é¤À¤È¹Í¤¨¤é¤ì¤ë