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 [2014/09/22 08:50]
xkubalik [All projects archives 2004 - 2013]
project:proj_list [2024/01/29 08:56]
xkubalik [Current projects]
Line 1: Line 1:
 ====== All projects ====== ====== All projects ======
-===== Actual works =====+===== Current projects ​=====
  
-  * **Malé procesory AVR pro FPGA obvody (Small soft processors AVR for FPGA circuits)** (BP Haken Lukáš) ​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: +  * **Wireless Smart Cube for Time Tracking with application Clockify ()** (BP - Sobíšek David) 
-    * 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+    * Research existing solutions for wireless smart objects for easier time-tracking
-    * K procesoru vytvořte několik rozhraní umožňujících komunikaci s periferiemi desky XILINX Spartan 3E+    * Design your solution based on the ESP8266 platform
-    * Vytvořte knihovnu v jazyce C pro ovládání základních periferií+    * The designed solution will meet these requirements:​ 
-    * Analyzujte možnosti rozšíření paměti tohoto procesoru+      - It will be tracking a project assigned by the user to a side tilted upwards
-    * Pro přípravek firmy XILINX Spartan 3E vytvořte vzorovou aplikaci využívající všechny funkce vytvořené knihovny.+      - The user will be able to communicate with the device using WiFi. 
 +      - The tracked data will be sent to the application Clockify using their public REST API interface or stored on a microSD card when WiFi is not reachable. 
 +      - LEDs inside the device will light up to indicate the actions and states of the device. 
 +      - Its batteries will be charged wirelessly
 +    * Implement your proposed solution and adequately test it.
  
  
-  * **Procesory pro FPGA obvod (Soft processors for FPGA circuits)** (BP Filip Matouš) - Prostudujte ​existující řešení ​procesorů popsaných v jazyce VHDLSrovnejte jejich parametry. Na základě srovnání implementujte jeden typ procesoru do FPGA obvodu. Proveďte tyto úkoly: +  * **Dálkově ovládaný analogový zesilovač zvuku ovládaný s pomocí IR ovladače ​(Remote controlled analog sound amplifier using an IR controller)** (BP - Vacek Kryštof) 
-    * Vyberte vhodný procesor ​ohledem na minimální spotřebu zdrojů FPGA a možnost programování v jazyce C+    * Prozkoumejte ​existující řešení. 
-    * Vytvořte knihovnu pro ovládání ​základních periferií+    * Analyzujte technologii dálkového ovládání ​pomocí IR ovladače. 
-    * Rozšiřte základní paměť zvoleného procesoru+    * Navrhněte vlastní zařízení založené na mikrokontroleru ATmega
-    * Pro přípravek firmy XILINX Spartan 3E vytvořte vzorovou aplikaci využívající všechny funkce vytvořené knihovny.+    * Zařízení bude splňovat tyto požadavky:​ 
 +      - Ovládání bude prováděno,​ jak pomocí IR dálkového ​ovládání, tak na samotném zařízení s pomocí rotačního enkodéru a tlačítek
 +      - Zařízení bude zobrazovat aktuální stav a nastavení zesilovače. 
 +      - Zařízení bude umožňovat výběr mezi různými vstupy
 +    * Navržené řešení zrealizujte a řádně otestujte.
  
 +  * **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í.
 +    * Navrhněte vlastní zařízení založené na platformě esp32-cam.
 +    * Zařízení bude splňovat tyto požadavky:
 +      - pořízení snímku při detekci pohybu na SD kartu,
 +      - se zařízením bude možné komunikovat př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.
 +    * Součástí realizace bude vytvoření plošného spoje a vhodného pouzdra.
 +    * Výsledné řešení řádně otestujte.
  
-  * **Konstrukce vícerotorového dronu pro průzkum terénu (Quadrocopter for terrain survey)** - (DP Halák Jakub) - 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 Horák Radim) ​Navrhněte a zrealizujte konstrukci mobilního robota, který bude bezdrátově ovládán s pomocí RC vysílačkyRobot bude obsahovat měřič vzdálenostigyroskopakcelerometrmagnetometrGPS, čidlo teploty ​vlhkostiNižší 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í: +  * **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 ​a zrealizujte konstrukci šestikolového robota+    * Prozkoumejte existující řešení nástrojů vhodných k výuce bezpečnostních kódů. 
-    * Navrhněte a zrealizujte řídicí desku pro ovládání všech periferií+    * Analyzujte problémy studentů při výuce bezpečnostních kódů. 
-    * Pro použitý mikrořadič vytvořte knihovny ​pro ovládání periferií+    * Zaměřte se zejména na tyto kódy: sudá paritakřížová paritaHammingův kódrozšířený i zkrácený Hammingův kódcyklický kódsoučinový kód RM kód
-    * Pro robota napište testovací demo aplikaci využívající všechna periférie+    * Navrhněte ​vlastní nástroje vhodné k výuce těchto kódů
-    * Proveďte testy k otestování správné funkce robota pro různá prostředí.+    * Zaměřte se zejména na oblast generování,​ dekódování ​opravy těchto kódů
 +    * Nástroje budou umožňovat generovat nejen výukové notebooky ​pro program Wolfram Mathematica,​ ale i VHDL kódy a testbenche pro lepší představu jejich implementace v hardware
 +    * Nástroj bude podporovat i vložení chyby a jeji opravu
 +    * Navržené ​řešení realizujte a řádně otestujte.
  
-  * **Aplikace pro zkoušení slovní zásoby na platformě Android (Vocabulary testing application for OS Android)** (BP - Mayerová Eva) - 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 - Kukačka Jiří) - Prostudujte ​existující řešení. Vyberte vhodný realtimový operační systém pro ovládání quadrokoptéry na platformě Raspberry PiVytvořte knihovnu funkcí v programovacím jazyce C pro ovládání jednotlivých periferií potřebných pro chod quadrokoptéryPostup prací: +  * **Programovatelná elektronická zátěž ​(Programmable electronic load)** (BP - Pánek Miloš) 
-    ​* Vyberte vhodný operační systémporovnejte RTOS vs GPOS+    ​Prozkoumejte ​existující řešení ​programovatelné elektronické zátěže. 
-    ​* Navrhněte schéma propojení periferií k řídící jednotceschéma ​komunikace s periferií ​struktury ​řídicího programu. +    - Analyzujte problémy současných ​řešení a navrhněte vlastní ​řešení
-    * Vytvořte jádro řídicího programu+    ​- Navržené řešení bude podporovat tyto režimy: stálý proudstálý odpor, stálý výkon a stálé napětí
-    ​* Vytvořte knihovnu pro ovládání specifických periferií potřebných pro správné fungování quadrokoptéry+    ​- Programovatelná zátěž bude splňovat tyto požadavky:​ 
-    ​* Analyzujte možnosti využití algoritmů pro řízení ​navigaci ​prostoru+      - nastavení všech parametru zátěže přes rozhraní na samotném zařízení, 
-    ​* Vytvořte praktickou ukázku ​běhu programu využívající všechny dostupné periférie potřebné pro řízení quadrokoptéry.+      - komunikace s PC aplikací přes bluetooth, USB wifi, 
 +      - 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 ​aplikaci.  
 +    ​- Parametry zátěže bude možné v průběhu měření měnit podle předem nastavených hodnot. 
 +    - Navržené řešení zrealizujte a řádně otestujte.
  
-  * **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 - Mach Václav) - 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 - Michal ​Horáček- 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í: +  * **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í ​[1, 2, 3]+    ​- Prozkoumejte ​existující řešení ​ovládání periferií z FPGA obvodu firmy XILINX
-    ​* Prozkoumejte možnosti konfigurace sítě na systémech Debian/​Ubuntu. +    ​- Zaměřte ​se zejména na tyto periférie: OLED displejalfanumerický displej, tlačítka, přepínače, led diody
-    * 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ů. +    ​- Navrhněte vlastní knihovnu zaměřenou na ovládání periferií zejména ​es sběrnici I2C
-    * Vytvořené ​řešení začleňte do již existujícího simulátoru [12, 3]+    ​- Navrženou knihovnu zrealizujte a řádně otestujte. 
-    ​* Napište návod pro použití simulátoru a to včetně vytvořeného modulu. +    ​- Pro demonstraci správné funkce periférií napište obslužnou aplikaci ​pro FPGA Artix-7
-    * Vytvořte ​íklad použití vytvořeného modulu+    - Aplikace bude obsahovat menu pro volbu testování periférií a nastavení obsahu registrů
-    ​* Výsledné ​řešení včetně návodu ​otestujte. +    ​- Výsledné řešení řádně 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.+
  
  
-===== Available works =====+  * **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) 
 +    - 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.
  
-  * **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 souboru. Aplikace bude umožňovat ​editovat jednotlivé záznamy uložené v souboru XML vytvářet vazby mezi referencemi,​ jako je například tento článek byl citovat v těchto publikacíchBP - doba práce 2 semestry (volné) (100% SW)+  * **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 Bluetooth,​ 
 +      - ovladač bude umožňovat čtení vstupů z encodérů, tlačítek ​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 ​bude mít uživatelské rozhraní, které ​bude umožňovat ​její nastavení ​toto nastavení bude ukládat do lokální databáze. 
 +    - Výsledné ​řešení ​řádně otestujte.
  
-  * **Linuxové jádro ​pro vestavěný procesor** - Proveďte rešerši existujících linuxových jader pro vestavěné procesory ​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)+  * **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 a NFC kartou (MIFARE Classic, MIFARE DESFire, MIFARE Plus). 
 +    - Analyzujte a navrhněte způsob ​pro odposlech NFC komunikace pomoci SDR. 
 +    - Navrhněte přenosné zařízení,​ které bude umožňovat odposlech, záznam ​prvotní analýzu NFC komunikace. 
 +    - Zařízení bude schopné odchytit UID karty a komunikaci směrem od čtečky. Pokud 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 ​v jazyce Python obslužnou ​aplikaci. 
 +    ​Výsledné zařízení řádně otestujte.
  
-  * **Programovatelný softwarový generátor všech typů paketů** BP - doba práce 2 semestry (volné) (100% SW)+  * **Aplikace pro chytrou domácnost využívající rádiové spojení jednotek s Raspberry Pi (Smart home application using radio connection of units with 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 a řá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ý hardwarový generátor všech typů paketů** BP, DP - doba práce 2-4 semestry (volné) (80% SW, 20% HW) 
  
-  ​* **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)+  ​ 
 +===== Available projects ​FIT =====
  
-  * **Jednoduchý ​ekladač z jazyka c do automatového popisu ​ - Simple translator from C to automata 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
  
-    ​* **Š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)+  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 předmět BI-PSI 
 +    * 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 ​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 í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)+  ​3. Visual C++/C# 
 +    ​aplikace ​pro komunikaci s periferiemi v PC 
 +    ​aplikace ​pro komunikaci ​procesorem Zynq 
 +    * aplikace ​pro správu projektu ve VHDL 
 +    * ekladač
 +    * grafické aplikace pro výuku 
 +    * vlastní zadání
  
-  ​* **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 takaby 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íkuZískaná data zobrazte BP, DP - doba práce 2-4 semestry ​(volné) (50% SW, 50% HW)+  ​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 (ARM, Z80, AVR, ...
 +    * HW podpora SoC (Zynq) 
 +    * aritmetický procesor v GF(2^2^n) 
 +    * Hry pro FPGA 
 +    * 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)+  ​5. Plošné spoje 
 +    ​návrh zařízení s porcesorem atmel + drobné periferié 
 +    ​zařízení s nízkou spotřebou 
 +    * 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č ​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)+  ​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 Radio) aplikace ​sledování ​analýza provozu 
 +    * vlastní zadání
  
-  * **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 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% SW50% HW)+  ​7. Android 
 +    ​aplikace ​pro práci ​hardware ​(raspberry PIArduino a jiné)
  
-  * **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 )+  ​8. Python 
 +    ​aplikace pro zpracování a generování dat podle šablon
  
-  * **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 ​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)+  ​9. Neuronové sítě 
 +    ​Model neuronové sítě ve Wolfram Mathematice 
 +    ​Model neuronové sítě v jazyce c++ 
 +    ​Implementace neuronu ​neuronové sítě v hardware 
 +    * Implementace neuronové sítě v SoC
  
-  * **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 )+===== Available projects HW external =====
  
-  ​* **Síťový simulátor pro výukové účely na bázi prvků OS Linux 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átoruBPDP - doba práce 2 semestry (volné) (100% SW)+  ​1. Malý grafický displej do výšky 1U s rotačním enkodérem ovládaný přes SPI 
 +    * Navrhněte ​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,…).  
 +    ​ška displeje musí splňovat normu 1U 
 +    * Pro vytvořený displej naprogramujte frameworkkterý usnadní práci s displejem.
  
-  * **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í ​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í cenuSledovací zařízení bude umožňovat získání fotografie okolí s různou kvalitouBP, DP doba práce 2 semestry (volné) (10% HW, 90% 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.
  
-  * **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)+  ​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ů (MAC, IP…) do více streamů, nebo jednoho streamu označeného identifikátorem 
 +    * Pro vstupní a výstupní interface ​bude použit AXI4 Stream pro zajištění kompatibility.
  
-  * **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 ​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)+  ​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 ​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.
  
-  * **Generátor obvodů pro předmět ČAO** - Prozkoumejte existující řešení pro kreslení elektrických obvodů. Vytvořte aplikacikterá bude umožňovat ​na základě zadaných parametrů vytvářet obvodyBP, DP - doba práce 2-4 semestry (volné) (100% SW)+  ​5. Efektivní (de)interlacing 12G SDI videa 
 +    ​Navrhněte a zrealizujte (de)interlacer 6G a 12G SDI videa do progressive formátu.  
 +    ​Modul můžpracovat jak nad SDI formátemtak na Native video formátem.
  
-  * **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)+  ​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č 
 +    * Modul by měl zvládat konverzi různé datové ​šířky audio samplu.
  
-  * **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 ​jazyce VHDL a to tak, aby bylo možné využít pouze jednu hodinovou doménuPro 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)+  ​7. Nízkolatenční komprese v FPGA s využitím vlnové transformace 
 +    ​* Navrhněte a zrealizujte ​nízkolatenční video kodek FPGA založený na vlnkové transformaci 
 +    * Latence kodeku by se měla pohybovat ​jednotkách řádků videa.
  
-  ​* **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 modulkterý 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í ​ř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živateleJako programovací jazyk zvolte Javu (BPDP 2-4 semestrymožnost práce více studentů najednou jako tým)+===== Available projects SW - external ===== 
 + 
 +  1. Optimalizace Java aplikací pro horizontální škálování v moderní mikroservisní architektuře - spolupráce s 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 a analýza jeho výhod (např. Quarkus) 
 +    * analýza možností využití ​pro serverless architekturu (např. Knative) 
 +    * využití komunikace přes gRPC 
 +    * podpora feature flagů pro release management 
 +    * vlastní zadání 
 + 
 +  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 
 + 
 +  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 (openshifttanzu) 
 +    * 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í) 
 + 
 +  4Podpora vývoje a administrace prostředí prostřednictvím automatizace - spolupráce s průmyslem 
 +    * analýza praktik DevOps ​í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 a 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 s 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-xgitlab, tekton, github actions) 
 +    * návrh procesů pro validaci aplikací před jejich nasazením prostřednictvím testů 
 + 
 +  5. Projekty zadané externím zadavatelem 
 +    * seznam zadavatelů níž
 + 
 +**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í.** 
 + 
 + 
 +  *[[project:​2018:​proj_archiv|Návrhy zadání dostupných projektů]] 
 + 
 + 
 +===== Projekty zadané externím zadavatelem ===== 
 + 
 +  * [[project:​eaton:​proj_eaton|EATON HW/SW]]
  
-  * **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) 
  
  
 ===== 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 - 2013 =====+===== 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:​2015:​proj_2015|Realized projects 2015]]
   *[[project:​2014:​proj_2014|Realized projects 2014]]   *[[project:​2014:​proj_2014|Realized projects 2014]]
   *[[project:​2013:​proj_2013|Realized projects 2013]]   *[[project:​2013:​proj_2013|Realized projects 2013]]
Line 146: Line 311:
  
   * [[:​start|Pavel Kubalík'​s Home Page]]   * [[:​start|Pavel Kubalík'​s Home Page]]
- 
  
  
project/proj_list.txt · Last modified: 2024/02/15 10:30 by xkubalik