Tutorials

  1. ALU design (lab)
  2. CPU design (lab)
  3. Assembly for MC68332 (lab)
  4. C programming:
    Servo control
    (lab)
  5. Sensors and LCD ouput (lab)
  6. DC motor control (lab)
  7. Position control of differential-drive (lab)
  8. PSD, electromagnet (lab)
  9. Camera interface (lab)
  10. Image processing (lab)
  11. Final project (lab)
  12. Review

Embedded Systems 620.220

Tutorial 4 - Embedded Control

Introduction

This tutorial will introduce two examples of embedded control systems.

Feedforward Control

The diagram below illustrates the simplest possible control scheme. Here a single input, x, is applied to the plant, which causes the output, y, to occur. The plant represents the process we are trying to control.

Feedforward Control Diagram

An example would be a lawn sprinkler, if the gardener desires a large radius of the lawn to be watered then the water valve is opened by a large amount. Conversely, if a small radius of the lawn is to be watered, the valve is only opened a small amount. Another highly simplified example would be an automobile. In this case the engine of the car represents the plant, the accelerator pedal is the input, and the speed we are travelling is the output.

However, in the automobile situation, we are usually constantly monitoring our current speed and compensating (either accelerating or decelerating) according to whether we are traveling too fast or too slow. The feedback we get through our senses helps us track a desired speed. This leads us to our next topic, feedback control.

Feedback Control

In the simplest case, feedback control is achieved by using a sensor to monitor the value of the output. The sensor value can then be subtracted from the input, or setpoint, to create the error signal. This error signal is then fed into the controller as the new input signal. This signal is manipulated by the controller, which then outputs a control signal to the plant.

Feedback Control Diagram

Feedback controllers can be divided into two basic types, analog and digital. Analog controllers are continous-time controllers which augment the transfer function of the plant, making the output stable about some operating point. This is usually accomplished by adding roots or poles to the transfer function equation. Digital controllers are discrete devices which can be used in place of their analog counterparts. Digital controllers usually combine the controller, analog-to-digital (A/D) converter and digital-to-analog (D/A) converter in one package, making a compact unit. Digital controllers also have the advantage of being very flexible devices that are not susceptible to drift. A purely analog controller, on the other hand, is constructed from resistors, capacitors and operational amplifiers (here is a good example for a temperature controller) and parameter (gain) modification is achieved through changing the position of potientiometers.

Using the Eyebot and the expansion box, you will write programs to control two simple processes. The first is a simple temperature regulator and the second is the position of a servo motor.

  Writing and compiling code

Questions? Email Josh Petitt

last updated January 28, 2003 - © University of Western Australia