Rev Author Line No. Line
193 miho 1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3c.org/TR/html4/strict.dtd">
2 <html>
3 <head>
4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
5 <title> DART01B </title>
203 miho 6 <meta name="keywords" content="stavebnice MLAB solární vozítko robot DART">
193 miho 7 <meta name="description" content="Projekt MLAB, Solární vozítko DART">
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">
10 <link rel="shortcut icon" type="image/x-icon" href="Web/PIC/MLAB.ico">
11 <script type="text/javascript" src="../../../../Web/JS/MLAB_Menu.js"></script>
12 <!-- AUTOINCLUDE END -->
13 </head>
14  
15 <body lang="cs">
16  
17 <!-- AUTOINCLUDE START "Page/Header.cs.ihtml" DO NOT REMOVE -->
18 <!-- ============== HLAVICKA ============== -->
19 <div class="Header">
20 <script type="text/javascript">
21 <!--
22 SetRelativePath("../../../../");
23 DrawHeader();
24 // -->
25 </script>
26 <noscript>
27 <p><b> Pro zobrazení (vložení) hlavičky je potřeba JavaScript </b></p>
28 </noscript>
29 </div>
30 <!-- AUTOINCLUDE END -->
31  
32 <!-- AUTOINCLUDE START "Page/Menu.cs.ihtml" DO NOT REMOVE -->
33 <!-- ============== MENU ============== -->
34 <div class="Menu">
35 <script type="text/javascript">
36 <!--
37 SetRelativePath("../../../../");
38 DrawMenu();
39 // -->
40 </script>
41 <noscript>
42 <p><b> Pro zobrazení (vložení) menu je potřeba JavaScript </b></p>
43 </noscript>
44 </div>
45 <!-- AUTOINCLUDE END -->
46  
47 <!-- ============== TEXT ============== -->
48 <div class="Text">
49 <p class="Title">
50 DART – solární vozítko s měničem
51 </p>
52 <p class=Autor>
53 Milan Horkel
54 </p>
55 <p class="Subtitle">
56 Popisovaná konstrukce je experimentálním vozítkem pro
57 závody solárních modelů. Je zde stručně uvedena mechanická konstrukce a
58 konstrukce elektroniky obsahující měnič a řídící procesor pro řízení
59 měniče a startu vozítka. Varianta s&nbsp;běžným tranzistorem.
60 </p>
61 <p class=Subtitle>
62 <img width=358 height=333 src="Pictures/image001.jpg"
203 miho 63 alt="Celkový pohled">
193 miho 64 </p>
65 <p class="Center">
66 Obrázek zobrazuje elektroniku ve variantě DART01A
67 </p>
68 <p class=Subtitle>
69 <img width=228 height=160 src="Pictures/image002.jpg"
203 miho 70 alt="Elektronika ze strany součástí">
193 miho 71 <img width=227 height=148 src="Pictures/image003.jpg"
203 miho 72 alt="Elektronika ze strany spojů">
193 miho 73 </p>
74 <p>
75 <a href="../DART01B.cs.pdf"><img class="NoBorder"
76 src="../../../../Web/PIC/FileIco_PDF.ico"
77 alt="Acrobat">&nbsp;PDF verze</a>
78 </p>
79  
80 <h1> Technické údaje </h1>
81  
82 <table>
83 <tr>
84 <th> Parametr </th>
85 <th> Hodnota </th>
86 <th> Poznámka </th>
87 </tr>
88 <tr>
89 <td> Napájení </td>
90 <td> 8ks slunečních článků </td>
91 <td> cca 65mW </td>
92 </tr>
93 <tr>
94 <td> Akumulační prvek </td>
95 <td> Kondenzátor 10G/16V </td>
96 <td> Maximálně do 18V (omezeno ZD)</td>
97 </tr>
98 <tr>
99 <td> Maximální energie </td>
100 <td> 1.3J / 1.6J </td>
101 <td> Při 16V / 18V </td>
102 </tr>
103 <tr>
104 <td> Řízení </td>
105 <td> Procesor PIC16F88 </td>
106 <td> AD převodník, PWM, SSP, časovač </td>
107 </tr>
108 <tr>
109 <td> Hmotnost </td>
110 <td> 70g </td>
111 <td> Elektronika z&nbsp;toho 20g </td>
112 </tr>
113 <tr>
114 <td> Rozměry </td>
115 <td> 155x115x100mm </td>
116 <td> Elektronika 49x31x38mm </td>
117 </tr>
118 </table>
119  
120 <h1> Úvodem </h1>
121  
122 <p>
123 Konstrukce solárního vozítka vyžaduje mnoho experimentální.
124 Vznikla proto robustní mechanická konstrukce podvozku s&nbsp;oddělitelnými
125 slunečními články a samostatná deska elektroniky. Většinu ladění a experimentů
126 lze udělat tak, že se na podvozek umístí závaží odpovídající váze slunečních
127 článků a elektroniky (osvědčila se 9V baterie) a podvozek se propojí tenkým
128 drátem (lakovaný drát 0.2mm) s&nbsp;elektronikou, která leží na pracovním
129 stole. Na sluneční články lze svítit obyčejnou stolní lampou, jen je třeba
130 zvolit vhodnou vzdálenost, aby množství energie odpovídalo soutěžnímu
131 osvětlení. Do místa dojezdu je vhodné dát polštář aby se podvozek nepotloukl.
132 </p>
133  
134 <p>
135 Všechna dosavadní solární vozítka (na soutěžích v&nbsp;Ostravě), která
136 nějakým způsobem akumulovala energii se snažila nabít přímo ze slunečních
137 článků velký kondenzátor a ten pak vybít do motoru. Tento proces má dvě úskalí.
138 </p>
139  
140 <p>
141 Za prvé sluneční články dávají maximální výkon jen při určitém napětí
142 (2.5 až 3V při 8 článcích dle úrovně osvětlení). Tedy při připojení
143 slunečních článků na vybitý kondenzátor je většina energie nevyužita
144 (velký proud ale nepatrné napětí dají nepatrný výkon).
145 </p>
146  
147 <p>
148 Druhým kamenem úrazu je to, jak dostat co nejvíce energie
149 z&nbsp;kondenzátoru do motoru. Prosté připojení motoru je velmi
150 neefektivní, mnohem výhodnější je postupný rozjezd. V&nbsp;autě se
151 také nerozjíždíme na pětku i když nakonec chceme jet co nejrychleji.
152 Komplikací je i ta skutečnost, že část energie v&nbsp;kondenzátoru
153 zbývá nevyužita protože napětí na kondenzátoru neklesne na nulu.
154 </p>
155  
156 <p class="Remark">
157 Varianta „B“ elektroniky se od varianty „A“ liší jen tím, že byl použit
158 dvojitý FET v&nbsp;obyčejném pouzdře SO8 (původní tranzistor byl
159 poněkud exotický) a na plošný spoj byla doplněna možnost osazení LED
160 (bliknutí je vidět i v&nbsp;hlučném prostředí ale stávající program
161 ji nevyužívá).
162 </p>
163  
164 <h2> Koncepce řešení </h2>
165  
166 <p>
167 První problém lze v&nbsp;podstatě bezezbytku vyřešit tím, že mezi
168 baterii slunečních článků a akumulační kondenzátor umístíme měnič, který
169 řídíme tak, aby bylo na slunečních článcích optimální napětí. Zaplatíme
170 za to tím, že se část energie ztratí v&nbsp;měniči (účinnost cca 80%)
171 a část energie spotřebuje procesor na řízení měniče (cca 1mA).
172 Procesor ale stejně potřebujeme protože to je nejsnazší způsob jak
173 zajistit start vozítka v&nbsp;definovaném čase (dle pravidel 15s).
174 </p>
175  
176 <p>
177 Energie z&nbsp;akumulačního kondenzátoru přivedeme do motoru „po kouskách“
178 tak, že při rozjezdu budeme nejprve krátce spínat proud do motoru
179 a během rozjezdu budeme postupně přidávat. Bohužel část energie
180 v&nbsp;kondenzátoru zůstane nevyužita (napětí neklesne k&nbsp;nule).
181 Aby tato část byla co nejmenší je vhodné volit kondenzátor raději menší
182 kapacity ale na větší napětí. Napětí je omezeno hlavně průrazným napětím
183 použitých tranzistorů.
184 </p>
185  
186 <h2> Dosažené výsledky </h2>
187  
188 <p>
189 Předběžné dosažené výsledky ukazují, že celkový výsledek je schopný
190 konkurovat nejlepším konstrukcím z&nbsp;předchozích ročníků soutěže
191 solárních vozítek. Zvýšená spotřeba elektroniky a její hmotnost je
192 s&nbsp;rezervou vyvážena lepším využitím energie ze slunečních článků.
193 </p>
194  
195 <h1> Mechanická konstrukce </h1>
196  
197 <p>
198 Mechanická konstrukce se skládá ze 3 částí:
199 </p>
200  
201 <table>
202 <tr>
203 <th> Část </th>
204 <th> Hmotnost </th>
205 <th> Celkem </th>
206 </tr>
207 <tr>
208 <td> Podvozek s motorem </td>
209 <td> 35g </td>
210 <td rowspan=3> 69g </td>
211 </tr>
212 <tr>
213 <td> Panel slunečních článků </td>
214 <td> 14g </td>
215 </tr>
216 <tr>
217 <td> Elektronika </td>
218 <td> 20g (z toho kondenzátor 13g) </td>
219 </tr>
220 </table>
221  
222 <p>
223 Podvozek je samostatný prvek a panel slunečních článků je k&nbsp;němu
224 připevněn pomocí stojin z&nbsp;hliníkové trubičky Ø3mm, které lze
225 oddělit jak od podvozku, tak i od panelu slunečních článků. Elektronika
226 je připevněna pomocí gumičky.
227 </p>
228  
229 <h2> Podvozek </h2>
230  
231 <p>
232 Podvozek je slepený z&nbsp;balzového dřeva a smrkových latiček.
233 Provedení je určeno použitým motorem a převody. Motor i převody
234 pochází z&nbsp;nefunkční CD ROM mechaniky. Podvozek byl stavěn spíše
235 robustní aby něco vydržel a jistě by jej bylo možné odlehčit.
236 </p>
237  
238 <p>
239 Kola (standardní modelářská) jsou spolu s&nbsp;velkým ozubeným kolem
240 převodu nasazena (a přilepena) na osu, kterou tvoří hliníková
241 trubička Ø3mm. Na ose jsou dále přilepena 2 kuličková ložiska za která
242 je náprava uchycena do podvozku (ložiska nejsou k&nbsp;podvozku přilepena).
243 Ložiska pocházejí ze starého pevného disku.
244 </p>
245  
246 <p>
247 Přední kolo má pneumatiku z&nbsp;malého modelářského kolečka
248 a náboj tvoří opět malé kuličkové ložisko s&nbsp;osou z&nbsp;hliníkové
249 trubičky. Kolečko musí být dobře připevněno k&nbsp;podvozku aby se neulomilo
250 při tvrdém dojezdu.
251 </p>
252  
253 <p>
254 Stojiny jsou zasunuty v&nbsp;trubičkách z&nbsp;hnědé papírové lepenky.
255 Tyto trubičky jsou epoxidovým lepidlem zalepeny do podvozku.
256 Podrobnosti jsou patrné z&nbsp;přiložených obrázků.
257 </p>
258  
259 <p>
260 <img width=268 height=189 src="Pictures/image005.jpg"
261 alt="Podvozek, pohled zhora">
262 <img width=170 height=190 src="Pictures/image006.jpg"
263 alt="Převodovka">
264 <img width=143 height=188 src="Pictures/image007.jpg"
265 alt="Přední kolo">
266 </p>
267  
268 <h2> Panel slunečních článků </h2>
269  
270 <p>
271 Sluneční články jsou velmi křehké a je tedy nezbytné náležitě je chránit
272 před poškozením. Ke každému článku jsou zespoda připájeny 2 tenké dráty
273 za které jsou přichyceny k&nbsp;podložce z&nbsp;1mm balzy. Okraj podložky
274 je zpevněn latičkami 2x3mm. Vpředu a vzadu jsou přilepené trubičky
275 z&nbsp;papírové lepenky pro nasazení panelu na stojky. Všechny články
276 jsou zapojené v&nbsp;sérii a vývod je opatřen kablíkem s&nbsp;konektorem.
277 </p>
278  
279 <p>
280 <img width=209 height=189 src="Pictures/image008.jpg"
281 alt="Solární články">
282 <img width=105 height=188 src="Pictures/image009.jpg"
283 alt="Připevnění stojin">
284 </p>
285  
286 <h1> Elektronika </h1>
287  
288 <h2> Blokové schéma </h2>
289  
290 <p>
291 <img width=465 height=227 src="Pictures/image010.gif"
292 alt="Blokové schéma">
293 </p>
294  
295 <p>
296 Srdcem elektroniky je jednočipový procesor PIC16F88, který zajišťuje
297 kompletní řízení jak měniče (pomocí PWM jednotky a AD převodníku) tak
298 i rozjezdu (pomocí SSP jednotky).
299 </p>
300  
301 <p>
302 Napájení zajišťuje panel slunečních článků. Získaná energie
303 se měničem střídá do akumulačního kondenzátoru odkud se pak spínačem
304 motoru využívá pro rozjezd vozítka.
305 </p>
306  
307 <p>
308 K&nbsp;procesoru jsou připojeny 2 odporové trimry, jejichž nastavení
309 lze přečíst pomocí AD převodníku a mohou se použít pro nastavení
310 parametrů řídících algoritmů. Přepínač slouží pro výběr až 4 různých
311 řídících algoritmů.
312 </p>
313  
314 <p>
315 Pro ladění je možné k&nbsp;elektronice připojit pomocný terminál
316 s&nbsp;dvouřádkovým LCD displejem pro průběžné zobrazování nastavených
317 parametrů.
318 </p>
319  
320 <h2> Energetická bilance </h2>
321  
322 <p>
323 Zdrojem energie je sada 8ks slunečních článků 25x50mm zapojených
324 do série, které poskytnou při soutěžním osvětlení cca 60mW výkonu.
325 Maximální výkon lze z&nbsp;článků získat pokud se zatíží tak, aby
326 na nich bylo napětí 2.5 až 3V. Tato velikost napětí je výhodná
327 i tím, že se dá bez úprav použít pro napájení řídícího procesoru
328 (PIC16F88).
329 </p>
330  
331 <p>
332 Na startu je možno 15s akumulovat energii. Za tyto dobu poskytnou články
333 cca 0.9J energie. Vlastní spotřeba procesoru (1mA) je jen malou částí
334 a nebudeme ji dále uvažovat. Akumulační kondenzátor 10G/16V se
335 touto energií nabije ideálně na cca 13.4V. Vzhledem k&nbsp;tomu,
336 že měnič má ztráty bude na kondenzátoru napětí o něco menší.
337 Teoreticky se do uvažovaného kondenzátoru vejde až 1.28J při 16V
338 a máme tedy i dostatečnou rezervu (více světla, lepší články a podobně).
339 </p>
340  
341 <p>
342 <img width=137 height=41 src="Pictures/image011.gif"
343 alt="Vzorec E = 0.5 * C * U * U">
344 </p>
345  
346 <p>
347 <img width=129 height=47 src="Pictures/image012.gif"
348 alt="Vzorec U = sqrt( 2 * E / C )">
349 </p>
350  
351 <h2> Měnič </h2>
352  
353 <p>
354 Používáme blokující měnič, který má ideální vlastnosti pro uvažovanou
355 aplikaci. Umožňuje totiž transformovat energii ze vstupního napětí
356 jak směrem dolu (když je akumulační kondenzátor vybitý) tak i směrem
357 nahoru (když je akumulační kondenzátor nabitý). Velikost výstupního
358 napětí není principielně omezena a aby nedošlo k&nbsp;proražení
359 spínacího tranzistoru nebo akumulačního kondenzátoru je na výstupu
360 měniče zařazena ochranná Zenerova dioda 16V nebo 18V.
361 </p>
362  
363 <p>
364 <img width=378 height=155 src="Pictures/image013.gif"
203 miho 365 alt="Principální schéma měniče">
193 miho 366 </p>
367  
368 <p>
369 Při sepnutí tranzistoru Q se objeví napájecí napětí na primárním vinutí
370 transformátoru a začne postupně lineárně narůstat proud primárním vinutím
371 a dochází k&nbsp;ukládání energie v&nbsp;podobě magnetického pole cívky.
372 </p>
373  
374 <p>
375 <img width=147 height=41 src="Pictures/image014.gif"
376 alt="Vzorec i(t) = U * t / L">
377 </p>
378  
379 <p>
380 <img width=133 height=41 src="Pictures/image015.gif"
381 alt="Vzorec E = 0.5 L * I * I">
382 </p>
383  
384 <p>
385 Množství uložené energie je úměrné t<sup>2</sup> času sepnutí spínače
386 Q protože proud je úměrný času t.
387 </p>
388  
389 <p>
390 Současně plynulý nárůst proudu způsobí, že se na sekundárním vinutí
391 objeví konstantní napětí shodné velikosti jako na primárním vinutí
392 (primární i sekundární vinutí mají shodný počet závitů). Kladný pól
393 tohoto napětí je u tečky protože kladný pól napětí na primárním vinutí
394 je také u tečky. Sekundární vinutí je zapojeno tak, že dioda D je
395 uzavřena a sekundárním vinutím neteče proud.
396 </p>
397  
398 <p>
399 V&nbsp;okamžiku rozpojení spínače Q přestává téci proud primárním vinutím
400 a transformátor vrací naakumulovanou energii přes diodu D do akumulačního
401 kondenzátoru C. Napětí na sekundárním vinutí je dáno napětím
402 na kondenzátoru C (plus úbytek na diodě D) a napětí na primárním vinutí
403 je opět zhruba shodné. Tranzistor Q je namáhán napětím rovným součtu
404 napájecího napětí a napětí na akumulačním kondenzátoru.
405 </p>
406  
407 <p>
408 Následující průběhy orientačně zobrazují průběh buzení tranzistoru,
409 napětí na primárním vinutí (na sekundárním je vždy stejné) a proudy
410 primárním a sekundárním vinutím.
411 </p>
412  
413 <p>
414 <img width=373 height=181 src="Pictures/image016.gif"
415 alt="Časové průběhy napětí a proudu">
416 </p>
417  
418 <p>
419 Množství energie v&nbsp;každém cyklu je dáno t<sup>2</sup> doby sepnutí
420 spínače. Tato doba je řízena procesorem tak, aby se udržovalo optimální
421 napětí na slunečních článcích. Při poklesu napětí pod nastavenou mez
422 se zkracuje doba sepnutí a naopak.
423 </p>
424  
425 <p>
426 Aby měl měnič dobrou účinnost (cca 80%) je nezbytné zajistit, aby se
427 jádro transformátoru nepřebuzovalo. Toho se docílí tím, že má jádro
428 vzduchovou mezeru. V&nbsp;měniči je použito toroidní jádro Ø10mm
429 z&nbsp;hmoty H22 (nízkofrekvenční hmota). Jádro se oparně přelomí
430 na 2 poloviny a mezi ně se vloží papírová samolepka. Pak se vnitřní
431 a vnější průměr jádra oblepí papírovou samolepkou aby drželo pohromadě.
432 Protože je hmota H22 elektricky vodivá slouží papír současně i jako
433 ochrana proti zkratu vinutí na ostrých hranách jádra. Je možné použít
434 i jádra E z&nbsp;budícího transformátoru ze spínaného zdroje pro PC nebo
435 z&nbsp;vyřazeného monitoru. Výhoda toroidu je jen v&nbsp;jeho o něco
436 menší váze.
437 </p>
438  
439 <p>
440 Vinutí se vine bifilárně (obě vinutí najednou) 2x70 závitů drátem
441 o Ø0.2mm. Při zapojování je třeba správně zapojit začátky a konce
442 vinutí (začátky jsou ve schématu označeny tečkou).
443 </p>
444  
445 <p>
446 Indukčnost vinutí volíme tak, aby při buzení PWM na úrovni cca 30% tekl
447 do měniče jmenovitý proud. Pokud teče proud moc malý je indukčnost
448 příliš velká a naopak. Současně zkontrolujeme dosaženou účinnost.
449 Pokud je menší než asi 75% je něco špatně (nevhodné jádro, malá nebo
450 žádná vzduchová mezera, mizerná výstupní dioda, málo sepnutý tranzistor
451 a podobně).
452 </p>
453  
454 <h3> Volba součástek </h3>
455  
456 <p>
457 <b>Tranzistor Q</b> – použijeme výkonový FET s&nbsp;prahovým napětím
458 cca 2V pro proud cca 5A. Takové tranzistory se vyskytují na mainboardech
459 (zejména notebooků) nebo v&nbsp;LiIon bateriích do mobilních telefonů
460 (tam bývají v&nbsp;nevhodných pouzdrech nebo bývají nevhodně zapojené).
461 V&nbsp;současné době se již dají vhodné dvojité tranzistory
462 v&nbsp;pouzdru SO8 koupit. Používáme tranzistory minimálně na 20V.
463 </p>
464  
465 <p>
466 <b>Dioda D</b> – použijeme Schottkyho diodu na cca 5A. Velmi pěkně
467 funguje SB540 ale je trochu větší než použitý SMD typ.
468 </p>
469  
470 <h2> Rozjezd </h2>
471  
472 <p>
473 Aby se co nejvíce pracně získané energie z&nbsp;akumulačního kondenzátoru
474 dostalo do motoru je třeba provádět plynulý rozjezd. Prosté připojení
475 motoru vede k&nbsp;nevalným výsledkům.
476 </p>
477  
478 <p>
479 <img width=236 height=185 src="Pictures/image017.gif"
480 alt="Principální zapojení rozjezdu">
481 </p>
482  
483 <p>
484 Rozjezd zajistíme postupným spínáním tranzistoru Q nejprve na kratičkou
485 dobu a postupně dobu sepnutí prodlužujeme až nakonec zůstane tranzistor
486 trvale sepnutý. K&nbsp;impulsnímu buzení používáme jednotku SSP
487 procesoru (synchronní komunikační jednotka), která umožňuje vysílat
488 sériově datová slova (8 bitů). Je tak snadné vysílat buď jen jednu
489 jedničku nebo až 7 jedniček.
490 </p>
491  
492 <p>
493 <img width=323 height=199 src="Pictures/image018.gif"
494 alt="Průběhy při rozjezdu">
495 </p>
496  
497 <p>
498 Dioda D je zde zásadně důležitou součástkou a bez ní to nejede.
499 Při sepnutí roste lineárně proud motorem (je to konec konců cívka) a
500 při rozpojení je potřeba, aby mohl proud téci i nadále. Jinak hrozí
501 proražení spínacího tranzistoru. Dioda umožňuje pokračovat proudu
502 motorem i po rozpojení tranzistoru. Proud tekoucí motorem je zdrojem
503 jeho „síly“, tedy točivého momentu.
504 </p>
505  
506 <p>
507 Jako optimální se jeví „řazení“ po 50 až 80ms. Opakovací frekvence
508 rozjezdu je cca 7KHz.
509 </p>
510  
511 <h1> Schéma </h1>
512  
513 <p>
514 <img width=642 height=783 src="Pictures/image019.gif"
515 alt="Celkové schéma">
516 </p>
517  
518 <p>
519 Zenerova dioda D1 chrání procesor před přepětím a přepólováním.
520 Zenerova dioda D4 chrání akumulační kondenzátor a spínací tranzistory
521 (oba) před příliš vysokým napětím.
522 </p>
523  
524 <p>
525 Odpory R2 a R4 zajišťují vypnutý klidový stav tranzistorů Q1A a Q1B.
526 Odpory R1 a R3 spolu s&nbsp;diodami D5 a D6 zajišťují ochranu procesoru
527 proti záporným špičkám od spínacích tranzistorů (způsobených
528 nezanedbatelnou kapacitou mezi D a G elektrodami výkonových FET
529 tranzistorů).
530 </p>
531  
532 <p>
533 Dioda D2 je výstupní diodou měniče a dioda D3 je ochrannou diodou obvodů
534 rozjezdu motoru. Pro zlepšení účinnosti je možné tyto diody buď vybrat
535 (minimální úbytek v&nbsp;propustném směru) nebo zdvojit.
536 </p>
537  
538 <p>
539 Kondenzátor C4 je akumulačním kondenzátorem. Je volen s&nbsp;ohledem
540 na optimální poměr množství uložené energie k&nbsp;jeho váze. Je
541 zajímavé, že kondenzátor 10G/10V je stejně velký (tedy nevýhodný).
542 Velikosti kondenzátorů se pravidelně zmenšují, je tedy třeba pořídit
543 kondenzátor co nejnovější.
544 </p>
545  
546 <p>
547 Procesor běží z&nbsp;vnitřního RC oscilátoru (na kmitočtu 4MHz).
548 Tlačítko SW1 umožňuje aktivovat jeho reset. Konektor J7 slouží
549 k&nbsp;programování procesoru. J5 je piezo element, který se používá pro
550 akustickou indikaci, že nastal reset.
551 </p>
552  
553 <p>
554 P1 a P2 slouží pro nastavování parametrů algoritmů. Jejich natočení
555 se čte pomocí AD převodníku. Přepínač SW2 slouží pro volbu jednoho ze
556 čtyř algoritmů. Odpory R8 a R9 zajišťují, že se při programování
557 procesoru nezkratují programovací vodiče na zem.
558 </p>
559  
560 <p>
561 Tranzistor Q2 slouží jako výstupní tranzistor sériové linky pomocí níž
562 procesor vysílá výstupní data (na jednoduchý terminál s&nbsp;dvouřádkovým
563 LCD displejem). Používá se při ladění. Zvolené řešení zajišťuje,
564 že připojený terminál (displej) nemá žádný vliv na spotřebu elektroniky.
565 </p>
566  
567 <p>
568 Pro zajištění optimálního napětí na slunečních článcích je třeba měřit
569 velikost napájecího napětí. Toho se docílí srovnáním napájecího napětí
570 a napětím na referenční diodě U2 na které je standardně 1.25V. Napájení
571 referenční diody se zapíná jen po dobu měření (z portu RA4 přes R7).
572 </p>
573  
574 <p>
575 Důležitou součástkou je C5. Bez tohoto kondenzátoru se může elektronika
576 dostat do naprosto nefunkčního stavu ze kterého se nedostane ani tlačítkem
577 reset. Mechanismus zaseknutí spočívá v&nbsp;tom, že pokud dojde
578 k&nbsp;poklesu napájení pod mez při které procesor přestává fungovat a je
579 současně PWM výstup ve stavu H zůstává klopný obvod PWM výstupu procesoru
580 ve stavu H (k&nbsp;udržení stavu mu stačí pár desetin voltů napájení)
581 a při případném nárůstu napájení se současně spíná tranzistor Q1A, který
582 tak vlastně vytváří zkrat na napájení. Napájecí napětí není schopno
583 překonat prahové napětí tranzistoru Q1A (cca 0.8V). Při takhle nízkém
584 napětí signál reset ještě nefunguje.
585 </p>
586  
587 <h1> Osazení a oživení </h1>
588  
589 <h2> Osazení </h2>
590  
591 <p>
592 Plošný spoj je třeba vyrobit z&nbsp;co nejtenčího materiálu aby byl lehký.
593 Poněkud obtížnější je jen připájení miniaturního tranzistoru Q1.
594 Piezo element je přilepen ze strany součástí pomocí mezikruží
595 z&nbsp;oboustranně lepicí samolepky. Pod piezo elementem se vyvrtá otvor
596 Ø2mm aby lépe zněl. Pozor na polaritu vinutí transformátoru.
597 </p>
598  
599 <p>
600 <img width=518 height=327 src="Pictures/image020.jpg"
601 alt="Osazovák, strana spojů">
602 </p>
603  
604 <p>
605 <img width=584 height=322 src="Pictures/image021.jpg"
606 alt="Osazovák, strana součástí">
607 </p>
608  
609 <table class="Soupiska">
610 <tr>
611 <th> Reference </th>
612 <th> Hodnota </th>
613 <th> &nbsp; </th>
614 <th> Reference </th>
615 <th> Hodnota </th>
616 </tr>
617 <tr>
618 <th colspan="2"> Odpory </th>
619 <th> &nbsp; </th>
620 <th colspan="2"> Tranzistory </th>
621 </tr>
622 <tr>
623 <td> R1,R3,R6 </td>
624 <td> 100 </td>
625 <td> </td>
626 <td> Q1 </td>
627 <td> IRF7301 </td>
628 </tr>
629 <tr>
630 <td> R10 </td>
631 <td> 220 </td>
632 <td> </td>
633 <td> Q2 </td>
634 <td> 2N7002SMD </td>
635 </tr>
636 <tr>
637 <td> R8,R9 </td>
638 <td> 1k </td>
639 <td> </td>
640 <th colspan="2"> Integrované obvody </th>
641 </tr>
642 <tr>
643 <td> R5,R7 </td>
644 <td> 10k </td>
645 <td> </td>
646 <td> U1 </td>
647 <td> PIC16F88/SO </td>
648 </tr>
649 <tr>
650 <td> R2,R4 </td>
651 <td> 100k </td>
652 <td> </td>
653 <td> U2 </td>
654 <td> LM385-1.2_SO8 </td>
655 </tr>
656 <tr>
657 <th colspan="2"> Odporové trimry </th>
658 <td> </td>
659 <th colspan="2"> Mechanické součástky </th>
660 </tr>
661 <tr>
662 <td> P1,P2 </td>
663 <td> 100k </td>
664 <td> </td>
665 <td> J1 </td>
666 <td> BAT </td>
667 </tr>
668 <tr>
669 <th colspan="2"> Keramické kondenzátory </th>
670 <td> </td>
671 <td> J2,J3,J6 </td>
672 <td> JUMP2 </td>
673 </tr>
674 <tr>
675 <td> C7,C8 </td>
676 <td> 10nF </td>
677 <td> </td>
678 <td> J4 </td>
679 <td> MOTOR </td>
680 </tr>
681 <tr>
682 <td> C5,C6 </td>
683 <td> 100nF </td>
684 <td> </td>
685 <td> J5 </td>
686 <td> PIEZO </td>
687 </tr>
688 <tr>
689 <td> C2,C3 </td>
690 <td> 4uF/16V </td>
691 <td> </td>
692 <td> J7 </td>
693 <td> PIC_ISP </td>
694 </tr>
695 <tr>
696 <th colspan=2> Elektrolytické kondenzátory </th>
697 <td> </td>
698 <td> SW1 </td>
699 <td> P-B1720 </td>
700 </tr>
701 <tr>
702 <td> C1 </td>
703 <td> 1000uF/6.3V </td>
704 <td> </td>
705 <td> SW2 </td>
706 <td> SMDSW2 </td>
707 </tr>
708 <tr>
709 <td> C4 </td>
710 <td> 10G/16V </td>
711 <td> </td>
712 <td> </td>
713 <td> </td>
714 </tr>
715 <tr>
716 <th colspan="2"> Indukčnosti </th>
717 <td> </td>
718 <td> </td>
719 <td> </td>
720 </tr>
721 <tr>
722 <td> TR1 </td>
723 <td> L-TR-1P1S_DOT </td>
724 <td> </td>
725 <td> </td>
726 <td> </td>
727 </tr>
728 <tr>
729 <th colspan="2"> Diody </th>
730 <td> </td>
731 <td> </td>
732 <td> </td>
733 </tr>
734 <tr>
735 <td> D1 </td>
736 <td> BZV55C5.6SMD </td>
737 <td> </td>
738 <td> </td>
739 <td> </td>
740 </tr>
741 <tr>
742 <td> D2,D3 </td>
743 <td> SK54ASMD </td>
744 <td> </td>
745 <td> </td>
746 <td> </td>
747 </tr>
748 <tr>
749 <td> D4 </td>
750 <td> BZV55C18SMD </td>
751 <td> </td>
752 <td> </td>
753 <td> </td>
754 </tr>
755 <tr>
756 <td> D5,D6 </td>
757 <td> BAT48SMD </td>
758 <td> </td>
759 <td> </td>
760 <td> </td>
761 </tr>
762 <tr>
763 <td> D7 </td>
764 <td> LED0805CERVENA </td>
765 <td> </td>
766 <td> </td>
767 <td> </td>
768 </tr>
769 </table>
770  
771 <h2> Oživení </h2>
772  
773 <p>
774 Po naprogramování by měl procesor po každém resetu pípnout.
775 Při oživování se používají testovací algoritmy programového vybavení.
776 Na výstup RS232 je vhodné připojit pomocný terminál tvořený procesorem
777 PIC s&nbsp;dvouřádkovým LCD displejem. Dále jsou k&nbsp;oživování
778 nezbytné běžné multimetry (současné měření vstupního napětí a proudu
779 a výstupního napětí na definované zátěži) a&nbsp;laboratorní zdroj.
780 Velmi užitečným nástrojem je též osciloskop pro kontrolu průběhů.
781 </p>
782  
783 <p>
784 Při napájení z&nbsp;laboratorního zdroje je třeba omezit napájecí proud.
785 Zejména algoritmy 0 a 3, které se snaží udržet definované napětí
786 na slunečních článcích mohou vést k&nbsp;přetížení měniče (spálení cívky
787 nebo tranzistoru).
788 </p>
789  
790 <h1> LCD terminál </h1>
791  
792 <p>
793 LCD terminál se připojuje na konektor J6 elektroniky a průběžně
794 zobrazuje to, co elektronika posílá po sérovém kanále. Terminál lze
795 snadno sestavit z&nbsp;procesorového modulu s&nbsp;procesorem PIC16F84
796 a z&nbsp;modulu s&nbsp;dvouřádkovým LCD displejem. Po překladu programu
797 terminálu lze samozřejmě použít i jiný procesor.
798 </p>
799  
800 <p>
801 Komunikační rychlost je 9600Bd bez potvrzování přenosu, 8 datových bitů,
802 1 stop bit, polarita inverzní (nastavuje se ve zdrojovém kódu).
803 </p>
804  
805 <p>
203 miho 806 <img width=642 height=316 src="Pictures/image022.gif"
807 alt="Schéma terminálu">
193 miho 808 </p>
809  
810 <p>
811 Připojení LCD displeje shrnuje následující přehled:
812 </p>
813  
814 <table>
815 <tr>
816 <td> RB4 </td>
817 <td> LCD_DB4 </td>
818 </tr>
819 <tr>
820 <td> RB5 </td>
821 <td> LCD_DB5 </td>
822 </tr>
823 <tr>
824 <td> RB6 </td>
825 <td> LCD_DB6 </td>
826 </tr>
827 <tr>
828 <td> RB7 </td>
829 <td> LCD_DB7 </td>
830 </tr>
831 <tr>
832 <td> RA0 </td>
833 <td> LCD_RS </td>
834 </tr>
835 <tr>
836 <td> RA1 </td>
837 <td> LCD_E </td>
838 </tr>
839 <tr>
840 <td> GND </td>
841 <td> LCD_RW </td>
842 </tr>
843 <tr>
844 <td> RB1 </td>
845 <td> RS232_IN </td>
846 </tr>
847 </table>
848  
849 <h1> Programové vybavení </h1>
850  
851 <p>
852 Verze 1.01.
853 </p>
854  
855 <h2> Uživatelský návod </h2>
856  
857 <p>
858 Programové vybavení má implementovány 4 algoritmy, které se volí stavem
859 dvojitého přepínače&nbsp;SW2.
860 </p>
861  
862 <h3> Algoritmus 0 – standardní jízda</h3>
863  
864 <p>
865 Po resetu 14.5s akumuluje energii do kondenzátoru a poté provede rozjezd.
866 Hlavní měnič a algoritmus optimalizace zátěže slunečních článků běží
867 po celou dobu běhu programu. Pomocí P1 se nastavuje požadovaná velikost
868 napětí na slunečních článcích a pomocí P2 se nastavuje rychlost rozjezdu.
869 </p>
870  
871 <h3> Algoritmus 1 – test PWM měniče a měniče pro rozjezd </h3>
872  
873 <p>
874 Pomocí P1 se nastavuje šířka PWM impulsů hlavního měniče. Je vhodné
875 napájení z&nbsp;regulovatelného zdroje (s proudovým omezením na cca
876 0.5A). Účinnost se určuje ze vstupního napětí a proudu a z&nbsp;napětí
877 na zatěžovacím odporu 100Ω na výstupu (konektor J3). P2 musí být
878 nastaven na 0 nebo musí být odpojen motor.
879 </p>
880  
881 <p>
882 Šířka impulsů spínače motoru se nastavuje pomocí P2. P1 se nastavuje
883 na 0 a na J3 se přivádí pomocné napájecí napětí (5 až 16V). Při šířce
884 impulsů 1 (nastaveno pomocí P2) by mělo vozítko pomalu jet při napětí
885 pomocného zdroje 16V.
886 </p>
887  
888 <h3> Algoritmus 2 – test rozjezdu </h3>
889  
890 <p>
891 Tento algoritmus po resetu počká 2s a pak provede standardní rozjezd
892 motoru. Po 2s motor opět odpojí. Pomocí P2 se nastavuje prodleva mezi
893 stupni řazení. Optimální hodnota bývá mezi 50 a 80ms (není kritické).
894 Test rozjezdu se provádí tak, že se přes J3 nabije akumulační kondenzátor
895 na požadované napětí, poté se pomocný zdroj odpojí a provede se start
896 (pomocí tlačítka reset). Měří se buď délka dráhy nebo čas projetí fixní
897 dráhy. Hlavní střídač při tomto testu neběží. Algoritmus 0 používá
898 stejné nastavení P2.
899 </p>
900  
901 <h3> Algoritmus 3 – test optimalizace nabíjení </h3>
902  
903 <p>
904 Tento algoritmus slouží k&nbsp;ověření algoritmu optimalizace výkonu
905 ze slunečních článků. Pomocí P1 se nastavuje požadovaná hodnota napětí
906 na solárních článcích tak, aby na zátěži 100Ω na výstupu (konektor J3)
907 bylo maximální napětí. Algoritmus 0 používá stejné nastavení P1.
908 </p>
909  
910 <h2> Architektura programu </h2>
911  
912 <p>
913 Procesor běží z&nbsp;vnitřního generátoru hodin 4MHz. Má povolen
914 <span lang="en">watch dog</span> a výstup PWM má nastaven na port RB3.
915 </p>
916  
917 <p>
918 Pro vysílání dat do pomocného terminálu používá HW podporu
919 (jednotka USART). Nepoužívá se zde přerušení, je-li třeba vyslat více
920 znaků za sebou procedura pro vysílání znaků <samp>Putc()</samp> čeká
921 dokud není vyslán předchozí znak. Počáteční inicializaci sériového
922 kanálu zajišťuje procedura <samp>InitRS232()</samp>. Rychlost
923 je nastavena na 9600Bd.
924 </p>
925  
926 <p>
927 Pro pozvolný rozjezd motoru se používá jednotka sériové synchronní
928 komunikace SSP, která umožňuje HW prostředky vyslat sérově zadaná data.
929 Pro postupný rozjezd se nejprve vysílají data obsahující 1 jedničku
930 a postupně se ve vysílaném (osmibitovém) slově zvětšuje počet jedniček
931 až na 7. Poté se jednotka SSP deaktivuje a na příslušnou výstupní nožičku
932 je nastaven stav trvalé jednotky.
933 </p>
934  
935 <p>
936 Jednotka SSP po vyslání 1 bajtu dat vyvolá přerušení jehož obsluha zapíše
937 další bajt do SSP pro vyslání. Jaký bajt se opakovaně vysílá je určeno
938 „převodovým stupněm“ při rozjezdu. Obsluhu přerušení zajišťuje procedura
939 <samp>IntSSP()</samp>, data pro opakované vysílání jsou uložena
940 v&nbsp;globální proměnné <samp>MotorPattern</samp>. Hodnota do této
941 proměnné se nastavuje pomocí procedury <samp>MotorPatternSet()</samp>,
942 která ze zadaného „rychlostního stupně“ vyrobí slovo s&nbsp;příslušným
943 počtem jedniček. Klidový stav („neutrál“) a plný výkon se neobsluhují
944 pomocí SSP protože jsou zajištěny trvalým stavem 0 nebo 1 na portu
945 pro ovládání motoru.
946 </p>
947  
948 <p>
949 Procedura MotorSet() zajišťuje nastavení zadaného rychlostního stupně
950 a povolí přerušení od jednotky SSP. Tato procedura se volá z&nbsp;hlavního
951 programu pro rozjezd.
952 </p>
953  
954 <p class=MsoNormal>Pro měření času pro akumulaci a pro „řazení“ při rozjezdu
955 se používá časovač T0, který je nastaven na přerušení každou cca 1ms
956 (asi 1000x za sekundu). Obsluhu přerušení od časovače zajišťuje procedura
957 <samp>IntT0()</samp>.
958 </p>
959  
960 <p>
961 Pro odměřování uplynutí časového intervalu se používá procedura
962 <samp>TimerSet()</samp> a pro testování zda již nastavený čas uplynul
963 se používá funkce <samp>TimerIf()</samp>.
964 </p>
965  
966 <p>
967 Automatický rozjezd motoru se zahajuje voláním procedury
968 <samp>MotorStart()</samp>, která nastaví příslušné proměnné, které slouží
969 pro řízení rozjezdu. Vlastní řízení rozjezdu se provádí v&nbsp;proceduře
970 <samp>IntT0()</samp>, tedy v&nbsp;obsluze přerušení od časovače T0.
971 Podstatným parametrem rozjezdu je časový interval mezi řazením rychlostních
972 stupňů. Tento parametr se ukládá do globální proměnné <samp>MotorDelay</samp>.
973 Proměnná <samp>MotorGear</samp> a <samp>MotorTime</samp> obsahují aktuální
974 rychlostní stupeň (1 je nejméně) a čas(v ms), který ještě zbývá než se bude
975 řadit další rychlost.
976 </p>
977  
978 <p>
979 Funkce <samp>ReadAD()</samp> zajišťuje změření napětí na zadaném vstupu
980 AD převodníku. Výstupem je hodnota 8 bitů (0 až 255). Kanál 0 a 1 měří
981 natočení běžce trimru P1 a P2, kanál 4 měří napětí na referenční diodě
982 U2 (v tomto případě se před měřením připojuje napájení na referenční diodu
983 a po ukončení měření se odpojuje).
984 </p>
985  
986 <h3> Hlavní program </h3>
987  
988 <p>
989 Hlavní program sestává z&nbsp;inicializační části, která se provádí
990 jen jednou, poté otestuje stav přepínačů režimu činnosti a podle jejich
991 nastavení spustí jeden ze 4 výkonných algoritmů.
992 </p>
993  
994 <p>
995 Inicializace sestává z&nbsp;těchto činností:
996 </p>
997  
998 <ul>
999 <li>Nastavení rychlosti interního generátoru na 4MHz</li>
1000 <li>Nastavení se klidové hodnoty na výstupních portech</li>
1001 <li>Nastavení <span lang="en">watch dog</span> na 130ms</li>
1002 <li>Povolení analogových vstupů na AN0 až AN4, ostatní jsou digitální</li>
1003 <li>Inicializace RS232</li>
1004 <li>Pípnutí na piezo element</li>
1005 <li>Přečtení stavu přepínače pro volbu režimu činnosti a výpis na LCD</li>
1006 <li>Inicializace PWM výstupu (perioda 32us, rozlišení 1us, výstup na 5 bitů)</li>
1007 <li>Inicializace časovače T0 (přerušení po cca 1ms)</li>
1008 <li>Načtení parametru P2 (časová prodleva mezi stupni řazení při rozjezdu)</li>
1009 </ul>
1010  
1011 <p>
1012 Algoritmus optimalizace zátěže slunečních článků pracuje tak, že se přečte
1013 z&nbsp;P1 (AD převodníkem na kanálu 1) požadovaná hodnota, která
1014 se následně porovnává se skutečnou hodnotou změřeného napětí referenční
1015 diody (napětí na referenční diodě je vždy 1,25V ale změřená hodnota odráží
1016 skutečnost, že číslu 255 odpovídá plné napájecí napětí procesoru, tedy
1017 napětí na slunečních článcích). Pokud je číslo menší, znamená to, že
1018 napájecí napětí je větší než požadované a je možno zvýšit výkon měniče.
1019 Zvýší se tedy délka PWM impulsu. V&nbsp;opačném případě se délka impulsu
1020 snižuje (až na nulu). Maximální hodnota délky PWM impulsu je omezena
1021 na 24us protože při připojení tvrdého napájecího zdroje (například
1022 při programování procesoru) by se regulace snažila snížit napájecí
1023 napětí na optimálních 2.5 až 3V což nejde (nakonec by tranzistor měniče
1024 trvale sepnul).
1025 </p>
1026  
1027 <h2> Terminál </h2>
1028  
1029 <p>
1030 Program úvodem vypíše verzi na LCD displeji a poté začne přijímat data
1031 ze sériového kanálu. Příjem je zahájen start bitem na INT0 vstupu.
1032 Start bit vyvolá přerušení, během kterého je programově přečten 1 znak
1033 a vložen do fronty přijatých znaků (až 40znaků).
1034 </p>
1035  
1036 <p>
1037 Hlavní smyčka pouze opakovaně testuje, zda je nějaký znak ve frontě znaků
1038 a v&nbsp;případě že tam je tak jej zpracuje (zobrazí).
1039 Program podporuje následující řídící znaky:
1040 </p>
1041  
1042 <ul>
1043 <li><samp>0x0C</samp> = <samp>\f</samp> – smazání displeje</li>
1044 <li><samp>0x0A</samp> = <samp>\n</samp> – přechod na druhou řádku displeje</li>
1045 <li><samp>0x0D</samp> = <samp>\r</samp> – přechod do pozice 1,1</li>
1046 <li><samp>0x08</samp> = <samp>\b</samp> – <span lang="en">back space</span></li>
1047 </ul>
1048  
1049 </div>
1050  
1051 <!-- AUTOINCLUDE START "Page/Footer.cs.ihtml" DO NOT REMOVE -->
1052 <!-- ============== PATIČKA ============== -->
1053 <div class="Footer">
1054 <script type="text/javascript">
1055 <!--
1056 SetRelativePath("../../../../");
1057 DrawFooter();
1058 // -->
1059 </script>
1060 <noscript>
1061 <p><b> Pro zobrazení (vložení) hlavičky je potřeba JavaScript </b></p>
1062 </noscript>
1063 </div>
1064 <!-- AUTOINCLUDE END -->
1065  
1066 </body>
1067 </html>