Programowanie systemów i modułów awionicznych V sem.
Informacje ogólne
Kod przedmiotu: | WMTLAWSI-PSMA |
Kod Erasmus / ISCED: | (brak danych) / (brak danych) |
Nazwa przedmiotu: | Programowanie systemów i modułów awionicznych V sem. |
Jednostka: | Wydział Mechatroniki, Uzbrojenia i Lotnictwa |
Grupy: | |
Punkty ECTS i inne: |
(brak)
|
Język prowadzenia: | polski |
Forma studiów: | stacjonarne |
Rodzaj studiów: | I stopnia |
Rodzaj przedmiotu: | wybieralny |
Forma zajęć liczba godzin/rygor: | W 28/+ ; C 32/+ ; Razem: 60 |
Przedmioty wprowadzające: | matematyka I / wymagania wstępne: znajomość rachunku macierzowego, umiejętność wykonywania działań na zbiorze liczb rzeczywistych i zespolonych, umiejętność rozwiązywania układów równań. matematyka II / wymagania wstępne: znajomość ciągów i szeregów liczbowych, znajomość rachunku różniczkowego i całkowego. informatyka / wymagania wstępne: znajomość podstawowych pojęć, architektury systemów komputerowych oraz sieci komputerowych, umiejętność algorytmizacji zadań oraz podstawowa wiedza o programowaniu proceduralnym i obiektowym. układy cyfrowe i mikroprocesorowe / wymagania wstępne: znajomość kodu binarnego i arytmetyki zmienno- i stałopozycyjnej, znajomość architektury mikroprocesorów, mikrokontrolerów oraz klasyfikacji i organizacji pamięci. |
Programy: | semestr piąty / lotnictwo i kosmonautyka / awionika |
Autor: | Dr inż. Zdzisław ROCHALA, kpt. dr inż. Konrad WOJTOWICZ |
Bilans ECTS: | aktywność / obciążenie studenta w godz.: 1. Udział w wykładach / 28 2. Samodzielne studiowanie tematyki wykładów i przygotowanie do zaliczenia / 16 3. Udział w ćwiczeniach / 32 4. Samodzielne przygotowanie się do ćwiczeń / 64 5. Udział w konsultacjach / 8 6. Udział w zaliczeniu / 2 Sumaryczne obciążenie pracą studenta: 150 / 5 ECTS Zajęcia z udziałem nauczycieli: 1.+3.+5.+6.=70 / 2,5 ECTS Zajęcia o charakterze praktycznym: 0,0 ECTS |
Skrócony opis: |
Charakterystyka języków programowania. Składnia programu w języku asemblera i w języku C. Deklaracja zmiennych i stałych. Działania na operatorach arytmetycznych. Działania na operatorach logicznych. Wykorzystanie wskaźników i tablic zmiennych. Standardowe funkcje wejścia/wyjścia, formatowanie wejścia/wyjścia. Obsługa systemu przerwań. Obsługa układów wejścia/wyjścia i interfejsów szeregowych. Obsługa wbudowanych układów peryferyjnych i urządzeń zewnętrznych systemów mikroprocesorowych. Charakterystyka wizualnych języków wysokiego poziomu. Wprowadzenie w zintegrowane środowiska programistyczne. Podstawowe typy danych. Instrukcje i funkcje wewnętrzne języka. Definicja i wywołanie funkcji użytkownika. Metody zwracania wartości przez argument funkcji. Podstawowe cechy programowania obiektowego: zakres dostępności argumentów i metod, dziedziczenie, klasy. Budowanie interfejsu graficznego aplikacji. Wykorzystanie systemu przerwań w aplikacji. Obsługa zasobów sprzętowych komputera. |
Pełny opis: |
Wykład / metoda werbalno-wizualna z wykorzystaniem nowoczesnych technik multimedialnych (prezentacji z elementami animacji, schematami przykładowych rozwiązań) 1. Definicje podstawowych pojęć: moduł i system awioniczny, język programowania, program, programowanie, rodzaje oprogramowania / 2 2. Cykl tworzenia oprogramowania dla modułów awionicznych, środowiska programowe wspomagające programowanie i uruchomianie modułów mikroprocesorowych / 2 3. Struktura i składnia programu w języku wysokopoziomowym. Definicje stałych i zmiennych / 2 4. Podstawowe instrukcje i operatory: porównania, arytmetyczne, bitowe, unarne, selekcji i logiczne / 2 5. Tablice, wskaźniki i struktury w języku C / 2 6. Sposoby deklaracji i wywoływania funkcji, standardowe funkcje wejścia-wyjścia, zasady korzystania z bibliotek / 2 7. Obsługa programowa wbudowanych układów peryferyjnych mikrokontrolerów / 2 8. Przegląd języków programowania obiektowego, podstawowe informacje o platformach uruchomieniowych JAVA i .NET. Prezentacja języka C# / 2 9. Podstawowe zagadnienia programowania obiektowego. Pojęcia klasy i obiektu / 2 10. Funkcjonalne ujednolicenie kodu za pomocą dziedziczenia i polimorfizmu / 2 11. Rozbudowa operatorów o dodatkowe implementacje przez ich przeciążanie / 2 12. Zastosowanie innych typów danych na przykładzie struktury i interfejsu / 2 13. Reakcja na niespodziewane zdarzenia z wykorzystaniem obsługi wyjątków / 2 14. Tablice, kolekcje i mechanizmy indeksowania / 2 Ćwiczenia / metoda werbalno-praktyczna 1. Tworzenie projektu w środowisku uruchomieniowym, dołączanie plików źródłowych w języku C, kompilowanie projektu i symulacja pracy programu / 2 2. Deklaracja stałych i zmiennych. Stosowanie instrukcji warunkowych oraz operacji porównania i arytmetycznych / 2 3. Stosowanie instrukcji repetycyjnych oraz operatorów binarnych, logicznych i unarnych / 2 4. Przekształcenia typów zmiennych, deklarowanie tablic i wskaźników / 2 5. Budowanie funkcji. Przekazywanie wartości przez argument. Wykorzystanie standardowych funkcji obsługi wejść/wyjść / 2 6. Obsługa programowa sterownika UART / 2 7. Obsługa programowa sterownika UART z wykorzystaniem przerwań / 2 8. Wprowadzenie do środowiska Visual Studio, definiowanie typów, zmiennych i stałych, wyrażeń, instrukcji, operatorów / 2 9. Definiowanie klas, tworzenie obiektów, przekazywanie parametrów w konstruktorze / 2 10. Specjalizacja i uogólnianie, wykorzystanie dziedziczenia przy rozbudowie aplikacji / 2 11. Wykorzystanie polimorfizmu w celu ujednolicenia funkcjonalnie tożsamych elementów kodu / 2 12. Tworzenie własnych operatorów na przykładzie operatora równości i konwersji / 2 13. Definiowanie tablic, korzystanie z funkcji „foreach”, używanie interfejsu kolekcji / 2 14. Budowa interfejsu grupy klas i jego wykorzystanie przy tworzeniu i weryfikacji obiektów / 2 15. Zgłaszanie i przechwytywanie i obsługa wyjątków w aplikacji / 2 16. Definiowanie tablic, korzystanie z funkcji „foreach” w odniesieniu do kolekcji / 2 |
Literatura: |
podstawowa: 1. Kernighan B. W.: Język ANSII C, WNT, Warszawa 1988-2004, 2. Tondo C. L., Gimpel S. E.: Język ANSI C programowanie, ćwiczenia, Wydawnictwo HELION, Gliwice 2010 3. Majewski J., Kardach K.: Programowanie mikrokontrolerów z serii 8x51 w języku C, OWPW, Wrocław 2002, 4. Bogusz J.: Programowanie mikrokontrolerów 8051 w języku C w praktyce, WBTC, Warszawa 2005. 5. Kardaś M.: Mikrokontrolery AVR język C podstawy programowania, Wydawnictwo ATNEL, Szczecin 2011 6. Liberty J.: C#. Programowanie, Helion, Gliwice 2006, uzupełniająca: 1. Gałka P., Gałka P.: Podstawy programowania mikrokontrolera 8051, MIKOM, Warszawa 1995, 2. Pełka R.: Mikrokontrolery: architektura, programowanie, zastosowania, WKŁ, Warszawa1999, 3. Doliński J.: Mikrokontrolery AVR w praktyce, WBTC, Warszawa 2004, 4. Witkowski A.: Mikrokontrolery AVR programowanie w języku C przykłady zastosowań, Wydawnictwo Pracowni Komputerowej Jacka Skalmierskiego, Gliwice 2006 5. Wiązania M.: Programowanie mikrokontrolerów AVR w języku BASCOM, WBTC, Warszawa 2004, 6. http://msdn.com/vcsharp |
Efekty uczenia się: |
W1 / Ma wiedzę w zakresie algorytmizacji wybranych zagadnień matematycznych wykorzystywanych do opisu zagadnień lub zjawisk będących przedmiotem projektowanego oprogramowania / K_W01 W2 / Ma uporządkowaną wiedzę w zakresie programowania systemów mikroprocesorowych i metodyki tworzenia oprogramowania systemów komputerowych / K_W06 W3 / Ma wiedzę w zakresie programowania systemów awionicznych / W_22J_1 U1 / Potrafi pozyskiwać informacje z literatury, baz danych i innych źródeł, potrafi integrować uzyskane informacje, dokonywać ich interpretacji a także wyciągać wnioski w zakresie rozwiązywania problemów pojawiających się podczas budowy oprogramowania / K_U01 U2 / Potrafi opracować algorytm, posłużyć się językami programowania z rodziny C oraz odpowiednimi narzędziami informatycznymi do opracowania oprogramowania użytkowego / K_U11 U3 / Potrafi zaprojektować oprogramowanie prostego modułu awionicznego z uwzględnieniem zadanych kryteriów oraz przepisów bezpieczeństwa / K_U13 U4 / Potrafi wykorzystywać aparaturę kontrolno-pomiarową i systemy uruchomieniowe w zakresie diagnozowania pracy oprogramowania modułów awionicznych / U_22J_4 |
Metody i kryteria oceniania: |
Przedmiot zaliczany jest na podstawie: zaliczenia z oceną. Ćwiczenia zaliczane są na podstawie: zaliczenia z oceną. Zaliczenie na ocenę jest przeprowadzane w formie pisemnego testu sprawdzającego z zadaniami zamkniętymi. Warunkiem dopuszczenia do zaliczenia jest uzyskanie pozytywnej oceny z zaliczenia ćwiczeń oraz pozytywne oceny za wszystkie efekty kształcenia. Zaliczenie ćwiczeń na ocenę odbywa się na podstawie średniej z pozytywnych ocen uzyskanych z odpowiedzi na pytania kontrolne i z zadań związanych z projektowaniem aplikacji realizowanych w trakcie zajęć. Efekt W1 sprawdzany w trakcie ćwiczeń rachunkowych i na kolokwium pisemnym, przy okazji sprawdzania umiejętności U2 i U3. Ocena za osiągnięcie tego efektu jest przyznawana łącznie za osiągnięcie umiejętności U2 i U3. Sprawdzana jest wiedza w zakresie algorytmicznego opisu zjawisk na wstępnym etapie przygotowania projektu programistycznego. Efekty W2 i W3 sprawdzane są w trakcie ćwiczeń rachunkowych przy okazji sprawdzania umiejętności U2 i U3 oraz na kolokwium pisemnym. Sprawdzana jest wiedza w zakresie omawianych na wykładzie technik programistycznych pozwalająca na ich samodzielne zastosowanie do rozwiązania zadanego problemu. Efekt U1 sprawdzany jest w trakcie ćwiczeń rachunkowych i na kolokwium pisemnym. Ocena za osiągnięcie tego efektu jest przyznawana łącznie za osiągnięcie umiejętności U2 i U3. Sprawdzana jest umiejętność przygotowania do poszczególnych zajęć korzystając z dostępnej literatury i dokumentacji oraz umiejętność posiłkowania się dokumentacją języka i środowiska programistycznego przy rozwiązywaniu wybranych problemów programistycznych. Efekt U2 sprawdzany jest w trakcie ćwiczeń rachunkowych. Sprawdzana jest umiejętność samodzielnego projektowania i budowy, w języku obiektowym, aplikacji z interfejsem graficznym, realizujących przedstawione przez prowadzącego zadania. Efekty U3 i U4 sprawdzane są w trakcie ćwiczeń rachunkowych. Sprawdzana jest umiejętność samodzielnego projektowania i budowy aplikacji uwzględniającej specyfikę sprzętową modułu awionicznego i wykorzystującą wbudowane interfejsy i peryferia oraz umiejętność jej implementacji w docelowym środowisku. |
Właścicielem praw autorskich jest Wojskowa Akademia Techniczna.