This is an extremely simple implementation of a controller. It was implemented to help explain automobile computer control system concepts.

The following diagram depicts the system we are modelling. It is a simple problem. There is a water spigot at the top of a water bucket. Unfortunately, the water bucket has a leak at the bottom. In addition, we would like to keep the bucket half full. Therefore, the spigot has to allow more water to enter bucket then is leaking out until the desired level is reached.

The controller is modelled to have a drain rate of 1.0 and a fill rate of 1.0.

Again, this is an extremely simple/straight-forward controller implementation. Please do NOT consider this as an implementation example.

I chose a simple system to model, filling a bucket with a hole in its bottom.
Likewise, the implementation was created to look like how most auotomobile controllers function.
It allows me to discuss the concepts of how controllers model a real-life system, mainly the Long Term, Short Term, Open-Loop, and Closed-Loop concepts.

People who understand controllers will quickly see that a seemly simple system change, like increasing the drain rate from minimum to maximum, causes the system to get out of control. You can tell the system gets out of control since it either causes the bucket to empty or the bucket overflows. A real life controller would not allow this to happen.

But, I did not mind, since it allowed me to discuss how to interpret Long Term and Short Term behavior. These two attributes allow the observer to quickly determine a controllerâ€™s internal health.

This controller's implementation utilizes the following technologies:

- HTML
- BootStrap
- Javascript
- JQuery
- HighCharts