This is a controller for a line of 2-20kw power generating windmills. Shown above is a 10kw installation. On the left is the windmill (outside), near the center is the controller, and to the right are the power invertors that convert the D.C. from the turbine/controller to A.C. to be fed into the power grid.
The "brains" of the system is the control board. This board manages all aspects of windmill operation. This includes conditioning and monitoring of anemometer (wind speed), dog-vane (direction), turbine home-position sensor, as well as turbine frequency and power output level. The controller operates a yaw motor in the turbine head to select an angle relative to the wind to maintain optimal power output levels while remaining within the safe operating specifications for the turbine.
In addition to these "high level" functions, the controller implements a synchronized 3-phase pulse width modulated variable "load dump" to prevent the mill from going overvoltage during gusts and other transient conditions, and a "servo" subsystem to keep the head aligned with the desired angle to the wind during highly variable wind conditions. The controller also detects many fault conditions, and shuts the windmill down in the event that a serious problem occurs.
The controller communicates with a central server via an internet connection allowing turbine operation to be monitored and controlled, power generation statistics to be collected and operational parameters to be updated remotely.
All operational parameters to the windmill can be inspected and modified over the internet, or via a local HMI (Human Machine Interface) touch panel.
My part in the project has been to participate in the specification and design of the controller, control board, and the implementation of all control board firmware/software, as well as the HMI application that runs in the touch-screen panel. I have also designed and built a number of test tools, including a functional small-scale model of a windmill and a PC based windmill simulator that allows me to run the controller through many different test scenarios without having to wait for "real wind conditions".