TỔNG QUAN
Trong những năm gần đây, nguy cơ cháy rừng trên toàn cầu đã gia tăng đáng kể do biến đổi khí hậu, gây ra những mối đe dọa nghiêm trọng đối với môi trường, động vật hoang dã và sự an toàn của con người Để giải quyết vấn đề cấp bách này, việc thiết kế một hệ thống giám sát tiên tiến có khả năng phát hiện và cảnh báo kịp thời khi có cháy rừng là rất quan trọng Đồ án tốt nghiệp với đề tài “Thiết kế hệ thống giám sát cháy rừng sử dụng công nghệ LoRa” sẽ giới thiệu giải pháp hiện đại: xây dựng hệ thống giám sát dựa trên công nghệ truyền nhận LoRa, kết hợp với camera giám sát tại các vị trí quan trọng trong rừng.
Hiện nay, nhiều nghiên cứu đã được thực hiện về hệ thống giám sát cháy rừng, như bài báo "Design and Implementation of LoRa - Based Forest Fire Monitoring System" (Y Apriani và cộng sự, 2022), cho thấy khả năng phát hiện cháy qua cảm biến camera nhiệt AMG8833 với khoảng cách giao tiếp LoRa lên tới 500m Đồ án "Hệ thống cảnh báo cháy rừng ứng dụng công nghệ LoRa" (N T Lợi & T Đ Hiệp, 2017) cũng sử dụng cảm biến để cung cấp dữ liệu trực quan và có thể quan sát trên nhiều thiết bị Cả hai nghiên cứu đều có ưu điểm về khoảng cách truyền xa và sử dụng pin năng lượng mặt trời Tuy nhiên, chúng chỉ sử dụng một cảm biến để đo nhiệt độ và độ ẩm trong một ngữ cảnh duy nhất, điều này hạn chế khả năng đánh giá hiệu quả của hệ thống cảnh báo cháy rừng.
Hệ thống giám sát cháy rừng sử dụng công nghệ LoRa sẽ cải tiến đáng kể bằng cách lắp đặt nhiều trạm giám sát hơn Đặc biệt, việc giám sát bằng hình ảnh trực tiếp từ camera phát hiện đám cháy sẽ giúp đánh giá hiệu quả của hệ thống giám sát cháy rừng một cách tốt hơn.
Hệ thống giám sát cháy rừng sử dụng công nghệ LoRa, một giao thức mạng diện rộng tiết kiệm năng lượng, cho phép liên lạc đường dài với tiêu thụ điện năng thấp, lý tưởng cho các khu vực rừng xa xôi Công nghệ LoRa thiết lập mạng không dây để truyền dữ liệu qua khoảng cách xa, cung cấp khả năng giám sát thời gian thực ngay cả ở những khu vực thiếu cơ sở hạ tầng.
Công nghệ Lora mang lại nhiều lợi thế so với phương pháp giám sát truyền thống nhờ khả năng giao tiếp không dây tầm xa với mức tiêu thụ năng lượng tối thiểu Việc kết hợp camera giám sát cho phép thu thập thông tin trực quan về đám cháy ở các mức độ nghiêm trọng khác nhau, đặc biệt tại những khu vực khó theo dõi Sự kết hợp giữa Lora và các cảm biến nhiệt độ, độ ẩm cung cấp dữ liệu hình ảnh và chỉ số môi trường thời gian thực, giúp phát hiện sớm và giám sát toàn diện, từ đó giảm thiểu thiệt hại do cháy rừng và bảo vệ các hệ sinh thái quý giá.
Đồ án “Thiết kế hệ thống giám sát cháy rừng sử dụng công nghệ Lora” là một đề tài cấp bách, nhằm giảm thiểu thiệt hại do cháy rừng và nâng cao an toàn cho con người cũng như tài nguyên thiên nhiên Hệ thống này đóng vai trò quan trọng trong việc quản lý môi trường hiệu quả và bảo vệ cuộc sống của con người.
Xây dựng hệ thống giám sát cháy rừng bằng công nghệ LoRa nhằm phát hiện và cảnh báo kịp thời các vụ cháy, đồng thời truyền dữ liệu liên tục đến cơ quan chức năng Nghiên cứu sẽ tập trung vào phát triển thiết bị giám sát với độ chính xác cao và khả năng truyền thông tin từ xa, giúp quản lý và giám sát hiệu quả các khu vực rừng.
- Tìm hiểu về một số phương pháp đang được sử dụng phổ biến nhất để phát hiện lửa ngày nay
- Tìm hiểu kiến thức về các thuật toán có thể xác định chính xác các tính chất nhận biết lửa và vùng cháy
- Áp dụng không gian màu HSV để xác định ngưỡng và các tính chất của ngọn lửa
- Xác định lửa và vùng cháy từ các điều kiện của giải thuật được xây dựng dựa vào mô hình màu HSV
- Thiết kế và phát triển các thiết bị giám sát cháy rừng và các thông số môi trường khác
- Thiết kế và triển khai hệ thống truyền thông tin Lora để kết nối các thiết bị giám sát cháy rừng
- Sử dụng DHT11 thay thế cho camera để lấy giá trị nhiệt độ và độ thời điểm hiện tại
- Thiết lập hệ thống IoTs cập nhật dữ liệu liên tục và cảnh báo từ các thiết bị giám sát cháy rừng
1.4 ĐỐI TƯỢNG VÀ PHẠM VI NGHIÊN CỨU
Nghiên cứu tập trung vào các linh kiện và thiết bị thiết yếu, bao gồm cảm biến nhiệt độ và độ ẩm, camera giám sát, hình ảnh thu được từ camera giám sát, cùng với vi xử lý và vi điều khiển.
Nghiên cứu tập trung vào phát triển các cảm biến, camera giám sát và bộ truyền nhận thông tin Lora nhằm đảm bảo khả năng phát hiện và cảnh báo cháy rừng kịp thời cho một khu rừng cụ thể Mục tiêu của nghiên cứu là đánh giá hiệu suất và độ chính xác của hệ thống giám sát cháy rừng.
Phương pháp nghiên cứu tài liệu là quá trình tổng hợp và hệ thống hóa các cơ sở lý thuyết cùng với kết quả nghiên cứu của các tác giả trước đó, nhằm tạo nền tảng vững chắc cho việc thực hiện đồ án.
Phương pháp xử lý và phân tích dữ liệu bao gồm việc tìm kiếm thông tin từ các nguồn điện tử như luận văn, nghiên cứu khoa học và báo cáo khoa học để xác định phương án thiết kế và xây dựng hệ thống hợp lý Sau khi hoàn thành việc xây dựng hệ thống, tiến hành thực nghiệm thu thập số liệu và phân tích nhằm đánh giá hiệu quả của hệ thống.
1.6 BỐ CỤC CỦA ĐỒ ÁN
Nội dung báo cáo được chia làm 6 chương bao gồm:
Chương 2: Cơ sở lý thuyết
Chương 3: Thiết kế và xây dựng hệ thống
Chương 4: Kết quả thực hiện
Chương 5: Đánh giá hệ thống
Chương 6: Kết luận và hướng phát triển
CƠ SỞ LÝ THUYẾT
MỘT SỐ KỸ THUẬT PHÁT HIỆN LỬA HIỆN NAY
Machine Learning là một phương pháp trong trí tuệ nhân tạo (AI) cho phép máy tính tự học từ dữ liệu mà không cần lập trình cụ thể Các thuật toán Machine Learning được thiết kế để phát hiện mối quan hệ và mô hình trong dữ liệu, từ đó đưa ra dự đoán hoặc quyết định với độ chính xác cao hơn.
Có 3 loại thuật toán Machine Learning chính: (I Goodfellow và cộng sự, 2016)
Học có giám sát là phương pháp mà mô hình được đào tạo với các cặp dữ liệu đầu vào và đầu ra tương ứng Sau khi hoàn tất quá trình huấn luyện, mô hình này sẽ được áp dụng để dự đoán đầu ra cho các dữ liệu mới.
Học không giám sát là phương pháp huấn luyện mô hình chỉ dựa vào dữ liệu đầu vào mà không cần đầu ra tương ứng Phương pháp này thường được áp dụng để phân nhóm dữ liệu hoặc khám phá các cấu trúc ẩn trong dữ liệu.
Học Tăng Cường là một phương pháp huấn luyện mô hình thông qua việc thực hiện các hành động và nhận phần thưởng hoặc hình phạt Phương pháp này giúp mô hình học cách tối ưu hóa hành động trong một môi trường cụ thể.
Một số công cụ và thư viện phổ biến để có thể xây dựng mô hình Machine Learning như: Python, TensorFlow, Keras, PyTorch, Scikit-learn,…
Trong lĩnh vực giám sát cháy rừng, kỹ thuật Machine Learning có thể phân tích và dự đoán các mẫu cháy dựa trên dữ liệu từ camera giám sát và cảm biến Một ví dụ cụ thể là mô hình phân tích dữ liệu hình ảnh từ vệ tinh, cho phép phân loại đám cháy rừng theo mức độ nguy hiểm và ước tính kích thước của chúng dựa trên đặc tính hình ảnh và dữ liệu cảm biến.
Hình 2 - 2 Mô hình phân tích hình ảnh dựa vào hình ảnh vệ tinh (B T Tung, 2020)
Các kỹ thuật Machine Learning được áp dụng trong giám sát cháy rừng bao gồm phân loại, dự báo, phân cụm, gom nhóm dữ liệu và phân tích chuỗi thời gian Những phương pháp phổ biến trong học có giám sát như Rando, Forest, Support Vector Machines (SVM) và Neural Networks (NN) giúp cải thiện độ chính xác trong dự đoán Trong khi đó, học không giám sát với các kỹ thuật như k-Means Clustering và Principal Component Analysis (PCA) hỗ trợ trong việc phân tích và hiểu cấu trúc dữ liệu.
Sử dụng Machine Learning trong hệ thống giám sát cháy rừng có thể nâng cao độ chính xác và độ nhạy, giúp phát hiện và xử lý kịp thời các đám cháy Tuy nhiên, việc áp dụng công nghệ này đòi hỏi người thực hiện phải có kinh nghiệm trong xử lý dữ liệu và lập trình Machine Learning.
Công nghệ cảm biến IoT đang trở thành xu hướng nổi bật trong những năm gần đây, đặc biệt trong các ứng dụng kiểm soát và giám sát Các thiết bị cảm biến IoT có khả năng được lắp đặt ở nhiều vị trí khác nhau để thu thập và truyền tải dữ liệu về hệ thống giám sát trung tâm, minh chứng cho sự ứng dụng hiệu quả của công nghệ này trong môi trường thực tế.
Hình 2 - 3 Công nghệ IoT Sensors (Renkeer_admin, 2021)
Các ứng dụng công nghệ IoT Sensor có khả năng thu thập đa dạng dữ liệu như nhiệt độ, độ ẩm, ánh sáng, độ rung, áp suất, độ ồn, hình ảnh và âm thanh Những thiết bị cảm biến này được kết nối với mạng, giúp truyền tải dữ liệu về các trung tâm giám sát để xử lý thông tin hiệu quả.
Với sự phát triển mạnh mẽ của công nghệ IoT, cảm biến IoT ngày càng trở nên phổ biến và linh hoạt Những thiết bị này có khả năng được lập trình để thực hiện nhiều chức năng khác nhau như phát hiện cháy, phát hiện chuyển động, phát hiện bất thường và nhiều ứng dụng khác.
Trong hệ thống giám sát cháy rừng, các cảm biến IoT được lắp đặt ở nhiều vị trí để thu thập dữ liệu về nhiệt độ, độ ẩm, độ cháy và khói Dữ liệu này được gửi về máy chủ để phân tích, từ đó đưa ra các phương án kịp thời nhằm ngăn chặn cháy rừng Một ví dụ điển hình là hệ thống giám sát cháy rừng của một công ty tại Đức, sử dụng cảm biến BME688, áp dụng công nghệ IoT Sensor tiên tiến hiện nay.
Hình 2 - 4 Hệ thống giám sát cháy rừng của công ty Dryad (Đức) (BOSCH)
2.1.3 Kỹ thuật xử lý ảnh
Kỹ thuật xử lý ảnh là lĩnh vực nghiên cứu và ứng dụng công nghệ nhằm phân tích và trích xuất thông tin từ hình ảnh Nó cung cấp các phương pháp, công cụ và thuật toán để cải thiện chất lượng hình ảnh, cũng như phân tích và trích xuất thông tin từ chúng Ví dụ, hình 2 – 5 minh họa quá trình phân tích và xử lý ảnh của mắt con người Các kỹ thuật này bao gồm biến đổi hình ảnh, lọc thông tin, phân đoạn hình ảnh, phát hiện vật thể và nhận dạng đối tượng.
Hình 2 - 5 Kỹ thuật xử lý ảnh
Một số phương pháp xử lý ảnh phổ biến bao gồm nâng cao chất lượng ảnh, phân đoạn ảnh, phát hiện cạnh, trích xuất đặc trưng, phát hiện vật thể, nhận dạng khuôn mặt và nhận dạng đối tượng Kỹ thuật xử lý ảnh có nhiều ứng dụng đa dạng trong các lĩnh vực khác nhau.
Công nghệ ngày nay rất đa dạng và phong phú, bao gồm nhận dạng khuôn mặt, đọc mã vạch, kiểm tra chất lượng sản phẩm, điều khiển hệ thống tự động, và phát hiện cũng như theo dõi các hiện tượng tự nhiên như cháy rừng.
Các công cụ phổ biến để xử lý ảnh bao gồm Matlab, Python và OpenCV, một thư viện mã nguồn mở hàng đầu cho xử lý ảnh số OpenCV cung cấp nhiều chức năng như tìm kiếm cạnh, phát hiện đối tượng, lọc ảnh và chuyển đổi màu sắc, hỗ trợ các ngôn ngữ lập trình như C++, Python và Java Thư viện này có thể chạy trên nhiều nền tảng như Windows, Linux và MacOS, đồng thời cung cấp API để tích hợp với các ứng dụng IoT và điện toán đám mây Ví dụ điển hình về ứng dụng OpenCV là xác định khuôn mặt người.
Hình 2 - 6 Thư viện OpenCV (A Rosebrock, 2018)
TỔNG QUAN VỀ PHẦN CỨNG
2.2.1 Tổng quan về công nghệ LoRa
2.2.1.1 Giới thiệu về công nghệ LoRa
LoRa, viết tắt của Long Range Radio, là công nghệ truyền dữ liệu khoảng cách xa được Semtech mua lại vào năm 2012 sau khi Cycleo phát triển Công nghệ này cho phép truyền dữ liệu mà không cần mạch khuếch đại, nhằm giảm mức tiêu thụ năng lượng trong quá trình truyền và nhận Nhờ đó, LoRa trở thành giải pháp lý tưởng cho các ứng dụng thu thập dữ liệu như mạng cảm biến, cho phép các nút cảm biến gửi phép đo đến trung tâm ở khoảng cách xa vài km mà không cần thay pin trong thời gian dài Một ứng dụng phổ biến của LoRa là hệ thống báo động an ninh không dây.
Hình 2 - 8 Công nghệ LoRa (T B G Re)
LoRa không chỉ mang lại lợi thế cho IoT mà còn phù hợp với nhiều ứng dụng nhờ vào các thuật toán tốc độ dữ liệu thích ứng, giúp giảm dung lượng mạng và tăng tuổi thọ thiết bị Hệ thống mã hóa nhiều lớp trong giao thức đảm bảo an toàn trong truyền thông từ cấp độ mạng đến ứng dụng và thiết bị Thêm vào đó, tính năng hai chiều của LoRa cho phép truyền tin nhắn và cập nhật phần mềm hiệu quả.
Hiện nay, lĩnh vực thiết bị IoT sử dụng nhiều công nghệ truyền thông khác nhau, nhưng mỗi công nghệ đều có nhược điểm riêng Wi-Fi, mặc dù phổ biến, lại tiêu tốn nhiều năng lượng và có thể truyền dữ liệu quá mức, điều này làm cho nó không phù hợp với các thiết bị IoT không có nguồn dự phòng, thường chỉ cần gửi một lượng nhỏ dữ liệu Hơn nữa, bộ định tuyến Wi-Fi có giới hạn trong việc chứa nhiều thiết bị cùng lúc.
11 hữu hạn, khả năng này có thể nhanh chóng bị vượt quá khi số lượng thiết bị IoT trong nhà tăng lên
Công nghệ Bluetooth cho phép giao tiếp giữa các thiết bị trong phạm vi hạn chế và có thể tiêu tốn nhiều năng lượng, tương tự như Wi-Fi Ngược lại, ZigBee có phạm vi hoạt động rộng hơn và mức tiêu thụ điện năng thấp hơn Mặc dù tốc độ dữ liệu của ZigBee tương đối chậm, nhưng không phải tất cả các hệ thống ZigBee đều tương thích lẫn nhau.
Nguyên lý hoạt động của LoRa dựa trên kỹ thuật điều chế Chirp Spread Spectrum, trong đó dữ liệu được "nâng" lên bằng các xung tần số cao hơn tần số ban đầu, gọi là chirped Tín hiệu tần số cao này được mã hóa theo chuỗi tín hiệu chirp, bao gồm hai loại: up-chirp (tăng tần số) và down-chirp (giảm tần số) Nguyên tắc mã hóa sử dụng bit 1 để truyền tín hiệu lên và bit 0 để truyền tín hiệu xuống, giúp giảm độ phức tạp và tăng độ chính xác trong quá trình truyền LoRa có ưu điểm không yêu cầu công suất truyền lớn và có khả năng truyền tín hiệu trên khoảng cách dài, ngay cả khi cường độ tín hiệu thấp hơn tiếng ồn xung quanh.
Hình 2 - 9 Kỹ thuật điều chế Chirp Spread Spectrum
Công nghệ LoRa đang được ứng dụng rộng rãi trong các thành phố kỹ thuật số và thông minh, nhưng chỉ dựa vào kết nối LTE hoặc WiFi là chưa đủ Sự gia tăng dân số tại các khu đô thị dẫn đến tình trạng hạn chế phổ dữ liệu, gây ra các vấn đề nghiêm trọng như mạng quá tải và tín hiệu yếu không thể xuyên qua các cấu trúc kín và khu vực ngầm Những thách thức này trở thành rào cản lớn trong sự phát triển của các thành phố kết nối.
Công nghệ LoRa giúp giải quyết những thách thức liên quan đến 12 hoạt động phổ biến, đảm bảo mạng bên dưới đáng tin cậy, không thể xâm phạm và khả thi trong thời gian dài.
Công nghệ LoRa được ứng dụng rộng rãi trong các tòa nhà thông minh, giúp quản lý năng lượng, phát hiện rò rỉ nước, tăng cường an ninh, kiểm tra an toàn và tối ưu hóa không gian làm việc Bên cạnh đó, LoRa cũng đóng vai trò quan trọng trong nông nghiệp thông minh, cho phép theo dõi kỹ thuật số, quản lý và phân tích mọi khía cạnh từ sức khỏe gia súc đến năng suất cây trồng Nhờ vào khả năng dễ triển khai, công nghệ LoRa cung cấp nền tảng vững chắc cho tương lai nông nghiệp thông minh, hỗ trợ nông dân và người chăn nuôi phát triển kinh doanh hiệu quả.
Mạch thu phát RF UART LoRa SX1278 433Mhz 3000m EBYTE E32-433T20D là một module cổng nối tiếp không dây dựa trên chip SX1278 của Semtech, hoạt động trong dải tần 410-441Mhz, với tần số mặc định là 433Mhz Module này sử dụng công nghệ trải phổ LoRa, cho phép truyền dữ liệu hiệu quả trong khoảng cách xa lên đến 3000m Hình ảnh và sơ đồ chân của module LoRa được minh họa trong các hình 2-10 và 2-11.
Hình 2 - 10 Module RF Lora SX1278
Hình 2 - 11 Kích thước và sơ đồ chân Module RF LoRa
SX1278 hỗ trợ công nghệ trải phổ LoRa, là một giải pháp quan trọng cho việc truyền dữ liệu tốc độ cao trong nhiều lĩnh vực Thiết bị này được ưa chuộng trong ngành công nghiệp ba mét, Internet of Things, và các ứng dụng như báo động an ninh gia đình, nhà thông minh, cảm biến công nghiệp, hệ thống an ninh không dây, tự động hóa tòa nhà, điều khiển từ xa công nghiệp và nông nghiệp thông minh E32-433T20D tuân thủ các tiêu chuẩn thiết kế quốc tế như FCC, CE, CCC và các quy định liên quan đến chứng nhận RF, đảm bảo đáp ứng yêu cầu xuất khẩu.
Thông số kỹ thuật Module Lora được trình bày trong bảng 2 – 1 :
Bảng 2 - 1 Thông số kỹ thuật Module LoRa (L Chengdu Ebyte Electronic
Tối thiểu Đặc trưng Tối đa Khoảng cách tham khảo
3000m Rõ ràng và cởi mở, độ lợi anten 5dBi, chiều cao anten 2.5m, tốc độ truyền 2.4kbps
Cổng nối tiếp UART mức TTL Điện áp làm việc (V)
2.3 5.0 5.5 Công suất đầu ra đảm bảo ≥ 3.3 V Cấp độ giao tiếp
3.3 Nguy cơ kiệt sức với 5V
TTL Nhiệt độ làm việc ( ℃)
-40 +85 Thiết kế cấp công nghiệp
Băng tần làm việc(MHz)
410 441 Hỗ trợ băng tần ISM, mặc định của nhà sản xuất là 433MHz
110 Điện năng tiêu thụ tức thời Nhận dòng điện (mA)
Dòng điện ở chế độ Sleep
Công suất phát tối đa
-144 -146 -147 Tốc độ truyền là 2.4kbps
0.3k 2.4k 19.2k Người dùng tự cấu hình
Chức năng các chân của Module RF Lora được trình bày trong bảng 2 – 2 dưới đây:
Bảng 2 - 2 Tên và chức năng các chân của Moddule RF LoRa (L Chengdu Ebyte
Hướng pin Sử dụng pin
1 M0 Đầu vào Phối hợp với M1 để xác định 4 chế độ làm việc của module
2 M1 Đầu vào Phối hợp với M0 để xác định 4 chế độ làm việc của module
3 RXD Đi vào Đầu vào cổng nối tiếp TTL, được kết nối với chân đầu ra TDX bên ngoài
Module này được cấu hình là đầu vào open-drain hoặc pull-up
4 TXD Đầu ra Đầu ra nối tiếp TTL, được kết nối với chân đầu vào
Có thể được cấu hình là đầu ra open-drain hoặc push-pull
5 AUX Đầu ra Được sử dụng để chỉ trạng thái làm việc của module
Người dùng đánh thức MCU bên ngoài và xuất ra mức thấp trong quá trình khởi tạo tự kiểm tra khi bật nguồn
Module này được cấu hình để đầu ra open-drain hoặc đầu ra push-pull
6 VCC Đi vào Tham chiếu dương cho nguồn điện module, dải điện áp: 2.3 đến 5.5V DC
7 GND Đi vào Nối đất
Chế độ hoạt động của Module RF LoRa được trình bày trong bảng 2 – 3:
Bảng 2 - 3 Các chế độ hoạt động của Module RF Lora SX1278 (L Chengdu Ebyte
Mode(0-3) M0 M1 Giới thiệu Nhận xét
0 Normal mode 0 0 Mở cổng nối tiếp, mở cổng không dây, truyền trong suốt
Máy thu phải ở chế độ
1 Wake-up mode 1 0 Mở cổng nối tiếp, mở wireless
Sự khác biệt chính giữa chế độ 0 và chế độ 2 là việc tự động thêm mã wake-up vào gói dữ liệu trước khi truyền đi, nhằm đánh thức bộ thu hoạt động trong chế độ 2.
Máy thu có thể ở chế độ 0
Máy thu có thể ở chế độ 1
Máy thu có thể ở chế độ 2
Việc nhận cổng nối tiếp bị đóng và mạng không dây ở chế độ đánh thức không khí là rất quan trọng Sau khi nhận được dữ liệu không dây, cần mở cổng nối tiếp để gửi dữ liệu một cách hiệu quả.
Máy phát phải ở chế độ 1
Không thể khởi chạy ở chế độ này
3 Sleep Mode 1 1 Module chuyển sang chế độ ngủ và có thể nhận các lệnh cài đặt tham số
➢ Phương thức truyền dữ liệu giữa các module với nhau
Truyền điểm - điểm cho phép các module khác kênh và địa chỉ có thể giao tiếp và trao đổi dữ liệu với nhau Để thực hiện điều này, thiết bị truyền cần gửi kèm thông tin về kênh và địa chỉ của thiết bị nhận khi truyền dữ liệu, như được minh họa trong hình 2 - 12 (L Chengdu Ebyte Electronic Technology Co., 2019).
Truyền broadcast là một module được cấu hình với địa chỉ FFFF, cho phép phát dữ liệu đến tất cả các module cùng kênh Ví dụ, khi địa chỉ module được đặt thành 0xFFFF và kênh là 0x04, module này hoạt động như một bộ phát Trong chế độ truyền liên tục, tất cả các module nhận trên kênh 0x04 có khả năng nhận dữ liệu để thực hiện mục đích phát sóng hiệu quả.
Module không dây E30 ~ E70 do Công ty TNHH Công nghệ Điện tử Thành Đô Ebyte phát triển, thường được sử dụng để kết nối với MCU Với giao diện UART (mức TTL) và đường truyền trong suốt, module này giúp người dùng dễ dàng vận hành Để cải thiện tính năng, Ebyte đã phát triển module chuyển đổi USB sang TTL E15-USB-T2 CP2102, cho phép kết nối với máy tính để tùy chỉnh các thông số như tốc độ, nguồn, kênh và địa chỉ Hình 2 – 14 minh họa việc kết nối module LoRa với mạch chuyển đổi USB sang TTL E-USB-T2 CP2102.
Hình 2 - 14 Module Lora được kết nối với mạch chuyển đổi USB
TỔNG QUAN VỀ PHẦN MỀM
Ngoài module cấu hình LoRa chúng ta cũng cần phải có phần mềm để cấu hình module LoRa đó là RF Setting V4.4 như hình 2 -27
Hình 2 - 27 Giao diện phần mềm RF Setting V4.4
Các bước cài đặt cấu hình cho module LoRa được trình bày trong bảng 2 – 12
Bảng 2 - 12 Các bước cài đặt tham số
Bước Hoạt động Sự miêu tả
1 Cài đặt trình điều khiển
Vui lòng cài đặt trình điều khiển bảng chuyển đổi USB (CP2102) trong gói dữ liệu cài đặt
Kéo các jumper M0 và M1 trên bảng chuyển đổi USB để chuyển sang chế độ M3 Sleep mode, đồng thời có thể lựa chọn nguồn 3,3V hoặc 5V cho các jumper.
Cắm module vào 7 chân trên bảng chuyển đổi và cắm bảng chuyển đổi vào USB của máy tính
4 Mở Port Mở phần mềm cài đặt tham số, chọn cổng phù hợp và nhấp vào “OpenPort"
5 Nhập giao diện Nhấp vào “GetParam”, giao diện được hiển thị trong hình 2 – 28
Nếu không đọc được, vui lòng kiểm tra xem module có ở M3 không hoặc trình điều khiển bảng chuyển đổi đã được cài đặt chưa
Để thay đổi cài đặt theo yêu cầu, hãy ghi lại các tham số cần thiết, điều chỉnh thông số và nhấn nút “SetParam” để lưu lại các thông số mới.
Thực hiện theo Bước 5 để đặt lại, nhấp vào
“ClosePort” khi cài đặt hoàn tất và kéo ra khỏi module
Hình 2 - 28 Giao diện hiển thị sau khi nhấn GetParam
Firebase là nền tảng phát triển ứng dụng web và di động toàn diện do Google cung cấp, hỗ trợ các nhà phát triển xây dựng, cải thiện và mở rộng quy mô ứng dụng hiệu quả Nền tảng này tích hợp nhiều dịch vụ và công cụ như quản lý cơ sở dữ liệu, xác thực người dùng, lưu trữ, lưu trữ đám mây, nhắn tin và phân tích.
Hình 2 - 29 Giao diện trang chủ Firebase
Giao diện Firebase bao gồm nhiều thành phần và tính năng chính như cơ sở dữ liệu thời gian thực, xác thực, Cloud Firestore, lưu trữ đám mây, chức năng đám mây, dịch vụ lưu trữ, phân tích, giám sát hiệu suất, cấu hình từ xa và nhắn tin qua đám mây Firebase cung cấp SDK và thư viện cho nhiều nền tảng và ngôn ngữ lập trình khác nhau, bao gồm Android, iOS, JavaScript, Unity và C++ Bảng điều khiển thân thiện với nhà phát triển cùng với tài liệu phong phú của Firebase giúp người dùng dễ dàng bắt đầu và tối ưu hóa quy trình phát triển.
2.3.3 Phần mềm Visual Studio Code
Visual Studio Code (VS Code) là một trình chỉnh sửa mã nguồn miễn phí do Microsoft phát triển, mang đến môi trường lập trình nhẹ và linh hoạt, hỗ trợ nhiều ngôn ngữ và khuôn khổ lập trình Phần mềm này nổi bật với các tính năng như tô sáng cú pháp, hoàn thành mã, gỡ lỗi, tích hợp Git, cùng với một hệ sinh thái mở rộng nhằm nâng cao hiệu suất làm việc Giao diện của VS Code được thiết kế trực quan và dễ sử dụng, như thể hiện trong hình 2 – 30.
Hình 2 - 30 Giao diện chính của phần mềm Visual Studio Code
Visual Studio Code có các tính năng như:
• Đa nền tảng: Mã VS có sẵn cho Windows, macOS và Linux, cho phép các nhà phát triển làm việc trên các hệ điều hành khác nhau
Trình soạn thảo này sở hữu khả năng mở rộng mạnh mẽ với một thị trường tiện ích phong phú, nơi có nhiều loại tiện ích do cộng đồng phát triển Điều này cho phép các nhà phát triển tùy chỉnh và mở rộng chức năng của trình soạn thảo để phù hợp với các ngôn ngữ, khung làm việc hoặc quy trình công việc cụ thể.
• Thiết bị đầu cuối tích hợp: Tích hợp một thiết bị đầu cuối để thực thi các công cụ dòng lệnh và tập lệnh trong cùng một giao diện
• IntelliSense: Cung cấp các đề xuất và hoàn thành mã thông minh dựa trên ngữ cảnh, giúp tăng tốc quá trình lập trình và giảm thiểu lỗi
Mã VS cung cấp khả năng gỡ lỗi cho nhiều ngôn ngữ lập trình, cho phép nhà phát triển thiết lập điểm dừng, kiểm tra và duyệt qua các biến trong mã của họ.
Kiểm soát phiên bản giúp tăng tốc quá trình lập trình bằng cách cung cấp các đề xuất và hoàn thành mã thông minh dựa trên ngữ cảnh, đồng thời giảm thiểu lỗi trong quá trình phát triển phần mềm.
Mã VS hỗ trợ phát triển cộng tác qua tính năng Live Share, cho phép nhiều nhà phát triển làm việc cùng nhau trong thời gian thực, chia sẻ mã và phối hợp trong các phiên sửa lỗi hiệu quả.
Tự động hóa các tác vụ giúp các nhà phát triển xác định và thực thi các tác vụ tùy chỉnh, từ đó tối ưu hóa quy trình phát triển Công cụ này cung cấp khả năng tự động hóa mạnh mẽ, cho phép chạy các tác vụ và xây dựng một cách hiệu quả.
Visual Studio Code đã thu hút sự chú ý của các nhà phát triển nhờ giao diện thân thiện, cùng với bộ tính năng phong phú hỗ trợ cho phát triển web, ứng dụng di động, đám mây và nhiều dự án lập trình khác.
THIẾT KẾ VÀ XÂY DỰNG HỆ THỐNG
PHÂN TÍCH HỆ THỐNG
Mô hình được thiết kế để đáp ứng các yêu cầu như sau:
• 4 Module thu thập dữ liệu để giám sát cháy rừng, được đặt tại 4 trạm khác nhau xử lý dữ liệu và gửi cảnh báo về trung tâm giám sát
Mô-đun nhận dữ liệu được đặt tại trung tâm giám sát nhằm kiểm tra và phát hiện cháy Đồng thời, dữ liệu thu thập được sẽ được đẩy lên nền tảng web (Firebase) để xử lý và phân tích.
• Trang web được tạo ra để hiển thị dữ liệu giám sát và liên tục cập nhật các thông tin
3.1.2 Sơ đồ thực thi minh họa
Dựa vào các yêu cầu trong phần 3.1.1 , nhóm thực hiện đề tài đề xuất sơ đồ thực thi minh họa như sau:
Hình 3 - 1 Sơ đồ thực thi minh họa của hệ thống
Hệ thống giám sát toàn cục bao gồm 4 trạm giám sát, được thiết kế để thu thập hình ảnh và dữ liệu, xử lý chúng và gửi cảnh báo về trung tâm giám sát Sử dụng công nghệ truyền sóng RF LoRa, các trạm này tự động xử lý thông tin và truyền tải về trạm giám sát trung tâm một cách hiệu quả.
3.1.2 Sơ đồ khối hệ thống
Theo sơ đồ khảo sát của hệ thống như hình 3 – 1 nhóm thiết kế sơ đồ khối hệ thống như sau:
Hình 3 - 2 Sơ đồ khối của hệ thống
Do hạn chế về kinh phí, nhóm chỉ thiết lập một trạm sử dụng Camera để xử lý hình ảnh, trong khi các trạm còn lại được thay thế bằng Arduino để thu thập và xử lý dữ liệu nhiệt độ và độ ẩm từ cảm biến DHT11.
Trạm giám sát sử dụng camera Raspberry để thu thập hình ảnh và áp dụng thư viện OpenCV cho việc xử lý hình ảnh và phát hiện cháy Đồng thời, các cảm biến tại trạm sẽ ghi nhận dữ liệu về nhiệt độ và độ ẩm Những thông tin này sẽ được gửi liên tục về trạm giám sát trung tâm qua ESP32, sau đó dữ liệu sẽ được truyền lên Firebase và hiển thị trên trang web Các vòng tròn với giá trị số 1, 2, 3 tương ứng với các thuật toán của từng khối.
THIẾT KẾ PHẦN CỨNG
3.2.1 Khối giám sát trung tâm
Hình 3 - 3 Sơ đồ khối giám sát trung tâm
Sơ đồ hình 3 - 3 khối giám sát trung tâm hoạt động như thiết bị trung gian, nhận dữ liệu từ khối thu thập dữ liệu và chuyển tiếp các giá trị này lên web.
• ESP32: có chức năng nhận dữ liệu, có cháy hay không cháy, nhiệt độ, độ ẩm từng trạm như thế nào Sau đó cập nhật lên Firebase
• Module RF Lora Sx1278: nhận dữ liệu từ khối thu thập dữ liệu bằng sóng RF
• Giao tiếp người dùng: hiển thị, giám sát dữ liệu cảnh báo
Hình 3 - 4 Sơ đồ nguyên lý khối giám sát trung tâm
Sơ đồ nguyên lý khối giám sát trung tâm mô tả các kết nối giữa ESP32 và module LoRa Cụ thể, chân M0 và M1 của module LoRa được kết nối với chân G19 và G21 của ESP32 Chân RX và TX của module LoRa tương ứng với chân G17 và G16 của ESP32 Ngoài ra, chân AUX của module được kết nối với chân G15 của ESP32, trong khi chân VCC và GND của module LoRa kết nối với chân V5 và GND của ESP32.
Hình 3 - 5 Lưu đồ giải thuật khối giám sát trung tâm
Lưu đồ hình 3 - 5 mô tả hoạt động của khối giám sát trung tâm, bắt đầu bằng việc khai báo các biến và thiết lập giao tiếp với Module LoRa Sau đó, cần khởi tạo kết nối wifi để có thể truyền dữ liệu lên Firebase khi có thông tin mới Cuối cùng, tiến hành kiểm tra xem có dữ liệu truyền đến hay không.
Khi có gói tin mới được truyền đến, ESP32 sẽ cập nhật thời gian nhận gói tin Nếu không có gói tin mới, hệ thống sẽ tiếp tục kiểm tra cho đến khi nhận được gói tin Sau khi nhận gói tin, ESP32 sẽ xử lý dữ liệu và xác định nguồn gốc của dữ liệu dựa vào biến phân loại trong cấu trúc Message Nếu gói tin thuộc một trong ba cảm biến hoặc camera, dữ liệu sẽ được gán theo đúng cấu trúc Message và gửi lên Firebase Ngược lại, nếu không khớp với biến phân loại, hệ thống sẽ loại bỏ gói tin đó.
3.2.2 Khối thu thập dữ liệu
3.2.2.1 Khối thu thập dữ liệu sử dụng cảm biến
Hình 3 - 6 Sơ đồ khối thu thập dữ liệu sử dụng cảm biến
Sơ đồ khối thu thập dữ liệu hình 3-6 mô tả quá trình lấy dữ liệu nhiệt độ và độ ẩm từ cảm biến DHT11, sau đó truyền tải thông tin này về khối giám sát trung tâm thông qua tín hiệu RF LoRa.
• Arduino: có chức năng lấy dữ liệu nhiệt độ và độ ẩm từ cảm biến DHT11 Sau đó gửi gói tin qua đường truyền không dây LoRa
• Cảm biến DHT11: Đọc dữ liệu nhiệt độ và độ ẩm từ môi trường
• Module RF LoRa Sx1278: gửi dữ liệu sang khối giám sát trung tâm bằng sóng RF
Hình 3 - 7 Sơ đồ nguyên lý khối thu thập dữ liệu sử dụng cảm biến
Sơ đồ nguyên lý khối giám sát trung tâm mô tả các kết nối giữa Arduino, module LoRa và cảm biến DHT11 Cảm biến DHT11 và module LoRa được nối với nguồn 5V của Arduino qua các chân VDD và VCC, trong khi chân GND của cả hai thiết bị cũng được kết nối với chân GND của Arduino Chân DATA của cảm biến DHT11 được điều khiển bởi chân 8, 9, 10 của Arduino, tương ứng với các trạm thu thập dữ liệu cảm biến 1, 2, 3 Module LoRa có chân M0, M1 được điều khiển bởi chân 7, 6 của Arduino, và chân RX, TX của module LoRa được kết nối với chân 3, 2 của Arduino Cuối cùng, chân AUX của module LoRa được nối với chân 5 của Arduino.
Hình 3 - 8 Lưu đồ giải thuật khối thu thập dữ liệu sử dụng cảm biến
Lưu đồ hình 3 - 8 mô tả quy trình hoạt động của khối thu thập dữ liệu với cảm biến DHT11 Đầu tiên, biến được khai báo và giao tiếp với module LoRa cùng cảm biến DHT11 được thiết lập Tiếp theo, dữ liệu về nhiệt độ và độ ẩm sẽ được thu thập từ cảm biến Sau khi đọc dữ liệu, hệ thống kiểm tra tính chính xác của giá trị nhận được Nếu việc đọc không thành công, thông báo “Failed to read from DHT sensor!” sẽ hiển thị trên cửa sổ Serial Monitor và không có dữ liệu nào được truyền đi Ngược lại, nếu đọc thành công, dữ liệu sẽ được tiếp tục xử lý.
Khi 43 biến đọc thành công, giá trị mới sẽ được gán vào các biến nhiệt độ và độ ẩm tương ứng, sau đó đóng gói theo kiểu dữ liệu Struct Message1 Arduino sẽ gửi gói tin chứa dữ liệu nhiệt độ và độ ẩm vừa được đóng gói đến nơi nhận thông qua LoRa Cuối cùng, sau khi gửi gói tin thành công, cửa sổ Serial Monitor sẽ hiển thị giá trị nhiệt độ, độ ẩm, trạng thái gửi gói thành công và thực hiện delay 5 phút trước khi đọc giá trị lần tiếp theo.
3.2.2.2 Khối thu thập dữ liệu sử dụng camera
Hình 3 - 9 Sơ đồ khối thu thập dữ liệu sử dụng camera
Sơ đồ khối thu thập dữ liệu sử dụng camera để giám sát cháy rừng, xử lý thông tin và gửi cảnh báo về khối giám sát trung tâm qua đường truyền không dây RF LoRa Các khối này được kết nối với nhau thông qua cổng USB của Raspberry.
Raspberry là bộ xử lý chính, có nhiệm vụ thu thập hình ảnh từ camera và xử lý để xác định có cháy hay không, cũng như mức độ cháy Sau khi phân tích, hệ thống sẽ gửi cảnh báo về khối giám sát trung tâm thông qua công nghệ LoRa.
• Camera: Lấy dữ liệu hình ảnh từ nơi đặt trạm camera
• Module RF LoRa Sx1278: gửi dữ liệu sang khối giám sát trung tâm bằng sóng RF
Khi sử dụng webcam Logitech C270 có độ phân 720p tương ứng với độ phân giải 1280x720 điểm ảnh Từ đó, đặt ngưỡng diện tích vùng cháy tạm thời khoảng
10000 điểm ảnh để bắt đầu xác định có cháy
Hình 3 - 10 Lưu đồ giải thuật khối thu thập dữ liệu sử dụng camera
Lưu đồ giải thuật khối thu thập dữ liệu từ camera hình 3 – 10 bắt đầu khi trạm camera được cấp nguồn và khởi động Camera sẽ giám sát bằng cách đọc khung hình video, chuyển đổi không gian màu sang HSV, xác định giá trị ngưỡng màu cho vùng cháy và tạo bộ lọc để phát hiện vùng cháy Cuối cùng, mức cảnh báo cháy được xác định dựa trên tỉ lệ diện tích vùng cháy so với diện tích khung hình.
Nếu tỷ lệ diện tích vùng cháy so với diện tích khung hình đọc được nhỏ hơn 0.01, thì sẽ được coi là không có cháy, và mức cảnh báo sẽ được xác định là NORMAL.
• Nếu tỉ lệ diện tích vùng cháy trên diện tích khung hình đọc được từ 0.01 đến 0.05 được xem là cháy nhỏ và sẽ cảnh báo mức cháy là SMALL
Khi tỷ lệ diện tích vùng cháy so với diện tích khung hình nằm trong khoảng từ 0.05 đến 0.1, đây được coi là mức cháy trung bình và sẽ kích hoạt cảnh báo cháy ở mức MEDIUM.
Nếu tỷ lệ diện tích vùng cháy trên diện tích khung hình đọc được lớn hơn 0.1, được coi là cháy lớn và sẽ nhận cảnh báo mức cháy là BIG.
Do chưa xác định được chính xác diện tích khu rừng mà camera có thể giám sát, các số liệu về tỷ lệ và diện tích vùng cháy chỉ mang tính tạm thời Trạm camera sẽ kiểm tra xem diện tích vùng cháy có lớn hơn 10.000px hay không; nếu có, sẽ gửi cảnh báo mức cháy dựa trên tỷ lệ diện tích vùng cháy so với diện tích khung hình qua LoRa Nếu không, cảnh báo mức NORMAL sẽ được gửi qua LoRa Trước khi gửi, các cảnh báo được đóng gói thành gói tin theo thứ tự: 3 byte đầu theo kiểu truyền broadcast, CAM01 và mức cảnh báo cháy Cuối cùng, gói tin được gửi đến khối giám sát trung tâm qua đường truyền không dây LoRa.
THIẾT KẾ PHẦN MỀM
3.3.1 Xây dựng hệ thống hiển thị trên Firebase
Nhóm đã chọn Firebase làm nền tảng quản lý cơ sở dữ liệu, lưu trữ và phân tích dữ liệu nhờ vào các tính năng nổi bật và kiến thức đã học Firebase là công cụ hữu ích giúp tăng tốc độ phát triển ứng dụng Để xây dựng hệ thống hiển thị trên Firebase, nhóm thực hiện các bước với các chức năng cụ thể.
Bước đầu tiên là tạo một dự án mới mang tên DA-TN nhằm quản lý cơ sở dữ liệu và lưu trữ dữ liệu từ các trạm thông qua công nghệ LoRa Giao diện của dự án trên Firebase được hiển thị trong hình 3 – 11.
Hình 3 - 11 Giao diện dự án Firebase
Bước 2: Sử dụng phần mềm Arduino IDE, thiết lập các thư viện cần thiết cho
ESP32 hỗ trợ nhiều tính năng như Firebase, LoRa, Wifi và truy vấn thông tin Để tận dụng các chức năng này, cần lập trình mã code để xử lý nhận và phân loại gói tin, thiết lập thời gian nhận gói tin, cũng như cập nhật dữ liệu và gửi gói tin lên cơ sở dữ liệu Firebase Mã code lập trình chi tiết được đính kèm trong phụ lục.
Bước 3: Có thể theo dõi các dữ liệu từ các trạm gửi về trên Firebase thông qua Realtime Database như giao diện hình 3 – 12 duới đây:
Hình 3 - 12 Giao diện theo dõi dữ liệu Firebase
3.3.2 Xây dựng hệ thống hiển thị trên trang web Áp dụng những kiến thức đã học về xây dựng hệ thống, thiết kế và hiển thị các giá trị trên trang web sử dụng phần mềm Visual Studio Code (VS Code) và Firebase, nhóm quyết định sử dụng phần mềm VS Code để xây dựng một hệ thống trong đề tài này Để xây dựng hệ thống hiển thị trên trang web, nhóm thực hiện các bước với các phần như sau:
Bước 1: Đầu tiên tạo và mở một dự án mới trong phần mềm Visual Studio
Code và thêm dự án vừa được tạo vào không gian làm việc của phần mềm như hình
3 – 13 Đồng thời tạo các file đuôi html để thiết kế trang web, đuôi css để định dạng trang web và đuôi js để tạo các tương trong trang web
Hình 3 - 13 Tạo các file để viết chương trình
Bước 2: Lên ý tưởng thiết kế trang web với các phần thiết yếu như tiêu đề đầu trang, thời gian thực, thanh điều hướng, khu vực hiển thị nội dung giám sát và tiêu đề cuối trang Bố cục nên được sắp xếp theo hình 3 - 14 để đảm bảo tính hợp lý và dễ dàng sử dụng.
Hình 3 - 14 Bố cục trang web
• Tiêu đề trang: Thiết kế dòng chữ “HỆ THỐNG GIÁM SÁT CHÁY RỪNG ” nằm cố định khi di chuyển trang lên xuống
• Thời gian thực: Hiển thị giờ hiện tạ theo bố cục giờ:phút:giây
• Khu vực hiển thị nội dung giám sát:
✓ Giám sát: hiển thị các dữ liệu giám sát hiện tại thu thập được từ các trạm cụ thể như hình 3 – 15
Hình 3 - 15 Bố cục phần giám sát
✓ Biểu đồ: hiển thị biểu đồ tổng thể giám sát nhiệt độ và độ ẩm trong ngày của các cảm biến cụ thể như hình 3 – 16
Hình 3 - 16 Bố cục phần biểu đồ
Bảng dữ liệu hiển thị thông tin về nhiệt độ và độ ẩm trong ngày từ các cảm biến, bao gồm các thông số như ngày, giờ, nhiệt độ và độ ẩm tại từng thời điểm thu thập dữ liệu, như minh họa trong hình 3 – 17.
Hình 3 - 17 Bố cục phần Bảng
Thanh điều hướng bao gồm ba nút nhấn giúp người dùng dễ dàng chuyển hướng giữa các thông tin giám sát, bao gồm giám sát, biểu đồ và bảng Thanh này được cố định, cho phép người dùng di chuyển lên xuống trang web mà không bị mất vị trí.
• Tiêu đề cuối trang hiển thị: thông tin liên hệ, tương tác, …
Bước 3: Viết mã cho file index.html, Giamsat.css và Giamsat.js để thiết kế trang web theo yêu cầu Nội dung mã chi tiết được cung cấp trong phần phụ lục của Visual Studio Code.
Trong file index.html, các thẻ HTML cơ bản như , , , , , , và được sử dụng để cấu trúc trang web Thẻ xác định phần tử gốc, trong khi chứa thông tin đầu trang như tiêu đề và metadata Thẻ chỉ định tiêu đề hiển thị trên thanh tiêu đề của trình duyệt, và chứa nội dung chính của trang Thẻ định nghĩa phần đầu trang, tạo vùng điều hướng, và giúp nhóm các phần tử lại với nhau, tạo ra các khối chức năng cho nội dung.
để chèn ảnh vào trang web, để tạo một liên kết đến một trang web khác,…
Giamsat.css cung cấp các thuộc tính đơn giản để thiết kế vị trí, chiều dài ngang và chiều cao của trang web Nó cho phép người dùng tùy chỉnh nút nhấn, chia cột, thiết lập phông chữ, màu chữ và màu nút nhấn một cách dễ dàng.
Giamsat.js thiết lập kết nối với file index.html và Firebase để truy xuất dữ liệu, đồng thời tương tác với các biến hiển thị trong index.html Ngoài ra, Giamsat.js còn hỗ trợ vẽ biểu đồ, tạo bảng, và thiết lập ngày giờ cũng như thời gian hiện tại.
Ngoài các tệp đã đề cập, còn có thêm hai tệp Bang.html và Bieudo.html Hãy tạo liên kết giữa các trang này bằng cách sử dụng thẻ trong thanh điều hướng để kết nối chúng với nhau.
KẾT QUẢ THỰC HIỆN
KẾT QUẢ SAU KHI THI CÔNG VÀ THIẾT KẾ
4.1.1.1 Khối giám sát trung tâm Đối với khối giám sát trung tâm sử dụng ESP32 để kết nối với wifi, nhận dữ liệu từ trạm thu thập dữ liệu truyền đến và xử lý gói tin sau đó có thể hiển thị gói tin trên Firebase Từ Firebase lấy kết quả giám sát được hiển thị kết trên trang web đã được thiết kế Mô hình được thiết kế và thi công như hình 4 - 1
Hình 4 - 1 Mô hình mạch khối giám sát trung tâm
4.1.1.2 Khối thu thập dữ liệu sử dụng cảm biến và camera
Quá trình truyền nhận dữ liệu từ cảm biến nhiệt độ và độ ẩm DHT11 sử dụng module LoRa để truyền tải thông tin từ ba cảm biến DHT11, mỗi cảm biến được kết nối với một Arduino tại ba vị trí khác nhau trong khu rừng Dữ liệu được gửi về khối điều khiển trung tâm qua LoRa Các chân tín hiệu của từng cảm biến được kết nối với các chân khác nhau của Arduino, giúp phân biệt mạch truyền trong quá trình thi hành và nạp code Cảm biến 1, cảm biến 2 và cảm biến 3 lần lượt được nối với chân 8, chân 9 và chân 10 của Arduino 1, Arduino 2 và Arduino 3 Mô hình được thiết kế và thi công như hình 4 – 2.
Hình 4 - 2 Mô hình mạch khối thu thập dữ liệu sử dụng cảm biến DHT11
Quá trình truyền dữ liệu từ camera thông qua module LoRa kết nối trực tiếp vào cổng USB của Raspberry Raspberry nhận nhiệm vụ lấy và xử lý hình ảnh từ camera, sau đó gửi cảnh báo qua LoRa đến trung tâm giám sát Mô hình thiết kế và thi công được thể hiện trong hình 4 – 3.
Hình 4 - 3 Mô hình mạch khối thu thập dữ liệu sử dụng camera
4.1.2 Kết quả xử lý ảnh của khối thu thập dữ liệu sử dụng camera
Khi hệ thống tại trạm thu thập dữ liệu được cấp nguồn, camera sẽ tự động mở để giám sát và mỗi 30 giây sẽ chụp hình để phân tích Do không thể thử nghiệm trong rừng thực tế, nhóm đã chọn khuôn viên Trường Đại học Sư phạm Kỹ thuật TPHCM để kiểm tra khả năng xử lý ảnh Để ghi lại tất cả các trường hợp cháy rừng, nhóm sử dụng điện thoại thông minh để trình chiếu hình ảnh cho camera Trong trường hợp không có cháy, camera sẽ chụp hình trực tiếp phía trước tòa nhà trung tâm và gửi gói tin cảnh báo “NORMAL” về trạm giám sát trung tâm.
Camera giám sát sử dụng hình ảnh từ điện thoại thông minh để phát hiện các trường hợp cháy nhỏ, trung bình và lớn Bằng cách phân tích tỉ lệ diện tích điểm ảnh có cháy so với tổng diện tích hình ảnh, camera có thể xác định mức độ cháy một cách chính xác Dữ liệu giám sát cho thấy mức độ cảnh báo ở trạng thái "BÌNH THƯỜNG".
Khi camera giám sát phát hiện hình ảnh với tỷ lệ vùng cháy từ 0.01 đến dưới 0.05, hệ thống sẽ gửi cảnh báo “SMALL” đến trạm giám sát trung tâm.
Hình 4 - 5 Dữ liệu giám sát của Camera cảnh báo ở mức độ“SMALL”
Khi camera giám sát ghi hình ảnh với tỷ lệ vùng cháy từ 0.05 đến dưới 0.1, hệ thống sẽ tự động gửi gói tin cảnh báo "MEDIUM" đến trạm giám sát trung tâm.
Hình 4 - 6 Dữ liệu giám sát của Camera cảnh báo ở mức độ“MEDIUM”
Khi camera giám sát ghi nhận tỉ lệ vùng chảy từ 0.1 trở lên, hệ thống sẽ tự động gửi gói tin cảnh báo “BIG” đến trạm giám sát trung tâm.
Hình 4 - 7 Dữ liệu giám sát của Camera cảnh báo ở mức độ“BIG”
4.1.3 Kết quả trang web giám sát tổng thể
Sau khi trạm giám sát trung tâm gửi dữ liệu lên Firebase, trang web sẽ tự động lấy và hiển thị các dữ liệu thu thập được cùng với thời gian tương ứng mới nhất trên trang giám sát tổng quát cho tất cả khu vực trong hệ thống Các thông số dữ liệu được cập nhật liên tục, với tần suất 5 phút một lần cho các cảm biến và 30 giây một lần cho camera.
Hình 4 - 8 Giao diện trang web giám sát tổng quát
Để xem biểu đồ tổng thể về thời gian giám sát của các trạm thu thập thông tin trong ngày, bạn chỉ cần chuyển sang chế độ xem bằng cách nhấn vào mục tương ứng.
Trên thanh điều hướng của trang web, mục "BIỂU ĐỒ" cho phép người dùng xem biểu đồ đường của từng trạm thu thập dữ liệu sử dụng cảm biến (hình 4 – 9) Từ các biểu đồ này, người dùng có thể so sánh giá trị đo được từ từng trạm với nhiệt độ và độ ẩm theo dõi từ Google, cũng như nhiệt độ từ máy đo kỹ thuật số Trong quá trình thu thập dữ liệu, các ngày không có dữ liệu sẽ không được hiển thị trên biểu đồ, tạo ra khoảng trống thay vì hiển thị giá trị.
Hình 4 - 9 Giao diện trang web giám sát theo dạng biểu đồ
Trang web tự động lấy dữ liệu từ Firebase để tạo bảng giám sát nhiệt độ và độ ẩm theo thời gian trong ngày, như minh họa trong hình 4 – 10 Dữ liệu được cập nhật trên Firebase sẽ được thêm vào bảng một cách tự động trong chế độ xem.
"Bảng" trên thanh tác vụ sẽ không hiển thị dữ liệu trong những ngày hệ thống không ghi nhận thông tin, mà chỉ tạo ra một bảng trống không có giá trị.
Hình 4 - 10 Giao diện trang web giám sát theo dạng bảng
Khi hệ thống hoạt động, trang web sẽ tự động vẽ bảng các dữ liệu thu thập được trong một ngày như hình 4 -11 :
Hình 4 - 11 Bảng hiển thị trên trang web của cảm biến 1
KẾT QUẢ THỰC NGHIỆM Ở CÁC NGỮ CẢNH KHÁC NHAU 58
Nhóm nghiên cứu đã chọn Trường Đại học Sư phạm Kỹ thuật làm địa điểm thực nghiệm hệ thống giám sát cháy rừng do không thể thực hiện trong môi trường rừng Đồng thời, nhóm thu thập dữ liệu từ các trạm và sử dụng máy đo nhiệt độ và độ ẩm kỹ thuật số RS-WS-WIFI-Y2 để phân tích, đánh giá độ chính xác của các trạm thu thập dữ liệu sử dụng cảm biến.
4.2.1 Ngữ cảnh 1: Các trạm thu thập dữ liệu đặt cách trạm giám sát trung tâm 10m Ở ngữ cảnh 1, nhóm thực nghiệm từ 12 giờ 30 phút đến 13 giờ 03 phút ngày 17/06/2023 Đặt vị trí trạm giám sát trung tâm tại điểm A (tọa độ 10.85085, 106.77258) và các trạm thu thập dữ liệu dùng cảm biến 1, 2 và 3 lần lượt đặt tại các điểm B (tọa độ 10.85076, 106.77257), điểm C (tọa độ 10.85077, 106.77253) và điểm
D (tọa độ 10.85086, 106.77249) như hình 4 – 12 dưới đây
Hình 4 - 12 Vị trí đặt các trạm thu thập dữ liệu cách 10m so với trạm giám sát trung tâm
Khi hệ thống hoạt động, dữ liệu từ các gói tin thu thập được từ các trạm cảm biến sẽ được gửi lên Firebase, như thể hiện trong Hình 4 – 13.
Hình 4 - 13 Kết quả dữ liệu thu thập được trong ngữ cảnh 1
Dữ liệu thu thập từ các trạm cảm biến được gửi về một cách ổn định với chu kỳ 5 phút Tuy nhiên, một gói tin từ cảm biến 1 vào lúc 12 giờ 55 phút đã bị trễ so với thời gian dự kiến.
Dựa vào các số liệu thu thập từ hình 4 – 12, chúng tôi đã sử dụng dữ liệu từ Google và máy đo nhiệt độ, độ ẩm RS-WS-WIFI-Y2 để xây dựng biểu đồ đánh giá hệ thống Trong biểu đồ, đường màu đỏ thể hiện dữ liệu từ cảm biến 1, đường màu xanh đại diện cho dữ liệu từ máy đo RS-WS-WIFI-Y2, và đường màu vàng phản ánh dữ liệu theo dõi từ Google.
Hình 4 - 14 Biểu đồ so sánh nhiệt độ của cảm biến 1 trong 2 ngữ cảnh đầu
Dựa vào hình 4 – 14 trong phần biểu đồ phân tích, chúng ta có thể so sánh dữ liệu nhiệt độ trong ngữ cảnh 1 từ 12 giờ 33 phút đến 13 giờ.
So sánh dữ liệu nhiệt độ từ các nguồn khác nhau cho thấy sự chênh lệch giữa dữ liệu từ cảm biến, máy đo và Google là không đáng kể Chênh lệch lớn nhất xảy ra vào lúc 12 giờ 43 phút, với nhiệt độ từ cảm biến là 31.3 oC và từ máy đo là 32 oC, chênh lệch khoảng ±0.7 oC Tương tự, trong khoảng thời gian từ 12 giờ 43 phút đến 13 giờ, nhiệt độ từ cảm biến cũng là 31.3 oC, trong khi nhiệt độ theo dõi từ Google là 32 oC, với chênh lệch tương tự khoảng ±0.7 oC.
Hình 4 - 15 Biểu đồ so sánh độ ẩm của cảm biến 1 trong 2 ngữ cảnh đầu
Dựa vào hình 4 – 15 có thể thấy độ ẩm khi đo bằng cảm biến 1, trong ngữ cảnh
Từ 12 giờ 33 phút đến 13 giờ, chênh lệch giữa độ ẩm đo được từ cảm biến và máy đo khá lớn, với sai số tối đa lên đến ±19.2% tại thời điểm 12 giờ 33 phút, khi độ ẩm cảm biến ghi nhận là 86% và máy đo là 69.1% Sau thời gian này, cảm biến 1 dần ổn định, với sai số giảm từ ±9.2% xuống còn ±3%.
Hình 4 - 16 Biểu đồ so sánh nhiệt độ của cảm biến 2 trong 2 ngữ cảnh đầu
Hình 4 - 17 Biểu đồ so sánh độ ẩm của cảm biến 2 trong 2 ngữ cảnh đầu
Dựa vào hình 4 – 16 và hình 4 – 17, cảm biến 2 cho thấy độ chính xác cao trong việc thu thập nhiệt độ và độ ẩm so với máy đo thực tế Cụ thể, sai số lớn nhất của cảm biến 2 là 32.3 o C, chỉ chênh lệch ±0.4 o C so với giá trị thực tế 31.9 o C vào lúc 12 giờ 48 phút Đồng thời, so với dữ liệu từ Google, sai số lớn nhất đạt ±1.3 o C vào thời điểm 13 giờ 03 phút, khi cảm biến ghi nhận 32.3 o C và dữ liệu Google là 31 o C.
Cảm biến 2 ghi nhận độ ẩm cao nhất là 68%, với sai số ±1,2% so với giá trị thực tế 66,8% đo được vào lúc 12 giờ 33 phút Ngoài ra, độ ẩm tối đa mà cảm biến 2 thu thập là 67%, có sai số lên đến ±7% so với dữ liệu độ ẩm theo dõi từ Google, là 74%.
Hình 4 - 18 Biểu đồ so sánh nhiệt độ của cảm biến 3 trong 2 ngữ cảnh đầu
Hình 4 - 19 Biểu đồ so sánh độ ẩm của cảm biến 3 trong 2 ngữ cảnh đầu
Cảm biến 3 cho thấy độ chính xác tương đối cao trong việc thu thập nhiệt độ và độ ẩm, với sai số tối đa là ±0.4°C so với đo thực tế từ máy đo và ±1.3°C so với dữ liệu từ Google Đối với độ ẩm, sai số cao nhất là ±6.2% so với máy đo thực tế và ±3% so với dữ liệu theo dõi từ Google.
4.2.2 Ngữ cảnh 2: Các trạm thu thập dữ liệu đặt cách trạm giám sát trung tâm 40m Ở ngữ cảnh 2, nhóm thực nghiệm trong khoảng thời gian từ 14 giờ 40 phút đến 15 giờ 40 phút ngày 17/06/2023 Đặt vị trí giám sát trung tâm tại điểm A ( Tọa độ 10.85076, 106.77258) và các trạm thu thập dữ liệu dùng cảm biến 1, 2 và 3 lần lượt đặt tại các điểm B (tọa độ 10.85080, 106.77221), điểm C (tọa độ 10.85094,
106.77226), điểm D (tọa độ 10.85108, 106.77241) như hình 4 - 20
Hình 4 - 20 Vị trí đặt các trạm thu thập dữ liệu cách 40m so với trạm giám sát trung tâm
Khi hệ thống hoạt động, dữ liệu về nhiệt độ và độ ẩm sẽ được thu thập từ các trạm B, C và D Sau đó, dữ liệu này sẽ được đóng gói và truyền đến trạm nhận để upload lên Firebase, như minh họa trong hình 4 - 21.
Hình 4 - 21 Kết quả dữ liệu thu được ở ngữ cảnh 2
Dữ liệu thu thập từ các trạm sử dụng cảm biến được gửi về ổn định với chu kỳ 5 phút Tuy nhiên, tại cảm biến 1 ở vị trí tọa độ B, có hai dữ liệu bị mất trong quá trình truyền nhận vào thời gian 14 giờ 49 phút và 15 giờ 14 phút.
4.2.3 Ngữ cảnh 3: Các trạm thu thập dữ liệu đặt cách trạm giám sát trung tâm 120m Ở ngữ cảnh 3, nhóm thực nghiệm trong khoảng thời gian từ 14 giờ 25 phút đến
Vào lúc 15 giờ 32 phút ngày 18/06/2023, nhóm nghiên cứu đã quyết định đặt cả ba trạm thu dữ liệu tại cùng một vị trí để thuận tiện cho việc lắp đặt và đảm bảo chất lượng tốt nhất cho quá trình truyền nhận dữ liệu từ xa Vị trí giám sát trung tâm được đặt tại điểm A (Tọa độ 10.850768, 106.77257), trong khi các trạm thu thập dữ liệu sử dụng cảm biến 1, 2 và 3 được đặt tại điểm B (Tọa độ 10.85092, 106.77148), như thể hiện trong hình 4 - 22.
Hình 4 - 22 Vị trí đặt các trạm thu thập dữ liệu cách 120m so với trạm giám sát trung tâm
ĐÁNH GIÁ HỆ THỐNG
ƯU ĐIỂM
- Hệ thống có thể truyền nhận dữ liệu thu thập được trong khoảng thời gian ngắn
- Trạm thu thập dữ liệu sử dụng camera có thể nhận diện được vùng cháy để gửi cảnh báo
- Các cảm biến nhiệt độ, độ ẩm thu thập dữ liệu tương đối chính xác và độ nhạy cao
Giao diện Web cung cấp hiển thị rõ ràng các dữ liệu thu thập từ các trạm, với tốc độ cập nhật nhanh chóng và dễ dàng sử dụng, giúp việc giám sát trở nên hiệu quả hơn.
- Khi trạm giám sát trung tâm nhận được gói tin, các dữ liệu trong gói tin được xử lý và cập nhật lên Firebase nhanh chóng.
NHƯỢC ĐIỂM
- Khoảng cách truyền nhận dữ liệu quá ngắn so với lý thuyết của module LoRa
- Luôn phải đảm bảo đường truyền kết nối WiFi tại trạm giám sát trung tâm
Các cảm biến hiện nay có tuổi thọ ngắn và chưa được trang bị khả năng chống chịu với điều kiện thời tiết khắc nghiệt như nắng gắt, mưa, bão Bên cạnh đó, độ chính xác của chúng vẫn chưa đạt yêu cầu cao.
Trong quá trình truyền gói tin từ các trạm thu thập dữ liệu đến trạm giám sát trung tâm, có thể xảy ra tình trạng phân tán gói dữ liệu trong môi trường thực nghiệm Điều này dẫn đến việc gói tin không đến được trạm đích hoặc khi đến nơi thì không còn nguyên vẹn.
- Nguồn điện và ăng-ten của từng trạm chưa ổn định làm ảnh hưởng đến tốc độ và khả năng truyền nhận các gói tin