Kiến thức

Đo nhiệt độ bằng Cảm biến LM35 sử dụng Arduino Uno-ARDUINO KIT

Đo nhiệt độ bằng Cảm biến LM35 sử dụng Arduino Uno

Đo nhiệt độ bằng Cảm biến LM35 sử dụng Arduino UnoĐo nhiệt độ bằng Cảm biến LM35 sử dụng Arduino Uno

Hôm nay chúng ta sẽ cùng nhau tìm hiểu về cách sử dụng cảm biến nhiệt độ LM35.

Cảm biến có ưu điểm hoạt động khá chính xác và ít sai số đồng thời kích thước nhỏ, giá thành thấp nên được sử dụng rất nhiều trong các ứng dụng đo nhiệt độ thời gian thực.

Qua bài viết này, các bạn sẽ tìm hiểu thêm một hàm mới là analogRead().

  • Đọc bài viết về hàm

    analogRead(pin).

Bạn đang xem: Đo nhiệt độ bằng Cảm biến LM35 sử dụng Arduino Uno-ARDUINO KIT

Cảm biến nhiệt độ LM35

  • LM35 là một cảm biến nhiệt độ Analog (A0 đến A5 trên board Arduino Uno).
  • LM35 không cần phải canh chỉnh nhiệt độ khi sử dụng.
  • LM35 thay đổi nhiệt độ nhanh và chính xác.
cảm biến nhiệt độ LM35cảm biến nhiệt độ LM35

Cảm biến nhiệt độ LM35.

Cảm biến nhiệt độ LM35 là bộ cảm biến nhiệt mạch tích hợp chính xác cao mà điện áp đầu ra của nó tỷ lệ tuyến tính với nhiệt độ theo thang độ Celsius.                            

Thông số kỹ thuật của cảm biến:

  • Điện áp hoạt động: 4-20V DC.
  • Công suất tiêu thụ: 60uA.
  • Khoảng đo nhiệt độ: -55°C đến 150°C.
  • Nhiệt độ thay đổi tuyến tính: 10mV/°C.
  • Độ chính xác thực tế: 1/4°C ở nhiệt độ phòng và 3/4°C ngoài khoảng 2°C tới 150°C.

Cảm biến LM35 hoạt động bằng cách cho ra một giá trị hiệu điện thế nhất định tại chân Vout (chân giữa) ứng với mỗi mức nhiệt độ.

Sơ đồ đấu nối

Arduino Uno Cảm biến nhiệt độ LM35
VCC +Vs (4 – 20V)
GND GND
A0 VOUT
Sơ đồ nguyên lý lm35 với arduino unoSơ đồ nguyên lý lm35 với arduino uno

Các linh kiện cần thiết cho dự án

  • Arduino Uno:

    Xem sản phẩm tại đây

  • Cảm biến nhiệt độ LM35:

    Xem sản phẩm tại đây

Code mẫu

int sensorPin = A0; void setup() { Serial.begin(9600); } void loop() { int reading = analogRead(sensorPin);   float voltage = reading * 5.0 / 1024.0; float temp = voltage * 100.0;  Serial.println(temp); delay(1000); }

Giải thích Code

reading = analogRead(sensorPin);

Hàm analogRead() có nhiệm vụ đọc giá trị điện áp từ một chân Analog (ADC), hàm này luôn trả về 1 số nguyên nằm trong khoảng từ 0 đến 1023 tương ứng với thang điện áp (mặc định) từ 0 đến 5V. Hàm analogRead() cần 100 micro giây để thực hiện.

  •  Xem bài viết

    kiểu số nguyên int

    để hiểu thêm.

Vậy reading = analogRead(sensorPin) có nghĩa là đọc giá trị điện áp từ cảm biến nhiệt độ LM35.

float voltage = reading * 5.0 / 1024.0; 

Công thức tính ra giá trị hiệu điện thế từ giá trị cảm biến (đơn vị Volt) Voltage = giá trị điện áp từ cảm biến chia cho mức analog cao nhất (1024)  rồi nhân với mức điện áp 5V.

Như ở trên ta thấy nhiệt độ thay đổi tuyến tính 10mV/°C nên đổi từ Vol sang °C thì ta chỉ cần nhân giá trị điện thế với 100 là ra nhiệt độ.

float temp = voltage * 100.0; 

Bài viết liên quan

  • Điều khiển Đèn 220V bằng Realy sử dụng Arduino

  • Báo động chống trộm bằng cảm biến PIR (HC-SR501)

  • Đo khoảng cách bằng cảm biến siêu âm HC-SRF04

Chuyên mục: Kiến thức

Related Articles

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Check Also
Close
Back to top button