Lab 1: Introduction to the data acquisition system
Using Matlab, oscilloscopes, signal generators and the Data Acquisition Cards. |
ENGR 058. Control Theory
Introduction to the control of engineering systems. Analysis and design of linear control systems using root locus, frequency response, and state space techniques. Also provides an introduction to digital control techniques, including analysis of A/D and D/A converters, digital controllers, and numerical control algorithms. Includes laboratory. |

Lab 2: System Identification for a DC motor
In this lab the system parameters for a DC motor system were determined. The motor was attached to a tachometer, flywheel, and a load motor. Data was acquired for the unloaded spin up of the motor, as well as the response of the system upon the application of a load. The data values compared favorably to those determined in previous years. |

Lab 3: Introduction to the data acquisition system
In this laboratory experiment, a DC motor was controlled by proportional and integral controllers. After the motor was allowed to spin up to steady state, a load motor was enabled. The proportional controller was not able to recover from the perturbation, while the integral controller was able to. The integral controller also achieved a zero error signal, while the proportional controller could not because then the motor would have stopped rotating. The simulated responses of the system to the step inputs were calculated in MATLAB and compared to the experimental data. The experimental and theoretical results compared very favorably, confirming the accurate characterization of the motor system in Lab 2. |

Lab 4: System Identification of an Earth-bound Satellite
The satellite model was supplied with several inputs and the voltage response from two angled solar cells mounted on the satellite was recorded. The resulting data was fitted to different transfer functions in order to come up with an approximate model of the system without performing a complicated analysis of the physics. The transfer function obtained does not completely account for the behavior of the satellite for the various inputs, but is probably reasonable. |

Lab 5: Proportional and Integral Control of a DC Motor
A design for a controller was created and implemented to step the angle of the satellite position as quickly as possible. A Proportional plus Integrator plus Derivative (PID) controller was chosen for its transient and zero steady-state qualities. A theoretical MATLAB and Simulink model was used to choose the constant parameters to obtain the quickest settling time without excessive overshoot.
An extension was explored to look at dynamic PID controlling dependent on the satellite behavior during operation to find a faster response. This is similar to real life control technique employed by NASA. |

Lab 6: Position on a DC Servo Motor
In this laboratory experiment, a DC motor was controlled by proportional and integral controllers. After the motor was allowed to spin up to steady state, a load motor was enabled. The proportional controller was not able to recover from the perturbation, while the integral controller was able to. The integral controller also achieved a zero error signal, while the proportional controller could not because then the motor would have stopped rotating. The simulated responses of the system to the step inputs were calculated in MATLAB and compared to the experimental data. The experimental and theoretical results compared very favorably, confirming the accurate characterization of the motor system in Lab 2. |

Final Project: Hovering Above Failure
Our goal was to build a small hovercraft and have it respond favorably to motion and direction changes. By this we mean implementing a PID controller that ensures that the transient responses of the fans from input voltage changes are quick, stable, and smooth. A pulse width modulation circuit was designed and built on a breadboard to provide the power input to the four fans. Digital to analog conversion hardware was used to acquire and process the data and controllers were implemented in MATLAB using the NIDAQ interface. In the end, we were able to joystick operate the hovercraft with good responses in hovering height as well as directional changes. |