Systemy wbudowane i sieci sensorowe 1000-2D10SWS
Coraz większe znaczenie zyskują ostatnio sieci sensorowe. Są to sieci złożone z wielu niedużych urządzeń mikroprocesorowych, zwanych systemami wbudowanymi (ang. embedded systems), komunikujących się drogą radiową. Typowym przykładem sieci sensorowej są czujniki monitorujące parametry środowiskowe i przekazujące je drogą radiową do centrali. Elementami takiej sieci mogą być - oprócz czujników - także elementy wykonawcze, gromadzące dane itp. Najczęściej są to mikrokontrolery z dodatkowymi układami peryferyjnymi. Specyfika mikrokontrolerów polega jednak na tym, że dysponują małą mocą obliczeniową, małą pamięcią i ograniczoną mocą zasilania. Z tych powodów potrzebne są inne niż tradycyjne techniki ich programowania. W ramach seminarium zajmiemy się następującymi zagadnieniami:
1. Systemy operacyjne dla mikrokontrolerów:
a) modele szeregowania zadań przy ograniczonej pamięci,
b) szeregowanie asynchroniczne a szeregowanie synchroniczne,
c) porównanie systemow operacyjnych dostępnych dla systemow wbudowanych,
d) przenoszenie popularnych systemów operacyjnych na nowe architektury.
2. Tworzenie sterowników dla urządzeń peryferyjnych:
a) różnorodność układów peryferyjnych,
b) projektowanie jednolitego interfejsu.
3. Metodyka tworzenia programów na urządzenia z małą pamięcią:
a) opracowanie zestawu reguł i zaprojektowanie języka programowania,
b) stworzenie kompilatora tego języka,
c) zaimplementowanie narzędzia wspomagającego wizualne projektowanie aplikacji,
d) stworzenie zintegrowanego środowiska programistycznego.
4. Protokoły komunikacyjne:
a) problem ograniczonych zasobów: mała moc obliczeniowa, mała pamięć,
ograniczona moc zasilania, ograniczenia układów nadawczo-odbiorczych.
b) modelowanie i testowanie różnych schematów zapewniających
niezawodną komunikację przy małych zasobach.
5. Aplikacje
6. Czas rzeczywisty:
a) metodyki tworzenia systemów czasu rzeczywistego,
b) sposoby zagwarantowania ścisłych więzów czasowych między zdarzeniami,
c) rozszerzenia automatów skończonych umożliwiające opis więzów
czasowych (np. automaty z czasem),
d) metody i języki programowania.
7. Metody weryfikacji poprawności, modelowania i testowania
oprogramowania małych urządzeń:
a) modelowanie interakcji między urządzeniami uwzględniające ich niskopoziomowe własności i ograniczenia sprzętowe,
b) narzędza do symulacji,
c) modelowanie systemów wbudowanych w popularnych narzedziach weryfikujących przez model.
Do udziału zachęcamy przede wszystkim studentow zainteresowanych pisaniem pracy magisterskiej o charakterze praktycznym. Implementacje będą wykonywane na różnego rodzaju sprzęcie dostarczanym (częściowo) przez nas.
Rodzaj przedmiotu
Efekty kształcenia
Umiejętności
1. Potrafi opisywać wybrane problemy informatyczne i ich rozwiązania w sposób zrozumiały dla nieinformatyka; potrafi przygotować prezentację z użyciem narzędzi informatycznych (K_U12).
2. Potrafi określić kierunki dalszego uczenia się i zrealizować proces samokształcenia (K_U15).
Kompetencje
1. Potrafi formułować opinie na temat podstawowych zagadnień informatycznych (K_K06).
Kryteria oceniania
Dla studentów 1. roku etapu magisterskiego warunkiem zaliczenia seminarium jest zatwierdzenie tematu pracy magisterskiej. Dla studentów 2. roku etapu magisterskiego warunkiem zaliczenia seminarium jest złożenie pracy magisterskiej. Ponadto każdy student powinien przynajmniej raz w semestrze wygłosić referat.
Literatura
Współczesna literatura z tej dziedziny, w tym czasopisma naukowe i artykuły z konferencji. Szczegóły przedstawią prowadzący na pierwszych zajęciach.
Więcej informacji
Dodatkowe informacje (np. o kalendarzu rejestracji, prowadzących zajęcia, lokalizacji i terminach zajęć) mogą być dostępne w serwisie USOSweb: