1 |
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
1 |
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
2 |
<html> |
2 |
<html> |
3 |
<head> |
3 |
<head> |
4 |
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
4 |
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
5 |
<title> IRFEE01A </title> |
5 |
<title> IRFEE01A </title> |
6 |
<meta name="keywords" content="stavebnice MLAB univerzální moduly infračervený detektor infrared tykadlo"> |
6 |
<meta name="keywords" content="stavebnice MLAB univerzální moduly infračervený detektor infrared tykadlo"> |
7 |
<meta name="description" content="Projekt MLAB, Infračervný detektor překážek pro robota"> |
7 |
<meta name="description" content="Projekt MLAB, Infračervný detektor překážek pro robota"> |
8 |
<!-- AUTOINCLUDE START "Page/Head.cs.ihtml" DO NOT REMOVE --> |
8 |
<!-- AUTOINCLUDE START "Page/Head.cs.ihtml" DO NOT REMOVE --> |
9 |
<link rel="StyleSheet" href="../../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB základní styl"> |
9 |
<link rel="StyleSheet" href="../../../../../Web/CSS/MLAB.css" type="text/css" title="MLAB základní styl"> |
10 |
<link rel="StyleSheet" href="../../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
10 |
<link rel="StyleSheet" href="../../../../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
11 |
<link rel="shortcut icon" type="image/x-icon" href="../../../../../Web/PIC/MLAB.ico"> |
11 |
<link rel="shortcut icon" type="image/x-icon" href="../../../../../Web/PIC/MLAB.ico"> |
12 |
<script type="text/javascript" src="../../../../../Web/JS/MLAB_Menu.js"></script> |
12 |
<script type="text/javascript" src="../../../../../Web/JS/MLAB_Menu.js"></script> |
13 |
<!-- AUTOINCLUDE END --> |
13 |
<!-- AUTOINCLUDE END --> |
14 |
</head> |
14 |
</head> |
15 |
|
15 |
|
16 |
<body lang="cs"> |
16 |
<body lang="cs"> |
17 |
|
17 |
|
18 |
<!-- AUTOINCLUDE START "Page/Header.cs.ihtml" DO NOT REMOVE --> |
18 |
<!-- AUTOINCLUDE START "Page/Header.cs.ihtml" DO NOT REMOVE --> |
19 |
<!-- ============== HLAVICKA ============== --> |
19 |
<!-- ============== HLAVICKA ============== --> |
20 |
<div class="Header"> |
20 |
<div class="Header"> |
21 |
<script type="text/javascript"> |
21 |
<script type="text/javascript"> |
22 |
<!-- |
22 |
<!-- |
23 |
SetRelativePath("../../../../../"); |
23 |
SetRelativePath("../../../../../"); |
24 |
DrawHeader(); |
24 |
DrawHeader(); |
25 |
// --> |
25 |
// --> |
26 |
</script> |
26 |
</script> |
27 |
<noscript> |
27 |
<noscript> |
28 |
<p><b> Pro zobrazení (vložení) hlavičky je potřeba JavaScript </b></p> |
28 |
<p><b> Pro zobrazení (vložení) hlavičky je potřeba JavaScript </b></p> |
29 |
</noscript> |
29 |
</noscript> |
30 |
</div> |
30 |
</div> |
31 |
<!-- AUTOINCLUDE END --> |
31 |
<!-- AUTOINCLUDE END --> |
32 |
|
32 |
|
33 |
<!-- AUTOINCLUDE START "Page/Menu.cs.ihtml" DO NOT REMOVE --> |
33 |
<!-- AUTOINCLUDE START "Page/Menu.cs.ihtml" DO NOT REMOVE --> |
34 |
<!-- ============== MENU ============== --> |
34 |
<!-- ============== MENU ============== --> |
35 |
<div class="Menu"> |
35 |
<div class="Menu"> |
36 |
<script type="text/javascript"> |
36 |
<script type="text/javascript"> |
37 |
<!-- |
37 |
<!-- |
38 |
SetRelativePath("../../../../../"); |
38 |
SetRelativePath("../../../../../"); |
39 |
DrawMenu(); |
39 |
DrawMenu(); |
40 |
// --> |
40 |
// --> |
41 |
</script> |
41 |
</script> |
42 |
<noscript> |
42 |
<noscript> |
43 |
<p><b> Pro zobrazení (vložení) menu je potřeba JavaScript </b></p> |
43 |
<p><b> Pro zobrazení (vložení) menu je potřeba JavaScript </b></p> |
44 |
</noscript> |
44 |
</noscript> |
45 |
</div> |
45 |
</div> |
46 |
<!-- AUTOINCLUDE END --> |
46 |
<!-- AUTOINCLUDE END --> |
47 |
|
47 |
|
48 |
<!-- ============== TEXT ============== --> |
48 |
<!-- ============== TEXT ============== --> |
49 |
<div class="Text"> |
49 |
<div class="Text"> |
50 |
<p class="Title"> |
50 |
<p class="Title"> |
51 |
Infračervené tykadlo pro robota |
51 |
Infračervené tykadlo pro robota |
52 |
</p> |
52 |
</p> |
53 |
<p class=Autor> |
53 |
<p class=Autor> |
54 |
Milan Horkel |
54 |
Milan Horkel |
55 |
</p> |
55 |
</p> |
56 |
<p class="Subtitle"> |
56 |
<p class="Subtitle"> |
57 |
Čidlo využívá modulované infračervené záření pro bezdotykovou detekci |
57 |
Čidlo využívá modulované infračervené záření pro bezdotykovou detekci |
58 |
předmětů. Je určeno zejména pro menší pohyblivé roboty jako náhrada |
58 |
předmětů. Je určeno zejména pro menší pohyblivé roboty jako náhrada |
59 |
mechanických tykadel. Jádrem čidla je procesor řady ATtiny a přijímač |
59 |
mechanických tykadel. Jádrem čidla je procesor řady ATtiny a přijímač |
60 |
Ir pro dálkové ovládání. Modulace a průměrování signálu zajišťuje |
60 |
Ir pro dálkové ovládání. Modulace a průměrování signálu zajišťuje |
61 |
zvýšenou odolnost proti rušení. |
61 |
zvýšenou odolnost proti rušení. |
62 |
</p> |
62 |
</p> |
63 |
<p class="Subtitle"> |
63 |
<p class="Subtitle"> |
64 |
<img width="327" height="105" src="IRFEE01A_Files/image001.jpg" |
64 |
<img width="327" height="105" src="IRFEE01A_Files/image001.jpg" |
65 |
alt="Pohled na čidlo zhora"> |
65 |
alt="Pohled na čidlo zhora"> |
66 |
</p> |
66 |
</p> |
67 |
<p class="Subtitle"> |
67 |
<p class="Subtitle"> |
68 |
<img width="328" height="162" src="IRFEE01A_Files/image002.jpg" |
68 |
<img width="328" height="162" src="IRFEE01A_Files/image002.jpg" |
69 |
alt="Pohled na čidlo ze strany"> |
69 |
alt="Pohled na čidlo ze strany"> |
70 |
</p> |
70 |
</p> |
71 |
<p> |
71 |
<p> |
72 |
<a href="../IRFEE01A.cs.pdf"><img class="NoBorder" |
72 |
<a href="../IRFEE01A.cs.pdf"><img class="NoBorder" |
73 |
src="../../../../../Web/PIC/FileIco_PDF.ico" |
73 |
src="../../../../../Web/PIC/FileIco_PDF.ico" |
74 |
alt="Acrobat"> PDF verze</a> |
74 |
alt="Acrobat"> PDF verze</a> |
75 |
</p> |
75 |
</p> |
76 |
|
76 |
|
77 |
<h1>Technické parametry </h1> |
77 |
<h1>Technické parametry </h1> |
78 |
|
78 |
|
79 |
<table> |
79 |
<table> |
80 |
<tr> |
80 |
<tr> |
81 |
<th> Parametr </th> |
81 |
<th> Parametr </th> |
82 |
<th> Hodnota </th> |
82 |
<th> Hodnota </th> |
83 |
<th> Poznámka </th> |
83 |
<th> Poznámka </th> |
84 |
</tr> |
84 |
</tr> |
85 |
<tr> |
85 |
<tr> |
86 |
<td> Napájení </td> |
86 |
<td> Napájení </td> |
87 |
<td> (2.7V ..) 3.6V .. 5V (.. 5.5V) </td> |
87 |
<td> (2.7V ..) 3.6V .. 5V (.. 5.5V) </td> |
88 |
<td> Zkontrolujte požadavky U1 a U2 </td> |
88 |
<td> Zkontrolujte požadavky U1 a U2 </td> |
89 |
</tr> |
89 |
</tr> |
90 |
<tr> |
90 |
<tr> |
91 |
<td> Spotřeba </td> |
91 |
<td> Spotřeba </td> |
92 |
<td> 10mA / 15mA </td> |
92 |
<td> 10mA / 15mA </td> |
93 |
<td> Při 5V v klidu a při detekci </td> |
93 |
<td> Při 5V v klidu a při detekci </td> |
94 |
</tr> |
94 |
</tr> |
95 |
<tr> |
95 |
<tr> |
96 |
<td> Nosný kmitočet </td> |
96 |
<td> Nosný kmitočet </td> |
97 |
<td> 38kHz </td> |
97 |
<td> 38kHz </td> |
98 |
<td> Obvyklé hodnoty: 30, 33, 36, 38, 40, 56kHz </td> |
98 |
<td> Obvyklé hodnoty: 30, 33, 36, 38, 40, 56kHz </td> |
99 |
</tr> |
99 |
</tr> |
100 |
<tr> |
100 |
<tr> |
101 |
<td> Dosah </td> |
101 |
<td> Dosah </td> |
102 |
<td> Cca 1m </td> |
102 |
<td> Cca 1m </td> |
103 |
<td> Bez stínítka proti listu papíru A4 </td> |
103 |
<td> Bez stínítka proti listu papíru A4 </td> |
104 |
</tr> |
104 |
</tr> |
105 |
<tr> |
105 |
<tr> |
106 |
<td> Rychlost odezvy </td> |
106 |
<td> Rychlost odezvy </td> |
107 |
<td> 20ms / 15ms </td> |
107 |
<td> 20ms / 15ms </td> |
108 |
<td> Aktivace a deaktivace </td> |
108 |
<td> Aktivace a deaktivace </td> |
109 |
</tr> |
109 |
</tr> |
110 |
<tr> |
110 |
<tr> |
111 |
<td> Rozměry </td> |
111 |
<td> Rozměry </td> |
112 |
<td> 35 x 15 x 15mm </td> |
112 |
<td> 35 x 15 x 15mm </td> |
113 |
<td> Bez stínítka </td> |
113 |
<td> Bez stínítka </td> |
114 |
</tr> |
114 |
</tr> |
115 |
</table> |
115 |
</table> |
116 |
|
116 |
|
117 |
<h1> Popis konstrukce </h1> |
117 |
<h1> Popis konstrukce </h1> |
118 |
|
118 |
|
119 |
<h2> Úvodem </h2> |
119 |
<h2> Úvodem </h2> |
120 |
|
120 |
|
121 |
<p> |
121 |
<p> |
122 |
Aby mohl robot detekovat překážku aniž do ní narazí, potřebuje vhodné |
122 |
Aby mohl robot detekovat překážku aniž do ní narazí, potřebuje vhodné |
123 |
čidlo. Tato konstrukce popisuje čidlo, které využívá odrazu |
123 |
čidlo. Tato konstrukce popisuje čidlo, které využívá odrazu |
124 |
infračerveného záření od překážky. |
124 |
infračerveného záření od překážky. |
125 |
</p> |
125 |
</p> |
126 |
|
126 |
|
127 |
<h2> Zapojení modulu </h2> |
127 |
<h2> Zapojení modulu </h2> |
128 |
|
128 |
|
129 |
<p> |
129 |
<p> |
130 |
Srdcem čidla je obvod U1, přijímač infračerveného signálu a procesor |
130 |
Srdcem čidla je obvod U1, přijímač infračerveného signálu a procesor |
131 |
ATtiny, který zajišťuje inteligenci čidla. |
131 |
ATtiny U2, který zajišťuje inteligenci čidla. |
132 |
</p> |
132 |
</p> |
133 |
|
133 |
|
134 |
<p> |
134 |
<p> |
135 |
<img width="588" height="396" src="IRFEE01A_Files/image003.png" |
135 |
<img width="588" height="396" src="IRFEE01A_Files/image003.png" |
136 |
alt="Schéma zapojení čidla"> |
136 |
alt="Schéma zapojení čidla"> |
137 |
</p> |
137 |
</p> |
138 |
|
138 |
|
139 |
<p> |
139 |
<p> |
140 |
Infračervená dioda D2 vysílá modulovaný signál směrem k překážce. |
140 |
Infračervená dioda D2 vysílá modulovaný signál směrem k překážce. |
141 |
Signál se od překážky odráží do přijímače U1. Procesor U2 generuje |
141 |
Signál se od překážky odráží do přijímače U1. Procesor U2 generuje |
142 |
vysílací signál pro diodu D2 a současně analyzuje přijímaný signál |
142 |
vysílací signál pro diodu D2 a současně analyzuje přijímaný signál |
143 |
z přijímače U1. Pokud se přijímaný signál <i>dostatečně</i> |
143 |
z přijímače U1. Pokud se přijímaný signál <i>dostatečně</i> |
144 |
shoduje s vysílaným signálem, je aktivován výstupní signál na |
144 |
shoduje s vysílaným signálem, je aktivován výstupní signál na |
145 |
výstupu J2 a rozsvítí se indikační dioda D3. |
145 |
výstupu J2 a rozsvítí se indikační dioda D3. |
146 |
</p> |
146 |
</p> |
147 |
|
147 |
|
148 |
<p> |
148 |
<p> |
149 |
R1 a C1 filtruje napájení pro přijímač infračerveného signálu U1, dioda |
149 |
R1 a C1 filtruje napájení pro přijímač infračerveného signálu U1, dioda |
150 |
D1 je ochranná proti nechtěnému přepólování čidla. Čidlo je vybaveno |
150 |
D1 je ochranná proti nechtěnému přepólování čidla. Čidlo je vybaveno |
151 |
jedním upevňovacím šroubem. |
151 |
jedním upevňovacím šroubem. |
152 |
</p> |
152 |
</p> |
153 |
|
153 |
|
154 |
<p> |
154 |
<p> |
155 |
Konektor J3 je standardní programovací konektor ATMEL ISP 6 PIN. Je |
155 |
Konektor J3 je standardní programovací konektor ATMEL ISP 6 PIN. Je |
156 |
zapojen obvyklým způsobem. Do procesoru se musí nahrát ovládací program |
156 |
zapojen obvyklým způsobem. Do procesoru se musí nahrát ovládací program |
157 |
přeložený pro příslušný nosný kmitočet použitého přijímače U1. Kmitočet |
157 |
přeložený pro příslušný nosný kmitočet použitého přijímače U1. Kmitočet |
158 |
přijímače bývá uváděn v posledním dvojčíslí označení, zde tedy |
158 |
přijímače bývá uváděn v posledním dvojčíslí označení, například 38 |
159 |
38kHz. |
159 |
znamená 38kHz. |
160 |
</p> |
160 |
</p> |
161 |
|
161 |
|
162 |
<h2> Přijímač IR (obvod U1) </h2> |
162 |
<h2> Přijímač IR (obvod U1) </h2> |
163 |
|
163 |
|
164 |
<p> |
164 |
<p> |
165 |
Tyto obvody jsou vyráběny pro přijímače dálkového ovládání rádií, |
165 |
Tyto obvody jsou vyráběny pro přijímače dálkového ovládání rádií, |
166 |
televizí a dalších komponent spotřební elektroniky. |
166 |
televizí a dalších komponent spotřební elektroniky. |
167 |
</p> |
167 |
</p> |
168 |
|
168 |
|
169 |
<p> |
169 |
<p> |
170 |
<img width="386" height="195" src="IRFEE01A_Files/image004.png" |
170 |
<img width="386" height="195" src="IRFEE01A_Files/image004.png" |
171 |
alt="Blokové schéma IR přijímače"> |
171 |
alt="Blokové schéma IR přijímače"> |
172 |
</p> |
172 |
</p> |
173 |
|
173 |
|
174 |
<p> |
174 |
<p> |
175 |
Sdružují v sobě přijímací fotodiodu, selektivní zesilovač |
175 |
Sdružují v sobě přijímací fotodiodu, selektivní zesilovač |
176 |
s proměnným ziskem a obvody pro demodulování signálu. Aby čidlo |
176 |
s proměnným ziskem a obvody pro demodulování signálu. Aby čidlo |
177 |
fungovalo nezávisle na okolním osvětlení, je jeho pouzdro z černé |
177 |
fungovalo nezávisle na okolním osvětlení, je jeho pouzdro z černé |
178 |
hmoty, která propouští je vybranou vlnovou délku infračerveného záření. |
178 |
hmoty, která propouští je vybranou vlnovou délku infračerveného záření. |
179 |
</p> |
179 |
</p> |
180 |
|
180 |
|
181 |
<p> |
181 |
<p> |
182 |
<img width="222" height="212" src="IRFEE01A_Files/image005.png" |
182 |
<img width="222" height="212" src="IRFEE01A_Files/image005.png" |
183 |
alt="Závislost citlivosti na vlnové délce záření"> |
183 |
alt="Závislost citlivosti na vlnové délce záření"> |
184 |
</p> |
184 |
</p> |
185 |
|
185 |
|
186 |
<p> |
186 |
<p> |
187 |
Dálkové ovládání používá spoustu přenosových kódů, ale drtivá většina |
187 |
Dálkové ovládání používá spoustu přenosových kódů, ale drtivá většina |
188 |
je založena na vysílání pulsů nosné frekvence řádu 30 až 50kHz. |
188 |
je založena na vysílání pulsů nosné frekvence řádu 30 až 50kHz. |
189 |
Nejkratší přenesený impuls musí obsahovat alespoň 10 period nosného |
189 |
Nejkratší přenesený impuls musí obsahovat alespoň 10 period nosného |
190 |
kmitočtu. Pro optimální fungování přijímače je doporučeno, aby |
190 |
kmitočtu. Pro optimální fungování přijímače je doporučeno, aby |
191 |
přenášené impulsy byly dlouhé mezi 10 a 70 periodami nosného kmitočtu. |
191 |
přenášené impulsy byly dlouhé mezi 10 a 70 periodami nosného kmitočtu. |
192 |
</p> |
192 |
</p> |
193 |
|
193 |
|
194 |
<p> |
194 |
<p> |
195 |
<img width="362" height="158" src="IRFEE01A_Files/image006.png" |
195 |
<img width="362" height="158" src="IRFEE01A_Files/image006.png" |
196 |
alt="Testovací signál"> |
196 |
alt="Testovací signál"> |
197 |
</p> |
197 |
</p> |
198 |
|
198 |
|
199 |
<p> |
199 |
<p> |
200 |
Čidla se vyrábějí pro různé frekvence nosného kmitočtu a mohou být lépe |
200 |
Čidla se vyrábějí pro různé frekvence nosného kmitočtu a mohou být lépe |
201 |
nebo méně přizpůsobené pro použití konkrétního přenosového protokolu |
201 |
nebo méně přizpůsobené pro použití konkrétního přenosového protokolu |
202 |
(jedná se o kompromis mezi odolností vůči rušení a parametry |
202 |
(jedná se o kompromis mezi odolností vůči rušení a parametry |
203 |
jednotlivých kódů). <i>Je třeba dát pozor na zapojení vývodů, existují |
203 |
jednotlivých kódů). <i>Je třeba dát pozor na zapojení vývodů, existují |
204 |
i typy, které mají prohozené napájecí vývody.</i> |
204 |
i typy, které mají prohozené napájecí vývody.</i> |
205 |
</p> |
205 |
</p> |
206 |
|
206 |
|
207 |
<h2> Jaký použít IR přijímač? </h2> |
207 |
<h2> Jaký použít IR přijímač? </h2> |
208 |
|
208 |
|
209 |
<p> |
209 |
<p> |
210 |
Zdánlivě prostá otázka skrývá velkou záludnost. Záludnost spočívá |
210 |
Zdánlivě prostá otázka skrývá velkou záludnost. Záludnost spočívá |
211 |
v tom, že některé přijímače IR signálu fungují dobře, jiné |
211 |
v tom, že některé přijímače IR signálu fungují dobře, jiné |
212 |
mizerně. Platí zde že méně inteligence může být lépe. |
212 |
mizerně. Platí zde že méně inteligence může být lépe. |
213 |
</p> |
213 |
</p> |
214 |
|
214 |
|
215 |
<h3> TSOP34838 – špatná volba </h3> |
215 |
<h3> TSOP34838 – špatná volba </h3> |
216 |
|
216 |
|
217 |
<p> |
217 |
<p> |
218 |
Konkrétně přijímač TSOP34838 funguje tak, že s tím, jak se signál |
218 |
Konkrétně přijímač TSOP348xx funguje tak, že s tím, jak se signál |
219 |
zeslabuje zvyšuje svou citlivost až nakonec signál ztratí. Jenže pak je |
219 |
zeslabuje zvyšuje svou citlivost až nakonec signál ztratí. Jenže pak je |
220 |
třeba signál hodně zesílit, aby ho přijímač zase začal registrovat. |
220 |
třeba signál hodně zesílit, aby ho přijímač zase začal registrovat. |
221 |
</p> |
221 |
</p> |
222 |
|
222 |
|
223 |
<p> |
223 |
<p> |
224 |
V praxi to pak vypadá tak, že čidlo nic nevidí dokud se překážka |
224 |
V praxi to pak vypadá tak, že čidlo nic nevidí dokud se překážka |
225 |
velmi nepřiblíží a pak ji vidí dokud se velmi nevzdálí. Pro náš účel je |
225 |
velmi nepřiblíží a pak ji vidí dokud se velmi nevzdálí. Pro náš účel je |
226 |
tato řada IR přijímačů nepoužitelná. |
226 |
tato řada IR přijímačů nepoužitelná. |
227 |
</p> |
227 |
</p> |
228 |
|
228 |
|
229 |
<h3> Jaký přijímač tedy použít? </h3> |
229 |
<h3> Jaký přijímač tedy použít? </h3> |
230 |
|
230 |
|
231 |
<p> |
231 |
<p> |
232 |
Nevím. Přijímač, který mám v šuplíku na sobě nemá žádné rozumné |
232 |
Přijímače OSRAM řady SFH5110-xx pracují správně. Překážku čidlo |
233 |
označení. Zato funguje jedna báseň. Překážku čidlo zaregistruje a zase |
- |
|
234 |
ztratí v prakticky stejné vzdálenosti. Příležitostně zkusím |
233 |
zaregistruje a zase ztratí v prakticky stejné vzdálenosti. Další |
235 |
nakoupit různé přijímače a otestovat jejich použitelnost. |
234 |
typy je třeba ověřit. |
236 |
</p> |
235 |
</p> |
237 |
|
236 |
|
238 |
<table> |
237 |
<table> |
239 |
<tr> |
238 |
<tr> |
240 |
<th> Přijímač </th> |
239 |
<th> Přijímač </th> |
241 |
<th> Výrobce </th> |
240 |
<th> Výrobce </th> |
242 |
<th> Poznámka </th> |
241 |
<th> Poznámka </th> |
243 |
</tr> |
242 |
</tr> |
244 |
<tr> |
243 |
<tr> |
245 |
<td> TSOP34828 </td> |
244 |
<td> TSOP348xx </td> |
246 |
<td> Vishay </td> |
245 |
<td> VISHAY </td> |
247 |
<td> Má obrovskou hysterezi mezi zachycením signálu a jeho ztrátou </td> |
246 |
<td> Má obrovskou hysterezi mezi zachycením signálu a jeho ztrátou </td> |
248 |
</tr> |
247 |
</tr> |
249 |
<tr> |
248 |
<tr> |
250 |
<td> Neznámý </td> |
249 |
<td> SFH5110-33 <br> |
- |
|
250 |
SFH5110-36 <br> |
- |
|
251 |
SFH5110-38 <br> |
- |
|
252 |
SFH5110-40 </td> |
251 |
<td> Osram? </td> |
253 |
<td> OSRAM </td> |
252 |
<td> Funguje výborně </td> |
254 |
<td> Funguje výborně </td> |
253 |
</tr> |
255 |
</tr> |
254 |
</table> |
256 |
</table> |
255 |
|
257 |
|
256 |
<h2> Inteligence čidla </h2> |
258 |
<h2> Inteligence čidla </h2> |
257 |
|
259 |
|
258 |
<p> |
260 |
<p> |
259 |
Pro detekci překážky by stačilo použít střídavý signál o vhodném |
261 |
Pro detekci překážky by stačilo použít střídavý signál o vhodném |
260 |
kmitočtu a přímo výstup IR přijímače. Takové řešení ale není příliš |
262 |
kmitočtu a přímo výstup IR přijímače. Takové řešení ale není příliš |
261 |
odolné proti rušení, a kromě toho stejně potřebujeme nějaký obvod pro |
263 |
odolné proti rušení, a kromě toho stejně potřebujeme nějaký obvod pro |
262 |
generování nosného kmitočtu. Proto bylo zvoleno řešení s malým |
264 |
generování nosného kmitočtu. Proto bylo zvoleno řešení s malým |
263 |
procesorem, který generuje signál a současně ho i vyhodnocuje. |
265 |
procesorem, který generuje signál a současně ho i vyhodnocuje. |
264 |
</p> |
266 |
</p> |
265 |
|
267 |
|
266 |
<p> |
268 |
<p> |
267 |
Vysílá se signál v podobě nepřetržité řady jedniček a nul. |
269 |
Vysílá se signál v podobě nepřetržité řady jedniček a nul. |
268 |
Jednička je představována 10 impulsy nosného kmitočtu a nula stejně |
270 |
Jednička je představována 10 impulsy nosného kmitočtu a nula stejně |
269 |
dlouhou mezerou, během které se nevysílá žádné záření. Průběh je na |
271 |
dlouhou mezerou, během které se nevysílá žádné záření. Průběh je na |
270 |
obrázku ve stopě 1. |
272 |
obrázku ve stopě 1. |
271 |
</p> |
273 |
</p> |
272 |
|
274 |
|
273 |
<p> |
275 |
<p> |
274 |
<img width="320" height="240" src="IRFEE01A_Files/image007.png" |
276 |
<img width="320" height="240" src="IRFEE01A_Files/image007.png" |
275 |
alt="Průběh vysílaného a přijímaného signálu"> |
277 |
alt="Průběh vysílaného a přijímaného signálu"> |
276 |
</p> |
278 |
</p> |
277 |
|
279 |
|
278 |
<p> |
280 |
<p> |
279 |
Ve stopě 2 je signál na výstupu IR přijímače U1. Stav L indikuje |
281 |
Ve stopě 2 je signál na výstupu IR přijímače U1. Stav L indikuje |
280 |
detekovaný optický signál. Detekovaný signál na přijímači je „rozpitý“, |
282 |
detekovaný optický signál. Detekovaný signál na přijímači je „rozpitý“, |
281 |
protože přijímač potřebuje cca 6 až 10 period signálu pro vyhodnocení a |
283 |
protože přijímač potřebuje cca 6 až 10 period signálu pro vyhodnocení a |
282 |
změnu stavu. Na obrázku vidíme asi 10 sekund aktivity zaznamenané přes |
284 |
změnu stavu. Na obrázku vidíme asi 10 sekund aktivity zaznamenané přes |
283 |
sebe. |
285 |
sebe. |
284 |
</p> |
286 |
</p> |
285 |
|
287 |
|
286 |
<p> |
288 |
<p> |
287 |
Vyhodnocování procesor provádí tak, že testuje, zda přijímač zachytil |
289 |
Vyhodnocování procesor provádí tak, že testuje, zda přijímač zachytil |
288 |
kombinaci 10 a pokud ano, zvýší počítadlo úspěšných detekcí. Jakmile |
290 |
kombinaci 10 a pokud ano, zvýší počítadlo úspěšných detekcí. Jakmile |
289 |
toto počítadlo přeroste aktivační mez, nastaví výstup čidla do stavu H. |
291 |
toto počítadlo přeroste aktivační mez, nastaví výstup čidla do stavu H. |
290 |
Pokud se místo očekávané kombinace 10 přijme cokoli jiného, sníží se |
292 |
Pokud se místo očekávané kombinace 10 přijme cokoli jiného, sníží se |
291 |
počítadlo. Jakmile počítadlo poklesne pod nulu, výstup čidla se |
293 |
počítadlo. Jakmile počítadlo poklesne pod nulu, výstup čidla se |
292 |
překlopí do neaktivního stavu L. Obrázek ukazuje máchnutí rukou před |
294 |
překlopí do neaktivního stavu L. Obrázek ukazuje máchnutí rukou před |
293 |
čidlem, odezva 20ms pro zapnutí a 15ms pro vypnutí. |
295 |
čidlem, odezva 20ms pro zapnutí a 15ms pro vypnutí. |
294 |
</p> |
296 |
</p> |
295 |
|
297 |
|
296 |
<p> |
298 |
<p> |
297 |
<img width="320" height="240" src="IRFEE01A_Files/image008.png" |
299 |
<img width="320" height="240" src="IRFEE01A_Files/image008.png" |
298 |
alt="Odezva čidla na máchnutí rukou"> |
300 |
alt="Odezva čidla na máchnutí rukou"> |
299 |
</p> |
301 |
</p> |
300 |
|
302 |
|
301 |
<p> |
303 |
<p> |
302 |
Toto poměrně jednoduché řešení vede k solidní odolnosti vůči |
304 |
Toto poměrně jednoduché řešení vede k solidní odolnosti vůči |
303 |
rušení. Ani ovladač od televize z bezprostřední blízkosti |
305 |
rušení. Ani ovladač od televize z bezprostřední blízkosti |
304 |
neovlivňuje funkci čidla. |
306 |
neovlivňuje funkci čidla. |
305 |
</p> |
307 |
</p> |
306 |
|
308 |
|
307 |
<h2> Mechanická konstrukce </h2> |
309 |
<h2> Mechanická konstrukce </h2> |
308 |
|
310 |
|
309 |
<p> |
311 |
<p> |
310 |
Předpokládá se, že čidlo bude připevněno na přední část robotu nebo na |
312 |
Předpokládá se, že čidlo bude připevněno na přední část robotu nebo na |
311 |
nějaký drátový nebo plechový tvarovatelný nosník. Je proto opatřeno 1 |
313 |
nějaký drátový nebo plechový tvarovatelný nosník. Je proto opatřeno 1 |
312 |
upevňovacím šroubem. Vysílací dioda a přijímací obvod na sebe nesmějí |
314 |
upevňovacím šroubem. Vysílací dioda a přijímací obvod na sebe nesmějí |
313 |
vidět a je nutné tyto komponenty doplnit vhodně tvarovanými stínítky |
315 |
vidět a je nutné tyto komponenty doplnit vhodně tvarovanými stínítky |
314 |
tak, aby čidlo detekovalo překážky dle potřeby. Přijímač je velmi |
316 |
tak, aby čidlo detekovalo překážky dle potřeby. Přijímač je velmi |
315 |
citlivý a vidí vysílací LED i tehdy, kdyby to člověk neřekl (například |
317 |
citlivý a vidí vysílací LED i tehdy, kdyby to člověk neřekl (například |
316 |
zezadu). Stínítko lze udělat například z černé smršťovací bužírky. |
318 |
zezadu). Stínítko lze udělat například z černé smršťovací bužírky. |
317 |
</p> |
319 |
</p> |
318 |
|
320 |
|
319 |
<p> |
321 |
<p> |
320 |
Vysílací IR LED lze osadit jak shora desky, tak i ze spodní strany. |
322 |
Vysílací IR LED lze osadit jak shora desky, tak i ze spodní strany. |
321 |
V případě potřeby je možné LED umístit dál od desky a vhodně |
323 |
V případě potřeby je možné LED umístit dál od desky a vhodně |
322 |
nasměrovat. |
324 |
nasměrovat. |
323 |
</p> |
325 |
</p> |
324 |
|
326 |
|
325 |
<h1> Osazení a oživení </h1> |
327 |
<h1> Osazení a oživení </h1> |
326 |
|
328 |
|
327 |
<h2> Osazení </h2> |
329 |
<h2> Osazení </h2> |
328 |
|
330 |
|
329 |
<p> |
331 |
<p> |
330 |
<img width="567" height="241" src="IRFEE01A_Files/image010.jpg" |
332 |
<img width="567" height="241" src="IRFEE01A_Files/image010.jpg" |
331 |
alt="Osazovací výkres, strana součástek"> |
333 |
alt="Osazovací výkres, strana součástek"> |
332 |
</p> |
334 |
</p> |
333 |
|
335 |
|
334 |
<p> |
336 |
<p> |
335 |
<img width="563" height="240" src="IRFEE01A_Files/image011.jpg" |
337 |
<img width="563" height="240" src="IRFEE01A_Files/image011.jpg" |
336 |
alt="Osazovací výkres, strana spojů"> |
338 |
alt="Osazovací výkres, strana spojů"> |
337 |
</p> |
339 |
</p> |
338 |
|
340 |
|
339 |
<table class="Soupiska"> |
341 |
<table class="Soupiska"> |
340 |
<tr> |
342 |
<tr> |
341 |
<th> Počet </th> |
343 |
<th> Počet </th> |
342 |
<th> Reference </th> |
344 |
<th> Reference </th> |
343 |
<th> Název </th> |
345 |
<th> Název </th> |
344 |
<th> Pouzdro </th> |
346 |
<th> Pouzdro </th> |
345 |
</tr> |
347 |
</tr> |
346 |
<tr> |
348 |
<tr> |
347 |
<th colspan="4"> Odpory </th> |
349 |
<th colspan="4"> Odpory </th> |
348 |
</tr> |
350 |
</tr> |
349 |
<tr> |
351 |
<tr> |
350 |
<td> 1 </td> |
352 |
<td> 1 </td> |
351 |
<td> R1 </td> |
353 |
<td> R1 </td> |
352 |
<td> 100 </td> |
354 |
<td> 100 </td> |
353 |
<td> R0805 </td> |
355 |
<td> R0805 </td> |
354 |
</tr> |
356 |
</tr> |
355 |
<tr> |
357 |
<tr> |
356 |
<td> 1 </td> |
358 |
<td> 1 </td> |
357 |
<td> R2 </td> |
359 |
<td> R2 </td> |
358 |
<td> 330 </td> |
360 |
<td> 330 </td> |
359 |
<td> R0805 </td> |
361 |
<td> R0805 </td> |
360 |
</tr> |
362 |
</tr> |
361 |
<tr> |
363 |
<tr> |
362 |
<td> 1 </td> |
364 |
<td> 1 </td> |
363 |
<td> R3 </td> |
365 |
<td> R3 </td> |
364 |
<td> 680 </td> |
366 |
<td> 680 </td> |
365 |
<td> R0805 </td> |
367 |
<td> R0805 </td> |
366 |
</tr> |
368 |
</tr> |
367 |
<tr> |
369 |
<tr> |
368 |
<td> 1 </td> |
370 |
<td> 1 </td> |
369 |
<td> R4 </td> |
371 |
<td> R4 </td> |
370 |
<td> 10k </td> |
372 |
<td> 10k </td> |
371 |
<td> R0805 </td> |
373 |
<td> R0805 </td> |
372 |
</tr> |
374 |
</tr> |
373 |
<tr> |
375 |
<tr> |
374 |
<th colspan="4"> Keramické kondenzátory </th> |
376 |
<th colspan="4"> Keramické kondenzátory </th> |
375 |
</tr> |
377 |
</tr> |
376 |
<tr> |
378 |
<tr> |
377 |
<td> 2 </td> |
379 |
<td> 2 </td> |
378 |
<td> C1, C2 </td> |
380 |
<td> C1, C2 </td> |
379 |
<td> 4u7/6.3V </td> |
381 |
<td> 4u7/6.3V </td> |
380 |
<td> C0805 </td> |
382 |
<td> C0805 </td> |
381 |
</tr> |
383 |
</tr> |
382 |
<tr> |
384 |
<tr> |
383 |
<th colspan="4"> Diody </th> |
385 |
<th colspan="4"> Diody </th> |
384 |
</tr> |
386 |
</tr> |
385 |
<tr> |
387 |
<tr> |
386 |
<td> 1 </td> |
388 |
<td> 1 </td> |
387 |
<td> D1 </td> |
389 |
<td> D1 </td> |
388 |
<td> 1N4007SMD </td> |
390 |
<td> 1N4007SMD </td> |
389 |
<td> MELF </td> |
391 |
<td> MELF </td> |
390 |
</tr> |
392 |
</tr> |
391 |
<tr> |
393 |
<tr> |
392 |
<th colspan="4"> LED </th> |
394 |
<th colspan="4"> LED </th> |
393 |
</tr> |
395 |
</tr> |
394 |
<tr> |
396 |
<tr> |
395 |
<td> 1 </td> |
397 |
<td> 1 </td> |
396 |
<td> D2 </td> |
398 |
<td> D2 </td> |
397 |
<td> L-53F3BT </td> |
399 |
<td> L-53F3BT </td> |
398 |
<td> LED5 </td> |
400 |
<td> LED5 </td> |
399 |
</tr> |
401 |
</tr> |
400 |
<tr> |
402 |
<tr> |
401 |
<td> 1 </td> |
403 |
<td> 1 </td> |
402 |
<td> D3 </td> |
404 |
<td> D3 </td> |
403 |
<td> LED_RED_5mm </td> |
405 |
<td> LED_RED_5mm </td> |
404 |
<td> LED5 </td> |
406 |
<td> LED5 </td> |
405 |
</tr> |
407 |
</tr> |
406 |
<tr> |
408 |
<tr> |
407 |
<th colspan="4"> Integrované obvody </th> |
409 |
<th colspan="4"> Integrované obvody </th> |
408 |
</tr> |
410 |
</tr> |
409 |
<tr> |
411 |
<tr> |
410 |
<td> 1 </td> |
412 |
<td> 1 </td> |
411 |
<td> U1 </td> |
413 |
<td> U1 </td> |
412 |
<td> IR_RECEIVER (viz text) </td> |
414 |
<td> IR_RECEIVER (viz text) </td> |
413 |
<td> TSOP348xx </td> |
415 |
<td> TSOP348xx </td> |
414 |
</tr> |
416 |
</tr> |
415 |
<tr> |
417 |
<tr> |
416 |
<td> 1 </td> |
418 |
<td> 1 </td> |
417 |
<td> U2 </td> |
419 |
<td> U2 </td> |
418 |
<td> ATtiny13-20SU </td> |
420 |
<td> ATtiny13-20SU </td> |
419 |
<td> SO8_210 </td> |
421 |
<td> SO8_210 </td> |
420 |
</tr> |
422 |
</tr> |
421 |
<tr> |
423 |
<tr> |
422 |
<th colspan="4"> Mechanické součástky </th> |
424 |
<th colspan="4"> Mechanické součástky </th> |
423 |
</tr> |
425 |
</tr> |
424 |
<tr> |
426 |
<tr> |
425 |
<td> 1 </td> |
427 |
<td> 1 </td> |
426 |
<td> J1 </td> |
428 |
<td> J1 </td> |
427 |
<td> JUMP3 </td> |
429 |
<td> JUMP3 </td> |
428 |
<td> JUMP3 </td> |
430 |
<td> JUMP3 </td> |
429 |
</tr> |
431 |
</tr> |
430 |
<tr> |
432 |
<tr> |
431 |
<td> 1 </td> |
433 |
<td> 1 </td> |
432 |
<td> J2 </td> |
434 |
<td> J2 </td> |
433 |
<td> JUMP1 </td> |
435 |
<td> JUMP1 </td> |
434 |
<td> JUMP1 </td> |
436 |
<td> JUMP1 </td> |
435 |
</tr> |
437 |
</tr> |
436 |
<tr> |
438 |
<tr> |
437 |
<td> 1 </td> |
439 |
<td> 1 </td> |
438 |
<td> J3 </td> |
440 |
<td> J3 </td> |
439 |
<td> JUMP2x3 </td> |
441 |
<td> JUMP2x3 </td> |
440 |
<td> JUMP2x3/B </td> |
442 |
<td> JUMP2x3/B </td> |
441 |
</tr> |
443 |
</tr> |
442 |
</table> |
444 |
</table> |
443 |
|
445 |
|
444 |
<p> |
446 |
<p> |
445 |
<img width="328" height="147" src="IRFEE01A_Files/image009.jpg" |
447 |
<img width="328" height="147" src="IRFEE01A_Files/image009.jpg" |
446 |
alt="Obrázek osazené desky ze strany spojů"> |
448 |
alt="Obrázek osazené desky ze strany spojů"> |
447 |
</p> |
449 |
</p> |
448 |
|
450 |
|
449 |
<h2> Oživení a kalibrace </h2> |
451 |
<h2> Oživení a kalibrace </h2> |
450 |
|
452 |
|
451 |
<p> |
453 |
<p> |
452 |
Oživení spočívá v naprogramování řídícího programu do procesoru. |
454 |
Oživení spočívá v naprogramování řídícího programu do procesoru. |
453 |
Je třeba použít program, který generuje vysílací signál o stejné |
455 |
Je třeba použít program, který generuje vysílací signál o stejné |
454 |
frekvenci, na jakou je naladěn přijímací obvod. Hodnoty pro |
456 |
frekvenci, na jakou je naladěn přijímací obvod. Hodnoty pro |
455 |
naprogramování konfiguračních buněk procesoru jsou uvedeny na začátku |
457 |
naprogramování konfiguračních buněk procesoru jsou uvedeny na začátku |
456 |
zdrojového kódu. |
458 |
zdrojového kódu. |
457 |
</p> |
459 |
</p> |
458 |
|
460 |
|
459 |
<h1> Programové vybavení </h1> |
461 |
<h1> Programové vybavení </h1> |
460 |
|
462 |
|
461 |
<h2> Popis programu </h2> |
463 |
<h2> Popis programu </h2> |
462 |
|
464 |
|
463 |
<p> |
465 |
<p> |
464 |
Pro generování budícího signálu vysílací IR diody se využívá časovač |
466 |
Pro generování budícího signálu vysílací IR diody se využívá časovač |
465 |
v režimu CTC. Časovač opakovaně čítá od 0 do horní meze, která je |
467 |
v režimu CTC. Časovač opakovaně čítá od 0 do horní meze, která je |
466 |
nastavena v registru OCR0A. Touto konstantou je dána frekvence |
468 |
nastavena v registru OCR0A. Touto konstantou je dána frekvence |
467 |
generovaného signálu. |
469 |
generovaného signálu. |
468 |
</p> |
470 |
</p> |
469 |
|
471 |
|
470 |
<p> |
472 |
<p> |
471 |
Při každém dosažení horní meze časovače se automaticky neguje výstup |
473 |
Při každém dosažení horní meze časovače se automaticky neguje výstup |
472 |
PB1, na který je připojena vysílací dioda. Současně se vyvolá |
474 |
PB1, na který je připojena vysílací dioda. Současně se vyvolá |
473 |
podprogram pro obsluhu přerušení, který čítá počet půlperiod vysílaného |
475 |
podprogram pro obsluhu přerušení, který čítá počet půlperiod vysílaného |
474 |
signálu. Pokud se má vysílat tma (nazvěme stav 0), vše probíhá stejně, |
476 |
signálu. Pokud se má vysílat tma (nazvěme stav 0), vše probíhá stejně, |
475 |
jen se výstupní stav PB1 nemění. |
477 |
jen se výstupní stav PB1 nemění. |
476 |
</p> |
478 |
</p> |
477 |
|
479 |
|
478 |
<p> |
480 |
<p> |
479 |
Po vyslání nastaveného počtu period signálu (konstanta SYMBOL_LENGTH) |
481 |
Po vyslání nastaveného počtu period signálu (konstanta SYMBOL_LENGTH) |
480 |
se střídá vysílání stavu 0 a 1 (střídavý signál a tma) a současně se |
482 |
se střídá vysílání stavu 0 a 1 (střídavý signál a tma) a současně se |
481 |
vyhodnocuje, zda se přijímaný signál shoduje s vysílaným. |
483 |
vyhodnocuje, zda se přijímaný signál shoduje s vysílaným. |
482 |
Vyhodnocování se provádí po dvojici 0/1. |
484 |
Vyhodnocování se provádí po dvojici 0/1. |
483 |
</p> |
485 |
</p> |
484 |
|
486 |
|
485 |
<p> |
487 |
<p> |
486 |
Hlavní program obsahuje inicializační část a prázdnou nekonečnou |
488 |
Hlavní program obsahuje inicializační část a prázdnou nekonečnou |
487 |
smyčku. Za běhu se vše vyřizuje v podprogramu obsluhy přerušení od |
489 |
smyčku. Za běhu se vše vyřizuje v podprogramu obsluhy přerušení od |
488 |
časovače. |
490 |
časovače. |
489 |
</p> |
491 |
</p> |
490 |
|
492 |
|
491 |
<h2> Překlad programu </h2> |
493 |
<h2> Překlad programu </h2> |
492 |
|
494 |
|
493 |
<p> |
495 |
<p> |
494 |
Pro překlad je připravený Makefile, který přeloží program |
496 |
Pro překlad je připravený Makefile, který přeloží program |
495 |
s nastavením pro vyjmenované nosné kmitočty. |
497 |
s nastavením pro vyjmenované nosné kmitočty. |
496 |
</p> |
498 |
</p> |
497 |
</div> |
499 |
</div> |
498 |
|
500 |
|
499 |
<!-- AUTOINCLUDE START "Page/Footer.cs.ihtml" DO NOT REMOVE --> |
501 |
<!-- AUTOINCLUDE START "Page/Footer.cs.ihtml" DO NOT REMOVE --> |
500 |
<!-- ============== PATIČKA ============== --> |
502 |
<!-- ============== PATIČKA ============== --> |
501 |
<div class="Footer"> |
503 |
<div class="Footer"> |
502 |
<script type="text/javascript"> |
504 |
<script type="text/javascript"> |
503 |
<!-- |
505 |
<!-- |
504 |
SetRelativePath("../../../../../"); |
506 |
SetRelativePath("../../../../../"); |
505 |
DrawFooter(); |
507 |
DrawFooter(); |
506 |
// --> |
508 |
// --> |
507 |
</script> |
509 |
</script> |
508 |
<noscript> |
510 |
<noscript> |
509 |
<p><b> Pro zobrazení (vložení) hlavičky je potřeba JavaScript </b></p> |
511 |
<p><b> Pro zobrazení (vložení) hlavičky je potřeba JavaScript </b></p> |
510 |
</noscript> |
512 |
</noscript> |
511 |
</div> |
513 |
</div> |
512 |
<!-- AUTOINCLUDE END --> |
514 |
<!-- AUTOINCLUDE END --> |
513 |
|
515 |
|
514 |
</body> |
516 |
</body> |
515 |
</html> |
517 |
</html> |