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 [2016/03/02 15:39]
xkubalik [Current projects]
project:proj_list [2024/01/29 08:57]
xkubalik [Current projects]
Line 2: Line 2:
 ===== Current projects ===== ===== Current projects =====
  
-  * **Knihovna funkcí pro program Wolfram Mathematica umožňující využití bezpečnostních kódů** (Wolfram Mathematica library used for error detection and correction codes)(DP ​Jakub Doubek+  * **Wireless Smart Cube for Time Tracking with application Clockify (Bezdrátová Smart Cube určená ke sledování času s aplikací Clockify)** (BP Sobíšek David
-    * Prozkoumejte základní principy pro generování bezpečnostních kódů, zejména Hammingův, BCH, RS a LDPC kód+    * Research existing solutions for wireless smart objects for easier time-tracking
-    * Prostudujte existující knihovny pro generování bezpečnostních kódů+    * Design your solution based on the ESP8266 platform
-    * Součástí analýzy bude i detailnější rozbor všech podporovaných kódů ​potřebná matematická teorie+    * The designed solution will meet these requirements:​ 
-    * Navrhněte a zrealizujte vlastní knihovnu pro program Wolfram Mathematica ​a to s ohledem na použití této knihovny pro zabezpečení dat+      - It will be tracking a project assigned by the user to side tilted upwards
-    * Navrženou knihovnu otestuje+      - The user will be able to communicate with the device using WiFi. 
-    * Pro každý podporovaný bezpečnostní kód vytvořte několik jednoduchých příkladů pro kódování a dekódování dat v závislosti na různých vstupních parametrech.+      - 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. 
 +      - 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.
  
-  * **Levné zařízení pro měření veličin a zobrazování informací založené na existujícím wifi routeru** (Low cost device used for data colection based on wifi router)(BP - Adam Benda) 
-    * Prostudujte existující řešení. 
-    * Vyberte vhodný wifi router za účelem modifikace a vylepšení jeho funkcí. 
-    * Na základě vybraného wifi routeru navrhněte a sestavte zařízení,​ ke kterému připojíte teplotní a jiné senzory, a malý displej. 
-    * Navrhněte a implementujte aplikaci, která agreguje ze zařízení naměřené hodnoty, skladuje je a umožňuje jejich prohlížení. 
-    * Navrhněte a implementujte aplikaci, která na zařízení zobrazuje data získaná ze sítě Internet (např. přehled zpráv, nejbližší odjezd autobusu). 
-    * Navržené zařízení otestuje. 
  
-  * **Aplikace pro správu velké slovní zásoby pod OS Android** - (Application for managing large vocabulary under OS Android) ​(BP - Lepíček Michal+  * **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
-    * Navrhněte a implementujte aplikaci pro OS Android, která bude zaměřená na správu slovní zásoby anglického jazyka+    * Prozkoumejte existující ​řešení
-    * Aplikace bude umožňovat zpracovávat velké objemy dat okolo 10 000 slovíček+    * Analyzujte technologii dálkového ovládání s pomocí IR ovladače
-    * Zaměřte se na efektivní implementování algoritmů pro vyhledávání ve slovníku, import vlastních slovíček a inteligentní testování slovní zásoby+    * Navrhněte vlastní zařízení založené ​na mikrokontroleru ATmega
-    * Analyzujte a pro část využijte Native Development Kit na psaní C kódu pro Android doporučeném pro náročnější výpočty ​porovnejte výkonnostně s konvenčním Software Development Kit při importu slovíček z textového souboru+    * Zařízení bude splňovat tyto požadavky: 
-    * Analyzujte a navrhněte vhodný způsob uložení dat na vzdáleném úložišti tak, aby bylo možné efektivně zpracovávat velké slovníky+      - 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. 
-    * Výkonnost aplikace otestujte na různých zařízeních ​pro různé objemy dat.+      - 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 ​řádně otestujte.
  
-  * **Knihovna funkcí ​pro počítač RASPBERRY PI** - (Library ​for RASPBERRY PI module) (DP Procházka Tomáš+  * **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
-    * Vytvořte knihovnu funkcí v programovacím jazyce C pro ovládání jednotlivých periferií počítačRaspberry PI bez operačního systému+    * Prozkoumejte existující ​řešení
-    * Zaměřte se na ovládání univerzálních vstupů ​výstupůrozhraní UART, SPI, I2C, časovačů, řadičpřerušení, pulsně šířkového modulátoru,​ řadičSD/MMC karet a ethernetové rozhraní+    * Navrhněte vlastní zařízení založené ​na platformě esp32-cam. 
-    * Implementujte sadu funkcí pro zobrazovaní dat na obrazovce připojené přes HDMI+    * Zařízení bude splňovat tyto požadavky:​ 
-    * Pro otestování jednotlivých funkcí knihovny napište demonstrační aplikaci využívající grafický displej, ethernetové rozhraní a SD kartu.+      - 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.
  
-  * **Knihovna funkcí pro palubní informační systém v hromadném dopravním prostředku** - (Library of functions for public transport information system) (BP - Jakš Zbyněk) 
-    * Proveďte rešerši existujících řešení 
-    * Vyberte vhodnou hardwarovou platformu pro realizaci vlastního palubního informačního systému 
-    * Zařízení bude umožňovat zobrazovat informaci o poloze vozu s pomocí informačního displeje 
-    * Zadávání vstupních hodnot bude umožněno s pomocí jednoduché klávesnice 
-    * Informaci o aktuální a budoucí zastávce bude možné přehrát s pomocí zvukového zařízení v dopravním prostředku 
-    * Zařízení bude umožňovat tisk jízdního dokladu na vhodné tiskárně 
-    * Zařízení navrhněte a zrealizujte 
-    * Pro navržené řešení vytvořte knihovnu funkcí umožňující ovládat dostupné periferie 
-    * Pro předvedení funkčnosti celého zařízení vytvořte demo aplikaci využívající všechny dostupné periferie, zejména displej, zvukový systém a klávesnici 
  
-  * ** Aplikace ​pro podporu překladu jednoduchého jazyka c do VHDL - Application used to translate simple C to VHDL language** (BP - Marianna Gedrová+  * **Nástroje ​pro podpora výuky bezpečnostních kódů v prostředí Wolfram Mathematica (Tools ​to support the teaching of security codes in the Wolfram Mathematica environment)** (BP - Linhartová Helena
-    * Navrhněte a zrealizujte aplikaci umožňující jednoduchým způsobem přeložit jazyk c do jazyka VHDL+    * Prozkoumejte existující řešení nástrojů vhodných k výuce bezpečnostních kódů. 
-    * Základem aplikace bude editor umožňující napsat jednoduchý ​kód v jazyce C+    * Analyzujte problémy studentů při výuce bezpečnostních ​kódů
-    * Vytvořený kód bude možné přeložit do jazyka VHDL na základě přednastavených VHDL šablon+    * 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
-    * Překladač bude podporovat podmnožinou příkazů jazyka c do VHDL kódu a to jak datovou, tak i řídící část+    * Navrhněte vlastní nástroje vhodné k výuce těchto kódů. 
-    * Prozkoumejte existující ​řešení. Jazyk c bude podporovat vybrané celočíselné ​binární typy proměnných+    * Zaměřte se zejména na oblast generování,​ dekódování ​opravy těchto kódů
-    * Překladač bude schopen přeložit následující prvky jazyka C: aritmetické a logické operacepodmíněný výraz if (else if, else), cyklus while cyklus for+    * Nástroje budou umožňovat generovat nejen výukové notebooky pro program Wolfram Mathematicaale i VHDL kódy testbenche pro lepší představu jejich implementace v hardware
-    * Implementace ​bude provedena v jazyce C+++    * Nástroj ​bude podporovat i vložení chyby a jeji opravu
-    * Pro otestování funkčnosti vytvořte několik příkladů.+    * Navržené ​řešení realizujte a řádně otestujte.
  
-  * ** Aplikace pro spolehlivé ovládání hardware s pomocí sériové komunikace** - (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. 
  
-    +  * **Programovatelná elektronická zátěž (Programmable electronic load)** (BP - Pánek Miloš) 
-===== Available projects =====+    - 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.
  
-**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 hierarchickyVýstupní formát bude možné konfigurovat s pomocí konfiguračního souboru. Aplikace bude umožňovat editovat jednotlivé záznamy uložené v souboru XML vytvářet vazby mezi referencemi,​ jako je například tento článek byl citovat v těchto publikacíchBP - doba práce 2 semestry (volné) (100% SW)+  * **Zařízení pro ovládání 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í ​nastavení obsahu registrů. 
 +    - Výsledné ​řešení ​řádně otestujte
  
-  * **Linuxové jádro pro vestavěný procesor** - Proveďte rešerši existujících linuxových jader pro vestavěné procesory 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)+  * **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ádiaa 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.
  
-  * **Programovatelný hardwarový generátor všech typů paketů** BP, DP doba práce 2-4 semestry (volné) (80% SW20% HW)+  * **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.
  
-  * **Jednoduchý překladač z jazyka c do mikroprogramu - Simple translator from C to microcode description** - Navrhněte a zrealizujte překladač z programu popsaného podmnožinou příkazů jazyka c do mikroprogramu popsaného v jazyce VHDL. Prozkoumejte existující ​řešeníJazyk c bude podporovat vybrané celočíselné a binární typy proměnnýchPřekladač bude schopen přeložit následující prvky jazyka C: aritmetické ​logické operace, podmíněný výraz if (else ifelse), cyklus whilecyklus for příkaz gotoImplementace ​bude s ohledem ​na multiplatformnost provedena ​v jazyce ​Java(BP, DP) doba práce 2-4 semestry (volné) (90% SW, 10% HW)+  * **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 ClassicMIFARE 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 odposlechzá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.
  
-  * **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 VHDLProzkoumejte existující ​řešení. Jazyk c bude podporovat vybrané celočíselné ​binární typy proměnnýchPřekladač bude schopen ​eložit následující prvky jazyka C: aritmetické ​logické operacepodmíněný výraz if (else ifelse)cyklus whilecyklus for a íkaz goto. Implementace bude s ohledem ​na multiplatformnost provedena v jazyce Java. (BPDP) doba práce 2-4 semestry (volné) (90% SW10% HW)+  * **Aplikace pro chytrou domácnost využívající rádiové spojení jednotek s Raspberry Pi (Smart home application using radio connection of units with Raspberry Pi)** (BP Zoreník Pavel) 
 +    - Prozkoumejte existující řešení. 
 +    - Pomocí metod softwarového inženýrství navrhněte vlastní ​řešení vyhovující níže uvedeným požadavkům. 
 +    - Navržené ​řešení ​naprogramujete,​ zdokumentujte ​řádně otestujte. 
 +    - Požadavky:​ 
 +      - webová aplikace na platformě Raspberry Pi (konfigurace zařízení), 
 +      - ipojení bude provedeno pomocí uživatelského jména ​hesla, 
 +      - aplikace bude umožňovat více uživatelů s různým typem oprávně, 
 +      - jednotlivá zařízení STM32prostředí Arduino, 
 +      - komunikace zařízení ​es rádiový modul RFM69, 
 +      - provoz zařízení ​na baterii, 
 +      ​sledování teplotyovládání zásuvek.
  
-    * **Š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 příslušných VHDL kódů. Aplikace bude podporovat i rozsáhlejší návrh složený z více částí. BP, DP - doba práce 2-4 semestry (volné) (100% SW)+  ​ 
 +===== Available projects ​FIT =====
  
-  * **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 obvodem Spartan3e. Jako základ použijte modul tvořený analogovým vstupem s A/D 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/evodníku. Získaná data zobrazte. ​ BP, DP - doba práce 2-4 semestry (volné) (50% SW, 50% HW)+  ​1. Arduino HW/SW 
 +    ​GPS přijímač a jeho aplikace 
 +    ​Meteo stanice 
 +    ​GSM modém a jeho aplikace 
 +    ​NFC bezkontaktní karty 
 +    * univerzální ​desky s různými periferiemi 
 +    * řízení modelu auta 
 +    * generator analogových průběhů 
 +    * ípravky pro desku digilent CMOD A7/S7 (displejtlačítka, switche, atd.
 +    * návrh hardware ​pro desku digilent CMOD A7/S7 
 +    * vlastní zadání 
 +    * Wifi a ESP32/​ESP2866 
 +    * zařízení pro ochranu baterie ​ed vybitím
  
-  * **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)+  ​2. Wolfram Mathematica 
 +    ​bezpečnostní kódy 
 +    ​kódy pro kryptografií 
 +    ​matematické funkce realizované v HW 
 +    ​aritmetický procesor ​GF(2^2^n) 
 +    * efiktivita protokolů ​pro předmět BI-PSI 
 +    * vlastní zadání
  
-  * **Vysoce spolehlivý systém železničního zabezpečovacího zařízení založeného na dvou FPGA obvodech** - Prostudujte stávající zrealizované HW zařízení. Prostudujte knihovnu prvků realizujících jednotlivé částí zabezpečovacího systému železnice. Pro toto zařízení napište firmware ​pro mikrořadič a spolehlivý řídicí systém popsaný v jazyce ​VHDL a to tak, aby docházelo k vzájemné kontrole obou FPGA obvodů. Řídicí systém musí využívat samočinně testované obvody pro zajištění detekce poruch. Celý systém musí umožňovat vložení poruchy. Návrh ověřte na íkladu zabezpečení železniční stanice. Systém v případě detekce poruchy provede rekonfiguraci špatného FPGA obvodu. BP, DP - doba práce 2-4 semestry (volné) (50% SW, 50% HW)+  ​3. Visual C++/C# 
 +    ​aplikace pro komunikaci s periferiemi v PC 
 +    ​aplikace pro komunikaci s procesorem Zynq 
 +    ​aplikace ​pro správu projektu ve VHDL 
 +    * ekladač
 +    * grafické aplikace pro výuku 
 +    * vlastní zadání
  
-  * **Programovatelný stmívač světel ​pro domácí zvířata** - Navrhněte zařízení pro stmívání světel řízené mikrořadičem. Zařízení bude umožňovat stmívat 2 žárovky. Pro zadání ​průběhu stmívání napište aplikaciZařízení bude možné připojit k PC s pomocí USB rozhraníUpřesňující pokyny zadavatele (kanárek domácí: pí píp - pí - píp pí pí pípBP - doba práce 2 semestry ​(volné) (50% SW, 50% HW)+  ​4. Jazyk VHDL / desky FPGA 
 +    ​návrh hardware ​pro bezpečnostní kódy 
 +    * generátor ​průběhů (sinusovka, obdelník, trojuhelník) 
 +    * osciloskop 
 +    * návrh hardware pro realizaci matematických funkcí 
 +    * implementace procesoru/​periferié procesoru (ARM, Z80, AVR, ...) 
 +    * HW podpora SoC (Zynq) 
 +    * aritmetický procesor v GF(2^2^n) 
 +    * Hry pro FPGA 
 +    * vlastní zadání
  
-  * **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 )+  ​5. Plošné spoje 
 +    ​návrh zařízení s porcesorem atmel + drobné periferié 
 +    ​zařízení s nízkou spotřebou 
 +    * vlastní zadání
  
-  * **Zařízení pro enos lokálních informací do internetu s pomocí existujících wifi routeru** - Prostudujte existující řešení úpravy wifi routerů za účelem modifikace ​vylepšení jejich funkcí. Upravte linuxové jádro wifi routeru tak, aby bylo možné nahrávat a ukládat ​vlastní ​přeložený kód. K wifi routeru připojte jednoduché zařízení (RFID čtečka, teploměr, apod). BP, DP - doba práce 2-4 semestry (volné) (90% SW, 10% HW)+  ​6. Raspberry PI / Raspberry PI Pico 
 +    ​ovládání jednoduchých periferií 
 +    ​chytré síť, ovládání periferií ​es ethernet 
 +    ​vzdálená správa sítí 
 +    ​SDR(Software Defined Radio) aplikace ​sledování ​analýza provozu 
 +    * vlastní ​zadání
  
-  * **Implementace USB rozhraní FPGA obvodem** - Seznamte se problematikou USB rozhraní realizovaného FPGA obvody. Prostudujte stávající způsoby realizace tohoto USB rozhraní. Navrhněte a realizujte funkční zařízení,​ které bude umožňovat přenos dat pomocí USB rozhraní realizované FPGA obvodem. Prostudujte existující řešení USB ovladačů. Na základě získaných informací vytvořte vlastní USB ovladač podporující navržené řešení. Na jednoduché aplikaci demonstrujte funkci vytvořeného řešení. Při návrhu se zaměřte na co možná nejjednodušší řešení, které bude umožňovat přenášet jen jednoduché informace. BP, DP - doba práce 2-4 semestry ​(volné) (50% HW50% SW )+  ​7. Android 
 +    ​aplikace pro práci ​hardware ​(raspberry PIArduino a jiné)
  
-  * **Síťový simulátor ​pro výukové účely na bázi prvků OS Linux CISCO směrovačů (Network simulator based on Linux OS component and CISCO routers)** - Prostudujte existující řešení. Doplňte některé další síťové prvky do již existujícího simulátoru. BP, DP - doba práce 2 semestry (volné) (100% SW)+  ​8. Python 
 +    ​aplikace ​pro zpracování ​generování dat podle šablon
  
-  * **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)+  ​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
  
-  * **Generátor samoopravných kódů: Hamming, RS, BCH, LDPC** ​Prostudujte existující řešení. Navrhněte vlastní generátor samoopravných kódů. Zadávat bude možné libovolný generující polynom, popřípadě bude možné specifikovat vlastnosti kódu. Zvolte vhodný výstupní formát. BP, DP - doba práce 2-4 semestry (volné) (100% SW)+===== Available projects HW external =====
  
-  * **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 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íBPDP - doba práce 2-4 semestry (volné) (100% SW)+  ​1. Malý grafický displej do výšky 1U s rotačním enkodérem ovládaný přes SPI 
 +    ​Navrhněte a zrealizujte grafický TFT displej ovládaný pomocí sběrnice SPI. 
 +    ​Displej by měl obsahovat ​možnost zadávání ​íkazů (tlačítka, rotační encoder,…).  
 +    * Výška displeje ​musí splňovat ​normu 1U 
 +    * Pro vytvořený displej naprogramujte frameworkkterý usnadní práci s displejem.
  
-  * **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)+  ​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.
  
-  * **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é knihovnyBP, DP - doba práce 2-4 semestry (volné) (80% SW, 20% HW)+  ​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.
  
-  * **Rychlé ethernetové jádro (High speed ethernet core)** - Prostudujte stávající řešení ethernetového jádra pracujícího na rychlostech 1G, 100M napsané v jazyce Verilog dostupné na stránce www.opencores.org a VHDL dostupné jako diplomová práce. ​Navrhněte a zrealizujte ​vlastní řešení 1G, 100M ethernetového jádra napsaného ​jazyce VHDL to tak, aby bylo možné využít pouze jednu hodinovou doménu. Pro jednotlivé ​částí i pro celé jádro proveďte verifikaciPro 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)+  ​4. Zpracování I2S signálu s integraci do AXI Stream 
 +    ​* Navrhněte a zrealizujte ​konverzní modul FPGA ze standartního interface I2S na interface AXI4 Stream ​opač 
 +    * Modul by měl zvládat konverzi různé datové ​šířky audio samplu a multiplexování více audio streamu do jednoho I2S interfacu.
  
-  * **Modul ​pro správu projektů s VHDL soubory** - Prostudujte stávající řešení vývojového nástroje pro správu VHDL projektů. Do již existujícího řešení implementujte modulkterý bude umožňovat přidat do souboru libovolný signál a přenést ho do vyšších úrovní zdrojových VHDL kódů. Vylepšete stávající ř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živateleJako programovací jazyk zvolte Javu (BP, DP 2-4 semestry, možnost práce více studentů najednou jako tým)+  ​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.
  
-  ​* **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 Black. Na jednu z chto desek proveďte portaci ​vytvořte knihovny pro obsluhu periferiíPro vytvořenou knihovnu vytvořte demo aplikaci(BP, DP 2-4 semestry)+  ​6. Embedded audio konvertor ​na AXi4 Stream ​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.
  
-  ​* **FPGA deska řízená procesorem ARM*Navrhněte ​zařízení obsahující FPGA obvod procesor ARM. Mezi těmito obvody vytvořte komunikační linku vhodnou pro řízení FPGA obvodu s pomoci procesoru ARM. Zvolte vhodnou desku obsahující FPGA obvod. Pro řízení ​FPGA obvodu použijte vývojový kit Raspberry Pi osazený obvodem ARMVytvořte knihovnu funkcí pro procesor ARM umožňující komunikaci s FPGA obvodem. Pro ověření funkce celého spojení vytvořte testovací aplikaci(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.
  
-  * **Správa slovní zásoby pro os Android** ​Vytvořte aplikaci pro správu slovní zásoby. Aplikace bude umožňovat import a export slovíček s pomocí textového souboru. Aplikace bude umožňovat zpracovávat velké objemy slov (10 - 20 tisíc). Důraz bude také kladen na rychlost zpracování slov, ovladatelnost a vhodné grafické prostředí. (BP, DP 2-4 semestry)+===== Available projects SW external =====
  
-  * **Knihovna funkcí v jazyce C pro mikrořadič ARM 32 firmy ATMEL** (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 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í
  
-  * **Knihovna funkcí v jazyce C pro vývojový kit STM32F030** (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í 
-  * **Knihovna funkcí v jazyce C pro vývojový kit STM32F4** (BP, DP 2-4 semestry)+    ​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é ​(rootlessspuštění více kontejnerů uvnitř kontejneru
  
-  * **Knihovna funkcí ​jazyce C pro vývojový kit STM32F303** (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ů ​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í)
  
 +  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ů
  
-  * **Jednoduchý TCP/IP stack pro malé procesory** (BP, DP 2-4 semestry)+  ​5. Projekty zadané externím zadavatelem 
 +    ​seznam zadavatelů níže
  
-  ​* **Slovník pro zkušení slovní zásoby využívající sdílené úložiště** (BP, DP 2-4 semestry)+**Pokud máte o téma zájem, napište mi email. Rezervace v systému bpm nemá žádnou váhu. Pokud se Vám nelíbí ​žádné z nabízených témat, koukněte do archívu dostupných zadání.**
  
-  * **Vysoce spolehlivé zařízení pro automatické dávkování léku - Aplikace pro PC - C# nebo C++** (BP, DP 2-4 semestry) 
  
-  * **Vysoce spolehlivé zařízení pro automatické dávkování léku - Firmware pro procesor** (BP, DP 2-4 semestry)+  *[[project:​2018:​proj_archiv|Návrhy zadání dostupných projektů]]
  
-  * **Vysoce spolehlivé zařízení pro automatické dávkování léku - Hardware** (BP, DP 2-4 semestry) 
  
-  ​**Ethernet 10G jádro** (BP, DP 2-4 semestry)+===== Projekty zadané externím zadavatelem ===== 
 + 
 +  ​[[project:​eaton:​proj_eaton|EATON HW/SW]] 
  
-  * **Ethernet řízený s pomocí SMS využívající ARM processor** (BP, DP 2-4 semestry) 
  
-  * **Sledování zařízení s nízkou spotřebou** - Navrhněte a zrealizujte zařízení umožňující sledování spotřeby objektu s nízkou spotřebou. Zařízení bude hlídat stav baterie a v případě poklesu pod určitou hranici celé zařízení odpojí a to včetně samo sebe. Zároveň bude umožňovat sledovat průběh změny stavu a následně upravit vlastní spotřebu až do stavu, kdy se odpojí od zdroje úplně. Baterií bude možné dobíjet ze solárního panelu s regulátorem. Pro vámi navržené zařízení navrhněte a nechte vyrobit plošný spoj. (BP, DP 2-4 semestry) 
  
-  * **Knihovna funkcí pro Arduino periferní desky** - Pro různé Arduino periferie vytvořte knihovnu funkcí kterou bude možné přeložit v AVR studio. (BP, DP 2-4 semestry) 
  
 ===== 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:​2015:​proj_2015|Realized projects 2015]]   *[[project:​2015:​proj_2015|Realized projects 2015]]
   *[[project:​2014:​proj_2014|Realized projects 2014]]   *[[project:​2014:​proj_2014|Realized projects 2014]]
project/proj_list.txt · Last modified: 2024/02/15 10:30 by xkubalik