GithubHelp home page GithubHelp logo

solar-tk's Introduction

Solar-TK: A Data-driven Toolkit for Solar Performance Modeling and Forecasting

Solar-TK is a data-driven toolkit for solar performance modeling and forecasting that is simple, extensible,and publicly accessible. Solar-TK’s simple approach models and forecasts a site’s solar output given only its location and a small amount of historical generation data. Solar- TK’s extensible design includes a small collection of independent modules that connect together to implement basic modeling and forecasting, while also enabling users to implement new energy analytics.

A key goal of Solar-TK is to be simple to use by researchers that require realistic and accurate solar performance models and forecasts, but are not experts in these areas.

Documentation

Solar-TK Documentation

Why do we need a toolkit for solar performance modeling and forecasting?

We quote our Solar-TK paper explaining the need for a toolkit:

Much of the research work on solar performance modeling and forecasting is not accessible to researchers outside the area, either because it has not been implemented and released as open source, is too complex and time-consuming to re-implement, or requires access to proprietary data.

What does Solar-TK offer?

To address the problem, we present Solar-TK, an open data-driven toolkit for solar performance modeling and forecasting that is simple, extensible, and publicly accessible. A key goal of Solar-TK is to be simple to use by researchers that require realistic and accurate solar performance models and forecasts, but are not experts in these areas. Solar-TK includes:

  • a dataset of solar power generation and energy consumption across hudreds of homes
  • a module to estimate the physical specifications of a solar site, i.e. capacity, tilt, orientation
  • a module to estimate the maximum generation potential of a solar site
  • a module to estimate the weather-adjusted generation for a solar site
  • a module to adjust the estimated output for shading by nearby buildings and trees (will be added in future)
  • a module providing metrics used in solar modeling and forecasting (will be added in future)

Publications

Find our Solar-TK paper. Please consider citing our paper if you use Solar-TK in an academic work.

The BibTex citation is given below.

@inproceedings{bashir2019solar,
title={Solar-TK: A Data-driven Toolkit for Solar PV Performance Modeling and Forecasting},
author={Bashir, Noman and Chen, Dong and Irwin, David and Shenoy, Prashant},
booktitle={Proceedings of the 16th International Conference on Mobile Ad-hoc and Smart Systems (MASS’19)},
year={2019}
}

Solar-TK combines a number of insights from prior research listed below.

Staring at the Sun: A Physical Black-box Solar Performance Model
Dong Chen and David Irwin
BuildSys 2018
Link: http://www.ecs.umass.edu/~irwin/staring.pdf

SunDance: Black-box Behind-the-Meter Solar Disaggregation
Dong Chen and David Irwin
e-Energy 2017
Link: http://www.ecs.umass.edu/~irwin/e-energy17.pdf

Black-box Solar Performance Modeling: Comparing Physical, Machine Learning, and Hybrid Approaches
Dong Chen and David Irwin
Greenmetrics 2017
Link: http://www.ecs.umass.edu/~irwin/greenmetrics17.pdf

Please note that Solar-TK will evolve based on community feedback! Please use the online docs instead of the paper.

Solar-TK Help and Resources

  • The users are encouraged to use stackoverflow with #solar-tk to get community help.
  • You can also email to Noman Bashir at [email protected] for help. Please be patient as it may take a few hours to a day to respond.

solar-tk's People

Contributors

adamlechowicz avatar kaosisochukwu avatar noman-bashir avatar sustainablecomputinglab avatar wolefabikun avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

solar-tk's Issues

Problems with setup.py

Hi,

I have some problems to install SolarTK using pip+git. I think the major problem is that your setup.py tries to read README.rst instead of README.md. If you interested, I can open a PR with a fix if you prefer to fix that by yourself, you can take a look at my fork

This enables to install solarTK with pip install git+https://github.com/sustainablecomputinglab/solar-tk and call it more easily from own scripts.

Inconsistency of solar panel efficiency apply to K

print(lat, lon, k_/0.18, tilt_, ori_, c_, t_base)

In parameter estimation, 0.18 is used as the value of efficiency factor.

self.k = k * 0.20 # convert back to k at 20% efficiency

However, when the estimated k is applied to estimate maximum generation, the efficiency change to 0.2.

Is there any reason for choosing different efficiency value?

Southern hemisphere tilt calculation

Let me start by saying thank you for sharing!

I was experimenting a little with this project with the AusGrid solar dataset. I seem to run into an issue in the get_tilt function. It seems like southern hemisphere latitudes cause some issues (for example, -33.7085861, 151.1228434).. or at least the negative tilt fails validation in the maximum_generation module. Grateful for any suggestions or advice.

timezone aware of get_sun_position()

sun_position = get_sun_position(
start_time=self.start_time.replace(tzinfo=self.timezone).astimezone(pytz.timezone('UTC')),
end_time=self.end_time.replace(tzinfo=self.timezone).astimezone(pytz.timezone('UTC')),
granularity=self.granularity, latitude=self.lat_, longitude=self.lon_)

Since you change the start time and end time to UTC timezone before running get_sun_position(). Do you have to change them back after getting the sun position? It seems like in the implementation of get_sun_position(), you do not change the time back to current time zone.

API key

Dear Noman Bashir,

first of all I'd like to congratulate you for the work done with SOLAR-TK.

I would like to kindly as a question about the API keys that the code seems to request.

When I run the code I get the following error message raises: ValueError ("Invalid API key provided."). This is becausa I did not insert an API key and I have to insert it in the parameters.py module. The question is: do I have to insert both the google API key and DarkSky API Key ? If I am right, DarkSky app doesn't exist anymore: does the code run despite this issue ?

Thank you for your attention !

Best regards.

Paolo Vitulli

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.