在本教程中,我們將指導(dǎo)您如何使用Arduino設(shè)置熱敏電阻以創(chuàng)建基本溫度計。提供的原理圖、試驗板圖和示例代碼將使熱敏電阻工作變得簡單明了。
所需零件
Arduino開發(fā)板(例如Arduino Uno)
面包板(和一些面包板電線)
熱敏電阻 (10kΩ)
電阻 (10 kΩ)
第 1 步:了解熱敏電阻
我們的熱敏電阻具有以下參數(shù):
T0:25°攝氏度
RT0型:10,000 Ω
B: 3977 千米
這些值可在熱敏電阻制造商提供的數(shù)據(jù)表中找到。查看 Vishay 熱敏電阻的示例數(shù)據(jù)表。
T0是熱敏電阻的參考溫度。對于大多數(shù)熱敏電阻,這是25°C。
RT0型是熱敏電阻在參考溫度(通常為25°C)下的電阻。
熱敏電阻的 B 值,也稱為“β 值”或“B 系數(shù)”,可讓您深入了解電阻如何隨溫度變化。您需要此值來計算熱敏電阻的溫度。
第 2 步:連接 Arduino 熱敏電阻電路
要將熱敏電阻連接到Arduino,請將其與5V和GND之間的電阻串聯(lián)。然后將兩者之間的中間連接連接到Arduino上的模擬輸入引腳。
以下是使用面包板和一些電纜將熱敏電阻和電阻器連接到Arduino的方法:
第 3 步:上傳 Arduino 熱敏電阻代碼
此Arduino代碼向您展示了如何讀取熱敏電阻兩端的電壓,將其轉(zhuǎn)換為電阻,并使用它來計算熱敏電阻周圍的溫度。
然后,它將以攝氏度、開爾文和華氏度為單位的溫度值打印到串行監(jiān)視器。
上傳完整代碼:
// Thermistor parameters from the datasheet
#define RT0 10000
#define B 3977
// Our series resistor value = 10 kΩ
#define R 10000
// Variables for calculations
float RT, VR, ln, TX, T0, VRT;
void setup() {
// Setup serial communication
Serial.begin(9600);
// Convert T0 from Celsius to Kelvin
T0 = 25 + 273.15;
}
void loop() {
// Read the voltage across the thermistor
VRT = (5.00 / 1023.00) * analogRead(A0);
// Calculate the voltage across the resistor
VR = 5.00 - VRT;
// Calculate resistance of the thermistor
RT = VRT / (VR / R);
// Calculate temperature from thermistor resistance
ln = log(RT / RT0);
TX = (1 / ((ln / B) + (1 / T0)));
// Convert to Celsius
TX = TX - 273.15;
Serial.print("Temperature: ");
// Display in Celsius
Serial.print(TX);
Serial.print("Ct");
// Convert and display in Kelvin
Serial.print(TX + 273.15);
Serial.print("Kt");
// Convert and display in Fahrenheit
Serial.print((TX * 1.8) + 32);
Serial.println("F");
delay(500);
}
第 4 步:監(jiān)控溫度
通過單擊放大鏡圖標(biāo)或使用鍵盤快捷鍵 (Windows/Linux) 或 (Mac) 從 Arduino IDE
打開串行監(jiān)視器。將串行監(jiān)視器中的波特率設(shè)置為 9600(或與代碼中的函數(shù)中的值相同)。Ctrl + Shift + MCmd + Shift +
MSerial.begin()
在串行監(jiān)視器窗口中,您將能夠看到以攝氏度、開爾文和華氏度為單位的溫度值。這些值將每 500 毫秒刷新一次。
嘗試用手指加熱熱敏電阻以觀察溫度變化。
串行監(jiān)視器中預(yù)期的輸出示例:
Temperature: 25.00C 298.15K 77.00F
Temperature: 24.89C 298.04K 76.80F
Temperature: 26.12C 299.27K 79.02F
Temperature: 27.38C 300.53K 81.28F
Temperature: 27.50C 300.65K 81.50F
Temperature: 26.80C 299.95K 80.24F
Temperature: 25.78C 299.93K 78.40F
Temperature: 25.10C 298.25K 77.18F
結(jié)論
您已經(jīng)成功地使用帶有Arduino的熱敏電阻設(shè)置了溫度計!此設(shè)置可以集成到更大的項目中,也可以單獨用于監(jiān)測任何所需設(shè)置下的溫度。
審核編輯:陳陳
-
熱敏電阻
+關(guān)注
關(guān)注
14文章
1163瀏覽量
101501 -
溫度計
+關(guān)注
關(guān)注
6文章
404瀏覽量
78465 -
Arduino
+關(guān)注
關(guān)注
188文章
6468瀏覽量
186950
發(fā)布評論請先 登錄
相關(guān)推薦
評論