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
project:proj_list [2018/02/22 09:06]
xkubalik [Current projects]
project:proj_list [2024/02/15 10:30] (current)
xkubalik
Line 2: Line 2:
 ===== Current projects ===== ===== Current projects =====
  
-  * **Hardware ​pro podporu leteckého simulátoru** - (Hardware support ​for fly simulator)(BP - Michal Buchovecký+  * **Platební terminál ​pro bezhotovostní platby přes nezávislý platební systém ​(Payment terminal ​for non-cash payments via an independent payment system)** (DP – Čtvrtečka Karel
-    * Prozkoumejte existující řešení ​hardwarové podpory leteckých simulátorů. +    * Prozkoumejte existující řešení ​zadané problematiky. 
-    * Navrhněte ​hardwarové ​řešení ​podpory leteckého simulátoru+    * Analyzujte možné způsoby realizace terminálu
-    * 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+    * Navrhněte ​vlastní ​řešení ​terminálu a vyberte pro něj vhodnou hw platformu
-    * Panely boudou obsahovat dostatečný ​počet ovládacích prvků jako jsou: tlačítka, ​epínače, LED kontrolky+    * Zařízení navrhněte tak, aby bylo odolné vůčí zneužití cizí osobou
-    * Navržené ​řešení zrealizujte+    * HW platforma bude podporovat použití OS Linux. 
-    * Pro komunikaci ​leteckým simulátorem vytvořte skript využívající FSUIPC knihovnu+    * Řešení bude splňovat tyto požadavky: 
-    * Pro ověření správné funkce vytvořte jednoduchou maketu MPC EFIS panelu+      - Zařízení bude přenosné a napájené z baterie. 
-    * Výsledné ​řešení ​propojte a otestujte s leteckým simulátorem Microsoft Flight Simulator X.+      - Přehledný grafický displej. 
 +      - Ovládání terminálu bude možné s pomocí ​tlačítek. 
 +      - Čtení RFID karet Mifare. 
 +      - Bezdrátová komunikace se serverem ​es Wifi
 +      - Komunikace se serverem přes REST API
 +      - Monitorování systému ​nástroji Prometheus. 
 +      - Podpora OTA update
 +    * Navržené zařízení zrealizujte ​řá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.
  
-  * ** Aplikace pro spolehlivé ovládání hardware s pomocí sériové komunikace (Application used for reliable serial communication)** - (DP - Martin Chudoba) 
-    * Navrhněte jádro aplikace umožňující výměnu informací s pomocí spolehlivé komunikační linky. 
-    * Zařízení bude podporovat minimálně 2 sériová rozhraní. 
-    * Komunikace bude probíhat v textové i binární podobě zabezpečené jednoduchým bezpečnostním kódem. 
-    * Jádro bude umožňovat kontrolovat i parametry navrženého protokolu. 
-    * Se zařízením bude možné vyměňovat jednoduché parametry, pole parametrů a bloky dat z paměti. ​   
-    * Pro spolehlivé zpracování komunikace navrhněte vhodné spolehlivé schéma - například několik vláken. 
-    * Navržené jádro otestuje a nasimulujte různé způsoby uváznutí částí programu. 
-    * 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. 
  
-  * ** Aplikace pro spolehlivé ovládání hardware s pomocí sériové komunikace (Application used for reliable serial communication)** (DP Martin Chudoba+  * **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
-    * 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í+    * Research existing solutions for wireless smart objects for easier time-tracking
-    * Základní funkční a nefunkční požadavky jsou: +    * Design your solution based on the ESP8266 platform. 
-    * 1. Analyzujte požadavky ​proveďte návrh protokolu ​modulu pro komunikaci tak, aby bylo možné přenášet různě velké struktury dat a to jak binárně, tak i textově+    * The designed solution will meet these requirements:​ 
-    * 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+      - It will be tracking ​project assigned by the user to side tilted upwards
-    * 3. Diskutujte ​zvolte vhodnou implementační platformu+      - The user will be able to communicate with the device using WiFi
-    * 4. Návrh implementujte+      - The tracked data will be sent to the application Clockify using their public REST API interface or stored on microSD card when WiFi is not reachable
-    * 5. Navrhněte a implementujte demonstrační aplikaci, která začlení a použije komunikační modul+      - LEDs inside the device will light up to indicate the actions and states of the device
-    * 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. +      - Its batteries will be charged wirelessly
-    * 7. Zhodnoťte přínos řešení.+    * Implement your proposed solution and adequately test it.
  
-  * ** 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) 
-    * Z počítače Raspberry Pi vytvořte zařízení pro zpracování a prezentaci dat z internetu. 
-    * Pro toto zařízení vyberte vhodný OS. 
-    * Navrhněte a naprogramujte aplikaci v jazyce C pro získávání a zpracování dat z různých zdrojů (periferie Raspberry Pi, SD karta, internet). 
-    * Za účelem získání dat ze souboru nebo webové stránky použijte jednoduchý skriptovací jazyk. 
-    * Zařízení bude možné konfigurovat a ovládat pomocí zabezpečeného síťového spojení ze vzdáleného PC nebo přímo lokálně pomocí dotykového displeje. 
-    * Aplikace bude umožňovat vzdálenou instalaci nového digitálního certifikátu pro zabezpečený přenos dat. 
-    * Výsledné řešení otestujte 
  
-  * ** Knihovna funkcí pro podporu diagnostického protokolu ​s pomocí ​UDP (UDP support library for diagnostic protocol)** (BP - Jaromír Mikušík+  * **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í ​diagnostické protokoly používané pro vyčítání dat a nahrávání software do mikrokontroleru+    * Prozkoumejte existující ​řešení
-    * Vyberte vhodný diagnostický protokol a vytvořte pro něj vhodnou knihovnu funkcí umožňující jeho spolehlivé fungování nad UDP protokolem+    * Analyzujte technologii dálkového ovládání s pomocí IR ovladače
-    * Implementované funkce budou navrženy a implementovány s ohledem na minimální latence a timeouty běžné při implementaci nad TCP protokolem+    * Navrhněte vlastní zařízení založené na mikrokontroleru ATmega
-    * Knihovna funkci ​bude rozdělená na části server ​klient+    * Zařízení bude splňovat tyto požadavky:​ 
-    * Server ​bude implementován v jazyce C++ obecně pro libovolný mikrokontroler+      - 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 ​tlačítek
-    * Client ​bude s ohledem na použití na PC implementován v jave+      - Zařízení ​bude zobrazovat aktuální stav a nastavení zesilovače
-    * Výsledné ​řešení otestujte.+      - Zařízení ​bude umožňovat výběr mezi různými vstupy
 +    * Navržené ​řešení ​zrealizujte a řádně ​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) +  * **Kamerové ​zařízení pro monitorování ​vzdáleného prostoru ​pomocí ​ESP32-CAM SIM800L modulů (Camera ​device for remote space monitoring using ESP32-CAM ​and SIM800L modules)** (BP - Staes Adam)
-    * Prostudujte existující řešení +
-    * 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. +
-    * Knihovna bude umožňovat komunikaci pomocí USB, Bluetooth a Wi-Fi na protokolu TCP/IP. +
-    * Pro vytvořenou knihovnu napište testovací aplikaci, která bude prezentovat funkčnost komunikace. +
-    * Aplikace bude napsána tak, aby bylo možné ji snadno rozšířit o další funkční prvky. +
-    * 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 pro zpracování a prezentaci dat z experimentů pro OS Windows (Application used for management and presentation of experimental data based on OS Windows platform)** - (BP - Roman Artemov) +
-    * Navrhněte a implementujte aplikaci pro zpracování a prezentaci experimentálních dat. +
-    * Aplikace bude napsána v Microsoft ASP.NET MVC. +
-    * Aplikace bude umožňovat s pomocí jednoduchého skriptu zpracovat výsledky z naměřených experimentálních dat. +
-    * Zpracovaná data bude možné prezentovat jako tabulku nebo graf. +
-    * Nastavování plánování extrakce dat s pomocí jednoduchého skriptu bude možné s pomocí Windows task scheduleru. +
-    * Extrahovaná data budou exportována do generického XML dokumentu a následně zpracována implementovanou aplikací. +
-    * Autentizace pro přístup k webové stránce bude řešena s pomocí SSO ve federaci cvutID. +
-    * Vzdálená zpráva aplikace (nastavení plánování,​ šablon a základní konigurace) bude umožněna přes zabezpečené webové rozhraní. +
-    * Pro výslednou aplikaci vytvořte několik testovacích dat pro ověření správné funkce. +
- +
-  * **Dohledové ​zařízení pro chytrou domácnost založené na platformě Arduino (Monitoring device used in smart home based on Arduino platform)** - (BP - Martin Dvořák) +
-    * Navrhněte a realizujte zařízení umožňující ​monitorování ​a ovládání chytré domácnosti. +
-    * Zařízení bude obsahovat analogové a digitální vstupy/​výstupy. +
-    * Pro komunikaci bude zařízení obsahovat GSM a Ethernet modem. +
-    * Při volbě periferií se zaměřte zejména na možnost sledování stavu zálohovací baterie a možnosti ovládat externí zařízení s pomocí ​Relé. +
-    * Zařízení bude umožňovat přijmout SMS a následně odeslat ethernetový rámec s požadovaným obsahem. +
-    * Zrealizované zařízení následně propojte s vývojovou deskou Raspberry PI, na které bude nainstalován vhodný operační systém včetně jednoduchého dohledového software. +
-    * Funkčnost výsledného zařízení demonstrujte na několika příkladech. +
- +
-  * **Nástroj pro generování vývojových diagramů z podmnožiny jazyka C (A tool for generating flowcharts from a subset of C language)** ​(BP - Vojtěch Procházka) +
-    * Cílem práce je vytvořit nástroj pro generování vývojových diagramů zejména pro vyjádření funkce mikroprogramového automatu. +
-    * Prostudujte existující řešení ​vyberte vhodnou cílovou aplikaci pro zobrazení vývojového diagramu. +
-    * Důraz bude kladen na jednoduchou konverzi mezi jazykem C a vnitřní formou popisu v cílové aplikaci. +
-    * Navrhněte řešení pro automatické generování vývojových diagramů pomocí podmnožiny příkazů jazyka C. +
-    * Navržené řešení zrealizujte a otestujte. +
-    * Vytvořte několik ukázek možného popisu vývojového diagramu v jazyce C. +
- +
-  * **Inteligentní ovládání a správa běžných zařízení v domácnosti ​(device for controlling ​and managing of smart home)** - (BP - Vojtěch Pail) +
-    * Prostudujte existující řešení pro ovládání a správu zařízení používaných pro chytré domácnosti. +
-    * Navrhněte vlastní systém založený na modulární architektuře. +
-    * Řešení bude obsahovat základní jednotku pro správu a řízení a univerzální modul umístěný u ovládaného zařízení. +
-    * Pro propojení těchto modulů navrhněte vhodnou propojovací strukturu včetně komunikačního protokolu. +
-    * Navržené řešení zrealizujte a otestujte. +
-    * Vytvořte několik ukázek možných aplikaci pro ovládání jednotlivých zařízení jakou jsou světla, zásuvky apod. +
- +
-  * **Generátor elektrických obvodů pro předmět ČAO** (Automatic analog circuit generator)(BP - Branda Šimon) +
-    * Prozkoumejte existující řešení pro kreslení elektrických obvodů. +
-    * Vytvořte aplikaci, která bude umožňovat na základě zadaných parametrů automaticky náhodně generovat jednoduché obvody složené ze zdroje napájení, kondenzátorů,​ rezistorů a cívek. +
-    * Aplikace bude umožňovat nastavit hodnoty a typ součástky v obvodu. +
-    * Výsledné schéma bude možné překreslit tak, aby se změnila pouze pozice součástky. +
-    * Vygenerované schéma bude možné uložit do formátu XML a opětovně načíst. +
-    * Aplikace bude umožňovat popsat obvod s pomocí rovnic a to jak v časové oblasti, tak s pomocí fázorů. +
-    * Vygenerované rovnice bude možné bez úprav vložit do programu Wolfram Mathematica a zpracovat. +
-    * Při generování rovnic bude možné zvolit směr proudu a napětí ručně, popřípadě automaticky. +
-    * Výsledné řešení otestujte. +
- +
-  * **Univerzální vývojová deska s Arduinem** (Universal development board with Arduino)(BP - Jan Kubát) +
-    * Prozkoumejte existující vývojové desky s Arduinem a zaměřte se zejména na množství a typ periferií. +
-    * Navrhněte vlastní vývojovou desku obsahující velké množství periferií. +
-    * Vývojová deska by měla obsahovat zejména tyto periferie: grafický display, tlačítka, lineární potenciometr,​ teploměr/​vlhkoměr,​ ultrazvukový měřic vzdálenosti,​ wifi/​ethernet,​ bluetooth, RFID. +
-    * Navržené řešení zrealizujte a otestuje. +
-    * Pro demonstraci správné funkce periferií vytvořte několik demonstračních aplikací. +
- +
-  * **Programovatelné zařízení s nízkou spotřebou pro ochranu baterie** (Low power programmable device for battery protection) ​(BP - Miroslav Kallus)+
     * Prozkoumejte existující řešení.     * Prozkoumejte existující řešení.
-    * Navrhněte vlastní ​řešení ​zařízení ​zajišťující ochranu baterie proti úplnému vybití. +    * Navrhněte vlastní zařízení ​založené na platformě ​esp32-cam
-    * Zařízení bude umožňovat nastavení minimální úrovně napětí, při kterém má být baterie odpojena od spotřebiče. +    * Zařízení ​bude splňovat ​tyto požadavky: 
-    * Zařízení bude navrženo tak, aby v klidovém stavu odebíralo minimální proud ze zdroje napájení. +      pořízení snímku ​i detekci pohybu ​na SD kartu
-    * Pro ovládání a nastavení celého zařízení vyberte vhodný mikrokontrolér. +      se zařízením ​bude možné komunikovat ​přes SMS íkazy ​síť WIFI
-    * Nastavení bude možné provést s pomocí několika tlačítek a jednoduchého displeje. +      - zařízení ​umožní odeslání pořízené fotografie ​na email es GPRS GSM sítě, 
-    * Navržené ​řešení zrealizujte a otestujte. +      - k určení času pořízení ​snímku bude řešení ​obsahovat RTC obvod
-    * Pro výsledné řešení s mikrokontrolérem napište aplikaci umožňující nastavit a sledovat celé zařízení. +    Navržené řešení ​zrealizujte. 
- +    * Součástí realizace bude vytvoření ​plošného spoje a vhodného pouzdra
-  * **Nástroj pro analýzu procesů v jádře os Android ​na platformě ​Raspberry PI** (Android core process analysis tool on Raspberry PI platform) (BP Roman Vaivod) +    Výsledné ​řešení ​řádně otestujte.
-    * Explore existing projects that support porting of os Android to the Raspberry PI platform+
-    * Select the most suitable project and port it on the Raspberry PI platform. +
-    * Find a good place in the architecture of Android for the placement of the diagnostic tool. +
-    * Design a tool for performance analysis of Android components. +
-    * Tool will be developed in C++ language +
-    * Tool will allow to trace events happening with specified process in specified period of time and create a list where each entry is described by at least three parameters: CPU usage, memory usage, system/​process event. +
-    * Based on this list, tool will detect possible performance problems in execution of the process and output problematic sequence of events to user. +
-    * Tool will be written with respect to the next extension. +
-    * Implement the proposed tool and write tests for it. +
-    * Create some examples to demonstrate usage of the tool. +
- +
-  * **Inteligentní zrcadlo s Raspberry Pi pro ovládání chytré domácnosti** (Intelligent mirror with Raspberry Pi for smart home control) (BP - Frederik Štefaniak) +
-    * Prozkoumejte existující ​řešení inteligentních zrcadel +
-    * Zvolte vhodný typ dotykové obrazovky a zrcadlové vrstvy +
-    * Pro platformu Raspberry Pi vyberte vhodný OS +
-    * Napište konfigurační soubor pro připojení displeje přes HDMI port a dotykové vrstvy připojené přes USB port +
-    * Naprogramujte knihovnu pro ovládání periferií (světlá, bluetooth reproduktor,​ zásuvky) +
-    * Naprogramujte knihovnu pro získávání různých dát z internetu (počasí, čas, doprava, atp.) +
-    * Navrhněte a naprogramujte aplikaci umožňující ovládat dostupné periférie a zobrazovat výstupy z nich +
-    * Výsledné řešení otestujete  +
-    +
-===== Available projects ===== +
- +
-**Pokud máte o téma zájem, napište mi email. Rezervace v systému bpm nemá žádnou váhu.** +
- +
-  * **Generátor referencí na základě dat uložených ve formátu XML** - Proveďte rešerší existujících řešení. Navrhněte a zrealizujte aplikaci pro generování seznamu referencí na základě dat uložených v XML souboru a šablony pro generování referencí. Reference ​bude možné vytvářet i hierarchicky. Výstupní formát bude možné konfigurovat s pomocí konfiguračního souboru. Aplikace bude umožňovat ​editovat jednotlivé záznamy uložené v souboru XML a vytvářet vazby mezi referencemi,​ jako je například tento článek byl citovat v těchto publikacích. BP - doba práce 2 semestry (volné) (100% SW) +
- +
-  * **Linuxové jádro pro vestavěný procesor** ​Proveďte rešerši existujících linuxových jader pro vestavěné procesory a najděte vhodné ​řešení pro procesor ARM osazený na desce beagleboard. Pro tuto desku s pomocí linuxového jádra rozchoďte všechny periférie a napište demo aplikaci. BP, DP - doba práce 2-4 semestry (volné) (100% SW) +
- +
-  * **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) +
- +
-  * **Jednoduchý ​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. (BPDP) - doba práce 2-4 semestry (volné) (90% SW, 10% HW) +
- +
-  * **Jednoduchý překladač z jazyka c do automatového popisu  ​Simple translator from C to automata description** - Navrhněte a zrealizujte překladač z programu popsaného podmnožinou příkazů jazyka c do mikroprogramu popsaného v jazyce VHDL. Prozkoumejte existující řešení. Jazyk c bude podporovat vybrané celočíselné a binární typy proměnných. Překladač bude schopen přeložit následující prvky jazyka C: aritmetické a logické operace, podmíněný výraz if (else if, else), cyklus while, cyklus for a příkaz goto. Implementace bude s ohledem na multiplatformnost provedena v jazyce Java. (BP, DP) - doba práce 2-4 semestry (volné) (90% SW, 10% HW) +
- +
-    * **Šifrování dat na pevném SATA disku připojeném ​přes ethernetové rozhraní** - Prostudujte existující hardwarová řešení šifrování dat na pevném disku. Navrhněte a zrealizujte vlastní řešení napsané v jazyce VHDL. Pro návrh použijte existující ethernetové jádro napsané v jazyce VHDL. (DP) - doba práce 2-4 semestry (volné) (50% SW, 50% HW) +
- +
-  * **Sada nástrojů pro On-Line diagnostiku** (Set of tools for On-Line test) - Naprogramujte sadu nástrojů pro On-Line diagnostiku. Nástroje budou založeny na již existujícím nástroji pro práci s obvody. Tento nástroj zmodifikujte tak, aby umožňoval použít libovolnou techniku pro On-Line testování založenou na bezpečnostních kódech (sudá parita, zdvojení, Berger kód, Hamming kód, atp.). Výsledné řešení bude umožňovat načtení vstupního obvodu, jeho modifikaci na samočinně zabezpečený obvod a jeho konverzi do íslušných VHDL kódů. Aplikace bude podporovat i rozsáhlejší návrh složený z více částí. BP, DP - doba práce 2-4 semestry (volné) (100% SW) +
- +
-  * **Rychlý osciloskop postavený s pomocí FPGA** (High speed scope based on FPGA) - Navrhněte ​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íku. Získaná data zobrazte. ​ BP, DP - doba práce 2-4 semestry (volné) (50% SW, 50% HW) +
- +
-  * **JTAG SPI USB programátor pro ATMEL** ​Navrhněte programátor včetně programovatelné redukce pro programování mikrořadičů Atmel. BP, DP - doba práce 2-4 semestry (volné) (50% SW, 50% HW) +
- +
-  * **Vysoce spolehlivý systém železničního zabezpečovacího ​zařízení ​založeného na dvou FPGA obvodech** - Prostudujte stávající zrealizované HW zařízení. Prostudujte knihovnu prvků realizujících jednotlivé částí zabezpečovacího systému železnice. Pro toto zařízení napište firmware pro mikrořadič a spolehlivý řídicí systém popsaný v jazyce VHDL a to tak, aby docházelo k vzájemné kontrole obou FPGA obvodů. Řídicí systém musí využívat samočinně testované obvody pro zajištění detekce poruch. Celý systém musí umožňovat vložení poruchy. Návrh ověřte na příkladu zabezpečení železniční stanice. Systém v případě detekce poruchy provede rekonfiguraci špatného FPGA obvodu. BP, DP - doba práce 2-4 semestry (volné) (50% SW50% HW) +
- +
-  * **Programovatelný stmívač světel pro domácí zvířata** ​Navrhněte zařízení pro stmívání světel řízené mikrořadičem. Zařízení bude umožňovat stmívat 2 žárovky. Pro zadání průběhu stmívání napište aplikaci. Zařízení bude možné připojit ​PC s pomocí USB rozhraní. Upřesňující pokyny zadavatele (kanárek domácí: pí píp - pí - píp pí pí píp) BP - doba práce 2 semestry (volné) (50% SW, 50% HW) +
- +
-  * **Univerzální řadič displejů** - Prozkoumejte existující řešení. Navrhněte a zrealizujte řadič displeje umožňující jednoduchou komunikaci se znakovým displejem. Komunikace bude probíhat ​po sériové lince. BP, - doba práce 2 semestry (volné) (60% HW, 40% SW ) +
- +
-  * **Zařízení ​pro přenos lokálních informací do internetu s pomocí existujících wifi routeru** - Prostudujte existující ​řešení ​úpravy wifi routerů za účelem modifikace a vylepšení jejich funkcíUpravte linuxové jádro wifi routeru tak, aby bylo možné nahrávat a ukládat vlastní přeložený kód. K wifi routeru připojte jednoduché zařízení (RFID čtečka, teploměr, apod). BP, DP - doba práce 2-4 semestry (volné) (90% SW, 10% HW) +
- +
-  ​**Implementace USB rozhraní FPGA obvodem** - Seznamte se s problematikou USB rozhraní realizovaného FPGA obvody. Prostudujte stávající způsoby realizace tohoto USB rozhraní. Navrhněte a realizujte funkční zařízení,​ které bude umožňovat přenos dat pomocí USB rozhraní realizované FPGA obvodem. Prostudujte existující ​řešení ​USB ovladačůNa základě získaných informací vytvořte vlastní USB ovladač podporující navržené řešení. Na jednoduché aplikaci demonstrujte funkci ​vytvořeného řešení. Při návrhu se zaměřte na co možná nejjednodušší řešení, které bude umožňovat přenášet jen jednoduché informaceBP, DP - doba práce 2-4 semestry (volné) (50% HW, 50% SW ) +
- +
-  ​**Síťový simulátor pro výukové účely na bázi prvků OS Linux a CISCO směrovačů (Network simulator based on Linux OS component and CISCO routers)** - Prostudujte existující ​řešení. Doplňte některé další síťové prvky do již existujícího simulátoruBP, DP - doba práce 2 semestry (volné) (100% SW)+
  
-  * **Zařízení pro sledování objektu s nízkou spotřebou** - Prostudujte existující řešení. Navrhněte vlastní zařízení umožňující pořízení a odeslání fotografie přes internet z okolí sledovaného objektu, který není připojen trvale k internetu ani k elektrické sítí. Důraz bude kladen na velmi nízkou spotřebu a co nejmenší pořizovací cenu. Sledovací zařízení bude umožňovat získání fotografie okolí s různou kvalitou. Pro výsledné zařízení navrhněte a nechte vyrobit plošný spoj. BP, DP - doba práce 2-4 semestry (volné) (10% HW, 90% SW) 
  
-  * **Generátor samoopravných ​kódů: Hamming, RS, BCH, LDPC** - Prostudujte ​existující řešení. Navrhněte vlastní ​generátor samoopravných ​kódů. ​Zadávat bude možné libovolný generující polynompopřípadě ​bude možné specifikovat vlastnosti kóduZvolte vhodný výstupní formátBP, DP - doba práce 2-4 semestry (volné) (100% SW)+  * **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ód, rozšíř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 Mathematicaale 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.
  
-  * **Simulátor procesoru DOP** - Prostudujte existující řešení. V programovacím jazyku Java implementujte simulátor výukového procesoru DOP-v3. Simulátor musí obsahovat editor a překladač zdrojových mikroprogramů (mikroassembler). Syntaxe zdrojového mikroprogramu musí být stejná jako u stávajícího simulátoru používaného pro výuku (SimDOP). Simulátor musí umožňovat krokování mikroprogramu po jednotlivých mikroinstrukcích i spouštění úseku k zadanému bodu zastavení. BP, DP - doba práce 2-4 semestry (volné) (100% SW) 
  
-  * **Generátor obvodů pro předmět ČAO** - Prozkoumejte existující řešení ​pro kreslení elektrických obvodůVytvořte aplikacikterá ​bude umožňovat ​na základě zadaných parametrů vytvářet obvodyBP, DP doba práce 2-4 semestry (volné) (100% SW)+  * **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ý proudstá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.
  
-  * **Procesory pro FPGA obvody (Soft processors for FPGA circuits)** - Prostudujte existující řešení procesorů popsaných v jazyce VHDL. Srovnejte jejich parametry. Na základě srovnání implementujte jeden typ procesoru do FPGA obvodu. Vyberte vhodný procesor s ohledem na dostupnost překladačů jazyka C do ASM.  Zaměřte se zejména na hotové implementace procesoru AVR. Vytvořte knihovnu pro ovládání základních periferií. Pro přípravek firmy XILINX Spartan 3E vytvořte vzorovou aplikaci využívající všechny funkce vytvořené knihovny. BP, DP - doba práce 2-4 semestry (volné) (80% SW, 20% HW) 
  
-  * **Rychlé ethernetové jádro ​(High speed ethernet core)** - Prostudujte stávající ​řešení ​ethernetového jádra pracujícího ​na rychlostech 1G100M 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 rychlostechPro realizaci použijte vývojovou desku Xilinx(BP, DP 2-4 semestry)+  * **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 displejalfanumerický 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. ​
  
-  * **Modul pro správu projektů s VHDL soubory** - Prostudujte stávající řešení vývojového nástroje pro správu VHDL projektů. Do již existujícího řešení implementujte modul, který bude umožňovat přidat do souboru libovolný signál a přenést ho do vyšších úrovní zdrojových VHDL kódů. Vylepšete stávající řešení pro kontrolu konzistence VHDL souborů. V případě potřeby navrhněte nové vývojové prostředí. Otestujte generátor VHDL kódu na základě zadaných parametrů uživatele. Jako programovací jazyk zvolte Javu (BP, DP 2-4 semestry, možnost práce více studentů najednou jako tým) 
  
-  * **Portace operačního systému android na vývojovou desku s procesorem ARM** - Prostudujte existující řešení. ​Analyzujte možnosti ​portace operačního systému ​pro vývojovou desku Raspberry pi BeagleBone BlackNa jednu z těchto ​desek proveďte portaci ​vytvořte knihovny ​pro obsluhu periferiíPro vytvořenou knihovnu vytvořte demo aplikaci(BPDP 2-4 semestry)+  * **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 ​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 ​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řenosa 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.
  
-  * **FPGA deska řízená procesorem ARM** - Navrhněte zařízení obsahující FPGA obvod a procesor ARMMezi těmito obvody vytvořte komunikační linku vhodnou pro řízení FPGA obvodu s pomoci procesoru ARMZvolte 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. ​(BPDP 2-4 semestry)+  * **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.
  
-  * **Správa slovní zásoby ​pro os Android** - Vytvořte aplikaci ​pro správu slovní zásobyAplikace ​bude umožňovat ​import ​export slovíček s pomocí textového souboruAplikace bude umožňovat zpracovávat velké objemy slov (10 20 tisíc)Důraz ​bude také kladen na rychlost zpracování slovovladatelnost a vhodné grafické prostředí(BP, DP 2-4 semestry)+  * **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č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 v jazyce Python obslužnou aplikaci. 
 +    - Výsledné zařízení řádně otestujte.
  
-  * **Knihovna funkcí v jazyce C pro mikrořadič ARM 32 firmy ATMEL** (BP, DP 2-4 semestry)+  * **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í naprogramujetezdokumentujte 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.
  
-  * **Knihovna funkcí v jazyce C pro vývojový kit STM32F030** (BP, DP 2-4 semestry) 
-  
-  * **Knihovna funkcí v jazyce C pro vývojový kit STM32F4** (BP, DP 2-4 semestry) 
  
-  ​* **Knihovna funkcí v jazyce C pro vývojový kit STM32F303** (BP, DP 2-4 semestry)+  ​ 
 +===== Available projects ​FIT =====
  
 +  1. Arduino HW/SW
 +    * GPS přijímač a jeho aplikace
 +    * Meteo stanice
 +    * GSM modém a jeho aplikace
 +    * NFC a bezkontaktní karty
 +    * univerzální desky s různými periferiemi
 +    * řízení modelu auta
 +    * generator analogových průběhů
 +    * přípravky pro desku digilent CMOD A7/S7 (displej, tlačítka, switche, atd.)
 +    * návrh hardware pro desku digilent CMOD A7/S7
 +    * vlastní zadání
 +    * Wifi a ESP32/​ESP2866
 +    * zařízení pro ochranu baterie před vybitím
  
-  * **Jednoduchý TCP/IP stack pro malé procesory** (BP, DP 2-4 semestry)+  ​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í
  
-  * **Slovník ​pro zkušení slovní zásoby využívající sdílené úložiště** (BP, DP 2-4 semestry)+  ​3. Visual C++/C# 
 +    ​aplikace pro komunikaci s periferiemi v PC 
 +    ​aplikace pro komunikaci s procesorem Zynq 
 +    ​aplikace ​pro správu projektu ve VHDL 
 +    ​překladače 
 +    * grafické aplikace pro výuku 
 +    ​vlastní zadání
  
-  * **Vysoce spolehlivé zařízení pro automatické dávkování léku - Aplikace ​pro PC - C# nebo C++** (BPDP 2-4 semestry)+  ​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 ​(ARMZ80, AVR, ...) 
 +    * HW podpora SoC (Zynq) 
 +    * aritmetický procesor v GF(2^2^n) 
 +    * Hry pro FPGA 
 +    * vlastní zadání
  
-  * **Vysoce spolehlivé ​zařízení ​pro automatické dávkování léku - Firmware pro procesor** (BP, DP 2-4 semestry)+  ​5. Plošné spoje 
 +    ​návrh ​zařízení ​s porcesorem atmel + drobné periferié 
 +    ​zařízení s nízkou spotřebou 
 +    ​vlastní zadání
  
-  * **Vysoce spolehlivé zařízení pro automatické dávkování léku - Hardware** (BP, DP 2-4 semestry)+  ​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í a analýza provozu 
 +    * vlastní zadání
  
-  * **Ethernet 10G jádro** ​(BPDP 2-4 semestry)+  ​7. Android 
 +    ​aplikace pro práci s hardware ​(raspberry PIArduino a jiné)
  
-  * **Ethernet řízený s pomocí SMS využívající ARM processor** (BP, DP 2-4 semestry)+  ​8. Python 
 +    ​aplikace pro zpracování a generování dat podle šablon
  
-  * **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 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)+  ​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
  
-  * **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)+===== Available projects HW external =====
  
-  ​* **Aplikace pro Android umožňující ​řízení vývojového kitu Arduino** - Prozkoumejte různé způsoby propojení mobilního telefonu a OS Android ​vývojového kitu ArduinoVytvořte knihovnu umožňující komunikaci s touto deskou. Napište demonstrační aplikaci (BPDP 2-4 semestry)+  ​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,).  
 +    * Výška displeje musí splňovat normu 1U.  
 +    * Pro vytvořený displej naprogramujte framework, který usnadní práci s displejem.
  
-  * **Spolehlivá aplikace ​pro AVR/ARDUINO** (BPDP 2-4 semestry)+  ​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 4Kjak progressive,​ tak interlaced.  
 +    * Požadavkem je minimální využití zdrojů v FPGA.  
 +    * OSD se bude ovládat pomocí sběrnice AXI4-Lite.
  
-  * **Aplikace pro správu VHDL projektů** - Programovací jazyk C++(QT), (BP, DP 2-4 semestry)+  ​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.
  
-  * **Překladač z jazyka C do VHDL** - Automat/​Testbench,​ Programovací jazyk C++, (BP, DP 2-4 semestry)+  ​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.
  
-  * **Řídicí systém s Arduienm** - Pro velké množství periferií vytvořte obslužné knihovny ​napište demonstrační aplikaci, ​(BPDP 2-4 semestry)+  ​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átemtak na Native video formátem.
  
-  * **Zařízení pro měření ​ukládání neelektrických veličin s pomocí ARM procesoru** - K vhodné existující desce s ARM procesorem připojte ​kolik čidel pro ření teploty, tlaku a vlhkosti. Pro procesor s OS Linux vytvořte aplikaci pro sbě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)+  ​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 ​opačně.  
 +    * Modul by l zvládat konverzi ​různé datové šířky audio samplu.
  
-  * **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)+  ​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.
  
-  * **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)+===== Available projects SW external =====
  
-  ​* **Low power zařízení ​pro analýzu a ochranu baterie** - Navrhněte 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í konfigurovatPř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)+  ​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 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í
  
-  * **Android aplikace ovládající externí hardware** - Prozkoumejte ​možnosti ​propojení zařízení ​OS Android a externího procesoru. Navrhněte vhodné ​řešení pro vytvoření jednoduchého spojení zařízení s externím procesoremPro OS Android napište knihovnu funkcí pro komunikaci s externím hardwareNapište demonstrační aplikaci. (BP, DP 2-4 semestry)+  ​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í ​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
  
-  * **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. (BPDP 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 secretsPAM nástroje) 
 +    * vytvoření vlastního kubernetes operátora (vlastní zadání)
  
-  * **Automaty ve VHDL - mikroprogramovaný ​řadič*- Prozkoumejte způsoby návrhu mikroporgramovaných ​řadičů ve VHDL a to ohledem na způsob implementace a zpoždění řídicích a stavových vodičů(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 a IaaC (infrastructure as a code) 
 +    ​zabezpečení SVC repozitářů přes GPG klíč
 +    * 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 tzv. CI 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ů
  
-  * **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)+  ​5. Projekty zadané externím zadavatelem 
 +    ​seznam zadavatelů níže
  
-  ​* **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 WindowsUpravte existující driver pro možnost přenosu dat s pomocí BULK přenosu(BPDP 2-4 semestry)+**Pokud máte o téma zájem, napište mi emailRezervace v systému bpm nemá žádnou váhuPokud se Vám nelíbí žádné z nabízených tématkoukněte do archívu dostupných zadání.**
  
-  * **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)+  *[[project:​2018:​proj_archiv|Návrhy zadání dostupných projektů]]
  
-  * **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)+===== Projekty zadané externím zadavatelem =====
  
-  * **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)+  * [[project:​eaton:​proj_eaton|EATON HW/SW]]
  
-  * **Program pro uchování poznámek na sdíleném uložišti** - Navrhněte aplikaci pro Windows nebo pro Android umožňující práci s poznámkami. Poznámky bude možné vytvářet, prohlížet a editovat. Poznámky budou uloženy na sdíleném uložišti (dropbox, google). (BP, DP 2-4 semestry) 
  
-  * **Nástroj pro automatické generování diagramu z jazyka C** - Navrhněte a implementujte nástroj umožňující na základě podmnožiny příkazů jazyka C generovat vývojový diagram. (BP, DP 2-4 semestry) 
  
-  * **Podpora ovládání elektrického kolejiště s pomocí aplikace na PC** - Navrhněte a naprogramujte aplikaci pro podporu modelového kolejiště velikosti TT. (BP, DP 2-4 semestry) 
  
-  * **Aplikace pro komunikaci s hardware pomocí sériové linky** - Navrhněte a naprogramujte aplikaci pod OS MS Widnows. Aplikace bude napsána v jazyce c++ pod .NET. (BP 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.1519286776.txt.gz · Last modified: 2018/02/22 09:06 by xkubalik