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 [2021/01/06 11:24]
xkubalik
project:proj_list [2024/02/12 10:11]
xkubalik [Current projects]
Line 2: Line 2:
 ===== Current projects ===== ===== Current projects =====
  
-  * **Návrh spolehlivých ​systémů v FPGA s použitím bezpečnostních kódů ​(Design of dependable ​system ​based on error control codes for FPGA)** (DP - Pail Vojtěch+  * **Platební terminál pro bezhotovostní platby přes nezávislý platební ​systém (Payment terminal for non-cash payments via an independent payment ​system)** (BP – Čtvrtečka Karel
-    * Prozkoumejte existující ​metody ​řešení. +    * Prozkoumejte existující řešení ​zadané problematiky
-    * Analyzujte ​vlastnosti různých typů kombinačních obvodů pomocí sady benchmarků z hlediska odolnosti proti poruchám. Využijte simulační software dostupný na KČN+    * Analyzujte ​možné způsoby realizace terminálu
-    * Na základě takto získaných dat nalezněnte vhodný bezpečnostní kód, který bude schopen tyto poruchy detekovat, popř. i opravovat tak, aby redundance (area ovehead) byla co nejmenší+    * Navrhněte vlastní ​řešení terminálu a vyberte pro něj vhodnou hw platformu
-    * Specifikujte ​požadavky ​na úpravu simulačního softwaru takaby obsahoval podporu pro výběr nejvhodnějšího kódu+    * HW platforma bude podporovat použití OS Linux. 
-    * Navržený způsob ​řešení ověřte na několka příkladech konkrétních obvodů a kódů+    * Řešení bude splňovat tyto požadavky
-    * Vytvořte klasifikaci obvodů s hlediska možností opravy/​detekce poruch.+      - Zařízení bude přenosnénapájené z baterie. 
 +      - Přehledný grafický displej. 
 +      - Čtení RFID karet Mifare. 
 +      - Bezdrátová komunikace přes Wifi. 
 +      - Komunikace se serverem přes REST API. 
 +      - Monitorování systému s nástroji Prometheus. 
 +      - Podpora OTA update 
 +    * Navržené zařízení zrealizujte a řádně otestujte
 +    * Pro výsledné ​řešení napište obslužnou aplikaci demonstrující funkčnost všech částí terminálu.
  
 +  * **Programovatelný řídicí systém pro ovládání periferií náročných na přesné časování (Programmable control system for controlling peripherals requiring precise timing)** (BP - Fujda Martin)
 +    * Prozkoumejte existující řešení zadané problematiky.
 +    * Analyzujte dostupné periférie, protokoly komunikace a ovládaní moduly.
 +    * Vyberte vhodnou HW platformu a navrhněte pro ni integrační desku.
 +    * Navrhněte vlastní zařízení založené na zvolené architektuře.
 +    * Zařízení se bude skládat z: kontroléru,​ síťového modulu, LCD TFT displeje s SD kartou.
 +    * Zařízení bude navrhnuto tak, aby bylo možné připojit externí periferie pomocí nastavitelného portu.
 +    * Realizujte obslužnou aplikaci pro zařízení a periferie.
 +    * Řešení se bude skládat ze serverové části na pozadí a obslužné uživatelské části.
 +    * Implementujte funkční prototyp, řádně ho zdokumentujte a otestujte.
  
  
-  * ** Nástroj pro generování bezpečnostních kódu ve VHDL s pomocí ​programu Wolfram Mathematica ​(Error control code generator tool in VHLD language ​using Wolfram Mathematica)** (BP - Ganeev Timur+  * **Wireless smart cube for time tracking with application Clockify (Bezdrátová chytrá kostka určená ke sledování času s aplikací Clockify)** (BP - Sobíšek David) 
-    ​Prozkoumejte existující řešení. +    * Research existing solutions for wireless smart objects for easier time-tracking. 
-    ​Navrhněte ​a naprogramujte nástroj (sadu nástrojů) v prostředí Wolfram Mathematica umožňující generovat bezpečnostní kódy+    * Design your solution based on the ESP8266 platform. 
-    - Vstupem do generátoru budou základní parametry pro zvolený bezpečnostní kód (počet vstupních vodičů, název výstupních souboru apod.). +    * The designed solution will meet these requirements:​ 
-    - Výstupem generátoru budou 3 VHDL soubory sloužící jako kodérdekodér ​testbench ​pro zvolený ​kód. +      - It will be tracking a project assigned by the user to a side tilted upwards. 
-    ​Zaměřte se zejména na základní paralelní ​kódy: sudá parita, Hammingův kód rozšířený Hammingův kód a dále pak na seriové kódyjako jsou kódy generované mnohočleny ​(cyklický kód). +      - The user will be able to communicate with the device using WiFi. 
-    - Pro každý kód vytvořte několik íkladů, na kterých ​simulačním nástroji ModelSim ukážete správnou funkci generovaných souborů. +      - 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. 
-    - Zároveň ​pro každý vytvořený íklad zjistěte spotřebované zdroje ​při implementaci ​FPGA obvodu.+      - 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. 
 + 
 + 
 +  * **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
 +    ​Prozkoumejte existující řešení. 
 +    ​* Analyzujte technologii dálkového ovládání s pomocí IR ovladače. 
 +    * Navrhněte ​vlastní zařízení založené na mikrokontroleru ATmega
 +    ​* 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 ​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. 
 + 
 + 
 +  * **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) 
 +    * Prozkoumejte existující řešení nástrojů vhodných k výuce bezpečnostních kódů
 +    ​* Analyzujte problémy studentů při výuce bezpečnostních kódů. 
 +    * Zaměřte se zejména na tyto kódy: sudá parita, křížová ​parita, Hammingův kódrozšířený ​i zkrácený ​Hammingův ​kód, cyklický kód, součinový ​kód a RM kód. 
 +    * Navrhněte vlastní nástroje vhodné k výuce těchto kódů. 
 +    * Zaměřte se zejména ​na oblast generovánídekódování a 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. 
 + 
 + 
 +  * **Programovatelná elektronická zátěž ​(Programmable electronic load)** (BP - Pánek Miloš
 +    - Prozkoumejte existující řešení programovatelné elektronické zátěže. 
 +    - Analyzujte problémy současných ​řešení a navrhněte vlastní řešení. 
 +    - Navržené řešení bude podporovat tyto režimy: stálý proud, stálý odpor, stálý výkon a stálé napětí. 
 +    - Programovatelná zátěž bude splňovat tyto požadavky:​ 
 +      - nastavení všech parametru zátěže ​es rozhraní na samotném zařízení, 
 +      - komunikace s PC aplikací přes bluetooth, USB a 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, ​etně průběžného sledování naměřených hodnot a jejich zobrazení přímo v 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. 
 + 
 + 
 +  * **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) 
 +    - Prozkoumejte existující řešení ovládání periferií z FPGA obvodu firmy XILINX. 
 +    - Zaměřte se zejména na tyto periférie: OLED displej, alfanumerický displej, tlačítka, přepínače,​ led diody. 
 +    - Navrhněte vlastní knihovnu zaměřenou na ovládání periferií zejména přes sběrnici I2C. 
 +    - Navrženou knihovnu zrealizujte a řádně otestujte. 
 +    - Pro demonstraci správné funkce periférií napište obslužnou aplikaci pro FPGA Artix-7. 
 +    - Aplikace bude obsahovat menu pro volbu testování periférií a nastavení obsahu registrů. 
 +    - Výsledné řešení řádně otestujte.  
 + 
 + 
 +  * **Multiplatformní nástroj pro odposlech dat z rádiového ​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 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. 
 + 
 +  * **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 bude mít uživatelské rozhraní, které bude umožňovat její nastavení a toto nastavení bude ukládat do lokální databáze.
     - Výsledné řešení řádně otestujte.     - Výsledné řešení řádně otestujte.
  
-  * ** Nástroj ​pro generování násobiček děliček ve VHDL pomocí programu Volfram Mathematica ​(Multiplier and divider circuit generator tool in VHLD language ​using Wolfram Mathematica)** (BP - Kougl Ladislav)+  * **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 a 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č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. 
 + 
 +  * **Aplikace pro chytrou domácnost využívající rádiové spojení jednotek ​Raspberry Pi (Smart home application ​using radio connection of units with Raspberry Pi)** (BP - Zoreník Pavel)
     - Prozkoumejte existující řešení.     - Prozkoumejte existující řešení.
-    - Navrhněte a naprogramujte nástroj (sadu nástrojů) v prostředí Wolfram Mathematica umožňující generovat násobičky a děličky+    - Pomocí metod softwarového inženýrství navrhněte vlastní ​řešení vyhovující níže uvedeným požadavkům
-    - Vstupem do generátoru násobičky ​děličky bude typ operace, šířka vodičů a počet bitů na číslici+    - Navržené řešení naprogramujete,​ zdokumentujte ​řádně otestujte
-    - Generátor násobičky ​bude umožňovat násobení čísel bez znaménkačísel v doplňkovém kódu a to i za použití relativních číslic. +    - Požadavky:​ 
-    Generátor děliček ​bude umožňovat ​dělit celá čísla a čísla menší než jedna. Zaměřte se i na použití dělení čísel využívající metody SRT. +      - webová aplikace na platformě Raspberry Pi (konfigurace zařízení),​ 
-    Pro každý typ násobení a dělení vytvořte několik ​íkladůna kterých v simulačním nástroji ModelSim ukážete správnou funkci generátorů. +      - připojení ​bude provedeno pomocí uživatelského jména a hesla
-    Zaměřte se na prezentaci algoritmu násobení a dělení v programu Wolfram Mathematica takaby byl zřejmý jejich princip. +      - aplikace ​bude umožňovat ​více uživatelů s různým typem oprávnění, 
-    Výsledné řešení řádně otestujte+      - jednotlivá zařízení STM32, prostředí Arduino, 
 +      komunikace zařízení ​es rádiový modul RFM69
 +      provoz zařízení ​na baterii
 +      sledování teploty, ovládání zásuvek. 
 + 
   ​   ​
-===== Available projects =====+===== Available projects ​- FIT =====
  
   1. Arduino HW/SW   1. Arduino HW/SW
Line 46: Line 164:
     * vlastní zadání     * vlastní zadání
     * Wifi a ESP32/​ESP2866     * Wifi a ESP32/​ESP2866
 +    * zařízení pro ochranu baterie před vybitím
  
-  2. Volfram ​Mathematica+  2. Wolfram ​Mathematica
     * bezpečnostní kódy     * bezpečnostní kódy
     * kódy pro kryptografií     * kódy pro kryptografií
Line 79: Line 198:
     * vlastní zadání     * vlastní zadání
  
-  6. Raspberry PI+  6. Raspberry PI / Raspberry PI Pico
     * ovládání jednoduchých periferií     * ovládání jednoduchých periferií
     * chytré síť, ovládání periferií přes ethernet     * chytré síť, ovládání periferií přes ethernet
     * vzdálená správa sítí     * vzdálená správa sítí
 +    * SDR(Software Defined Radio) aplikace - sledování a analýza provozu
     * vlastní zadání     * vlastní zadání
  
Line 91: Line 211:
     * aplikace pro zpracování a generování dat podle šablon     * aplikace pro zpracování a generování dat podle šablon
  
-  9. Projekty zadané externím zadavatelem+  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 
 + 
 +===== Available projects HW - external ===== 
 + 
 +  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. 
 + 
 +  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. 
 + 
 +  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. 
 + 
 +  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. 
 + 
 +  5. Efektivní (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. 
 + 
 +  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. 
 + 
 +  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 v jednotkách řádků videa. 
 + 
 +===== 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 s 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 (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í) 
 + 
 +  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 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 tzv. CI farmy) 
 +    * podpora deklarativního popisu činností (pipelines) 
 +    * porovnání známých CI nástrojů (jenkins, jenkins-x, gitlab, 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íže     * seznam zadavatelů níže
  
Line 114: Line 314:
 ===== All projects archives 2004 - 2019 ===== ===== 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:​2020:​proj_2020|Realized projects 2020]]
   *[[project:​2019:​proj_2019|Realized projects 2019]]   *[[project:​2019:​proj_2019|Realized projects 2019]]
project/proj_list.txt · Last modified: 2024/02/15 10:30 by xkubalik