Embedded Digital Control with Microcontrollers
eBook - ePub

Embedded Digital Control with Microcontrollers

Implementation with C and Python

Cem Unsalan, Duygun E. Barkana, H. Deniz Gurhan

Share book
  1. English
  2. ePUB (mobile friendly)
  3. Available on iOS & Android
eBook - ePub

Embedded Digital Control with Microcontrollers

Implementation with C and Python

Cem Unsalan, Duygun E. Barkana, H. Deniz Gurhan

Book details
Book preview
Table of contents
Citations

About This Book

EMBEDDED DIGITAL CONTROL WITH MICROCONTROLLERS

Explore a concise and practical introduction to implementation methods and the theory of digital control systems on microcontrollers

Embedded Digital Control with Microcontrollers delivers expert instruction in digital control system implementation techniques on the widely used ARM Cortex-M microcontroller. The accomplished authors present the included information in three phases. First, they describe how to implement prototype digital control systems via the Python programming language in order to help the reader better understand theoretical digital control concepts.

Second, the book offers readers direction on using the C programming language to implement digital control systems on actual microcontrollers. This will allow readers to solve real-life problems involving digital control, robotics, and mechatronics.

Finally, readers will learn how to merge the theoretical and practical issues discussed in the book by implementing digital control systems in real-life applications. Throughout the book, the application of digital control systems using the Python programming language ensures the reader can apply the theory contained within. Readers will also benefit from the inclusion of:

  • A thorough introduction to the hardware used in the book, including STM32 Nucleo Development Boards and motor drive expansion boards
  • An exploration of the software used in the book, including Python, MicroPython, and Mbed
  • Practical discussions of digital control basics, including discrete-time signals, discrete-time systems, linear and time-invariant systems, and constant coefficient difference equations
  • An examination of how to represent a continuous-time system in digital form, including analog-to-digital conversion and digital-to-analog conversion

Perfect for undergraduate students in electrical engineering, Embedded Digital Control with Microcontrollers will also earn a place in the libraries of professional engineers and hobbyists working on digital control and robotics systems seeking a one-stop reference for digital control systems on microcontrollers.

Frequently asked questions

How do I cancel my subscription?
Simply head over to the account section in settings and click on “Cancel Subscription” - it’s as simple as that. After you cancel, your membership will stay active for the remainder of the time you’ve paid for. Learn more here.
Can/how do I download books?
At the moment all of our mobile-responsive ePub books are available to download via the app. Most of our PDFs are also available to download and we're working on making the final remaining ones downloadable now. Learn more here.
What is the difference between the pricing plans?
Both plans give you full access to the library and all of Perlego’s features. The only differences are the price and subscription period: With the annual plan you’ll save around 30% compared to 12 months on the monthly plan.
What is Perlego?
We are an online textbook subscription service, where you can get access to an entire online library for less than the price of a single book per month. With over 1 million books across 1000+ topics, we’ve got you covered! Learn more here.
Do you support text-to-speech?
Look out for the read-aloud symbol on your next book to see if you can listen to it. The read-aloud tool reads text aloud for you, highlighting the text as it is being read. You can pause it, speed it up and slow it down. Learn more here.
Is Embedded Digital Control with Microcontrollers an online PDF/ePUB?
Yes, you can access Embedded Digital Control with Microcontrollers by Cem Unsalan, Duygun E. Barkana, H. Deniz Gurhan in PDF and/or ePUB format, as well as other popular books in Ciencias biológicas & Teoría de sistemas. We have over one million books available in our catalogue for you to explore.

Information

Year
2021
ISBN
9781119576556

1
Introduction

This book aims to introduce digital control systems via practical applications. Therefore, we will briefly introduce the system and control theory concepts in this chapter. Then, we will emphasize how this book differs from the ones in literature. Besides, we will summarize the concepts to be explored in the book. Hence, the reader will have necessary background for the following chapters.

1.1 What is a System?

A system can be defined as the combination of parts to carry out a specific task. Let us pick the Pololu Zumo robot (https://www.pololu.com/product/2510/) in Figure 1.1. This is a system composed of four main parts as chassis, motors, tracks with sprockets, and battery. When energy is fed to the motors, they move the chassis via rotating sprockets.
We can add two more modules to the Zumo robot as a control unit (such as microcontroller) and reflectance sensor. These modules can be used to add autonomy to the robot such that it can follow a line drawn on ground. To do so, we will need a “control” action. Let us introduce it next.

1.2 What is a Control System?

Control is the act of producing a desired output for a given input. The control system is used for this purpose. For our Zumo robot, our aim is following the line. Hence, the robot system should be guided by a control system to follow the line. To be more specific, the control system should get the reference input signal (as position of the line) and current position of the robot from the reflectance sensor; form an error signal by their difference; generate necessary control signals to the motors (on the chassis); and guide the robot (system) accordingly. Yet another example is controlling temperature inside the refrigerator. Here, refrigerator is the system. The desired temperature value is set by the user as the reference signal. The actual temperature value inside the refrigerator is measured by a sensor. The control system sets the internal temperature to the desired value by using a cooler. As can be seen in both examples, the control system is used to generate a desired output for a given input.
Photo depicts the PololuZumo robot.
Figure 1.1 PololuZumo robot.
(Source: Pololu Robotics & Electronics, pololu.com.)
The control system may be classified either as analog or digital depending on its construction. If the system is only formed by analog components, then it is analog. Early control systems were of this type. As the microcontroller and embedded systems are introduced, digital controllers became dominant. The main reason for this shift is that the control system developed in digital systems is a code snippet which can be modified easily. Therefore, this book aims to introduce digital control methods implemented on microcontrollers. We will form a general setup for this purpose as in Figure 1.2.
Schematic illustration of the general setup for a digital control system.
Figure 1.2 General setup for a digital control system.
There is a system to be controlled in Figure 1.2. The microcontroller is the medium digital control algorithms are implemented on. The generated control signal,
x left-bracket n right-bracket
, is fed to the system as input by an amplifier. Likewise, system output signal,
y left-bracket n right-bracket
, is fed to the microcontroller for further processing. We can also connect the microcontroller to PC to send or receive data. We will use the setup in Figure 1.2 for almost all control operations throughout the book.

1.3 About the Book

There are several good books on digital control. We can group them into two categories. The first category consists of books on theoretical concepts in discrete-time control systems (Xue et al. 2007; Dorf and Bishop 2010; Burns 2001; Chen 2006; Corke 2017; Franklin et al. 2006; Ghosh 2004; Gopal 2003; Golnaraghi and Kuo 2010; Mandal 2010; Moudgalya 2008; Goodwin et al. 2000; Tewari 2002; Ogata 1995; Phillips et al. 2015; Starr 2006; Wescott 2006). These are useful in understanding theoretical foundations of digital control. Some books in this category also provide MATLAB-based implementation (Xue et al. 2007; Dorf and Bishop 2010; Chen 2006; Corke 2017; Mandal 2010; Tewari 2002). The reader can consult these in case theory is not sufficient.
The second category consists of books on practical aspects and implementation details of digital control systems on microcontrollers. Unfortunately, there are few books in this category (Braunl 2006; Forrai 2013; Ibrahim 2006; Ledin 2004; Hristu-Varsakelis and Levine 2005). Besides, there is no book on digital control applications with the Python programming language. This book aims to fill these gaps. Hence, it handles theoretical digital control concepts by Python. Besides, we benefit from MATLAB in controller design and system identification steps. Then, digital control concepts are implemented and realized on a low-level microcontroller using MicroPython and C languages. Via this approach, we aim to bridge the gap between theory and practice.
The book is composed of 12 chapters. We devote Chapter 2 to introduce hardware to be used in the book. Details of software platforms to be use...

Table of contents