Embedded Control Systems in C/C++: An Introduction for Software Developers Using MATLAB

A control system (also called a controller) manages a larger system's operation so that the overall response approximates commanded behavior. A common example of a control system is the cruise control in an automobile: The cruise control manipulates the throttle setting so that the vehicle speed tracks the commanded speed set by the driver.
In years past, mechanical or electrical hardware components performed most control functions in technological systems. When hardware solutions were insufficient, continuous human participation in the control loop was necessary.
In modern system designs, embedded processors have taken over many control functions. A well-designed embedded controller can provide excellent system performance under widely varying operating conditions. To ensure a consistently high level of performance and robustness, an embedded control system must be carefully designed and thoroughly tested.
This book presents a number of control system design techniques in a step-by-step manner and identifies situations in which the application of each is appropriate. It also covers the process of implementing a control system design in C or C++ in a resource-limited embedded system. Some useful approaches for thoroughly testing control system designs are also described.
There is no assumption of prior experience with control system engineering. The use of mathematics will be minimized and explanations of mathematically complex issues will appear in Advanced Concept sections. Study of those sections is recommended but is not required for understanding the remainder of the book. The focus is on presenting control system design and testing procedures in a...