An Introduction to Real-Time Computing for Mechanical Engineers
MIT Press (2024) · ISBN 9780262548762
Contents
0 Getting started 11 §
- 0.1Real-time computing for a mechatronic system
- 0.2The development system
- 0.3The Eclipse workspace and
hello-world - 0.4Programming languages: their uses and differences — preview
- 0.5Getting started with C — preview
- 0.6The myRIO C library
- 0.7The T1 C library
- 0.8Summary
- Problems
- Lab exercise 1Programming the target computer
1 Real-time computing fundamentals and programming the high-level user interface 15 §
- 1.1Computer architectures — preview
- 1.2Computer realization and packaging — preview
- 1.3A programming model for the ARM processor
- 1.4Numeral systems — preview
- 1.5Memory and its contents — preview
- 1.6The Paper Computer — preview
- 1.7Real-time computing — preview
- 1.8Applications: feedback control and real-time measurement — preview
- 1.9The design problem, objectives, functions, and requirements — preview
- 1.10C characters, pointers, strings, floats, and functions — preview
- 1.11Introducing the UI functions of the T1 library
- 1.12Summary
- Problems
- Lab exercise 2Programming the high-level User Interface
2 Efficient design and programming the midlevel User Interface 9 §
- 2.1Efficiency for real-time computing — preview
- 2.2Algorithmic efficiency — preview
- 2.3Programmatic efficiency and efficient C programs — preview
- 2.4C operator precedence and associativity — preview
- 2.5The UI functions of the T1 library
- 2.6Summary
- Problems
- Lab exercise 3Programming the Midlevel User Interface
3 Digital communication, signals, and programming the low-level user interface 15 §
- 3.1Information theory and digital communication fundamentals — preview
- 3.2Digital signals — preview
- 3.3Digital inputs and outputs and pull resistors — preview
- 3.4Modes of digital communication — preview
- 3.5Digital communication standards and protocols — preview
- 3.6Universal asynchronous receivers-transmitters — preview
- 3.7I/O communication channels for the myRIO
- 3.8C structures — preview
- 3.9Programming the myRIO Universal Asynchronous Receiver/Transmitters (UARTs)
- 3.10Programming the myRIO DIO lines
- 3.11C multidimensional arrays — preview
- 3.12Summary
- Problems
- Lab exercise 4Programming the low-level user interface
4 Motor control, finite-state machines, and waiting for real-time computing 10 §
- 4.1Modeling the Electromechanical Subsystem — preview
- 4.2Open-loop control and the step response — preview
- 4.3Driving PMDC motors — preview
- 4.4Measuring motor position and velocity — preview
- 4.5Finite state machines — preview
- 4.6Waiting for real-time computing
- 4.7Summary
- Problems
- Lab exercise 5Finite state machine and open-loop control
5 Real-time scheduling with threads and interrupts, digital circuits, and mechanical switches 12 §
- 5.1Real-time and conventional operating systems and kernels — preview
- 5.2Real-time scheduling — preview
- 5.3Real-Time Linux and Its Application Programming Interface — preview
- 5.4Interrupts and their handling in real-time computing — preview
- 5.5Digital circuits and logic gates — preview
- 5.6Transistors in digital circuits — preview
- 5.7Mechanical switches — preview
- 5.8Debouncing mechanical switches — preview
- 5.9Summary
- Problems
- Lab exercise 6Introduction to interrupts
6 Digital realization of dynamic systems 10 §
- 6.1Analog signals — preview
- 6.2ADC and DAC hardware — preview
- 6.3Sampling — preview
- 6.4Discrete-Time Systems — preview
- 6.5Analog Input/Output of the myRIO
- 6.6Timer interrupts and their programming
- 6.7Summary
- Problems
- Lab exercise 7Realizing a discrete dynamic system
7 Closed-loop motor velocity control with a digital controller 10 §
- 7.1Continuous feedback control systems and their performance — preview
- 7.2The root locus and proportional control — preview
- 7.3PI controller design via the root locus — preview
- 7.4Digital control systems — preview
- 7.5Digital velocity control of DC motors — preview
- 7.6The target controller design
- 7.7Summary
- Problems
- Lab exercise 8Motor velocity control
8 PID Motor Position Control and Path Planning 10 §
- 8.1Derivative compensation — preview
- 8.2PID controller design — preview
- 8.3Motor position control with PID — preview
- 8.4Realizing a PID Controller: Causality and PIDF Controllers — preview
- 8.5Automatic Design of Target Motor Control
- 8.6Path planning — preview
- 8.7Summary
- Problems
- Lab exercise 9Motor position control
App. A Target and development systems 3 §
App. B Laboratory components 1 §
App. C Git version control 3 §
App. D Utility C Function Documentation 3 §
App. F Code repository index 1 §
App. I Acronyms and Initialisms 1 §
Hardware systems
- T1 target system — parts & suppliers
- D1 development system — parts & suppliers
A partial web edition — selected sections are free to read; the rest are previews. Get the full book from the publisher (above). · Index · Errata