Subversion Repositories svnkaklik

Rev

Rev 198 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log

Rev 198 Rev 200
Line 4... Line 4...
4
set_pwm1_duty(0);   // vzad
4
set_pwm1_duty(0);   // vzad
5
set_pwm2_duty(10);
5
set_pwm2_duty(10);
6
output_low(MOT_L);
6
output_low(MOT_L);
7
output_high(MOT_R);
7
output_high(MOT_R);
8
odocounter=get_timer1();    // Poznamenej aktualni stav odometrie
8
odocounter=get_timer1();    // Poznamenej aktualni stav odometrie
9
while(get_timer1()<odocounter+9); // Popojed definovanou vzdalenost
9
while(get_timer1()<(odocounter+10)); // Popojed definovanou vzdalenost
10
set_pwm1_duty(0);    // reverz (zabrzdi)
10
set_pwm1_duty(0);    // reverz (zabrzdi)
11
set_pwm2_duty(255);
11
set_pwm2_duty(255);
12
output_low(MOT_L);
12
output_low(MOT_L);
13
output_low(MOT_R);
13
output_low(MOT_R);
14
delay_ms(215);
14
delay_ms(215);
Line 18... Line 18...
18
set_pwm1_duty(160);  // vpred
18
set_pwm1_duty(160);  // vpred
19
set_pwm2_duty(160);
19
set_pwm2_duty(160);
20
output_low(MOT_L);
20
output_low(MOT_L);
21
output_low(MOT_R);
21
output_low(MOT_R);
22
odocounter=get_timer1();    // Poznamenej aktualni stav odometrie
22
odocounter=get_timer1();    // Poznamenej aktualni stav odometrie
23
while(get_timer1()<odocounter+10); // Popojed definovanou vzdalenost
23
while(get_timer1()<(odocounter+10)); // Popojed definovanou vzdalenost
24
set_pwm1_duty(0);    // reverz (zabrzdi)
24
set_pwm1_duty(0);    // reverz (zabrzdi)
25
set_pwm2_duty(0);
25
set_pwm2_duty(0);
26
output_high(MOT_L);
26
output_high(MOT_L);
27
output_high(MOT_R);
27
output_high(MOT_R);
28
delay_ms(250);
28
delay_ms(250);
Line 32... Line 32...
32
set_pwm1_duty(0);  // vpred
32
set_pwm1_duty(0);  // vpred
33
set_pwm2_duty(220);
33
set_pwm2_duty(220);
34
output_low(MOT_L);
34
output_low(MOT_L);
35
output_low(MOT_R);
35
output_low(MOT_R);
36
odocounter=get_timer1();    // Poznamenej aktualni stav odometrie
36
odocounter=get_timer1();    // Poznamenej aktualni stav odometrie
37
while(get_timer1()<odocounter+9); // Popojed definovanou vzdalenost
37
while(get_timer1()<(odocounter+7)); // Popojed definovanou vzdalenost
38
set_pwm1_duty(0);    // reverz (zabrzdi)
38
set_pwm1_duty(0);    // reverz (zabrzdi)
39
set_pwm2_duty(0);
39
set_pwm2_duty(0);
40
output_low(MOT_L);
40
output_low(MOT_L);
41
output_high(MOT_R);
41
output_high(MOT_R);
42
delay_ms(250);
42
delay_ms(250);
Line 46... Line 46...
46
set_pwm1_duty(160);  // vpred
46
set_pwm1_duty(160);  // vpred
47
set_pwm2_duty(160);
47
set_pwm2_duty(160);
48
output_low(MOT_L);
48
output_low(MOT_L);
49
output_low(MOT_R);
49
output_low(MOT_R);
50
odocounter=get_timer1();    // Poznamenej aktualni stav odometrie
50
odocounter=get_timer1();    // Poznamenej aktualni stav odometrie
51
while(get_timer1()<odocounter+10); // Popojed definovanou vzdalenost
51
while(get_timer1()<(odocounter+10)); // Popojed definovanou vzdalenost
52
set_pwm1_duty(0);    // reverz (zabrzdi)
52
set_pwm1_duty(0);    // reverz (zabrzdi)
53
set_pwm2_duty(0);
53
set_pwm2_duty(0);
54
output_high(MOT_L);
54
output_high(MOT_L);
55
output_high(MOT_R);
55
output_high(MOT_R);
56
delay_ms(250);
56
delay_ms(250);
Line 60... Line 60...
60
set_pwm1_duty(0);  // vpred
60
set_pwm1_duty(0);  // vpred
61
set_pwm2_duty(220);
61
set_pwm2_duty(220);
62
output_low(MOT_L);
62
output_low(MOT_L);
63
output_low(MOT_R);
63
output_low(MOT_R);
64
odocounter=get_timer1();    // Poznamenej aktualni stav odometrie
64
odocounter=get_timer1();    // Poznamenej aktualni stav odometrie
65
while(get_timer1()<odocounter+7); // Popojed definovanou vzdalenost
65
while(get_timer1()<(odocounter+7)); // Popojed definovanou vzdalenost
66
set_pwm1_duty(0);    // reverz (zabrzdi)
66
set_pwm1_duty(0);    // reverz (zabrzdi)
67
set_pwm2_duty(0);
67
set_pwm2_duty(0);
68
output_low(MOT_L);
68
output_low(MOT_L);
69
output_high(MOT_R);
69
output_high(MOT_R);
70
delay_ms(250);
70
delay_ms(250);
-
 
71
 
-
 
72
set_adc_channel(RMAX);    // A/D prevodnik na cteni praveho UV cidla
71
brzda();
73
brzda();
72
 
74
 
73
SetServo((CASAVR-CASMIN));   // rovne              S
75
SetServo((CASAVR-CASMIN));   // rovne              S
74
set_pwm1_duty(160);  // vpred
76
set_pwm1_duty(160);  // vpred
75
set_pwm2_duty(160);
77
set_pwm2_duty(160);
76
output_low(MOT_L);
78
output_low(MOT_L);
77
output_low(MOT_R);
79
output_low(MOT_R);
78
odocounter=get_timer1();    // Poznamenej aktualni stav odometrie
80
odocounter=get_timer1();    // Poznamenej aktualni stav odometrie
-
 
81
while(get_timer1()<(odocounter+9)) // Popojed definovanou vzdalenost
-
 
82
{
-
 
83
   if(read_adc()<128) break; // Neprejeli jsem caru?
-
 
84
}; 
-
 
85
odocounter=get_timer1();    // Poznamenej aktualni stav odometrie
79
while(get_timer1()<odocounter+10); // Popojed definovanou vzdalenost
86
while(get_timer1()<(odocounter+3)); // Popojed definovanou vzdalenost
80
set_pwm1_duty(0);    // reverz (zabrzdi)
87
set_pwm1_duty(0);    // reverz (zabrzdi)
81
set_pwm2_duty(0);
88
set_pwm2_duty(0);
82
output_high(MOT_L);
89
output_high(MOT_L);
83
output_high(MOT_R);
90
output_high(MOT_R);
84
delay_ms(250);
91
delay_ms(250);
85
brzda();
92
brzda();
86
 
93
 
87
// Abysme byli natoceni po smeru jizdy
-
 
88
SetServo(CASMAX);   // max. doprava                R
94
SetServo(CASMIN);   // max. doleva                 L
89
set_pwm1_duty(200);  // vpred
95
set_pwm1_duty(0);   // vzad
90
set_pwm2_duty(0);
96
set_pwm2_duty(10);
91
output_low(MOT_L);
97
output_low(MOT_L);
92
output_low(MOT_R);
98
output_high(MOT_R);
93
odocounter=get_timer1();    // Poznamenej aktualni stav odometrie
99
odocounter=get_timer1();    // Poznamenej aktualni stav odometrie
94
while(get_timer1()<odocounter+2); // Popojed definovanou vzdalenost
100
while(get_timer1()<(odocounter+10)) // Popojed definovanou vzdalenost
-
 
101
{
-
 
102
   if(read_adc()<128) break; // Neprejeli jsem caru?
-
 
103
};
-
 
104
set_pwm1_duty(0);    // reverz (zabrzdi)
-
 
105
set_pwm2_duty(255);
-
 
106
output_low(MOT_L);
-
 
107
output_low(MOT_R);
-
 
108
delay_ms(200);
-
 
109
brzda();
-
 
110
 
-
 
111
SetServo((CASAVR-CASMIN));   // rovne              S
-
 
112
set_pwm1_duty(255);  // vpred
-
 
113
set_pwm2_duty(255);
-
 
114
output_low(MOT_L);
-
 
115
output_low(MOT_R);
95
 
116
 
96
cas=CASMAX;    // Cara je vpravo
117
cas=CASMAX;    // Cara je vpravo
97
 
118
 
98
//!!!!!!!!!!!!!!!!!  stav=cihla;    // Stav po objeti cihly, uz zadna cihla nebude
119
//!!!!!!!!!!!!!!!!!  stav=cihla;    // Stav po objeti cihly, uz zadna cihla nebude