DỰ ÁN NHỎ (MINI PROJECT)

Chào các bạn,
Chúng ta đã đi qua rất nhiều bài thực hành từ cơ bản đến nâng cao: đọc tín hiệu analog, hiển thị LCD, điều khiển LED, buzzer, giao tiếp UART,…

Hôm nay, chúng ta sẽ vận dụng toàn bộ các kiến thức đã học để thực hiện Mini Project: Thiết kế hệ thống điều khiển nhiệt độ đơn giản.

🎯 MỤC TIÊU DỰ ÁN

  • Thiết kế hệ thống theo dõi và điều khiển nhiệt độ sử dụng Arduino
  • Đọc nhiệt độ từ cảm biến (hoặc biến trở mô phỏng)
  • Hiển thị giá trị nhiệt độ lên LCD
  • Kích hoạt LED cảnh báo hoặc buzzer khi nhiệt độ vượt ngưỡng
  • Trình bày sản phẩm và nộp báo cáo kỹ thuật

🛠️ PHẦN 1: LINH KIỆN VÀ KẾT NỐI

Truy cập https://www.tinkercad.com

🔧 Yêu cầu linh kiện:

  • Arduino UNO
  • LCD 16×2 (hoặc LCD I2C)
  • Cảm biến nhiệt độ LM35 (hoặc biến trở mô phỏng)
  • 1 LED cảnh báo + điện trở 220Ω
  • 1 buzzer (tùy chọn)
  • 1 nút nhấn (tùy chọn mở rộng)
  • Dây nối + breadboard

🔌 Kết nối cơ bản:

Thành phầnKết nối
LM35 (hoặc biến trở)Chân giữa → A0; 2 chân ngoài → 5V và GND
LCD 16×2RS=12, E=11, D4–D7 = D5–D2
LED cảnh báoChân dài → D9 → điện trở 220Ω → LED → GND
Buzzer (tùy chọn)D10 hoặc D13 → Buzzer → GND

💻 PHẦN 2: CODE MẪU GỢI Ý

#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

const int sensorPin = A0;
const int ledPin = 9;
const int buzzerPin = 10; // Nếu dùng

void setup() {
lcd.begin(16, 2);
pinMode(ledPin, OUTPUT);
pinMode(buzzerPin, OUTPUT); // Nếu dùng
lcd.print("Temp Control");
}

void loop() {
int value = analogRead(sensorPin);
float tempC = value * 5.0 / 1023.0 * 100;

lcd.setCursor(0, 1);
lcd.print("Temp: ");
lcd.print(tempC);
lcd.print(" C ");

if (tempC > 35) {
digitalWrite(ledPin, HIGH);
digitalWrite(buzzerPin, HIGH);
} else {
digitalWrite(ledPin, LOW);
digitalWrite(buzzerPin, LOW);
}

delay(1000);
}

📋 PHẦN 3: YÊU CẦU BÁO CÁO DỰ ÁN

📄 Nội dung báo cáo (in hoặc nộp PDF):

  1. Tên dự án: Hệ thống điều khiển nhiệt độ đơn giản
  2. Thành viên nhóm: Họ tên + MSSV
  3. Mô tả chức năng
  4. Sơ đồ nguyên lý hoặc ảnh mạch
  5. Giải thích mã nguồn
  6. Kết quả thực nghiệm (ảnh/chụp màn hình)
  7. Đánh giá – mở rộng – đề xuất

🎤 PHẦN 4: YÊU CẦU THUYẾT TRÌNH

  • Nhóm có 5 phút trình bày:
    • Giới thiệu nhóm & tên đề tài
    • Mô tả sơ đồ & chức năng
    • Demo chạy thử
    • Trả lời 1–2 câu hỏi từ giảng viên

🏁 PHẦN 5: TỔNG KẾT

✅ Qua dự án này, sinh viên sẽ:

  • Hiểu sâu hơn về tích hợp cảm biến + hiển thị + cảnh báo
  • Nâng cao kỹ năng lập trình, làm việc nhóm, báo cáo
  • Sẵn sàng cho các đồ án hoặc dự án thực tế sau này

🌱 GỢI Ý MỞ RỘNG DỰ ÁN

  • Thêm nút nhấn để thay đổi ngưỡng cảnh báo
  • Gửi dữ liệu nhiệt độ qua Serial / Bluetooth
  • Lưu dữ liệu bằng thẻ SD hoặc hiển thị biểu đồ

🌱 CÁC BIỂU MẪU BÁO CÁO DÀNH CHO SINH VIÊN