This Python script simulates the power generation of a satellite in Low Earth Orbit (LEO) by calculating the solar power received by different body mounted satellite panels over a 24-hour period (not suited for satellites with deployable solar panels). It takes into account solar incident angle, orbital mechanics, eclipse effects, and albedo reflection from the Earth.
- Simulates a Sun-synchronous orbit (inclination and altitude are user defined variables)
- Computes dynamic eclipse duration based on orbital parameters
- Models solar panel power generation based on sun incident angles
- Accounts for Earth albedo effect (Fixed value, User defined variable) in power calculations
- Plots total power generation over time
Ensure you have Python installed along with the required libraries:
pip install numpy matplotlibRun the script using:
python satellite_power_simulation.pyIt will output:
- Power generated per minute over a full day
- Average power generation
- Graph of power variation over time
You can customize key parameters such as:
- Orbit altitude (
altitude = 800) - Inclination (
inclination = np.radians(98)) - Solar panel configuration (
num_cells,cell_config,cell_strings) - Solar electrical characteristics (
vmpp,impp) - Solar constant and albedo effect
Simply modify the values in the script before running.
- Numerical power generation data for each minute
- Average power generated
- Graph of power variation over time
This project is open-source under the MIT License.