1,5 → 1,4 |
// **** Objeti cihly vpravo **** RRRR |
// Verze pouzita na Robot Challenge |
|
int8 n,i; |
int16 j; |
35,7 → 34,7 |
|
i=0; |
|
disp(2); |
disp(2); // Postupne doleva |
set_pwm1_duty(130); |
set_pwm2_duty(140); |
odocounter=get_timer1(); |
47,6 → 46,7 |
i+=8; |
}; |
|
/* |
disp(3); |
odocounter=get_timer1(); |
for(n=1;n<=7;n++) |
66,6 → 66,7 |
set_pwm1_duty(130-i); |
i+=8; |
}; |
*/ |
|
disp(5); |
odocounter=get_timer1(); |
95,10 → 96,10 |
{ |
set_adc_channel(LMAX); // Levy UV sensor |
delay_us(40); |
if(read_adc()<TRESHOLD) {delay_us(600); if(read_adc()<TRESHOLD) {cas=CASMIN; break;}; }; // Prejeli jsme caru vlevo |
if(read_adc()<THRESHOLD) {delay_us(600); if(read_adc()<THRESHOLD) {cas=CASMIN; break;}; }; // Prejeli jsme caru vlevo |
set_adc_channel(RMAX); // Pravy UV sensor |
delay_us(40); |
if(read_adc()<TRESHOLD) {delay_us(600); if(read_adc()<TRESHOLD) {cas=CASMAX; break;}; }; // Prejeli jsme caru vpravo |
if(read_adc()<THRESHOLD) {delay_us(600); if(read_adc()<THRESHOLD) {cas=CASMAX; break;}; }; // Prejeli jsme caru vpravo |
} |
|
|
108,7 → 109,7 |
for(j=0;j<10000;j++) |
{ |
if(input(HREF)) {SetServoQ(CASMIN); while(input(HREF));}; // doleva |
if (read_adc()<TRESHOLD) break; |
if (read_adc()<THRESHOLD) break; |
} |
} |
else |
117,7 → 118,7 |
for(j=0;j<10000;j++) |
{ |
if(input(HREF)) {SetServoQ(CASMAX); while(input(HREF));}; // doprava |
if (read_adc()<TRESHOLD) break; |
if (read_adc()<THRESHOLD) break; |
} |
} |
|
137,7 → 138,7 |
set_pwm2_duty(0); |
output_low(MOT_L); |
output_high(MOT_R); |
while (read_adc()>TRESHOLD); |
while (read_adc()>THRESHOLD); |
odocounter=get_timer1(); // Poznamenej aktualni stav odometrie |
while(get_timer1()<(odocounter+4)); // Popojed definovanou vzdalenost |
set_pwm1_duty(0); // reverz (zabrzdi) |
157,13 → 158,13 |
{ |
set_adc_channel(LMAX); // Levy UV sensor |
delay_us(40); |
if(read_adc()<TRESHOLD) {cas=CASMIN; break;}; // Prejeli jsme caru vlevo |
if(read_adc()<THRESHOLD) {cas=CASMIN; break;}; // Prejeli jsme caru vlevo |
set_adc_channel(RMAX); // Pravy UV sensor |
delay_us(40); |
if(read_adc()<TRESHOLD) {cas=CASMAX; break;}; // Prejeli jsme caru vpravo |
if(read_adc()<THRESHOLD) {cas=CASMAX; break;}; // Prejeli jsme caru vpravo |
cas=CASAVR-CASMIN; // Cara je rovne |
}; |
|
stav=cihla; // Stav po objeti cihly, uz zadna cihla asi nebude |
//stav=cihla; // Stav po objeti cihly, uz zadna cihla asi nebude |
//odocounter=get_timer1(); // Poznamenej aktualni stav odometrie |
//rr=60; // Nerozumna rychlost pro rozjeti |