• No results found

Schéma zapojení motorku

In document Zadání bakalářské práce (Page 27-33)

2 Nová řídící jednotka

Zatímco jsem se v kapitole Původní řídící jednotka věnoval popisu původní řídící jednotky, tak v této části bych se chtěl zaměřit na požadavky na novou jednotku, výběru vhodných součástek, návrhu schéma, návrhu desky plošných spojů a nakonec popisu nové jednotky.

2.1 Požadavky

Při používání stavebnice ROBOROBO během kroužku dětské robotiky vedlo k ana-lyzování všech nedostatků této stavebnice. Všechny tyto nedostatky jsem sepsal a v návrhu nové řídící jednotky se je pokusil vyřešit. V této části práce bych Vás chtěl seznámit s mými představami ohledně nové jednotky.

Nová řídící jednotka bude napájena čtyřmi AA bateriemi, stejně jak tomu bylo u staré. Vzhledem k velké spotřebě staré řídící jednotky i když byla jednotka vypnu-tá,jsme museli baterie mezi jednotlivými lekcemi z řídící jednotky vyndávat, což se negativně projevilo na krytu baterii, u kterého došlo k poškození dvířek, na nichž se ulámaly západky. Z tohoto důvodu bych chtěl, aby jednotka byla co nejvíce ener-geticky nenáročná. Hlavně v režimu spánku, ve kterém se nachází řídící jednotka nejvíce času.

Spotřeba řídící jednotky se při běžném použití může pohybovat mezi asi 60mA až 380mA při zapojení a spuštění čtyřech modulů se stejnosměrnými motorky. Tato spotřeba samozřejmě závisí na konkrétní lekci a použitých modulech. Budu-li brát v potaz tuto maximální spotřebu a řídící jednotku budu napájet kvalitními akumu-látory o kapacitě 1900mAh, měla by mi řídící jednotka teoreticky vydržet v provozu asi 5 hodin. Bohužel tento výpočet je pouze teoretický a v reálné situaci se může dost lišit. Na původní jednotce zcela chybí signalizace stavu nabití baterií, díky čemuž jsem nikdy přesně nedovedl určit, kdy dojde k jejich vybití a tím pádem k přerušení lekce. Tento problém jsem řešil pravidelným dobíjením napájecích tužkových bate-rií před každou druhou lekcí, což se mohlo negativně projevit na jejich životnosti, respektive jejich kapacitě. Lekce trvají asi 70 minut a z toho je řídící jednotka v pro-vozu maximálně polovinu tohoto času. Takže jsem měl téměř 99 procentní jistotu, že se baterie nevybijí.

Z tohoto důvodu vychází další návrh k úpravě, a to nahrazení špatně vymyšlené uživatelské rozhraní. Na původní řídící jednotce chybí rozhraní, které by uživateli dávalo zpětnou vazbu. Tímto rozhraním myslím displej, který by byl umístěn na řídící jednotce a zobrazoval několik základních věcí. Mezi tyto základní věci řadím:

název a číslo vybrané lekce, stav baterie a aktuální režim jednotky.

Vzhledem k naprosto nelogickému uživatelskému rozhraní, byla práce s jednot-kou celkem složitá. Proto si myslím, že přidaný displej tuto práci s jednotjednot-kou značně ulehčí. Stavebnice ROBOROBO je určena pro žáky prvního stupně základních škol, kterým se programování lekce muselo často opakovat a řešit problémy s programo-váním. Vzhledem k tomu, že už většina těchto žáků umí číst, budou moci novou jednotku s displejem bez problémů ovládat sami.

Jako další požadavek na řídící jednotku byl automatické uspávání. Toto opatření by mohlo ušetřit dost energie v napájecích bateriích. V praxi by se mělo jednat o čistě softwarové opatření. U tohoto opatření nastal požadavek na automatické varování pomocí bzučáku integrovaného na řídící jednotce. Toto varování by se mělo rozeznít po určitém čase. Jedno pípnutí by znamenalo první varování. Druhé varování by naznačilo dvě pípnutí. Při ignorování těchto varování by se jednotka sama vypnula.

Nové ovládání řídící jednotky by mělo být rozděleno na dva režimy, a to režim administrátora a režim uživatele. Do režimu administrátora by se měli dostat pouze pověřené osoby. V tomto režimu bude moct pověřená osoba vybrat výukovou lekci.

Tato lekce se bude skládat ze čtyřech úloh, které se budou vybírat v uživatelském módu.

2.2 Výběr mikropočítače

Této části realizace předcházel výběr ostatních komponentů a několik verzí schémat.

Po analyzování vhodných komponent a základního zapojení mohlo dojít k vyhledá-vání vhodného mikropočítače. Tento mikropočítač musel splňovat několik kritérií na které jsem se rozhodl podívat v této kapitole.

Kvůli požadavkům na nízkou spotřebu a zachováním původních rozměrů řídí-cí desky se musel vybrat displej, který splňuje tyto kritéria a zároveň je snadno ovladatelný. Rozhodli jsme se vybrat displej moderní technologie OLED, u kterého je nesporná výhoda oproti ostatním displejům v úspornosti. Také rozměry těchto displejů jsou velmi výhodné pro použití v nové řídící jednotce. Nakonec tedy padla volba na grafický OLED displej o uhlopříčce 0,91palců a rozlišení 128x32 pixelů.

O ovládání tohoto displeje se stará integrovaný obvod SSD1306. Tento obvod je integrován přímo do displeje. Komunikace mezi OLED displejem a mikropočítačem probíhá přes sériovou linku využívající rozhraní SPI. Proto jeden z dalších požadav-ků byl procesor obsahující komunikační rozhraní SPI.

K řízení směru otáčení a řízení rychlosti stejnosměrného motorku jsem se rozhodl zachovat původní integrovaný obvod LB1836. Jak jsem již zmiňoval, řízení tohoto obvodu probíhá pomocí PWM modulace. Aby byl tento integrovaný obvod co neje-fektněji řízen, bylo zapotřebí, aby nový mikropočítač měl obsaženy PWM výstupní porty.

Nový mikropočítač by měl také mít dostatek časovačů pro jednotlivé periferie.

Pro řízení všech periferii je potřeba celkem pět časovačů. Dále je k těmto časovačům potřeba přičíst šestý časovač sloužící automatickému vypínání řídící jednotky, který bude měřit čas nečinnosti řídící jednotky a následně řídící jednotku uvede do režimu

spánku.

Kvůli vstupním modulům je potřeba snímat analogové hodnoty na vstupech mi-kropočítače. Dále je potřeba měřit zbývající napětí tužkových AA baterií. Pomocí tohoto měření se bude vypočítávat zbývající kapacita tužkových baterií, a tudíž se uživatel vždy v čas dozví, za jak dlouho bude muset baterie vyměnit, případně dobít. K měření analogových hodnot pomocí mikropočítače se využívá A/D převod-ník, který převádí vstupní analogovou hodnotu na digitální a následně ji může dále zpracovávat. Tyto A/D převodníky v dnešní době obsahuje každý mikropočítač.

Mezi zapojení těchto převodníků se mohou vyskytnout drobné rozdíly, a to třeba, že u některých mikropočítačů se využívá jeden A/D převodník na několik portů a u jiných může mít každý port svůj vlastní převodník. Tato konstrukce na moje zapojení nemá vliv. Je pouze potřeba aby mikropočítač měl dostatek těchto pinů s A/D převodníkem. Analogových vstupů je celkem zapotřebí pět.

Na ovládání řídící jednotky se využívají celkem čtyři tlačítka. Tyto tlačítka jsou přivedena na digitální vstup mikropočítače, ve kterém je detekována změna digi-tálních úrovní. Aby tato změna byla bez problémů detekována je zapotřebí využít pull-up rezistorů. Tyto rezistory přivedou na vstup mikropočítače napětí, avšak díky jejich vysoké hodnotě (v řádech kilo ohmů) je omezen proud, a proto je toto napětí dosti měkké. Některé nové mikropočítače mají tyto pull-up rezistory integrovány a pomocí softwaru se dají aktivovat. Je celkem dobrá funkce, která trochu ulehčí návrh a přehlednost schématu. Dále byla potřeba, aby na mikropočítači nastavit probuzení z režimu spánku pomocí některých pinů.

Protože nová jednotka bude obsahovat OLED displej bylo potřeba najít vhod-ný mikropočítač, který bude dostatečně rychlý, aby bez problémů zvládal zapisovat na displej. Rychlost mikropočítače závisí na taktovací frekvenci interního osciláto-ru. Během testů řízení displeje se ukázalo jako kompromis frekvence mikropočítače 16 MHz. Při použití frekvence 8MHz nastával problém nestíhajícího překreslování displeje, což se projevilo nepříjemným poblikáváním displeje. Při použití taktovací frekvence 32MHz se tato vysoká frekvence nepříznivě projevila na spotřebě.

Mezi další kritéria patří velikost mikropočítače a dostatečný počet vstup-ně/výstupních portů. U výběru mikropočítače hrálo taky roli to, aby se dala nová řídící jednotka osadit bez větších problémů ve škole a nemuselo se využít větších firem zabývajících se tímto problémem. Z tohoto důvodu bylo vybráno pouzdro TQ-FP, které splňuje všechny požadavky. Pouzdro TQFP je malé, všechny vývody jsou vyvedeny na okraje pouzdra, a dají se bez větších problémů pájet na DPS. Zároveň všechny mikroprocesory s tímto pouzdrem obsahují dostatečný počet pinů k realizaci nové řídící jednotky. nabíjecích tužkových baterií je jmenovité napájecí napětí jen 4,8 V. Při použití

low-drop napěťového stabilizátoru je potřeba napájecí napětí alespoň 5,3 V, proto by byl stabilizátor nepoužitelný a musel se zde použít DC/DC měnič k dosažení úrovně 5 V. Tento důvod mě utvrdil k použití 3,3 V.

V zadání bylo také napsáno, že je potřeba vybrat mikropočítač od firmy Mi-chrochip z modelové řady PIC18. Díky výše uvedeným kritériím jsem se rozhodl vybrat konkrétně mikropočítač PIC18F87K22. Jedná se o mikropočítač s 8 bito-vou architekturou, který všechny požadavky s přehledem splňuje a některé dokonce překonává.

2.3 Návrh schéma nové řídící jednotky

Při návrhu nové řídící jednotky jsem se snažil odstranit všechny výše zmíněné nedo-statky a zároveň jsem se snažil dalším případným nedostatkům předcházet. Novou řídící jednotku jsem navrhoval podle zapojení té původní s rozdíly, řešící již zmíněné nedostatky. Jako hlavní kritérium nové řídící jednotky je zpětná kompatibilita se vstupně/výstupními moduly. Vzhledem ke změně celé koncepce programování nové řídící jednotky, u kterého se již nepočítá se čtečkou čárkových kódů, byl ušetřen jeden konektor R/W, který již na nové jednotce nebyl potřeba. Tohoto volného ko-nektoru jsem se rozhodl využít a pomocí něj rozšířit vstupní rozhraní na celkem čtyři vstupní porty. Tím pádem bude stejně vstupních jako výstupních portů.

Novou řídící jednotku budou napájet stejně jako starou čtyři tužkové nabíjecí baterie. Rozhodl jsem se v návrhu schéma nové jednotky využít dvě napěťové úrov-ně. První napěťová úroveň je přímo výstup z baterií a bude se starat o napájení pomocných LED diod pod konektory a dále budou sloužit k napájení H-můstků.

Tato úroveň byla hlavně zvolena z důvodu většího odběru stejnosměrných motor-ků. Pokud by byly stejnosměrné motorky napájeny přes stabilizátor, tak vzhledem k odběru motorků by docházelo ke zbytečným ztrátám na stabilizátoru. Napájecí úroveň baterií bude kolísat v závislosti na nabití baterií, a to v rozmezí od 5,3 V až do hranice 4,5 V, což je minimální napětí akumulátorů, při kterém ještě nedojde k poškození článků a zároveň je to hranice, při které ještě články zvládají stejno-směrným motorkům dodat potřebný proud. Při tomto napětí dojde ke zvukovému varování a zároveň i k varování na displeji, po chvilce bude jednotka uvedena do režimu spánku.

Druhá napájecí úroveň bude pevných 3,3 V, o kterou se bude starat napěťo-vý stabilizátor, který bude stabilizovat hodnotu napětí z baterií. Tuto hranici jsem zvolil především kvůli modulu bezdrátové komunikace RFM73, který je na toto na-pájecí napětí stavěný. Mikroprocesor je možné napájet napětím v rozmezí 1,8 V až 5,5 V, takže napětí 3,3V je v půlce doporučeného napájecího napětí, což je ideál-ní. Zároveň toto napětí zabezpečuje správnou funkci napěťového stabilizátoru i při maximálně vybitých baterií. Tato napěťová úroveň jednotce bude sloužit k napájení mikropočítače, displeje a modulu RFM73.

2.3.1 Vstupní porty

Jako hlavní kritérium na výstupní porty byla zpětná kompatibilita s původním řídící jednotkou a také s původními vstupně/výstupními moduly. Druhým kritériem bylo upravit původní zapojení tak, aby se dosáhlo nějaké té úspory energie. Nové vstupy byly upraveny podle těchto podmínek.

U původní řídící jednotky bylo na vstupním konektoru RJ12 na prvním pinu přivedeno napětí z pomocného stabilizátoru. V režimu spánku toto napětí sice bylo odpojované od baterie, ale celkem nešťastným způsobem, který vůbec nebyl ideální.

Z tohoto důvodu jsem se rozhodl vyřešit tento problém. Řešení spočívá v odpojování napájecí větve od baterií pomocí unipolárního tranzistoru. O řízení tohoto tranzisto-ru se bude starat mikropočítač. Pokud bude mikropočítač uveden do režimu spánku, na pinu spínající tranzistor dojde k přepnutí logické úrovně na logickou „0“ a tím k uzavření tranzistoru, který spolehlivě odpojí první pin vstupního konektoru od napětí. Tímto řešením by mělo dojít k poklesu spotřeby elektrické energie.

Druhý pin vstupního konektoru slouží k získávání informací od vstupních čidel.

V původním zapojení vedl druhý pin konektoru na dva piny mikropočítače. Jeden pin sloužil nejspíše jako digitální vstup a druhý jako analogový vstup. V programech jednotlivých lekcí bylo určeno, který pin v příslušné lekci bude použit. Toto řešení se mi zdálo velmi nepraktické a vzhledem k tomu, že vstupní rozhraní budou v nové realizaci celkem čtyři, bylo by na nové řídící jednotce zabráno celkem osm pinů mikropočítače, což je hodně, když to jde vyřešit pouze se čtyřmi. Z tohoto důvodu se rozhodlo o zapojení pouze na analogový vstup přes napěťový dělič s poměrem 6/10.

Dělič napětí musel být použit vzhledem k rozdílné napájecí hladině mikrokont-roléru a napájecím napětím vstupních modulů. Bez použití tohoto děliče by došlo k poškození A/D převodníku uvnitř mikropočítače, co by v nejhorším případě mohlo vést ke spálení celého mikropočítače. Důvod tohoto možného poškození je následují-cí: Analogový vstup má toleranci vstupního napětí napájecí napětí + 0,5 V, v našem případě se tedy jedná o maximální vstupní napětí 3,8 V. Při použití tlačítka a plně nabitých baterii by došlo k překročení maximálního napětí 1,4 V. Toto překroče-ní napětí by způsobilo rozdíl napěťových hladin v převodpřekroče-níku a vyrovnávací proud v A/D převodníku by A/D převodník zajisté poškodil.

Správné navržení děliče bylo potřeba ke správné funkci A/D převodníku. Pokud by byl poměr moc malý, došlo by k překročení maximálního napětí na vstupu. Na-opak kdyby byl poměr moc velký nemusel by mikropočítač správně vyhodnocovat změny napětí na vstupu. Dále bylo v návrhu potřeba počítat s jistou tolerancí re-zistorů v děliči a možností lehkého přebití baterií. Kvůli možnosti většího napětí na bateriích jsem chtěl zachovat toleranci analogového vstupu mikropočítače. Pomocí jednoduchého výpočtu jsem se dostal na již zmiňovaný poměr 6/10. Tento poměr zaručuje správné vyhodnocování změny napětí na výstupu z čidla odrazu a z akus-tického čidla, u kterých se výstupní napěťová hladina pohybuje okolo 2 V.

Výše zmíněné řešení díky použití 12bitového převodníku přivedlo několik výhod.

První výhoda tohoto řešení je zajisté ušetření čtyřech pinů. Tyto piny navíc by při programování způsobily větší složitost výsledného programu, vzhledem k tomu, že

bych musel řešit jaký pin mám v daném případě použít. Druhá výhoda spočívá po-užitím 12bitového A/D převodníku, díky kterému se zvýšila citlivost u čidla odrazu a akustického čidla.

Třetí pin je připojen na PWM výstup z mikropočítače. Pomocí tohoto PWM signálu je spínána IR LED dioda v čidle odrazu. Toto spínání je určeno k lepšímu vyhodnocování výstupního signálu z odrazového čidla. Díky blikání LED diody v či-dle se dá vyhodnotit, jestli signál od fototranzistoru přijatý mikropočítačem je signál z LED diody, nebo od nějakého rušení. Rušení může způsobovat infračervená složka světla, tato složka světla je obsažena ve slunečních paprscích a v zářivkovém světle.

Teoreticky je možné ze zpoždění signálu vyhodnotit vzdálenost tělesa od kterého se světlo odrazilo od čidla. Čtvrtý a pátý pin je mezi všemi konektory propojen a tyto piny jsou přivedeny digitální vstupy/výstupy mikropočítače. Tyto dva piny byly pů-vodně určeny pro bezdrátovou komunikaci, ale nakonec byla bezdrátová komunikace integrována na novou řídící jednotku a tím pádem jsou zatím tyto piny nevyužity.

Ale díky této přípravě se snad v budoucnu využijí třeba s novým vstupním modulem.

Šestý pin je stejně jako v původním zapojení přiveden na GND.

In document Zadání bakalářské práce (Page 27-33)

Related documents