溫度傳感器是非常重要的設備,因為它們可以幫助我們測量,監(jiān)控和維持房間,儀器或設備的溫度。
以前我們幾乎使用了非常流行的LM35溫度傳感器每個溫度相關的項目。我們現(xiàn)在將嘗試使用名為DS18B20的不同溫度傳感器來測量使用Arduino的溫度。
相關項目:基于Arduino的數(shù)字溫度計
DS18B20溫度傳感器概述
DS18B20是1-Wire(單線)溫度傳感器由Maxim Integrated生產(chǎn)。它提供攝氏度的溫度測量,分辨率為9位至12位。
DS18B20溫度通過1-Wire接口或1-Wire總線交換信息,由Dallas Semiconductor開發(fā)的系統(tǒng)。在1-Wire接口中,通信只需要一根電線(從技術上講,您需要兩根電線:一根數(shù)據(jù)線和一根GND線)。
DS18B20溫度傳感器的另一個重要特性是每個DS18B20傳感器都帶有一個特定于該傳感器的64位串行代碼。
使用此功能獨特的代碼,您可以在同一個1-Wire總線上連接多個DS18B20傳感器,并使用單個控制器訪問信息。這種類型的設置在多個DS18B20傳感器分布在很大區(qū)域的情況下非常有用。
以下是DS18B20數(shù)字溫度計的一些主要功能。
使用只需一條線路進行數(shù)據(jù)傳輸?shù)?-Wire接口。
9位到12位的可編程分辨率-bit。
它可以測量-55 0 C到+125 0 C范圍內的溫度。/span》
提供TO-92,8引腳SO和8引腳μSOP等不同封裝。
DS18B20的引腳圖
下圖顯示了DS18B20數(shù)字溫度傳感器的TO-92封裝的引腳圖。
DS18B20溫度傳感器的引腳說明
As您可以在上面的引腳圖中看到,DS18B20傳感器由三個引腳組成,即:V DD ,DQ和GND。
V DD :這是電源引腳。當使用寄生供電模式時,它必須接地(稍后會詳細介紹)。
DQ:這是數(shù)據(jù)輸入/輸出引腳。它是一個開漏引腳,必須拉高。它以寄生供電模式提供電源。
GND:這是接地引腳。
DS18B20的框圖
下圖顯示了DS18B20溫度傳感器的功能框圖。它由一個電源電路,64位ROM,內存控制器,主溫度傳感器和一個Scratchpad區(qū)域組成,該區(qū)域有一個溫度寄存器和一些其他寄存器,用于存儲配置和報警高低觸發(fā)。
64位ROM存儲設備的唯一串行代碼。溫度傳感器的數(shù)字輸出存儲在Scratchpad的2字節(jié)溫度寄存器中。暫存器還包括1-Byte for Alarm HIGH Trigger寄存器,Alarm LOW Trigger寄存器和Configuration寄存器。
使用配置寄存器,您可以設置數(shù)字的分辨率輸出從9位到12位之間的任何位置。為了保留配置中存儲的數(shù)據(jù),報警高電平和報警低電平寄存器,即使器件斷電,這三個寄存器也實現(xiàn)為EEPROM。
為電源供電DS18B20傳感器
有兩種方法可以為DS18B20傳感器供電。一種方法是將外部電源連接到傳感器的V DD 引腳的傳統(tǒng)方式。這個操作沒有什么特別之處。
啟動DS18B20傳感器的第二種方法是讓事情變得有趣。為傳感器供電的第二種方式稱為寄生電源模式,無需外部電源。
在寄生供電模式下,DS18B20在拉高時從DQ引腳獲取電源。當1-Wire總線為高電平時,它為DS18B20供電。當總線為低電平時,寄生電源電容(C PP )中存儲的電荷將為傳感器供電。在寄生供電模式下,V DD 引腳連接到GND。
DS18B20與Arduino接口
在本項目中,我們將了解如何將DS18B20溫度傳感器與Arduino連接。由于傳感器基于1-Wire通信,因此Arduino和DS18B20之間只需要一根線。
Arduino DS18B20接口電路圖
下圖顯示了Arduino DS18B20接口的電路圖。
所需組件
Arduino UNO
DS18B20數(shù)字溫度傳感器
16×2 LCD顯示器
10KΩ電位器
4.7KΩ電阻器(1/4瓦)
330Ω電阻(1/4瓦)
5mm LED
連接電線
面包板
電源
Arduino DS18B20接口電路的設計非常簡單。您只需將傳感器的V DD 和GND連接到+ 5V和GND,并將傳感器的DQ引腳連接到任何一個數(shù)字I/O引腳(它連接到數(shù)字) I/O引腳8)。
使用4.7KΩ電阻將DQ引腳拉高。
因為我們需要為了查看測量溫度,我已將一個簡單的16X2 LCD顯示器連接到Arduino。
代碼
項目代碼如下。您需要為Arduino下載兩個庫:OneWire和DallasTemperature。您可以從以下鏈接下載這些庫:下載OneWire Library 和下載DallasTemperature Library 。
工作Arduino DS18B20接口
項目的工作非常簡單。 Arduino通過1-Wire接口與DS18B20通信,并從傳感器中提取溫度信息。提取的信息顯示在16X2 LCD顯示屏上。
應用
DS18B20溫度傳感器可用于各種應用,例如:
溫度計
溫度敏感系統(tǒng)
消費類電子產(chǎn)品
工業(yè)設備
恒溫器
-
溫度傳感器
+關注
關注
48文章
2950瀏覽量
156183 -
DS18B20
+關注
關注
10文章
779瀏覽量
80943 -
Arduino
+關注
關注
188文章
6472瀏覽量
187318
發(fā)布評論請先 登錄
相關推薦
評論