Application development in Linux - course description
General information
Course name
Application development in Linux
Course ID
06.0-WE-AiRP-OUwSL
Faculty
Faculty of Engineering and Technical Sciences
Field of study
automatic control and robotics
Education profile
academic
Level of studies
First-cycle studies leading to Engineer's degree
Beginning semester
winter term 2021/2022
Course information
Semester
3
ECTS credits to win
4
Course type
obligatory
Teaching language
polish
Author of syllabus
prof. dr hab. inż. Krzysztof Patan
Classes forms
The class form
Hours per semester (full-time)
Hours per week (full-time)
Hours per semester (part-time)
Hours per week (part-time)
Form of assignment
Lecture
15
1
9
0,6
Credit with grade
Laboratory
30
2
18
1,2
Credit with grade
Aim of the course
zapoznanie studentów z budową i zaawansowaną obsługą systemu operacyjnego Linux oraz użytecznymi narzędziami programistycznymi,
zapoznanie studentów z obsługą systemów wbudowanych pracujących pod kontrolą systemu operacyjnego Linux (układy RasperyPI, systemy robotyczne).
Prerequisites
Podstawy programowania., Podstawy techniki cyfrowej i mikroprocesorowej.
Scope
Budowa systemu komputerowego: Pamięć operacyjna, procesor, urządzenia wejścia wyjścia. Zadania oraz podział systemów operacyjnych. Systemy operacyjne Linux. Struktura systemu. Jądro oraz powłoka. Dystrybucja systemu.
Praca w trybie terminalowym. Podłączenie zdalne do systemu Linux z poziomu systemu z rodziny Windows i UNIX/Linux. Podstawowe polecenia powłoki. Zaawansowana obsługa systemu.
Skrypty powłoki. Elementy języka programowania powłoki bash. Funkcje oraz parametry wejściowe do skryptu. Uruchamianie skryptów.
Oprogramowanie użytkowe w systemie Linux. Kompilatory gcc oraz g++. Kompilowanie oraz profilowanie programu. Program make oraz struktura pliku makefile. Polecenie configure.
Podstawy języka skryptowego Python. Struktura programu. Typy danych oraz operatory. Biblioteki użyteczne w automatyce i robotyce: scikit-learn, PySerial, Mathplotlib, SciPy. Obsługa i konfiguracja systemów wbudowanych RasberryPi. Sterowanie GPIO. Biblioteka PIGIO i polecenie pigs. Biblioteka writingPI i narzędzie gpio
Nawiązywanie komunikacji i zdalne sterowanie systemami robotycznymi: Kheperra. Konfiguracja komunikacji bezprzewodowej. Wykonywanie podstawowych poleceń sterujących i odbierających dane z czujników.
Teaching methods
wykład: wykład konwencjonalny,
laboratorium: ćwiczenia laboratoryjne, projekty realizowane z zespołach dwuosobowych.
Learning outcomes and methods of theirs verification
Outcome description
Outcome symbols
Methods of verification
The class form
Assignment conditions
wykład: test z progami punktowymi.
laboratorium: warunkiem zaliczenia jest uzyskanie pozytywnych ocen z minimum dwóch sprawdzianów/testów przeprowadzonych z wybranego materiału oraz zaliczenie sprawozdań z zajęć laboratoryjnych wskazanych przez prowadzącego.