2019a/Member/koukiw/Mission3
¤ò¥Æ¥ó¥×¥ì¡¼¥È¤Ë¤·¤ÆºîÀ®
[
¥È¥Ã¥×
] [
¿·µ¬
|
°ìÍ÷
|
¸¡º÷
|
ºÇ½ª¹¹¿·
|
¥Ø¥ë¥×
|
¥í¥°¥¤¥ó
]
³«»Ï¹Ô:
[[2019a/Member]]
Ìܼ¡ [#p5af44b8]
#contents
*²ÝÂê¤Ë¤Ä¤¤¤Æ [#b9d22da4]
¥Ô¥ó¥Ý¥ó¶Ì¤Þ¤¿¤ÏÀĤÈÀ֤Υܡ¼¥ë¤ò±¿È¤·¤Æ¡¢½êÄê¤ÎÍÆ´ï¤ÎÃæ¤ËÆþ¤ì¤ë¡£
#ref(2019a-mission3.png)
**¥Õ¥£¡¼¥ë¥É¤ÎÀâÌÀ [#c7515b2f]
~¡¦¥Õ¥£¡¼¥ë¥É¤Ï²ÝÂê2¤Ç»ÈÍѤ·¤¿»æ¤ò»ÈÍѤ¹¤ë¡£
~¡¦À¸¶¨¤Î¤ªÊÛÅö¤Î»Í³Ñ¤¤¥×¥éÍÆ´ï2¤Ä¤ò¤½¤ì¤¾¤ì±ßÆâ¤ËÃÖ¤¡¢ÊÒÊý¤Ë¶Ì¤ò2¸ÄÆþ¤ì¤ë¡£
~¡¦»Ä¤ê¤Î2¸Ä¤Î¶Ì¤Ï²ÝÂê2¤ÈƱ¤¸°ÌÃÖ¤ËÃÖ¤¯¡£¤½¤ÎºÝ¡¢¥´¥à¥¿¥¤¥ä¤ä¥×¥ì¡¼¥È¤Î¾å¤ËÃÖ¤¤¤Æ¤â¤è¤¤¡£
~¡¦¥×¥éÍÆ´ï¤Ë¤Ï¿§¤ò¤Ä¤±¤¿¤êʸ»ú¤äµ¹æ¤ò½ñ¤¤¤Æ¤â¤è¤¤¡£
~¡¦¥×¥éÍÆ´ï¤ÏξÌ̥ơ¼¥×Åù¤Ç¥Õ¥£¡¼¥ë¥É¤Ë¸ÇÄꤷ¤Æ¤â¤è¤¤¡£
~¡¦2Ëç¤Î»æ¤Î¶³¦¤Ë¤Ï¤½¤ì¤¾¤ìÉý1cm¡¢¹ç·×2cm¤Î¹õÀþ¤òÉÁ¤¤¤Æ¤â¤è¤¤¡£
*Êý¿Ë [#t8965617]
ºÇ½é¤Ë¡¢Âç¤Þ¤«¤Ë¤É¤ó¤Ê¥í¥Ü¥Ã¥È¤Ë¤¹¤ë¤«¤òÏä·¹ç¤Ã¤Æ¼¡¤Î¤è¤¦¤Ê¾ò·ï¤Î¥í¥Ü¥Ã¥È¤Ë¤¹¤ë¤³¤È¤Ë¤Ê¤Ã¤¿¡£
~¡¦¥é¥¤¥ó¥È¥ì¡¼¥¹¤ÎÀµ³ÎÀ¤òÁý¤¹¤¿¤á¤Ë¸÷¥»¥ó¥µ¡¼¤òÆó¤Ä»ÈÍѤ¹¤ë¡£
~¡¦ÍÆ´ï¤ÎÃæ¤Î¶Ì¤âÄϤá¤ë¤è¤¦¤Ë¾å¤«¤é¶´¤ó¤ÇÄϤॢ¡¼¥à¤Ë¤¹¤ë¡£
#br
~»Â¿·¤Ê¥¢¥¤¥Ç¥¢¤Ï½Ð¤Æ¤³¤Ê¤«¤Ã¤¿¤¿¤á¡¢¶òľ¤Ë¥é¥¤¥ó¥È¥ì¡¼¥¹¤ò¤·¤Æ¤¤¤¯¤³¤È¤Ë¤·¤¿¡£¤³¤ì¤Ë¤¢¤¿¤ê¡¢ÉÔ³ÎÄêÍ×ÁǤò¸º¤é¤¹¤¿¤á¥ë¡¼¥ë¤Ë½¾¤¤2Ëç¤Î»æ¤Î¶³¦¤Ë¹õÀþ¤ò°ú¤¤¤¿¡£¤Þ¤¿¡¢Ê¬¤«¤ê¤ä¤¹¤¯¤¹¤ë¤¿¤á¤Ë¿·¤·¤¯¤Ç¤¤¿¸òº¹ÅÀ¤ò¤½¤ì¤¾¤ì ¾ , ¾¡Ç¤È¤·¤¿(²¼¿Þ»²¾È¡Ë¡£
#ref(sketch-1564132256515.png)
**¥ë¡¼¥È [#x03f66d4]
¡¡¡¤Þ¤ºA¤«¤é¥¹¥¿¡¼¥È¤·¡¢M,K¤òÄ̤äÆL¤Ç¶Ì¤òÄϤࡣ
~¡¡¢¿¶¤êÊ֤äơ¢Í褿ƻ¤òé¤êM>B>X>X'>B'>M'>K'>J'¤È¿Ê¤ó¤Ç¥´¡¼¥ë¤Ë¶Ì¤òÆþ¤ì¤ë¡£
~¡¡£¸åÂष¤Ê¤¬¤é¸þ¤¤òÊѤ¨¡¢L'¤Þ¤Ç¿Ê¤ß¶Ì¤òÄϤࡣ
~¡¡¤¿¶¤êÊ֤äÆK'>J'¤È¿Ê¤ó¤Ç¥´¡¼¥ë¤Ë¶Ì¤òÆþ¤ì¤ë¡£
~¡¡¥¸åÂष¤Ê¤¬¤é¸þ¤¤òÊѤ¨¡¢M'>B'>X'>X>B>C>I¤È¿Ê¤ó¤ÇÍÆ´ï¤ÎÃæ¤Î¶Ì¤òÄϤࡣ
~¡¡¦¿¶¤êÊ֤äÆC>B>X>X'>B'>C'>I'¤È¿Ê¤ó¤Ç¥´¡¼¥ë¤Ë¶Ì¤òÆþ¤ì¤Æ½ªÎ»¡£
*¥í¥Ü¥Ã¥È [#c1065932]
**¥¢¡¼¥à [#g5ca7f05]
Åö½éºî¤Ã¤¿¥¢¡¼¥à¡Ê²¼¿Þº¸¡Ë¤Ç¤ÏÍÆ´ï¤ÎÃæ¤Î¶Ì¤òÄϤá¤Ê¤«¤Ã¤¿¤¿¤á¡¢²¼¿Þ±¦¤Î¤è¤¦¤Ê·Á¾õ¤Ë²þÎɤ·¤¿¡£
#ref(Arm1.png)
¤³¤ÎºÝ¡¢¥¢¡¼¥à¤¬³«¤¤¹¤®¤Ê¤¤¤è¤¦¤Ë¥¹¥È¥Ã¥Ñ¡¼¤ò¤Ä¤±¤¿¡Ê²¼¿ÞÀִݤǰϤä¿Éôʬ¡Ë¡£
#ref(stopper.png)
¤Þ¤¿¡¢±ü¹Ô¤¤âÄɲä·¤ÆÆó¤ÄƱ»þ¤ËÄϤá¤ë¤è¤¦¤Ë¤·¤¿¡£¤³¤ì¤Ë¤è¤Ã¤Æ°ÜÆ°µ÷Î¥¤È»þ´Ö¡¢¥×¥í¥°¥é¥à¤¬Ã»½Ì¤µ¤ì¤¿¡£
~¥¢¡¼¥à¤Î°ìÈÖ²¼¤ÎÉôʬ¤¬°ìÉô·Ò¤¬¤Ã¤Æ¤¤¤Ê¤¤¤Î¤Ï¡¢ÃúÅÙ¤¤¤¤Ä¹¤µ¤ÎËÀ¤¬¤Ê¤«¤Ã¤¿¤«¤é¤Ç¤¢¤ë¡£Æä˰ÕÌ£¤Ï¤Ê¤¤¡£
**¸÷¥»¥ó¥µ¡¼ [#tccfb710]
¹õÀþ¤ÎÉý¤Ë¹ç¤¦¤è¤¦¤ËÄ´Àᤷ¤Æ¼è¤êÉÕ¤±¤¿¡£
#ref(DSC_0120.JPG)
**Á´ÂÎ [#vbe0b3cb]
#ref(DSC_0118.JPG)
²£¤«¤é¸«¤ë¤È¤³¤Î¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤ë¡£¥¢¡¼¥à¤¬½Å¤¤¤Î¤Ç¡¢ËÜÂΤò¸å¤í¤ËÇÛÃÖ¤·¤Æ¥Ð¥é¥ó¥¹¤ò¤È¤Ã¤¿¡£
~Àµ³ÎÀ¤òÁý¤¹¤¿¤á¡¢¥»¥ó¥µ¡¼¤Ï¥¿¥¤¥ä¤Ë¤Ç¤¤ë¤À¤±¶á¤Å¤±¤¿¡£
----
#ref(DSC_0128.JPG)
¥³¡¼¥É¤ÏËÜÂΤδ֤ˤޤȤá¤ÆÄ̤·¤Æ¸«±É¤¨¤òÎɤ¯¤·¤¿¡£
*¥×¥í¥°¥é¥à [#n0aab105]
**¥Þ¥¹¥¿¡¼Â¦ [#a1cd1a54]
¥Þ¥¹¥¿¡¼Â¦¤¬°ÜÆ°¤È¥»¥ó¥µ¡¼¤òôÅö¤¹¤ë¡£
#define KOSATEN 37 //¹õ¤«¤É¤¦¤«¤Î¶³¦
#define completed 15 //¥¹¥ì¡¼¥Ö¦¤ËÆ°ºî¤Î½ªÎ»¤òÅÁ¤¨¤ë
#define turn_left OnRev(OUT_A,70);OnFwd(OUT_B,70); //º¸ÀÞ
#define go_left OnRev(OUT_A,85);Off(OUT_B); //¿Ê¤ß¤Ä¤Äº¸¤Ë¶Ê¤¬¤ë
#define go_straight OnRev(OUT_AB,70); //ľ¿Ê
#define go_right OnRev(OUT_B,85);Off(OUT_A); //¿Ê¤ß¤Ä¤Ä±¦¤Ë¶Ê¤¬¤ë
#define turn_right OnRev(OUT_B,100);OnFwd(OUT_A,100); //±¦ÀÞ
#define short_break Off(OUT_AB);Wait(1000); //¾®µÙ»ß
#define brake Off(OUT_AB) //Ää»ß
sub follow_line() //Ä̾ï¤Î¥é¥¤¥ó¥È¥ì¡¼¥¹
{
while((SENSOR_1>KOSATEN)||(SENSOR_2>KOSATEN)){
int d=SENSOR_1-SENSOR_2;
if (d<-6){
turn_right;
}else if (d<-3){
go_right;
}else if (d<=3){
go_straight;
}else if (d<=6){
go_left;
}else {
turn_left;
}
}
PlaySound(SOUND_CLICK);
brake;Wait(200);
}
ξÊý¤Î¥»¥ó¥µ¡¼¤¬£³£·°Ê¾å¤Î»þ¡¢if°Ê²¼¤ÎÆ°ºî¤ò¤¹¤ë¡£º£²ó¤Ïº¸±¦¤Î¿ôÃͤκ¹¤ÇȽÃǤ¹¤ë¤è¤¦¤Ë¤·¤¿¡£
~ξÊý¤Î¿ôÃͤ¬£³£·°Ê²¼¤Ç¸òº¹ÅÀ¤ÈȽÃǤ·¡¢Ää»ß¤¹¤ë¡£Ää»ß¤¹¤ë¤È¤¤Ë²»¤¬ÌĤë¤è¤¦¤Ë¤·¤¿¡£
~¤³¤ì¤Ë¤è¤Ã¤Æ¸òº¹ÅÀ¤ò¤Á¤ã¤ó¤ÈȽÃǤ·¤Æ¤¤¤ë¤«¤É¤¦¤«¡¢¤¢¤ë¤¤¤Ï°ã¤¦¤È¤³¤í¤Ç¸òº¹ÅÀ¤ÈȽÃǤ·¤Æ¤¤¤Ê¤¤¤«¤¬¤ï¤«¤ê¤ä¤¹¤¯¤Ê¤ë¡£
sub follow_line2(int followtime) //¥¿¥¤¥Þ¡¼¤ò»È¤¦¥é¥¤¥ó¥È¥ì¡¼¥¹
{
long t0=CurrentTick();
while(CurrentTick()-t0<followtime){
int d=SENSOR_1-SENSOR_2;
if (d<-6){
turn_right;
}else if (d<-3){
go_right;
}else if (d<=3){
go_straight;
}else if (d<=6){
go_left;
}else {
turn_left;
}
}
PlaySound(SOUND_CLICK);
brake;Wait(200);
}
´ðËÜŪ¤Ë¤ÏÄ̾ï¤ÈƱ¤¸¡£K>L¤Ë¿Ê¤à¤È¤¤Ê¤É¡¢µ÷Î¥¤òÄ´À᤹¤ëɬÍפ¬¤¢¤ë½ê¤Ç»È¤¦¡£
sub chokusinL() //ľ¿Êº¸
{
go_left;Wait(500);
}
sub chokusinR() //ľ¿Ê±¦
{
go_right;Wait(500);
}
sub sasetsu() //º¸ÀÞ
{
turn_left;Wait(500);
go_left;Wait(500);
}
sub usetsu(int migi) //±¦ÀÞ
{
turn_right;Wait(500);
go_right;Wait(migi);
}
sub turn_behind() //¿¶¤ê¸þ¤¯
{
turn_left;Wait(1000);
while(SENSOR_1>KOSATEN){
turn_left;
}
Off(OUT_BC);
}
sub backleft() //¸åÂष±¦¤ò¸þ¤¯
{
OnFwd(OUT_A,100);Off(OUT_B);Wait(1500);
turn_right;Wait(600);
Off(OUT_AB);
}
sub backright() //¸åÂषº¸¤ò¸þ¤¯
{
OnFwd(OUT_B,100);Off(OUT_A);Wait(1400);
turn_left;Wait(500);
Off(OUT_AB);
}
sub ball_catch() //¶Ì¤òÄϤà
{
int msg;
SendRemoteNumber(1,MAILBOX1,12);
while(msg==completed){
ReceiveRemoteNumber(MAILBOX1,true,msg);
}
}
sub ball_release() //¶Ì¤òÊü¤¹
{
int msg;
SendRemoteNumber(1,MAILBOX1,11);
while(msg==completed){
ReceiveRemoteNumber(MAILBOX1,true,msg);
}
}
sub arm_up() //¥¢¡¼¥à¤ò¾å¤²¤ë
{
int msg;
SendRemoteNumber(1,MAILBOX1,13);
while(msg==completed){
ReceiveRemoteNumber(MAILBOX1,true,msg);
}
}
sub arm_down() //¥¢¡¼¥à¤ò²¼¤²¤ë
{
int msg;
SendRemoteNumber(1,MAILBOX1,14);
while(msg==completed){
ReceiveRemoteNumber(MAILBOX1,true,msg);
}
}
sub up_catch() //¥¢¡¼¥à¤ò¾å¤²¤Ê¤¬¤éÊĤ¸¤ë
{
int msg;
SendRemoteNumber(1,MAILBOX1,16);
while(msg==completed){
ReceiveRemoteNumber(MAILBOX1,true,msg);
}
}
sub down_release() //¥¢¡¼¥à¤ò²¼¤²¤Ê¤¬¤é³«¤¯
{
int msg;
SendRemoteNumber(1,MAILBOX1,17);
while(msg==completed){
ReceiveRemoteNumber(MAILBOX1,true,msg);
}
}
task main()
{
SetSensorLight(S1);//±¦¥«¥é¡¼¥»¥ó¥µ¡¼
SetSensorLight(S2);//º¸¥«¥é¡¼¥»¥ó¥µ¡¼
arm_up();
short_break;
ball_release();
go_straight;Wait(2000);
follow_line(); //M
chokusinR(); //K
follow_line2(1500);
short_break; //L
arm_down();
short_break;
ball_catch(); //¥Ü¡¼¥ë¥¥ã¥Ã¥Á
short_break;
arm_up();
short_break;
turn_behind();
follow_line();
chokusinL(); //K
follow_line();
usetsu(500); //M
follow_line();
sasetsu();
follow_line();
chokusinL(); //B
follow_line();
usetsu(500); //X
follow_line();
sasetsu(); //X'
follow_line();
chokusinR(); //B'
follow_line();
sasetsu(); //M'
follow_line();
sasetsu(); //K'
follow_line2(1000);
short_break; //J'
ball_release(); //¥ê¥ê¡¼¥¹
short_break;
backleft(); //K'
follow_line2(3700);
short_break; //L'
arm_down();
short_break;
ball_catch(); //¥Ü¡¼¥ë¥¥ã¥Ã¥Á
short_break;
arm_up();
short_break;
turn_behind();
OnFwd(OUT_AB,30);Wait(100);
follow_line();
usetsu(500); //K'
follow_line2(500);
short_break; //J'
ball_release(); //¥ê¥ê¡¼¥¹
short_break;
backright();
follow_line();
chokusinL();
follow_line();
usetsu(500); //M'
follow_line();
chokusinL(); //B'
follow_line();
usetsu(500); //X'
follow_line();
sasetsu(); //X
follow_line();
sasetsu(); //B
follow_line();
usetsu(400); //C
follow_line2(1650);
short_break; //I
arm_down();
short_break;
ball_catch(); //¥Ü¡¼¥ë¥¥ã¥Ã¥Á
short_break;
up_catch();
short_break;
backleft(); //C
follow_line();
usetsu(500); //B
follow_line();
usetsu(500); //X
follow_line();
sasetsu(); //X'
follow_line();
sasetsu(); //B'
follow_line();
usetsu(700);
follow_line2(900);
short_break; //J'
down_release(); //¥ê¥ê¡¼¥¹
short_break;
arm_up();
short_break;
backright(); //K'
} //½ªÎ»
**¥¹¥ì¡¼¥Ö¦ [#jc329156]
¥¹¥ì¡¼¥Ö¦¤¬¥¢¡¼¥à¤Î¾å²¼¤ÈÄϤߤòôÅö¤¹¤ë¡£
#define ball_release 11
#define ball_catch 12
#define arm_up 13
#define arm_down 14
#define completed 15
#define up_catch 16
#define down_release 17
task main()
{
int msg;
while(true){
ReceiveRemoteNumber(MAILBOX1,true,msg);
if(msg==ball_release){
OnFwd(OUT_A,50);Wait(500);Off(OUT_A);Wait(500); //¶Ì¤òÊü¤¹
SendResponseNumber(MAILBOX1,completed);
}
if(msg==ball_catch){
OnRev(OUT_A,50);Wait(600);Off(OUT_A);Wait(500); //¶Ì¤òÄϤà
SendResponseNumber(MAILBOX1,completed);
}
if(msg==arm_up){
OnFwd(OUT_B,50);Wait(600); OnFwd(OUT_B,5);Wait(500); //¥¢¡¼¥à¤ò¾å¤²¤ë
SendResponseNumber(MAILBOX1,completed);
}
if(msg==arm_down){
OnRev(OUT_B,30);Wait(600); OnFwd(OUT_B,5);Wait(500); //¥¢¡¼¥à¤ò²¼¤²¤ë
SendResponseNumber(MAILBOX1,completed);
}
if(msg==up_catch){
OnFwd(OUT_B,40);OnRev(OUT_A,15);Wait(300); //ÄϤߤʤ¬¤é»ý¤Á¾å¤²¤ë
SendResponseNumber(MAILBOX1,completed);
}
if(msg==down_release){
OnRev(OUT_B,10);OnFwd(OUT_A,20);Wait(150); //²¼¤í¤·¤Ê¤¬¤éÊü¤¹
SendResponseNumber(MAILBOX1,completed);
}
Wait(100);
msg=0;
}
} //½ªÎ»
*¤Þ¤È¤á¤È´¶ÁÛ [#s5ba3fd0]
ÆäËDZ¤Ã¤¿¥¢¥¤¥Ç¥¢¤â¤Ê¤¯ÃÏÌ£¤Ê¤â¤Î¤Ë¤Ê¤Ã¤¿¤È»×¤Ã¤¿¤¬¡¢·ë²ÌŪ¤Ë¤Ï¤½¤ì¤¬¸ù¤òÁÕ¤·¡¢Îɤ¤·ë²Ì¤ò½Ð¤¹¤³¤È¤¬¤Ç¤¤¿¡£»°¿Í¥°¥ë¡¼¥×¤À¤Ã¤¿¤¿¤á¿Í¿ôŪ¤ËÉÔÍø¤À¤È»×¤Ã¤¿¤¬¡¢¤¦¤Þ¤¯ºî¶È¤òʬô¤·¤Æ´°À®¤µ¤»¤é¤ì¤¿¡£ÍÆ´ï¤ÎÃæ¤Î¶Ì¤òÄϤà½ê¤ÎÄ´À°¤¬°ìÈÖÆñ¤·¤¯¡¢ËÜÈ֤Ǥϱ¿¼¡Âè¤È¤¤¤Ã¤¿·Á¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤Ã¤¿¡£¤³¤³¤À¤±¤Ï²ù¤·¤µ¤¬»Ä¤ë¡£¤¿¤À¡¢¤½¤ÎÁ°¤ÎÆó¤Ä¤Ï¤Û¤Ü´°àú¤Ë»Å¾å¤²¤ë¤³¤È¤¬¤Ç¤¤¿¤Î¤ÇÎɤ«¤Ã¤¿¡£»þ´Ö¤ò¤«¤±¤¿¹ÃÈ夬¤¢¤Ã¤¿¡£
½ªÎ»¹Ô:
[[2019a/Member]]
Ìܼ¡ [#p5af44b8]
#contents
*²ÝÂê¤Ë¤Ä¤¤¤Æ [#b9d22da4]
¥Ô¥ó¥Ý¥ó¶Ì¤Þ¤¿¤ÏÀĤÈÀ֤Υܡ¼¥ë¤ò±¿È¤·¤Æ¡¢½êÄê¤ÎÍÆ´ï¤ÎÃæ¤ËÆþ¤ì¤ë¡£
#ref(2019a-mission3.png)
**¥Õ¥£¡¼¥ë¥É¤ÎÀâÌÀ [#c7515b2f]
~¡¦¥Õ¥£¡¼¥ë¥É¤Ï²ÝÂê2¤Ç»ÈÍѤ·¤¿»æ¤ò»ÈÍѤ¹¤ë¡£
~¡¦À¸¶¨¤Î¤ªÊÛÅö¤Î»Í³Ñ¤¤¥×¥éÍÆ´ï2¤Ä¤ò¤½¤ì¤¾¤ì±ßÆâ¤ËÃÖ¤¡¢ÊÒÊý¤Ë¶Ì¤ò2¸ÄÆþ¤ì¤ë¡£
~¡¦»Ä¤ê¤Î2¸Ä¤Î¶Ì¤Ï²ÝÂê2¤ÈƱ¤¸°ÌÃÖ¤ËÃÖ¤¯¡£¤½¤ÎºÝ¡¢¥´¥à¥¿¥¤¥ä¤ä¥×¥ì¡¼¥È¤Î¾å¤ËÃÖ¤¤¤Æ¤â¤è¤¤¡£
~¡¦¥×¥éÍÆ´ï¤Ë¤Ï¿§¤ò¤Ä¤±¤¿¤êʸ»ú¤äµ¹æ¤ò½ñ¤¤¤Æ¤â¤è¤¤¡£
~¡¦¥×¥éÍÆ´ï¤ÏξÌ̥ơ¼¥×Åù¤Ç¥Õ¥£¡¼¥ë¥É¤Ë¸ÇÄꤷ¤Æ¤â¤è¤¤¡£
~¡¦2Ëç¤Î»æ¤Î¶³¦¤Ë¤Ï¤½¤ì¤¾¤ìÉý1cm¡¢¹ç·×2cm¤Î¹õÀþ¤òÉÁ¤¤¤Æ¤â¤è¤¤¡£
*Êý¿Ë [#t8965617]
ºÇ½é¤Ë¡¢Âç¤Þ¤«¤Ë¤É¤ó¤Ê¥í¥Ü¥Ã¥È¤Ë¤¹¤ë¤«¤òÏä·¹ç¤Ã¤Æ¼¡¤Î¤è¤¦¤Ê¾ò·ï¤Î¥í¥Ü¥Ã¥È¤Ë¤¹¤ë¤³¤È¤Ë¤Ê¤Ã¤¿¡£
~¡¦¥é¥¤¥ó¥È¥ì¡¼¥¹¤ÎÀµ³ÎÀ¤òÁý¤¹¤¿¤á¤Ë¸÷¥»¥ó¥µ¡¼¤òÆó¤Ä»ÈÍѤ¹¤ë¡£
~¡¦ÍÆ´ï¤ÎÃæ¤Î¶Ì¤âÄϤá¤ë¤è¤¦¤Ë¾å¤«¤é¶´¤ó¤ÇÄϤॢ¡¼¥à¤Ë¤¹¤ë¡£
#br
~»Â¿·¤Ê¥¢¥¤¥Ç¥¢¤Ï½Ð¤Æ¤³¤Ê¤«¤Ã¤¿¤¿¤á¡¢¶òľ¤Ë¥é¥¤¥ó¥È¥ì¡¼¥¹¤ò¤·¤Æ¤¤¤¯¤³¤È¤Ë¤·¤¿¡£¤³¤ì¤Ë¤¢¤¿¤ê¡¢ÉÔ³ÎÄêÍ×ÁǤò¸º¤é¤¹¤¿¤á¥ë¡¼¥ë¤Ë½¾¤¤2Ëç¤Î»æ¤Î¶³¦¤Ë¹õÀþ¤ò°ú¤¤¤¿¡£¤Þ¤¿¡¢Ê¬¤«¤ê¤ä¤¹¤¯¤¹¤ë¤¿¤á¤Ë¿·¤·¤¯¤Ç¤¤¿¸òº¹ÅÀ¤ò¤½¤ì¤¾¤ì ¾ , ¾¡Ç¤È¤·¤¿(²¼¿Þ»²¾È¡Ë¡£
#ref(sketch-1564132256515.png)
**¥ë¡¼¥È [#x03f66d4]
¡¡¡¤Þ¤ºA¤«¤é¥¹¥¿¡¼¥È¤·¡¢M,K¤òÄ̤äÆL¤Ç¶Ì¤òÄϤࡣ
~¡¡¢¿¶¤êÊ֤äơ¢Í褿ƻ¤òé¤êM>B>X>X'>B'>M'>K'>J'¤È¿Ê¤ó¤Ç¥´¡¼¥ë¤Ë¶Ì¤òÆþ¤ì¤ë¡£
~¡¡£¸åÂष¤Ê¤¬¤é¸þ¤¤òÊѤ¨¡¢L'¤Þ¤Ç¿Ê¤ß¶Ì¤òÄϤࡣ
~¡¡¤¿¶¤êÊ֤äÆK'>J'¤È¿Ê¤ó¤Ç¥´¡¼¥ë¤Ë¶Ì¤òÆþ¤ì¤ë¡£
~¡¡¥¸åÂष¤Ê¤¬¤é¸þ¤¤òÊѤ¨¡¢M'>B'>X'>X>B>C>I¤È¿Ê¤ó¤ÇÍÆ´ï¤ÎÃæ¤Î¶Ì¤òÄϤࡣ
~¡¡¦¿¶¤êÊ֤äÆC>B>X>X'>B'>C'>I'¤È¿Ê¤ó¤Ç¥´¡¼¥ë¤Ë¶Ì¤òÆþ¤ì¤Æ½ªÎ»¡£
*¥í¥Ü¥Ã¥È [#c1065932]
**¥¢¡¼¥à [#g5ca7f05]
Åö½éºî¤Ã¤¿¥¢¡¼¥à¡Ê²¼¿Þº¸¡Ë¤Ç¤ÏÍÆ´ï¤ÎÃæ¤Î¶Ì¤òÄϤá¤Ê¤«¤Ã¤¿¤¿¤á¡¢²¼¿Þ±¦¤Î¤è¤¦¤Ê·Á¾õ¤Ë²þÎɤ·¤¿¡£
#ref(Arm1.png)
¤³¤ÎºÝ¡¢¥¢¡¼¥à¤¬³«¤¤¹¤®¤Ê¤¤¤è¤¦¤Ë¥¹¥È¥Ã¥Ñ¡¼¤ò¤Ä¤±¤¿¡Ê²¼¿ÞÀִݤǰϤä¿Éôʬ¡Ë¡£
#ref(stopper.png)
¤Þ¤¿¡¢±ü¹Ô¤¤âÄɲä·¤ÆÆó¤ÄƱ»þ¤ËÄϤá¤ë¤è¤¦¤Ë¤·¤¿¡£¤³¤ì¤Ë¤è¤Ã¤Æ°ÜÆ°µ÷Î¥¤È»þ´Ö¡¢¥×¥í¥°¥é¥à¤¬Ã»½Ì¤µ¤ì¤¿¡£
~¥¢¡¼¥à¤Î°ìÈÖ²¼¤ÎÉôʬ¤¬°ìÉô·Ò¤¬¤Ã¤Æ¤¤¤Ê¤¤¤Î¤Ï¡¢ÃúÅÙ¤¤¤¤Ä¹¤µ¤ÎËÀ¤¬¤Ê¤«¤Ã¤¿¤«¤é¤Ç¤¢¤ë¡£Æä˰ÕÌ£¤Ï¤Ê¤¤¡£
**¸÷¥»¥ó¥µ¡¼ [#tccfb710]
¹õÀþ¤ÎÉý¤Ë¹ç¤¦¤è¤¦¤ËÄ´Àᤷ¤Æ¼è¤êÉÕ¤±¤¿¡£
#ref(DSC_0120.JPG)
**Á´ÂÎ [#vbe0b3cb]
#ref(DSC_0118.JPG)
²£¤«¤é¸«¤ë¤È¤³¤Î¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤ë¡£¥¢¡¼¥à¤¬½Å¤¤¤Î¤Ç¡¢ËÜÂΤò¸å¤í¤ËÇÛÃÖ¤·¤Æ¥Ð¥é¥ó¥¹¤ò¤È¤Ã¤¿¡£
~Àµ³ÎÀ¤òÁý¤¹¤¿¤á¡¢¥»¥ó¥µ¡¼¤Ï¥¿¥¤¥ä¤Ë¤Ç¤¤ë¤À¤±¶á¤Å¤±¤¿¡£
----
#ref(DSC_0128.JPG)
¥³¡¼¥É¤ÏËÜÂΤδ֤ˤޤȤá¤ÆÄ̤·¤Æ¸«±É¤¨¤òÎɤ¯¤·¤¿¡£
*¥×¥í¥°¥é¥à [#n0aab105]
**¥Þ¥¹¥¿¡¼Â¦ [#a1cd1a54]
¥Þ¥¹¥¿¡¼Â¦¤¬°ÜÆ°¤È¥»¥ó¥µ¡¼¤òôÅö¤¹¤ë¡£
#define KOSATEN 37 //¹õ¤«¤É¤¦¤«¤Î¶³¦
#define completed 15 //¥¹¥ì¡¼¥Ö¦¤ËÆ°ºî¤Î½ªÎ»¤òÅÁ¤¨¤ë
#define turn_left OnRev(OUT_A,70);OnFwd(OUT_B,70); //º¸ÀÞ
#define go_left OnRev(OUT_A,85);Off(OUT_B); //¿Ê¤ß¤Ä¤Äº¸¤Ë¶Ê¤¬¤ë
#define go_straight OnRev(OUT_AB,70); //ľ¿Ê
#define go_right OnRev(OUT_B,85);Off(OUT_A); //¿Ê¤ß¤Ä¤Ä±¦¤Ë¶Ê¤¬¤ë
#define turn_right OnRev(OUT_B,100);OnFwd(OUT_A,100); //±¦ÀÞ
#define short_break Off(OUT_AB);Wait(1000); //¾®µÙ»ß
#define brake Off(OUT_AB) //Ää»ß
sub follow_line() //Ä̾ï¤Î¥é¥¤¥ó¥È¥ì¡¼¥¹
{
while((SENSOR_1>KOSATEN)||(SENSOR_2>KOSATEN)){
int d=SENSOR_1-SENSOR_2;
if (d<-6){
turn_right;
}else if (d<-3){
go_right;
}else if (d<=3){
go_straight;
}else if (d<=6){
go_left;
}else {
turn_left;
}
}
PlaySound(SOUND_CLICK);
brake;Wait(200);
}
ξÊý¤Î¥»¥ó¥µ¡¼¤¬£³£·°Ê¾å¤Î»þ¡¢if°Ê²¼¤ÎÆ°ºî¤ò¤¹¤ë¡£º£²ó¤Ïº¸±¦¤Î¿ôÃͤκ¹¤ÇȽÃǤ¹¤ë¤è¤¦¤Ë¤·¤¿¡£
~ξÊý¤Î¿ôÃͤ¬£³£·°Ê²¼¤Ç¸òº¹ÅÀ¤ÈȽÃǤ·¡¢Ää»ß¤¹¤ë¡£Ää»ß¤¹¤ë¤È¤¤Ë²»¤¬ÌĤë¤è¤¦¤Ë¤·¤¿¡£
~¤³¤ì¤Ë¤è¤Ã¤Æ¸òº¹ÅÀ¤ò¤Á¤ã¤ó¤ÈȽÃǤ·¤Æ¤¤¤ë¤«¤É¤¦¤«¡¢¤¢¤ë¤¤¤Ï°ã¤¦¤È¤³¤í¤Ç¸òº¹ÅÀ¤ÈȽÃǤ·¤Æ¤¤¤Ê¤¤¤«¤¬¤ï¤«¤ê¤ä¤¹¤¯¤Ê¤ë¡£
sub follow_line2(int followtime) //¥¿¥¤¥Þ¡¼¤ò»È¤¦¥é¥¤¥ó¥È¥ì¡¼¥¹
{
long t0=CurrentTick();
while(CurrentTick()-t0<followtime){
int d=SENSOR_1-SENSOR_2;
if (d<-6){
turn_right;
}else if (d<-3){
go_right;
}else if (d<=3){
go_straight;
}else if (d<=6){
go_left;
}else {
turn_left;
}
}
PlaySound(SOUND_CLICK);
brake;Wait(200);
}
´ðËÜŪ¤Ë¤ÏÄ̾ï¤ÈƱ¤¸¡£K>L¤Ë¿Ê¤à¤È¤¤Ê¤É¡¢µ÷Î¥¤òÄ´À᤹¤ëɬÍפ¬¤¢¤ë½ê¤Ç»È¤¦¡£
sub chokusinL() //ľ¿Êº¸
{
go_left;Wait(500);
}
sub chokusinR() //ľ¿Ê±¦
{
go_right;Wait(500);
}
sub sasetsu() //º¸ÀÞ
{
turn_left;Wait(500);
go_left;Wait(500);
}
sub usetsu(int migi) //±¦ÀÞ
{
turn_right;Wait(500);
go_right;Wait(migi);
}
sub turn_behind() //¿¶¤ê¸þ¤¯
{
turn_left;Wait(1000);
while(SENSOR_1>KOSATEN){
turn_left;
}
Off(OUT_BC);
}
sub backleft() //¸åÂष±¦¤ò¸þ¤¯
{
OnFwd(OUT_A,100);Off(OUT_B);Wait(1500);
turn_right;Wait(600);
Off(OUT_AB);
}
sub backright() //¸åÂषº¸¤ò¸þ¤¯
{
OnFwd(OUT_B,100);Off(OUT_A);Wait(1400);
turn_left;Wait(500);
Off(OUT_AB);
}
sub ball_catch() //¶Ì¤òÄϤà
{
int msg;
SendRemoteNumber(1,MAILBOX1,12);
while(msg==completed){
ReceiveRemoteNumber(MAILBOX1,true,msg);
}
}
sub ball_release() //¶Ì¤òÊü¤¹
{
int msg;
SendRemoteNumber(1,MAILBOX1,11);
while(msg==completed){
ReceiveRemoteNumber(MAILBOX1,true,msg);
}
}
sub arm_up() //¥¢¡¼¥à¤ò¾å¤²¤ë
{
int msg;
SendRemoteNumber(1,MAILBOX1,13);
while(msg==completed){
ReceiveRemoteNumber(MAILBOX1,true,msg);
}
}
sub arm_down() //¥¢¡¼¥à¤ò²¼¤²¤ë
{
int msg;
SendRemoteNumber(1,MAILBOX1,14);
while(msg==completed){
ReceiveRemoteNumber(MAILBOX1,true,msg);
}
}
sub up_catch() //¥¢¡¼¥à¤ò¾å¤²¤Ê¤¬¤éÊĤ¸¤ë
{
int msg;
SendRemoteNumber(1,MAILBOX1,16);
while(msg==completed){
ReceiveRemoteNumber(MAILBOX1,true,msg);
}
}
sub down_release() //¥¢¡¼¥à¤ò²¼¤²¤Ê¤¬¤é³«¤¯
{
int msg;
SendRemoteNumber(1,MAILBOX1,17);
while(msg==completed){
ReceiveRemoteNumber(MAILBOX1,true,msg);
}
}
task main()
{
SetSensorLight(S1);//±¦¥«¥é¡¼¥»¥ó¥µ¡¼
SetSensorLight(S2);//º¸¥«¥é¡¼¥»¥ó¥µ¡¼
arm_up();
short_break;
ball_release();
go_straight;Wait(2000);
follow_line(); //M
chokusinR(); //K
follow_line2(1500);
short_break; //L
arm_down();
short_break;
ball_catch(); //¥Ü¡¼¥ë¥¥ã¥Ã¥Á
short_break;
arm_up();
short_break;
turn_behind();
follow_line();
chokusinL(); //K
follow_line();
usetsu(500); //M
follow_line();
sasetsu();
follow_line();
chokusinL(); //B
follow_line();
usetsu(500); //X
follow_line();
sasetsu(); //X'
follow_line();
chokusinR(); //B'
follow_line();
sasetsu(); //M'
follow_line();
sasetsu(); //K'
follow_line2(1000);
short_break; //J'
ball_release(); //¥ê¥ê¡¼¥¹
short_break;
backleft(); //K'
follow_line2(3700);
short_break; //L'
arm_down();
short_break;
ball_catch(); //¥Ü¡¼¥ë¥¥ã¥Ã¥Á
short_break;
arm_up();
short_break;
turn_behind();
OnFwd(OUT_AB,30);Wait(100);
follow_line();
usetsu(500); //K'
follow_line2(500);
short_break; //J'
ball_release(); //¥ê¥ê¡¼¥¹
short_break;
backright();
follow_line();
chokusinL();
follow_line();
usetsu(500); //M'
follow_line();
chokusinL(); //B'
follow_line();
usetsu(500); //X'
follow_line();
sasetsu(); //X
follow_line();
sasetsu(); //B
follow_line();
usetsu(400); //C
follow_line2(1650);
short_break; //I
arm_down();
short_break;
ball_catch(); //¥Ü¡¼¥ë¥¥ã¥Ã¥Á
short_break;
up_catch();
short_break;
backleft(); //C
follow_line();
usetsu(500); //B
follow_line();
usetsu(500); //X
follow_line();
sasetsu(); //X'
follow_line();
sasetsu(); //B'
follow_line();
usetsu(700);
follow_line2(900);
short_break; //J'
down_release(); //¥ê¥ê¡¼¥¹
short_break;
arm_up();
short_break;
backright(); //K'
} //½ªÎ»
**¥¹¥ì¡¼¥Ö¦ [#jc329156]
¥¹¥ì¡¼¥Ö¦¤¬¥¢¡¼¥à¤Î¾å²¼¤ÈÄϤߤòôÅö¤¹¤ë¡£
#define ball_release 11
#define ball_catch 12
#define arm_up 13
#define arm_down 14
#define completed 15
#define up_catch 16
#define down_release 17
task main()
{
int msg;
while(true){
ReceiveRemoteNumber(MAILBOX1,true,msg);
if(msg==ball_release){
OnFwd(OUT_A,50);Wait(500);Off(OUT_A);Wait(500); //¶Ì¤òÊü¤¹
SendResponseNumber(MAILBOX1,completed);
}
if(msg==ball_catch){
OnRev(OUT_A,50);Wait(600);Off(OUT_A);Wait(500); //¶Ì¤òÄϤà
SendResponseNumber(MAILBOX1,completed);
}
if(msg==arm_up){
OnFwd(OUT_B,50);Wait(600); OnFwd(OUT_B,5);Wait(500); //¥¢¡¼¥à¤ò¾å¤²¤ë
SendResponseNumber(MAILBOX1,completed);
}
if(msg==arm_down){
OnRev(OUT_B,30);Wait(600); OnFwd(OUT_B,5);Wait(500); //¥¢¡¼¥à¤ò²¼¤²¤ë
SendResponseNumber(MAILBOX1,completed);
}
if(msg==up_catch){
OnFwd(OUT_B,40);OnRev(OUT_A,15);Wait(300); //ÄϤߤʤ¬¤é»ý¤Á¾å¤²¤ë
SendResponseNumber(MAILBOX1,completed);
}
if(msg==down_release){
OnRev(OUT_B,10);OnFwd(OUT_A,20);Wait(150); //²¼¤í¤·¤Ê¤¬¤éÊü¤¹
SendResponseNumber(MAILBOX1,completed);
}
Wait(100);
msg=0;
}
} //½ªÎ»
*¤Þ¤È¤á¤È´¶ÁÛ [#s5ba3fd0]
ÆäËDZ¤Ã¤¿¥¢¥¤¥Ç¥¢¤â¤Ê¤¯ÃÏÌ£¤Ê¤â¤Î¤Ë¤Ê¤Ã¤¿¤È»×¤Ã¤¿¤¬¡¢·ë²ÌŪ¤Ë¤Ï¤½¤ì¤¬¸ù¤òÁÕ¤·¡¢Îɤ¤·ë²Ì¤ò½Ð¤¹¤³¤È¤¬¤Ç¤¤¿¡£»°¿Í¥°¥ë¡¼¥×¤À¤Ã¤¿¤¿¤á¿Í¿ôŪ¤ËÉÔÍø¤À¤È»×¤Ã¤¿¤¬¡¢¤¦¤Þ¤¯ºî¶È¤òʬô¤·¤Æ´°À®¤µ¤»¤é¤ì¤¿¡£ÍÆ´ï¤ÎÃæ¤Î¶Ì¤òÄϤà½ê¤ÎÄ´À°¤¬°ìÈÖÆñ¤·¤¯¡¢ËÜÈ֤Ǥϱ¿¼¡Âè¤È¤¤¤Ã¤¿·Á¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤Ã¤¿¡£¤³¤³¤À¤±¤Ï²ù¤·¤µ¤¬»Ä¤ë¡£¤¿¤À¡¢¤½¤ÎÁ°¤ÎÆó¤Ä¤Ï¤Û¤Ü´°àú¤Ë»Å¾å¤²¤ë¤³¤È¤¬¤Ç¤¤¿¤Î¤ÇÎɤ«¤Ã¤¿¡£»þ´Ö¤ò¤«¤±¤¿¹ÃÈ夬¤¢¤Ã¤¿¡£
¥Ú¡¼¥¸Ì¾: