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 [2017/01/25 13:01] xkubalik [Current projects] |
project:proj_list [2018/08/20 12:35] xkubalik [Current projects] |
||
---|---|---|---|
Line 2: | Line 2: | ||
===== Current projects ===== | ===== Current projects ===== | ||
- | * **Hardware pro podporu leteckého simulátoru** - (Hardware support for fly simulator)(BP - Michal Buchovecký) | ||
- | * Prozkoumejte existující řešení hardwarové podpory leteckých simulátorů. | ||
- | * Navrhněte hardwarové řešení podpory leteckého simulátoru. | ||
- | * 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. | ||
- | * Panely boudou obsahovat dostatečný počet ovládacích prvků jako jsou: tlačítka, přepínače, LED kontrolky. | ||
- | * Navržené řešení zrealizujte. | ||
- | * 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. | ||
- | * ** Aplikace pro spolehlivé ovládání hardware s pomocí sériové komunikace (Application used for reliable serial communication)** - (DP - Martin Chudoba) | ||
- | * Navrhněte jádro aplikace umožňující výměnu informací s pomocí spolehlivé komunikační linky. | ||
- | * Zařízení bude podporovat minimálně 2 sériová rozhraní. | ||
- | * Komunikace bude probíhat v textové i binární podobě zabezpečené jednoduchým bezpečnostním kódem. | ||
- | * Jádro bude umožňovat kontrolovat i parametry navrženého protokolu. | ||
- | * Se zařízením bude možné vyměňovat jednoduché parametry, pole parametrů a bloky dat z paměti. | ||
- | * Pro spolehlivé zpracování komunikace navrhněte vhodné spolehlivé schéma - například několik vláken. | ||
- | * 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. | ||
- | * ** 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 pro získávání a zpracování dat z různých zdrojů (periferie Raspberry Pi, SD karta, internet). | ||
- | * Aplikace bude umožňovat na základě jednoduchého skriptu načíst vzdálený obsah (soubor, webová stránka) a s pomocí předem zvoleného skriptovacího jazyka zpracovat. | ||
- | * Aplikace bude schopna získaná data buď zobrazit na lokálním dotykovém displeji anebo z nich vytvořit webovou stránku. Tímto způsobem bude možné načíst data z různých zdrojů a vytvořit jeden výstup. | ||
- | * Zařízení bude možné konfigurovat a ovládat s pomocí zabezpečeného síťového spojení ze vzdáleného PC. | ||
- | * Navrhněte způsob instalace nového certifikátu a navržené řešení implementujte. | ||
- | * Zařízení bude možné ovládat lokálně s pomocí jednoduchého dotykového displeje. | ||
- | * 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. | + | |
+ | |||
===== Available projects ===== | ===== Available projects ===== | ||
Line 184: | Line 140: | ||
* **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) | * **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) | ||
+ | |||
+ | * **Aplikace pro komunikaci s hardware pomocí sériové linky** - Navrhněte a naprogramujte aplikaci pod OS MS Widnows. Aplikace bude napsána v jazyce c++ pod .NET. (BP 2-4 semestry) | ||
+ | |||
+ | * **Jednoduchá meteorologická stanice s nízkou spotřebou a možností komunikace přes SMS** - Navrhněte zařízení které bude umožňovat monitorovat teplotu, vlhkost a tlak ne několika místech s možností vzdálené správy přes SMS zprávy (BP, DP - 2-4 semestry) | ||
+ | |||
+ | |||
===== All defended works ===== | ===== All defended works ===== | ||
**BP a DP defended works on CTU in Prague FEL/FIT:** [[http://dip.felk.cvut.cz|BP a DP]] | **BP a DP defended works on CTU in Prague FEL/FIT:** [[http://dip.felk.cvut.cz|BP a DP]] | ||
- | ===== All projects archives 2004 - 2014 ===== | + | ===== All projects archives 2004 - 2018 ===== |
+ | *[[project:2018:proj_2018|Realized projects 2018]] | ||
+ | *[[project:2017:proj_2017|Realized projects 2017]] | ||
*[[project:2016:proj_2016|Realized projects 2016]] | *[[project:2016:proj_2016|Realized projects 2016]] | ||
*[[project:2015:proj_2015|Realized projects 2015]] | *[[project:2015:proj_2015|Realized projects 2015]] |