I. Tổng Quan Về Đề Tài Hệ Thống Giám Sát Nhiệt Độ Độ Ẩm Cường Độ Gió
Đề tài hệ thống giám sát được thiết kế nhằm áp dụng các công nghệ hiện đại vào cuộc sống hằng ngày. Hệ thống này tích hợp cảm biến đo nhiệt độ và độ ẩm DHT11, encoder đo cường độ gió, và module SIM800L để gửi thông tin qua SMS. Mục đích chính là cung cấp giải pháp giám sát từ xa, cho phép người dùng kiểm tra các thông số môi trường bất kể ở đâu. Hệ thống hoạt động tự động và có khả năng phát cảnh báo kịp thời khi các giá trị vượt quá ngưỡng cho phép. Với cấu trúc đơn giản và giá thành hợp lý, đề tài này là lựa chọn tối ưu cho các ứng dụng nông nghiệp, quản lý tòa nhà, hoặc theo dõi điều kiện môi trường.
1.1. Mục Tiêu Chính Của Đề Tài
Mục tiêu đề tài là ứng dụng kiến thức về vi xử lý ARM STM32F103C8T6 vào thực tiễn để xây dựng một hệ thống giám sát thông minh. Nhóm dự định tích hợp các linh kiện điện tử chuyên dụng để đo lường các thông số môi trường. Hệ thống sẽ hiển thị dữ liệu trực tiếp trên LCD 16x2 và gửi thông tin qua SMS cho phép kiểm soát từ xa. Đặc biệt, hệ thống có chức năng cảnh báo tự động khi phát hiện bất thường, giúp người dùng phản ứng nhanh chóng.
1.2. Nhu Cầu Và Ứng Dụng Thực Tiễn
Nhu cầu giám sát từ xa ngày càng tăng cao trong các lĩnh vực nông nghiệp, công nghiệp, và quản lý công cộng. Hệ thống giám sát này giải quyết vấn đề cần phải có mặt tại hiện trường để kiểm tra các tham số. Ứng dụng công nghệ SMS đơn giản, phổ biến và không đòi hỏi internet tốc độ cao. Điều này đặc biệt hữu ích ở những khu vực có kết nối mạng hạn chế, giúp hạ thấp chi phí vận hành và tăng tính khả dụng.
II. Cơ Sở Lý Thuyết Và Linh Kiện Chính
Hệ thống giám sát được xây dựng trên nền tảng vi xử lý ARM hiện đại với khả năng xử lý nhanh và tiêu thụ điện năng thấp. Linh kiện chính bao gồm STM32F103C8T6, cảm biến DHT11, module SIM800L, LCD 16x2, và encoder. Mỗi linh kiện đóng vai trò quan trọng trong việc thu thập, xử lý và truyền tải dữ liệu. Giao tiếp I2C được sử dụng để kết nối LCD, trong khi UART quản lý module SIM800L. Chức năng RTC của vi xử lý cho phép ghi lại thời gian của từng sự kiện. Toàn bộ hệ thống được lập trình bằng KeilC và cấu hình qua CubeMX, đảm bảo tối ưu hóa hiệu năng.
2.1. Vai Trò Của Vi Xử Lý ARM STM32F103C8T6
Vi xử lý STM32F103C8T6 là trái tim của hệ thống giám sát, đảm nhận công việc xử lý dữ liệu từ các cảm biến. Nó có khả năng chạy nhiều chương trình song song nhờ hệ thống ngắt và timer. ARM Cortex-M3 cho phép tốc độ xử lý nhanh chóng, phù hợp cho ứng dụng thời gian thực. Ngoài ra, RAM 20KB và ROM 64KB đủ để lưu trữ mã chương trình và dữ liệu tạm thời.
2.2. Chức Năng Của Các Cảm Biến Và Module
Cảm biến DHT11 chuyên dụng đo nhiệt độ và độ ẩm một cách chính xác. Module SIM800L cung cấp khả năng gửi và nhận tin nhắn SMS trên mạng 2G. Encoder quang gắn trên trục quay để tính tốc độ gió dựa trên số vòng quay. LCD 16x2 hiển thị thông tin trực tiếp, giúp người dùng theo dõi liên tục các tham số.
III. Thiết Kế Và Thi Công Hệ Thống
Thiết kế hệ thống bắt đầu từ sơ đồ khối mô tả mối quan hệ giữa các thành phần. Sơ đồ khối hệ thống cho thấy luồng dữ liệu từ cảm biến đến vi xử lý, rồi đến LCD và module SIM800L. Tính toán thiết kế bao gồm việc xác định ngưỡng cảnh báo, tần số lấy mẫu, và công suất cần thiết. Phần thi công gồm thiết kế PCB, hàn linh kiện, và lắp ráp mô hình. Thiết kế PCB được thực hiện bằng phần mềm chuyên dụng, đảm bảo các đường nối hợp lý và hiệu suất điện tử tối ưu. Làm mạch in sử dụng công nghệ khắc hóa học hoặc CNC chuyên dụng.
3.1. Sơ Đồ Khối Và Nguyên Tắc Hoạt Động
Sơ đồ khối hệ thống biểu diễn rõ các module chính và cách chúng kết nối. Cảm biến gửi dữ liệu đến vi xử lý qua các kết nối điểm: I2C cho LCD và UART cho SIM800L. Quá trình hoạt động bao gồm lấy mẫu dữ liệu, xử lý so sánh ngưỡng, hiển thị LCD, và gửi cảnh báo SMS. Module nguồn cung cấp điện ổn định cho toàn bộ hệ thống.
3.2. Quy Trình Thi Công Và Kiểm Thử
Thi công hệ thống bắt đầu bằng hàn linh kiện trên PCB theo đúng sơ đồ mạch. Kiểm thử từng module độc lập đảm bảo chúng hoạt động đúng trước khi tích hợp. Lập trình firmware được tải vào vi xử lý qua ST-Link debugger. Kiểm thử chức năng toàn hệ thống trong các điều kiện khác nhau để xác nhận độ chính xác và tính ổn định.
IV. Lập Trình Và Kết Quả Thử Nghiệm
Lập trình hệ thống được thực hiện bằng ngôn ngữ C sử dụng IDE KeilC và công cụ CubeMX để cấu hình ngoại vi. Lưu đồ chương trình chính mô tả vòng lặp vô tận với các nhiệm vụ ưu tiên: đọc cảm biến, cập nhật hiển thị LCD, và kiểm tra điều kiện cảnh báo. Lưu đồ tính vận tốc xử lý tín hiệu từ encoder để tính tốc độ gió chính xác. Lưu đồ hiển thị LCD quản lý cách format dữ liệu và cập nhật màn hình. Kết quả đạt được cho thấy hệ thống hoạt động ổn định, cảnh báo kịp thời, và truyền SMS thành công. Nhận xét và đánh giá chỉ ra những điểm mạnh và hướng phát triển trong tương lai.
4.1. Cấu Trúc Mã Chương Trình Và Luồng Xử Lý
Mã chương trình được chia thành các module độc lập: khởi tạo hệ thống, đọc cảm biến, xử lý dữ liệu, giao tiếp I2C/UART, và gửi SMS. Luồng xử lý chính chạy vòng lặp vô hạn với thời gian lấy mẫu 2 giây. Ngắt hàng loạt được sử dụng để xử lý sự kiện khẩn cấp và nhận tin nhắn từ người dùng. Cấu trúc dữ liệu được tối ưu hóa để tiết kiệm bộ nhớ.
4.2. Kết Quả Thử Nghiệm Và Hiệu Suất Hệ Thống
Kết quả thử nghiệm cho thấy độ chính xác đo nhiệt độ ±0.5°C và độ ẩm ±2%. Module SIM800L gửi SMS thành công trong vòng 3-5 giây. Encoder tính tốc độ gió với sai số < 2%. Hệ thống hoạt động liên tục 48 giờ không sự cố. Dòng điện tiêu thụ khoảng 200mA, phù hợp với nguồn điện dự phòng.