====== Realized projects 2016 ====== * **Knihovna funkcí pro program Wolfram Mathematica umožňující využití bezpečnostních kódů** - (Wolfram Mathematica library used for error detection and correction codes)(DP - Jakub Doubek) {{ :project:2016:2016_doubek_jakub.pdf |pdf}} * Prozkoumejte základní principy pro generování bezpečnostních kódů, zejména Hammingův, BCH, RS a LDPC kód. * Prostudujte existující knihovny pro generování bezpečnostních kódů. * Součástí analýzy bude i detailnější rozbor všech podporovaných kódů a potřebná matematická teorie. * Navrhněte a zrealizujte vlastní knihovnu pro program Wolfram Mathematica a to s ohledem na použití této knihovny pro zabezpečení dat. * Navrženou knihovnu otestuje. * Pro každý podporovaný bezpečnostní kód vytvořte několik jednoduchých příkladů pro kódování a dekódování dat v závislosti na různých vstupních parametrech. * **Levné zařízení pro měření veličin a zobrazování informací založené na existujícím wifi routeru** (Low cost device used for data colection based on wifi router)(BP - Adam Benda) * Prostudujte existující řešení. * Vyberte vhodný wifi router za účelem modifikace a vylepšení jeho funkcí. * Na základě vybraného wifi routeru navrhněte a sestavte zařízení, ke kterému připojíte teplotní a jiné senzory, a malý displej. * Navrhněte a implementujte aplikaci, která agreguje ze zařízení naměřené hodnoty, skladuje je a umožňuje jejich prohlížení. * Navrhněte a implementujte aplikaci, která na zařízení zobrazuje data získaná ze sítě Internet (např. přehled zpráv, nejbližší odjezd autobusu). * Navržené zařízení otestuje. * **Aplikace pro správu velké slovní zásoby pod OS Android** - (Application for managing large vocabulary under OS Android) (BP - Lepíček Michal) * Navrhněte a implementujte aplikaci pro OS Android, která bude zaměřená na správu slovní zásoby anglického jazyka. * Aplikace bude umožňovat zpracovávat velké objemy dat okolo 10 000 slovíček. * Zaměřte se na efektivní implementování algoritmů pro vyhledávání ve slovníku, import vlastních slovíček a inteligentní testování slovní zásoby. * Analyzujte a pro část využijte Native Development Kit na psaní C kódu pro Android doporučeném pro náročnější výpočty a porovnejte výkonnostně s konvenčním Software Development Kit při importu slovíček z textového souboru. * Analyzujte a navrhněte vhodný způsob uložení dat na vzdáleném úložišti tak, aby bylo možné efektivně zpracovávat velké slovníky. * Výkonnost aplikace otestujte na různých zařízeních a pro různé objemy dat. * **Knihovna funkcí pro počítač RASPBERRY PI** - (Library for RASPBERRY PI module) (DP - Procházka Tomáš) * Vytvořte knihovnu funkcí v programovacím jazyce C pro ovládání jednotlivých periferií počítače Raspberry PI bez operačního systému. * Zaměřte se na ovládání univerzálních vstupů a výstupů, rozhraní UART, SPI, I2C, časovačů, řadiče přerušení, pulsně šířkového modulátoru, řadiče SD/MMC karet a ethernetové rozhraní. * Implementujte sadu funkcí pro zobrazovaní dat na obrazovce připojené přes HDMI. * Pro otestování jednotlivých funkcí knihovny napište demonstrační aplikaci využívající grafický displej, ethernetové rozhraní a SD kartu. * **Knihovna funkcí pro palubní informační systém v hromadném dopravním prostředku** - (Library of functions for public transport information system) (BP - Jakš Zbyněk) * Proveďte rešerši existujících řešení * Vyberte vhodnou hardwarovou platformu pro realizaci vlastního palubního informačního systému * Zařízení bude umožňovat zobrazovat informaci o poloze vozu s pomocí informačního displeje * Zadávání vstupních hodnot bude umožněno s pomocí jednoduché klávesnice * Informaci o aktuální a budoucí zastávce bude možné přehrát s pomocí zvukového zařízení v dopravním prostředku * Zařízení bude umožňovat tisk jízdního dokladu na vhodné tiskárně * Zařízení navrhněte a zrealizujte * Pro navržené řešení vytvořte knihovnu funkcí umožňující ovládat dostupné periferie * Pro předvedení funkčnosti celého zařízení vytvořte demo aplikaci využívající všechny dostupné periferie, zejména displej, zvukový systém a klávesnici * ** Aplikace pro podporu překladu jednoduchého jazyka c do VHDL - Application used to translate simple C to VHDL language** - (BP - Marianna Gedrová) * Navrhněte a zrealizujte aplikaci umožňující jednoduchým způsobem přeložit jazyk c do jazyka VHDL. * Základem aplikace bude editor umožňující napsat jednoduchý kód v jazyce C. * Vytvořený kód bude možné přeložit do jazyka VHDL na základě přednastavených VHDL šablon. * Překladač bude podporovat podmnožinou příkazů jazyka c do VHDL kódu a to jak datovou, tak i řídící část. * Prozkoumejte existující řešení. Jazyk c bude podporovat vybrané celočíselné a binární typy proměnných. * Překladač bude schopen přeložit následující prvky jazyka C: aritmetické a logické operace, podmíněný výraz if (else if, else), cyklus while a cyklus for. * Implementace bude provedena v jazyce C++. * Pro otestování funkčnosti vytvořte několik příkladů.