Vary the pitch value by the slope
For fixed-tilt rack sites that have undulating terrain, deciding on a suitable pitch value for the layout regions can be difficult. To reduce row-to-row shading, different pitch values will be needed for north-facing, south-facing and horizontal slopes.
Deciding on these pitch values can be difficult to do manually. And changing them in SolarFarmer can be a bit tedious using the Edit Lines tool (see Editing Row Spacings).
We have developed a script to help you do this automatically, depending on the North-South slope. For each layout region in the site the script uses the slope down the centre line of each layout region. So it doesn't take any west to east slope into account.
Note
This script only works for fixed-tilt rack site layouts. There may be a similar one in future for single-axis tracker sites.
How to use the script:
Download the following zip file: "Vary pitch with slope.zip".
Open the zip archive and save the enclosed "Vary pitch with slope.cs" script file to a folder.Import the script into your workbook:
- Open the Script Editor (see Script Editor)
- Click the 'Import' button in the ribbon (4th one from the left, green arrow)
- Select the downloaded script to import
Go to the 'Layout > Design layout' screen in SolarFarmer and select the site layout you wish to modify
Important
This step is important! Otherwise the layout regions won't update
Make sure that the rack system specification is set for each of the layout regions (as the script needs to know the size of each rack)
In the
Execute()
function in the 'Vary pitch with slope' script notice there are two values to consider:criticalSolarElevationInDegrees
value (initially set to 30 degrees)The script uses this value as a guide to help space the rows. The pitch will be calculated so that:
- when the sun is above this angle there should be very little or no row-to-row shading between racks
- when the sun is below this angle there will probably be some row-to-row shading between racks
Higher values will result in smaller pitch values (tighter rows). Leaving it at the default 30 degrees is a good starting point. You will have to experiment and see what works for your site, terrain and site capacity requirements.
maxPitchAllowed
value (initially set to 30)Sometimes, the pitch returned from the algorithm, depending on the slope and the critical solar elevation angle you use above, can produce very large pitches. The pitch values used will be capped at the
maxPitchAllowed
value to keep a more realistic site.
Run the script and observe the rows changing in each layout region.
Try a different value for
criticalSolarElevationInDegrees
and re-run the script and see how it affects the row spacing.
This is an example from a fictional layout near Auckland in New Zealand (in the southern hemisphere with a latitude of -37°)
Critical solar elevation |
Layout |
20° | ![]() (click to enlarge) |
30° | ![]() (click to enlarge) |
40° | ![]() (click to enlarge) |