Marek Materzok / dydakyka

Strona główna

Wykłady

Systemy wbudowane

Wykład jest wprowadzeniem do programowania systemów wbudowanych. W ramach wykładu student zapozna się z architekturą popularnych mikrokontrolerów, nauczy się wykorzystywać ich peryferia do sterowania różnorodnymi urządzeniami zewnętrznymi, a także pozna popularne magistrale używane w systemach wbudowanych.

Logika cyfrowa

Wykład jest wprowadzeniem do projektowania układów cyfrowych. Celem wykładu jest nauczenie zasad rządzących funkcjonowaniem elektroniki cyfrowej oraz typowych rozwiązań stosowanych przy projektowaniu układów. Wiedza zdobyta na wykładzie pomoże w zrozumieniu zasady działania mikroprocesorów i mikrokontrolerów oraz zasad rządzących programowalnymi układami logicznymi FPGA.

Propozycje tematów prac

Rozbudowa symulatora logiki cyfrowej dla języka Verilog

DigitalJS jest wizualnym symulatorem logiki cyfrowej pracującym w przeglądarce internetowej. Został zaprojektowany jako pomoc w nauczaniu (i uczeniu się) logiki cyfrowej oraz języka projektowania sprzętu Verilog. Tematem projektu jest implementacja wybranych dodatkowych funkcjonalności w symulatorze.

Budowa modelu mikrokomputera Cobra 1 na FPGA

Cobra 1 to mikrokomputer oparty na procesorze Zilog Z80, którego schemat był publikowany w polskim czasopiśmie Audio Video w latach 80. Ze względu na trudną dostępność przestarzałych już komponentów budowa tego komputera we współczesnych czasach jest utrudniona. Można jednak wykorzystać oryginalne schematy, aby odtworzyć ten ciekawy komputer w programowalnym układzie logicznym FPGA. Tematem pracy jest stworzenie modelu Cobry 1 w wybranym języku opisu sprzętu.

Przystosowanie serwisu internetowego dla urządzeń mobilnych

Tanuki.pl to funkcjonujący już od ponad 10 lat serwis poświęcony popkulturze japońskiej. Zaimplementowany jest przy użyciu języka PHP i Javascript oraz bazy danych PostgreSQL. Od momentu powstania serwisu mocno uległy zmianie wymagania użytkowników. W szczególności ogromną popularność zyskały urządzenia mobilne, które, ze względu na niewielkie ekrany o zróżnicowanych rozmiarach oraz interfejs dotykowy, wymagają innych rozwiązań odnośnie interfejsu użytkownika niż te, które sprawdzały się 10 lat temu. Praca polegać będzie na modernizacji rzeczywistego, rozbudowanego serwisu, aby spełniał wymagania współczesnych użytkowników.

Implementacja klienta Robot Operating System (ROS) dla platformy NodeMCU

Robot Operating System (ROS) to framework do konstrukcji rozproszonego oprogramowania do sterowania robotami, wykorzystywany w robotach amatorskich oraz badawczych. Jest on wykorzystywany w łaziku Aleph 1 zbudowanym w Instytucie Informatyki Uniwersytetu Wrocławskiego. ROS pozwala na bezproblemowe łączenie modułów robota spiętych siecią opartą na protokołach IP.

Mikrokontrolery ESP8266 są niedrogimi układami z wbudowanym kontrolerem WiFi, co czyni je użytecznymi do budowy modułów robotycznych, które muszą być niezależne elektrycznie od samego robota - np. w narzędziu, które robot chwyta, a potem odkłada. Oprogramowanie NodeMCU pozwala na łatwe programowanie mikrokontrolerów ESP8266 za pomocą języka Lua.

Tematem pracy jest opracowanie biblioteki lub rozszerzenia dla NodeMCU umożliwiającego połączenie się do systemu ROS jako klient.