A Flask-based web app that uses a trained artificial neural network (ANN) to predict the power output of a photovoltaic (PV) system using temperature and irradiance as inputs.
- Web-based interface (HTML + CSS)
- Toggle dark mode 🌙
- Trained using PyTorch
- Easily deployable to Render
- Mobile responsive
- Python (Flask, PyTorch, NumPy, scikit-learn)
- HTML/CSS (Quicksand font, dark/light mode)
- Deployable via Render
## 📁 Folder Structure
<pre> pv_predictor/
├── app.py
├── model.py
├── train.py
├── pv_model.pth
├── scaler.pkl
├── requirements.txt
├── Procfile
├── static/
│ ├── style.css
│ ├── logo.png
│ └── favicon.ico
└── templates/
└── index.html
- The model takes two inputs: temperature (°C) and irradiance (W/m²)
- Inputs are scaled using
StandardScaler - A trained PyTorch ANN (
PVNet) predicts power output in kW
# Clone this repo
git clone https://github.com/yourusername/pv-predictor.git
cd pv-predictor
# Create virtual environment (optional)
python -m venv venv
source venv/bin/activate # or venv\\Scripts\\activate on Windows
or Using conda:
conda create -n myenv
conda activate myenv
# Install dependencies
pip install -r requirements.txt
# Run the app
python app.py