Fire Fighting Robot1
-
Upload
sumit-pandit -
Category
Documents
-
view
215 -
download
0
Transcript of Fire Fighting Robot1
-
8/20/2019 Fire Fighting Robot1
1/61
143.472
Ta Mb:
Ja X 05119308
Wa Cb 05150469
Na B 05041554
Aaa Oa 05158494
X G 05075629
(25/5/2009)
-
8/20/2019 Fire Fighting Robot1
2/61
1. 1
2. 2
3. 3
3.1 Oa 3
3.2 Ta a 9
3.3 Ia a 10
4. 11
4.1 Ma 114.1.1 Haa 11
4.1.2 Sa 11
4.1.2.1 RTOS 12
4.1.2.2 C a 13
4.1.2.3 Fa a 14
4.1.2.4 R a 14
4.2 M 14
4.2.1 D a 144.2.2 T 15
4.2.3 Haa 16
4.2.4 Sa 17
4.3 P 18
4.3.1 D a 18
4.3.2 T 18
4.3.3 Haa 20
4.3.4 Sa 21
4.4 F 22
4.4.1 D a 22
4.4.2 T 23
4.4.2.1 C 24
4.4.3 Haa 26
4.4.3.1 S a 26
4.4.3.2 C 29
-
8/20/2019 Fire Fighting Robot1
3/61
4.4.4 Sa 30
4.4.4.1 P 30
4.4.4.2 T a 30
4.5 Fa 304.6 U ba 31
4.6.1 PCB Maa 32
4.7 Ca D 33
4.8 Ia 36
5. 38
6. 39
7. 40
: Ma 41
: F 50
: M 53
: P 55
-
8/20/2019 Fire Fighting Robot1
4/61
1
1.
T a a a a b
Ia S D a Ia a. T b aaa, a
ba a a a a a a (a ) a . T
a b a a a, a a a a a, b a b a ba a.
O a :
1. Ma
2. M
3. P
4. F
Ea aa aa a a , a
a .
I a, a . T, a
a a . S 4.8 b a .
A a a aa .
-
8/20/2019 Fire Fighting Robot1
5/61
2
2.
T a a b:
• I aaa
• I a a ba
• I a a a (a ) a a a
• T a b NZ$500 ($100 )
-
8/20/2019 Fire Fighting Robot1
6/61
3
3.
3.1
A a a aa b, ab :
• U 6 a , aab a a 360 a. A
, a a , a a,
a a a a a , a a aa
• U S DC
• U IR
T a a a a a a 3.1, a a b
b b a :
• , a a b
b
• , a a a a a ,
a a
• F , a a a a a ab
a a 360 a
• F , a ab a a
• C , a b a a a b
ab
F 3.1: Ma b
F
M
P
Ma
(C )
Fa a
-
8/20/2019 Fire Fighting Robot1
7/61
4
T a b a b aaa:
• W a a a aa a, a a a b b ab
a
• Ha a a aa a ba a a
a a b a , a
• Ba a ba , a b b
a
• Fa b a b a b
a . T a b a b a
• Ma a a a, a a a a.
B a a b a
A a a, a a ba a b. T
a a a a a b b a a
:
• A a . A a a a
a a aab
• T b a a. Ma b
, a a a , a a a a b
a. W a b a b b , a
, a a a b
a ( 4.2)
• Ra a , a a . T a a
b a a a a
W a a b, a
.
-
8/20/2019 Fire Fighting Robot1
8/61
5
F 3.2: M a
-
8/20/2019 Fire Fighting Robot1
9/61
6
F 3.3: M a
-
8/20/2019 Fire Fighting Robot1
10/61
7
F 3.4: C a
-
8/20/2019 Fire Fighting Robot1
11/61
8
F 3.5: Fa a
-
8/20/2019 Fire Fighting Robot1
12/61
9
T a a a b a, a a
a a a a .
T , a , a a b a a
a a a. T a, a a a
a a a a FSM, a 4.1 a A A.
N a a a, CCS C a ICD a a
a CCS a a a a b a.
3.2
T a a a a b . Ta a a a :
• M & Ca : Wa a X
• P : N
• F : Aaa
• Ma , aba a a : Ja
F 3.7: FSM a aa.
-
8/20/2019 Fire Fighting Robot1
13/61
10
3.3
Tab 3.1 a .
/
Pa SFH 309 PFA RS S N / 6548817 2 (10a) $0.90
Ra 5V S Sa Jaa Pa N / SY4092 1 $15.90
NAND Ga 74HC00 Ma Lab 3
H I 74HC04 Ma Lab 2
Da S GP2D120 RS S N / 4775691 3 $34.60
S GWS S03B 2BB Jaa Pa N / YM2760 2 $35.90
M PIC16F877A Jaa Pa N / ZZ8540 6 $17.90
D 1N4001 Ma Lab 8
H TI SN754410 DSE Pa N / Z6845 1 $4.98
Taa ab W D Jaa Pa N / YG2743 2 $35.90
Taa S Jaa Pa N / YG2862 1 $23.90
Caa 0.1 F a
100 F 16 V
Jaa Pa N / RC5360
Jaa Pa N / RE6130
3 (2a)
2
$0.43
$0.48
R 47 Ω
560 Ω
Ma Lab 4
6
Ba E 9V
E AA
DSE Pa N / S3215
DSE Pa N / S3287
2 (2a)
2 (4a)
$15.99
$9.99
: $455.59
Tab 3.1: Pa
-
8/20/2019 Fire Fighting Robot1
14/61
11
4.
4.1
A a a a a a aba a, a .
4.1.1
C , a ba a . Ba a ba a a
a b , a a a a, a a a
aa a , a a a a PIC . L
a a ba:
• Ma
• 10MH a
• PIC16F877A
• Pa S
W a 10MH a, a a a a
aa a b . T a a a a aa ,
a b ab a a b a b
b .
F 4.1.1 PIC, a a b
a a a ba.
4.1.2
T a a . T ba a a ab , a a ba a . T aa
FSM FIG 3.6 a 3.7, a a b aa b
F 4.1.1: C aa
-
8/20/2019 Fire Fighting Robot1
15/61
12
. A a b APPENDIX A,
aa b, a RTOS (Ra T Oa S).
4.1.2.1
Ra a (RTOS) b () a
aa, aa a a a. T a a b a a a,
a a b a a a
a . T a a b a. T
4.1.2 a a a a .
FIG 4.1.2 Ta RTOS Ia
H, a a b 10. T a aa b
PIC a 10 . O a a a b
(2 a). O RTOS a a
b a a. E 10, a ,
a a . I , a
. I a a a a ,
a ab aa, a a a , a
a a .
T a a b aaa b a RTOS. Aa b
b a b a. W a a RTOS a
a aa. F a, , aa (CA) b
b b a a a a. I a,
a ab RTOS b :
(CA)
W _CA a RTOS b a .
I , RTOS a b CSS a a ba,
, a .
-
8/20/2019 Fire Fighting Robot1
16/61
13
4.1.2.2
T a aa a:
• P
• Fa Ta
• M
Ea a a a RTOS . T
600. T a a a, a b a
, a b a a a . A
a a a , a HD
aa.
O , ab a a . T a ab
a . T ba a b :
F P:
• I a ba, a a a a ba
• I a b , ab Fa Ta (a aa
a), a . Fa a ab, ba a b a
ba , b b b a a aa.
• I a b , aa ab a a ( CA), a
• I a b , a a ab a a a
F Fa a, a a a RTOS a a
b a a. I a aa b a. T a
Fa Ta, a a ab aa a
b. T a a :
• I a , a ab CA, a a b
• I a , . CA RTOS b a, a a
a a b. N a ab CA
a a, a a a , a a
CA a a a.
• I a , a ab aa, a
a a a. W aa, a CA RTOS
a a a a ba, a a
• I a b, a ab CA, a a a
a
• I a a , a b,
a 10 , a 180 , a ab a aa a
a
-
8/20/2019 Fire Fighting Robot1
17/61
14
4.1.2.3
T b a b a a. I 3.6, a a
a a a a a . T a a
a aa .
F, a a aa, a a a a a
. T a b a a. T
a b a a a, a a a
ba a a a aa. T , a a
a a, b
a a . T a a b
a a , a a
b a a b a a a
aa.
A, .2.2, a a a RTOS ba a a b
a a ba. W , a b a a ba, a a
a a a , b b CA aa . T
b, a a CA , a b a a ba,
a a b a a ba .
4.1.2.4
A b a b b, a a a a
a 45 . T ba a a a b a
, a a, a b a a . T b, a a a. W a a
b CA, , a b a a
aa a , b a a 90
a a . F a, b a a ,
a a , a ba . O a , a
a a a , a a 90 . T
a b ( A E).
4.2
O a b ba. T
a a a , a a a aa a
. A PIC16F877A b M, b a a a
TI a a .
4.2.1
W a DC a bb .T a a DC aa a a
a, a a b a PWM ( a) a a
-
8/20/2019 Fire Fighting Robot1
18/61
15
ba . T a
a, a
a (ba a ). I a
a a a a a a . T a a
b a b a a;
ba a (1.5 )
a a. T a a a.
4.2.2
U , , aa , a a PWM a
a aba b a. W a
a a Hb . Hb a b aa a
baa a a DC . T a a
a, a a aaab a (IC) .
W Hb IC: a L293D, a b ST M; a
SN754410, b Ta I. B a Qa HaH a
ba a a a, , a DC a ba .
T IC a TTL a CMOS ab , a 600 A a
L293D a 1 A SN754410. T a a 4.5 36 V b
a (aa aa). W a aa
aa, a a 1 A a a ( a
a a a).
T Taa W Gab H.E. ( ) . T a
RE260 (3 V), a a b 216:1 a 336:1 a a a a a aa. T ab
F 4.2.1.
F 4.2.1: Taa W Gab M
-
8/20/2019 Fire Fighting Robot1
19/61
16
4.2.3
F 4.2.2 b a aa SN754410. Va 9 V
(V1) a 4.5 V (V2). T 3.8 V ()
(1, 2, 3, 4Y) a ba aa 0.7 V b a
aa. Ia a V1 a 5 V a (), b
a b a b a a
a a.
T SN754410 a a F 2. A a b , a
, a ab . T ab a , a b a
a a (ba). W ab 5 V ,
a a ba a a a a.
F 4.2.2: P aa SN754410 IC
A a a b PIC
a . W a b
a ESD (a a) , a a
a a ( ) L293D. T a a b a
1N4001 a a a
a, a a a ( a
) a a ba. A 470 μF ba aa a a a a
, a a a. F 3 a
.
-
8/20/2019 Fire Fighting Robot1
20/61
17
F 4.2.3: C
P RD03 a Hb, a RB13 a a
a ba. T ICD a MCLR, PGC, PGD, V a V; MCLR a a
5 V a 47 Ω , a a. A 4 MH a a a a
PIC.
4.2.4
T a a b :
1 2 3
0 0 0 S
0 1 0 L
1 1 0 R
0 0 1 Fa
1 0 1 Baa
-
8/20/2019 Fire Fighting Robot1
21/61
18
F a a , a RD03
a . A b
a , a a a a a b a.
F : XT (a/a
-
8/20/2019 Fire Fighting Robot1
22/61
19
G 4.3.1
A a ab a a a a a a a a
aa a aa ( ), a
b I a a (Tab 4.3.2, Ga 4.3.2).
A C() Va a 4 Va a 5
40 0 0
30 0 0
20 0.72 0.17
10 2.19 2.00
0 2.38 2.09
10 2.26 2.00
20 0.70 0.1130 0 0
40 0 0
4.3. 2
2 4 6 8 10 12 14 16 18 20 22
0
0.5
1
1.5
2
2.5
3
Volts per Distance
White(volts)
Red(volts)
Candle(volts)
Distance (cm)
V o l t a g e
( v o l t s )
-
8/20/2019 Fire Fighting Robot1
23/61
20
G 4.3.2
F ab aa a a a a a 10 0,
ba a a b a b,
.. a a.
4.3.3
W , a a a
a PIC , a a a a
aa a ba a PIC ( 16F877A) a
aa PIC ( aa a PIC). Ba
a aa a a, A/D PIC (AN0 AN7).
-50 -40 -30 -20 -10 0 10 20 30 40 50
0
0.5
1
1.5
2
2.5
Volts per Angle
Voltages at 4cm
Voltages at 5cm
Angle (degrees)
V o l t a g e s
( v o l t s )
-
8/20/2019 Fire Fighting Robot1
24/61
21
4.3.1:
W ab a a ba aa
a , ab .
4.3.4
T a :
0 1 2
0 0 0 N Ob
0 0 1 L M a L
0 1 0 R M a R
0 1 1 M M a L a R
T a a RB0 PIC
aa b a aa a b a , .. RB0
aa b , RB0 .
F I a a a ADC a aa
a a a , A D.
-
8/20/2019 Fire Fighting Robot1
25/61
22
4.4
T a (a ) a a
. T a a a
.
T a a a a a a
a (S 3.1). S a a a a
aba a a a. I a, b b a
a . I a, a b a a
b b a.
F a a a a, a a a a
a a a ba b a ba a. A a
, b a a a a b .
T Aa Da C (ADC) (PIC 16F877A)
a a. T ADC a a a a aa b
a . F PIC16F877A , a b a
a a a . T a a 16 .
T, a a a a a a a 100
.
4.4.1
W aa a a a
a a b. Oa a a a a b a
a a b. T a a
a. T a:
• Pa: L a a ba. I ,
a b a a. A a aaab RSO NZ.
• P : Sa IR b a
a. Ua b a b a a a
IR a a. S aaab RSO NZ.
• Haaa UVT a : S a a a UV
. Aa Rb a UVT a a a UVT .
F , a a a a a aaab a
a aa, a aaab aa. I a,
a a a a a . T a b aaa ba
a a a a a aa a.
A, a a a.
F a a, a a a a a a
a a aa a a a. W a a a a
-
8/20/2019 Fire Fighting Robot1
26/61
23
a a ba a a a a a a 600 1000 a .
A a aa a a a 360 b.
T a a a SFH 309 PFA aa b OSRAM O S. T
a a a a a a 880 a a a aa a
150 . I a a /a 6 , a b .
4.4.2
T a a a aab a
4.4.1. I a a a a.
W a a , a a a b a
a a. I aa b a, b
a a a a .
Da ()
O a (V) 10 15 20 25 30 35 40 45 50 55 60 65 70
R 470 0.37 0.37 0.35 0.33 0.31 0.28 0.19 0.12 0.07 0.04 0.03 0.01 0.01
(Ω) 220 4.78 4.76 4.74 4.68 4.63 4.37 3.97 3.36 3.01 2.48 2.12 1.66 1.48
560 4.88 4.88 4.85 4.83 4.82 4.70 4.44 3.60 3.00 2.90 2.43 2.10 1.90
Tab 4.4.1: E ab . T a a .
T ab a ab a. T b a
a a b a a a
. T ab a a a a a b a a a a
a , a a. W a a a a
aa a.
N, 560 .
T ab 3 a .
F 4.4.1 : C
a
.
-
8/20/2019 Fire Fighting Robot1
27/61
24
Da ()
O a (V) 10 15 20 25 30 35 40 45 50 55 60 65 70
L Da 4.88 4.88 4.85 4.83 4.82 4.70 4.44 3.60 3.00 2.90 2.43 2.10 1.90
L 4.88 4.87 4.86 4.84 4.82 4.80 4.54 4.38 4.07 3.99 3.86 3.90 3.88
Tab 4.4.2: O a a 560 Ω.
T a a a a a
. A a a , a aaa
a . Wa , a a
a a. T a
a a .
T , a a a a a a
a. H, a a
a b a . I a a a a a
a 560 a .
4.4.2.1 C .
T a a a a a, a
a a a a a .
F a, a , a a a
( F 4.4.2). T a a a ba
a . T a a
a aa. H, a a a
a a 150 . A b
a a a a ; a
a a 60 b 360
b.
T 4.4.3. T aa (a)
a . C a a ,
15 a 30 b . I a,
ab a a b b a b a. T aa (b)
a . A a, a 60 , a a a 360 .
F 4.4.2:
F
.
-
8/20/2019 Fire Fighting Robot1
28/61
25
T a a a 560 . T
a aa ab b.
Da ()
O a (V) 10 15 20 25 30 35 40 45 50 55 60 65 70
L Da 4.88 4.88 4.85 4.83 4.82 4.70 4.44 3.60 3.00 2.90 2.43 2.10 1.90
L 4.88 4.87 4.86 4.84 4.82 4.80 4.70 4.10 3.40 2.90 2.60 2.30 2.14
Tab 4.4.3: O a .
T ab 4.4.3 a a a . A b a ab 4.4.1, a a
a a a a a. A aa a,
a b a a a a a
a a ab a . W , a
a a aa a a .
A ()
O a (V) 0 10 20 30 40 50
Da () 40 4.84 4.83 4.82 4.82 2.1 1.9
50 4.82 4.79 4.45 4.72 1.8 1.860 4.82 4.8 4.1 3.6 1.7 1.7
Tab 4.4.4: Ra a ab
a.
Tab 4.4.4 a a a. T a aa
a b a a a 4.4.1 a. W
a aa a 40 a 50 , a a
30 a. W aa b a a 60,
a a a 3.6 30 aa a.
H a 30 a 40 b a a 30 a; a
60 . T a aa .
a b
F 4.4.3: C a . a) C . b) C
. N a ab a.
40˚60˚
5.9
3
3
3.7
-
8/20/2019 Fire Fighting Robot1
29/61
26
T ab ab a . T
a a a ab , a a b . A, a
a ab, a a a a
a . T a b
a aa a a a I b a , a a
aa b .
4.4.3
4.4.3.1 S a
A b , a a . T b
a .
F 4.4.4 a a b a . T
a a ba F 4.4.5.
2.6
2.6
13.7
4.2
F 4.4.4: T a b
4.2
2.6
2
2
F 4.4.5: C a a .
F 4.4.6: P
a.
-
8/20/2019 Fire Fighting Robot1
30/61
27
Ia a , b a
b. A ba a
aa a 4.4.6.
U , a a a a a a
a.
DaV
10 15 20 25 30 35 40 45 50 55 60 65
0 4.87 4.87 4.84 4.81 4.68 4.59 4.50 3.87 3.35 3.00 2.54 2.10
1 4.85 4.84 4.82 4.78 4.72 4.63 4.57 3.99 3.49 2.88 2.47 2.68
2 4.87 4.86 4.84 4.80 4.77 4.67 4.60 4.12 3.75 3.25 2.82 2.04
3 4.88 4.87 4.86 4.82 4.75 4.69 4.61 3.80 3.03 2.46 1.97 1.58
4 4.86 4.86 4.83 4.77 4.64 4.53 4.44 4.24 3.85 3.64 3.34 2.97
5 4.88 4.88 4.86 4.79 4.71 4.62 4.52 4.04 2.89 2.75 2.48 1.86Tab 4.4.5: R ab a
AV @
40 0 10 20 30 40
S 0 4.50 4.42 4.38 3.78 1.96
1 4.63 4.60 4.57 3.52 2.69
2 4.58 4.55 4.49 4.22 3.25
3 4.42 4.39 4.39 3.71 2.42
4 4.65 4.64 4.62 4.59 3.54
5 4.57 4.57 4.52 3.26 2.08
Tab 4.4.6: R a
a
F , a a a a a a
. T b a a . A a
ab, a a a aa a b a
a . A a , a b a a
a a.
S a a
a . A
b a aa. T a
a a aba. T a
a ba aba a a a
a. T a a 2 b 2
ba. T a aa b.
GNDV
V
F 4.4.7: C aa
a a.
2
2
-
8/20/2019 Fire Fighting Robot1
31/61
28
Ea a a a b 0 5 a
a b b. A
4.4.8, 0 a b, 1 a 2
a a ; 3 a 4 a a
a a 5 a b.
S a a a a a. T a a
a . W a a
a aa a a a .
1. O a a ba a
baba . T b b ba a b.
2. T a a b a a . T aa b b
a ba a.
Tab 4.4.7 a a a a 40
b (.. T 0 b a) .
T ab 0 a a
a 4. W aa a a
aa a, b a
a aa a a. U
aa a a a
a a.
T b a a aa
a 2.86 a 3.47. H a
a a a a a a b a a
b 0.8 V a aa a. A
a aa,
a b a
b a a.
A a a a , a a a a
a a a a. I a, b a
a, b a a a .
L Da
S V S V
0 4.74 0 4.52
1 2.67 1 2.34
2 1.87 2 0.68
3 1.96 3 0.23
4 1.34 4 1.25
5 1.57 5 0.76
Tab 4.4.7: R a
a 0aa a 40. Aa
a a 1.88V a 1.05V
a a
.
0
1
2
5
3
4
F 4.4.8: Nb a
-
8/20/2019 Fire Fighting Robot1
32/61
29
4.4.3.2 C PIC 16F877A
T a PIC16F877A a
a. A a a, b
aa a a a ba ba
. T, a b Aa
Da C ab . Ta , A 0, 1, 2, 3 a 5 a E 0. Ma a. I P B 0, 1, 2
a 3 .
T aa PIC 16F877A. N a 4MH a a a V a
5 .
A ab 4.4.8 a 4.4.9 a a ab .
S b 0 1 2 3 4 5
P/ A0 A1 A2 A3 A5 E0
Tab 4.4.8: I .
B0 B1 B2 B3
N 0 0 0 0
L 0 0 0 1
R 0 0 1 0
B 0 0 1 1
F 0 1 0 0
Fa 0 1 0 1Tab 4.4.9 : O Ma
F 4.4.10: P aa PIC 16F877A
-
8/20/2019 Fire Fighting Robot1
33/61
30
4.4.4
4.4.4.1 P
P a a .
1. Ia a .2. Ra a ADC
3. S b bbb . T a a a.
4. Caa aa a a b ( a
a). T aa a aa b
a aa a .
5. Ba aa a, a aa (VT = VE + 0.8V).
6. Ca a a a . T a
a a a a a a . T a,
b a a, a a a a . A, b
a aa, a b a a 3 a a
a a .7. O a a. R ab 4.4.9 a .
8. Ra 2.
T ab C. R a B aa .
4.4.4.2 T a
T a b a a LED .
F, ADC a a aa a a a. I a a a a ADC . T a a. W
a , ADC a a a aa a a. T a
a, a b aa 0.2 a aa a.
W ab b a , a b a aa a. T
a a a a b a a a
P B.
4.5
A , a / a a. T
ba
• I a . T aa , a a a
a b a b
• P . A b b a a, a a b
aa a a a
T ba a a 3 :
• 5V DC a
-
8/20/2019 Fire Fighting Robot1
34/61
31
• 9V ba a aa b
• H a a ba
T a a a ba a b , a a a a a
a . T b a a a 1A ,
a a PIC. A, a a , a PIC aab 20A .
F , a a aa 9V ba. T ba a a a a a
, a b ba ( 4.6) aa a b .
T 9V ba a a a a, a a
a a a a b.
T a a 4.5.1; a a
a a , a.
4.6
T ba PCB a a Ma. T ba a
a a b. A 4.6.1 , ba a :
• 9V ba
• 5V Va a (9V I, 1.2A Ma)
• 4.5V ba
• 9V a
• 5V a
• 4.5V a
• STDP (S T Db P) S
• G a
• Ba aa (0.1F)
• S aa (100F)
F 4.5.1: C aa a
-
8/20/2019 Fire Fighting Robot1
35/61
32
4.6.1
A b. W aa PCB a Ma PCB . T
ba A, a b , a b b
a ba.
U A, a a b a ba. I a ,
a b . T a ab , a b
a a a a. F 4.6.2 a ba
.
F 4.6.1: C ba
-
8/20/2019 Fire Fighting Robot1
36/61
33
T ba A, a a :
1. Sa b ba
2. Da a a A ba. F a a a, a
a Ma ba. S a a
aaa aa ba a a
3. Pa a
4. Da a b a. T a a
5. I , a ab a, a a a
6. E , a PCB
4.7
O a a b a a a a
aa a a aa ba. T :
• F ba ba
• Ba (2 9V + 3 AA)
• Gab/W
• P S
• Fa + M
• T a a
• O a a a LED ba b
T ba a Ta G PCB ba
a, a a.
F 4.6.2: D ba
-
8/20/2019 Fire Fighting Robot1
37/61
34
Lba Sa a a ,
a a aa a.
A aa a a a aa
Taa ab . T ab b
a . Rbb ba a Taa
aa, a a a
aba a.
F a a a a b baa, a a
a a . T a a a a a a
ba .
T aa a a a a, a a
a aba. T a a LED ba aa b a,
a a .
A ba a aba /a a a ab
a (aa 14.5 ).
Fa, ba a a, a a .
CAD M b a F 4.7.14.7.4:
F 4.7.1: F b
-
8/20/2019 Fire Fighting Robot1
38/61
35
F 4.7.2: Ra b
F 4.7.4: Rb aa
-
8/20/2019 Fire Fighting Robot1
39/61
36
F 4.7.4: Da
4.8
H b a.
1. M b a a .
2. P a 1.
3. U ba a 2
4. a a ab
5. Fa a ab
N a a a a a. A a
ab , ba b a a b b. P
a aa b aab a b. U ba a
b a a ba a b. Fa
a a (a) a a.
W a a b a . S b :
• T a b a a a ab a a a
ba. T ab a a a, a aa a a.
-
8/20/2019 Fire Fighting Robot1
40/61
37
• A 4.2.3, PIC a . T
a b a a b
.
T a a a a a a, a aa a .
• W a a , aaa a a, a
a a , a a,
• A a a, = 5, a a, bb ab a
a, 4.5 b 9
• Rb a a a a / ba
• A ba a b
• T a , a
T a b 4.8.1.
M a a b a CD a
a A E.
F 4.8.1: Fa b
-
8/20/2019 Fire Fighting Robot1
41/61
38
5.
W a a :
• B a b , a a (R a
a 500). T Rb a a, a a
a a a a a a 45
• B a , ab a 6 a a
, $40, a a a
$100. W a ab abb 3 b PIC b.
• T aa a a a a a . A
a PIC ba, a a aa b a a
PIC a a a b
.
-
8/20/2019 Fire Fighting Robot1
42/61
39
6.
I , aa a a a a
b a a a a a . T
a b . T b
a a b a ba b a b a .
T, a b a a a
ba. A, aa b ab b $400.
T , a a aa a a a
a . T a a aa a a NZ a
a a a b.
-
8/20/2019 Fire Fighting Robot1
43/61
40
C C S (CCS) I. (2006). D K IC C E :
IC16F877A.
E P . (2009). Aa Rb. R 1 A, 2009
://.aa./b/a/R14423.
M T I. (2001). IC 16F87 D.
OSRAM. (2005). (FH309 FA) D. Pb b OSRAM O
S GbH.
RS N Zaa. (..). R Ma 26 2009, ://aa.
./b/.
Sa Ca. (2006). G2D120 .
(2009). V b. R ://a./Rb%20Fa.
Sa IR Ra Ia. (2008). Aa Rb. R 18 Ma, 2009
://.aa./b//a/a/a.#8
UVT Fa . (2008). Aa Rb. R 1 A, 2009
://.aa./b/a/R66R2868.
-
8/20/2019 Fire Fighting Robot1
44/61
41
• C.
#
# a=8
#FUSES NOWDT //N Wa D T
#FUSES HS //H O (> 4)
#FUSES NOPROTECT //C a
#FUSES NOBROWNOUT //N b
#FUSES PUT //N P U T
#FUSES NOLVP //L Va Pa B3(PIC16) B5(PIC18)
# a(=10000000)
# (=0,_=10)
• Ma
# "C."
8 STATUS_PANEL_RED = 000;
8 STATUS_PANEL_YELLOW = 001;
8 STATUS_PANEL_GREEN = 002;
8 PROXIMITY_NO_OBJECT = 0;
8 PROXIMITY_LEFT = 2;
8 PROXIMITY_RIGHT = 1;
8 PROXIMITY_FRONT = 3;
8 FLAME_NONE = 0;
8 FLAME_LEFT = 1;
8 FLAME_RIGHT = 2;
8 FLAME_FRONT = 4;
8 FLAME_REAR = 3;
8 FLAME_NEAR = 5;
8 MOTOR_STOP = 0;
8 MOTOR_LEFT = 1;
8 MOTOR_RIGHT = 2;
8 MOTOR_FORWARD = 3;
8 RECURSIVE_MAX = 1;
-
8/20/2019 Fire Fighting Robot1
45/61
42
8 FAN_ON = 0;
8 FAN_OFF = 1;
aSa(8, 8);
aC(8);
A();
F();
R();
//ba a
8 aA = 0;
8 aB = 0;
8 C = 0;
8 C2 = 0;
8 M = 0;
8 aD = 0;
8 C = 0;
//RTOS P
#a(a=600, =2)
C();
#a(a=100)
_CA();
#a(a=150)
_FT();
R()
aSa(STATUS_PANEL_YELLOW, 009);
_ab(_CA);
//
_(PIN_C1);
_(PIN_C2);
_(PIN_C3);
a_(3000);
_ab(_CA);
aSa(STATUS_PANEL_YELLOW, 000);
F()
aSa(STATUS_PANEL_YELLOW, 001);
_ab(_CA);
-
8/20/2019 Fire Fighting Robot1
46/61
43
_ab(_FT);
aSa(STATUS_PANEL_YELLOW, 002);
//M = MOTOR_STOP;
_(PIN_C1);
_(PIN_C2);
_(PIN_C3);
aC(FAN_ON);
a_(10000);
aC(FAN_OFF);
//
_(PIN_C1);
_(PIN_C2);
_(PIN_C3);
a_(3000);
aSa(STATUS_PANEL_YELLOW, 000);
_ab(_CA);
_ab(_FT);
_FT()
//============Sa Fa Ta========aA = _a();
aA = aA & 00F;
//============E Fa Ta==========
(aA)
a FLAME_NONE:
aSa(STATUS_PANEL_RED, 000);
(C2 > 0)
C2;
_ab(_CA);
//M = MOTOR_FORWARD;
ba;
a FLAME_LEFT:
aSa(STATUS_PANEL_RED, 001);
_ab(_CA);
C2 = 10;
M = MOTOR_LEFT;ba;
-
8/20/2019 Fire Fighting Robot1
47/61
44
a FLAME_RIGHT:
aSa(STATUS_PANEL_RED, 002);
_ab(_CA);
C2 = 10;
M = MOTOR_RIGHT;
ba;
a FLAME_REAR:
aSa(STATUS_PANEL_RED, 004);
_ab(_CA);
C2 = 10;
M = MOTOR_LEFT;
ba;
a FLAME_FRONT:
aSa(STATUS_PANEL_RED, 008);
M = MOTOR_FORWARD;
C2 = 10;
_ab(_CA);
ba;
a FLAME_NEAR:
aSa(STATUS_PANEL_RED, 00C);
F();
ba;
a:aSa(STATUS_PANEL_RED, 000);
ba;
_CA()
//============Sa C D===
aB = _b();
((aB & 001) == 0)
a_(5);
aB = _b();
aB = aB & 007;
aB = aB >> 1;
//============E C D=====
(aB) a PROXIMITY_NO_OBJECT:
aSa(STATUS_PANEL_GREEN, 001);
-
8/20/2019 Fire Fighting Robot1
48/61
45
(C > 0)
C;
_ab(_FT);
M = MOTOR_FORWARD;
ba;
a PROXIMITY_LEFT:
aSa(STATUS_PANEL_GREEN, 002);
_ab(_FT);
C = 20;
M = MOTOR_RIGHT;
(aD == MOTOR_LEFT)
C++;
(C >= RECURSIVE_MAX)
R();
C = 0;
aD = MOTOR_RIGHT;
ba;
a PROXIMITY_RIGHT:
aSa(STATUS_PANEL_GREEN, 004);
_ab(_FT);
C = 20;
M = MOTOR_LEFT;
aD = MOTOR_LEFT;ba;
a PROXIMITY_FRONT:
aSa(STATUS_PANEL_GREEN, 006);
_ab(_FT);
C = 20;
M = MOTOR_RIGHT;
ba;
a:
aSa(STATUS_PANEL_GREEN, 000);
M = MOTOR_STOP;
ba;
A()
__a(01F);
__b(00F);__(000);
__(000);
-
8/20/2019 Fire Fighting Robot1
49/61
46
__(000);
_a(ADC_OFF);
_a_(NO_ANALOGS);
_(000);
_(000);
_(PIN_D1);
//S
_(PIN_C1);
_(PIN_C2);
_(PIN_C3);
_(PIN_D3);
a_(5000);
_(PIN_D3);
aC(8 )
( == FAN_ON)
_(PIN_D1);
_(PIN_D1);
aSa(8 a, 8 a)
8 b = 000;
8 [4];
(a)
a STATUS_PANEL_RED:
//R a a D2(E), D3, C4, C5
b = a & 00F;
[0] = b & 001;
[1] = b & 002;
[2] = b & 004;
[3] = b & 008;
([0] == 0)
_(PIN_D2);
_(PIN_D2);
([1] == 0)
_(PIN_D3);
_(PIN_D3);
([2] == 0)
-
8/20/2019 Fire Fighting Robot1
50/61
47
_(PIN_C4);
_(PIN_C4);
([3] == 0)
_(PIN_C5);
_(PIN_C5);
ba;
a STATUS_PANEL_YELLOW:
//Y a C6(T ), C7, D4
b = a & 00F;
[0] = b & 001;
[1] = b & 002;
[2] = b & 004;
([0] == 0)
_(PIN_C6);
_(PIN_C6);
([1] == 0)
_(PIN_C7);
_(PIN_C7);
([2] == 0)
_(PIN_D4);
_(PIN_D4);ba;
a STATUS_PANEL_GREEN:
//G a D5(T ), D6, D7
b = a & 00F;
[0] = b & 001;
[1] = b & 002;
[2] = b & 004;
([0] == 0)
_(PIN_D5);
_(PIN_D5);
([1] == 0)
_(PIN_D6);
_(PIN_D6);
([2] == 0)
_(PIN_D7);
_(PIN_D7);
ba;
-
8/20/2019 Fire Fighting Robot1
51/61
48
C()
8 = 0;
/*
(__() > 0)
= __a();
;
*/
= M;
()
a MOTOR_STOP:
_(PIN_C1);
_(PIN_C2);
_(PIN_C3);
ba;
a MOTOR_LEFT:
_(PIN_C1);
_(PIN_C2);
_(PIN_C3);ba;
a MOTOR_RIGHT:
_(PIN_C1);
_(PIN_C2);
_(PIN_C3);
ba;
a MOTOR_FORWARD:
_(PIN_C1);
_(PIN_C2);
_(PIN_C3);
ba;
a:
_(PIN_C1);
_(PIN_C2);
_(PIN_C3);
ba;
-
8/20/2019 Fire Fighting Robot1
52/61
49
a()
A();
_();
-
8/20/2019 Fire Fighting Robot1
53/61
50
#
#DEVICE ADC=10
# XT, NOLVP, NOWDT, NOPROTECT, NOBROWNOUT, PUT# a(=4000000)
# FLAME_NO_SRC 000
# FLAME_SRC_LEFT 001
# FLAME_SRC_RIGHT 002
# FLAME_SRC_REAR 003
# FLAME_SRC_FRONT 004
# FLAME_SRC_FAN 005
# THRESHOLD 163 //0.8# MIN_BASE 655 //3
# FAN_RANGE 820 //4
A();
aS();
16 Ba();
S(16 ba);
S(8 );
16 [6] = 0;16 S[6] = 0;
A()
SETUP_ADC(ADC_CLOCK_INTERNAL);
SETUP_ADC_PORTS(ALL_ANALOG);
__a(02F);
__b(000);
__(000);
__(000);__(007);
_b(000);
aS()
8 ;
(=0;
-
8/20/2019 Fire Fighting Robot1
54/61
51
16 Ba()
/*
bbbS( A : ab ) a:
a := a a 0 (A) 2 :
A[ ] > A[ + 1 ]
a( A[ ], A[ + 1 ] )
a :=
a
*/
8 a = 0; //0 a
8 ;16 ;
16 aa;
a = 0;
(=0; S[+1])
= S[];
S[] = S[+1];
S[+1] = ;
a = 1;
(a);
aa = S[0] + S[1] + S[2];
aa = (aa+1) / 3; //a b 0
aa;
S(16 ba)
8 , ;
(=6; >0; )
((S[1] > ba) && (S[1] > MIN_BASE))
(=0; = FAN_RANGE) && ( == 0))
S(6);
S();
;
-
8/20/2019 Fire Fighting Robot1
55/61
52
S(99);
S(8 )
/*# FLAME_NO_SRC 000
# FLAME_SRC_LEFT 001
# FLAME_SRC_RIGHT 002
# FLAME_SRC_REAR 003
# FLAME_SRC_FRONT 004
*/
()
a 0:
_b(FLAME_SRC_FRONT);
ba;a 1:
a 2:
_b(FLAME_SRC_LEFT);
ba;
a 3:
a 4:
_b(FLAME_SRC_RIGHT);
ba;
a 5:
_b(FLAME_SRC_REAR);
ba;a 6:
_b(FLAME_SRC_FAN);
ba;
a 99:
_b(FLAME_NO_SRC);
ba;
a()
16 ba;
A();
(1)
aS();
ba = Ba();
S(ba + THRESHOLD);
-
8/20/2019 Fire Fighting Robot1
56/61
53
#
# XT, NOLVP, NOWDT, NOPROTECT, NOBROWNOUT, PUT
# a(=4000000)
8 B3, B2, B1;
();
();
();
a();
baa();
()
_(PIN_D0);
_(PIN_D1);
_(PIN_D2);
_(PIN_D3);
()
_(PIN_D0);
_(PIN_D1);
_(PIN_D2);
_(PIN_D3);
()
_(PIN_D0);
_(PIN_D1);
_(PIN_D2);
_(PIN_D3);
a()
_(PIN_D0);
_(PIN_D1);
_(PIN_D2);
_(PIN_D3);
baa() _(PIN_D0);
_(PIN_D1);
-
8/20/2019 Fire Fighting Robot1
57/61
54
_(PIN_D2);
_(PIN_D3);
a()
__a(0); // S
__b(00E);
__(0);
__(0);
__(0);
_(PIN_D0);
_(PIN_D1);
_(PIN_D2);
_(PIN_D3);
(1)
B1=(PIN_B1);
B2=(PIN_B2);
B3=(PIN_B3);
(!B1 && !B2 && !B3)
();
(!B1 && B2 && !B3)
();
(B1 && B2 && !B3)
(); (!B1 && !B2 && B3)
a();
(B1 && !B2 && B3)
baa();
-
8/20/2019 Fire Fighting Robot1
58/61
55
N b a , a PIC a .
# BJECE
# BJECE
// IC
# LEFADCCHAEL
# LEFADCCHAEL IA2
#
// IC
# IGHADCCHAEL
# IGHADCCHAEL IA1
#
// IC
# IDADCCHAEL
# IDADCCHAEL IA3
#
// : I
// I:
// :
()
EADC(ADCCLCKIEAL);
EADC(ALLAALG);
// : ADC
// I:
// : ' ADC
# ("ADCELI") == 8
8 ()
#
16 ()
#
// ADC
EADCCHAEL(LEFADCCHAEL);
// A
(1);
//
EADADC();
// : ADC
// I: // : ' ADC
# ("ADCELI") == 8
-
8/20/2019 Fire Fighting Robot1
59/61
56
8 ()
#
16 ()
#
// ADC
EADCCHAEL(IGHADCCHAEL);
// A
(1); //
EADADC();
// : ADC
// I:
// : ' ADC
# ("ADCELI") == 8
8 ()
#
16 ()#
// ADC
EADCCHAEL(IDADCCHAEL);
// A
(1);
//
EADADC();
// : ADC // I: 1) A
// 2) A
// :
# ("ADCELI") == 8
(8& , 8& , 8& )
#
(16& , 16& , 16& )
#
// ADC
EADCCHAEL(LEFADCCHAEL); // A
(1);
//
= EADADC();
// ADC
EADCCHAEL(IGHADCCHAEL);
// A
(1);
//
= EADADC();
// ADC EADCCHAEL(IDADCCHAEL);
// A
-
8/20/2019 Fire Fighting Robot1
60/61
57
(1);
//
= EADADC();
#
T b a a:
#
// ADC
# DEEC 32
();
8 ();
8 ();
8 ();
8 ;
8 ;
8 ;
()
= = = 0;
()
//
(, , );
// = ;
//(10000);
(!() && !() && !()) // 00
L(IB0);
L(IB1);
L(IB2);
HIGH(IB0);
((() && !() && !()) (() && !() && ()))
// 01()
L(IB0);
L(IB1);
HIGH(IB2);
HIGH(IB0);
((!() && () && !()) (!() && () && ()))
// 10()
L(IB0);
HIGH(IB1);
L(IB2);
HIGH(IB0);
((!() && !() && ()) (() && () && !()) (() && () &&
())) // 11(ALL)
L(IB0);
-
8/20/2019 Fire Fighting Robot1
61/61
HIGH(IB1);
HIGH(IB2);
HIGH(IB0);
8 ()
// 0;
(