# Windmill Toy

### Tags

efficiency

Tagged by Jonathan Harrington 5 months ago

physics

Tagged by Jonathan Harrington 5 months ago

power generation

Tagged by Jonathan Harrington 5 months ago

renewable energy

Tagged by Jonathan Harrington 5 months ago

turbine

Tagged by Jonathan Harrington 5 months ago

wind

Tagged by Jonathan Harrington 5 months ago

Visible to everyone | Changeable by the author
Model was written in NetLogo 6.0.4 • Viewed 109 times • Downloaded 3 times • Run 0 times

## WHAT IS IT?

This is a toy model of a vertical wind turbine (wind mill) with variable pitch angle rotors.

## DEFINITIONS

Pitch = the angle perpindicular from the wind direction. Assume that the turbine can rotate to face the wind direction. The blades are turned backwards by this angle.

Power = Energy per time.

Coefficient of Efficiency = Power of the Turbine / Total Theoretical Power in the the Wind.

## HOW TO TRY IT OUT

Pick a blade shape and number that you like. Turn on the simulation by clicking the button run blade.

Look at the graphs. What do they show? Can you see any patterns (trends) in the data?

Experiment with the variables of speed, pitch angle, and blade length (sizeB). How does the power output respond?

## HOW IT WORKS

The model calculates the response of a theoretical turbine blade at a given angle to the wind.

The wind turbine takes energy from the wind and uses it to generate electrical power.

This model allows you to investigate the relationships between the efficiency of the turbine (cp) and the variables of windspeed and pitch angle.

The model does also allow you to change the number of blades and the size of the blades, but these values do not relate to actual data, yet. The trend should be similar to what is experienced in real life, but the values could be different.

The spin of the blades on the screen is simply scaled by normalized wind-speed and the efficiency. It does not represent the true speed.

## RELATED MODELS

Turtles Circling

## CREDITS AND REFERENCES

Material was taken from the public domain and simulink documentation: <https://www.mathworks.com/help/physmod/sps/powersys/ref/windturbine.html>

Siegfried Heier, “Grid Integration of Wind Energy Conversion Systems,” John Wiley & Sons Ltd, 1998, ISBN 0-471-97143-X

Click to Run Model

```globals [initCount initBlade radius baseRot step-size normSpeed lambda rhoAir areaAir powerT coefP matBlade powerW powerMW]

to turtleIt
clear-turtles
;; make turtles, equally spaced in heading
;; this code calculates the area of the blades. if can be easily modified to include any blade
if shape = "bladea" [set areaBlade 0.5 * 6 * 9 ]
if shape = "bladeb" [set areaBlade (0.5 * (6 * 9 + 3 * 9)) ] ; slightly off
if shape = "bladec" [set areaBlade 0.5 * 20 * 9 ]
;; move to edge of circle
;; turn to face clockwise
rt 90
set size sizeB
;set color white
;turn the turtle in the apparent heading for display only
facexy 0 0
]
end

to initialize
clear-ticks
clear-patches
;these two variables control the speed of turtle rotation. This is not physically related to true rotation rate.
set normSpeed (( windSpeed - 12 ) / 12 )
set step-size 10 * (1 + normSpeed)
;sets the length of the blade
;;background color
ask patches [set pcolor blue - 2]

turtleIt

set initCount count turtles
;defines swept area of turbine
set areaAir pi * sizeB ^ 2
;defines air density
set rhoAir 1.225 ; 0.001225
set baseRot 1.2
reset-ticks
end

to go-distance
power
arc-forward-by-angle step-size
facexy 0 0
]
refresh
tick
end

;;this command calculates the theoretical power of the turbine based on the wind speed and blade pitch:

to power

let cpnom 0.48
let genPower (1.5e6 / 0.9)
;lambda is the wing-tip speed/windspeed
let windNom windSpeed / 12
set lambda baseRot / windSpeed

let pitchR  pitch * 0.01745329252
;;these coefficient definitions come from the reference equations --> they dpend on windspeed, and angle of attack
;let lambdaI ((1 / ( lambda + (0.08 * pitch) )) - (0.035 / (pitch ^ 3 + 1))) ^ -1
let lambdaI (1 / ( lambda + (0.08 * pitchR) ) - (0.035 / (pitchR ^ 3 + 1)) )

;this inverses the inverse
;let lambdaInv (1 / lambda )
let c1 0.5176 let c2 116 let c3 0.4 let c4 5 let c5 21 let c6 0.0068
;set coefP (c1 * (c2 / lambdaI - ( c3 * pitch ) - c4) * e ^ ((-1 * c5 ) / lambdaI) + (c6 * lambda))
set coefP (c1 * (c2 / lambdaI - c3 * pitchR - c4) * e ^ ((-1 * c5 ) / lambdaI) + c6 * lambda)
;this scales the coefP in accordance to the efficiency changes that the turbine could possibly experience by changing the number of blades. These values max at 3 blades and drop off. they are not yet derived from actual data.
set coefP (coefP * ((-0.00003 * (numBlade ^ 5) + 0.0006 * (numBlade ^ 4) + 0.0012 * (numBlade ^ 3) - 0.0816 * (numBlade ^ 2) + 0.4151 * (numBlade) + 0.3455) / 0.93011))

;this corrects for the material, (non-physical toy scalar)
;ifelse material = "balsawood" [ set matBlade 0.8 ]
; [ ifelse material = "aluminium" [set matBlade 0.7] [set matBlade 1]]
;this is the power calculation, divide by 1e6 to make it in Megawatt
set powerW (rhoAir * areaAir * .5 * windSpeed ^ 3)
set powerT coefP * powerW
set powerMW (powerT / 1000000)

;set powerT matBlade * (rhoAir * areaAir) * (kP * coefPnom * (windNom ^ 3)) * (1 / baseRot)
end

to refresh ;for debugging, strange blade behavior
set areaAir pi * sizeB ^ 2
;sets the length of the blade
set normSpeed (( windSpeed - 12 ) / 12 )
set step-size 10 * (1 + normSpeed) * coefP
turtleIt
;go-distance
set initCount count turtles
]
end

;; This is the blade spin procedure.  It moves the blade turtles to the next point
;; on the circle, the given distance along the curve. Code copied from the model library

to arc-forward-by-angle [angle]
;; turn to face the next point we're going to
rt angle / 2
;; calculate the distance we'll have to move forward
;; in order to stay on the circle. Go there.
fd 2 * radius * sin (angle / 2)
;; turn to face tangent to the circle
rt angle / 2
end

;; these are some relevant equations for air foils that were not included, but could be useful for understanding
;air density 1.225 kg/m3
;Coef = 2 * pi * pitch ;;where pitch is the angle of attack in radians
;Lift = 1/2 x coefL x densityWING x windSpeed squared x wing area
;Drag = drag + dragInd = Cd = D / (A * .5 * r * V^2) + dragInd
;dragInd=Cdi = (Cl^2) / (pi * AR * e) ;; for delta wing, AR = wingspan/averageChord ;; use e = 0.7 for approximation
;Power in the Wind = 1/2 x densityAIR x swept area x windSpeed cubed
;Power in turbine = torque * omega = torque * tangentialSpeed / radius ~= (lift - drag)*velocity
;acceleration of turbine = (lift-drag)/(mass)
;probably needs to be fudged so that turbulent air slows down the foil --
;;;Re = (airDensity * V * L) / mu ; mu = 1.784 x 10e-5, in case of trying momentum simulation

;material from public domain and simulink documentation:
;
; Siegfried Heier, “Grid Integration of Wind Energy Conversion Systems,” John Wiley & Sons Ltd, 1998, ISBN 0-471-97143-X