This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
project:proj_list [2022/02/11 09:09] xkubalik [Current projects] |
project:proj_list [2023/02/07 14:59] xkubalik [Current projects] |
||
---|---|---|---|
Line 2: | Line 2: | ||
===== Current projects ===== | ===== Current projects ===== | ||
+ | * **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 př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, vč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 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. | ||
+ | |||
+ | * **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. | ||
+ | - 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 v PC bude dále umožňovat nastavení chování ovladače a nastavenou konfiguraci ukládat lokálně. | ||
+ | - Výsledné řešení řádně otestujte. | ||
+ | |||
+ | * **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 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. | ||
* **Řídící jednotka pro vzdálené monitorování a ovládání vytápění rodinného domu (Control unit for remote monitoring and control of family house heating)** (BP - Bukač Jakub) | * **Řídící jednotka pro vzdálené monitorování a ovládání vytápění rodinného domu (Control unit for remote monitoring and control of family house heating)** (BP - Bukač Jakub) | ||
Line 57: | Line 114: | ||
- | * **Zařízení pro měření vytíženosti zdrojů vestavného procesoru pří obsluze externích modulů (The resource consumption measure device of embedded processor handling external modules)** - (BP - Kocourek Matěj) | + | * **Platforma pro měření efektivity komunikace mikrokontroleru Arduino s externími senzory(The communication effectivity measure platform of Arduino microcontroller handling external sensors)** - (BP - Kocourek Matěj) |
- | - Prozkoumejte existující řešení. | + | - Prozkoumejte existující řešení pro měření efektivity komunikace při obsluze většího množství senzorů. |
- | - Navrhněte vlastní zařízení umožňující připojení většího množství externích modulů k vestavnému procesoru. | + | - Navrhněte vlastní zařízení umožňující připojení většího množství externích senzorů k platformě Arduino. |
- | - Vyberte vhodnou testovací platformu umožňující analýzu spotřeby paměti, procesorového času a elektrické energie v závislosti na počtu připojených externích modulů. | + | - Navržené řešení bude umožňovat analýzu využité paměti, procesorového času a elektrické energie v závislosti na počtu připojených externích senzorů. |
- | - Každý externí modul bude obsahovat aspoň jeden senzor a jeden ovladací prvek. | + | - Pro komunikaci mezi mikrokontrolerem Arduino a externími senzory použijte protokol RS485. |
- | - Pro vzájemnou komunikaci vyberte vhodný komunikační protokol. | + | - Navržené řešení zrealizujte a řádně otestujte. |
- | - Navržené řešení zrealizujte. | + | - V jazyce C++ napište obslužnou aplikaci Arduina. |
- | - Pro výsledné řešení napište obslužnou aplikaci umožňující měřit velikost potřebné paměti, dobu obsluhy externího modulu, dobu odezvy a výslednou spotřebu. | + | - Pro účely testování a analýzy spotřeby zdrojů vytvořte aplikaci v C++ pro OS Windows emulující velké množství senzorů. |
- | - Na základě získaných výsledků měření určete nároky na použitý vestavný systém v závislosti na počtu připojených externích modulů. | + | - Na základě získaných výsledků navrhněte algoritmus pro efektivní obsluhu velkého množství senzorů s pomocí mikrokontroleru Arduino. |
+ | |||
Line 128: | Line 186: | ||
* Navržené řešení zrealizujte a řádně otestujte. | * Navržené řešení zrealizujte a řádně otestujte. | ||
- | * **Systém pro sledování vozidel a zaznamenávání knihy jízd pomocí GPS lokátorů (A vehicle tracking system with a recording of journey logs using GPS)** (BP - Jehlička Matěj) | ||
- | * Prozkoumejte existující řešení. | ||
- | * Pomocí metod softwarového inženýrství navrhněte a naprogramujte aplikaci pro sledování vozidel v reálném čase, která bude nasbíraná data ukládat a dále zpracovávat. | ||
- | * Řešení se bude skládat ze serverové části a uživatelské části představované lokátorem (tyto dvě zařízení budou mezi sebou komunikovat přes síť Internet) | ||
- | * Navržené řešení zrealizujte a řádně otestujte. | ||
- | * Požadavky: | ||
- | * GPS lokátor bude postaven na platformě ESP32 | ||
- | * lokátor bude odesílat data na server pomocí GPRS/EDGE | ||
- | * server bude umožňovat zobrazení pozice lokátorů v reálném čase | ||
- | * server bude umožňovat připojení několika lokátorů | ||
- | * server bude zaznamenávat polohu a metadata z lokátorů | ||
- | * uživatelské rozhraní bude realizováno formou webové aplikace. | ||
- | |||
- | * **Přenosný přístupový identifikační systém využívající technologii NFC a umožňující komunikaci přes GSM bránu (Portable access identification system using NFC technology and communicating via GSM gateway)** (BP - Šimůnek Martin). | ||
- | * Prozkoumání existující řešení. | ||
- | * Analyzujte technologii NFC a možnost využití platformy arduino jako ovládací prvek. | ||
- | * Analyzujte a navrhněte bezpečné řešení s ohledem na omezené zdroje platformy Arduino. | ||
- | * Navržené zařízení se bude skládat z Arduino mikrokontroleru, GSM modulu pro posílání SMS zpráv, čtečky NFC a LCD displeje. | ||
- | * Komunikace se zařízením bude probíhat přes technologii GSM – formou SMS a za pomoci LCD displeje (základní orientační údaje). | ||
- | * Navržené řešení zrealizujte a řádně otestujte. | ||
- | |||
- | * **Pokročilé bezpečnostní kódy v programu Wolfram Mathematica (Advanced error control codes using Wolfram Mathematica)** (DP - Koleník Stanislav) | ||
- | * Rozšiřte již existující sadu výukových scénářů pro podporu výuky bezpečnostních kódů o vybrané pokročilé kódy. | ||
- | * Dodržte členění na výukové scénáře a balíčky a zachovejte jejich formát. | ||
- | * Zaměřte se především na Fireovy kódy, součinové kódy, RM kódy, nebinární BCH kódy a RS kódy, Goppa kódy a kódy konvoluční. | ||
- | * V dostatečné míře nastudujte a zdokumentujte příslušnou matematickou teorii. | ||
- | * Navržené řešení zrealizujte a řádně otestujte. | ||
- | * Vytvořte několik příkladů použití každého kódu. | ||
- | * Využijte získaných poznatků ke zmapování současného stavu použití bezpečnostních kódů v kryptografii. | ||
- | |||
- | * **Osobní GPS lokátor na platformě Arduino ovládaný přes SMS příkazy (Personal GPS locator based on Arduino platform controlled by SMS commands)** - (BP - Stáhl Martin) | ||
- | * Prozkoumejte existující řešení pro osobní GPS lokátory. | ||
- | * Analyzujte technologii GSM/GPS | ||
- | * Analyzujte a navrhněte řešení které řeší nedostatky momentálně dostupných zařízení na trhu | ||
- | * Zaměřte se na zařízení které není závislé na pohotovostní službě na vzdáleném serveru | ||
- | * Navržené zařízení se bude skládat z: Arduino mikrokontroléru, GPS/GSM modulu, baterie, mobilní android aplikace pro snadné generovaní textových SMS příkazů | ||
- | * Komunikace bude probíhat přes technologiii GSM a textové SMS příkazy | ||
- | * Navržené zařízení zrealizujte a řádně otestujte | ||
- | |||
- | * **Generátor VHDL kódu (VHDL code generator)** - (BP - Fořt Rostislav) | ||
- | * Prozkoumejte existující řešení. | ||
- | * Pomocí metod softwarového inženýrství navrhněte a naprogramujte aplikaci pro generování základních struktur VHDL kódu. | ||
- | * Vytvořte několik šablon ukazujících práci s aplikací. | ||
- | * Výsledné řešení řádně otestujte. | ||
- | * Požadavky: | ||
- | * Aplikace bude napsaná v jazyce C++ | ||
- | * Aplikace bude umožňovat vytvářet a upravovat šablony VHDL struktur | ||
- | * Aplikace bude umožňovat ze šablon generovat kód | ||
- | * Aplikace bude schopná ve VHDL kódu rozpoznat entitu a umožní její použití v šabloně, např. pro automatické generování testbenche. | ||
- | |||
- | * **Zabezpečený tisk z mobilního telefonu s OS Android s pomocí Bluetooth (Secure print using a mobile application for Bluetooth interface)** - (BP - Balko Martin) | ||
- | * Prozkoumejte existující řešení pro Bluetooth tisk. | ||
- | * Analyzujte Bluetooth a bezpečnost Bluetooth komunikace. | ||
- | * Analyzujte a navrhněte řešení které zvýší samotné zabezpečení Bluetooth protokolu. | ||
- | * Zaměřte se zejména na řešení, které není závislé na použité verzi protokolu Bluetooth. | ||
- | * Navržené řešení se bude skládat ze: serverové časti pro Raspberry Pi a uživatelské části pro Android zařízení. | ||
- | * Bluetooth komunikace bude probíhat mezi serverovou a uživatelskou částí. | ||
- | * Navržené zařízení zrealizujte a řádně otestujte. | ||
- | |||
| | ||
- | ===== Available projects ===== | + | |
+ | ===== Available projects - FIT ===== | ||
1. Arduino HW/SW | 1. Arduino HW/SW | ||
Line 240: | Line 240: | ||
* 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 248: | Line 249: | ||
* aplikace pro zpracování a generování dat podle šablon | * aplikace pro zpracování a generování dat podle šablon | ||
- | 9. Optimalizace Java aplikací pro horizontální škálování v moderní mikroservisní architektuře | + | 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 | * 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) | * výběr vhodného JVM a analýza jeho výhod pro minimální náročnost na prostředky (např. GraalVM) | ||
Line 257: | Line 300: | ||
* vlastní zadání | * vlastní zadání | ||
- | 10. Virtualizace a izolace aplikačních prostředí | + | 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í | * 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 | * analýza bezpečnostních chyb využívané technologie docker a možnosti jejich eliminace | ||
Line 266: | Line 309: | ||
* bezpečné (rootless) spuštění více kontejnerů uvnitř kontejneru | * bezpečné (rootless) spuštění více kontejnerů uvnitř kontejneru | ||
- | 11. Orchestrace kontejnerů v distribuovaném on-premise prostředí | + | 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) | * porovnání vlastností využívaných pro jako container runtime (containerd vs docker vs CRI-O) | ||
* kubernetes vs jeho komerční distribuce (openshift, tanzu) | * kubernetes vs jeho komerční distribuce (openshift, tanzu) | ||
Line 275: | Line 318: | ||
* vytvoření vlastního kubernetes operátora (vlastní zadání) | * vytvoření vlastního kubernetes operátora (vlastní zadání) | ||
- | 12. Podpora vývoje a administrace prostředí prostřednictvím automatizace | + | 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 praktik DevOps přístupu, GitOps, SecOps, ChatOps, AIOps | ||
* analýza a představení SRE (Site reliability engineering) praktik | * analýza a představení SRE (Site reliability engineering) praktik | ||
Line 286: | Line 329: | ||
* návrh procesů pro validaci aplikací před jejich nasazením prostřednictvím testů | * návrh procesů pro validaci aplikací před jejich nasazením prostřednictvím testů | ||
- | 13. Projekty zadané externím zadavatelem | + | 5. Projekty zadané externím zadavatelem |
* seznam zadavatelů níže | * seznam zadavatelů níže | ||
Line 309: | Line 352: | ||
===== 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]] |