Moduł oferowany także w ramach programów studiów:
Informacje ogólne:
Nazwa:
Otwarte oprogramowanie w systemach wbudowanych i pomiarowych
Tok studiów:
2019/2020
Kod:
EELT-2-310-AP-s
Wydział:
Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej
Poziom studiów:
Studia II stopnia
Specjalność:
Automatyka przemysłowa i automatyka budynków
Kierunek:
Elektrotechnika
Semestr:
3
Profil:
Ogólnoakademicki (A)
Język wykładowy:
Polski
Forma studiów:
Stacjonarne
Strona www:
 
Prowadzący moduł:
Wetula Andrzej (wetula@agh.edu.pl)
Treści programowe zapewniające uzyskanie efektów uczenia się dla modułu zajęć

Moduł przedstawia aktualne rozwiązania, trendy rozwojowe oraz techniki programowania w zakresie otwartego oprogramowania w zastosowaniach do systemów wbudowanych oraz pomiarowych.

Opis efektów uczenia się dla modułu zajęć
Kod MEU Student, który zaliczył moduł zajęć zna i rozumie/potrafi/jest gotów do Powiązania z KEU Sposób weryfikacji i oceny efektów uczenia się osiągniętych przez studenta w ramach poszczególnych form zajęć i dla całego modułu zajęć
Wiedza: zna i rozumie
M_W001 Ma ugruntowaną wiedzę w zakresie wdrażania i oprogramowywania systemów wbudowanych w oparciu o narzędzia i systemy operacyjne dostępne na licencjach otwartych ELT2A_W04 Wykonanie ćwiczeń laboratoryjnych
M_W002 Ma rozszerzoną wiedzę na temat stosowanych obecnie architektur mikroporcesorów i ich właściwości. ELT2A_W06, ELT2A_W08 Wykonanie ćwiczeń laboratoryjnych
Umiejętności: potrafi
M_U001 potrafi przygotować i przedstawić prezentację poświęconą wynikom realizacji zadania badawczego ELT2A_U03 Prezentacja
M_U002 potrafi pozyskiwać informacje z literatury, baz danych i innych źródeł; potrafi integrować pozyskane informacje, dokonywać ich interpretacji i krytycznej oceny, a także wyciągać wnioski oraz formułować i wyczerpująco uzasadniać opinie ELT2A_U01 Wykonanie ćwiczeń laboratoryjnych
M_U003 potrafi zaprojektować wbudowany system mikrokomputerowy oparty o wybrane gotowe elementy, oraz zrealizować ten projekt lub jego fragment, używając właściwych metod i środków, w tym przystosowując do tego celu już istniejące, a także potrafi oszacować koszty w procesie projektowania ELT2A_U11 Wykonanie ćwiczeń laboratoryjnych
Kompetencje społeczne: jest gotów do
M_K001 ma świadomość roli społecznej absolwenta uczelni technicznej, a zwłaszcza rozumie potrzebę formułowania i przekazywania społeczeństwu – m.in. poprzez środki masowego przekazu – informacji i opinii dotyczących osiągnięć elektrotechniki i innych aspektów działalności inżyniera elektryka; podejmuje starania, aby przekazać takie informacje i opinie w sposób powszechnie zrozumiały ELT2A_K02 Wykonanie ćwiczeń laboratoryjnych
Liczba godzin zajęć w ramach poszczególnych form zajęć:
SUMA (godz.)
Wykład
Ćwicz. aud
Ćwicz. lab
Ćw. proj.
Konw.
Zaj. sem.
Zaj. prakt
Zaj. terenowe
Zaj. warsztatowe
Prace kontr. przejść.
Lektorat
42 14 0 0 28 0 0 0 0 0 0 0
Matryca kierunkowych efektów uczenia się w odniesieniu do form zajęć i sposobu zaliczenia, które pozwalają na ich uzyskanie
Kod MEU Student, który zaliczył moduł zajęć zna i rozumie/potrafi/jest gotów do Forma zajęć dydaktycznych
Wykład
Ćwicz. aud
Ćwicz. lab
Ćw. proj.
Konw.
Zaj. sem.
Zaj. prakt
Zaj. terenowe
Zaj. warsztatowe
Prace kontr. przejść.
Lektorat
Wiedza
M_W001 Ma ugruntowaną wiedzę w zakresie wdrażania i oprogramowywania systemów wbudowanych w oparciu o narzędzia i systemy operacyjne dostępne na licencjach otwartych + - - - - - - - - - -
M_W002 Ma rozszerzoną wiedzę na temat stosowanych obecnie architektur mikroporcesorów i ich właściwości. + - - - - - - - - - -
Umiejętności
M_U001 potrafi przygotować i przedstawić prezentację poświęconą wynikom realizacji zadania badawczego - - - + - - - - - - -
M_U002 potrafi pozyskiwać informacje z literatury, baz danych i innych źródeł; potrafi integrować pozyskane informacje, dokonywać ich interpretacji i krytycznej oceny, a także wyciągać wnioski oraz formułować i wyczerpująco uzasadniać opinie - - - + - - - - - - -
M_U003 potrafi zaprojektować wbudowany system mikrokomputerowy oparty o wybrane gotowe elementy, oraz zrealizować ten projekt lub jego fragment, używając właściwych metod i środków, w tym przystosowując do tego celu już istniejące, a także potrafi oszacować koszty w procesie projektowania - - - + - - - - - - -
Kompetencje społeczne
M_K001 ma świadomość roli społecznej absolwenta uczelni technicznej, a zwłaszcza rozumie potrzebę formułowania i przekazywania społeczeństwu – m.in. poprzez środki masowego przekazu – informacji i opinii dotyczących osiągnięć elektrotechniki i innych aspektów działalności inżyniera elektryka; podejmuje starania, aby przekazać takie informacje i opinie w sposób powszechnie zrozumiały - - - + - - - - - - -
Nakład pracy studenta (bilans punktów ECTS)
Forma aktywności studenta Obciążenie studenta
Sumaryczne obciążenie pracą studenta 75 godz
Punkty ECTS za moduł 3 ECTS
Udział w zajęciach dydaktycznych/praktyka 42 godz
przygotowanie projektu, prezentacji, pracy pisemnej, sprawozdania 30 godz
Samodzielne studiowanie tematyki zajęć 3 godz
Szczegółowe treści kształcenia w ramach poszczególnych form zajęć (szczegółowy program wykładów i pozostałych zajęć)
Wykład (14h):
  1. Architektury mikroprocesorowe spotykane w systemach wbudowanych (1h)

    Architektury x86, MIPS, Power, ARM. Podobieństwa i różnice, popularność i perspektywy. Obszary zastosowań.

  2. Otwarte oprogramowanie (1h)

    Rozwój otwartego oprogramowania. Rodzaje otwartych licencji. Organizacje wspierające otwarte oprogramowanie.

  3. Otwarte narzędzia programistyczne.

    Biblioteki C: Glibc, uclibc, Bionic, libc++. Zestawy narzędzi progrmistycznych: GCC, Clang/LLVM. Narzędzia kontroli wersji. Środowiska graficzne. Emulatory. Podstawy pracy z symulatorem dla systemów wbudowanych. Obsługa narzędzi do kompilacji skrośnej.

  4. Budowa systemu. Struktura drzewa katalogów. Proces uruchomienia.

    Budowa systemu typu Unix. Struktura drzewa katalogów. Montowanie i odmontowanie napędów. Ładowanie systemu z pamięci, napędów i sieci. Kontrola nad ładowaniem systemu. Parametry jądra.

  5. Komunikacja międzyprocesowa i sieciowa.

    Tworzenie programów wielowątkowych. Komunikacja międzywątkowa i międzyprocesowa. Komunikacja sieciowa z wykorzystaniem UDP/IP oraz TCP/IP. Gotowe narzędzia i biblioteki komunikacyjne. Instalacja i przygotowanie serwerów.

  6. Uruchamianie kodu jądra

    Kompilacja, testowanie i uruchamianie modułów jądra. Komunikacja między kodem jądra a użytkownika. Komunikacja pomiędzy funkcjami jądra systemu. Ładowanie i usuwanie modułów. Debugowanie modułów jądra.

  7. Android

    Budowa systemu Android. Zastosowania w systemach wbudowanych. Przygotowanie systemu Android do pracy w systemie wbudowanym.

  8. Systemy czasu rzeczywistego.

    Systemy operacyjne czasu rzeczywistego. Właściwości, działanie, przygotowanie do pracy. Zapoznanie z platformą Xenomai i PREEMPT_RT.

Ćwiczenia projektowe (28h):
  1. Zadanie projektowe

    Projekt obejmuje samodzielne opracowanie wybranego przez studenta zadania, z wykorzystaniem sprzętu dostarczonego przez prowadzącego zajęcia. Zadania są złożone i mają charakter przede wszystkim programistyczny charakter. Dopuszcza się wykonanie zadania projektowego wg propozycji studenta.

  2. Prezentacja wyników pracy

    Student powinien zaprezentować przed grupą i prowadzącym sposób i efekt opracowania wykonanego przez siebie zadania projektowego.

Pozostałe informacje
Metody i techniki kształcenia:
  • Wykład: Treści prezentowane na wykładzie są przekazywane w formie prezentacji multimedialnej w połączeniu z klasycznym wykładem tablicowym wzbogaconymi o pokazy odnoszące się do prezentowanych zagadnień.
  • Ćwiczenia projektowe: Studenci wykonują zadany projekt samodzielnie, bez większej ingerencji prowadzącego. Ma to wykształcić poczucie odpowiedzialności za pracę w grupie oraz odpowiedzialności za podejmowane decyzje.
Warunki i sposób zaliczenia poszczególnych form zajęć, w tym zasady zaliczeń poprawkowych, a także warunki dopuszczenia do egzaminu:

Zaliczenie laboratorium odbywa się na podstawie aktywności na zajęciach (odpowiedzi na pytania prowadzącego).
Zaliczenie projektu odbywa się na podstawie raportu oraz prezentacji wyników projektu.
Ocena końcowa jest średnią ważoną z projektu (waga 2/3) oraz laboratorium (waga 1/3).

Zasady udziału w zajęciach:
  • Wykład:
    – Obecność obowiązkowa: Nie
    – Zasady udziału w zajęciach: Studenci uczestniczą w zajęciach poznając kolejne treści nauczania zgodnie z syllabusem przedmiotu. Studenci winni na bieżąco zadawać pytania i wyjaśniać wątpliwości. Rejestracja audiowizualna wykładu wymaga zgody prowadzącego.
  • Ćwiczenia projektowe:
    – Obecność obowiązkowa: Tak
    – Zasady udziału w zajęciach: Studenci wykonują prace praktyczne mające na celu uzyskanie kompetencji zakładanych przez syllabus. Ocenie podlega sposób wykonania projektu oraz efekt końcowy.
Sposób obliczania oceny końcowej:

Ocena końcowa jest średnią ocen z ćwiczeń laboratoryjnych i projektowych.

Sposób i tryb wyrównywania zaległości powstałych wskutek nieobecności studenta na zajęciach:

Przewidziane są dodatkowe terminy odrabiania zaległych zajęć laboratoryjnych.

Wymagania wstępne i dodatkowe, z uwzględnieniem sekwencyjności modułów :

Umiejętność programowania w języku C, C++. Znajomość podstaw budowy i programowania systemów mikroprocesorowych.

Zalecana literatura i pomoce naukowe:

1. Bis M.: Linux w systemach embedded. BTC, Warszawa 2011
2. Hallinan C.: Embedded Linux Primer. A Practical Real-World Approach., Prentice Hall, 2006
3. Yaghmour K.: Building Embedded Linux Systems, O’Reilly Media, 2008

Publikacje naukowe osób prowadzących zajęcia związane z tematyką modułu:

Nie podano dodatkowych publikacji

Informacje dodatkowe:

Wykład i laboratorium do przedmiotu prowadzone są w pierwszych 8 tygodniach semestru. Następne 7 tygodni jest przeznaczone na projekt.