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 [2015/01/28 09:07]
xkubalik [Actual works]
project:proj_list [2022/02/03 12:56]
xkubalik [Current projects]
Line 1: Line 1:
 ====== All projects ====== ====== All projects ======
-===== Actual works =====+===== Current projects ​=====
  
-  * **Softwarová podpora hardwarového rozšíření pro platformu Raspberry PI (Software library used for hardware extension of Raspberry Pi)** (BP - Vico Bohdan) - Proveďte tyto úkoly: 
-    * Prostudujte existující řešení. ​ 
-    * Vyberte operační systém vhodný pro ovládání a komunikaci s hardware přes rozšiřující rozhraní. 
-    * Vytvořte knihovnu funkcí v programovacím jazyce C pro ovládání jednotlivých pinů rozšiřujícího rozhraní včetně sériové linky. 
-    * Propojte vývojovou desku Raspberry PI s PC s pomocí sériové linky. 
-    * Pro ovládání periferií vytvořte jednoduché webové rozhraní, kde bude možné nastavovat a číst jednotlivé stavy pinů rozhraní. 
-    * Umožněte s pomocí webového rozhraní posílat a číst informace ze sériové linky. 
-    * Pro zvolený operační systém vytvořte aplikaci, která zprostředkovává komunikaci webového rozhraní s hardware. 
-    * Vytvořená aplikace bude obsahovat soubor proměnných,​ které bude možné nastavovat s pomocí webového rozhraní a s pomocí PC přes sériovou linku. 
-    * Vytvořte podrobnou dokumentaci popisující důležité kroky nutné k přidání dalšího rozhraní a odpovídající modifikaci webového rozhraní. 
  
-  * **Zařízení ​pro sledování objektu ​nízkou spotřebou** ​(Low power camera trap used for building monitoring)(BP - Václav Vanc+  * **Řídící jednotka ​pro individuálně adresovatelné led pásky ​Raspberry Pi Zero(Control unit for individually addressable led strips using Raspberry Pi Zero)** - (BP - Krýcha Miroslav
-    ​* Prostudujte ​existující řešení. +    ​- Prozkoumejte ​existující řešení. 
-    ​Navrhněte vlastní ​zařízení umožňující pořízení a odeslání fotografie ​es internet z okolí sledovaného objektu, který není připojen trvale k internetu ani k elektrické sítí+    ​Navrhněte vlastní řešení ​řídicí jednotky pro ipojení led pásky
-    ​* Vyberte vhodný procesor sloužící ke komunikaci s GSM modulem a kamerou. +    ​- Řídicí jednotka bude splňovat tyto požadavky: 
-    Důraz bude kladen na velmi nízkou spotřebu co nejmenší pořizovací cenu. +      možnost připojení dvou více led pásků, 
-    Zařízení bude umožňovat data ukládat na SD kartu. +      podpora více typu led. Alespoň jeden 12V a 5V, 
-    Nastavení parametrů a doby snímání fotografie ​bude možné s pomocí ​SMS zpráv. +      jednotku ​bude možno ovládat ​pomocí ​tlačítek, dálkového ovládání a SSH, 
-    Navržené zařízení zrealizujte+      pro obsluhu k jednotce připojte Waveshare 2.7 e-ink display a vytvořte vhodné grafické rozhraní, 
-    Vytvořte knihovnu funkcí umožňující ovládat dostupné periferie+      jednotka bude obsahovat senzor zvuku a světla sloužících k automatickému spouštění
-    ​* Pro výsledné ​řešení ​vytvořte demonstrační aplikaci. +    ​- Navržené ​řešení ​zrealizujte a řádně ​otestujte.
-    * Výsledné zařízení ​otestujte.+
  
-  * **Multiplatformní grafická aplikace ​pro simulaci mikroprogramovaného procesoru DOP v3(Cross-platform ​graphical simulator of micro-programmed processor DOP)** (DP Miškovský Vojtěch+  * **Řídicí jednotka ​pro vzdálenou správu domácnosti s ESP32 (The remote management control unit of home devices based on the ESP32 platform)** ​(BP Muzika Zdeněk
-    ​* Prostudujte ​existující řešení. +    ​- Prozkoumejte ​existující řešení. 
-    ​* V programovacím jazyku C++ implementujte simulátor výukového procesoru DOP-v3+    - Navrhněte vlastní řešení řídicí jednotky pro vzdálenou správu elektrických zařízení v domácnosti
-    * Aplikaci ​bude možné ​spouštět pod OS Microsoft Windows i OS Linux. +    ​- Řídicí jednotka bude splňovat tyto požadavky:​ 
-    Simulátor musí obsahovat ​editor mikroprogramu ​překladač zdrojových mikroprogramů (mikroassembler). +      ​možnost přístupu k jednotce pomocí pevného i bezdrátového spojení, 
-    Syntaxe zdrojového mikroprogramu musí být stejná jako u stávajícího simulátoru používaného pro výuku předmětu BI-JPO (jednotky počítače). +      * jednotku ​bude možné ​ovládat z internetu, 
-    * Simulátor musí umožňovat ​krokování mikroprogramu po jednotlivých mikroinstrukcích ​spouštění úseku k zadanému bodu zastavení. +      * jednotka bude obsahovat ​displej ​tlačítka pro možnost nastavení základních parametrů, 
-    Simulátor musí umožňovat zobrazit ​aktuální stav jednotlivých registrů procesoru DoP to včetně těch, které jsou programátorsky nedostupné+      * jednotka bude umožňovat ​ovládat zařízení v domácnosti s pomocí relé, sériové linky a rozšiřujícího portu, 
-    ​* Pro uživatele vytvořte jednoduchou uživatelskou ​íručku+      jednotka bude schopna zjistit ​aktuální stav externích zařízení s pomocí sériové linky rozšiřujícího portu
-    ​Výsledné řešení otestujte.+    ​- Nevržené řešení zrealizujte. 
 +    - Pro výsledné zařízení napište obslužný program umožňující ​ístup k řídicí jednotce přes webové rozhraní
 +    ​Výsledné řešení ​řádně ​otestujte.
  
-  * **Programovatelný stmívač světel pro domácí zvířata** (Programmable light dimmer for domestic animals)(BP - Červenka Ondřej) 
-    * Prostudujte existující řešení. 
-    * Vyberte vhodný procesor pro realizaci. 
-    * Zařízení bude umožňovat nastavení stmívání pro 2 místnosti. 
-    * Ovládání bude možné lokálně u zařízení s pomocí displeje a tlačítek a také vzdáleně s pomocí PC. 
-    * Pro ovládání stmívání a detekcí vnějšího osvětlení vytvořte knihovnu v jazyce c pro zvolený procesor. 
-    * Pro ovládání s PC vytvořte jednoduchou aplikaci. 
-    * Navržené zařízení zrealizujte a vytvořenou knihovnu včetně aplikace v PC otestujte. 
  
-  * **FPGA deska řízená procesorem ARM** (FPGA board controlled by ARM processor)(BP - Elena Filipenková) 
-    * Prostudujte existující řešení. 
-    * Navrhněte zařízení obsahující FPGA obvod a procesor ARM. 
-    * Zvolte vhodnou desku obsahující:​ FPGA obvod, tlačítka, přepínače,​ display. 
-    * Pro řízení FPGA obvodu použijte vývojový kit Raspberry Pi osazený obvodem ARM. 
-    * Mezi těmito obvody vytvořte komunikační linku vhodnou pro řízení FPGA obvodu s pomoci procesoru ARM. 
-    * Řízení a zjištění stavu desky bude možné s pomocí minimálně 32x16b registrů. 
-    * Vytvořte knihovnu funkcí pro FPGA desku umožňující nastavovat a ovládat základní periferie této desky procesorem ARM. 
-    * Pro FPGA desku vytvořte aplikaci umožňující zobrazovat stav registrů určených pro nastavení parametrů desky. 
-    * Pro procesor ARM vytvořte jednoduchou aplikaci umožňující nastavovat a zjišťovat stav FPGA desky. 
-    * Výsledné řešení otestujte 
  
-  * **Generátor elektrických obvodů ​pro předmět ČAO** ​(Automatic analog circuit generator)(BP - František Veselý+  * **Zařízení ​pro měření vytíženosti zdrojů vestavného procesoru ​í obsluze externích modulů ​(The resource consumption measure device of embedded processor handling external modules)** - (BP - Kocourek Matěj
-    ​Prozkoumejte existující řešení ​pro kreslení elektrických obvodů+    ​Prozkoumejte existující řešení. 
-    ​* 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+    ​- Navrhněte vlastní zařízení ​umožňující připojení většího množství externích modulů k vestavnému procesoru
-    ​* Aplikace bude umožňovat nastavit hodnoty ​typ součástky v obvodu. +    ​- Vyberte vhodnou testovací platformu ​umožňující analýzu spotřeby paměti, procesorového času elektrické energie v závislosti na počtu ipojených externích modulů
-    * Výsledné schéma bude možné ​ekreslit tak, aby se změnila pouze pozice součástky+    ​- Každý externí modul bude obsahovat aspoň jeden senzor ​jeden ovladací prvek
-    ​* Vygenerované schéma ​bude možné uložit do formátu XML opětovně načíst+    ​- Pro vzájemnou komunikaci vyberte vhodný komunikační protokol
-    ​* Aplikace bude umožňovat popsat obvod s pomocí rovnic a to jak v časové oblasti, tak s pomocí fázorů+    ​- Navržené řešení zrealizujte
-    ​* Aplikace bude dále umožňovat generovat rovnice pro celkovou impedanci na vstupních svorkách a přenos+    ​- 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 ​výslednou spotřebu
-    ​* Vygenerované rovnice bude možné bez úprav vložit do programu Wolfram Mathematica a zpracovat. +    ​- 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ů
-    * Při generování rovnic bude možné zvolit směr proudu ​napětí ručně, popřípadě automaticky+
-    ​* Výsledné ​ření otestujte.+
  
-  * **Modul pro snímání teploty při převozu materiálu v dopravě** (Temperature monitoring module for material car transporting purpose)(BP - Jiří Šeda) 
-    * Prozkoumejte existující řešení dostupná na trhu. 
-    * Navrhněte zařízení umožňující monitorování teploty přepravních boxů. 
-    * Pro řízení sledování teploty a komunikaci s nadřazeným systémem zvolte vhodný procesor. 
-    * Zařízení bude umožňovat sledovat teplotu u více boxu. 
-    * V případě překročení minimální nebo maximální hlídané hodnoty informujte řidiče. 
-    * Informaci o teplotě je nutné ukládat po celou dobu jízdy. 
-    * Komunikace s řidičem bude provedena s pomocí mobilního telefonu přes rozhraní bluetooth. 
-    * Pro komunikaci procesoru s telefonem vytvořte vhodný protokol. 
-    * Navržené zařízení zrealizujte. 
-    * Pro zvolený procesor vytvořte knihovnu funkcí a obslužnou aplikaci demonstrující správnou funkcí celého zařízení. 
-    * Výsledné zařízení otestujte. 
  
-  * **Rozšíření síťového simulátoru o Spanning tree protocol** (Network simulation module extension implementing Spanning tree protocol)(BP ​Peter Bábics+  * **Řídicí systém pro model terénního vozítka založený na platformě Arduino (The control system used for terrain vehicle model based on Arduino platform)** (DP Zemánek Martin
-    ​* Prostudujte existující simulátor počítačové sítě [1, 2, 3, 4, 5].  +    ​Prozkoumejte ​existující ​možná řešení ​pro dálkové ovládání vozítek
-    * Prozkoumejte možnosti implementace Spanning tree protokolu do existujícího ​řešení. +    ​Pro návrh řízení vozítka vyberte vhodný model obsahující 6 samostatně řiditelných kol. 
-    ​Pro tento simulátor napište modul v jazyce Javakterý ​bude umožňovat ​využití Spanning tree protokolu ​simulovaných přepínačích. +    - Navrhněte vlastní řešení řízení vozítka s pomocí platformy Arduino za následujících podmínek:​ 
-    Vytvořené řešení začleňte do existujícího simulátoru. +      * každá dvojice kol bude mít vlastní řízení ovládané samostatným arduinem, 
-    Napište návod ​pro použití simulátoru ​to včetně vytvořeného modulu+      * řízení ​bude umožňovat ​jízdu ​všemi směry, 
-    ​* Vytvořte několik příkladů ​použití ​vytvořeného modulu+      * řízení bude centrálně ovládáno hlavní deskou s Arduinem, 
-    ​* Výsledné ​řešení ​včetně návodu ​otestujte.+      * veškeré řízení pohybu vozítka bude provedeno pomocí dálkového ovládání,​ 
 +      vozítko bude na sobě obsahovat další senzory potřebné ​pro pohyb detekci překážek pro všechny směry, 
 +      * vozítko bude umět automaticky měnit maximální rychlost v závislosti na vzdálenosti od překážky, a ve všech směrech možného pohybu
 +    ​- Počítejte s možným pozdějším rozšířením o platformu Raspberry PI umožňující ​použití ​například rozhraní wifi, SD karty a přídavné kamery
 +    ​- Navržené ​řešení ​zrealizujte a řádně otestujte.
  
-===== Available works ===== 
  
-**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 ​š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 souboruAplikace 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)+  * **Inovace řadiče pro grafický LCD displej elektronického psacího stroje (The controller innovation of graphical LCD display used in electronic typewrite)** - (BP - Pankovčin Boris) 
 +    - Prozkoumejte existující ​řešení ​ovládání LCD displeje psacího stroje typu Triumph-Adler Gabriele PFS. 
 +    - Z dokumentace k radiči MSM6255 analyzujte a na existujícím řešení ověřte průběhy ​pro ovládání displeje. 
 +    - Na základě ​získaných dát navrhněte ​zrealizujte vlastní ​řadič displeje ​s pomocí ​FPGA obvodu. 
 +    - Pro účel testování propojte navrhnutý radič s vývojovou deskou RaspberryPI. 
 +    - 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)+  * **Android aplikace pro dálkové ovládání platformy Arduino (An android application for remote control of the Arduino platform)** - (BP - Denissyuk Andrey) 
 +    - 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í naprogramujte,​ řádně ho zdokumentujte a otestujte. 
 +    - Požadavky:​ 
 +      * aplikace bude navržena jako mobilní aplikace pro OS Android 
 +      * aplikace umožní spojení aplikace z Arduinem pomoci Wifi 
 +      * pro komunikaci bude zvolen vhodný protokol 
 +      * aplikace bude umožňovat ověření uživatele s pomocí jména a hesla 
 +      * aplikace bude umožňovat přidání uživatelů s různým typem oprávnění 
 +      * aplikace umožní zobrazit několik různých pohledu ​(seznamu proměnnýchstavu procesoru Arduina 
 +      * aplikace umožní měnit obsah proměnných v procesu Arduina
  
-  * **Programovatelný hardwarový generátor všech typů paketů** BP, DP doba práce 2-4 semestry (volné(80% SW20% HW)+  * **Android aplikace pro sdílení proměnných s platformou Arduino prostřednictvím Bluetooth (An android application for variable sharing with Arduino platform based on Bluetooth communication)** (BP - Jokl Natanael) 
 +    * 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:​ 
 +      * vyberte vhodný programovací jazyk pro OS Android a platformu Arduino, 
 +      * sdílené proměnné mezi oběma zařízeními budou přenášený s pomocí formátu JSON, 
 +      * aplikace pro Android umožní připojení k zařízení Arduino přes Bluetooth,​ 
 +      * zařízení Arduino bude podporovat tyto periferie: tlačítka, displej, LED dioda, GSM modem, 
 +      * 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í,​ 
 +      * aplikace umožní sledovat proměnné na zařízení Arduino, 
 +      * aplikace umožní měnit hodnotu proměnných na zařízení Arduino v závislosti na oprávnění přihlášeného uživatele.
  
-  * **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é ​binární typy proměnnýchPřekladač bude schopen ​eložit následující prvky jazyka C: aritmetické ​logické operace, podmíněný výraz if (else if, else), cyklus while, cyklus for a 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)+  * **Systém pro emulaci akceleračního pedálu osobního automobilu (System for emulating the accelerator pedal of a car)** (BP Mareček Jakub) 
 +    * Prozkoumejte existující řešení. 
 +    * Analyzujte protokol SENT a jeho rozšíření SPC. 
 +    * Analyzujte možnosti generování kódů emulujících funkci akceleračního pedálu ​navrhněte řešení s využitím platformy ESP32. 
 +    * Proveďte analýzu komunikace pedálu z koncernu VW. 
 +    * Navrhněte zařízení pro replikaci signálů akceleračního pedálu tak, aby zařízení bylo schopno komunikovat s reálnou řídící jednotkou. 
 +    * Pro komunikaci pedálu s řídicí jednotkou využijte protokol SENT/SPC. 
 +    * Zařízení musí být ovladatelné ​es CAN sběrnici i fyzickými ovladači. 
 +    * Navržené řešení zrealizujte ​a řá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 VHDL. Prozkoumejte existující řešení. ​Jazyk c bude podporovat vybrané celočíselné ​binární typy proměnných. Překladač bude schopen ​eložit následující prvky jazyka C: aritmetické ​logické operace, podmíněný výraz if (else if, else), cyklus while, cyklus for a příkaz gotoImplementace ​bude s ohledem ​na multiplatformnost provedena ​jazyce Java(BP, DP) - doba práce 2-4 semestry (volné) (90% SW, 10% HW)+  * **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 uživatelské části představované lokátorem (tyto dvě zařízení budou mezi sebou komunikovat ​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ů ​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.
  
-    ​* **Šifrování dat na pevném SATA disku ipojeném ​přes ethernetové rozhraní** - Prostudujte ​existující ​hardwarová ​řešení ​šifrování dat na pevném diskuNavrhněte a zrealizujte vlastní ​řešení ​napsané v jazyce VHDLPro 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)+  ​* **Přenosný ​í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.
  
-  * **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 obvodujeho modifikaci na samočinně zabezpečený obvod 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)+  * **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ódyRM 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 ​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.
  
-  * **Rychlý osciloskop postavený s pomocí FPGA** ​(High speed scope based on FPGA) - Navrhněte a zrealizujte levný 1 kanálový 50 Mhz osciloskop postavený s pomocí desky Starter board s obvodem Spartan3e. Jako základ použijte modul tvořený analogovým vstupem s A/evodníkem. Tento modul upravte tak, aby 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 evodníku. Získaná data zobrazte. ​ BP, DP - doba práce 2-4 semestry (volné) (50% SW, 50% HW)+  * **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 íkazů 
 +    * Komunikace bude probíhat ​es technologiii GSM a textové SMS příkazy 
 +    * Navržené zařízení zrealizujte a řádně otestujte
  
-  * **JTAG SPI USB programátor pro ATMEL** - Navrhněte programátor včetně programovatelné redukce ​pro programování mikrořadičů AtmelBPDP - doba práce 2-4 semestry (volné) (50% SW, 50% HW)+  * **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.
  
-  * **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 železnicePro toto zařízení napište firmware pro mikrořadič a spolehlivý řídicí systém popsaný v jazyce VHDL a to takaby 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í staniceSystém v případě detekce poruchy provede rekonfiguraci špatného FPGA obvoduBP, DP - doba práce 2-4 semestry (volné) (50% SW, 50% HW)+  * **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.
  
-  ​* **Programovatelný stmívač světel pro domácí zvířata** - Navrhněte zařízení pro stmívání světel řízené mikrořadičem. Zařízení bude umožňovat stmívat 2 žárovky. Pro zadání průběhu stmívání napište aplikaci. Zařízení bude možné připojit k PC 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)+  ​ 
 +===== Available projects =====
  
-  * **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% HW40% SW )+  ​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čítkaswitcheatd.) 
 +    * 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
  
-  * **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í ​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)+  ​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 edmět BI-PSI 
 +    * vlastní zadání
  
-  * **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 ​enos dat pomocí USB rozhraní realizované FPGA obvodem. Prostudujte existující řešení USB ovladačů. Na základě získaných informací vytvořte ​vlastní ​USB ovladač podporující navržené řešení. Na jednoduché aplikaci demonstrujte funkci vytvořeného řešení. Při návrhu se zaměřte na co možná nejjednodušší řešení, které bude umožňovat přenášet jen jednoduché informace. BP, DP - doba práce 2-4 semestry (volné) (50% HW, 50% SW )+  ​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í
  
-  * **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)+  ​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í
  
-  * **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. BP, DP - doba práce 2 semestry (volné) (10% HW, 90% SW)+  ​5. Plošné spoje 
 +    ​návrh zařízení s porcesorem atmel + drobné periferié 
 +    ​zařízení s nízkou spotřebou 
 +    ​* vlastní ​zadání
  
-  * **Generátor samoopravných kódů: HammingRS, 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)+  ​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í 
 +    ​* vlastní ​zadání
  
-  * **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í. BPDP - doba práce 2-4 semestry (volné) (100% SW)+  ​7. Android 
 +    ​aplikace ​pro práci s hardware ​(raspberry PIArduino a jiné)
  
-  * **Generátor obvodů ​pro předmět ČAO** - Prozkoumejte existující řešení pro kreslení elektrických obvodů. Vytvořte aplikaci, která bude umožňovat na základě zadaných parametrů vytvářet obvody. BP, DP - doba práce 2-4 semestry (volné) (100% SW)+  ​8. Python 
 +    ​aplikace ​pro zpracování a generování dat podle šablon
  
-  ​* **Procesory ​pro FPGA obvody (Soft processors for FPGA circuits)** - Prostudujte existující řešení procesorů popsaných ​jazyce VHDL. Srovnejte jejich parametry. Na základě srovnání implementujte jeden typ procesoru do FPGA obvodu. Vyberte vhodný procesor s ohledem na dostupnost překladačů jazyka C do ASM.  Zaměřte se zejména ​na hotové implementace procesoru AVR. Vytvořte knihovnu pro ovládání základních periferií. Pro přípravek firmy XILINX Spartan 3E vytvořte vzorovou aplikaci ​využívající všechny funkce vytvořené knihovnyBP, DP - doba práce 2-4 semestry (volné) (80% SW, 20% HW)+  ​9. Optimalizace Java aplikací ​pro horizontální ​škálování ​moderní mikroservisní architektuř
 +    * 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í
  
-  * **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 v jazyce VHDL a to tak, aby bylo možné využít pouze jednu hodinovou doménuPro jednotlivé ​částí i pro celé jádro proveďte verifikaci. Pro výsledné jádro napište testovací aplikaci demonstrující funkci jádra na všech realizovaných rychlostech. Pro realizaci použijte vývojovou desku Xilinx. ​(BP, DP 2-4 semestry)+  ​10. Virtualizace a izolace aplikačních prostředí 
 +    ​využití OCI kontejnerů jako způsob doručování aplikací 
 +    ​analýza bezpečnostních chyb využívané technologie docker a možnosti jejich eliminace 
 +    ​porovnání s jinými přístupy ​(např. podman, buildah apod.) 
 +    ​lokální orchestrace kontejnerů (docker-compose vs podman-compose) 
 +    * vnořování kontejnerů (např. docker(-compose)-in-docker/​podman) 
 +    * vlastnosti container file systemů (např. OverlayFS) 
 +    * bezpečné (rootlessspuštění více kontejnerů uvnitř kontejneru
  
-  * **Modul ​pro správu projektů s VHDL soubory** - Prostudujte stávající ​ření vývojového nástroje pro správu VHDL projektů. Do již existujícího ​řešení implementujte modulkterý bude umožňovat ​idat do souboru libovolný signál ​a přenést ho do vyšších úrovní zdrojových VHDL kódů. Vylepšete stávající ​ření pro kontrolu konzistence VHDL souborů. V ípadě potřeby navrhněte nové vývojové prostředí. Otestujte generátor VHDL kódu na základě zadaných parametrů uživateleJako programovací jazyk zvolte Javu (BPDP 2-4 semestrymožnost práce více studentů najednou jako tým)+  ​11. Orchestrace kontejnerů v distribuovaném on-premise prostředí 
 +    ​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í) 
 + 
 +  12. Podpora vývoje a administrace prostředí prostřednictvím automatizace 
 +    * analýza praktik DevOps ​ístupu, GitOps, SecOps, ChatOps, AIOps 
 +    * analýza ​a představení SRE (Site reliability engineering) praktik 
 +    * vytvoření ​a nasazení prostředí ​pro kompletní podporu životního cyklu aplikace naplňující znaky GitOps a IaaC (infrastructure as a code) 
 +    * zabezpečení SVC repozitářů přes GPG klíče 
 +    * podpora IaaC nástrojů (ansible, chef+puppet,​ cloud vendor proprietární nástroje, terraform) 
 +    * využití CI nástroje s dynamickým vytěžováním zdrojů dle aktuální zátěže (návrh tzvCI farmy) 
 +    * podpora deklarativního popisu činností ​(pipelines) 
 +    * porovnání známých CI nástrojů (jenkinsjenkins-xgitlab, tekton, github actions) 
 +    * návrh procesů pro validaci aplikací před jejich nasazením prostřednictvím testů 
 + 
 +  13. Projekty zadané externím zadavatelem 
 +    * seznam zadavatelů níž
 + 
 +**Pokud máte o téma zájem, napište mi email. Rezervace v systému bpm nemá žádnou váhu. Pokud se Vám nelíbí žádné z nabízených témat, koukněte do archívu dostupných zadání.** 
 + 
 + 
 +  *[[project:​2018:​proj_archiv|Návrhy zadání dostupných projektů]] 
 + 
 + 
 +===== Projekty zadané externím zadavatelem ===== 
 + 
 +  * [[project:​eaton:​proj_eaton|EATON HW/SW]]
  
-  * **Portace operačního systému android na vývojovou desku s procesorem ARM** - Prostudujte existující řešení. Analyzujte možnosti portace operačního systému pro vývojovou desku Raspberry pi a BeagleBone Black. Na jednu z těchto desek proveďte portaci a vytvořte knihovny pro obsluhu periferií. Pro vytvořenou knihovnu vytvořte demo aplikaci. (BP, DP 2-4 semestry) 
  
-  * **FPGA deska řízená procesorem ARM** - Navrhněte zařízení obsahující FPGA obvod a procesor ARM. Mezi těmito obvody vytvořte komunikační linku vhodnou pro řízení FPGA obvodu s pomoci procesoru ARM. Zvolte vhodnou desku obsahující FPGA obvod. Pro řízení FPGA obvodu použijte vývojový kit Raspberry Pi osazený obvodem ARM. Vytvořte knihovnu funkcí pro procesor ARM umožňující komunikaci s FPGA obvodem. Pro ověření funkce celého spojení vytvořte testovací aplikaci. (BP, DP 2-4 semestry) 
  
-  * **Správa slovní zásoby pro os Android** - Vytvořte aplikaci pro správu slovní zásoby. Aplikace bude umožňovat import a export slovíček s pomocí textového souboru. Aplikace bude umožňovat zpracovávat velké objemy slov (10 - 20 tisíc). Důraz bude také kladen na rychlost zpracování slov, ovladatelnost a vhodné grafické prostředí. (BP, DP 2-4 semestry) 
  
-  * **Knihovna funkcí v jazyce C pro mikrořadič ARM 32 firmy ATMEL** (BP, DP 2-4 semestry) 
  
-  * **Jednoduchý TCP/IP stack pro malé procesory** (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:​2020:​proj_2020|Realized projects 2020]]
 +  *[[project:​2019:​proj_2019|Realized projects 2019]]
 +  *[[project:​2018:​proj_2018|Realized projects 2018]]
 +  *[[project:​2017:​proj_2017|Realized projects 2017]]
 +  *[[project:​2016:​proj_2016|Realized projects 2016]]
 +  *[[project:​2015:​proj_2015|Realized projects 2015]]
   *[[project:​2014:​proj_2014|Realized projects 2014]]   *[[project:​2014:​proj_2014|Realized projects 2014]]
   *[[project:​2013:​proj_2013|Realized projects 2013]]   *[[project:​2013:​proj_2013|Realized projects 2013]]
project/proj_list.txt · Last modified: 2024/02/15 10:30 by xkubalik