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