This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
project:proj_list [2019/02/06 18:29] xkubalik [Current projects] |
project:proj_list [2021/02/03 08:53] xkubalik [Current projects] |
||
---|---|---|---|
Line 2: | Line 2: | ||
===== Current projects ===== | ===== Current projects ===== | ||
- | * **Bezpečnostní kódy v programu Wolfram Mathematica (Error control codes in Wolfram Mathematica)** - (BP - Koleník Stanislav) | + | * **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í podpory práce s bezpečnostními kódy v programu Wolfram Mathematica. | + | * Prozkoumejte existující řešení. |
- | * Navrhněte vlastní řešení pro práci se základními bezpečnostními kódy. | + | * Analyzujte protokol SENT a jeho rozšíření SPC. |
- | * 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 možnosti generování kódů emulujících funkci akceleračního pedálu a navrhněte řešení s využitím platformy ESP32. |
- | * Při návrhu řešení zohledněte jeho využitelnost pro výukové účely. | + | * Proveďte analýzu komunikace pedálu z koncernu VW. |
- | * Vytvořte několik vzorových příkladů na práci s bezpečnostními kódy včetně jejich řešení. | + | * 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. |
- | * Výsledné řešení řádně otestujte. | + | * Pro komunikaci využijte protokol SENT/SPC. |
- | * Prozkoumejte metody určování kódové vzdálenosti u lineárních kódů a jejich výpočetní náročnost. | + | * Zařízení musí být ovladatelné přes CAN sběrnici i fyzickými ovladači. |
+ | * Navržené řešení 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) | + | * **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í 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 sledování vozidel v reálném čase, která bude nasbíraná data ukládat a dále zpracovávat. |
- | * Aplikace pro Arduino bude umožňovat řízení každého kola tak, aby bylo možné jezdit všemi směry. | + | * Řešení se bude skládat ze serverové části a uživatelské části představované lokátorem (tyto dvě zařízení budou mezi sebou komunikovat přes síť Internet) |
- | * 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 a LED diody pro signalizaci směru. | + | |
* Navržené řešení zrealizujte a řádně otestujte. | * Navržené řešení zrealizujte a řádně otestujte. | ||
+ | * Požadavky: | ||
+ | * GPS lokátor bude postaven na platformě ESP32 | ||
+ | * lokátor bude odesílat data na server pomocí GPRS/EDGE | ||
+ | * server bude umožňovat zobrazení pozice lokátorů v reálném čase | ||
+ | * server bude umožňovat připojení několika lokátorů | ||
+ | * server bude zaznamenávat polohu a metadata z lokátorů | ||
+ | * uživatelské rozhraní bude realizováno formou webové aplikace. | ||
- | * **Realizace základních matematických funkcí s pomocí hardware (Hardware implementation of essential mathematical functions)** - (BP - Brokeš Jan) | + | * **Přenosný přístupový identifikační systém využívající technologii NFC a umožňující komunikaci přes GSM bránu (Portable access identification system using NFC technology and communicating via GSM gateway)** (BP - Šimůnek Martin). |
- | * Prozkoumejte existující řešení implementace základních matematických funkcí v jazyce VHDL. | + | * Prozkoumání existující řešení. |
- | * Zaměřte se zejména na funkce goniometrické, logaritmické a druhou odmocninu. | + | * Analyzujte technologii NFC a možnost využití platformy arduino jako ovládací prvek. |
- | * Vytvořte model výpočtu těchto matematických funkci v programu Wolfram Mathematica. | + | * Analyzujte a navrhněte bezpečné řešení s ohledem na omezené zdroje platformy Arduino. |
- | * Výsledné modely výpočtu matematických funkci převeďte do jazyka VHDL. | + | * 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. |
- | * Pro vytvořené řešení vytvořte několik ukázek v jazyce VHDL. | + | * Komunikace se zařízením bude probíhat přes technologii GSM – formou SMS a za pomoci LCD displeje (základní orientační údaje). |
- | * Výsledné řešení řádně otestujte. | + | * Navržené řešení zrealizujte a řádně otestujte. |
- | * Při návrhu berte v úvahu následné nasazení materiálu ve výuce. | + | |
- | * **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áš) | + | * **Pokročilé bezpečnostní kódy v programu Wolfram Mathematica (Advanced error control codes using Wolfram Mathematica)** (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. |
- | - Pomocí metod softwarového inženýrství navrhněte vlastní řešení vyhovující níže uvedeným požadavkům. | + | * Dodržte členění na výukové scénáře a balíčky a zachovejte jejich formát. |
- | - Navržené řešení naprogramujte, řádně ho zdokumentujte a otestujte. | + | * Zaměřte se především na Fireovy kódy, součinové kódy, RM kódy, nebinární BCH kódy a RS kódy, Goppa kódy a kódy konvoluční. |
- | - Požadavky: | + | * V dostatečné míře nastudujte a zdokumentujte příslušnou matematickou teorii. |
- | * každé vzdálené zařízení (teplotní čidlo, termo hlavice, atd.) bude opatřeno wifi modulem | + | * Navržené řešení zrealizujte a řádně otestujte. |
- | * aplikace bude umožňovat nalézt hlavice připojené k Wi-Fi síti | + | * Vytvořte několik příkladů použití každého kódu. |
- | * aplikace bude umožňovat vytvářet rozvrhy vytápění a ty přiřazovat vybraným termo hlavicím | + | * Využijte získaných poznatků ke zmapování současného stavu použití bezpečnostních kódů v kryptografii. |
- | * 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 | + | |
+ | * **Osobní GPS lokátor na platformě Arduino ovládaný přes SMS příkazy (Personal GPS locator based on Arduino platform controlled by SMS commands)** - (BP - Stáhl Martin) | ||
+ | * Prozkoumejte existující řešení pro osobní GPS lokátory. | ||
+ | * Analyzujte technologii GSM/GPS | ||
+ | * Analyzujte a navrhněte řešení které řeší nedostatky momentálně dostupných zařízení na trhu | ||
+ | * Zaměřte se na zařízení které není závislé na pohotovostní službě na vzdáleném serveru | ||
+ | * Navržené zařízení se bude skládat z: Arduino mikrokontroléru, GPS/GSM modulu, baterie, mobilní android aplikace pro snadné generovaní textových SMS příkazů | ||
+ | * Komunikace bude probíhat přes technologiii GSM a textové SMS příkazy | ||
+ | * Navržené zařízení zrealizujte a řádně otestujte | ||
- | * **Aplikace android pro komunikaci s platformou Arduino protokolem Bluetooth (An android application communicating with the Arduino platform by a Bluetooth)** - (BP - Denissyuk Andrey) | + | * **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 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í. | * Prozkoumejte existující řešení. | ||
- | * Vyberte vhodnou HW platformu. | + | * Pomocí metod softwarového inženýrství navrhněte a naprogramujte aplikaci pro generování základních struktur VHDL kódu. |
- | * Vyberte vhodný programovací jazyk. | + | * Vytvořte několik šablon ukazujících práci s aplikací. |
- | * Navrhněte vlastní řešení splňující tyto požadavky: | + | * Výsledné řešení řádně otestujte. |
- | * malé kompaktní přenosné zařízení | + | * Požadavky: |
- | * zařízení bude obsahovat ovládací prvky pro hraní tónů | + | * Aplikace bude napsaná v jazyce C++ |
- | * syntezátory budou mít ručně nastavitelné parametry | + | * Aplikace bude umožňovat vytvářet a upravovat šablony VHDL struktur |
- | * zařízení bude podporovat tyto efekty: reverb/delay a filtr | + | * Aplikace bude umožňovat ze šablon generovat kód |
- | * možnost nahrávání oddělených stop | + | * Aplikace bude schopná ve VHDL kódu rozpoznat entitu a umožní její použití v šabloně, např. pro automatické generování testbenche. |
- | * 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) | + | * **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íže uvedeným požadavkům. | + | * Analyzujte Bluetooth a bezpečnost Bluetooth komunikace. |
- | - Navržené řešení naprogramujte, řádně ho zdokumentujte a 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. |
- | * aplikace bude napsána v jazyce Python | + | * Navržené řešení se bude skládat ze: serverové časti pro Raspberry Pi a uživatelské části pro Android zařízení. |
- | * uživatelské rozhraní bude napsáno v anglickém jazyce | + | * Bluetooth komunikace bude probíhat mezi serverovou a uživatelskou částí. |
- | * uživatelské rozhraní umožní nastavení funkcionality vývodů mikrokontroléru | + | * Navržené zařízení zrealizujte a řádně otestujte. |
- | * všechna možná nastavení přiřazení v mikrořadiči budou popsána v JSON formátu | + | |
- | * 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á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 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) | + | * ** 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. |
- | - Implementujte funkční prototyp, řádně ho zdokumentujte a 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ér, dekodér a testbench pro zvolený kód. |
- | * aplikace bude napsána pro platformu Raspberry PI | + | - Zaměřte se zejména na základní paralelní kódy: sudá parita, Hammingův 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). |
- | * ovládací zařízení bude obsahovat dotykový displej | + | - Pro každý kód vytvořte několik příkladů, na kterých v simulačním nástroji ModelSim ukážete správnou funkci generovaných souborů. |
- | * aplikace bude umožňovat ovládání RGBW světel, vypínačů a zásuvek. | + | - Zároveň pro každý vytvořený příklad zjistěte spotřebované zdroje při implementaci v FPGA obvodu. |
- | * 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ě a 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) | + | |
+ | * ** 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>) | ||
- 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 a otestujte. | + | - Vstupem do generátoru násobičky a děličky bude typ operace, šířka vodičů a 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 a to i za použití relativních číslic. |
- | * stanice bude poskytovat měření teploty a vlhkosti | + | - 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. |
- | * jako řídící platformu použijte Arduino s procesorem ATmega2560 | + | - Pro každý typ násobení a dělení vytvořte několik příkladů, na kterých v simulačním nástroji ModelSim ukážete správnou funkci generátorů. |
- | * aplikaci implementujte v jazyku C | + | - Zaměřte se na prezentaci algoritmu násobení a dělení v programu Wolfram Mathematica tak, aby byl zřejmý jejich princip. |
- | * aplikace umožní: | + | - Výsledné řešení řádně otestujte. |
- | * 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 (čidla, komunikační moduly, ...) bude realizován jako samostatná knihovna v 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í a 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 152: | Line 111: | ||
* ří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 158: | Line 120: | ||
* 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 168: | Line 132: | ||
* 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 175: | Line 139: | ||
* 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 192: | Line 157: | ||
* 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 213: | Line 181: | ||
**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]] |