====== Realized projects 2014 ====== * **Malé procesory AVR pro FPGA obvody (Small soft processors AVR for FPGA circuits)** - (BP 2014 Haken Lukáš) {{:project:2014:2014_haken_lukas.pdf|pdf}} - Prostudujte existující řešení procesorů popsaných v jazyce VHDL. Zaměřte se hlavně na procesory AVR firmy Atmel. Srovnejte jejich parametry. Na základě srovnání implementujte jeden typ procesoru do FPGA obvodu. Proveďte tyto úkoly: * Vyberte vhodný procesor s ohledem na minimální spotřebu zdrojů FPGA a možnost využití stávajících nástrojů firmy Atmel umožňující programování v jazyce C. * K procesoru vytvořte několik rozhraní umožňujících komunikaci s periferiemi desky XILINX Spartan 3E. * Vytvořte knihovnu v jazyce C pro ovládání základních periferií. * Analyzujte možnosti rozšíření paměti tohoto procesoru. * Pro přípravek firmy XILINX Spartan 3E vytvořte vzorovou aplikaci využívající všechny funkce vytvořené knihovny. * **Konstrukce vícerotorového dronu pro průzkum terénu (Quadrocopter for terrain survey)** - (DP 2014 Halák Jakub) {{:project:2014:2014_halak_jakub.pdf|pdf}} - Prozkoumejte existující řešení. Navrhněte a zrealizujte vlastní létající zařízení. Zařízení by mělo být schopno komunikovat s Raspberry PI. Zařízení bude využívat 4 motory, gyroskop, akcelerometr, GPS, magnetometr, barometr a sonar. Postup prací: * Navrhněte a sestavte mechanickou konstrukci. * Navrhněte a zrealizujte základní řídicí desku s mikrořadičem pro ovládání všech dostupných periferií. * Vytvořte knihovnu pro mikrořadič umožňující komunikaci s periferiemi. Napište základní program pro létání. * Vytvořte demo aplikaci k ověření funkčnosti celého zařízení a jeho periferií. * **Mobilní robot schopný pohybu ve venkovním prostředí (Mobile outdoor robot)** (DP 2014 Horák Radim) {{:project:2014:2014_horak_radim.pdf|pdf}} - Navrhněte a zrealizujte konstrukci mobilního robota, který bude bezdrátově ovládán s pomocí RC vysílačky. Robot bude obsahovat měřič vzdálenosti, gyroskop, akcelerometr, magnetometr, GPS, čidlo teploty a vlhkosti. Nižší vrstva řízení robota bude realizována mikrořadičem. Zařízení bude podporovat připojení procesoru RaspberryPI pro realizaci složitějších příkazů. Postup prací: * Navrhněte a zrealizujte konstrukci šestikolového robota. * Navrhněte a zrealizujte řídicí desku pro ovládání všech periferií. * Pro použitý mikrořadič vytvořte knihovny pro ovládání periferií. * Pro robota napište testovací demo aplikaci využívající všechna periférie. * Proveďte testy k otestování správné funkce robota pro různá prostředí. * **Aplikace pro zkoušení slovní zásoby na platformě Android (Vocabulary testing application for OS Android)** (BP 2014 - Mayerová Eva) {{:project:2014:2014_mayerova_eva.pdf|pdf}} - Proveďte rešerší existujících aplikací. Zaměřte se hlavně na anglické jazykové slovníky. Navrhněte aplikací pro zkoušení anglické slovní zásoby, a to tak, aby splňovala základní požadavky kladené na tento typ slovníku. Aplikace bude umožňovat přidávání slovíček a jejich zkoušení. Výsledek zkoušení bude zaznamenán a graficky zpracován. Do slovníku bude možné přidávat slovíčka a fráze. Aplikace bude umožňovat import textového popisu slovíček ze souboru. Aplikace bude umožňovat rozpracovat několik skupin slovní zásoby. Každá skupina bude reprezentována vlastním souborem obsahujícím aktuální stav rozpracovanosti zkoušení/učení. Postup prací: * Proveďte rešerši existujících řešení, popište výhody a nevýhody. * Navrhněte grafickou stránku aplikace. * Vytvořte samotnou aplikaci tak, aby umožňovala učení a zkoušení slovní zásoby aspoň třemi způsoby. * Navrženou aplikaci otestuje a vytvořte několik vzorových souborů s anglickými slovíčky. * **Softwarové řešení pro quadrokoptéru s řídicí jednotkou Raspberry Pi (Software library for quadcopter based on Raspberry Pi)** (BP 2014 - Kukačka Jiří) {{:project:2014:2014_kukacka_jiri.pdf|pdf}} - Prostudujte existující řešení. Vyberte vhodný realtimový operační systém pro ovládání quadrokoptéry na platformě Raspberry Pi. Vytvořte knihovnu funkcí v programovacím jazyce C pro ovládání jednotlivých periferií potřebných pro chod quadrokoptéry. Postup prací: * Vyberte vhodný operační systém, porovnejte RTOS vs GPOS. * Navrhněte schéma propojení periferií k řídící jednotce, schéma komunikace s periferií a struktury řídicího programu. * Vytvořte jádro řídicího programu. * Vytvořte knihovnu pro ovládání specifických periferií potřebných pro správné fungování quadrokoptéry. * Analyzujte možnosti využití algoritmů pro řízení a navigaci v prostoru. * Vytvořte praktickou ukázku běhu programu využívající všechny dostupné periférie potřebné pro řízení quadrokoptéry. * **Rozšíření síťového simulátoru o připojení do reálné sítě (Network simulation module used to connect to real network)** (BP 2014 - Mach Václav) {{:project:2014:2014_mach_vaclav.pdf|pdf}} - Prostudujte existující simulátor počítačové sítě [1, 2]. Pro tento simulátor napište modul v jazyce Java, který bude umožňovat propojení simulátoru s reálnou sítí za použití existujícího ethernetového rozhraní. Postup prací: * Prostudujte existující řešení [1, 2]. * Prozkoumejte možnosti řešení pro OS Linux a OS Microsoft Windows. * Navrhněte a napište modul pro připojení simulátoru do reálné sítě a to tak, že modul bude komunikovat na linkové úrovni. * Vytvořené řešení začleňte do již existujícího simulátoru [1, 2]. * Napište návod pro použití simulátoru a to včetně vytvořeného modulu. * Vytvořte příklad použití vytvořeného modulu. * Výsledné řešení včetně návodu otestujte. * [1] Pitřinec, T.,.: „Síťový simulátor pro výukové účely na bázi prvků OS Linux“, DP – 2012, ČVUT FIT. * [2] Švihlík, M.,:“Vizualizace virtuální počítačové sítě“, DP-2012, ČVUT FIT. * **Rozšíření síťového simulátoru o možnost použití konfiguračních souborů pro konfiguraci síťových prvků (Network simulation module used to extend simulator property with configuration file)** (BP 2014 - Michal Horáček) {{:project:2014:2014_horacek_michal.pdf|pdf}} - Prostudujte existující simulátor počítačové sítě [1, 2, 3]. Pro tento simulátor napište modul v jazyce Java, který bude umožňovat použití konfiguračního souboru pro konfigurací vlastností síťového prvku. Postup prací: * Prostudujte existující řešení [1, 2, 3]. * Prozkoumejte možnosti konfigurace sítě na systémech Debian/Ubuntu. * Navrhněte a vytvořte modul pro možnost konfigurace síťového rozhraní, DHCP serveru a DNS serveru s pomocí konfiguračních souborů. * Vytvořené řešení začleňte do již existujícího simulátoru [1, 2, 3]. * Napište návod pro použití simulátoru a to včetně vytvořeného modulu. * Vytvořte příklad použití vytvořeného modulu. * Výsledné řešení včetně návodu otestujte. * [1] Pitřinec, T.,.: „Síťový simulátor pro výukové účely na bázi prvků OS Linux“, DP – 2012, ČVUT FIT. * [2] Švihlík, M.,:“Vizualizace virtuální počítačové sítě“, DP-2012, ČVUT FIT. * [3] Lukáš, M.,:“ Podpůrné komponenty simulátoru počítačové sítě“, DP-2012, ČVUT FIT.