Samostatné práce

Z MAM wiki

Přejít na: navigace, hledání

Samostatné práce budou poměrně náročné. Může vám s nimi ale pomoci úplně kdokoli, budou totiž vypracovány přímo zde na wiki. Představujeme si je spíše jako zajímavé, stále se rozvíjející opensource projekty než jako kryptické úlohy, ke kterým ti štastnější najdou osvědčená řešení od kolegů z předchozích let.

Opisovat je tedy povoleno, ba dokonce může většinu vaší práce napsat někdo úplně jiný než vy. Když ovšem promyslíte skutečné důsledky tohoto ďábelského plánu pedagogů, zjistíte, že jediný skutečný rozdíl oproti jiným předmětům je v tom, že zde na wiki je průběžně dokumentováno, kdo kdy co udělal, a podle toho bude také vaše práce hodnocena :-)

Využití veškerých dostupných zdrojů je tedy vítáno, je ovšem slušné všechny zdroje citovat. Stejně tak je vítána jakákoli spolupráce.

Každá samostatná práce začne jako stránka zde na wiki, na které se budou postupně shromažďovat odkazy na zdroje, nápady, rady kolegů, odkazy na souběžné související projekty atd., až nakonec tu bude fungující a dobře dokumentovaný program...


Návrhy na témata

Toto je zatím pracovní text, který obsahuje návrhy témat na samostatné práce.

  • Návod pro úplného začátečníka, jak vytvořit program v céčku pro ATmega168. Výsledkem by měla být šablona zdrojového kódu main.c, kterou lze použít při založení jakéhokoliv nového projektu. Kód by měl obsahovat konfigurační část, kde si programátor nadefinuje různé konstanty, např. frekvenci mikrokontroléru, vstupy/výstupy, obsluhu přerušení a časovačů atd., a inicializační část, např. funkce init(), která konfiguraci provede.
  • Desky plošných spojů pro připojení ATmega168 a ATtiny15 k programátoru AVR Dragon. Na desce by mělo být vyřešeno napájení včetně blokování a filtrace pro analogovou část mikrokontroléru, dále připojení programovacích signálů a možnost využití programovacích vývodů i pro jiné účely. Celá deska o šířce 40-pinového pouzdra DIL (délka může být menší) by umožňovala zasunutí do nepájivého kontaktního pole pro připojení dalších obvodů. Výsledkem by mělo být schéma a návrh desky v programu Eagle. Ačkoliv se tato úloha zdá velmi jednoduchá, vyžaduje určité zkušenosti s návrhem desek plošných spojů.
  • Třída funkcí pro ovládání LED displeje. Součástí konfigurace by byla volba, zda je displej statický, nebo dynamický (multiplexovaný). V případě statického displeje lze použít např. posuvné registry 74HCT595. Počet sedmisegmentovek by byl obecný. Do budoucna by bylo možné projekt rozšířit také na alfanumerické znaky (např. 14-segmentovky), funkce pro blikání, rotaci textu atd.
  • Třída funkcí pro ovládání znakového LCD displeje. Počet řádků a sloupců by byl konfigurovatelný, i když třeba ne úplně obecný - podle vyráběných typů.
  • Třída funkcí pro ovládání grafického LCD displeje. Můžete vymyslet funkce pro kreslení čar, oblouků a následně pěkných okének s textem, výpisy znaků různých velikostí fontů, řezů, s diakritikou, ...
  • Třída funkcí pro ovládání krokových motorů. Cílem by mělo být vytvoření třídy funkcí, přičemž každý připojený motor by byl jednou z "instancí" třídy jako datová struktura. Bylo by možné nastavit cílovou polohu, rychlost pohybu a směr. Dále by bylo možné tuto třídu rozšířit o zpracování zpětných vazeb (motor dostal příkaz k pohybu, ale musí se zkontrolovat, zda se skutečně pohnul) a krajních poloh. Krokové motory v rozumném množství můžeme pro testovací účely poskytnout.
  • Opensource projekt MIDI slučovače s obecným počtem vstupů a jedním výstupem. Další informace pro případné zájemce může podat cvičící Robert Krejčí.
  • Opensource projekt hardwarového řešení CNC frézky, která komunikuje s programem Mach3 (zdarma k vyzkoušení). Komunikace probíhá přes paralelní port počítače a vůbec to není tak složité, jak by se mohlo zdát. Lze využít výše zmíněných projektů, např. ovládání krokových motorů. Další informace pro případné zájemce může podat cvičící Robert Krejčí.
  • Zdroj automaticky spínaný po rozednění - řídicí obvod, který vždy cca 4 hodiny po rozednění na 1 hodinu sepne log. 0 na výstupu (otevřený kolektor, max. 20 mA) vnější zařízení - např. ATX zdroj z počítače. Zařízení má pracovat co nejdéle (mnoho let) na lithiovou baterii CR2032 3V/210mAh.
  • Ovládání ventilátoru teplovzdušného rozvodu. Ventilátor 220 V/100 W má být spínán při nárůstu teploty nad nastavenou mez, čidlem je libovolný termistor nebo PN přechod, vypnut při poklesu pod vypínací teplotu určenou požadovanou hysterezí cca 10 K pod zapínací teplotou. Ke spínání použijte optotriak, nejlépe spínaný v nule. Snažte se o minimalizaci spotřeby alespoň v době, kdy triak nespíná.
  • Ah elektroměr - navrhněte dvoukvadrantový měřič dodaného a odebraného náboje NiMh akumulátorů, který by pracoval pro 2 až 10 sériově zapojených článků a dovedl uchovávat údaje o celkové bilanci náboje a o celkovém dodaném a o odebraném náboji.
  • Řízení solárního napájení chladničky pro nabíjení akumulátoru solárním článkem a spínání napájecího napětí cestovní chladničky s Peltierovým článkem. Cílem je co nejpravidelnější provoz chladničky (12 V/4 A) při napájení 12 V Pb akumulátorem dobíjeným solárním panelem s proudem při plném osvětlení cca 1 A, napětí odpovídá potřebě dobíjení akumulátoru. Řešte na základě měření AD převodníkem dosažení maximální účinnosti využití energie solárního článku a nabíjení akumulátoru bez přebíjení a hlubokého vybíjení.
  • Solární LED lampička s ochranou proti úplnému vybití akumulátoru - náhrada elektroniky lampičky se 2 NiCd akumulátory v sérii, dobíjenými solárním článkem. AVR řešení má mít co nejlepší účinnost, rozsvítit se po (téměř úplném) setmění - měřeno napájecím solárním článkem nebo LED použitou jako fotodioda, zhasnout při vybití napájecích článků pod 1,1 V/článek, potom ho rozsvěcet vždy pouze na několik minut následujících po osvětlení a následném zhasnutí vnějšího osvětlení (orientační světlo).
  • Hrací kostka - po startu tlačítkem se rozbliká, zpomaluje, během 1,5 až 2 s zobrazí na 7 diodách hod.
  • Regulátor PC ventilátoru se zpětnou vazbou ze signálu TACHO, rychlost je zadávána ve stupních 0-9 z klávesnice.
  • Úlohy z předmětu X31KUO - zvláště pak různá autíčka, na konkrétní podobě zadání se lze dohodnout.


Pokud by vás nějaké téma zaujalo, můžete v něm pokračovat v rámci diplomky.

Osobní nástroje