用实时编辑器创建交互式叙事
下面是如何在实时编辑器中创建交互式叙述的示例。交互式叙述将你用来解决问题的计算联系在一起。这个例子展示了如何:
显示输出与您的MATLAB代码。
使用格式化的文本来描述你的方法。
用方程来描述基本的数学。
用图片来说明重点。
添加背景材料的链接。
使用控件修改参数并重新运行分析。
为可视化绘制数据。
邀请同事扩展你的分析。
整体方法
将格式化文本作为互动叙述的一部分。使用粗体、斜体和下划线突出重要的单词。使用项目符号或数字格式化列表。
估计功率输出从一个典型的太阳能电池板安装在特定的日期,时间和地点,通过计算以下:
太阳时
太阳赤纬和太阳仰角
空气团和到达地球表面的太阳辐射
根据太阳能电池板的位置、倾斜程度和效率来计算其辐射
一天和一整年的发电量
使用这些计算结果绘制示例日和位置的太阳能和电池板辐射。然后,绘制预期面板发电量在一年的过程中。为了简化分析,使用为本例创建的两个MATLAB函数:solarCorrection
而且panelRadiation
.
太阳时
显示输出和产生输出的代码。要运行一段代码,请转到住编辑器选项卡,然后单击运行部分按钮。
太阳能电池板的发电取决于有多少太阳辐射到达电池板。这反过来取决于太阳在天空中移动时相对于面板的位置。例如,假设您想要计算太阳能电池板的功率输出6月1日,马萨诸塞州波士顿的中午12点。
λ=-71.06;%经度φ=42.36;%纬度UTCoff =“5”;% UTC偏移量January1 = datetime(2019,1,1);% 1月1日localTime = datetime(2019,6,1,12,0,0)6月1日中午
本地时间=datetime截止2019年6月01 12:00:00
要计算给定日期和时间的太阳位置,使用太阳时.正午12点是太阳在天空中最高的时候。若要计算太阳时,请对当地时间进行校正。这一修正包括两部分:
校正观测者的位置和局部子午线之间的差值的术语。
与地球轨道偏心率和轴倾角有关的轨道项。
计算太阳时使用solarCorrection
函数。
d = caldays(between(january1,localTime),“天”));%一年中的一天solarCorr = solarCorrection(d,lambda,str2double(UTCoff));%对当地时间的修正solarTime = localTime + minutes(太阳时间)
solarTime =datetime截止2019年6月01 12:18:15
太阳赤纬和仰角
包括描述基础数学的方程。使用LaTeX命令创建方程式。若要添加新方程,请转到插入选项卡,然后单击方程按钮。双击方程式以在方程式编辑器中编辑它。
太阳偏斜( )为太阳与地球赤道面之间的夹角。太阳赤纬是 在春分和秋分,并上升到最大值 夏至。计算一年中某一天的太阳赤纬(d)使用方程式
然后,使用赤纬( ),纬度( )和时角( )来计算太阳的高度( )。小时角是地球在当前太阳时间和太阳正午之间旋转的度数。
δ= asind(信德(23.45)*信德(360 * (d - 81) / 365));%偏差omega = 15*(solarTime。Hour + solarTime。分钟/60 - 12);%小时角= asind(sind()*sind() +...%海拔cosd(δ)* cosd(φ)* cosd(ω));disp ([太阳赤纬=num2str(δ)'太阳高度= 'num2str(α)])
太阳赤纬= 21.8155太阳仰角= 69.113
利用太阳的赤纬和当地纬度计算标准时间中的日出和日落时间。
午夜=移码(localTime,“开始”,“天”);sr = 12 - acosd(-tand(phi)*tand(delta))/15 - solarCorr/60;日出=一天的时间(午夜+小时(sr));ss = 12 + acosd(-tand(phi)*tand(delta))/15 - solarCorr/60;日落=一天的时间(午夜+小时(秒));日出。格式=“hh: mm: ss”;日落。格式=“hh: mm: ss”;disp (“Sunrise =”+字符串(日出)+“日落=”+字符串(日落)
日出= 04:16:06日落= 19:07:22
气团与太阳辐射
在你的故事中使用图片来说明要点。若要包含图像,请从其他源复制并粘贴图像或转到插入选项卡,然后单击图像按钮。
当太阳光穿过地球大气层时,部分太阳辐射被吸收了。气团是太阳高度为90时,光穿过大气层的路径(Y)相对于最短可能路径(X)的长度 ,如下图所示。它是太阳高度的函数( )。
气团越大,到达地面的辐射就越少。用公式计算气团
然后,利用经验方程计算到达地面的太阳辐射(千瓦/平方米)
airMass = 1/(cosd(90-alpha) + 0.50572*(6.07955+alpha)^-1.6354);solarRad = 1.353*0.7^(airMass^0.678);%千瓦/ m ^ 2disp (['气团= 'num2str(气团)“太阳辐射=”num2str (solarRad)“千瓦/ m ^ 2”])
气团= 1.0698太阳辐射= 0.93141 kW/m^2
固定板上的太阳辐射
使用超链接来引用其他来源的支持信息。金宝app要添加超链接,请转到插入选项卡,然后单击超链接按钮。
安装了太阳追踪器的电池板可以随着太阳移动,并在太阳划过天空时接收100%的太阳辐射。然而,大多数太阳能电池装置都有固定方位角和倾斜的电池板。因此,实际到达面板的辐射也取决于太阳能方位.太阳方位角( )是太阳在天空中位置的罗盘方向。在北半球的太阳午时,太阳方位角为 与南方向相对应。用公式计算太阳方位角
Gamma = acosd((sind(delta)*cosd(phi) - cosd(delta)*sind(phi)*cosd(omega))/cosd(alpha));如果(hour(solarTime) >= 12) && (omega >= 0) gamma = 360 - gamma;结束disp ([太阳方位角=num2str(γ)))
太阳方位角= 191.7888
在北半球,典型的太阳能电池板安装有面向南方的面板,面板方位角为( ) .在北纬地区,一个典型的倾斜角度( )是 .由太阳总辐射计算固定面板的面板辐射
.
Beta = 180;面板方位角Tau = 35;%面板倾斜panelRad = solarRad*max(0,(cosd(alpha)*sind(tau)*cosd(β -gamma) + sind(alpha)*cosd(tau)));disp (['面板辐射= 'num2str (panelRad)“千瓦/ m ^ 2”])
面板辐射= 0.89928 kW/m^2
面板辐射和发电为一天
使用交互控件修改参数。将图形和生成图形的代码一起显示出来。
板辐射
对于一年中的某一天,计算总太阳辐射和面板上的辐射。为简化分析,请使用panelRadiation
函数。尝试不同的日期,看看太阳能和电池板辐射是如何随着一年中的时间而变化的。
selectedMonth =6;selectedDay =1;selectedDate = datetime(2019,selectedMonth,selectedDay);[times,solarRad,panelRad] = panelRadiation(selectedDate,lambda,phi,UTCoff,tau,beta);情节(时间、solarRad时期,panelRad) selectedDate。格式='MMMM dd yyyy';标题(太阳能和电池板辐射+字符串(selectedDate)“一天中的一小时”);ylabel (“辐射,千瓦/ m ^ 2”)传说(“可用太阳辐射”,“电池板上的太阳辐射”,“位置”,“南”)
发电
到目前为止,计算假设到达面板的所有辐射都可用来发电。然而,太阳能电池板并不能100%地将可用的太阳辐射转化为电能。太阳能电池板的效率是转换后的可用辐射的比例。太阳能电池板的效率取决于电池的设计和材料。
一般来说,一个住宅装置包括20个 效率为25%的太阳能电池板。修改下面的参数,以了解效率和尺寸如何影响面板发电。
eff =0.25;%面板效率pSize =20.;%面板大小,单位为m^2辐射= sum(panelRad(1:end-1)+panelRad(2:end))/2;dayPower = eff*pSize*辐射;%面板电力输出(千瓦)selectedDate。格式=“dd-MMM-yyyy”;disp (预计日发电量+字符串(selectedDate' = '+ num2str(dayPower) +“kW-hrs”)
2019年6月1日至2019年6月1日预计日发电量= 33.4223千瓦时
全年发电
将鼠标悬停在图形上与之交互。在实时编辑器中与情节交互将生成代码,然后您可以将其添加到脚本中。
重复计算以估计每年每天的发电量。
yearDates = datetime(2019,1,1:365);创建一个一年中的天数向量dailyPower = 0 (1,365);为i = 1:36 65 [times,solarRad,panelRad] = panelRadiation(yearDates(i),lambda,phi,UTCoff,tau,beta);辐射= sum(panelRad(1:end-1)+panelRad(2:end))/2;dailyPower(i) = eff*pSize*辐射;结束情节(yearDates dailyPower)标题(“年发电量”)包含(“日期”);ylabel (“发电量,千瓦时”)
yearlyPower = sum(dailyPower);disp (['预计年发电量= 'num2str (yearlyPower)“kW-hrs”])
预计年输出功率= 9954.3272千瓦时
面板倾斜和纬度
使用热图确定面板倾斜如何影响发电。下面的热图显示了任何位置的最佳面板倾斜约为 小于纬度。
负载LatitudeVsTilt.mat热图(powerTbl“倾斜”,“纬度”,...“ColorVariable”,“权力”);包含(面板倾斜的) ylabel (“纬度”)标题(“标准化功率输出”)
扩展分析
与同事分享你的分析。邀请他们重现或扩展你的分析。使用实时编辑器协同工作。
在现实中,太阳能装置的真实功率输出受到当地天气条件的显著影响。这种分析的一个有趣的扩展是观察云层是如何影响结果的。在美国,你可以使用这些政府网站的数据。