Nhiệt kế là thiết bị hữu ích được sử dụng từ lâu để đo nhiệt độ. Trong dự án này, chúng tôi đã tạo ra một nhiệt kế kỹ thuật số dựa trên Arduino để hiển thị nhiệt độ môi trường hiện tại trên một đơn vị LCD 16x2 trong thời gian thực. Nó có thể được triển khai trong nhà ở, văn phòng, công nghiệp, vv để đo nhiệt độ. Chúng ta có thể chia nhiệt kế dựa trên Arduino này thành ba phần - Phần đầu tiên cảm nhận nhiệt độ bằng cách sử dụng cảm biến nhiệt độ LM35, phần thứ hai chuyển đổi giá trị nhiệt độ thành một con số phù hợp trong thang độ C do Arduino thực hiện và phần cuối cùng của hệ thống hiển thị nhiệt độ trên Màn hình LCD 16x2. Điều tương tự được thể hiện trong sơ đồ khối dưới đây.
Trong cảm biến nhiệt độ kỹ thuật số với Arduino, Arduino Uno được sử dụng để điều khiển toàn bộ quá trình. Cảm biến nhiệt độ LM35 được sử dụng để cảm nhận nhiệt độ môi trường, nhiệt độ sẽ cho ra nhiệt độ 1 độ trên mỗi 10mV thay đổi tại chân đầu ra của nó. Bạn có thể dễ dàng kiểm tra bằng vôn kế bằng cách kết nối Vcc ở chân 1 và Ground ở chân 3 và điện áp ra ở chân 2 của cảm biến LM35. Ví dụ, nếu điện áp đầu ra của cảm biến LM35 là 250m volt, điều đó có nghĩa là nhiệt độ khoảng 25 độ C.
Arduino đọc điện áp đầu ra của cảm biến nhiệt độ bằng cách sử dụng chân Analog A0 và thực hiện tính toán để chuyển đổi giá trị Analog này thành giá trị kỹ thuật số của nhiệt độ hiện tại. Sau khi tính toán, arduino sẽ gửi các phép tính hoặc nhiệt độ này đến đơn vị LCD 16x2 bằng cách sử dụng các lệnh thích hợp của LCD. Chúng tôi cũng đã xây dựng các dự án nhiệt kế kỹ thuật số khác sử dụng DHT11, DS18B20 và các cảm biến nhiệt độ khác.
Các thành phần mạch
Arduino
Trong dự án này, chúng tôi đã sử dụng Arduino để điều khiển toàn bộ quá trình của hệ thống. Arduino là một bộ điều khiển chạy trên bộ điều khiển ATmega AVR. Arduino là một nền tảng phần cứng mã nguồn mở và rất hữu ích cho mục đích phát triển dự án. Trên thị trường có rất nhiều loại board Arduino như Arduino UNO, arduino mega, arduino pro mini, Lilypad… hoặc bạn cũng có thể tự xây dựng Arduino.
Cảm biến nhiệt độ LM35
LM35 là cảm biến nhiệt độ 3 chân cung cấp 1 độ C trên mỗi 10mVolt thay đổi. Cảm biến này có thể cảm nhận nhiệt độ lên đến 150 độ C. 1 chân số của cảm biến lm35 là Vcc, chân thứ hai là đầu ra và chân thứ ba là Ground. LM35 là cảm biến nhiệt độ đơn giản nhất và có thể được giao tiếp dễ dàng với bất kỳ bộ vi điều khiển nào. Bạn có thể kiểm tra các phép đo nhiệt độ khác nhau bằng các dự án dựa trên LM35 tại đây.
Pin No |
Chức năng |
Tên |
1 |
Cung cấp hiệu điện thế; 5V (+ 35V đến -2V) |
Vcc |
2 |
Điện áp đầu ra (+ 6V đến -1V) |
Đầu ra |
3 |
Mặt đất (0V) |
Đất |
LM35 có thể dễ dàng giao tiếp với Raspberry Pi, NodeMCU, vi điều khiển PIC, v.v. để đo nhiệt độ và cũng có thể được sử dụng độc lập với Op-amp để chỉ báo mức nhiệt độ.
LCD
Màn hình LCD 16x2 được sử dụng rộng rãi trong các dự án hệ thống nhúng vì nó rẻ, dễ sử dụng, kích thước nhỏ và dễ giao diện. 16x2 có hai hàng và 16 cột, có nghĩa là nó bao gồm 16 khối 5x8 chấm. 16 chân cho các kết nối trong đó 8 bit dữ liệu D0-D7 và 3 bit điều khiển là RS, RW và EN. Các chân còn lại được sử dụng để cung cấp, điều khiển độ sáng và đèn nền.
Nguồn cấp
Arduino Board đã có sẵn phần cấp nguồn. Ở đây chúng ta chỉ cần kết nối bộ điều hợp 9 volt hoặc 12 volt với bảng.
Sơ đồ mạch và giải thích
Circuit digram cho Digital Thermometer sử dụng Arduino và LM35 cảm biến nhiệt độ, được thể hiện trong hình trên. Thực hiện các kết nối cẩn thận như được hiển thị trong sơ đồ. Ở đây đơn vị LCD 16x2 được kết nối trực tiếp với arduino ở chế độ 4-bit. Các chân dữ liệu của LCD như RS, EN, D4, D5, D6, D7 được kết nối với chân số của arduino số 7, 6, 5, 4, 3, 2. Một cảm biến nhiệt độ LM35 được kết nối với chân A0 của arduino, tạo ra Nhiệt độ 1 độ C trên mỗi đầu ra 10mV thay đổi tại chân đầu ra của nó.
Nếu bạn chưa quen với Arduino thì hãy tìm hiểu cách giao diện LCD 16x2 với Arduino trong hướng dẫn trước của chúng tôi.
Arduino LM35 Mã & Giải thích
Mã cho phép đo nhiệt độ bằng LM35 rất đơn giản và được đưa ra ở cuối hướng dẫn này. Đầu tiên, chúng tôi bao gồm thư viện cho đơn vị LCD và sau đó chúng tôi xác định dữ liệu và các chân điều khiển cho LCD và cảm biến nhiệt độ.
Sau khi nhận được giá trị tương tự tại chân tương tự, chúng tôi đọc giá trị đó bằng chức năng đọc Analog và lưu trữ giá trị đó trong một biến. Và sau đó chuyển đổi giá trị thành nhiệt độ bằng cách áp dụng công thức dưới đây.
float analog_value = analogRead (analog_pin); float Nhiệt độ = analog_value * factor * 100 trong đó factor = 5/1023 analog_value = đầu ra của cảm biến nhiệt độ
Ở đây biểu tượng độ được tạo bằng phương pháp ký tự tùy chỉnh
Vì vậy, đây là cách chúng ta có thể xây dựng một Nhiệt kế kỹ thuật số đơn giản để đo nhiệt độ với Arduino. Mã hoàn chỉnh với một video demo được đưa ra bên dưới.