User Tools

Site Tools


project:proj_list

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
project:proj_list [2017/02/08 14:41]
xkubalik [Current projects]
project:proj_list [2023/02/13 08:50]
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ý+  * **Kamerové zařízení ​pro monitorování vzdáleného prostoru pomocí ESP32-CAM a SIM800L modulů ​(Camera device ​for remote space monitoring using ESP32-CAM and SIM800L modules)** (BP - Staes Adam
-    * Prozkoumejte existující řešení ​hardwarové podpory leteckých simulátorů+    * Prozkoumejte existující řešení. 
-    * Navrhněte ​hardwarové ​řešení podpory leteckého simulátoru+    * Navrhněte ​vlastní zařízení založené na platformě esp32-cam
-    * 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. +    * Zařízení bude splňovat tyto požadavky: 
-    * Panely boudou obsahovat dostatečný ​počet ovládacích prvků jako jsoutlačítka, přepínače, LED kontrolky.+      - pořízení snímku při detekci pohybu na SD kartu, 
 +      - se zařízením bude možné komunikovat ​es SMS příkazy a síť WIFI, 
 +      - zařízení umožní odeslání pořízené fotografie na email přes GPRS GSM sítě, 
 +      - k určení času pořízení snímku bude řešení obsahovat RTC obvod.
     * Navržené řešení zrealizujte.     * Navržené řešení zrealizujte.
-    * Pro komunikaci s leteckým simulátorem ​vytvořte skript využívající FSUIPC knihovnu. +    * Součástí realizace bude vytvoření ​plošného spoje vhodného pouzdra
-    * Pro ověření ​správné funkce vytvořte jednoduchou maketu MPC EFIS panelu+    * Výsledné řešení ​řádně ​otestujte.
-    * 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+  * **Nástroje ​pro podpora výuky bezpečnostních kódů v prostředí Wolfram Mathematica ​(Tools to support the teaching of security codes in the Wolfram Mathematica environment)** (BP Linhartová Helena
-    * Navrhněte jádro aplikace umožňující výměnu informací s pomocí spolehlivé komunikační linky+    * Prozkoumejte existující řešení nástrojů vhodných k výuce bezpečnostních kódů
-    * Zařízení bude podporovat minimálně 2 sériová rozhraní. +    * Analyzujte problémy studentů při výuce ​bezpečnostních kódů
-    * Komunikace bude probíhat v textové ​binární podobě zabezpečené jednoduchým ​bezpečnostním kódem+    * Zaměřte se zejména na tyto kódy: sudá parita, křížová paritaHammingův kód, rozšířený i zkrácený Hammingův kód, cyklický kód, součinový kód RM kód
-    * Jádro bude umožňovat kontrolovat i parametry navrženého protokolu. +    * Navrhněte vlastní nástroje ​vhodné ​k výuce těchto kódů
-    * Se zařízením bude možné vyměňovat jednoduché parametrypole parametrů a bloky dat z paměti  ​ +    * Zaměřte se zejména na oblast generování,​ dekódování ​opravy těchto kódů. 
-    * Pro spolehlivé zpracování komunikace navrhněte vhodné ​spolehlivé schéma - například několik vláken+    * Nástroje budou umožňovat ​generovat nejen výukové notebooky pro program Wolfram Mathematica,​ ale i VHDL kódy a testbenche pro lepší ​edstavu jejich implementace v hardware. 
-    * Navržené jádro otestuje ​nasimulujte různé způsoby uváznutí částí programu+    * Nástroj bude podporovat ​vložení chyby a jeji opravu. 
-    * 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.+    * Navržené řešení realizujte a řádně otestujte.
  
-  * ** 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+  * **Programovatelná elektronická zátěž (Programmable electronic load)** (BP Pánek Miloš
-    ​* Z počítačRaspberry Pi vytvořte zařízení pro zpracování ​prezentaci dat z internetu+    ​- Prozkoumejte existující řešení programovatelné elektronické zátěže. 
-    ​* Pro toto zařízení ​vyberte vhodný OS+    - Analyzujte problémy současných ​řešení a navrhněte vlastní ​řešení. 
-    ​* 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)+    - Navržené řešení bude podporovat tyto režimy: stálý proud, stálý odpor, stálý výkon ​stálé napětí
-    ​* Za účelem získání dat ze souboru nebo webové stránky použijte jednoduchý skriptovací jazyk. +    ​- Programovatelná zátěž bude splňovat tyto požadavky:​ 
-    * Zařízení bude možné konfigurovat ​ovládat pomocí zabezpečeného síťového spojení ze vzdáleného PC nebo přímo ​lokálně pomocí dotykového displeje+      - nastavení všech parametru zátěže přes rozhraní na samotném ​zařízení
-    ​* Aplikace ​bude umožňovat vzdálenou instalaci nového digitálního certifikátu pro zabezpečený ​enos dat+      - komunikace s PC aplikací přes bluetooth, USB a wifi, 
-    ​* Výsledné ​řešení otestujte+      - záznam naměřených dat lokálně na SD kartu, 
 +      - jednoduchý protokol pro komunikaci s PC s možným rozšířením pro další funkcionalitu
 +    ​- Pro PC navrhněte a naprogramujte aplikaci v jazyce C# s grafickým rozhraním
 +    ​- Aplikace v PC bude umožňovat nastavit všechny parametry zátěže, včetně průběžného sledování naměřených hodnot ​jejich zobrazení ​přímo ​v aplikaci.  
 +    ​- Parametry zátěže ​bude možné v průběhu měření měnit podle edem nastavených hodnot
 +    ​- Navržené ​řešení ​zrealizujte a řá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+  * **Zařízení ​pro ovládání základních periferií připojených k FPGA obvodu ​(Device for controlling basic peripherals connected to the FPGA circuit)** (BP - Šebek Michal
-    ​* Prostudujte ​existující řešení +    ​- Prozkoumejte ​existující řešení ​ovládání periferií z FPGA obvodu firmy XILINX. 
-    ​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+    ​- Zaměřte se zejména na tyto periférie: OLED displej, alfanumerický displej, tlačítka, přepínače,​ led diody. 
-    ​* Knihovna bude umožňovat komunikaci pomocí USB, Bluetooth ​Wi-Fi na protokolu TCP/IP+    - Navrhněte ​vlastní ​knihovnu ​zaměřenou na ovládání periferií zejména přes sběrnici I2C
-    ​Pro vytvořenou knihovnu ​napište ​testovací ​aplikaci, která bude prezentovat funkčnost komunikace+    ​- Navrženou knihovnu zrealizujte ​řádně otestujte
-    ​Aplikace bude napsána tak, aby bylo možné ji snadno rozšířit o další funkční prvky+    ​Pro demonstraci správné funkce periférií ​napište ​obslužnou ​aplikaci ​pro FPGA Artix-7
-    ​* 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 bude obsahovat menu pro volbu testování periférií a nastavení obsahu registrů
 +    ​- Výsledné řešení řádně otestujte
  
-  * **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. 
  
-    +  * **Multiplatformní nástroj pro odposlech dat z rádiového přenosu pomocí SDR (A multi-platform wireless data sniffing tool using SDR)** (DP - Šimůnek Martin) 
-===== Available projects =====+    - Analyzujte technologii SDR(softwarově definovaného rádia) a jeho možnosti pro odchytávání bezdrátových zařízení. 
 +    - Zaměřte se zejména na zařízení pracující v pásmu 433MHz a 868MHz. 
 +    - Prozkoumejte existující řešení pro odchytávání a analýzu těchto zařízení. 
 +    - Využijte SDR a navrhněte nástroj pro odposlech dat přenášených rádiovým signálem v pásmu 433MHz a 868 MHz. 
 +    - Nástroj by měl být tvořen knihovnou a grafickým rozhraním pro odposlech a zpracování naměřených dat. 
 +    - Podporována budou zejména zařízení typu: bezdrátový teplotní senzor, bezdrátové senzory v automobilu a bezdrátové měřiče tepla v domácnostech.  
 +    - Nastroj bude umožňovat analyzovat přenos, a to jak nešifrovaný,​ tak i šifrovaný. 
 +    - Pokud bude k dispozici klíč pro dešifrování,​ bude nástroj umožňovat i dešifrování,​ a to zejména pro bezdrátové měřiče tepla v domácnostech. 
 +    - Navržené řešení zrealizujte a řádně otestujte.
  
-**Pokud máte o téma zájem, napište mi emailRezervace ​systému bpm nemá žádnou váhu.**+  ​* **Zařízení pro ovládání aplikace Adobe Lightroom s pomocí hardwarového ovladače (A device to control Adobe Lightroom using a hardware driver)** (BP - Macháček Vitězslav) 
 +    - Prozkoumejte existující řešení umožňující ovládání aplikace Adobe Lightroom s hardwarového ovladače. 
 +    - Pomocí metod softwarového inženýrství navrhněte vlastní řešení vyhovující níže uvedeným požadavkům. 
 +    - Navrhněte vlastní zařízení fungující jako samostatný ovladač splňující tyto požadavky:​ 
 +      - komunikace s aplikací bude realizována přes USB a Bluetooth,​ 
 +      - ovladač bude umožňovat čtení vstupů z encodérů, tlačítek a Hallových senzorů, 
 +      - ovladač bude napájen z baterie. 
 +    - Navržený ovladač zrealizujte a naprogramujte. 
 +    - Pro PC vytvořte vlastní aplikaci umožňující zpracování dat z ovladače a jejich přenos do aplikace Adobe Lightroom Classic. 
 +    - Aplikace ​PC bude dále umožňovat načtení konfiguračního souboru ovladače. 
 +    - Výsledné řešení řádně otestujte.
  
-  * **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 ​šablony ​pro generování referencíReference ​bude možné vytvářet i hierarchickyVýstupní formát ​bude možné konfigurovat s pomocí konfiguračního souboruAplikace ​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 ​těchto publikacíchBP doba práce 2 semestry (volné) (100% SW)+  * **Přenosné zařízení pro odposlech NFC komunikace pomocí SDR založené ​na platformě Raspberry Pi (Portable device for sniffing NFC communication using SDR based on the Raspberry Pi platform)** (DP Balko Martin) 
 +    - Prozkoumejte existující nástroje určené k analýze NFC komunikace. 
 +    - Analyzujte technologií SDR (softwarově definovaného rádia). 
 +    - Analyzujte technologii NFC, zejména princip komunikace mezi NFC čtečkou NFC kartou (MIFARE Classic, MIFARE DESFire, MIFARE Plus). 
 +    - Analyzujte ​navrhněte způsob ​pro odposlech NFC komunikace pomoci SDR. 
 +    - Navrhněte přenosné zařízení,​ které ​bude umožňovat odposlech, záznam a prvotní analýzu NFC komunikace. 
 +    - Zařízení ​bude schopné odchytit UID karty a komunikaci směrem od čtečkyPokud bude signál dostatečně silný, zaznamená i komunikaci směrem od karty. 
 +    - Navržené řešení zrealizujte na platformě Raspberry Pi. 
 +    - Pro výsledné zařízení napište ​jazyce Python obslužnou aplikaci. 
 +    ​Výsledné zařízení řádně otestujte.
  
-  * **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 beagleboardPro tuto desku s pomocí linuxového jádra rozchoďte všechny periférie ​napište demo aplikaciBP, DP doba práce 2-4 semestry ​(volné) (100% SW)+  * **Aplikace ​pro chytrou domácnost využívající rádiové spojení jednotek s Raspberry Pi** (BP Zoreník Pavel) 
 +    - 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í naprogramujete,​ zdokumentujte ​řádně otestujte. 
 +    ​Požadavky:​ 
 +      ​webová aplikace na platformě Raspberry Pi (konfigurace zařízení)
 +      - připojení bude provedeno pomocí uživatelského jména a hesla, 
 +      - aplikace bude umožňovat více uživatelů s různým typem oprávnění,​ 
 +      - jednotlivá zařízení STM32, prostředí Arduino, 
 +      - komunikace zařízení přes rádiový modul RFM69, 
 +      - provoz zařízení na baterii, 
 +      - sledování teploty, ovládání zásuvek.
  
-  * **Programovatelný softwarový generátor všech typů paketů** BP - doba práce 2 semestry (volné) (100% SW) 
  
-  ​* **Programovatelný hardwarový generátor všech typů paketů** BP, DP doba práce 2-4 semestry (volné) (80% SW, 20% HW)+  ​ 
 +===== Available projects ​FIT =====
  
-  * **Jednoduchý ​ekladač z jazyka c do mikroprogramu - Simple translator from C to microcode description** - Navrhněte ​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 ​eložit následující prvky jazyka C: aritmetické a logické operace, podmíněný výraz if (else ifelse)cyklus whilecyklus 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)+  ​1. Arduino HW/SW 
 +    ​GPS ijímač a jeho aplikace 
 +    ​Meteo stanice 
 +    ​GSM modém ​jeho aplikace 
 +    * NFC a bezkontaktní karty 
 +    * univerzální desky s různými periferiemi 
 +    * řízení modelu auta 
 +    * generator analogových průběhů 
 +    * ípravky pro desku digilent CMOD A7/S7 (displejtlačítkaswitcheatd.) 
 +    * návrh hardware pro desku digilent CMOD A7/S7 
 +    * vlastní zadání 
 +    * Wifi ESP32/​ESP2866 
 +    * zařízení pro ochranu baterie ​ed vybitím
  
-  * **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 ​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)+  ​2. Wolfram Mathematica 
 +    ​bezpečnostní kódy 
 +    ​kódy pro kryptografií 
 +    ​matematické funkce realizované v HW 
 +    ​aritmetický procesor v GF(2^2^n) 
 +    ​efiktivita protokolů pro edmět BI-PSI 
 +    * vlastní zadání
  
-    ​* **Šifrování dat na pevném SATA disku 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)+  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í
  
-  * **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á paritazdvojeníBerger kódHamming 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)+  ​4. Jazyk VHDL / desky FPGA 
 +    ​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 ​(ARMZ80AVR, ...
 +    * HW podpora SoC (Zynq) 
 +    * aritmetický procesor v GF(2^2^n) 
 +    * Hry pro FPGA 
 +    * vlastní zadání
  
-  * **Rychlý osciloskop postavený ​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 ​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)+  ​5. Plošné spoje 
 +    ​návrh zařízení ​porcesorem atmel + drobné periferié 
 +    ​zařízení ​nízkou spotřebou 
 +    * vlastní zadání
  
-  * **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)+  ​6. Raspberry PI / Raspberry PI Pico 
 +    ​ovládání jednoduchých periferií 
 +    ​chytré síť, ovládání periferií přes ethernet 
 +    ​vzdálená správa sítí 
 +    ​SDR(Software Defined Radioaplikace - sledování a analýza provozu 
 +    * vlastní zadání
  
-  * **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% SW50% HW)+  ​7. Android 
 +    ​aplikace ​pro práci s hardware ​(raspberry PIArduino a jiné)
  
-  * **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)+  ​8. Python 
 +    ​aplikace ​pro zpracování a generování dat podle šablon
  
-  * **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 )+  ​9. Neuronové sítě 
 +    ​Model neuronové sítě ve Wolfram Mathematice 
 +    ​Model neuronové sítě v jazyce c++ 
 +    ​Implementace neuronu a neuronové sítě v hardware 
 +    ​Implementace neuronové sítě v SoC
  
-  * **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)+===== Available projects HW external =====
  
-  * **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é informaceBP, DP - doba práce 2-4 semestry (volné) (50% HW, 50% SW )+  ​1. Malý grafický displej do výšky 1U s rotačním enkodérem ovládaný přes SPI 
 +    ​* Navrhněte a zrealizujte grafický TFT displej ovládaný ​pomocí ​sběrnice SPI. 
 +    * Displej by měl obsahovat ​možnost zadávání příkazů (tlačítka,​ rotační encoder,​…).  
 +    * Výška displeje musí splňovat ​normu 1U.  
 +    * Pro vytvořený displej naprogramujte framework, který usnadní práci s displejem.
  
-  * **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átoruBP, DP doba práce 2 semestry (volné) (100% SW)+  ​2. OSD displej v FPGA 
 +    ​Navrhněte a zrealizujte On-Screen displej v obvodu FPGA pro video stream 
 +    * OSD displej by měl fungovat na formátech od 720p do 4K, jak progressive,​ tak interlaced.  
 +    * Požadavkem je minimální využití zdrojů v FPGA 
 +    * OSD se bude ovládat pomocí sběrnice AXI4-Lite.
  
-  * **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 objektukterý není připojen trvale k internetu ani k elektrické sítíDůraz bude kladen na velmi nízkou spotřebu ​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ý spojBP, DP - doba práce 2-4 semestry (volné) (10% HW, 90% SW)+  ​3. Konfigurovatelný filtr ethernetoveho rámce v FPGA 
 +    ​* Navrhněte ​a zrealizujte konfigurovatelný filtr ethernetového rámce ​umožňující ​filtrovat pakety podle zadaných parametrů (MACIP…) do více streamů, nebo jednoho streamu označeného identifikátorem 
 +    * Pro vstupní ​výstupní interface ​bude použit AXI4 Stream pro zajištění kompatibility.
  
-  * **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óduZvolte vhodný výstupní formát. BP, DP - doba práce 2-4 semestry (volné) (100% SW)+  ​4. Zpracování I2S signálu s integraci do AXI Stream 
 +    ​* Navrhněte ​a zrealizujte konverzní modul v FPGA ze standartního interface I2S na interface AXI4 Stream a opačně.  
 +    * Modul by měl zvládat konverzi různé datové šířky audio samplu a multiplexování více audio streamu do jednoho I2S interfacu.
  
-  ​* **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)+  ​5Efektivní ​(de)interlacing 12G SDI videa 
 +    * Navrhněte a zrealizujte ​(de)interlacer 6G a 12G SDI videa do progressive formátu 
 +    * Modul může pracovat jak nad SDI formátem, tak na Native video formátem.
  
-  ​* **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 obvodyBP, DP - doba práce 2-4 semestry (volné) (100% SW)+  ​6. Embedded audio konvertor na AXi4 Stream a zpět 
 +    ​Navrhněte a zrealizujte konverzní modul v FPGA z SDI Embedded audia na interface AXI4 Stream a opačně.  
 +    * Modul by měl zvládat konverzi různé datové šířky audio samplu.
  
-  ​* **Procesory pro FPGA obvody (Soft processors for FPGA circuits)** - Prostudujte existující řešení procesorů popsaných ​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é knihovnyBP, DP - doba práce 2-4 semestry (volné) (80% SW, 20% HW)+  ​7. Nízkolatenční komprese v FPGA s využitím vlnové transformace 
 +    ​Navrhněte a zrealizujte nízkolatenční video kodek v FPGA založený ​na vlnkové transformaci 
 +    * Latence kodeku by se měla pohybovat ​jednotkách ​řádků videa.
  
-  * **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)+===== Available projects SW external =====
  
-  ​* **Modul ​pro správu projektů ​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 ​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ůí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)+  ​1. Optimalizace Java aplikací ​pro horizontální škálování v moderní mikroservisní architektuře - spolupráce ​průmyslem 
 +    ​využití AoT kompilace a minimalizace start-up času 
 +    ​výběr vhodného JVM a analýza jeho výhod pro minimální náročnost na prostředky (např. GraalVM) 
 +    * využití vhodného frameworku ​analýza jeho výhod (např. Quarkus) 
 +    * analýza možností využití pro serverless architekturu (např. Knative) 
 +    * využití komunikace ​es gRPC 
 +    * podpora feature flagů pro release management 
 +    * vlastní zadání
  
-  ​* **Portace operačního systému android na vývojovou desku 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)+  ​2. Virtualizace a izolace aplikačních prostředí - spolupráce ​průmyslem 
 +    ​využití OCI kontejnerů jako způsob doručování aplikací 
 +    ​analýza bezpečnostních chyb využívané technologie docker a možnosti ​jejich eliminace 
 +    * porovnání s jinými přístupy (např. podman, buildah apod.) 
 +    * lokální orchestrace kontejnerů (docker-compose vs podman-compose) 
 +    * vnořování kontejnerů (např. docker(-compose)-in-docker/​podman) 
 +    * vlastnosti container file systemů (např. OverlayFS) 
 +    * bezpečné (rootless) spuštění více kontejnerů uvnitř kontejneru
  
-  * **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 ARMVytvořte knihovnu funkcí pro procesor ARM umožňující komunikaci s FPGA obvodemPro ověření funkce celého spojení ​vytvořte testovací aplikaci. ​(BP, DP 2-4 semestry)+  ​3. Orchestrace kontejnerů v distribuovaném on-premise prostředí - spolupráce s průmyslem 
 +    ​porovnání vlastností využívaných pro jako container runtime (containerd vs docker vs CRI-O) 
 +    ​kubernetes vs jeho komerční distribuce (openshift, tanzu) 
 +    ​helm vs yaml manifesty (+ možnosti jejich úprav, např. kustomize) 
 +    ​realizace ingress load balancerů v lokálním on-premise prosředí 
 +    * vytvoření persistence v distribuovaném prostředí (např. Ceph, Rook, GlusterFS apod.
 +    * správa citlivých údajů (šifrování kubernetes secrets, PAM nástroje) 
 +    * vytvoření vlastního kubernetes operátora ​(vlastní zadání)
  
-  * **Správa slovní zásoby pro os Android** - Vytvořte aplikaci ​pro správu slovní zásoby. Aplikace bude umožňovat import ​export slovíček 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í. ​(BPDP 2-4 semestry)+  ​4. Podpora vývoje a administrace prostředí prostřednictvím automatizace - spolupráce s průmyslem 
 +    ​analýza praktik DevOps přístupu, GitOps, SecOps, ChatOps, AIOps 
 +    ​analýza a představení SRE (Site reliability engineering) praktik 
 +    ​vytvoření a nasazení prostředí ​pro kompletní podporu ​životního cyklu aplikace naplňující znaky GitOps ​IaaC (infrastructure as a code) 
 +    * zabezpečení SVC repozitářů přes GPG klíče 
 +    * podpora IaaC nástrojů (ansible, chef+puppet,​ cloud vendor proprietární nástroje, terraform) 
 +    * využití CI nástroje ​dynamickým vytěžováním zdrojů dle aktuální zátěže ​(návrh tzvCI farmy) 
 +    * podpora deklarativního popisu činností (pipelines) 
 +    * porovnání známých CI nástrojů (jenkinsjenkins-x, gitlab, tekton, github actions) 
 +    * návrh procesů pro validaci aplikací před jejich nasazením prostřednictvím testů
  
-  * **Knihovna funkcí v jazyce C pro mikrořadič ARM 32 firmy ATMEL** (BP, DP 2-4 semestry)+  ​5. Projekty zadané externím zadavatelem 
 +    ​seznam zadavatelů níže
  
-  ​* **Knihovna funkcí ​jazyce C pro vývojový kit STM32F030** (BPDP 2-4 semestry) +**Pokud máte o téma zájem, napište mi email. Rezervace ​systému bpm nemá žádnou váhu. Pokud se Vám nelíbí žádné z nabízených tématkoukněte do archívu dostupných zadání.**
-  +
-  ​* **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) 
  
 +  *[[project:​2018:​proj_archiv|Návrhy zadání dostupných projektů]]
  
-  * **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)+===== Projekty zadané externím zadavatelem =====
  
-  * **Vysoce spolehlivé zařízení pro automatické dávkování léku - Aplikace pro PC - C# nebo C++** (BP, DP 2-4 semestry)+  * [[project:​eaton:​proj_eaton|EATON HW/SW]]
  
-  * **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) 
- 
-  * **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) 
- 
-  * **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) 
- 
-  * **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) 
- 
-  * **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) 
- 
-  * **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) 
  
 ===== 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:​2022:​proj_2022|Realized projects 2022]]
 +  *[[project:​2021:​proj_2021|Realized projects 2021]]
 +  *[[project:​2020:​proj_2020|Realized projects 2020]]
 +  *[[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]]
project/proj_list.txt · Last modified: 2024/02/15 10:30 by xkubalik