使用紅外溫度傳感器制作非接觸式紅外測(cè)溫儀

在調(diào)試電子電路或測(cè)試新硬件設(shè)計(jì)時(shí)半等,我常會(huì)通過(guò)觸摸來(lái)檢查電路板上的器件是否異常發(fā)熱。如果某些東西搞砸了(通常是在第一次嘗試中),這些器件可能會(huì)達(dá)到80°C或更高溫度翘县,不僅會(huì)燒毀器件,還會(huì)燙傷手指谴分。我都不記得被燙傷了多少次了锈麸,現(xiàn)在我決定用Arduino和紅外線溫度傳感器來(lái)制作屬于自己的溫度槍。該溫度槍將使用一顆名為MLX90614的非接觸式溫度傳感器制作牺蹄;因此忘伞,它不僅可以用于測(cè)量元件溫度,還可以用于測(cè)量體溫、表面溫度氓奈、熱通風(fēng)等等翘魄。當(dāng)然,這些溫度測(cè)溫儀在市場(chǎng)上很容易從Fluke舀奶、Flir等著名制造商那里買到暑竟。但是它們并不輕巧放在口袋里,最重要的是育勺,自己制作屬于自己的小工具才會(huì)更加有趣但荤。讓我們開始......

所需的材料

● Arduino Pro Mini
● MLX90614紅外溫度傳感器
● OLED顯示屏 - SSD1306
● 激光二極管
● 9V電池
● 按鈕
● 電池夾
● 連接導(dǎo)線

MLX90614紅外測(cè)溫儀

在繼續(xù)學(xué)習(xí)本文之前,了解MLX90614傳感器的工作原理非常重要涧至。市場(chǎng)上有許多溫度傳感器腹躁,經(jīng)常使用的是DHT11傳感器和LM35,用于需要測(cè)量大氣濕度或溫度的許多應(yīng)用化借。

但是在這里潜慎,對(duì)于溫度槍,我們需要一種能夠感知特定物體(不是環(huán)境)溫度的傳感器蓖康,并且不會(huì)直接與物體接觸铐炫。為此,我們使用不太常接觸到的溫度傳感器蒜焊,利用激光或IR紅外來(lái)計(jì)算物體的溫度倒信。 MLX90614就是這樣一種傳感器,它使用紅外能量來(lái)檢測(cè)物體的溫度泳梆。

MLX90614傳感器由邁來(lái)芯微電子集成系統(tǒng)制造鳖悠,它內(nèi)置兩個(gè)器件,一個(gè)是紅外熱電堆檢測(cè)器(傳感單元)优妙,另一個(gè)是信號(hào)調(diào)理DSP器件(計(jì)算單元)乘综。它基于Stefan-Boltzmann定律,該定律指出所有物體都發(fā)射紅外能量套硼,并且該能量的強(qiáng)度將與該物體的溫度成正比卡辰。傳感器中的傳感單元測(cè)量目標(biāo)物體發(fā)射的IR能量,計(jì)算單元使用17位內(nèi)置ADC將其轉(zhuǎn)換為溫度值邪意,并通過(guò)I2C通信協(xié)議輸出數(shù)據(jù)九妈。傳感器測(cè)量物體溫度和環(huán)境溫度,以校準(zhǔn)物體溫度值雾鬼。 MLX90614傳感器的功能如下萌朱,有關(guān)詳細(xì)信息,請(qǐng)參閱MLX90614數(shù)據(jù)手冊(cè)策菜。

MLX90614主要特點(diǎn):

● 工作電壓:3.6V至5V
● 物體溫度范圍:-70°C至382.2°C
● 環(huán)境溫度范圍:-40°C至125°C
● 分辨率/準(zhǔn)確度:0.02°C

傳感器和物體之間的距離應(yīng)該是多少晶疼?

數(shù)據(jù)手冊(cè)沒(méi)有直接回答的一個(gè)問(wèn)題是傳感器和物體之間的測(cè)量距離酒贬。該距離的值由術(shù)語(yǔ)視場(chǎng)(FOV)給出,對(duì)于我們的傳感器冒晰,視場(chǎng)大約為80°同衣。

如上所示,您可以將感應(yīng)范圍視為傳感器點(diǎn)的圓錐形狀壶运。因此耐齐,當(dāng)我們遠(yuǎn)離測(cè)量對(duì)象時(shí),感應(yīng)區(qū)域增加了兩倍蒋情。每1cm的含義我們遠(yuǎn)離物體移動(dòng)感應(yīng)區(qū)域增長(zhǎng)2cm埠况。在我們的溫度槍中,我們?cè)趥鞲衅黜敳糠胖昧艘粋€(gè)激光二極管棵癣,以了解傳感器當(dāng)前指向的傳感區(qū)域辕翰。我發(fā)現(xiàn),如果槍指向離物體2厘米處狈谊,并且隨著我們離開時(shí)精度下降喜命,則值是可靠的。

電路原理圖

紅外測(cè)溫儀的電路圖非常簡(jiǎn)單河劝。完整的電路如下所示壁榕,它是使用Fritzing軟件創(chuàng)建的。

由于Fritzing軟件不支持MLX90614傳感器的部件赎瞎,我們使用了一個(gè)注釋來(lái)提及其連接如上所示牌里,我們也使用紅色LED代替激光二極管。整個(gè)電路由9V電池通過(guò)按鈕供電务甥。按下按鈕時(shí)牡辽,9V電池連接到Arduino的RAW引腳,然后使用板載穩(wěn)壓器將其調(diào)節(jié)至5V敞临。然后态辛,該5V用于為OLED模塊、傳感器和激光二極管供電挺尿。

設(shè)計(jì)溫度槍套管

為了使項(xiàng)目更有趣和實(shí)用奏黑,我們?yōu)闇囟葮屧O(shè)計(jì)3D模型并打印外殼。設(shè)計(jì)包括兩個(gè)部分票髓,一個(gè)是作為槍體的頂部攀涵,包括Arduino控制器铣耘、OLED洽沟、傳感器和激光二極管。另一個(gè)是底部蜗细,用作容納電池和按鈕的槍的手柄裆操。此處的“按鈕”用作觸發(fā)器怒详。該模型如下所示。

設(shè)計(jì)文件可從thingiverse下載踪区;您可以使用3D打印機(jī)下載設(shè)計(jì)并打印一個(gè)昆烁,也可以根據(jù)需要進(jìn)行修改。下載鏈接如下:Thermal Gun 3D模型缎岗。下載文件后静尼,您可以直接開始3D打印設(shè)計(jì),也可以根據(jù)您的要求進(jìn)行一些調(diào)整传泊。

3D打印外殼

然后將模型保存為STL文件鼠渺,并使用Cura將其轉(zhuǎn)換為G代碼。我用Tevo塔蘭圖拉打印機(jī)打印兩個(gè)零件眷细,然后將它們擰在一起拦盹。如果打印機(jī)支持,也可以將這兩個(gè)部件打印為單件溪椎。我的打印的切片設(shè)置如下所示

我花了將近6個(gè)小時(shí)來(lái)打印這兩個(gè)部件普舆,一旦打印出硬件連接,我就可以直接使用7針和4針Relimate連接器(RMC)將導(dǎo)線直接焊接到Arduino引腳校读,分別用于傳感器和OLED顯示器沼侣。然后使用螺釘將OLED安裝在印刷部件中,同時(shí)使用熱膠安裝傳感器和激光二極管地熄。然后华临,電源引腳(Raw、Gnd)通過(guò)導(dǎo)線部分向下連接端考,手柄部分由按鈕和電池組成雅潭。然后通過(guò)按鈕將這些電線連接到電池。組裝完成后却特,溫度槍如下所示

編程Arduino溫度槍

Arduino程序從MLX90614讀取溫度值并將其顯示在OLED顯示屏上扶供。幸運(yùn)的是,由于Adafruit為我們提供了一個(gè)可輕松讀取MLX90614數(shù)據(jù)的庫(kù)裂明,因此該程序非常簡(jiǎn)單椿浓。該庫(kù)可以從下面的鏈接下載:Arduino MLX90614庫(kù)。

該鏈接將庫(kù)作為ZIP文件夾下載闽晦。下載后扳碍,按照Sketch - > Include Library - > Add .ZIP Library命令將其添加到Arduino IDE,然后瀏覽該ZIP文件的位置仙蛉。添加庫(kù)后笋敞,我們可以開始編寫程序,可以在本頁(yè)底部找到該項(xiàng)目的完整程序荠瘪。這里將以小片段進(jìn)行解釋夯巷。

和往常一樣赛惩,我們?cè)诔绦蛑惺紫忍砑铀璧膸?kù)文件。這里的Wire庫(kù)(內(nèi)置)用于使用I2C協(xié)議進(jìn)行通信趁餐,SparkFun ML90614庫(kù)用于與傳感器通信喷兼。 SPI、GFX和SSD1306庫(kù)用于與4線SPI協(xié)議通信到OLED顯示模塊后雷。

#include <Wire.h>
#include <SparkFunMLX90614.h>
#include <SPI.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>

然后季惯,我們定義了OLED連接的引腳。由于該模塊與SPI配合使用臀突,因此我們使用了Arduino的SPI引腳星瘾。 OLED顯示屏也可以使用I2C協(xié)議,但我們不能在這里使用I2C惧辈,因?yàn)镮2C引腳已經(jīng)被溫度計(jì)傳感器占用琳状。

#define OLED_MOSI   9
#define OLED_CLK   10
#define OLED_DC    11
#define OLED_CS    12
#define OLED_RESET 13
Adafruit_SSD1306 display(OLED_MOSI, OLED_CLK, OLED_DC, OLED_RESET, OLED_CS);

void setup()函數(shù)內(nèi)部,我們初始化用于調(diào)試的串行監(jiān)視器盒齿,并使用之前創(chuàng)建的對(duì)象therm初始化IR溫度傳感器念逞。最常用的溫度單位是??攝氏度(攝氏度),因此我們?cè)O(shè)置了TEMP_C的單位边翁,如果你需要的值是華氏度(F)翎承,你也可以將它改為TEMP_F。最后符匾,我們初始化OLED顯示屏叨咖,然后清除其顯示。此外啊胶,OLED的屏幕旋轉(zhuǎn)180度甸各,以便于在外殼中安裝選項(xiàng)。

void setup()
{
  Serial.begin(9600);
  therm.begin();
  therm.setUnit(TEMP_C);

   display.begin(SSD1306_SWITCHCAPVCC);
   display.clearDisplay();
   display.setRotation(2);
}

loop()函數(shù)內(nèi)部焰坪,我們從傳感器讀取溫度值并將其轉(zhuǎn)換為String以顯示在OLED顯示屏中趣倾。我們還在串行監(jiān)視器上打印了該值以進(jìn)行調(diào)試。我們還增加了一個(gè)名為runner的變量某饰,每當(dāng)溫度傳感器的值成功更新時(shí)儒恋,它就會(huì)在屏幕上產(chǎn)生一個(gè)小動(dòng)畫,這將幫助我們知道讀數(shù)是否因某種原因而被卡住黔漂。

if (therm.read()) // On success, read() will return 1, on fail 0.
  {
    temperature = String(therm.object(), 2);
    Serial.print("Object: ");
    Serial.print(temperature); Serial.println("C");
    display.clearDisplay();
    runner++;
    delay(5);
  }

測(cè)試Arduino溫度槍

一旦Arduino代碼準(zhǔn)備就緒诫尽,我們可以使用外部TTL編程器或FTDI板將其上傳到我們的硬件,因?yàn)閜ro mini沒(méi)有板載編程器炬守。然后只需按下按鈕即可觸發(fā)溫度槍牧嫉,您將注意到激光束落在物體上,并且OLED屏幕上顯示的物體溫度如下圖所示劳较。在這里驹止,我用它來(lái)測(cè)量激光束指向的元件溫度。

我們還在烙鐵观蜗、3D打印機(jī)噴嘴臊恋、冰塊等上測(cè)試了溫度槍,并且觀察到令人滿意的結(jié)果墓捻。希望您喜歡這個(gè)項(xiàng)目抖仅,并在制作項(xiàng)目時(shí)學(xué)到了一些有用的東西,如果您有任何疑問(wèn)請(qǐng)?jiān)诒咎旅孢M(jìn)行回復(fù)砖第。

原文鏈接:https://www.yiboard.com/thread-1200-1-1.html

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末撤卢,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子梧兼,更是在濱河造成了極大的恐慌放吩,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,657評(píng)論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件羽杰,死亡現(xiàn)場(chǎng)離奇詭異渡紫,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)考赛,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,889評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門惕澎,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人颜骤,你說(shuō)我怎么就攤上這事唧喉。” “怎么了忍抽?”我有些...
    開封第一講書人閱讀 164,057評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵八孝,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我鸠项,道長(zhǎng)唆阿,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,509評(píng)論 1 293
  • 正文 為了忘掉前任锈锤,我火速辦了婚禮驯鳖,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘久免。我一直安慰自己浅辙,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,562評(píng)論 6 392
  • 文/花漫 我一把揭開白布阎姥。 她就那樣靜靜地躺著记舆,像睡著了一般。 火紅的嫁衣襯著肌膚如雪呼巴。 梳的紋絲不亂的頭發(fā)上泽腮,一...
    開封第一講書人閱讀 51,443評(píng)論 1 302
  • 那天御蒲,我揣著相機(jī)與錄音,去河邊找鬼诊赊。 笑死厚满,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的碧磅。 我是一名探鬼主播碘箍,決...
    沈念sama閱讀 40,251評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼鲸郊!你這毒婦竟也來(lái)了丰榴?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,129評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤秆撮,失蹤者是張志新(化名)和其女友劉穎四濒,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體职辨,經(jīng)...
    沈念sama閱讀 45,561評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡峻黍,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,779評(píng)論 3 335
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了拨匆。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片姆涩。...
    茶點(diǎn)故事閱讀 39,902評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖惭每,靈堂內(nèi)的尸體忽然破棺而出骨饿,到底是詐尸還是另有隱情,我是刑警寧澤台腥,帶...
    沈念sama閱讀 35,621評(píng)論 5 345
  • 正文 年R本政府宣布宏赘,位于F島的核電站,受9級(jí)特大地震影響黎侈,放射性物質(zhì)發(fā)生泄漏察署。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,220評(píng)論 3 328
  • 文/蒙蒙 一峻汉、第九天 我趴在偏房一處隱蔽的房頂上張望贴汪。 院中可真熱鬧,春花似錦休吠、人聲如沸扳埂。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,838評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)阳懂。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間岩调,已是汗流浹背巷燥。 一陣腳步聲響...
    開封第一講書人閱讀 32,971評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留号枕,地道東北人缰揪。 一個(gè)月前我還...
    沈念sama閱讀 48,025評(píng)論 2 370
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像堕澄,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子霉咨,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,843評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容