Arduino UNO热成像仪

前言




这是培训的第六个学期,在我们之前(因为有3个人参与了该项目,因此),一项艰巨的任务变成了-必须进行硬件课程项目。有很多不同的想法:汽车的自动驾驶仪,夜视仪等。但是选择落在热像仪上,因为事实证明它不是很简单,也不是很昂贵。还有谁没有梦见他的个人红外热像仪呢?在本文中,我们将讨论如何在家里组装具有良好特性的热像仪。

准备工作


首先,有必要确定我们需要哪些模块来创建廉价的热成像仪,但同时要具有可接受的特性。结果,在权衡利弊之后,决定基于由两个伺服器组成的伺服支架,红外传感器,用于更好地定位扫描区域的激光器以及用于控制设备信号的Arduino来构建热成像仪。确定必要的模块后,有必要在某个地方购买所有模块。事实证明,我们需要的红外传感器非常罕见,而不是最便宜的。但这一切都在著名的中国在线商店中找到,只需要等到包裹到达就可以了。

电路设计




为了实现我们的想法,我们决定在Arduino UNO停下来。我们决定选择它,因为我们已经有使用该平台的经验,并且需要快速组装该设备。在该图中,上拉电阻R1和R2使用4.7kΩ电阻。 MLX90614 bci被选作IR传感器。主要是由于它具有狭窄的视野,也由于其易于使用。而且,该传感器非常紧凑,轻便,这有助于伺服系统的工作,而伺服系统已经可以处理较小的卡纸。对于激光和伺服支架,选择了第一个与arduino兼容的模块。我对激光非常幸运(激光可能出了什么问题),并且如上所述,伺服驱动器的运行状况不是很好-它们对短时运动反应不佳,经常卡住。我不得不放松和润滑,这使情况有所改善。

成像器组件


电路的组装没有问题。在组装好电路并进行了可操作性测试之后,有必要隐藏所有不必要的东西,以使一切看起来都可以接受并且没有不必要的问题。有几种选择,但是由于有机玻璃是孤立的,因此选择是显而易见的。因此,我们决定以有机玻璃为例,将所有电线和电路板都放在其中,在顶部仅留一个带有传感器和激光的伺服支架。我们认为,事实证明它是美观而实用的。

组装过程是对有机玻璃进行抛光(需要很长时间的打磨,以免看到其后面的所有东西)。我们还决定将伺服支架固定在框架上。完成这些操作后,只需将整个框架粘贴上胶即可。



这是我们的设备在完全准备就绪的过程中的样子:



红外传感器连接到激光器,并安装在伺服支架上。尽管存在所有缺点,但该设计仍处于良好的状态。除伺服卡纸外,所有模块均执行分配给它们的功能。结果,我们得到了一个紧凑的设备:



使用热像仪


控制设备的最简单方法是从计算机进行控制。电源也由计算机提供。传感器将测量数据发送到com端口。因此,编写了一个程序来向设备发送命令并从传感器读取数据。
热像仪的算法非常简单:
  • 打开arduino com端口
  • 我们执行传感器的定位。要设置扫描区域,需要设置2个点:bot-图像的左下点,中线-图像的中心。
  • 我们开始扫描(使用“ 64x48像素”模式时,扫描大约需要2分钟)
  • 我们以阵列的形式收集从传感器接收的数据
  • 我们形成形象

程序界面




正如您在屏幕快照中看到的那样,程序界面以简约风格制作-只有您需要工作的一切。按钮的名称不言而喻。当您单击热图的特定像素时,将显示与之对应的温度。相对于当前扫描结果选择温度的颜色,即 即使这些值相差2-3度,最高温度也会以红色显示,最低温度会以蓝色显示。
如何检查热像仪的性能?当然,已经扫描了其中一位创建者!从上面的热图可以看到,最热的地方是前额-高达33.42º。传感器的“范围”存在某些问题-距离超过50厘米时,结果会有相当大的误差。但是在近距离时,温度指示器的确定非常准确。

在下面,您可以看到该设备操作的另一个示例:



如扫描所示,玻璃内部的水温为38º。



这是演示成像仪的视频:



对于那些感兴趣的人,提供了指向固件和应用程序源代码的链接:

固件
应用

总结


我们有一台可以扫描小型静态物体的设备。但是也有缺点-它完全不适合大型物体,并且如果物体移动,那么甚至没有丝毫机会获得正确的图像。但是,该设备的优势无疑是其便宜。所有的工业热成像仪都花费数千美元,有时要花费数万美元。对于普通人来说,工业热像仪是完全没有用的,要宠爱一个星期并将它撒在架子上。对于家庭实验,我们的设备将足够,便宜且简单。

Source: https://habr.com/ru/post/zh-CN394083/


All Articles