This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
project:proj_list [2016/09/06 10:04] xkubalik [Current projects] |
project:proj_list [2018/01/10 13:47] xkubalik [Current projects] |
||
---|---|---|---|
Line 2: | Line 2: | ||
===== Current projects ===== | ===== Current projects ===== | ||
- | * **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) | + | * **Hardware pro podporu leteckého simulátoru** - (Hardware support for fly simulator)(BP - Michal Buchovecký) |
- | * Prozkoumejte základní principy pro generování bezpečnostních kódů, zejména Hammingův, BCH, RS a LDPC kód. | + | * Prozkoumejte existující řešení hardwarové podpory leteckých simulátorů. |
- | * Prostudujte existující knihovny pro generování bezpečnostních kódů. | + | * Navrhněte hardwarové řešení podpory leteckého simulátoru. |
- | * Součástí analýzy bude i detailnější rozbor všech podporovaných kódů a potřebná matematická teorie. | + | * Pro řešení vyberte vhodný procesor umožňující ovládání MPC (multi control panel) pro Boeing 737 a EFIS (Electronic flight instrument system) panel. |
- | * Navrhněte a zrealizujte vlastní knihovnu pro program Wolfram Mathematica a to s ohledem na použití této knihovny pro zabezpečení dat. | + | * Panely boudou obsahovat dostatečný počet ovládacích prvků jako jsou: tlačítka, přepínače, LED kontrolky. |
- | * Navrženou knihovnu otestuje. | + | * Navržené řešení zrealizujte. |
- | * 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. | + | * Pro komunikaci s leteckým simulátorem vytvořte skript využívající FSUIPC knihovnu. |
+ | * Pro ověření správné funkce vytvořte jednoduchou maketu MPC a EFIS panelu. | ||
+ | * Výsledné řešení propojte a otestujte s leteckým simulátorem Microsoft Flight Simulator X. | ||
- | * **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ů. | ||
* ** Aplikace pro spolehlivé ovládání hardware s pomocí sériové komunikace (Application used for reliable serial communication)** - (DP - Martin Chudoba) | * ** Aplikace pro spolehlivé ovládání hardware s pomocí sériové komunikace (Application used for reliable serial communication)** - (DP - Martin Chudoba) | ||
Line 62: | Line 22: | ||
* Navržené jádro otestuje a nasimulujte různé způsoby uváznutí částí programu. | * Navržené jádro otestuje a nasimulujte různé způsoby uváznutí částí programu. | ||
* Pro jádro napište aplikaci, která bude umožňovat testování schopnosti jádra odolat různým situacím při selhání linek. | * Pro jádro napište aplikaci, která bude umožňovat testování schopnosti jádra odolat různým situacím při selhání linek. | ||
+ | |||
+ | * ** Aplikace pro spolehlivé ovládání hardware s pomocí sériové komunikace (Application used for reliable serial communication)** - (DP - Martin Chudoba) | ||
+ | * Cílem práce je návrh protokolu pro bezpečnou komunikaci po sériových linkách a návrh a implementace modulu/jádra, který komunikaci řídí. | ||
+ | * Základní funkční a nefunkční požadavky jsou: | ||
+ | * 1. Analyzujte požadavky a proveďte návrh protokolu a modulu pro komunikaci tak, aby bylo možné přenášet různě velké struktury dat a to jak binárně, tak i textově. | ||
+ | * 2. Analyzujte požadavky a proveďte návrh jádra tak, aby dokázal odolat výpadkům jednotlivých komunikačních linek. | ||
+ | * 3. Diskutujte a zvolte vhodnou implementační platformu. | ||
+ | * 4. Návrh implementujte. | ||
+ | * 5. Navrhněte a implementujte demonstrační aplikaci, která začlení a použije komunikační modul. | ||
+ | * 6. Při testování se zaměřte na různé typy výpadků jednotlivých sériových linek a případného selhání funkce vláken pro jejich obsluhu. | ||
+ | * 7. Zhodnoťte přínos řešení. | ||
+ | |||
+ | * ** Zařízení pro získávání a zpracování dat z internetu na platformě Raspberry Pi (Internet data processing device based on the Raspberry Pi platform)** - (DP - Jakub Kužel) | ||
+ | * Z počítače Raspberry Pi vytvořte zařízení pro zpracování a prezentaci dat z internetu. | ||
+ | * Pro toto zařízení vyberte vhodný OS. | ||
+ | * Navrhněte a naprogramujte aplikaci v jazyce C pro získávání a zpracování dat z různých zdrojů (periferie Raspberry Pi, SD karta, internet). | ||
+ | * Za účelem získání dat ze souboru nebo webové stránky použijte jednoduchý skriptovací jazyk. | ||
+ | * Zařízení bude možné konfigurovat a ovládat pomocí zabezpečeného síťového spojení ze vzdáleného PC nebo přímo lokálně pomocí dotykového displeje. | ||
+ | * Aplikace bude umožňovat vzdálenou instalaci nového digitálního certifikátu pro zabezpečený přenos dat. | ||
+ | * Výsledné řešení otestujte | ||
+ | |||
+ | * ** Knihovna funkcí pro podporu diagnostického protokolu s pomocí UDP (UDP support library for diagnostic protocol)** - (BP - Jaromír Mikušík) | ||
+ | * Prozkoumejte existující diagnostické protokoly používané pro vyčítání dat a nahrávání software do mikrokontroleru. | ||
+ | * Vyberte vhodný diagnostický protokol a vytvořte pro něj vhodnou knihovnu funkcí umožňující jeho spolehlivé fungování nad UDP protokolem. | ||
+ | * Implementované funkce budou navrženy a implementovány s ohledem na minimální latence a timeouty běžné při implementaci nad TCP protokolem. | ||
+ | * Knihovna funkci bude rozdělená na části server a klient. | ||
+ | * Server bude implementován v jazyce C++ obecně pro libovolný mikrokontroler. | ||
+ | * Client bude s ohledem na použití na PC implementován v jave. | ||
+ | * Výsledné řešení otestujte. | ||
+ | |||
+ | * **Knihovna funkcí pro OS Android umožňující řízení vývojového kitu Arduino (OS Android library allowing control of Arduino kit)** - (BP - Filip Šmíd) | ||
+ | * Prostudujte existující řešení | ||
+ | * Navrhněte a implementujte knihovnu pro platformu Android zajišťující komunikaci mezi zařízením se systémem Android a vývojovým kitem Arduino. | ||
+ | * Knihovna bude umožňovat komunikaci pomocí USB, Bluetooth a Wi-Fi na protokolu TCP/IP. | ||
+ | * Pro vytvořenou knihovnu napište testovací aplikaci, která bude prezentovat funkčnost komunikace. | ||
+ | * Aplikace bude napsána tak, aby bylo možné ji snadno rozšířit o další funkční prvky. | ||
+ | * Aplikace a knihovna by měla podporovat specifickou architekturu pro vývoj android aplikací, jako MVP, nebo MVVM, pro oddělení logiky z prezentační vrstvy a testovatelnost kódu. | ||
+ | |||
+ | * **Aplikace pro zpracování a prezentaci dat z experimentů pro OS Windows (Application used for management and presentation of experimental data based on OS Windows platform)** - (BP - Roman Artemov) | ||
+ | * Navrhněte a implementujte aplikaci pro zpracování a prezentaci experimentálních dat. | ||
+ | * Aplikace bude napsána v Microsoft ASP.NET MVC. | ||
+ | * Aplikace bude umožňovat s pomocí jednoduchého skriptu zpracovat výsledky z naměřených experimentálních dat. | ||
+ | * Zpracovaná data bude možné prezentovat jako tabulku nebo graf. | ||
+ | * Nastavování plánování extrakce dat s pomocí jednoduchého skriptu bude možné s pomocí Windows task scheduleru. | ||
+ | * Extrahovaná data budou exportována do generického XML dokumentu a následně zpracována implementovanou aplikací. | ||
+ | * Autentizace pro přístup k webové stránce bude řešena s pomocí SSO ve federaci cvutID. | ||
+ | * Vzdálená zpráva aplikace (nastavení plánování, šablon a základní konigurace) bude umožněna přes zabezpečené webové rozhraní. | ||
+ | * Pro výslednou aplikaci vytvořte několik testovacích dat pro ověření správné funkce. | ||
+ | |||
+ | * **Dohledové zařízení pro chytrou domácnost založené na platformě Arduino (Monitoring device used in smart home based on Arduino platform)** - (BP - Martin Dvořák) | ||
+ | * Navrhněte a realizujte zařízení umožňující monitorování a ovládání chytré domácnosti. | ||
+ | * Zařízení bude obsahovat analogové a digitální vstupy/výstupy. | ||
+ | * Pro komunikaci bude zařízení obsahovat GSM a Ethernet modem. | ||
+ | * Při volbě periferií se zaměřte zejména na možnost sledování stavu zálohovací baterie a možnosti ovládat externí zařízení s pomocí Relé. | ||
+ | * Zařízení bude umožňovat přijmout SMS a následně odeslat ethernetový rámec s požadovaným obsahem. | ||
+ | * Zrealizované zařízení následně propojte s vývojovou deskou Raspberry PI, na které bude nainstalován vhodný operační systém včetně jednoduchého dohledového software. | ||
+ | * Funkčnost výsledného zařízení demonstrujte na několika příkladech. | ||
+ | |||
+ | * **Nástroj pro generování vývojových diagramů z podmnožiny jazyka C (A tool for generating flowcharts from a subset of C language)** - (BP - Vojtěch Procházka) | ||
+ | * Cílem práce je vytvořit nástroj pro generování vývojových diagramů zejména pro vyjádření funkce mikroprogramového automatu. | ||
+ | * Prostudujte existující řešení a vyberte vhodnou cílovou aplikaci pro zobrazení vývojového diagramu. | ||
+ | * Důraz bude kladen na jednoduchou konverzi mezi jazykem C a vnitřní formou popisu v cílové aplikaci. | ||
+ | * Navrhněte řešení pro automatické generování vývojových diagramů pomocí podmnožiny příkazů jazyka C. | ||
+ | * Navržené řešení zrealizujte a otestujte. | ||
+ | * Vytvořte několik ukázek možného popisu vývojového diagramu v jazyce C. | ||
+ | |||
+ | * **Inteligentní ovládání a správa běžných zařízení v domácnosti (Intelligent control and management of common household devices)** - (BP - Vojtěch Pail) | ||
+ | * Prostudujte existující řešení pro ovládání a správu zařízení používaných pro chytré domácnosti. | ||
+ | * Navrhněte vlastní systém založený na modulární architektuře. | ||
+ | * Řešení bude obsahovat základní jednotku pro správu a řízení a univerzální modul umístěný u ovládaného zařízení. | ||
+ | * Pro propojení těchto modulů navrhněte vhodnou propojovací strukturu včetně komunikačního protokolu. | ||
+ | * Navržené řešení zrealizujte a otestujte. | ||
+ | * Vytvořte několik ukázek možných aplikaci pro ovládání jednotlivých zařízení jakou jsou světla, zásuvky apod. | ||
Line 168: | Line 201: | ||
* **Dotykový displej a raspberry pi** - Navrhněte a zrealizujte propojeni RPI s jednoduchým dotykovým displejem. Vytvořte vhodnou knihovnu umožnující komunikovat s dotykovým displejem. Vytvořte další knihovnu rozšiřující základní komunikaci o zobrazovací funkce. Pro otestování vytvořte demonstrační aplikaci. (BP, DP 2-4 semestry) | * **Dotykový displej a raspberry pi** - Navrhněte a zrealizujte propojeni RPI s jednoduchým dotykovým displejem. Vytvořte vhodnou knihovnu umožnující komunikovat s dotykovým displejem. Vytvořte další knihovnu rozšiřující základní komunikaci o zobrazovací funkce. Pro otestování vytvořte demonstrační aplikaci. (BP, DP 2-4 semestry) | ||
+ | |||
+ | * **Automaty ve VHDL - mikroprogramovaný řadič** - Prozkoumejte způsoby návrhu mikroporgramovaných řadičů ve VHDL a to s ohledem na způsob implementace a zpoždění řídicích a stavových vodičů. (BP, DP 2-4 semestry) | ||
+ | |||
+ | * **USB drivery pro MS Windows** - Navrhněte driver pro různé druhy přenos po USB sběrnici. Zaměřte se zejména na bulk přenos. (BP, DP 2-4 semestry) | ||
+ | |||
+ | * **USB drivery pro MS Windows se zaměřením na FPGA obvod ZYNQ** - Navrhněte a rozchoďte propojení FPGA obvodu ZYNQ a PC s OS MS Windows. Upravte existující driver pro možnost přenosu dat s pomocí BULK přenosu. (BP, DP 2-4 semestry) | ||
+ | |||
+ | * **Bezpečnostní kódy a Wolfram Methematica** - Vytvořte knihovnu pro usnadnění výuky v předmětech se zaměřením na bezpečnostní samoopravné kódy. Zaměřte se zejména na Hammingův kód, BCH kód, RS kód a RM kód. (BP, DP 2-4 semestry) | ||
+ | |||
+ | * **Zařízení pro kontrolu stavu autobaterie s nízkou spotřebou** - Navrhněte a zrealizujte zařízení, které bude umožňovat odpojení spotřebiče/solárního panelu od autobaterií v případě nízkého napětí na baterií. Jako základ použijte mikrořadič firmy atmel. (BP, DP 2-4 semestry) | ||
+ | |||
+ | * **USB WDM driver pro MS Windows a FPGA deska ZYBO** - Navrhněte a zrealizujte propojení FPGA desky a počítače s MS Windows podporující přenos bulk. (BP, DP 2-4 semestry) | ||
+ | |||
+ | * **Periferie pro FPGA desku ZYBO** - Pro vývojovou desku s FPGA obvodem ZYBO navrhněte a naprogramujte ovládání základních periferií. (BP, DP 2-4 semestry) | ||
+ | |||
+ | * **Bezpečnostní kódy ve výuce s podporou Wolfram Mathematica** - Navrhněte a realizujte knihovnu pro některé základní bezpečnostní kódy. Pro navrženou knihovnu vytvořte několik úloh k řešení pro studenty, které lze využít při výuce předmětu MI-AAK a MI-BKO. (BP, DP 2-4 semestry) | ||
+ | |||
+ | * **Program pro uchování poznámek na sdíleném uložišti** - Navrhněte aplikaci pro Windows nebo pro Android umožňující práci s poznámkami. Poznámky bude možné vytvářet, prohlížet a editovat. Poznámky budou uloženy na sdíleném uložišti (dropbox, google). (BP, DP 2-4 semestry) | ||
+ | |||
+ | * **Nástroj pro automatické generování diagramu z jazyka C** - Navrhněte a implementujte nástroj umožňující na základě podmnožiny příkazů jazyka C generovat vývojový diagram. (BP, DP 2-4 semestry) | ||
+ | |||
+ | * **Podpora ovládání elektrického kolejiště s pomocí aplikace na PC** - Navrhněte a naprogramujte aplikaci pro podporu modelového kolejiště velikosti TT. (BP, DP 2-4 semestry) | ||
+ | |||
===== All defended works ===== | ===== All defended works ===== | ||
Line 174: | Line 230: | ||
===== All projects archives 2004 - 2014 ===== | ===== All projects archives 2004 - 2014 ===== | ||
+ | *[[project:2016:proj_2016|Realized projects 2016]] | ||
*[[project:2015:proj_2015|Realized projects 2015]] | *[[project:2015:proj_2015|Realized projects 2015]] | ||
*[[project:2014:proj_2014|Realized projects 2014]] | *[[project:2014:proj_2014|Realized projects 2014]] |