メモ:上からメガネ1〜4




*作業用。 [#vdd4b121]

どちらのプログラムかわかるように印とかつけとくことー



どちらのプログラムかわかるように印とかつけとく
#br
#br
#br
いちおう打ってみました。
鉛筆を車体の中央に持ってくることは可能でしょうか?

すごいことにちょっと気づいてしまったのですが……
円の方がうまくいきそうです。。。
#br
定義がきちんとできているのかとかがとても心配です。正直なところ。

 #define TURN_T 54 //time for faceturn
 #define turn_l OnRev(OUT_A);OnFwd(OUT_C);Wait(81);Off(OUT_A+OUT_C); //turn
 #defrine turn_r OnFwd(OUT_A);OnRev(OUT_C);Wait(108);Off(OUT_A+OUT_C);

     
 sub hair()
 {
    OnFwd(OUT_A+OUT_C);
    Wait(35);
    Off(OUT_A+OUT_C);
    OnRev(OUT_A);OnFwd(OUT_C);
    Wait(108);
    Off(OUT_A+OUT_C);
    OnFwd(OUT_A+OUT_C);
    Wait(35);
    Off(OUT_A+OUT_C);
 }


 sub turn() //sub for turn
 {
    OnRev(OUT_A); OnFwd(OUT_C);
    Wait(TURN_T);
    Off(OUT_A+OUT_C);
 }

 sub go() //sub for face
 {
     OnFwd(OUT_A+OUT_C);
     Wait(30);
     Off(OUT_A+OUT_C);
 }

 task main()
 {
     OnFwd(OUT_A+OUT_C); Wait(10); Off(OUT_A+OUT_C); //eye
     turn_l;
     //for face start
     go();
     turn();
     go();
     turn();
     go();
     turn();  // faceline end
     turn_l;
     OnFwd(OUT_A+OUT_C); Wait(10); Off(OUT_A+OUT_C); //eye go
     OnRev(OUT_A+OUT_C); Wait(10); Off(OUT_A+OUT_C); //eye back
     OnFwd(OUT_A); OnRev(OUT_C); Wait(54); Off(OUT_A+OUT_C); //turn
     OnFwd(OUT_A+OUT_C);Wait(5);Off(OUT_A+OUT_C); //forehead
     hair();
     turn_r;
     hair();
     turn_r:
     hair();
     OnFwd(OUT_A); OnRev(OUT_C); Wait(54); Off(OUT_A+OUT_C); //turn
     OnFwd(OUT_A+OUT_C);Wait(5);Off(OUT_A+OUT_C); //forehead
     
 }



*タッチセンサのやつ
試作品。

 task main()
 {
    SetPower(OUT_A+OUT_C+OUT_B,1);
    SetSensor(SENSOR_1,SENSOR_TOUCH); 
    SetSensor(SENSOR_3,SENSOR_TOUCH); 

   while(true)
    
	    OnFwd(OUT_A+OUT_C);
	    if (SENSOR_1 == 1); 
			{
			Off(OUT_A+OUT_C);
			Wait(10);
			OnRev(OUT_A+OUT_C);
			Wait(5);
			Off(OUT_A+OUT_C);
			Wait(5)
			OnFwd(OUT_A);OnRev(OUT_C);
			Wait(10);
			Off(OUT_A+OUT_C);
			
			OnFwd(OUT_A+OUT_C);
			}

	    if (SENSOR_3 == 1);
			{
			Off(OUT_A+OUT_C);
			Wait(10);
			OnRev(OUT_A+OUT_C);
			Wait(5);
			Off(OUT_A+OUT_C);
			Wait(5);
			OnFwd(OUT_C);OnRev(OUT_A);
			Wait(10);
			Off(OUT_A+OUT_C);
			
			OnFwd(OUT_A+OUT_C);
			}
			
              if(SENSOR_1+SENSOR_3 == 1);
              		{
              		Off(OUT_A+OUT_C);
			Wait(10);
			OnRev(OUT_A+OUT_C);
			Wait(10);
			Off(OUT_A+OUT_C);
			Wait(5);
			OnFwd(OUT_A);OnRev(OUT_C);
			Wait(20);
			Off(OUT_A+OUT_C);
			
              		OnFwd(OUT_A+OUT_C);
              		}

 }








sub turn_left()
{OnFwd(OUT_C);OnRev(OUT_A);
Wait(1);
OnFwd(OUT_A);
}

sub turn_right()
{OnFwd(OUT_A);OnRev(OUT_C);
Wait(1);
OnFwd(OUT_C);
}

#define THRESHOLD 50 // Ëáíl 

task main()
{
SetPower(OUT_A,1);
SetPower(OUT_C,1);
SetSensor(SENSOR_1,SENSOR_LIGHT); 
SetSensor(SENSOR_2,SENSOR_TOUCH); 
SetSensor(SENSOR_3,SENSOR_LIGHT);

{if(SENSOR_2==1)
{Off(OUT_A+OUT_C);
Wait(50);
OnRev(OUT_A+OUT_C);
Wait(50);
Off(OUT_A+OUT_C);}
}
while (true){
if((SENSOR_1<=THRESHOLD) && (SENSOR_3<=THRESHOLD))
{OnFwd(OUT_A+OUT_C);
}
}

while(true){
if((SENSOR_3<=THRESHOLD) && (SENSOR_1>THRESHOLD))
{turn_left();
}
}

while(true){
if((SENSOR_1<=THRESHOLD) && (SENSOR_3>THRESHOLD))
{turn_right();
}
}

while(true){
if((SENSOR_1>THRESHOLD)&&(SENSOR_3>THRESHOLD))
{Off(OUT_A+OUT_C);Wait(1000);
}
}
}

[[2008b/A4/left]]


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS