2012a/A3/Hexa/M2
¤ò¥Æ¥ó¥×¥ì¡¼¥È¤Ë¤·¤ÆºîÀ®
[
¥È¥Ã¥×
] [
¿·µ¬
|
°ìÍ÷
|
¸¡º÷
|
ºÇ½ª¹¹¿·
|
¥Ø¥ë¥×
|
¥í¥°¥¤¥ó
]
³«»Ï¹Ô:
*²ÝÂꣲ¡Á¥é¥¤¥ó¥È¥ì¡¼¥¹¥í¥Ü¥Ã¥È¡Á [#f4eb807a]
Ìܼ¡
#contents
**¥ë¡¼¥ë [#r3e8ddea]
¹õ¤¤Àþ¤Î¥³¡¼¥¹¤ò£±¼þȾ¤·¤Æ¥´¡¼¥ë¤ËÅþ㤷¤¿¤È¤¤ËÄä»ß¤¹¤ë¡£
**¥³¡¼¥¹ÀâÌÀ [#zcae88b2]
-¸òº¹ÅÀ:£²²Õ½ê
-ľ³Ñ¥«¡¼¥Ö(¥¯¥é¥ó¥¯):£±²Õ½ê
-¥Ø¥¢¥Ô¥ó¥«¡¼¥Ö:£±²Õ½ê
-Àþ¤ÎÂÀ¤µ¤Ï15¡Á20mm¡Ê¾ì½ê¤Ë¤è¤Ã¤ÆÂÀ¤µ¤¬°Û¤Ê¤ë¡Ë
//¼Ì¿¿
¡¡¡¡&ref(2012a/A3/Hexa/M2/¥³¡¼¥¹.jpg,50%,¥³¡¼¥¹);
**¼ÖÂÎ [#x4ecb3f0]
¡¡¼ÖÂΤϥ»¥ó¥µÉôʬ°Ê³°¤ÏÀâÌÀ½ñ¤É¤¦¤ê¤ËÁȤßΩ¤Þ¤·¤¿¡£
//¼Ì¿¿
¡¡¡¡&ref(2012a/A3/Hexa/M2/¼ÖÂÎ.JPG,30%,¼ÖÂÎ);
**¥×¥í¥°¥é¥à [#x68327c0]
***¥é¥¤¥ó¥È¥ì¡¼¥¹¤Î»ÅÁÈ¤ß [#cc6b52e6]
¡¡»ä¤Î¼ÖÂΤϥ»¥ó¥µ¤ò£±¤Ä¤·¤«»È¤Ã¤Æ¤¤¤Ê¤¤¤Î¤ÇÇò¤È¹õ¤Î¶³¦¤ò¥È¥ì¡¼¥¹¤¹¤ë´¶¤¸¤Ç¥×¥í¥°¥é¥à¤òºîÀ®¤·¤Þ¤·¤¿¡£
¡¥»¥ó¥µ¤¬Çò¤ËÈ¿±þ¤·¤Æ¤¤¤ë¤È¤
¡¡¡¡&ref(2012a/A3/Hexa/M2/Çò¤Î¤È¤.jpg,50%,¥»¥ó¥µÈ¿±þ¡);
¡¡´Ý¤¤ÀÖ¤¤¤ä¤Ä¤ò¥»¥ó¥µ¤À¤È¤¹¤ë¤È¥»¥ó¥µ¤¬Çò¤ËÈ¿±þ¤·¤Æ¤¤¤ë¤È¤¡¢¹õ¤¤¥é¥¤¥ó¤Ë¥»¥ó¥µ¤¬È¿±þ¤¹¤ë¤Þ¤Çº¸¤Î¥¿¥¤¥ä¤òÀµ²óž¤µ¤»±¦¥¿¥¤¥ä¤òÄä»ß¤µ¤»¤Þ¤¹¡£
¢¥»¥ó¥µ¤¬¹õ¤ËÈ¿±þ¤·¤Æ¤¤¤ë¤È¤
¡¡¡¡&ref(2012a/A3/Hexa/M2/¹õ¤Î¤È¤.jpg,50%,¥»¥ó¥µÈ¿±þ¢);
¡¡¥»¥ó¥µ¤¬¹õ¤ËÈ¿±þ¤·¤¿¤È¤¡¢Çò¤ËÈ¿±þ¤¹¤ë¤Þ¤Ç±¦¥¿¥¤¥ä¤òÀµ²óž¤µ¤»º¸¥¿¥¤¥ä¤òÄä»ß¤µ¤»¤Þ¤¹¡£
¤³¤Î¤è¤¦¤Ë¡¤È¢¤ò·«¤êÊÖ¤·¤Æ¥È¥ì¡¼¥¹¤µ¤»¤Æ¤¤¤Þ¤¹¡£
***¹©Éפ·¤¿ÅÀ [#f56eb684]
-¤·¤¤¤ÃÍ
¡¡»ä¤ÏÇò¤Î¤·¤¤¤Ãͤò¡Ö60¡×¡¢¹õ¤Î¤·¤¤¤Ãͤò¡Ö43¡×¤È¤·¹õ¤Î¤·¤¤¤Ãͤò¹â¤¯ÀßÄꤷ¤Þ¤·¤¿¡£¹õ¤Î¤·¤¤¤Ãͤò¹â¤¯¤·¤¿Íýͳ¤Ï¡¢¥é¥¤¥ó¤ÎÂÀ¤µ¤ä¥³¡¼¥¹¤Î¾õ¶·¤Ë¤è¤Ã¤Æ¥È¥ì¡¼¥¹¾õ¶·¤¬ÊѤï¤Ã¤Æ¤·¤Þ¤¤¹õ¤¤¥é¥¤¥ó¤òÆÉ¤ßÈô¤Ð¤·¤Æ¿Ê¤ó¤Ç¤·¤Þ¤¦¤È¤¤¤¦¸½¾Ý¤¬½Ð¤Æ¤·¤Þ¤·¤Þ¤·¤¿¡£¤½¤ì¤òËɤ°¤¿¤á¤Ë¡¢¹õ¤Î¤·¤¤¤Ãͤò¹â¤á¤Ë¤È¤Ã¤Æ¤ª¤¯¤³¤È¤Ç¹õ¤¤¥é¥¤¥ó¤òÈ¿±þ¤µ¤»¤ä¤¹¤¯¤·¤Þ¤·¤¿¡£¤Þ¤¿¡¢Çò¤È¹õ¤Î¤¢¤¤¤À¡¢¤Ä¤Þ¤ê¶³¦¼þÊÕ¤ò¥»¥ó¥µ¤¬ÆÉ¤ß¼è¤Ã¤¿¤éľ¿Ê¤¹¤ë¤È¤¤¤¦¥×¥í¥°¥é¥à¤ò½ñ¤¤Þ¤·¤¿¡£
-ľ³Ñ¥«¡¼¥Ö¡Ê¥¯¥é¥ó¥¯¡Ë
¡¡¥¯¥é¥ó¥¯¤ò¤É¤¦Ä̲᤹¤ë¤«Çº¤ß¤Þ¤·¤¿¡£¥¯¥é¥ó¥¯¤ÏÄ̾ï¤Î¥È¥ì¡¼¥¹¤ÇÄ̲á¤Ç¤¤ë¤Î¤Ç¤¹¤¬Æ°¤¤Ë̵Â̤¬¤ë¤È»×¤¤¤Þ¤·¤¿¡£¤½¤³¤Ç¼¡¤Î¤è¤¦¤Ë¥¯¥é¥ó¥¯¤Îưºî¤ò£´Ãʳ¬¤Ëʬ¤±¤Þ¤·¤¿¡£
¡¶Ê¤¬¤ê³Ñ¤ËÍè¤ë¤Þ¤Ç
¡¡¡¡&ref(2012a/A3/Hexa/M2/Ä̾ï¥È¥ì¡¼¥¹.jpg,50%,Ä̾ï¥È¥ì¡¼¥¹);
¡¡¶³¦¤¬ÀÚ¤ì¤ë¤Þ¤ÇÄ̾ï¥È¥ì¡¼¥¹¤ò¹Ô¤¤¤Þ¤¹¡£
¢¶Ê¤¬¤ê³Ñ¤ò±Û¤¨¤¿¤é
¡¡¡¡&ref(2012a/A3/Hexa/M2/¶³¦¤¬Àڤ줿¤È¤.jpg,50%,¶³¦¤¬Àڤ줿¤é);
¡¡¶³¦¤¬Àڤ줿¤é±¦¤Î¥¿¥¤¥ä¤òÄä»ß¤µ¤»¡¢º¸¤Î¥¿¥¤¥ä¤òÀµ²óž¤µ¤»¤Æ±¦Àû²ó¤ò¹Ô¤¤¤Þ¤¹¡£
£¤·¤Ð¤é¤¯Çò¿§¤À¤Ã¤¿¤é
¡¡¡¡&ref(2012a/A3/Hexa/M2/¶³¦¤¬Àڤ줿¤È¤£².jpg,50%,¶³¦¤¬Àڤ줿¤é£²);
¡¡¢¤Îưºî¤ò¤·¤Ð¤é¤¯¡Ê¤À¤¤¤¿¤¤350msÁ°¸å¡Ë¤Î´Ö¥»¥ó¥µ¤ÎÈ¿±þ¤¬Çò¤ò¸¡ÃΤ·¤Æ¤¤¤¿¤é±¦¥â¡¼¥¿¤òµÕ²óž¤µ¤»¤Þ¤¹¡£
¤¹õ¤¤Àþ¤ò¸¡ÃΤ¹¤ë¤Þ¤Ç
¡¡¡¡&ref(2012a/A3/Hexa/M2/¥Õ¥Ã¥.jpg,50%,¥Õ¥Ã¥);
¡¡¹õ¤¤Àþ¤ò¸¡½Ð¤¹¤ë¤Þ¤Ç£¤Îưºî¤ò¤·¡¢¹õ¤¤Àþ¤ò¸¡½Ð¤·¤¿¤éÄ̾ï¤È¥ì¡¼¥¹¤ò¤·¤Þ¤¹¡£
-æ½ÐÊýË¡
¡¡Ã¦½ÐÊýË¡¤Ï¡¢¥È¥ì¡¼¥¹¤¹¤ë°ÌÃÖ¤òÊѤ¨¤ë¤³¤È¤Ç¤¹¡£¤Þ¤º£±¼þȾ¤·¤Æ¤Ê¤¤¤È¤¤Ï¡¤Î¤Û¤¦¤ò¥È¥ì¡¼¥¹¤·¤Æ¤¤¤¤Þ¤¹¡£¤½¤·¤Æ°ì¼þȾ¤·¤¿¤È¤¥´¡¼¥ë¤Î£Ô»úÏ©¤ÎľÁ°¤Ç¤ï¤¶¤È¹õ¤¤¥é¥¤¥ó¤òÈô¤Ó±Û¤¨¤Æ¢¤Î¤Û¤¦¤Ç¥È¥ì¡¼¥¹¤·¤Æ¥´¡¼¥ë¤Ë¸þ¤«¤¦ÊýË¡¤ò¤È¤ê¤Þ¤·¤¿¡£¤Þ¤¿¢¤Ë¤¦¤Ä¤Ã¤¿»þ¤Î¶îưÊýË¡¤¬¹õ¤¤£Ô»úÏ©¤ò¶Ê¤¬¤ê¤ä¤¹¤¤¤è¤¦¤Ë¡¢¹õ¤¤¥é¥¤¥ó¤ò¡Ö30ms¡×°Ê¾åÈ¿±þ¤·Â³¤±¤ë»þ¤ÏÆâ¦¤Î¥¿¥¤¥ä¤òµÕ²óž¤µ¤»¤Æ¶Ê¤¬¤ë³ÑÅÙ¤òľ³Ñ¤Ë¶á¤¤¤è¤¦¤Ë¤·¤Þ¤·¤¿¡£
¡¡¡¡&ref(2012a/A3/Hexa/M2/¹©É×.jpg,50%,¥³¡¼¥¹);
***¥½¡¼¥¹ [#vbca9525]
/*------------------------------------------------------------
¥é¥¤¥ó¥È¥ì¡¼¥¹¥í¥Ü¥Ã¥È
2012/6/26
trace.nxc
------------------------------------------------------------*/
/*-----------------------------------------------------------
Äê¿ô
------------------------------------------------------------*/
#define TH_B 43 //¹õ¤Î¤·¤¤¤ÃÍ
#define TH_W 60 //Çò¤Î¤·¤¤¤ÃÍ
#define DUTY 50 //PWM¥Ç¥å¡¼¥Æ¥£ÀßÄê¡Ê¡ó¡Ë
#define T_TIM 480 //¥³¡¼¥¹¤ò¥È¥ì¡¼¥¹¤¹¤ë»þ´Ö(TÉáß10)
#define T2 1000 //¥³¡¼¥¹¤«¤é¥´¡¼¥ë¤Ø¹Ô¤¯»þ´Ö(TÉáß100)
/*-----------------------------------------------------------
¥°¥í¡¼¥Ð¥ëÊÑ¿ô
------------------------------------------------------------*/
int iNum1; //LCD¤Ëɽ¼¨¤¹¤ë¤¿¤á¤ÎÃͤòÆþ¤ì¤ëÊÑ¿ô
int iNum2; //LCD¤Ëɽ¼¨¤¹¤ë¤¿¤á¤ÎÃͤòÆþ¤ì¤ëÊÑ¿ô
int cnt1; //»þ´Ö´¹»»¤Î¥«¥¦¥ó¥È
/*-----------------------------------------------------------
¥µ¥Ö´Ø¿ô
------------------------------------------------------------*/
//LCDɽ¼¨ÍÑ´Ø¿ô
task put_lcd()
{
NumOut(0,LCD_LINE1,iNum1); //¥»¥ó¥µÃÍɽ¼¨
NumOut(0,LCD_LINE2,iNum2); //»þ´Öɽ¼¨
Wait(1000); //1000msÂÔ¤Ä
ResetScreen(); //LCD¥¯¥ê¥¢
Wait(100); //100msÂÔ¤Ä
}
//¥³¡¼¥¹¤ò¥È¥ì¡¼¥¹¤¹¤ë¤È¤¤Î¥â¡¼¥¿½ÐÎÏ´Ø¿ô£±
void trace(int sens)
{
if(sens > TH_W){ //Çò¤ËÈ¿±þ¤·¤¿¤é
OnFwd(OUT_C,DUTY);
Off(OUT_A);
cnt1++;
if(cnt1 > 70){ //Çò¤ËÈ¿±þ¤·¤Æ¤ë»þ´Ö¤¬70¤òͤ¨¤¿¤é
OnRev(OUT_A,DUTY);
}
}
else if(sens < TH_B){ //¹õ¤ËÈ¿±þ¤·¤¿¤é
OnFwd(OUT_A,DUTY);
Off(OUT_C);
cnt1 = 0;
}
else{ //Çò¤È¹õ¤Î¶³¦¤Ë¤¤¿¤é
OnFwdSync(OUT_AC,70,0);
cnt1 = 0;
}
}
//¥³¡¼¥¹¤òæ½Ð¤¹¤ë¤È¤¤Î¥â¡¼¥¿½ÐÎÏ´Ø¿ô£²
void trace2(int sens)
{
if(sens > TH_W){ //Çò¤ËÈ¿±þ¤·¤¿¤é
OnFwd(OUT_A,DUTY);
Off(OUT_C);
cnt1 = 0;
}
else{ //¹õ¤ËÈ¿±þ¤·¤¿¤é
OnFwd(OUT_C,DUTY);
Off(OUT_A);
cnt1++;
if(cnt1 > 30){ //¹õ¤ËÈ¿±þ¤·¤Æ¤ë»þ´Ö¤¬30¤òͤ¨¤¿¤é
OnRev(OUT_A,DUTY);
}
}
}
/*-----------------------------------------------------------
¥á¥¤¥ó´Ø¿ô
------------------------------------------------------------*/
task main()
{
long old_time1,time2=0;
/* ¥»¥ó¥µ¤Î½é´üÀßÄê */
SetSensor(SENSOR_1,SENSOR_LIGHT);
SetSensorLight(IN_1);
old_time1 = CurrentTick(); //¤³¤³¤Þ¤Ç¤Î»þ´Ö¤ò¼èÆÀ
while(iNum2 <= T_TIM){
start put_lcd; //LCDɽ¼¨¥¹¥¿¡¼¥È
iNum1 = SENSOR_1; //¥»¥ó¥µÃÍÂåÆþ
iNum2 = (CurrentTick() - old_time1)/100; //»þ´Ö·×¬
trace(iNum1); //¥â¡¼¥¿½ÐÎÏ´Ø¿ô£±
Wait(5); //¥»¥ó¥µ¤ÎÆÉ¤ß¼è¤ê®ÅÙ¤òÄ´À°¡Ê5ms¡Ë
}
/* ¥È¥ì¡¼¥¹¤¹¤ë¶³¦¤òÊѤ¨¤ë¡Êæ½Ð¥â¡¼¥É¤Ø¡Ë */
Off(OUT_AC);
Wait(100);
OnRev(OUT_A,DUTY);
Wait(100);
Off(OUT_AC);
Wait(100);
/* ¥³¡¼¥¹¤òæ½Ð¤¹¤ë¡Êæ½Ð¥â¡¼¥É¡Ë */
while(time2 < (T2*10)){
iNum1 = SENSOR_1; //¥»¥ó¥µÃÍÂåÆþ
trace2(iNum1); //¥â¡¼¥¿½ÐÎÏ´Ø¿ô£²
time2++;
Wait(1); //¥»¥ó¥µÆÉ¤ß¼è¤ê®ÅÙÄ´À°¡Ê1ms¡Ë
}
Off(OUT_AC); //Ää»ß
}
**ư²è [#m944e6ca]
´°Áö¤·¤¿Æ°²è¤¬¤³¤Á¤é¤Ç¤¹¡£
¥ê¥ó¥¯¡§http://www.youtube.com/watch?v=K2CUb7D1okM
**È¿¾Ê´¶ÁÛ [#wd3abcc4]
¡¡º£²ó¤Î²ÝÂê¤Ï¥é¥¤¥ó¤ò¥È¥ì¡¼¥¹¤¹¤ë¤Î¤Ë¤¹¤´¤¯»þ´Ö¤¬¤«¤«¤ê¤Þ¤·¤¿¡£ÆÃ¤Ë¤³¤À¤ï¤Ã¤¿¤Î¤Ï¹õ¤ÈÇò¤Î¤·¤¤¤ÃͤǤ¹¡£¤³¤ÎÃͤ¬¤Á¤ç¤Ã¤È¤Ç¤â¤º¤ì¤Æ¤·¤Þ¤¦¤È¥é¥¤¥ó¤ò¥È¥ì¡¼¥¹¤·¤Ê¤¯¤Ê¤Ã¤Æ¤·¤Þ¤·¤Þ¤¹¡£°ìÈÖÆñ¤·¤«¤Ã¤¿¤Î¤Ï£±¼þȾ¥³¡¼¥¹¤ò¥È¥ì¡¼¥¹¤·¤¿¤¢¤È¤Î¥´¡¼¥ëÃÏÅÀ¤Ë¹Ô¤¯Æ°ºî¤Ç¤·¤¿¡£
½ªÎ»¹Ô:
*²ÝÂꣲ¡Á¥é¥¤¥ó¥È¥ì¡¼¥¹¥í¥Ü¥Ã¥È¡Á [#f4eb807a]
Ìܼ¡
#contents
**¥ë¡¼¥ë [#r3e8ddea]
¹õ¤¤Àþ¤Î¥³¡¼¥¹¤ò£±¼þȾ¤·¤Æ¥´¡¼¥ë¤ËÅþ㤷¤¿¤È¤¤ËÄä»ß¤¹¤ë¡£
**¥³¡¼¥¹ÀâÌÀ [#zcae88b2]
-¸òº¹ÅÀ:£²²Õ½ê
-ľ³Ñ¥«¡¼¥Ö(¥¯¥é¥ó¥¯):£±²Õ½ê
-¥Ø¥¢¥Ô¥ó¥«¡¼¥Ö:£±²Õ½ê
-Àþ¤ÎÂÀ¤µ¤Ï15¡Á20mm¡Ê¾ì½ê¤Ë¤è¤Ã¤ÆÂÀ¤µ¤¬°Û¤Ê¤ë¡Ë
//¼Ì¿¿
¡¡¡¡&ref(2012a/A3/Hexa/M2/¥³¡¼¥¹.jpg,50%,¥³¡¼¥¹);
**¼ÖÂÎ [#x4ecb3f0]
¡¡¼ÖÂΤϥ»¥ó¥µÉôʬ°Ê³°¤ÏÀâÌÀ½ñ¤É¤¦¤ê¤ËÁȤßΩ¤Þ¤·¤¿¡£
//¼Ì¿¿
¡¡¡¡&ref(2012a/A3/Hexa/M2/¼ÖÂÎ.JPG,30%,¼ÖÂÎ);
**¥×¥í¥°¥é¥à [#x68327c0]
***¥é¥¤¥ó¥È¥ì¡¼¥¹¤Î»ÅÁÈ¤ß [#cc6b52e6]
¡¡»ä¤Î¼ÖÂΤϥ»¥ó¥µ¤ò£±¤Ä¤·¤«»È¤Ã¤Æ¤¤¤Ê¤¤¤Î¤ÇÇò¤È¹õ¤Î¶³¦¤ò¥È¥ì¡¼¥¹¤¹¤ë´¶¤¸¤Ç¥×¥í¥°¥é¥à¤òºîÀ®¤·¤Þ¤·¤¿¡£
¡¥»¥ó¥µ¤¬Çò¤ËÈ¿±þ¤·¤Æ¤¤¤ë¤È¤
¡¡¡¡&ref(2012a/A3/Hexa/M2/Çò¤Î¤È¤.jpg,50%,¥»¥ó¥µÈ¿±þ¡);
¡¡´Ý¤¤ÀÖ¤¤¤ä¤Ä¤ò¥»¥ó¥µ¤À¤È¤¹¤ë¤È¥»¥ó¥µ¤¬Çò¤ËÈ¿±þ¤·¤Æ¤¤¤ë¤È¤¡¢¹õ¤¤¥é¥¤¥ó¤Ë¥»¥ó¥µ¤¬È¿±þ¤¹¤ë¤Þ¤Çº¸¤Î¥¿¥¤¥ä¤òÀµ²óž¤µ¤»±¦¥¿¥¤¥ä¤òÄä»ß¤µ¤»¤Þ¤¹¡£
¢¥»¥ó¥µ¤¬¹õ¤ËÈ¿±þ¤·¤Æ¤¤¤ë¤È¤
¡¡¡¡&ref(2012a/A3/Hexa/M2/¹õ¤Î¤È¤.jpg,50%,¥»¥ó¥µÈ¿±þ¢);
¡¡¥»¥ó¥µ¤¬¹õ¤ËÈ¿±þ¤·¤¿¤È¤¡¢Çò¤ËÈ¿±þ¤¹¤ë¤Þ¤Ç±¦¥¿¥¤¥ä¤òÀµ²óž¤µ¤»º¸¥¿¥¤¥ä¤òÄä»ß¤µ¤»¤Þ¤¹¡£
¤³¤Î¤è¤¦¤Ë¡¤È¢¤ò·«¤êÊÖ¤·¤Æ¥È¥ì¡¼¥¹¤µ¤»¤Æ¤¤¤Þ¤¹¡£
***¹©Éפ·¤¿ÅÀ [#f56eb684]
-¤·¤¤¤ÃÍ
¡¡»ä¤ÏÇò¤Î¤·¤¤¤Ãͤò¡Ö60¡×¡¢¹õ¤Î¤·¤¤¤Ãͤò¡Ö43¡×¤È¤·¹õ¤Î¤·¤¤¤Ãͤò¹â¤¯ÀßÄꤷ¤Þ¤·¤¿¡£¹õ¤Î¤·¤¤¤Ãͤò¹â¤¯¤·¤¿Íýͳ¤Ï¡¢¥é¥¤¥ó¤ÎÂÀ¤µ¤ä¥³¡¼¥¹¤Î¾õ¶·¤Ë¤è¤Ã¤Æ¥È¥ì¡¼¥¹¾õ¶·¤¬ÊѤï¤Ã¤Æ¤·¤Þ¤¤¹õ¤¤¥é¥¤¥ó¤òÆÉ¤ßÈô¤Ð¤·¤Æ¿Ê¤ó¤Ç¤·¤Þ¤¦¤È¤¤¤¦¸½¾Ý¤¬½Ð¤Æ¤·¤Þ¤·¤Þ¤·¤¿¡£¤½¤ì¤òËɤ°¤¿¤á¤Ë¡¢¹õ¤Î¤·¤¤¤Ãͤò¹â¤á¤Ë¤È¤Ã¤Æ¤ª¤¯¤³¤È¤Ç¹õ¤¤¥é¥¤¥ó¤òÈ¿±þ¤µ¤»¤ä¤¹¤¯¤·¤Þ¤·¤¿¡£¤Þ¤¿¡¢Çò¤È¹õ¤Î¤¢¤¤¤À¡¢¤Ä¤Þ¤ê¶³¦¼þÊÕ¤ò¥»¥ó¥µ¤¬ÆÉ¤ß¼è¤Ã¤¿¤éľ¿Ê¤¹¤ë¤È¤¤¤¦¥×¥í¥°¥é¥à¤ò½ñ¤¤Þ¤·¤¿¡£
-ľ³Ñ¥«¡¼¥Ö¡Ê¥¯¥é¥ó¥¯¡Ë
¡¡¥¯¥é¥ó¥¯¤ò¤É¤¦Ä̲᤹¤ë¤«Çº¤ß¤Þ¤·¤¿¡£¥¯¥é¥ó¥¯¤ÏÄ̾ï¤Î¥È¥ì¡¼¥¹¤ÇÄ̲á¤Ç¤¤ë¤Î¤Ç¤¹¤¬Æ°¤¤Ë̵Â̤¬¤ë¤È»×¤¤¤Þ¤·¤¿¡£¤½¤³¤Ç¼¡¤Î¤è¤¦¤Ë¥¯¥é¥ó¥¯¤Îưºî¤ò£´Ãʳ¬¤Ëʬ¤±¤Þ¤·¤¿¡£
¡¶Ê¤¬¤ê³Ñ¤ËÍè¤ë¤Þ¤Ç
¡¡¡¡&ref(2012a/A3/Hexa/M2/Ä̾ï¥È¥ì¡¼¥¹.jpg,50%,Ä̾ï¥È¥ì¡¼¥¹);
¡¡¶³¦¤¬ÀÚ¤ì¤ë¤Þ¤ÇÄ̾ï¥È¥ì¡¼¥¹¤ò¹Ô¤¤¤Þ¤¹¡£
¢¶Ê¤¬¤ê³Ñ¤ò±Û¤¨¤¿¤é
¡¡¡¡&ref(2012a/A3/Hexa/M2/¶³¦¤¬Àڤ줿¤È¤.jpg,50%,¶³¦¤¬Àڤ줿¤é);
¡¡¶³¦¤¬Àڤ줿¤é±¦¤Î¥¿¥¤¥ä¤òÄä»ß¤µ¤»¡¢º¸¤Î¥¿¥¤¥ä¤òÀµ²óž¤µ¤»¤Æ±¦Àû²ó¤ò¹Ô¤¤¤Þ¤¹¡£
£¤·¤Ð¤é¤¯Çò¿§¤À¤Ã¤¿¤é
¡¡¡¡&ref(2012a/A3/Hexa/M2/¶³¦¤¬Àڤ줿¤È¤£².jpg,50%,¶³¦¤¬Àڤ줿¤é£²);
¡¡¢¤Îưºî¤ò¤·¤Ð¤é¤¯¡Ê¤À¤¤¤¿¤¤350msÁ°¸å¡Ë¤Î´Ö¥»¥ó¥µ¤ÎÈ¿±þ¤¬Çò¤ò¸¡ÃΤ·¤Æ¤¤¤¿¤é±¦¥â¡¼¥¿¤òµÕ²óž¤µ¤»¤Þ¤¹¡£
¤¹õ¤¤Àþ¤ò¸¡ÃΤ¹¤ë¤Þ¤Ç
¡¡¡¡&ref(2012a/A3/Hexa/M2/¥Õ¥Ã¥.jpg,50%,¥Õ¥Ã¥);
¡¡¹õ¤¤Àþ¤ò¸¡½Ð¤¹¤ë¤Þ¤Ç£¤Îưºî¤ò¤·¡¢¹õ¤¤Àþ¤ò¸¡½Ð¤·¤¿¤éÄ̾ï¤È¥ì¡¼¥¹¤ò¤·¤Þ¤¹¡£
-æ½ÐÊýË¡
¡¡Ã¦½ÐÊýË¡¤Ï¡¢¥È¥ì¡¼¥¹¤¹¤ë°ÌÃÖ¤òÊѤ¨¤ë¤³¤È¤Ç¤¹¡£¤Þ¤º£±¼þȾ¤·¤Æ¤Ê¤¤¤È¤¤Ï¡¤Î¤Û¤¦¤ò¥È¥ì¡¼¥¹¤·¤Æ¤¤¤¤Þ¤¹¡£¤½¤·¤Æ°ì¼þȾ¤·¤¿¤È¤¥´¡¼¥ë¤Î£Ô»úÏ©¤ÎľÁ°¤Ç¤ï¤¶¤È¹õ¤¤¥é¥¤¥ó¤òÈô¤Ó±Û¤¨¤Æ¢¤Î¤Û¤¦¤Ç¥È¥ì¡¼¥¹¤·¤Æ¥´¡¼¥ë¤Ë¸þ¤«¤¦ÊýË¡¤ò¤È¤ê¤Þ¤·¤¿¡£¤Þ¤¿¢¤Ë¤¦¤Ä¤Ã¤¿»þ¤Î¶îưÊýË¡¤¬¹õ¤¤£Ô»úÏ©¤ò¶Ê¤¬¤ê¤ä¤¹¤¤¤è¤¦¤Ë¡¢¹õ¤¤¥é¥¤¥ó¤ò¡Ö30ms¡×°Ê¾åÈ¿±þ¤·Â³¤±¤ë»þ¤ÏÆâ¦¤Î¥¿¥¤¥ä¤òµÕ²óž¤µ¤»¤Æ¶Ê¤¬¤ë³ÑÅÙ¤òľ³Ñ¤Ë¶á¤¤¤è¤¦¤Ë¤·¤Þ¤·¤¿¡£
¡¡¡¡&ref(2012a/A3/Hexa/M2/¹©É×.jpg,50%,¥³¡¼¥¹);
***¥½¡¼¥¹ [#vbca9525]
/*------------------------------------------------------------
¥é¥¤¥ó¥È¥ì¡¼¥¹¥í¥Ü¥Ã¥È
2012/6/26
trace.nxc
------------------------------------------------------------*/
/*-----------------------------------------------------------
Äê¿ô
------------------------------------------------------------*/
#define TH_B 43 //¹õ¤Î¤·¤¤¤ÃÍ
#define TH_W 60 //Çò¤Î¤·¤¤¤ÃÍ
#define DUTY 50 //PWM¥Ç¥å¡¼¥Æ¥£ÀßÄê¡Ê¡ó¡Ë
#define T_TIM 480 //¥³¡¼¥¹¤ò¥È¥ì¡¼¥¹¤¹¤ë»þ´Ö(TÉáß10)
#define T2 1000 //¥³¡¼¥¹¤«¤é¥´¡¼¥ë¤Ø¹Ô¤¯»þ´Ö(TÉáß100)
/*-----------------------------------------------------------
¥°¥í¡¼¥Ð¥ëÊÑ¿ô
------------------------------------------------------------*/
int iNum1; //LCD¤Ëɽ¼¨¤¹¤ë¤¿¤á¤ÎÃͤòÆþ¤ì¤ëÊÑ¿ô
int iNum2; //LCD¤Ëɽ¼¨¤¹¤ë¤¿¤á¤ÎÃͤòÆþ¤ì¤ëÊÑ¿ô
int cnt1; //»þ´Ö´¹»»¤Î¥«¥¦¥ó¥È
/*-----------------------------------------------------------
¥µ¥Ö´Ø¿ô
------------------------------------------------------------*/
//LCDɽ¼¨ÍÑ´Ø¿ô
task put_lcd()
{
NumOut(0,LCD_LINE1,iNum1); //¥»¥ó¥µÃÍɽ¼¨
NumOut(0,LCD_LINE2,iNum2); //»þ´Öɽ¼¨
Wait(1000); //1000msÂÔ¤Ä
ResetScreen(); //LCD¥¯¥ê¥¢
Wait(100); //100msÂÔ¤Ä
}
//¥³¡¼¥¹¤ò¥È¥ì¡¼¥¹¤¹¤ë¤È¤¤Î¥â¡¼¥¿½ÐÎÏ´Ø¿ô£±
void trace(int sens)
{
if(sens > TH_W){ //Çò¤ËÈ¿±þ¤·¤¿¤é
OnFwd(OUT_C,DUTY);
Off(OUT_A);
cnt1++;
if(cnt1 > 70){ //Çò¤ËÈ¿±þ¤·¤Æ¤ë»þ´Ö¤¬70¤òͤ¨¤¿¤é
OnRev(OUT_A,DUTY);
}
}
else if(sens < TH_B){ //¹õ¤ËÈ¿±þ¤·¤¿¤é
OnFwd(OUT_A,DUTY);
Off(OUT_C);
cnt1 = 0;
}
else{ //Çò¤È¹õ¤Î¶³¦¤Ë¤¤¿¤é
OnFwdSync(OUT_AC,70,0);
cnt1 = 0;
}
}
//¥³¡¼¥¹¤òæ½Ð¤¹¤ë¤È¤¤Î¥â¡¼¥¿½ÐÎÏ´Ø¿ô£²
void trace2(int sens)
{
if(sens > TH_W){ //Çò¤ËÈ¿±þ¤·¤¿¤é
OnFwd(OUT_A,DUTY);
Off(OUT_C);
cnt1 = 0;
}
else{ //¹õ¤ËÈ¿±þ¤·¤¿¤é
OnFwd(OUT_C,DUTY);
Off(OUT_A);
cnt1++;
if(cnt1 > 30){ //¹õ¤ËÈ¿±þ¤·¤Æ¤ë»þ´Ö¤¬30¤òͤ¨¤¿¤é
OnRev(OUT_A,DUTY);
}
}
}
/*-----------------------------------------------------------
¥á¥¤¥ó´Ø¿ô
------------------------------------------------------------*/
task main()
{
long old_time1,time2=0;
/* ¥»¥ó¥µ¤Î½é´üÀßÄê */
SetSensor(SENSOR_1,SENSOR_LIGHT);
SetSensorLight(IN_1);
old_time1 = CurrentTick(); //¤³¤³¤Þ¤Ç¤Î»þ´Ö¤ò¼èÆÀ
while(iNum2 <= T_TIM){
start put_lcd; //LCDɽ¼¨¥¹¥¿¡¼¥È
iNum1 = SENSOR_1; //¥»¥ó¥µÃÍÂåÆþ
iNum2 = (CurrentTick() - old_time1)/100; //»þ´Ö·×¬
trace(iNum1); //¥â¡¼¥¿½ÐÎÏ´Ø¿ô£±
Wait(5); //¥»¥ó¥µ¤ÎÆÉ¤ß¼è¤ê®ÅÙ¤òÄ´À°¡Ê5ms¡Ë
}
/* ¥È¥ì¡¼¥¹¤¹¤ë¶³¦¤òÊѤ¨¤ë¡Êæ½Ð¥â¡¼¥É¤Ø¡Ë */
Off(OUT_AC);
Wait(100);
OnRev(OUT_A,DUTY);
Wait(100);
Off(OUT_AC);
Wait(100);
/* ¥³¡¼¥¹¤òæ½Ð¤¹¤ë¡Êæ½Ð¥â¡¼¥É¡Ë */
while(time2 < (T2*10)){
iNum1 = SENSOR_1; //¥»¥ó¥µÃÍÂåÆþ
trace2(iNum1); //¥â¡¼¥¿½ÐÎÏ´Ø¿ô£²
time2++;
Wait(1); //¥»¥ó¥µÆÉ¤ß¼è¤ê®ÅÙÄ´À°¡Ê1ms¡Ë
}
Off(OUT_AC); //Ää»ß
}
**ư²è [#m944e6ca]
´°Áö¤·¤¿Æ°²è¤¬¤³¤Á¤é¤Ç¤¹¡£
¥ê¥ó¥¯¡§http://www.youtube.com/watch?v=K2CUb7D1okM
**È¿¾Ê´¶ÁÛ [#wd3abcc4]
¡¡º£²ó¤Î²ÝÂê¤Ï¥é¥¤¥ó¤ò¥È¥ì¡¼¥¹¤¹¤ë¤Î¤Ë¤¹¤´¤¯»þ´Ö¤¬¤«¤«¤ê¤Þ¤·¤¿¡£ÆÃ¤Ë¤³¤À¤ï¤Ã¤¿¤Î¤Ï¹õ¤ÈÇò¤Î¤·¤¤¤ÃͤǤ¹¡£¤³¤ÎÃͤ¬¤Á¤ç¤Ã¤È¤Ç¤â¤º¤ì¤Æ¤·¤Þ¤¦¤È¥é¥¤¥ó¤ò¥È¥ì¡¼¥¹¤·¤Ê¤¯¤Ê¤Ã¤Æ¤·¤Þ¤·¤Þ¤¹¡£°ìÈÖÆñ¤·¤«¤Ã¤¿¤Î¤Ï£±¼þȾ¥³¡¼¥¹¤ò¥È¥ì¡¼¥¹¤·¤¿¤¢¤È¤Î¥´¡¼¥ëÃÏÅÀ¤Ë¹Ô¤¯Æ°ºî¤Ç¤·¤¿¡£
¥Ú¡¼¥¸Ì¾: