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 [2019/02/13 12:58]
xkubalik [Current projects]
project:proj_list [2021/01/22 12:42]
xkubalik [Current projects]
Line 2: Line 2:
 ===== Current projects ===== ===== Current projects =====
  
-  * **Konfigurovatelný terminál pro rychlou komunikaci s externím zařízením s pomocí sériové linky (Configurable terminal for high-speed communication with external devices based on a serial link)** (BP Kožík Juraj+  * **Pokročilé bezpečnostní kódy v programu Wolfram Mathematica ​(Advanced error control codes in Wolfram Mathematica tool)** (DP Koleník Stanislav
-    ​- Prozkoumejte ​existující řešení+    ​* 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
-    ​- Pomocí metod softwarového inženýrství navrhněte vlastní ​řešení vyhovující ​žuvedeným požadavkům+    ​* Zaměřte se především na Fireovy kódy, součinové kódy, RM kódy, nebinární BCH kódy a RS kódy, Goppa kódy a kódy konvoluč
-    ​- Navržené ​řešení ​naprogramujte, ​řádně ​ho zdokumentujte a otestujte. +    * V dostatečné mířnastudujte a zdokumentujte příslušnou matematickou teorii
-    ​- Požadavky: +    ​* Vaše řešení řádně otestujte.  
-      ​+    ​* Využijte získaných poznatků ke zmapování současného stavu použití bezpečnostních kódů v kryptografii.
  
-  * **Bezpečnostní kódy v programu Wolfram Mathematica ​(Error control codes in Wolfram Mathematica)** - (BP - Koleník Stanislav+  * **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í ​podpory práce s bezpečnostními kódy v programu Wolfram Mathematica+    * Prozkoumejte existující řešení ​pro osobní GPS lokátory
-    * Navrhněte vlastní ​řešení ​pro práci se základními bezpečnostními kódy. +    * Analyzujte technologii GSM/GPS 
-    * Zaměřte se zejména ​na tyto kódy: sudá parita, příčná a podélná parita, Hammingův kód, cyklické kódy, prokládané kódy, LDPC a BCH kódy. +    * Analyzujte a navrhněte řešení ​které řeší nedostatky momentálně dostupných zařízení na trhu 
-    * Při návrhu ​řešení zohledněte jeho využitelnost ​pro výukové účely. +    * Zaměřte se na zařízení které není závislé na pohotovostní službě na vzdáleném serveru 
-    * Vytvořte několik vzorových ​íkladů na práci s bezpečnostními kódy včetně jejich řešení. +    * Navržené zařízení se bude skládat z: Arduino mikrokontroléru,​ GPS/GSM modulu, baterie, mobilní aplikace pro snadné generování příkazů ​pro android 
-    * Výsledné ​řešení ​řádně otestujte+    * Komunikace bude probíhat přes technologiii GSM a textové SMS íkazy 
-    * Prozkoumejte metody určování kódové vzdálenosti u lineárních kódů a jejich výpočetní náročnost.+    * Navržené zařízení zrealizujte a řádně otestujte
  
-  * **Dálkově ovládané 4kolé vozítko využívající platformu Arduino ​(4-wheels vehicle using the Arduino platform with a remote control ​)** - (BP - Zemánek Martin+  * **Generátor VHDL kódu (VHDL code generator)** - (BP - Fořt Rostislav
-    * Prozkoumejte existující řešení ​dálkově ovládaných 4kolých vozítek +    * Prozkoumejte existující řešení. 
-    * Navrhněte vlastní řešení řízení 4kolého vozítka s pomocí platformy Arduino +    * Pomocí metod softwarového inženýrství navrhněte a naprogramujte aplikaci ​pro generování ​základních ​struktur ​VHDL kódu
-    * Aplikace pro Arduino bude umožňovat řízení každého kola tak, aby bylo možné jezdit všemi směry. +    * Vytvořte několik ​šablon ukazujících práci s aplikací.
-    * Veškeré řízení pohybu vozítka bude provedeno s pomocí dálkového ovládání. +
-    * Vozítko bude na sobě obsahovat další senzory potřebné pro pohyb LED diody pro signalizaci směru. +
-    * Navržené řešení zrealizujte a řádně otestujte. +
- +
-  * **Realizace základních matematických funkcí s pomocí hardware (Hardware implementation of essential mathematical functions)** - (BP - Brokeš Jan) +
-    * Prozkoumejte existující řešení implementace ​základních ​matematických funkcí v jazyce ​VHDL+
-    * Zaměřte se zejména na funkce goniometrické,​ logaritmické a druhou odmocninu+
-    * Vytvořte model výpočtu těchto matematických funkci v programu Wolfram Mathematica. +
-    * Výsledné modely výpočtu matematických funkci převeďte do jazyka VHDL. +
-    * Pro vytvořené řešení vytvořte několik ​ukázek v jazyce VHDL.+
     * Výsledné řešení řádně otestujte.     * Výsledné řešení řádně otestujte.
-    * Při návrhu berte úvahu následné nasazení materiálu ​ve výuce.+    * Požadavky:​ 
 +      * Aplikace bude napsaná ​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.
  
-  * **Aplikace pro řízení a správu vytápění v chytré domácnosti ​s pomocí ​wifi sítě ​(A heating control ​application for the SmartHome based on a wifi network)** - (BP - Hepner Lukáš+  * **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í. +    ​Prozkoumejte existující řešení ​pro Bluetooth tisk
-    ​- Pomocí metod softwarového inženýrství ​navrhněte ​vlastní ​řešení ​vyhovující nížuvedeným požadavkům+    ​* Analyzujte Bluetooth a bezpečnost Bluetooth komunikace. 
-    ​Navržené řešení ​naprogramujte,​ řádně ho zdokumentujte ​otestujte. +    * Analyzujte a navrhněte řešení ​které zvýší samotné zabezpečení Bluetooth protokolu. 
-    - Požadavky: +    * Zaměřte se zejména na řešení, které není závislé na použité verzi protokolu Bluetooth
-      * každé vzdálené ​zařízení ​(teplotní čidlo, termo hlavice, atd.) bude opatřeno wifi modulem +    ​Navržené řešení ​se bude skládat ze: serverové časti pro Raspberry Pi uživatelské části pro Android ​zařízení. 
-      aplikace ​bude umožňovat nalézt hlavice připojené k Wi-Fi síti +    Bluetooth komunikace ​bude probíhat mezi serverovou a uživatelskou částí. 
-      aplikace bude umožňovat vytvářet rozvrhy vytápění ​ty přiřazovat vybraným termo hlavicím +    Navržené zařízení zrealizujte ​a řádně otestujte.
-      * rozvrhy bude možné ukládat a načítat ze souboru ve formátu XML +
-      * aplikace bude podporovat více uživatelů s různým typem oprávnění +
-      * aplikace umožní správu uživatelských účtů a jejich práv +
-      * termo hlavice si bude synchronizovat čas pomocí NTP protokolu+
  
 +  * **Návrh spolehlivých systémů v FPGA s použitím bezpečnostních kódů (Design of dependable system based on error control codes for FPGA)** - (DP - Pail Vojtěch)
 +    * Prozkoumejte existující metody řešení.
 +    * Analyzujte vlastnosti různých typů kombinačních obvodů pomocí sady benchmarků z hlediska odolnosti proti poruchám. Využijte simulační software dostupný na KČN.
 +    * Na základě takto získaných dat nalezněnte vhodný bezpečnostní kód, který bude schopen tyto poruchy detekovat, popř. i opravovat tak, aby redundance (area ovehead) byla co nejmenší.
 +    * Specifikujte požadavky na úpravu simulačního softwaru tak, aby obsahoval podporu pro výběr nejvhodnějšího kódu.
 +    * Navržený způsob řešení ověřte na několka příkladech konkrétních obvodů a kódů.
 +    * Vytvořte klasifikaci obvodů s hlediska možností opravy/​detekce poruch.
  
-  * **Aplikace android pro komunikaci s platformou Arduino protokolem Bluetooth (An android application communicating with the Arduino platform by a Bluetooth)** - (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 Bluetooth 
-      * 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ých) stavu procesoru Arduina 
-      * aplikace umožní měnit obsah proměnných v procesu Arduina 
  
-  * ** Přenosný zvukový syntezátor se záznamem více stop (Portable sound synthesizer with multiple track recording)** - (BP - Dohnal Pavel) 
-    * Prozkoumejte existující řešení. 
-    * Vyberte vhodnou HW platformu. 
-    * Vyberte vhodný programovací jazyk. 
-    * Navrhněte vlastní řešení splňující tyto požadavky: 
-      * malé kompaktní přenosné zařízení 
-      * zařízení bude obsahovat ovládací prvky pro hraní tónů 
-      * syntezátory budou mít ručně nastavitelné parametry 
-      * zařízení bude podporovat tyto efekty: reverb/​delay a filtr 
-      * možnost nahrávání oddělených stop 
-      * podpora ukládání a načtení projektů na externí uložiště. 
-    * Výsledné řešení zrealizujte a řádně otestujte. 
  
-  * ** Grafické uživatelské rozhraní (GUI) pro definování funkcionality vývodů mikrokontroléru a generování ​kostry ​kódu v jazyku C (A graphical user interface (GUI) for assignment microcontroller pad functionality and C language ​skeleton generator)** - (BP - Tamarkov Dmitriy)+  * ** Nástroj ​pro generování ​bezpečnostních ​kódu ve VHDL s pomocí programu Wolfram Mathematica ​(Error control code generator tool in VHLD language ​using Wolfram Mathematica)** - (BP - Ganeev Timur)
     - Prozkoumejte existující řešení.     - 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+    - Navrhněte a naprogramujte nástroj (sadu nástrojů) v prostředí Wolfram Mathematica umožňující generovat bezpečnostní kódy. 
-    - Navržené řešení naprogramujteřádně ho zdokumentujte ​otestujte+    - Vstupem do generátoru budou základní parametry pro zvolený bezpečnostní kód (počet vstupních vodičů, název výstupních souboru apod.)
-    - Požadavky: +    - Výstupem generátoru budou 3 VHDL soubory sloužící jako kodérdekodér ​testbench pro zvolený kód
-      * aplikace bude napsána ​jazyce Python +    - Zaměřte se zejména na základní paralelní kódysudá parita, Hammingůkód rozšířený Hammingův kód a dále pak na seriové kódy, jako jsou kódy generované mnohočleny (cyklický kód). 
-      * uživatelské rozhraní bude napsáno ​anglickém jazyce +    - Pro každý kód vytvořte několik příkladů,​ na kterých ​simulačním nástroji ModelSim ukážete správnou funkci generovaných souborů. 
-      * uživatelské rozhraní umožní nastavení funkcionality vývodů mikrokontroléru +    - Zároveň pro každý vytvořený ​íklad zjistěte spotřebované zdroje při implementaci ​FPGA obvodu. 
-      * všechna možná nastavení ​iřazení v mikrořadičbudou popsána ​JSON formátu +    - Výsledné ​řešení ​řádně otestujte.
-      * uživatelské rozhraní umožní čtení a zápis uživatelem zvolené konfigurace ve formátu JSON +
-      * uživatelské rozhraní umožní vygenerovat kostru v jazyku C, která bude implementovat funkcionalitu (přiřazení funkce k vývodu obvodu), která byla nastavena uživatelem v uživatelském rozhraní+
  
- +  ​* ** Nástroj ​pro generování násobiček a děliček ve VHDL s pomocí programu Volfram Mathematica ​(Multiplier and divider circuit generator tool in VHLD language using Wolfram Mathematica)** - (BP - <​del>​Kougl Ladislav</​del>​)
- +
- +
-  ​* ** Aplikace ​pro ovládání zařízení v chytré domácnosti vytvořené na platformě RaspberryPi ​(An application for devices controlling ​in a SmartHome realized with the Raspberry Pi platform)** - (BP - Chyský Adam)+
     - Prozkoumejte existující řešení.     - 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+    - Navrhněte a naprogramujte nástroj (sadu nástrojů) v prostředí Wolfram Mathematica umožňující generovat násobičky a děličky
-    - Implementujte funkční prototyp, řádně ho zdokumentujte ​otestujte+    - Vstupem do generátoru násobičky a děličky bude typ operacešířka vodičů ​počet bitů na číslici
-    - Požadavky:​ +    - Generátor násobičky ​bude umožňovat ​násobení čísel bez znaménka, čísel v doplňkovém kódu to i za použití relativních číslic
-      * aplikace bude napsána pro platformu Raspberry PI +    - Generátor děliček ​bude umožňovat ​dělit celá čísla a čísla menší než jedna. Zaměřte se i na použití dělení čísel využívající metody SRT
-      * ovládací zařízení bude obsahovat dotykový displej +    - Pro každý typ násobení ​dělení vytvořte několik příkladů, na kterých ​simulačním nástroji ModelSim ukážete správnou funkci generátorů. 
-      * aplikace ​bude umožňovat ​ovládání RGBW světelvypínačů zásuvek+    ​- Zaměřte ​se na prezentaci algoritmu násobení ​dělení v programu Wolfram Mathematica takaby byl zřejmý jejich princip
-      * aplikace ​bude umožňovat ​sledovat teplotu a množství CO2 +    ​- Výsledné ​řešení řádně ​otestujte.  
-      * analyzovat a zvolte vhodný programovací jazyk a prostředí pro realizaci aplikace +  
-      * analyzujte možnosti bezdrátového spojení jednotek s ovládacím zařízením a vyberte optimální technologií +
-      * analyzujte komunikační protokoly na aplikační vrstvě ​vyberte optimální způsob komunikace +
-      * při návrhu architektury aplikace počítejte s budoucím rozšířením o další moduly +
- +
-  * **Meteorologická stanice v chytré domácnosti založená na platformě Arduino (The weather station for SmartHome based on the Arduino platform)** - (BP - Švec Michal) +
- +
-    - 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+
-    - Implementujte funkční prototyp, řádně ho zdokumentujte a otestujte. +
-    - Požadavky: +
-      * stanice bude poskytovat měření teploty ​vlhkosti +
-      * jako řídící platformu použijte Arduino s procesorem ATmega2560 +
-      * aplikaci implementujte v jazyku C +
-      * aplikace umožní: +
-        * ověření identity uživatele pomocí jména a kódu +
-        * záznam naměřených dat a jejich odesílání +
-        * komunikaci a konfiguraci pomocí SMS zpráv, emailů a bluetooth +
-      * každý modul systému (čidlakomunikační moduly, ...) bude realizován jako samostatná knihovna ​jazyku C +
-      * při návrhu architektury aplikace počítejte s budoucím rozšířením o další moduly +
-      * navrhněte a implementujte jednoduchou aplikaci pro OS Android, která umožní základní konfiguraci pomocí bluetooth +
- +
-  * ** Nástroj pro měření spotřeby systémových zdrojů OS linux při obsluze externích HW klientů na platformě Raspberry Pi (OS Linux resource consumption measurement tool during handling of external devices for the Raspberry Pi platform)** - (BP - Kňazovický Marek) +
-    ​* Prozkoumejte a analyzujte existující nástroje a knihovny umožňující měření spotřeby systémových zdrojů pro OS Linux. +
-    * Navrhněte vlastní knihovnu pro testování ​měření využití systémových zdrojů (paměťprocesor, sítě). +
-    * Při návrhu zohledněte omezené prostředky platformy Raspberry PI pro kterou bude knihovna navržena+
-    ​* Samotné testování bude zaměřeno zejména na obsluhu mnoha síťových klientů připojených přes síťové rozhraní k platformě Raspberry PI. +
-    * HW klienti budou komunikovat s pomocí wifi modulu postaveném na čipu ESP8266. +
-    * Pro komunikaci knihovny s HW klienty vyberte vhodný komunikační protokol. +
-    * Navržené ​řešení ​zrealizujte. +
-    * Pro navrženou knihovnu vytvořte testovací nástroj, který bude demonstrovat využití zrealizované knihovny. +
-    * Pro ovládání klientů a konfiguraci napište jednoduchou aplikaci pro OS Android. +
-    * Výsledné řešení ​otestujte. +
- +
- +
- +
- +
- +
- +
- +
- +
- +
- +
- +
- +
- +
- +
- +
- +
-   +
 ===== Available projects ===== ===== Available projects =====
  
Line 159: Line 78:
     * řízení modelu auta     * řízení modelu auta
     * generator analogových průběhů     * 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í     * vlastní zadání
 +    * Wifi a ESP32/​ESP2866
  
   2. Volfram Mathematica   2. Volfram Mathematica
Line 165: Line 87:
     * kódy pro kryptografií     * kódy pro kryptografií
     * matematické funkce realizované v HW     * matematické funkce realizované v HW
 +    * aritmetický procesor v GF(2^2^n)
 +    * efiktivita protokolů pro předmět BI-PSI
     * vlastní zadání     * vlastní zadání
  
Line 175: Line 99:
     * vlastní zadání     * vlastní zadání
  
-  4. Jazyk VHDL+  4. Jazyk VHDL / desky FPGA
     * návrh hardware pro bezpečnostní kódy     * návrh hardware pro bezpečnostní kódy
     * generátor průběhů (sinusovka, obdelník, trojuhelník)     * generátor průběhů (sinusovka, obdelník, trojuhelník)
Line 182: Line 106:
     * implementace procesoru/​periferié procesoru (ARM, Z80, AVR, ...)     * implementace procesoru/​periferié procesoru (ARM, Z80, AVR, ...)
     * HW podpora SoC (Zynq)     * HW podpora SoC (Zynq)
 +    * aritmetický procesor v GF(2^2^n)
     * Hry pro FPGA     * Hry pro FPGA
     * vlastní zadání     * vlastní zadání
Line 199: Line 124:
     * aplikace pro práci s hardware (raspberry PI, Arduino a jiné)     * aplikace pro práci s hardware (raspberry PI, Arduino a jiné)
  
-  8. Projekty zadané externím zadavatelem+  8. Python 
 +    * aplikace pro zpracování a generování dat podle šablon 
 + 
 +  9. Projekty zadané externím zadavatelem
     * seznam zadavatelů níže     * seznam zadavatelů níže
  
Line 220: Line 148:
 **BP a DP defended works on CTU in Prague FEL/FIT:** [[https://​dspace.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 - 2018 =====+===== 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:​2018:​proj_2018|Realized projects 2018]]
   *[[project:​2017:​proj_2017|Realized projects 2017]]   *[[project:​2017:​proj_2017|Realized projects 2017]]
project/proj_list.txt · Last modified: 2024/02/15 10:30 by xkubalik