pvlib-python
pvlib-python copied to clipboard
Add dual-axis tracker POA transposition function
Is your feature request related to a problem? Please describe. There is not an easy way to obtain POA transpositions for dual-axis tracker systems.
Describe the solution you'd like
Have a tracking.dualaxis() function.
Describe alternatives you've considered The dual axis should follow the sunposition angles, considering the mechanical tracker limits, and with an angle convention that worked in my case (may not be the best one).
I have found this example but I could not find it in the main code.
Code example with no backtracking but with mechanical limits added
# min_azimuth_limit: lower mechanical limit of azimuth surface angle
# max_azimuth_limit: upper mechanical limit of azimuth surface angle
# min_tilt_limit: lower mechanical limit of tilt surface angle
# max_tilt_limit: upper mechanical limit of tilt surface angle
adjusted_azimuth = solpos["azimuth"].clip(
lower=min_azimuth_limit + 180,
upper=max_azimuth_limit + 180,
)
adjusted_tilt = (90 - solpos["elevation"]).clip(
lower=min_tilt_limit, upper=max_tilt_limit
)
poa = pvlib.irradiance.get_total_irradiance(
surface_azimuth=adjusted_azimuth,
surface_tilt=adjusted_tilt,
...
)