Microprocessor Control (FSI-RTE)

Academic year 2020/2021
Supervisor: Ing. Jan Knobloch, Ph.D.  
Supervising institute: ÚMTMB all courses guaranted by this institute
Teaching language: Czech
Aims of the course unit:
Acquisition of the theoretical and practical fundamentals of digital technology and microcomputers, introduction to management algorithms.
Learning outcomes and competences:
Practical application of digital technology and single chip microcontrollers in the control of mechatronic processes, programming in C language, independent work with laboratory development system. Orientation in modern microprocessor systems and basics discrete control methods.
Prerequisites:
The basics of programming.
Basic knowledge of English.
Course contents:
Students are acquainted with applications of microcomputer technology in process measurement and control. They will be familiar with the functioning of ARM processors and some peripherals, as well as some algorithms used especially for control of electric drives. Exercise uses relatively easy-to-use development kits and software tools with which listeners work independently and program in C language.
Teaching methods and criteria:
The subject is taught in the form of lectures, which have the character of interpretation of basic principles and theory of given discipline. The course is complemented by laboratory exercises that are focused on a specific application.
Assesment methods and criteria linked to learning outcomes:
During the semester, you can get up to 40 points for:
activity in exercises: max 10,
individual project 1: max 10,
independent project 2: max 20.
Credit conditions:
at least 1 point from each individual project.

The final exam is written, it may include software development for the microcontroller and can be awarded up to 60 points.
Controlled participation in lessons:
Mandatory participation in laboratory exercises (min. 80 %). Processing of tasks, possibility of replacement according to individual agreement with the teacher.
Type of course unit:
    Lecture  13 × 2 hrs. optionally                  
    Laboratory exercise  13 × 2 hrs. compulsory                  
Course curriculum:
    Lecture 1. Organizational information. Representation of numbers, numerical systems and transfers between them, logical functions, Boolean algebra. Presentation of TrueStudio and CubeMX tools, information resources.
2. Fundamentals of C language: operators, variables, functions, pointers, header files, linker.
3. GPIO port. Timers: basic schema, function principle; input: pulse length measurement, pulse count, PWM input; output: pulse generation, PWM for pulse converters control.
4. ARM processor architecture: memory, bus, registers.
5. ARM processor architecture: program run and data processing, subroutines, exceptions.
6. Introduction to signal processing, MAC instruction. Discrete Integrator and 1st order filter, differential equation, transcription on algorithm.
7. AD converter: principle, speed vs. noise, reference voltage, practical use.
8. DA converter and DMA. Processing signals from position and speed sensors using a timer.
9. State machine, basic principle. Fixed vs. floating point arithmetic, execution of calculations on ARMs with and without FPU.
10. Discrete PID controller in component and closed form; derivation, calculation, anti-windup, practical realization.
11. Generation of functional dependencies: Taylor series, table. Practical use.
12. Synchronization of ADC with PWM modulator, reasons and necessity. Traffic delay of the control loop, design of the regulator.
13. Fundamentals of el. drives microcomputer control.
    Laboratory exercise 1. Introduction, safety rules, introduction to development tools.
2. Configuration of GPIO, LED light on button press.
3. Timers I: Generate periodic interrupts, switch debouncing using the timer.
4. Timers II: PWM output mode, complementary output, deadtime.
5. Project 1.
6. Integrator and 1st order digital filter, rectangular and triangle signal generation using an integrator. Real-time debugging possibilities.
7. AD converter: setting, reading, synchronizing with PWM.
8. Speed and position measurement using timer.
9. Direct memory access (DMA): DA and AD converters, timers.
10. Discrete PID controller: Component and recurent form.
11. Practical realization of functions.
12. Project 2.
13. Evaluation of the project, credit.
Literature - fundamental:
1. PM0214 Programming manual: STM32 Cortex®-M4 MCUs and MPUs programming manual. STMicroelectronics [online]. Geneva, Switzerland: STMicroelectronics, 1994- [cit. 2019-02-25]. Dostupné z: https://www.st.com/content/ccc/resource/technical/document/programming_manual/6c/3a/cb/e7/e4/ea/44/9b/DM00046982.pdf/files/DM00046982.pdf/jcr:content/translations/en.DM00046982.pdf
2. RM0364 Reference manual: STM32F334xx advanced Arm®-based 32-bit MCUs. STMicroelectronics [online]. Geneva, Switzerland: STMicroelectronics, 1994- [cit. 2019-02-25]. Dostupné z: https://www.st.com/content/ccc/resource/technical/document/reference_manual/71/30/2e/f3/20/5b/46/c1/DM00093941.pdf/files/DM00093941.pdf/jcr:content/translations/en.DM00093941.pdf
3. Klíma B., Stupka R.: Mikroprocesorová technika v elektrických pohonech. Studijní opora, Elektronický text, VUT Brno - FEKT, 2004
4. HEROUT, Pavel. Učebnice jazyka C. 4., přeprac. vyd. České Budějovice: Kopp, 2004. ISBN 80-7232-220-6.
Literature - recommended:
1. BROWN, Geoffrey. Discovering the STM32 Microcontroller [online]. 1. Indiana University: Indiana University, 2016 [cit. 2019-03-07]. ISBN 0000. Dostupné z: https://www.cs.indiana.edu/~geobrown/book.pdf
2. MACHO, Tomáš. Mikroprocesory [online]. Brno, 2017 [cit. 2019-03-12]. Elektronický učební text. FEKT VUT v Brně.
The study programmes with the given course:
Programme Study form Branch Spec. Final classification   Course-unit credits     Obligation     Level     Year     Semester  
N-MET-P full-time study --- no specialisation -- Cr,Ex 5 Compulsory 2 1 S