Madhu戈文达拉扬,MathWorks
这个实践教程展示了如何使用MATLAB®和Arduino®从TMP36传感器获取温度数据。Arduino的MATLAB支持包可以获取和分析传感器数据。金宝app
在这个演示中,我们将看到如何使用Arduino板和MATLAB测量温度。同样的技术也可以用于测量其他模拟信号。为此,我已经预先安装了Arduino的MATLAB和MATLAB支持包金宝app。如果您没有安装支持包,那么您可以到Add-on金宝apps选项卡并点击获取硬件支持包来下载并安装支持包。
我使用Arduino Due, TMP 36温度传感器,和USB-Micro B电缆为这个演示。使用MATLAB测量温度,连接你的TMP 36传感器。引脚1到5伏对Due。引脚3到GND。还有Due上从2号到A7号的密码。记住,USB线必须连接到Due上的编程端口。
为了开始使用Arduino的MATLAB支持包,让我们金宝app使用多种方法中的一种去文档主页。在MATLAB命令窗口中键入doc,然后在中心浏览器中刚刚打开的页面上向下滚动。在右下角,可以找到所有已安装的支持包的列表和它们的主页链接。金宝app
我将点击入门,找出如何从MATLAB连接到Arduino板。我将复制这里给出的代码片段并将其粘贴到MATLAB命令窗口以建立与连接到这台PC上的第一个可用Arduino板的连接。
我们的下一个任务是使用MATLAB对温度传感器的模拟信号进行测量。搜索Arduino模拟。MATLAB提供的第一个建议是引线电压函数,它可以从Arduino板上读取模拟电压。让我们进入MATLAB命令窗口,看看是否可以使用这个函数来测量模拟信号。
我重复了几次功能,以确保我正在读取来自传感器的稳定电压。现在,下一个任务是把这个电压值转换成温度。为此,我将解释什么时候可以在MATLAB中使用函数。函数必须用于执行重复的任务,例如针对不同的输入值执行此任务。我这里有一个函数叫voltToFa,它将温度传感器的电压值转换为华氏温度。
该函数的第一行使用传感器手册中给出的公式将电压转换为摄氏度。第二行使用标准公式将摄氏温度值转换为华氏温度值。另一方面,脚本可以用来执行重复的任务。但是,它不能接受输入值。
我这里有一个脚本叫做temperature -from-sensor,它使用我们刚学过的读取电压函数和voltafa函数来测量传感器的电压并将其转换为温度。为了显示温度传感器的有效性,我连接了一个网络摄像头来监控我办公室的恒温器。我从网络摄像头获得了一串图像,我把它和温度值一起显示出来了。为此,我使用了MATLAB支持包中的预览功能。金宝app
有了它,我们已经看到了如何使用MATLAB和Arduino板测量温度或任何模拟信号。