[[2005/MemberOnly/進行状況B]]

 sub tukamu() {OnFwd(OUT_B);Wait(70);}
 sub oku() {OnRev(OUT_B);Wait(70);}
 #define run_time  900
 sub sasetu() {           
 OnFwd(OUT_A);OnRev(OUT_C);Wait(80);Off(OUT_A+OUT_C);}
 sub usetu() {  
 OnFwd(OUT_C);OnRev(OUT_A);Wait(80);Off(OUT_A+OUT_C);}
 task main()
 {   
   SetSensor(SENSOR_1,SENSOR_LIGHT); 
   SetSensor(SENSOR_2,SENSOR_LIGHT); 
   SetSensor(SENSOR_3,SENSOR_LIGHT);
	tukamu();	//	  
 the 1st	
	OnRev(OUT_A+OUT_C);Wait(50); 
	sasetu();           
	OnFwd(OUT_A+OUT_C);     
	Wait(500);
	usetu();           
	ClearTimer(0);        
	while(Timer(0) <= run_time)  
	{    
             if (SENSOR_1<40&& SENSOR_2>40) 
              {OnFwd(OUT_A);OnRev(OUT_C);} 
	     if(SENSOR_1>40&& SENSOR_2<40) 
	      {OnFwd(OUT_C);OnRev(OUT_A);} 
	     if(SENSOR_1<40&&SENSOR_2<40)  
	      {Off(OUT_A+OUT_C);}      
	     else {OnFwd(OUT_A+OUT_C);} 
	}
	ClearTimer(1);	   
	while(30<SENSOR_3<=40) 
	{  
             OnFwd(OUT_A+OUT_C);     
	     Wait(106);
	     usetu();           
	     OnFwd(OUT_A+OUT_C);    
	     Wait(106);Off(OUT_A+OUT_C); 
	}
	while(SENSOR_3>=40)       
	{  
             OnFwd(OUT_A+OUT_C);     
	     Wait(318);
	     usetu();           
	     OnFwd(OUT_A+OUT_C);     
	     Wait(106);Off(OUT_A+OUT_C); 
	}
        while(SENSOR_3<=30)        
	{    
             OnFwd(OUT_A+OUT_C);     
	     Wait(530);          
	     usetu();           
	     OnFwd(OUT_A+OUT_C);     
	     Wait(106);Off(OUT_A+OUT_C); 
	} 
	oku();              
        OnRev(OUT_A+OUT_C);       
	Wait(106);
	usetu();             
        while(318<Timer(1)<530)      
	{    
             OnFwd(OUT_A+OUT_C);    
	     Wait(106);Off(OUT_A+OUT_C); 
	}
	while(530<Timer(1)<742)      
	{    
             OnFwd(OUT_A+OUT_C);     
	     Wait(318);Off(OUT_A+OUT_C); 
	}
	while(742<Timer(1))        
	{    
             OnFwd(OUT_A+OUT_C);     
	     Wait(530);Off(OUT_A+OUT_C); 
	}
	ClearTimer(0);          
	while(Timer(0) <= run_time)     
	{    
             if (SENSOR_1<40&& SENSOR_2>40) 
	      {OnFwd(OUT_A);OnRev(OUT_C);} 
	     if(SENSOR_1>40&& SENSOR_2<40)  
	      {OnFwd(OUT_C);OnRev(OUT_A);}  
	     if(SENSOR_1<40&&SENSOR_2<40)   
	      {Off(OUT_A+OUT_C);}           
	     else {OnFwd(OUT_A+OUT_C);}     
	}
	usetu();       
	OnFwd(OUT_A+OUT_C); 
	until(SENSOR_1<40)  
	sasetu();      
	OnFwd(OUT_A+OUT_C); 
	Wait(106);
	sasetu();      
	OnFwd(OUT_A+OUT_C); 
	Wait(106);
	Off(OUT_A+OUT_C);
	tukamu();//						 the 3rd
	OnRev(OUT_A+OUT_C);Wait(50);
	sasetu();
	OnFwd(OUT_A+OUT_C);
	Wait(106);
	usetu();
	ClearTimer(0);
	while(Timer(0) <= run_time)  
	{    
             if (SENSOR_1<40&& SENSOR_2>40)
	      {OnFwd(OUT_A);OnRev(OUT_C);}
	     if(SENSOR_1>40&& SENSOR_2<40)
	      {OnFwd(OUT_C);OnRev(OUT_A);}
	     if(SENSOR_1<40&&SENSOR_2<40)
	      {Off(OUT_A+OUT_C);}
	     else {OnFwd(OUT_A+OUT_C);}
	}
	ClearTimer(1); 	
	 while(30<SENSOR_3<=40)
	 {     
                OnFwd(OUT_A+OUT_C);
	 	Wait(106);
	 	usetu();
	 	OnFwd(OUT_A+OUT_C);
	 	Wait(106);Off(OUT_A+OUT_C);
	 }
	 while(SENSOR_3>=40)
	 {	
                OnFwd(OUT_A+OUT_C);
	 	Wait(318);
	 	usetu();
	 	OnFwd(OUT_A+OUT_C);
                Wait(106);Off(OUT_A+OUT_C);
	 }
	 while(SENSOR_3<=30)
	 {	
                OnFwd(OUT_A+OUT_C);
	 	Wait(530);
	 	usetu();
	 	OnFwd(OUT_A+OUT_C);
	 	Wait(106);Off(OUT_A+OUT_C);
	 }
	 oku();
	 OnRev(OUT_A+OUT_C);
	 Wait(106);
	 usetu();
	 while(318<Timer(1)<530)
	 {      
                OnFwd(OUT_A+OUT_C);
	        Wait(106);Off(OUT_A+OUT_C);
	 }
	 while(530<Timer(1)<742)
	 {      
                OnFwd(OUT_A+OUT_C);
	        Wait(318);Off(OUT_A+OUT_C);
	 }
	 while(742<Timer(1))
	 {      
                OnFwd(OUT_A+OUT_C);
	        Wait(530);Off(OUT_A+OUT_C);
	 }
	 ClearTimer(0);
	 while(Timer(0) <= run_time)  
	 {      
                if (SENSOR_1<40&& SENSOR_2>40)
		 {OnFwd(OUT_A);OnRev(OUT_C);}
	        if(SENSOR_1>40&& SENSOR_2<40)
	         {OnFwd(OUT_C);OnRev(OUT_A);}
	        if(SENSOR_1<40&&SENSOR_2<40)
	         {Off(OUT_A+OUT_C);}
	       else {OnFwd(OUT_A+OUT_C);}
	 }
	 sasetu();
	 OnFwd(OUT_A+OUT_C);
	 Wait(212);
	 usetu();
	 OnFwd(OUT_A+OUT_C);
	 Wait(530);
	 usetu();
	 OnFwd(OUT_A+OUT_C);
	 Wait(36);
	 Off(OUT_A+OUT_C);
	 tukamu();//						 the 4th
	 OnRev(OUT_A+OUT_C);Wait(50);
	 usetu();
	 OnFwd(OUT_A+OUT_C);
	 Wait(530);
	 sasetu();
	 ClearTimer(0);
	 while(Timer(0) <= run_time)  
	 {
                if (SENSOR_1<40&& SENSOR_2>40)
		 {OnFwd(OUT_A);OnRev(OUT_C);}
	        if(SENSOR_1>40&& SENSOR_2<40)
	 	 {OnFwd(OUT_C);OnRev(OUT_A);}
	        if(SENSOR_1<40&&SENSOR_2<40)
	         {Off(OUT_A+OUT_C);}
                else {OnFwd(OUT_A+OUT_C);}
	 }
	 	 ClearTimer(1);
	 while(30<SENSOR_3<=40)
	 {      
                OnFwd(OUT_A+OUT_C);
	 	Wait(106);
	 	usetu();
	 	OnFwd(OUT_A+OUT_C);
	 	Wait(106);Off(OUT_A+OUT_C);
	 }
	 while(SENSOR_3>=40)
	 {	
                OnFwd(OUT_A+OUT_C);
	 	Wait(318);
	 	usetu();
	 	OnFwd(OUT_A+OUT_C);
	 	Wait(106);Off(OUT_A+OUT_C);
	 }
	 while(SENSOR_3<=30)
	 {	
                OnFwd(OUT_A+OUT_C);
	 	Wait(530);
	 	usetu();
	 	OnFwd(OUT_A+OUT_C);
	 	Wait(106);Off(OUT_A+OUT_C);
	 }
	 oku();
	 OnRev(OUT_A+OUT_C);
	 Wait(106);
	 usetu();
	 while(318<Timer(1)<530)
	 {      
                OnFwd(OUT_A+OUT_C);
	 	Wait(106);Off(OUT_A+OUT_C);
         }
	 while(530<Timer(1)<742)
	 {	
                OnFwd(OUT_A+OUT_C);
	 	Wait(318);Off(OUT_A+OUT_C);
	 }
	 while(742<Timer(1))
	 {	
                OnFwd(OUT_A+OUT_C);
	 	Wait(530);Off(OUT_A+OUT_C);
	 }
	 ClearTimer(0);
	 while(Timer(0) <= run_time)  
	 {	
                if (SENSOR_1<40&& SENSOR_2>40)
		 {OnFwd(OUT_A);OnRev(OUT_C);}
	 	if(SENSOR_1>40&& SENSOR_2<40)
	 	 {OnFwd(OUT_C);OnRev(OUT_A);}
	 	if(SENSOR_1<40&&SENSOR_2<40)
	 	 {Off(OUT_A+OUT_C);}
	 	else {OnFwd(OUT_A+OUT_C);}
	 }
	 sasetu();
	 OnFwd(OUT_A+OUT_C);
	 Wait(212);
	 usetu();
	 OnFwd(OUT_A+OUT_C);
	 Wait(106);
	 usetu();
	 OnFwd(OUT_A+OUT_C);
	 Wait(36);
	 Off(OUT_A+OUT_C);
	 tukamu();//						 the 6th
	 OnRev(OUT_A+OUT_C);Wait(50);
	 usetu();
	 OnFwd(OUT_A+OUT_C);
	 Wait(106);
	 sasetu();
	 ClearTimer(0);
	 while(Timer(0) <= run_time)  
	 {	
                if (SENSOR_1<40&& SENSOR_2>40)
	         {OnFwd(OUT_A);OnRev(OUT_C);}
	 	if(SENSOR_1>40&& SENSOR_2<40)        	        
                 {OnFwd(OUT_C);OnRev(OUT_A);}
	 	if(SENSOR_1<40&&SENSOR_2<40)
	 	 {Off(OUT_A+OUT_C);}
	 	else {OnFwd(OUT_A+OUT_C);}
	 }
	 ClearTimer(1);
	 while(30<SENSOR_3<=40)
	 {      
                OnFwd(OUT_A+OUT_C);
	 	Wait(106);
	 	usetu();
	 	OnFwd(OUT_A+OUT_C);
	 	Wait(106);Off(OUT_A+OUT_C);
	 }
	 while(SENSOR_3>=40)
	 {	
                OnFwd(OUT_A+OUT_C);
	 	Wait(318);
	 	usetu();
	 	OnFwd(OUT_A+OUT_C);
	 	Wait(106);Off(OUT_A+OUT_C);
	 }
	 while(SENSOR_3<=30)
	 {	
                OnFwd(OUT_A+OUT_C);
	 	Wait(530);
	 	usetu();
	 	OnFwd(OUT_A+OUT_C);
	 	Wait(106);Off(OUT_A+OUT_C);
	 }
	 oku();
	 }

*感想:: [#t5ba8845]
-これだけじゃさっぱりわかりません(’’; これが何を目的としたプログラムでどのように動作するのかもわかりません。ロボコンを通じてどのうようなことを考えて、どんなロボットを組み立てて、そしてどんな結果だったのか、何がだめだったか、どうすれば改善できるか、そういったことを人がみてわかるように書いてください。[[C5>2005/C5/ロボコン]]や[[C6>2005/C5/ロボコン]]を参考にするとよいでしょう。下手くそでもいいので面倒くさがらずにやってみてください。 -- [[まいける(TA)]] &new{2006-02-18 (土) 01:49:34};
-これだけじゃさっぱりわかりません(’’; これが何を目的としたプログラムでどのように動作するのかもわかりません。ロボコンを通じてどのうようなことを考えて、どんなロボットを組み立てて、そしてどんな結果だったのか、何がだめだったか、どうすれば改善できるか、そういったことを人がみてわかるように書いてください。[[C5>2005/C5/ロボコン]]や[[C6>2005/C6/ロボコン]]を参考にするとよいでしょう。下手くそでもいいので面倒くさがらずにやってみてください。 -- [[まいける(TA)]] &new{2006-02-18 (土) 01:49:34};

#comment

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS