Project 4: Height Control and Finite State Machines

All components of the project are due by Thursday, April 24th at 5:00pm.

Project Goals

At the end of this project, you should be able to:

Hardware Overview

The hardware is the same as the previous projects.

Project Overview

For this project, you will modify your microcontroller circuit to provide an external command interface. We will then use this command interface to trigger a sequence of height and orientation subgoals.

In brief, your code must:

Project Components

All components are required to receive full credit for the project.

Part 1: Microcontroller Circuit

Part 2: Height Maintenance

Given your implementation of project 3, implement a PID controller (proportional, integrator, derivative controller) that moves the craft to a desired height.

Note: you may need to use a different position gain depending on whether you have a positive or negative error (it is a lot easier to get the craft to descend than it is to get it to rise).

Part 3: Finite State Machine

Implement in software the following finite state machine:

Note: Develop this FSM independently of Part 2. You should be able to see the FSM state change as you alter C1 and C0.

Part 4: Finite State Machines for Control

Control the craft using this FSM:

The goals for each state are as follows:


What to Hand In

All components of the project are due by Wednesday, May 1st at 5:00pm.


Group grade distribution:

Grades for individuals will be based on the group grade, but weighted by the assessed contributions of the group members.

fagg [[at]]

Last modified: Wed Apr 9 22:10:25 2008