Course: Application Design Principles for Electrical Engineering

» List of faculties » FEL » KEP
Course title Application Design Principles for Electrical Engineering
Course code KEP/PNAE
Organizational form of instruction Lecture + Tutorial
Level of course Bachelor
Year of study not specified
Semester Summer
Number of ECTS credits 4
Language of instruction Czech, English
Status of course Optional
Form of instruction Face-to-face
Work placements This is not an internship
Recommended optional programme components None
Lecturer(s)
  • Podestát Jaroslav, Ing.
  • Slobodník Karel, Ing. Ph.D.
  • Kropík Petr, Ing. Ph.D.
  • Šroubová Lenka, Ing. Ph.D.
  • Kohout Jan, Ing.
  • Klesa Radek, Ing.
Course content
Python language - syntax, basic data data structures, literals, integers, decimal numbers, complex numbers, characters, strings, n-tuples, lists, dictionaries, exception mechanism, flow control statements. Basics of object principles in Python, class, constructors, methods, packages, testing, file processing (JSON) Microcontroller architecture, basic types supported by MicroPython, programming procedures. Application architectures in the field of embedded development. Basics of application development for microcontrollers. Use of high-level languages for abstraction from a specific type of hardware. Python on the microcontroller platform. Differences from standard modules. Special MicroPython modules. MicroPython low-level modules - interrupts, watchdog timer, pin control, communication interface of microcontrollers - A/D converters, serial interface. MicroPython low-level modules - communication interface - real-time module, SPI, I2C. Working with flash memory, file system. Peripheral programming (Arduino shields, special modules). Bus communication programming - RS485, MODBUS, CANBUS. Network communication, low-level and high-level - ethernet, Wi-Fi, Bluetooth, sockets. IoT principle, basic protocols, use of microcontrollers. Neural network accelerators on the microcontroller platform. Machine learning and data recognition applications. The principle of edge computing. Analysis of sensors data. Fundamentals of Machine Learning (TensorFlow Lite for Microcontrollers, Keras)

Learning activities and teaching methods
Laboratory work, Lecture
  • Contact hours - 26 hours per semester
  • Practical training (number of hours) - 26 hours per semester
  • Individual project (40) - 20 hours per semester
  • Preparation for comprehensive test (10-40) - 30 hours per semester
  • Preparation for formative assessments (2-20) - 4 hours per semester
prerequisite
Knowledge
to have knowledges in mathematics for bachelor degree
to have basics of any programming language
Skills
to have skills in mathematics on bachelor degree
to control commonly available computers
Competences
N/A
N/A
N/A
learning outcomes
Knowledge
define the basic principles of complex embedded applications architecture and its documentation
explain how to use high level languages in embedded applications in electrical engineering
explain basic algorithms and its implementation in the electrical engineering
explain application architectures in the embedded software development
Skills
apply acquired knowledge to create programs with focus to complex application in branch of electrical engineering
design and create an complex application architecture, develop and debug a complex application based on verbal description
Competences
N/A
N/A
N/A
teaching methods
Knowledge
Lecture supplemented with a discussion
Practicum
Multimedia supported teaching
Skills
Lecture with visual aids
Practicum
Discussion
Competences
Lecture supplemented with a discussion
Self-study of literature
Project-based instruction
assessment methods
Knowledge
Project
Test
Skills
Project
Test
Skills demonstration during practicum
Competences
Self-evaluation
Individual presentation at a seminar
Recommended literature
  • Micropython.
  • Charles Bell. MicroPython for the Internet of Things. USA, 2017. ISBN 978-1484231227.
  • Chollet, François. Deep learning v jazyku Python : knihovny Keras, Tensorflow. První vydání. 2019. ISBN 978-80-247-3100-1.
  • Rumpe Bernhard. Agile Modeling with UML. 2017. ISBN 9783319588612.
  • Rumpe Bernhard. Software Engineering and Formal Methods. Springer Berlin Heidelberg, 2016. ISBN 9783662492239.


Study plans that include the course
Faculty Study plan (Version) Category of Branch/Specialization Recommended year of study Recommended semester