艾琳·伯恩,MathWorks
开始使用MATLAB®通过遍历一个示例。这个视频向你展示了基础知识,它让你了解在MATLAB中工作是什么样的。
视频介绍了如何计算太阳能电池板的能源产量。您将看到如何使用MATLAB桌面环境的各种元素(包括命令窗口、工作区浏览器和变量编辑器)导入数据、定义变量和执行计算。使用预先构建的图形可视化数据,然后定制这些可视化。您还将学习如何使用文档来查找内置函数、关于其语法的指导以及演示如何使用这些函数的代码示例。
最后,您将看到如何使用Live编辑器创建脚本,这些脚本将代码、输出和格式化的文本组合在一个可执行的笔记本中,可以与他人共享。
MATLAB®是一个用于各种技术计算的环境,比如数据分析、模拟和算法开发。这个视频将向你展示基本知识并让你了解在MATLAB中工作是什么样的。一定要坚持到最后,找出下一步要深入学习MATLAB的地方。所以,让我们开始吧。
这是马萨诸塞州纳蒂克MathWorks总部的大楼之一。看到那些漂亮的太阳能板了吗?让我们看看它们是否正常工作。有一个理论模型说生产应该是什么。让我们实现它,并将其与面板中记录的实际数据进行比较。
首先,我们需要一些常数:纳蒂克纬度和“太阳赤纬”,这只是一个角度,可以告诉我们某一天太阳的高度。这些是我们可以查找的价值。让我们使用6月21日的值,这是一年中最长的一天,这样我们就能得到最大的产量。我们的计算被输入到命令窗口并立即执行,我们可以在这里的工作区中看到我们刚刚创建的变量。
我们刚刚输入的角度为度,但如果我们打算做数学与他们,这可能是更好的将其转换为弧度。我们可以做标准的数学计算和结果分配给一个新的变量,甚至覆盖相同的变量。这里,我们使用PI的内置值做手工转换。但是,我们也可以使用内置的MATLAB功能的一处。
接下来,我们想要计算一整天的产量,所以我们需要一个时间范围。让我们用一个向量来表示一天的时间。我们将在日出后的5:30出发,每15分钟出发一次,直到日落前的8:00。
我们的公式使用当地太阳时。这和时钟上的时间不完全一样,因为时区和夏令时等惯例。我们取一个时间向量并进行移位。
现在我们可以计算太阳和面板之间的角度的影响了。这个方程很长,但是MATLAB代码看起来就像数学,所以很容易实现。同样,公式的这部分假设是角度而不是弧度,所以我们可以转换或者。我们可以在文档中找到更多关于三角函数的信息,其中我们发现有一个cosd函数它接受角度而不是弧度的输入。MATLAB有各种各样的功能,从三角函数到离群点检测到曲线拟合,从图论到信号滤波。所以最好检查一下文档。
现在我们知道了cosd,我们可以完成这个公式。让我们在行尾添加一个分号,这样就不会显示结果。如果我们想查看这些值,我们总是可以双击工作区中的sunangle变量:它会打开变量编辑器。但图形化地看可能更有用。我们可以选择变量t和sunangle,然后转到工具条中的plot选项卡。选择一个情节,它就在那里。现在我们也有了代码,所以下次我们知道如何通过编程来做这个。当太阳升起、落下和在当地中午达到顶峰时,由太阳角度引起的辐射强度应为0。当太阳直射在面板上时,我们应该得到100%的强度。但在马萨诸塞州,即使是在6月,太阳也不会直接从头顶上照下来,所以这块地看起来还不错。
好吧,这是占了太阳的角度。为了完成模型,我们需要计算大气的效果。在更多的空气光线必须要打通,少的能量,使得它的面板。让我们进入这个经验公式和....哎呀,出事了。幸运的是,这是很有帮助的错误消息,让我们知道,我们常犯的错误。MATLAB与向量和矩阵,包括做矩阵数学的作品自然。因此,在默认情况下,MATLAB认为这克拉是一个矩阵指数。但是,这不是我们的意思,我们要对数组的每个元素的指数,所以让我们使用向上回顾命令,然后做错误消息说什么,改变指数操作点克拉。
最后,我们只需要两个强度系数相乘在一起(我们已经从以前的错误教训,所以我们将使用点星时间),并乘上板的尺寸来获得总理论能源生产。检查情节看起来合理,所以它是:理论最大的生产,我们应该从我们的太阳能电池板获得。这是我们应该看到6月21日,如果它是一个完美的阳光灿烂的日子。接下来,我们需要得到实际的数据和比较两个。
但在这之前,它可能是一个好主意,保存我们的脚本已经完成。让我们回到通过命令历史和选择我们使用到这里,单击鼠标右键,并选择创建直播脚本的命令。这将打开包含所选命令的脚本编辑器。我们现在可以编辑命令,因为我们有一个活的脚本,我们可以让这个更可用通过拆分为多个部分,等添加文字,注释,标题,图片,公式。现在我们可以运行的代码,或整个脚本部分,输出显示在输出面板旁边的代码。我们可以使用交互式工具来清理我们的阴谋。并再次,我们得到的代码,所以我们可以把它添加到我们的脚本。
现在来看看数据。在当前的文件夹浏览器中,我们可以看到我们有一个包含2018年6月生产记录的电子表格。让我们导入该数据。导入工具查看文件的内容。它将第一列识别为时间戳,因此希望将其导入为适合日期和时间的数据类型。它还想把所有的数据以表格的形式导入到一起,这是一种为这种电子表格数据设计的数据类型在电子表格中,我们有一些对不同变量的观察。让我们以这种形式导入数据,不过用一个更简单的变量名。现在我们有了这个变量,生产,这是一个包含2880个三个变量的观察值的表格。这三个变量是时间和两个不同的太阳能电池板阵列产生的电量。
在导入了一些数据之后,一个好的第一步通常是绘制它以了解您正在处理的内容。我们用绘图函数。为了获得表中的单个变量,我们使用点符号——表名、点和变量名。并注意建议完成的有用的编程帮助。运行该脚本的这一部分以查看结果。因为时间戳是作为datetime变量导入的,所以我们的图的x轴被标记为日期,因此我们可以看到6月份的30个日峰值。我们可以使用交互工具来探索情节。我们可以看到有一些阴天,包括21日,很不幸。但在这里,你可以看到26号是完美的。
那么,我们如何在选定的某一天获得生产呢?好吧,我们有几种不同的方法可以做到这一点,但如果我们感兴趣的是切片数据的一天或一天的时间,它可能是有用的重新安排我们的数据从一个连续的时间序列到一个网格的时间和天。这种方法对于这种每15分钟统一记录一次的数据是有意义的,因此6月份的2880次测量对应于该月30天中的每一天的96次测量——每小时4次。那么,让我们用重塑函数把这个长向量变成一个96×30的矩阵。
现在,提取任何一天的数据都很容易。为了得到第21列的数据,我们进入矩阵取第21列的所有行。这些数据记录了一整天,所以我们需要做一个从午夜到午夜的时间矢量,现在我们可以画出它。让我们添加一个样式规范来显示实际的数据点。
现在我们可以把理论和数据都给绘图函数这样我们就能同时看到它们了。不出所料,21世纪的数据不是很好。但请记住,26号看起来不错,几天也不会改变太阳的角度,所以让我们看看那天。值得庆幸的是,很容易更改为不同的日期并重新运行该部分。
现在我们可以看到数据与模型一致,好了,最多的逆变器多少可以处理的阈值。对于我们的系统,该板可以产生高达270千瓦,但逆变器具有207千瓦的极限。我们可以回去使用最小功能,这限制行为添加到我们的模型。重新运行该脚本......而现在我们看到的数据与理论模型非常吻合。
我们已经做了一些伟大的工作。所以,我们应该分享它。如果我们只是想与某人分享我们的发现,我们可以将脚本保存为静态文档,比如PDF。但我们也可以将此脚本(以及数据文件)提供给任何使用MATLAB的人,他们可以自己运行该脚本并复制我们的结果。他们可以编辑脚本、研究数据、细化模型和执行新的分析。
而你也可以做到。这些文件供您下载。
而且,现在你已经在MATLAB的工作是什么感觉就像是,它的时间好好学习。有没有更好的方式来学习MATLAB,而不是与它的工作。所以,头部到MATLAB匝道,它会教你MATLAB的基本交互 - 你实际上是在我们的在线培训环境进入MATLAB命令,并得到即时反馈。它是免费的,并应采取只是几个小时。您可以留下任何时间,稍后再回来。欢迎到MATLAB!
您也可以从以下列表中选择网站:
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。