====== Realized projects 2015 ====== * **Softwarová podpora hardwarového rozšíření pro platformu Raspberry PI (Software library used for hardware extension of Raspberry Pi)** (BP - Vico Bohdan) * Proveďte tyto úkoly: * Prostudujte existující řešení. * Vyberte operační systém vhodný pro ovládání a komunikaci s hardware přes rozšiřující rozhraní. * Vytvořte knihovnu funkcí v programovacím jazyce C pro ovládání jednotlivých pinů rozšiřujícího rozhraní včetně sériové linky. * Propojte vývojovou desku Raspberry PI s PC s pomocí sériové linky. * Pro ovládání periferií vytvořte jednoduché webové rozhraní, kde bude možné nastavovat a číst jednotlivé stavy pinů rozhraní. * Umožněte s pomocí webového rozhraní posílat a číst informace ze sériové linky. * Pro zvolený operační systém vytvořte aplikaci, která zprostředkovává komunikaci webového rozhraní s hardware. * Vytvořená aplikace bude obsahovat soubor proměnných, které bude možné nastavovat s pomocí webového rozhraní a s pomocí PC přes sériovou linku. * Vytvořte podrobnou dokumentaci popisující důležité kroky nutné k přidání dalšího rozhraní a odpovídající modifikaci webového rozhraní. * **Zařízení pro sledování objektu s nízkou spotřebou** (Low power camera trap used for property surveillance)(BP - Václav Vanc) * Prostudujte existující řešení. * Navrhněte vlastní zařízení umožňující pořízení a odeslání fotografie přes internet z okolí sledovaného objektu, který není připojen trvale k internetu ani k elektrické sítí. * Vyberte vhodný procesor sloužící ke komunikaci s GSM modulem a kamerou. * Důraz bude kladen na velmi nízkou spotřebu a co nejmenší pořizovací cenu. * Zařízení bude napájeno z 12V baterie. * Zařízení bude umožňovat data ukládat na SD kartu. * Nastavení parametrů a doby snímání fotografie bude možné s pomocí SMS zpráv. * Navržené zařízení zrealizujte. * Vytvořte knihovnu funkcí umožňující ovládat dostupné periferie. * Pro výsledné řešení vytvořte demonstrační aplikaci. * Výsledné zařízení otestujte. * **Multiplatformní grafická aplikace pro simulaci mikroprogramovaného procesoru DOP v3(Cross-platform graphical simulator of micro-programmed processor DOP)** (DP - Miškovský Vojtěch) * Prostudujte existující řešení. * V programovacím jazyku C++ implementujte simulátor výukového procesoru DOP-v3. * Aplikaci bude možné spouštět pod OS Microsoft Windows i OS Linux. * Simulátor musí obsahovat editor mikroprogramu a překladač zdrojových mikroprogramů (mikroassembler). * Syntaxe zdrojového mikroprogramu musí být stejná jako u stávajícího simulátoru používaného pro výuku předmětu BI-JPO (jednotky počítače). * Simulátor musí umožňovat krokování mikroprogramu po jednotlivých mikroinstrukcích i spouštění úseku k zadanému bodu zastavení. * Simulátor musí umožňovat zobrazit aktuální stav jednotlivých registrů procesoru DoP a to včetně těch, které jsou programátorsky nedostupné. * Pro uživatele vytvořte jednoduchou uživatelskou příručku. * Výsledné řešení otestujte. * **Programovatelný stmívač světel pro domácí zvířata** (Programmable light dimmer for domestic animals)(BP - Červenka Ondřej) * Prostudujte existující řešení. * Vyberte vhodný procesor pro realizaci. * Zařízení bude umožňovat nastavení stmívání pro 2 místnosti. * Ovládání bude možné lokálně u zařízení s pomocí displeje a tlačítek a také vzdáleně s pomocí PC. * Pro ovládání stmívání a detekcí vnějšího osvětlení vytvořte knihovnu v jazyce c pro zvolený procesor. * Pro ovládání s PC vytvořte jednoduchou aplikaci. * Navržené zařízení zrealizujte a vytvořenou knihovnu včetně aplikace v PC otestujte. * **FPGA deska řízená procesorem ARM** (FPGA board controlled by ARM processor)(BP - Elena Filipenková) * Prostudujte existující řešení. * Navrhněte zařízení obsahující FPGA obvod a procesor ARM. * Zvolte vhodnou desku obsahující: FPGA obvod, tlačítka, přepínače, display. * Pro řízení FPGA obvodu použijte vývojový kit Raspberry Pi osazený obvodem ARM. * Mezi těmito obvody vytvořte komunikační linku vhodnou pro řízení FPGA obvodu s pomoci procesoru ARM. * Řízení a zjištění stavu desky bude možné s pomocí minimálně 32x16b registrů. * Vytvořte knihovnu funkcí pro FPGA desku umožňující nastavovat a ovládat základní periferie této desky procesorem ARM. * Pro FPGA desku vytvořte aplikaci umožňující zobrazovat stav registrů určených pro nastavení parametrů desky. * Pro procesor ARM vytvořte jednoduchou aplikaci umožňující nastavovat a zjišťovat stav FPGA desky. * Výsledné řešení otestujte * **Rozšíření síťového simulátoru o Spanning tree protocol** (Network simulation module extension implementing Spanning tree protocol)(BP - Peter Bábics) * Prostudujte existující simulátor počítačové sítě [1, 2, 3, 4, 5]. * Prozkoumejte možnosti implementace Spanning tree protokolu do existujícího řešení. * Pro tento simulátor napište modul v jazyce Java, který bude umožňovat využití Spanning tree protokolu v simulovaných přepínačích. * Vytvořené řešení začleňte do existujícího simulátoru. * Napište návod pro použití simulátoru a to včetně vytvořeného modulu. * Vytvořte několik 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. * [4] Horáček, M.,:“ Rozšíření síťového simulátoru o možnost použití konfiguračních souborů pro konfiguraci síťových prvků “, BP-2014, ČVUT FIT. * [5] Mach, V.,:“ Rozšíření síťového simulátoru o připojení do reálné sítě“, BP-2014, ČVUT FIT. * **Generátor elektrických obvodů pro předmět ČAO** (Automatic analog circuit generator)(BP - František Veselý - zrušeno) * Prozkoumejte existující řešení pro kreslení elektrických obvodů. * Vytvořte aplikaci, která bude umožňovat na základě zadaných parametrů automaticky náhodně generovat jednoduché obvody složené ze zdroje napájení, kondenzátorů, rezistorů a cívek. * Aplikace bude umožňovat nastavit hodnoty a typ součástky v obvodu. * Výsledné schéma bude možné překreslit tak, aby se změnila pouze pozice součástky. * Vygenerované schéma bude možné uložit do formátu XML a opětovně načíst. * Aplikace bude umožňovat popsat obvod s pomocí rovnic a to jak v časové oblasti, tak s pomocí fázorů. * Aplikace bude dále umožňovat generovat rovnice pro celkovou impedanci na vstupních svorkách a přenos. * Vygenerované rovnice bude možné bez úprav vložit do programu Wolfram Mathematica a zpracovat. * Při generování rovnic bude možné zvolit směr proudu a napětí ručně, popřípadě automaticky. * Výsledné řešení otestujte. * **Modul pro snímání teploty při převozu materiálu v dopravě** (Temperature monitoring module for material car transporting purpose)(BP - Jiří Šeda - zrušeno) * Prozkoumejte existující řešení bezdrátových zařízení hlídajících teplotu dostupná na trhu. * Navrhněte zařízení umožňující monitorování teploty přepravních boxů. * Pro řízení sledování teploty a komunikaci s nadřazeným systémem zvolte vhodnou konfiguraci senzorů a procesoru. * Zařízení bude umožňovat sledovat teplotu u více boxu. * V případě překročení minimální nebo maximální hlídané hodnoty informujte řidiče pomocí zvukového upozornění na telefonu. * Informaci o teplotě je nutné ukládat po celou dobu jízdy. * Komunikace s řidičem bude provedena s pomocí mobilního telefonu přes rozhraní bluetooth. * Pro komunikaci procesoru s telefonem vytvořte vhodný síťový protokol zaručující bezpečný přenos informací. * Navržené zařízení zrealizujte. * Pro zvolený procesor vytvořte knihovnu funkcí a obslužnou aplikaci demonstrující správnou funkcí celého zařízení. * Výsledné zařízení otestujte.