The 2nd version of Solar Tracker Project
For previous version, please also refer to SolarTracker
This repository includes:
- Controller of the Pan-Tilt-Zoom (PTZ)
- A tracker and visualizer based on pvlib that updates the sun angle in real time
- A user friendly GUI with various functions
To use this Solar Tracker, please download the codes in here and run the main.py
.
For further details, please refer to: Tutorial
The coordinate in this project is shown in the figure below. Which the Solar Zenith angle (Tile Angle for PTZ) is the angle between the local zenith axis and the line of sight, and the Solar Azimuth (Pan Angle for PTZ) is the angle between the north oriented axis and the plane along the horizon.
The PTZ follows the Pelco-D communication protocol, detail information can be found from the Pelco-D tutorial, Pelco-D protocol command list, Pelco Support Community.
This project provides a custom PTZ controller class that enables communication with a PTZ device using Python. The class handles the encoding and decoding of commands and responses to/from the PTZ unit. For more detailed information, please refer to here.
The Sun Angle Tracker & Visualizer is based on pvlib
. It can update the sun's zenith and azimuth angle (and some other information as well). Besides, this project also provide a visulizer tool for visulizing the angle, as well as showing the sun path in a period of time. For more information, please refer to here.
The custom GUI for this projectis a user friendly interface with various functions. This GUI is developed based on tkinter
. For more information, please refer to here.
If you have encounter or interested in contributing, please contat the author Valen Qiu and our labs (REALab, Romi-Lab), or submit a pull request on GitHub.