我正在从事小业余爱好Raspberry Pi项目。我正在测量来自太阳能电池板的功率和能量。
我正在寻找更好的太阳位置可视化方法。
到目前为止,我最好的想法很容易实现,如下所示:
我发现了一些非常好的东西:
(图片来源:link)
但我觉得实施起来有点太难了。
我正在寻找这两者之间的某种妥协 - 易于用户阅读,而且实施起来并不那么难。
答案 0 :(得分:1)
有点缺乏要求,但我喜欢你的第一种方法。我假设要求包括基于终端的接口,所以我认为你应该使用ASCII来呈现它。 ; - )
*
\
\
50˚(\
---------+---------
E N W
说真的,也许是一张X / Y轴显示高度和方位角的图表,结合第一种方法?也许是一张与this page上的其中一张相似的图表,显示了今天太阳的进展?
P.S。我标记这个社区维基,因为我认为这可能是偏离主题的。 =(虽然你赢得了我的近距离投票!
答案 1 :(得分:0)
您是否尝试过将MatPlotLib与PySolar结合使用?!使用Pysolar,您可以轻松获得Sun的Azimuth和Zenith。使用Matplotlib,您可以绘制图像。
我就是这样做的。
latitude, longitude = 53.280223, 12.236105
tilt_pv = 36.16 #tilt of PV panel.
azimuth_pv = 180. #North-South alignment of your PV panel. In this case 180° depicts that panel is facing South
baseDateTime = datetime(2015, 6, 9, 12, 0, 0) #Timestamp for 9 June 2015 12 UTC
zenith = Pysolar.GetAltitude(latitude, longitude, baseDateTime)
azimuth = Pysolar.GetAzimuth(latitude, longitude, baseDateTime)
那会给你太阳位置..这应该进入你的MatPlotLib配置来绘制这个:
from mpl_toolkits.axes_grid.axislines import SubplotZero
import matplotlib.pyplot as plt
import numpy as np
if 1:
fig = plt.figure(1)
ax = SubplotZero(fig, 111)
fig.add_subplot(ax)
for direction in ["xzero", "yzero"]:
ax.axis[direction].set_axisline_style("-|>")
ax.axis[direction].set_visible(True)
for direction in ["left", "right", "bottom", "top"]:
ax.axis[direction].set_visible(False)
x = np.linspace(0., zenith, 1000) #straight line in 1000 steps
ax.plot(x, azimuth)
plt.show()
我们正在添加它。我编写了一个Python程序来预测GFS天气模型中的太阳能(我使用:全球辐射,风速和温度),这是免费提供的。你有兴趣运行并测试这个吗?!我想看看它是否有任何好处或者我需要在哪些方面表现出来。