*²ûÃæÅÅÅô¤Ë¥Ü¡¼¥ë¤ò¤Ö¤Ä¤±¤ë¥í¥Ü¥Ã¥È [#pc8c9a89] #contents *²ÝÂêÆâÍÆ [#hefb2eaf] º£²ó¤ÎÆâÍƤϡֲûÃæÅÅÅô¤Ë¥Ü¡¼¥ë¤ò¤Ö¤Ä¤±¤ë¥í¥Ü¥Ã¥È¡×¡£ ²ûÃæÅÅÅô¤òȾ·Â1¥á¡¼¥È¥ë°ÊÆâ¤ËÀßÃÖ¤·¡¢ Mindstorms Robotics Invention System(°Ê²¼RIS)¤òÍѤ¤¤Æ360ÅÙ²óž¡¢²ûÃæÅÅÅô¤ò¾È¼Í¤µ¤ì¤Æ¤¤¤ë³ÑÅ٤˥ܡ¼¥ë¤ò¤Ö¤Ä¤±¤ë¤È¤¤¤¦²ÝÂê¤Ç¤¢¤Ã¤¿¡£ ¤Ê¤ª¡¢¥í¥Ü¥Ã¥ÈËÜÂΤ¬²ûÃæÅÅÅô¤ËÀÜ¿¨¤·¤Ê¤¤¸Â¤ê¤É¤³¤«¤é¥Ô¥ó¥Ý¥ó¶Ì¤òÊü¤Ã¤Æ¤â¤è¤¤¤â¤Î¤È¤¹¤ë¡£ **ÆñÅÀ [#n1b6674a] +¥Ü¡¼¥ë¤ò1¥á¡¼¥È¥ë¤Þ¤Ã¤¹¤°¤Ë¼Í½Ð¤¹¤ë¤³¤È +Àµ³Î¤Ë²ûÃæÅÅÅô¤ÎÊý¸þ¤ò»¡ÃΤ¹¤ë¤³¤È + *¥í¥Ü¥Ã¥È¤ÎÀâÌÀ [#t2bcd166] º£²ó¤Ï²ÝÂê2¤Î¥í¥Ü¥Ã¥È¤Ë¸÷¥»¥ó¥µ¡¼¤ò¾å¤Ë¤Ä¤±¡¢¤Þ¤¿¡¢ÆñÅÀ1¤ò¹îÉþ¤¹¤ë¤¿¤á¤Ë¥¢¡¼¥àÉôʬ¤ËͶƳ¥Ö¥í¥Ã¥¯¤ò¤Ä¤±¤¿¹½Â¤¤È¤Ê¤Ã¤Æ¤¤¤ë¡£ ËÜÂΤʤɤξܤ·¤¤ÀâÌÀ¤Ï¤³¤Á¤é¢ªhttp://yakushi.shinshu-u.ac.jp/robotics/?2015a%2FMember%2Ftadahiko%2FMission2#w59046ab **¸÷¥»¥ó¥µ¡¼ [#q10d791e] #ref(./¥»¥ó¥µ¡¼.jpg,150%); ***¥Ý¥¤¥ó¥È [#f6f7f24f] -²ûÃæÅÅÅô¤ËÈ¿±þ¤µ¤»¤ë¤¿¤á¤ËRIS¤Î¾å¤ËÀßÃÖ¡£ -´¶ÅÙ¤ò¾å¤²¤ë¤¿¤á¤Ë¼þ¤ê¤ò¥Ö¥í¥Ã¥¯¤Ç°Ï¤¦¡£ **ͶƳ¥Ö¥í¥Ã¥¯ [#odaa183d] #ref(./ͶƳ¥Ö¥í¥Ã¥¯.jpg,150%); ***¥Ý¥¤¥ó¥È [#v03f0fb3] -¥Ü¡¼¥ë¤ò¤Þ¤Ã¤¹¤°¤ËÁ÷¤ë¤¿¤á¤ËÀßÃÖ¡£ **´°À® [#i5bc0bcb] #ref(./Á´ÂÎ.jpg,150%); *¥×¥í¥°¥é¥à¤ÎÀâÌÀ [#i5c59398] **¼ÂºÝ¤Î¥×¥í¥°¥é¥à [#l29f0246] #define short_break Off(OUT_AC);Wait(100); #define clip_on OnRev(OUT_B);Wait(10);Off(OUT_B); task main () { SetSensor(SENSOR_2,SENSOR_LIGHT); ClearTimer(0); //£°ÈÖÌܤΥ¿¥¤¥Þ¡¼¤ò¥ê¥»¥Ã¥È int light_max; //À°¿ô·¿¤ÎÊÑ¿ô¤òÀë¸À light_max = 0; //²¾¤ÎºÇÂçÃÍ int time_max; //À°¿ô·¿¤ÎÊÑ¿ô¤òÀë¸À time_max = 0; //²ÁÃͤκÇÂçÃͤòÍ¿¤¨¤ë»þ´Ö int run_time; //À°¿ô·¿¤ÎÊÑ¿ô¤òÀë¸À run_time = 280; //£±¼þ¤¹¤ë¤Î¤Ë¤«¤«¤ë»þ´Ö OnFwd(OUT_A);OnRev(OUT_C); //È¿»þ·×²ó¤ê¤Ë²óž while(FastTimer(0)<run_time) //£±²óž¤¹¤ë¤Þ¤Ç { if(SENSOR_2>light_max) //light_max¤ÎÃͤòĶ¤¨¤¿¤é { light_max = SENSOR_2; //light_max¤òÅɤêÂؤ¨¤ë } } short_break; //£±½µ¤·¤¿¤é£±ÉÃÂÔµ¡ OnFwd(OUT_A);OnRev(OUT_C); //È¿»þ·×²ó¤ê¤Ë²óž until(SENSOR_2==light_max); short_break; OnFwd(OUT_AC);Wait(50);clip_on;Wait(10); //¥·¥å¡¼¥È Off(OUT_AC); } **»ÈÍѤ·¤¿´Ø¿ô [#n5f55ad3] ¡#define short_break Off(OUT_AC);Wait(100); ¢#define clip_on OnRev(OUT_B);Wait(10);Off(OUT_B); ***²òÀâ [#p451051d] ¡1ÉÃÄä»ß ¢¥·¥å¡¼¥È¤ÎÆ°ºî **ÄêµÁ¤Å¤± [#r8b007c2] task main () { SetSensor(SENSOR_2,SENSOR_LIGHT); ¡ClearTimer(0); //£°ÈÖÌܤΥ¿¥¤¥Þ¡¼¤ò¥ê¥»¥Ã¥È int light_max; //À°¿ô·¿¤ÎÊÑ¿ô¤òÀë¸À ¢light_max = 0; //²¾¤ÎºÇÂçÃÍ int time_max; //À°¿ô·¿¤ÎÊÑ¿ô¤òÀë¸À £time_max = 0; //²ÁÃͤκÇÂçÃͤòÍ¿¤¨¤ë»þ´Ö int run_time; //À°¿ô·¿¤ÎÊÑ¿ô¤òÀë¸À run_time = 280; //£±¼þ¤¹¤ë¤Î¤Ë¤«¤«¤ë»þ´Ö ***²òÀâ [#xf9c63b0] ¡¥¿¥¤¥Þ¡¼¤òµ¯Æ°¤·¡¢²ûÃæÅÅÅô¤Þ¤Ç¤Î·Ð²á»þ¹ï¤ò¬¤ë¡£ ¢²ûÃæÅÅÅô¤ÎÃͤò¾å½ñ¤¤¹¤ë¤¿¤áºÇ½é¤ÎÃͤÏ0¤ÈÄêµÁ¡£ £²ûÃæÅÅÅô¤Þ¤Ç¤Î·Ð²á»þ¹ï¤òµ²±¤¹¤ë¤¿¤áºÇ½é¤ÎÃͤÏ0¤ÈÄêµÁ¡£ **Æ°¤ [#j8bf9946] OnFwd(OUT_A);OnRev(OUT_C); //È¿»þ·×²ó¤ê¤Ë²óž ¡while(FastTimer(0)<run_time) //£±²óž¤¹¤ë¤Þ¤Ç { if(SENSOR_2>light_max) //light_max¤ÎÃͤòĶ¤¨¤¿¤é { ¢light_max = SENSOR_2; //light_max¤òÅɤêÂؤ¨¤ë } } short_break; //£±½µ¤·¤¿¤é£±ÉÃÂÔµ¡ OnFwd(OUT_A);OnRev(OUT_C); //È¿»þ·×²ó¤ê¤Ë²óž £until(SENSOR_2==light_max); short_break; ¤OnFwd(OUT_AC);Wait(50);clip_on;Wait(10); //¥·¥å¡¼¥È Off(OUT_AC); } ***²òÀâ [#v656a578] ¡360ÅÙÈ¿»þ·×²ó¤ê¤Ë²óž¤·Á´Êý°Ì¤ÎÃͤòµ²±¤¹¤ë¡£ ¢light_max¤è¤ê¤âÂ礤ÊÃͤò¸«¤Ä¤±¤¿¤é¤½¤ÎÃͤòµ²±¤¹¤ë¡£ £1²óž¸å¡¢µ²±¤·¤¿ÃͤκÇÂçÃͤÎÊý¸þ¤ò¸þ¤¯¡£ ¤²ûÃæÅÅÅô¤Ë¸þ¤«¤Ã¤Æ¥·¥å¡¼¥È¡£ **Æ°²è [#x4690404] *Æ°²è [#x4690404] https://www.youtube.com/watch?v=sf-SZk2snu4 *´¶ÁÛ [#k8b83cb7] º£²ó¤Î²ÝÂê¤Ç¤Ï¡¢¾¯¤Ê¤¤»þ´Ö¤ÎÃæ¤Ç¤â¥ß¥Ã¥·¥ç¥ó¤ò¤³¤Ê¤¹¤³¤È¤¬¤Ç¤¤¿¤Î¤Ç¤è¤«¤Ã¤¿¤È»×¤¦¡£ ÀèÀ¸¤Î¥Ò¥ó¥È¤Ê¤É¡¢¹üÁȤߤ϶µ¤¨¤Æ¤¯¤À¤µ¤Ã¤¿¤Î¤Ç¤µ¤Û¤ÉÆñ¤·¤¤ÆâÍƤǤϤʤ¤¤è¤¦¤Ë»×¤¨¤¿¡£ º£¤Þ¤Ç¤ÏÄêµÁ¤Å¤±¤ò#define¤Ç¤ä¤Ã¤Æ¤¤¤¿¤â¤Î¤Î¡¢int´Ø¿ô¤âÌäÂê¤Ê¤¯°·¤¦¤³¤È¤¬¤Ç¤¤¿¡£ º£¤Þ¤Ç¤Î²ÝÂê¤Ç³Ø¤ó¤À¤³¤È¤òÀ¸¤«¤·¤Æ¥í¥Ü¥³¥ó¤ò¤Ë¤ÆÀ®¸ù¤ò¼ý¤á¤¿¤¤¡£