Arduino Lesson 09 – Temperature Sensor

පෙරදී අපි ආලෝකය මඟින් පාලනය කළ හැකි පරිපථ පිළිබඳ ඉගෙන ගත් අතර මෙම පාඩමේදී  උෂ්ණත්ව සංවේදක භාවිතා කර දත්ත ලබා ගන්නා විදිහ පිලිබඳ ඉගෙන ගනිමු.

Termistor මගින් උෂ්ණත්වය මැනීම

අපි මෙහිදී පරිසර උෂ්ණත්වය මැනීම සඳහා termistor එකක් භාවිතා කරයි.

අවශ්‍යය උපාංග

උපාංග පිලිබද දැනුම

Thermistor

thermistor එකක් යනු උෂ්ණත්ව සංවේදී ප්‍රතිරෝධකයකි. එහි උෂ්ණත්වය වෙනස් වන විට එයට අදාලව ප්‍රතිරෝධය වෙනස් වීම සිදු වේ.

පරිසර උෂ්ණත්වය මැනීමට මෙම ක්‍රියාවලිය යොදා ගැනේ. thermistor එකක් හා එහි පරිපථ සටහන පහත දැක්වේ.

Thermistor එකේ උෂ්ණත්වයේ හා ප්‍රතිරෝධ අගය අතර සම්බන්ධය පහත සමීකරණයෙන් ලැබේ.

Rt=R*EXP[B*(1/T2-1/T1)]

මෙහි,

  • Rt- T2 උෂ්ණත්වයේදී Thermistor ප්‍රතිරෝධය.
  • R- T1 උෂ්ණත්වයේදී Thermistor ප්‍රතිරෝධය.
  • B- ප්‍රතිරෝධයේ උෂ්ණත්ව සංගුණකය.
  • (EXP[n] යනු “e” වල n වන බලයයි)
  • T1 , T2 උෂ්ණත්ව අගයන් කෙල්වින් අගයන්ගෙන් මනිනු ලබයි. (කෙල්වින් අගය =273.15+සෙල්සියස් අගය)

මෙහි අප භාවිතා කරන thermistor එකේ B=3950, R=10k සහ T1=25 ලෙස ගනු ලැබේ.

Thermistor එකේ පරිපථ සටහන පහත පරිදි වේ. එය potoresisitor පරිපථයට සමාන වේ.

පරිපථ සැකැස්ම

UNO බෝඩ් එකේ A0 පින්  එක thermistor එකෙන් ලැබෙන වෝල්ටීයතාව ලබා ගැනීමට භාවිතා කරයි.

Schematic diagram

Hardware connection

Sketch 9.1

අපි thermistor එකෙන් වෝල්ටීයතාව  ලබා ගෙන එයට අනුව උෂ්ණත්වය ගණනය කර එක serial monitor එක හරහා පෙන්වීම සඳහා ප්‍රෝග්‍රෑම් එකක් නිර්මාණය කරමු

void setup() { 
  Serial.begin(9600);	// Initialize the serial port, set the baud rate into 9600 
  Serial.println("UNO is ready!");   // Print the string "UNO is ready!" 
} 

void loop() { 
  // Convert analog value of A0 port into digital value 
  int adcVal = analogRead(A0); 
  // Calculate voltage 
  float v = adcVal * 5.0 / 1024; 
  // Calculate resistance value of thermistor 
  float Rt = 10 * v / (5 - v); 
  // Calculate temperature (Kelvin) 
  float tempK = 1 / (log(Rt / 10) / 3950 + 1 / (273.15 + 25)); 
  // Calculate temperature (Celsius) 
  float tempC = tempK - 273.15; 

  // Send the result to computer through serial port 
  Serial.print("Current temperature is: "); 
  Serial.print(tempK); 
  Serial.print(" K, "); 
  Serial.print(tempC); 
  Serial.println(" C"); 
  delay(500); 
}

මෙහිදී සිදුවන්නේ A0 පින් එකෙන් ADC අගය ලබාගෙන එය උෂ්ණත්ව අගයට පරිවර්තය කර serial port එකට යැවීම සිදු කිරීමයි.

verify කර අප්ලෝඩ් කිරීමෙන් පසුව serial monitor එක open කිරීමෙන් ඔබට එම උෂ්ණත්ව අගයන් දැක ගත හැකිය.

Leave a Reply

Your email address will not be published. Required fields are marked *

Index