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 [2018/02/08 13:35] xkubalik [Current projects] |
project:proj_list [2020/02/05 09:20] xkubalik |
||
---|---|---|---|
Line 2: | Line 2: | ||
===== Current projects ===== | ===== Current projects ===== | ||
- | * **Hardware pro podporu leteckého simulátoru** - (Hardware support for fly simulator)(BP - Michal Buchovecký) | + | * **Dálkově ovládané 4kolé vozítko využívající platformu Arduino (4-wheels vehicle using the Arduino platform with a remote control )** - (BP - Zemánek Martin) |
- | * Prozkoumejte existující řešení hardwarové podpory leteckých simulátorů. | + | * Prozkoumejte existující řešení dálkově ovládaných 4kolých vozítek |
- | * Navrhněte hardwarové řešení podpory leteckého simulátoru. | + | * Navrhněte vlastní řešení řízení 4kolého vozítka s pomocí platformy Arduino |
- | * 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. | + | * Aplikace pro Arduino bude umožňovat řízení každého kola tak, aby bylo možné jezdit všemi směry. |
- | * Panely boudou obsahovat dostatečný počet ovládacích prvků jako jsou: tlačítka, přepínače, LED kontrolky. | + | * Veškeré řízení pohybu vozítka bude provedeno s pomocí dálkového ovládání. |
- | * Navržené řešení zrealizujte. | + | * Vozítko bude na sobě obsahovat další senzory potřebné pro pohyb a LED diody pro signalizaci směru. |
- | * Pro komunikaci s leteckým simulátorem vytvořte skript využívající FSUIPC knihovnu. | + | * Navržené řešení zrealizujte a řádně otestujte. |
- | * 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. | + | |
+ | * **Platforma pro podporu interaktivního městského mobiliáře využívající procesor ESP32 (ESP32 Based Platform Supporting Interactive Street Furniture)** - (BP - Topič Jakub) | ||
+ | - Prozkoumejte existující řešení. | ||
+ | - Pomocí metod softwarového inženýrství navrhněte vlastní řešení vyhovující níže uvedeným požadavkům. | ||
+ | - Navržené řešení zrealizujte, naprogramujte, řádně ho zdokumentujte a otestujte. | ||
+ | - Výsledné řešení se bude skládat ze 3 částí: řídicí jednotka, backend a frontend. | ||
+ | - Řídicí jednotka (klient) bude postavena na vlastním HW (založený na ESP32) instalovaný do laviček, ke kterému jsou připojeny senzory, LED osvětlení, ventilátory a regulátor solárních panelů. | ||
+ | - Backend (server) bude běžet na serveru někde v internetu a bude zajišťovat veškerou logiku a persistenci dat. | ||
+ | - Frontend (klient) bude webová SPA aplikace sloužící k zobrazení naměřených dat a ke správě a konfiguraci instalovaných řídicích jednotek. | ||
+ | - Veškeré části budou ke vzájemné komunikaci používat síť internet, ke které se mohou připojit přes wifi (řídicí část, frontend) nebo pevného připojení do internetu (backend). | ||
- | * ** Aplikace pro spolehlivé ovládání hardware s pomocí sériové komunikace (Application used for reliable serial communication)** - (DP - Martin Chudoba) | + | * **Platforma pro chytrou domácnost využivající WIFI spojení jednotek s RaspberryPI (The smart home platform based on RaspberryPI using WIFI connection)** - (BP - Trejdl Tomáš) |
- | * Navrhněte jádro aplikace umožňující výměnu informací s pomocí spolehlivé komunikační linky. | + | - Prozkoumejte existující řešení. |
- | * Zařízení bude podporovat minimálně 2 sériová rozhraní. | + | - Pomocí metod softwarového inženýrství navrhněte vlastní řešení vyhovující níže uvedeným požadavkům. |
- | * Komunikace bude probíhat v textové i binární podobě zabezpečené jednoduchým bezpečnostním kódem. | + | - Navržené řešení zrealizujte, naprogramujte, řádně ho zdokumentujte a otestujte. |
- | * Jádro bude umožňovat kontrolovat i parametry navrženého protokolu. | + | - Požadavky: |
- | * Se zařízením bude možné vyměňovat jednoduché parametry, pole parametrů a bloky dat z paměti. | + | * základem celého zařízení bude webová aplikace běžící na platformě RaspberryPI |
- | * Pro spolehlivé zpracování komunikace navrhněte vhodné spolehlivé schéma - například několik vláken. | + | * pro jednotlivá zařízení v domácnosti použijte modul s ESP8266 a implementujte vlastní firmware v prostředí Arduino |
- | * Navržené jádro otestuje a nasimulujte různé způsoby uváznutí částí programu. | + | * zařízení spolu budou komunikovat prostřednictvím wifi sítě |
- | * 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. | + | * v domácnosti bude možné sledovat teplotu a detekovat otevření dveří |
+ | * ovládat bude možné zásuvky a světla | ||
+ | * aplikace bude umožňovat konfiguraci zařízení s pomocí webové aplikace | ||
+ | * dale bude možné graficky zobrazovat průběh teploty | ||
+ | * zaměřte se hlavne na efektivní práci s větším množstvím modulů | ||
+ | * jednoduchý protokol pro komunikaci s možností snadného rozšíření | ||
- | * ** Aplikace pro spolehlivé ovládání hardware s pomocí sériové komunikace (Application used for reliable serial communication)** - (DP - Martin Chudoba) | + | * ** Zařízení pro monitorování a zobrazování informací o aktuálním stavu provozu automobilu (The automotive data logging device)** - (BP - Bohm Jakub) |
- | * 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í. | + | * Prozkoumejte existující řešení. |
- | * Základní funkční a nefunkční požadavky jsou: | + | * Vyberte vhodnou HW platformu. |
- | * 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ě. | + | * Vyberte vhodný programovací jazyk. |
- | * 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. | + | * Navrhněte vlastní řešení splňující tyto požadavky: |
- | * 3. Diskutujte a zvolte vhodnou implementační platformu. | + | * malé kompaktní zařízení |
- | * 4. Návrh implementujte. | + | * zařízení bude obsahovat display, GPS modul, akcelerometr, RTC obvod, A/D převodníky |
- | * 5. Navrhněte a implementujte demonstrační aplikaci, která začlení a použije komunikační modul. | + | * zařízení bude umožňovat zobrazování hodnoty z A/D převodníku a dalších čidel |
- | * 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. | + | * bezdrátová komunikace s mobilním telefonem |
- | * 7. Zhodnoťte přínos řešení. | + | * možnost konfigurace |
+ | * Výsledné řešení zrealizujte a řádně otestujte. | ||
- | * ** 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) | + | * **Dálkově ovládaná meteostanice s nízkou spotřebou (The remotely controlled low power weather station)** - (BP - Jilek Vojtěch) |
- | * Z počítače Raspberry Pi vytvořte zařízení pro zpracování a prezentaci dat z internetu. | + | - Prozkoumejte existující řešení. |
- | * Pro toto zařízení vyberte vhodný OS. | + | - Navrhněte a zrealizujte zařízení pro vzdálené měření meteorologických dat |
- | * 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řízení bude splňovat tyto požadavky: |
- | * Za účelem získání dat ze souboru nebo webové stránky použijte jednoduchý skriptovací jazyk. | + | * stanice bude poskytovat měření teploty, vlhkosti, tlaku a koncentrace CO2 |
- | * 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. | + | * jako řídicí platformu použijte Arduino s procesorem ATmega2560 |
- | * Aplikace bude umožňovat vzdálenou instalaci nového digitálního certifikátu pro zabezpečený přenos dat. | + | * zařízení bude komunikovat s pomocí bluetooth a SMS zpráv s mobilním telefonem |
- | * Výsledné řešení otestujte | + | * pomocí vzdálené komunikace bude možné zařízení konfigurovat |
+ | * zařízení bude umožňovat záznam naměřených dat | ||
+ | * celý návrh bude proveden s ohledem na nízkou spotřebu | ||
+ | * pro výsledné zařízení naprogramujte obslužnou aplikací | ||
+ | * aplikaci implementujte v jazyku C | ||
+ | * výsledné řešení řádně 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) | + | * **Nástroj pro tvorbu spolehlivých systémů v FPGA s použitím bezpečnostních kódů (A tool used to generate self-checking circuits based on error control codes)** - (DP - Pail Vojtěch) |
- | * Prostudujte existující řešení | + | * Prozkoumejte existující řešení testování poruch v kombinačních obvodech zabezpečených bezpečnostními kódy |
- | * 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. | + | * Analyzujte poruchové chování zadané sady kombinačních obvodů (benchmárků) |
- | * Knihovna bude umožňovat komunikaci pomocí USB, Bluetooth a Wi-Fi na protokolu TCP/IP. | + | * Specifikujte požadavky na simulátor poruch tak, aby bylo možné na základě získaných dat určit vhodný kód pro zabezpečení. |
- | * Pro vytvořenou knihovnu napište testovací aplikaci, která bude prezentovat funkčnost komunikace. | + | * Vytvořte klasifikaci obvodů s hlediska možností opravy/detekce poruch |
- | * Aplikace bude napsána tak, aby bylo možné ji snadno rozšířit o další funkční prvky. | + | * Navrhněte a naprogramujte nástroj pro generování prediktorů pro různé bezpečností kódy |
- | * 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. | + | * Výsledné řešení zabezpečených kombinačních obvodů otestujte s ohledem na vznik poruch |
- | * **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) | + | * **Programovatelný generátor průběhu (sínus, trojúhelník, obdélník) (A programmable wave generator (sine, triangle, square))** - (BP - Hevessy Karel) |
- | * Navrhněte a realizujte zařízení umožňující monitorování a ovládání chytré domácnosti. | + | - Prozkoumejte existující řešení generování průběhů s pomocí DDS generátorů. |
- | * Zařízení bude obsahovat analogové a digitální vstupy/výstupy. | + | - Navrhněte a zrealizujte zařízení pro generování sínusového, trojúhelníkového a obdélníkového průběhu. |
- | * Pro komunikaci bude zařízení obsahovat GSM a Ethernet modem. | + | - Pro zařízení vyberte vhodnou platformu pro řízení DDS generátorů. |
- | * 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 možné ovládat s pomocí grafického dotykového displeje. |
- | * Zařízení bude umožňovat přijmout SMS a následně odeslat ethernetový rámec s požadovaným obsahem. | + | - Pro výsledné zařízení naprogramujte obslužnou aplikaci. |
- | * 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. | + | - Aplikaci naprogramujte v jazyce C/C++. |
- | * Funkčnost výsledného zařízení demonstrujte na několika příkladech. | + | - Výsledné zařízení otestujte. |
- | * **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) | + | * **Zařízení s nízkou spotřebou pro dohled a vzdálenou správu domácností využívající mobilní sítě LTE (A low power remote surveillance equipment using the LTE network)** - (DP - Procházka Vojtěch) |
- | * 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. | + | - Prozkoumejte existující řešení. |
- | * Prostudujte existující řešení a vyberte vhodnou cílovou aplikaci pro zobrazení vývojového diagramu. | + | - Navrhněte a zrealizujte vlastní zařízení umožňující sledování a vzdálenou správu domácnosti. |
- | * Důraz bude kladen na jednoduchou konverzi mezi jazykem C a vnitřní formou popisu v cílové aplikaci. | + | - Zaměřte se zejména na možnost přenášet data mezí zařízením a vzdáleným server s co možná nejnižší spotřebou energie. |
- | * Navrhněte řešení pro automatické generování vývojových diagramů pomocí podmnožiny příkazů jazyka C. | + | - Zařízení navrhněte tak, aby bylo možné přenášet větší objem dat. |
- | * Navržené řešení zrealizujte a otestujte. | + | - Pro demonstraci správné funkce připojte k zařízení kameru a v určitých intervalech přenášejte statické fotografie. |
- | * Vytvořte několik ukázek možného popisu vývojového diagramu v jazyce C. | + | - Vytvořte jednoduchý server pro příjem dat ze vzdáleného zařízení. |
- | + | - Výsledné řešení otestujte a proveďte analýzu spotřeby v závislosti na množství přenášených dat | |
- | * **Inteligentní ovládání a správa běžných zařízení v domácnosti (A device for controlling and managing of smart home)** - (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. | + | |
- | + | ||
- | * **Generátor elektrických obvodů pro předmět ČAO** (Automatic analog circuit generator)(BP - Branda Šimon) | + | |
- | * 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ů. | + | |
- | * 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. | + | |
- | + | ||
- | * **Univerzální vývojová deska s Arduinem** (Universal development board with Arduino)(BP - Jan Kubát) | + | |
- | * Prozkoumejte existující vývojové desky s Arduinem a zaměřte se zejména na množství a typ periferií. | + | |
- | * Navrhněte vlastní vývojovou desku obsahující velké množství periferií. | + | |
- | * Vývojová deska by měla obsahovat zejména tyto periferie: grafický display, tlačítka, wifi/ethernet, bluetooth, RFID, mobilní GSM a GPS. | + | |
- | * Navržené řešení zrealizujte a otestuje. | + | |
- | * Pro demonstraci správné funkce periferií vytvořte několik demonstračních aplikací. | + | |
- | + | ||
- | * **Programovatelné zařízení s nízkou spotřebou pro ochranu baterie** (Low power programmable device for battery protection) (BP - Miroslav Kallus) | + | |
- | * Prozkoumejte existující řešení. | + | |
- | * Navrhněte vlastní řešení zařízení zajišťující ochranu baterie proti úplnému vybití. | + | |
- | * Zařízení bude umožňovat nastavení minimální úrovně napětí, při kterém má být baterie odpojena od spotřebiče. | + | |
- | * Zařízení bude navrženo tak, aby v klidovém stavu odebíralo minimální proud ze zdroje napájení. | + | |
- | * Pro ovládání a nastavení celého zařízení vyberte vhodný mikrokontrolér. | + | |
- | * Nastavení bude možné provést s pomocí několika tlačítek a jednoduchého displeje. | + | |
- | * Navržené řešení zrealizujte a otestujte. | + | |
- | * Pro výsledné řešení s mikrokontrolérem napište aplikaci umožňující nastavit a sledovat celé zařízení. | + | |
- | + | ||
- | * **Nástroj pro analýzu procesů v jádře os Android na platformě Raspberry PI** (Android core process analysis tool on Raspberry PI platform) | + | |
- | * Explore existing projects that support porting of Android to the Raspberry PI platform. | + | |
- | * Select the most suitable project and port it on the Raspberry PI platform. | + | |
- | * Find a good place in the architecture of Android for the placement of the diagnostic tool. | + | |
- | * Design a tool for performance analysis of Android components. | + | |
- | * Tool will allow to collect required parameters described in configuration file. | + | |
- | * Tool will be written with respect to the next extension. | + | |
- | * Implement a test the proposed tool. | + | |
- | * Create some examples to demonstrate usage of the tool. | + | |
+ | * **Sada nástrojů pro analýzu průmyslových sběrnic včetně hardwarového trigeru (A set of analysis industrial buses tools with hardware trigger)** - (BP - Olekšák Matuš) | ||
+ | - Prozkoumejte existující řešení. | ||
===== Available projects ===== | ===== Available projects ===== | ||
- | **Pokud máte o téma zájem, napište mi email. Rezervace v systému bpm nemá žádnou váhu.** | + | 1. Arduino HW/SW |
- | + | * GPS přijímač a jeho aplikace | |
- | * **Generátor referencí na základě dat uložených ve formátu XML** - Proveďte rešerší existujících řešení. Navrhněte a zrealizujte aplikaci pro generování seznamu referencí na základě dat uložených v XML souboru a šablony pro generování referencí. Reference bude možné vytvářet i hierarchicky. Výstupní formát bude možné konfigurovat s pomocí konfiguračního souboru. Aplikace bude umožňovat editovat jednotlivé záznamy uložené v souboru XML a vytvářet vazby mezi referencemi, jako je například tento článek byl citovat v těchto publikacích. BP - doba práce 2 semestry (volné) (100% SW) | + | * Meteo stanice |
- | + | * GSM modém a jeho aplikace | |
- | * **Linuxové jádro pro vestavěný procesor** - Proveďte rešerši existujících linuxových jader pro vestavěné procesory a najděte vhodné řešení pro procesor ARM osazený na desce beagleboard. Pro tuto desku s pomocí linuxového jádra rozchoďte všechny periférie a napište demo aplikaci. BP, DP - doba práce 2-4 semestry (volné) (100% SW) | + | * NFC a bezkontaktní karty |
- | + | * univerzální desky s různými periferiemi | |
- | * **Programovatelný softwarový generátor všech typů paketů** BP - doba práce 2 semestry (volné) (100% SW) | + | * řízení modelu auta |
- | + | * generator analogových průběhů | |
- | * **Programovatelný hardwarový generátor všech typů paketů** BP, DP - doba práce 2-4 semestry (volné) (80% SW, 20% HW) | + | * vlastní zadání |
- | + | * Wifi a ESP32/ESP2866 | |
- | * **Jednoduchý překladač z jazyka c do mikroprogramu - Simple translator from C to microcode description** - Navrhněte a zrealizujte překladač z programu popsaného podmnožinou příkazů jazyka c do mikroprogramu popsaného v jazyce VHDL. 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, cyklus for a příkaz goto. Implementace bude s ohledem na multiplatformnost provedena v jazyce Java. (BP, DP) - doba práce 2-4 semestry (volné) (90% SW, 10% HW) | + | |
- | + | ||
- | * **Jednoduchý překladač z jazyka c do automatového popisu - Simple translator from C to automata description** - Navrhněte a zrealizujte překladač z programu popsaného podmnožinou příkazů jazyka c do mikroprogramu popsaného v jazyce VHDL. 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, cyklus for a příkaz goto. Implementace bude s ohledem na multiplatformnost provedena v jazyce Java. (BP, DP) - doba práce 2-4 semestry (volné) (90% SW, 10% HW) | + | |
- | + | ||
- | * **Šifrování dat na pevném SATA disku připojeném přes ethernetové rozhraní** - Prostudujte existující hardwarová řešení šifrování dat na pevném disku. Navrhněte a zrealizujte vlastní řešení napsané v jazyce VHDL. Pro návrh použijte existující ethernetové jádro napsané v jazyce VHDL. (DP) - doba práce 2-4 semestry (volné) (50% SW, 50% HW) | + | |
- | + | ||
- | * **Sada nástrojů pro On-Line diagnostiku** (Set of tools for On-Line test) - Naprogramujte sadu nástrojů pro On-Line diagnostiku. Nástroje budou založeny na již existujícím nástroji pro práci s obvody. Tento nástroj zmodifikujte tak, aby umožňoval použít libovolnou techniku pro On-Line testování založenou na bezpečnostních kódech (sudá parita, zdvojení, Berger kód, Hamming kód, atp.). Výsledné řešení bude umožňovat načtení vstupního obvodu, jeho modifikaci na samočinně zabezpečený obvod a jeho konverzi do příslušných VHDL kódů. Aplikace bude podporovat i rozsáhlejší návrh složený z více částí. BP, DP - doba práce 2-4 semestry (volné) (100% SW) | + | |
- | + | ||
- | * **Rychlý osciloskop postavený s pomocí FPGA** (High speed scope based on FPGA) - Navrhněte a zrealizujte levný 1 kanálový 50 Mhz osciloskop postavený s pomocí desky Starter board s obvodem Spartan3e. Jako základ použijte modul tvořený analogovým vstupem s A/D převodníkem. Tento modul upravte tak, aby splňoval požadavky kladené na vstupní části osciloskopu takovýchto parametrů. Pro desku Spartan 3E napište aplikaci pro zpracování dat získaných s A/D převodníku. Získaná data zobrazte. BP, DP - doba práce 2-4 semestry (volné) (50% SW, 50% HW) | + | |
- | + | ||
- | * **JTAG SPI USB programátor pro ATMEL** - Navrhněte programátor včetně programovatelné redukce pro programování mikrořadičů Atmel. BP, DP - doba práce 2-4 semestry (volné) (50% SW, 50% HW) | + | |
- | + | ||
- | * **Vysoce spolehlivý systém železničního zabezpečovacího zařízení založeného na dvou FPGA obvodech** - Prostudujte stávající zrealizované HW zařízení. Prostudujte knihovnu prvků realizujících jednotlivé částí zabezpečovacího systému železnice. Pro toto zařízení napište firmware pro mikrořadič a spolehlivý řídicí systém popsaný v jazyce VHDL a to tak, aby docházelo k vzájemné kontrole obou FPGA obvodů. Řídicí systém musí využívat samočinně testované obvody pro zajištění detekce poruch. Celý systém musí umožňovat vložení poruchy. Návrh ověřte na příkladu zabezpečení železniční stanice. Systém v případě detekce poruchy provede rekonfiguraci špatného FPGA obvodu. BP, DP - doba práce 2-4 semestry (volné) (50% SW, 50% HW) | + | |
- | + | ||
- | * **Programovatelný stmívač světel pro domácí zvířata** - Navrhněte zařízení pro stmívání světel řízené mikrořadičem. Zařízení bude umožňovat stmívat 2 žárovky. Pro zadání průběhu stmívání napište aplikaci. Zařízení bude možné připojit k PC s pomocí USB rozhraní. Upřesňující pokyny zadavatele (kanárek domácí: pí píp - pí - píp pí pí píp) BP - doba práce 2 semestry (volné) (50% SW, 50% HW) | + | |
- | + | ||
- | * **Univerzální řadič displejů** - Prozkoumejte existující řešení. Navrhněte a zrealizujte řadič displeje umožňující jednoduchou komunikaci se znakovým displejem. Komunikace bude probíhat po sériové lince. BP, - doba práce 2 semestry (volné) (60% HW, 40% SW ) | + | |
- | + | ||
- | * **Zařízení pro přenos lokálních informací do internetu s pomocí existujících wifi routeru** - Prostudujte existující řešení úpravy wifi routerů za účelem modifikace a vylepšení jejich funkcí. Upravte linuxové jádro wifi routeru tak, aby bylo možné nahrávat a ukládat vlastní přeložený kód. K wifi routeru připojte jednoduché zařízení (RFID čtečka, teploměr, apod). BP, DP - doba práce 2-4 semestry (volné) (90% SW, 10% HW) | + | |
- | + | ||
- | * **Implementace USB rozhraní FPGA obvodem** - Seznamte se s problematikou USB rozhraní realizovaného FPGA obvody. Prostudujte stávající způsoby realizace tohoto USB rozhraní. Navrhněte a realizujte funkční zařízení, které bude umožňovat přenos dat pomocí USB rozhraní realizované FPGA obvodem. Prostudujte existující řešení USB ovladačů. Na základě získaných informací vytvořte vlastní USB ovladač podporující navržené řešení. Na jednoduché aplikaci demonstrujte funkci vytvořeného řešení. Při návrhu se zaměřte na co možná nejjednodušší řešení, které bude umožňovat přenášet jen jednoduché informace. BP, DP - doba práce 2-4 semestry (volné) (50% HW, 50% SW ) | + | |
- | + | ||
- | * **Síťový simulátor pro výukové účely na bázi prvků OS Linux a CISCO směrovačů (Network simulator based on Linux OS component and CISCO routers)** - Prostudujte existující řešení. Doplňte některé další síťové prvky do již existujícího simulátoru. BP, DP - doba práce 2 semestry (volné) (100% SW) | + | |
- | + | ||
- | * **Zařízení pro sledování objektu s nízkou spotřebou** - 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í. Důraz bude kladen na velmi nízkou spotřebu a co nejmenší pořizovací cenu. Sledovací zařízení bude umožňovat získání fotografie okolí s různou kvalitou. Pro výsledné zařízení navrhněte a nechte vyrobit plošný spoj. BP, DP - doba práce 2-4 semestry (volné) (10% HW, 90% SW) | + | |
- | + | ||
- | * **Generátor samoopravných kódů: Hamming, RS, BCH, LDPC** - Prostudujte existující řešení. Navrhněte vlastní generátor samoopravných kódů. Zadávat bude možné libovolný generující polynom, popřípadě bude možné specifikovat vlastnosti kódu. Zvolte vhodný výstupní formát. BP, DP - doba práce 2-4 semestry (volné) (100% SW) | + | |
- | + | ||
- | * **Simulátor procesoru DOP** - Prostudujte existující řešení. V programovacím jazyku Java implementujte simulátor výukového procesoru DOP-v3. Simulátor musí obsahovat editor 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 (SimDOP). Simulátor musí umožňovat krokování mikroprogramu po jednotlivých mikroinstrukcích i spouštění úseku k zadanému bodu zastavení. BP, DP - doba práce 2-4 semestry (volné) (100% SW) | + | |
- | + | ||
- | * **Generátor obvodů pro předmět ČAO** - Prozkoumejte existující řešení pro kreslení elektrických obvodů. Vytvořte aplikaci, která bude umožňovat na základě zadaných parametrů vytvářet obvody. BP, DP - doba práce 2-4 semestry (volné) (100% SW) | + | |
- | + | ||
- | * **Procesory pro FPGA obvody (Soft processors for FPGA circuits)** - Prostudujte existující řešení procesorů popsaných v jazyce VHDL. Srovnejte jejich parametry. Na základě srovnání implementujte jeden typ procesoru do FPGA obvodu. Vyberte vhodný procesor s ohledem na dostupnost překladačů jazyka C do ASM. Zaměřte se zejména na hotové implementace procesoru AVR. Vytvořte knihovnu pro ovládání základních periferií. Pro přípravek firmy XILINX Spartan 3E vytvořte vzorovou aplikaci využívající všechny funkce vytvořené knihovny. BP, DP - doba práce 2-4 semestry (volné) (80% SW, 20% HW) | + | |
- | + | ||
- | * **Rychlé ethernetové jádro (High speed ethernet core)** - Prostudujte stávající řešení ethernetového jádra pracujícího na rychlostech 1G, 100M napsané v jazyce Verilog dostupné na stránce www.opencores.org a VHDL dostupné jako diplomová práce. Navrhněte a zrealizujte vlastní řešení 1G, 100M ethernetového jádra napsaného v jazyce VHDL a to tak, aby bylo možné využít pouze jednu hodinovou doménu. Pro jednotlivé částí i pro celé jádro proveďte verifikaci. Pro výsledné jádro napište testovací aplikaci demonstrující funkci jádra na všech realizovaných rychlostech. Pro realizaci použijte vývojovou desku Xilinx. (BP, DP 2-4 semestry) | + | |
- | + | ||
- | * **Modul pro správu projektů s VHDL soubory** - Prostudujte stávající řešení vývojového nástroje pro správu VHDL projektů. Do již existujícího řešení implementujte modul, který bude umožňovat přidat do souboru libovolný signál a přenést ho do vyšších úrovní zdrojových VHDL kódů. Vylepšete stávající řešení pro kontrolu konzistence VHDL souborů. V případě potřeby navrhněte nové vývojové prostředí. Otestujte generátor VHDL kódu na základě zadaných parametrů uživatele. Jako programovací jazyk zvolte Javu (BP, DP 2-4 semestry, možnost práce více studentů najednou jako tým) | + | |
- | + | ||
- | * **Portace operačního systému android na vývojovou desku s procesorem ARM** - Prostudujte existující řešení. Analyzujte možnosti portace operačního systému pro vývojovou desku Raspberry pi a BeagleBone Black. Na jednu z těchto desek proveďte portaci a vytvořte knihovny pro obsluhu periferií. Pro vytvořenou knihovnu vytvořte demo aplikaci. (BP, DP 2-4 semestry) | + | |
- | + | ||
- | * **FPGA deska řízená procesorem ARM** - Navrhněte zařízení obsahující FPGA obvod a procesor ARM. Mezi těmito obvody vytvořte komunikační linku vhodnou pro řízení FPGA obvodu s pomoci procesoru ARM. Zvolte vhodnou desku obsahující FPGA obvod. Pro řízení FPGA obvodu použijte vývojový kit Raspberry Pi osazený obvodem ARM. Vytvořte knihovnu funkcí pro procesor ARM umožňující komunikaci s FPGA obvodem. Pro ověření funkce celého spojení vytvořte testovací aplikaci. (BP, DP 2-4 semestry) | + | |
- | + | ||
- | * **Správa slovní zásoby pro os Android** - Vytvořte aplikaci pro správu slovní zásoby. Aplikace bude umožňovat import a export slovíček s pomocí textového souboru. Aplikace bude umožňovat zpracovávat velké objemy slov (10 - 20 tisíc). Důraz bude také kladen na rychlost zpracování slov, ovladatelnost a vhodné grafické prostředí. (BP, DP 2-4 semestry) | + | |
- | + | ||
- | * **Knihovna funkcí v jazyce C pro mikrořadič ARM 32 firmy ATMEL** (BP, DP 2-4 semestry) | + | |
- | + | ||
- | * **Knihovna funkcí v jazyce C pro vývojový kit STM32F030** (BP, DP 2-4 semestry) | + | |
- | + | ||
- | * **Knihovna funkcí v jazyce C pro vývojový kit STM32F4** (BP, DP 2-4 semestry) | + | |
- | + | ||
- | * **Knihovna funkcí v jazyce C pro vývojový kit STM32F303** (BP, DP 2-4 semestry) | + | |
- | + | ||
- | + | ||
- | * **Jednoduchý TCP/IP stack pro malé procesory** (BP, DP 2-4 semestry) | + | |
- | + | ||
- | * **Slovník pro zkušení slovní zásoby využívající sdílené úložiště** (BP, DP 2-4 semestry) | + | |
- | + | ||
- | * **Vysoce spolehlivé zařízení pro automatické dávkování léku - Aplikace pro PC - C# nebo C++** (BP, DP 2-4 semestry) | + | |
- | + | ||
- | * **Vysoce spolehlivé zařízení pro automatické dávkování léku - Firmware pro procesor** (BP, DP 2-4 semestry) | + | |
- | + | ||
- | * **Vysoce spolehlivé zařízení pro automatické dávkování léku - Hardware** (BP, DP 2-4 semestry) | + | |
- | + | ||
- | * **Ethernet 10G jádro** (BP, DP 2-4 semestry) | + | |
- | + | ||
- | * **Ethernet řízený s pomocí SMS využívající ARM processor** (BP, DP 2-4 semestry) | + | |
- | + | ||
- | * **Sledování zařízení s nízkou spotřebou** - Navrhněte a zrealizujte zařízení umožňující sledování spotřeby objektu s nízkou spotřebou. Zařízení bude hlídat stav baterie a v případě poklesu pod určitou hranici celé zařízení odpojí a to včetně samo sebe. Zároveň bude umožňovat sledovat průběh změny stavu a následně upravit vlastní spotřebu až do stavu, kdy se odpojí od zdroje úplně. Baterií bude možné dobíjet ze solárního panelu s regulátorem. Pro vámi navržené zařízení navrhněte a nechte vyrobit plošný spoj. (BP, DP 2-4 semestry) | + | |
- | + | ||
- | * **Knihovna funkcí pro Arduino periferní desky** - Pro různé Arduino periferie vytvořte knihovnu funkcí kterou bude možné přeložit v AVR studio. (BP, DP 2-4 semestry) | + | |
- | + | ||
- | * **Aplikace pro Android umožňující řízení vývojového kitu Arduino** - Prozkoumejte různé způsoby propojení mobilního telefonu a OS Android a vývojového kitu Arduino. Vytvořte knihovnu umožňující komunikaci s touto deskou. Napište demonstrační aplikaci (BP, DP 2-4 semestry) | + | |
- | + | ||
- | * **Spolehlivá aplikace pro AVR/ARDUINO** (BP, DP 2-4 semestry) | + | |
- | + | ||
- | * **Aplikace pro správu VHDL projektů** - Programovací jazyk C++(QT), (BP, DP 2-4 semestry) | + | |
- | + | ||
- | * **Překladač z jazyka C do VHDL** - Automat/Testbench, Programovací jazyk C++, (BP, DP 2-4 semestry) | + | |
- | + | ||
- | * **Řídicí systém s Arduienm** - Pro velké množství periferií vytvořte obslužné knihovny a napište demonstrační aplikaci, (BP, DP 2-4 semestry) | + | |
- | * **Zařízení pro měření a ukládání neelektrických veličin s pomocí ARM procesoru** - K vhodné existující desce s ARM procesorem připojte několik čidel pro měření teploty, tlaku a vlhkosti. Pro procesor s OS Linux vytvořte aplikaci pro sběr a ukládání dat. Konfiguraci zařízení bude možné provádět vzdáleně přes webové rozhraní. Vytvořte demonstrační aplikaci. (BP, DP 2-4 semestry) | + | 2. Volfram Mathematica |
+ | * bezpečnostní kódy | ||
+ | * kódy pro kryptografií | ||
+ | * matematické funkce realizované v HW | ||
+ | * aritmetický procesor v GF(2^2^n) | ||
+ | * efiktivita protokolů pro předmět BI-PSI | ||
+ | * vlastní zadání | ||
- | * **Generátor webové stránky na základě naměřených dat pro OS Windows** - Vytvořte aplikaci pro server s OS Windows, která bude umožňovat zpracovávat data získaná z různých probíhajících úloh a na základě vyhodnocení vytvoří informační stránku o stavu průběhu. (BP, DP 2-4 semestry) | + | 3. Visual C++/C# |
+ | * aplikace pro komunikaci s periferiemi v PC | ||
+ | * aplikace pro komunikaci s procesorem Zynq | ||
+ | * aplikace pro správu projektu ve VHDL | ||
+ | * překladače | ||
+ | * grafické aplikace pro výuku | ||
+ | * vlastní zadání | ||
- | * **Generátor posudků na základě vytvořené šablony** - Vytvořte aplikaci, která na základě šablony umožní vytvořit posudek. Aplikace bude umožňovat šablony vytvářet a editovat. Pro popis šablon použijte nějaký vhodný formát (např, XML). (BP, DP 2-4 semestry) | + | 4. Jazyk VHDL |
+ | * návrh hardware pro bezpečnostní kódy | ||
+ | * generátor průběhů (sinusovka, obdelník, trojuhelník) | ||
+ | * osciloskop | ||
+ | * návrh hardware pro realizaci matematických funkcí | ||
+ | * implementace procesoru/periferié procesoru (ARM, Z80, AVR, ...) | ||
+ | * HW podpora SoC (Zynq) | ||
+ | * aritmetický procesor v GF(2^2^n) | ||
+ | * Hry pro FPGA | ||
+ | * vlastní zadání | ||
- | * **Low power zařízení pro analýzu a ochranu baterie** - Navrhněte a zrealizujte zařízení umožňující chránit baterií před vybitím (přebitím). Pro zařízení napište obslužnou aplikaci, která bude umožňovat zařízení konfigurovat. Při návrhu použijte vhodný AVR mikrořadič. Celé zařízení musí mít nízkou spotřebu. Při detekci nízkého napětí musí dojit k vypnutí zařízení a ke snížení odběru na nulu. (BP, DP 2-4 semestry) | + | 5. Plošné spoje |
+ | * návrh zařízení s porcesorem atmel + drobné periferié | ||
+ | * zařízení s nízkou spotřebou | ||
+ | * vlastní zadání | ||
- | * **Android aplikace ovládající externí hardware** - Prozkoumejte možnosti propojení zařízení s OS Android a externího procesoru. Navrhněte vhodné řešení pro vytvoření jednoduchého spojení zařízení s externím procesorem. Pro OS Android napište knihovnu funkcí pro komunikaci s externím hardware. Napište demonstrační aplikaci. (BP, DP 2-4 semestry) | + | 6. Raspberry PI |
+ | * ovládání jednoduchých periferií | ||
+ | * chytré síť, ovládání periferií přes ethernet | ||
+ | * vzdálená správa sítí | ||
+ | * vlastní zadání | ||
- | * **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) | + | 7. Android |
+ | * aplikace pro práci s hardware (raspberry PI, Arduino a jiné) | ||
- | * **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) | + | 8. Projekty zadané externím zadavatelem |
+ | * seznam zadavatelů níže | ||
- | * **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) | + | **Pokud máte o téma zájem, napište mi email. Rezervace v systému bpm nemá žádnou váhu. Pokud se Vám nelíbí žádné z nabízených témat, koukněte do archívu dostupných zadání.** |
- | * **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) | + | *[[project:2018:proj_archiv|Návrhy zadání dostupných projektů]] |
- | * **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) | + | ===== Projekty zadané externím zadavatelem ===== |
- | * **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) | + | * [[project:eaton:proj_eaton|EATON HW/SW]] |
- | * **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 ===== | ||
- | **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:** [[https://dspace.cvut.cz|BP a DP]] |
- | ===== All projects archives 2004 - 2014 ===== | + | ===== All projects archives 2004 - 2019 ===== |
+ | *[[project:2019:proj_2019|Realized projects 2019]] | ||
+ | *[[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]] |