1. Trang chủ
  2. » Luận Văn - Báo Cáo

báo cáo môn học iot và ứng dụng chủ đề vườn cây thông minh

19 1 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 19
Dung lượng 1,8 MB

Nội dung

Qua đó, người dùng có thể theo dõi quá trình sinhtrưởng của cây.Ở chế độ thủ công, hệ thống cung cấp tùy chọn bật/tắt đèn hay máy bơm bằngtay và từ xa thông qua trình duyệt web.1.3 Yêu c

Trang 1

ĐẠI HỌC BÁCH KHOA HÀ NỘI

TRƯỜNG CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

BÁO CÁO MÔN HỌC IOT VÀ ỨNG DỤNG

CHỦ ĐỀ: VƯỜN CÂY THÔNG MINH

NGUYỄN TIẾN DẠT 20194243

VŨ DUY HIỆP 20194279

NGUYỄN MINH NGHĨA 20204844

GVHD TS NGUYỄN ĐÌNH THUẬN

Trang 2

Hà Nội, 29/12/2023

2

Trang 3

Table of contents

CHAPTER 1 ĐẶC TẢ YÊU CẦU 1

1.1 Mục đích 1

1.2 Hành vi 1

1.3 Yêu cầu quản lý hệ thống 1

1.4 Yêu cầu phân tích dữ liệu 1

1.5 Yêu cầu triển khai ứng dụng 1

1.6 Yêu cầu bảo mật 1

CHAPTER 2 CÁC CÔNG NGHỆ SỬ DỤNG 2

2.1 ReactJS 2

2.2 Firebase 2

2.3 NodeJS 3

CHAPTER 3 ĐẶC TẢ TIẾN TRÌNH 5

3.1 Đèn LED 5

3.2 Máy bơm nước 5

CHAPTER 4 ĐẶC TẢ MÔ HÌNH MIỀN 6

CHAPTER 5 ĐẶC TẢ MÔ HÌNH THÔNG TIN 7

5.1 LED 7

5.2 MÁY BƠM 7

CHAPTER 6 THÔNG SỐ DỊCH VỤ 8

6.1 LED 8

6.2 Máy bơm 9

CHAPTER 7 ĐẶC TẢ CẤP ĐỘ IOT 10

CHAPTER 8 ĐẶC TẢ THÀNH PHẦN CHỨC NĂNG 11

Trang 4

CHAPTER 10 TÍCH HỢP THIẾT BỊ 13

10.1 Các thiết bị được sử dụng trong hệ thống 13

10.2 Sơ đồ mạch 13

CHAPTER 11 PHÁT TRIỂN ỨNG DỤNG 14

11.1 Đối với đèn LED 14

11.2 Đối với máy bơm 14

Trang 5

CHAPTER 1 ĐẶC TẢ YÊU CẦU 1.1 Mục đích

Một hệ thống cho phép người dùng có thể đo lường chính xác các thông tin về nhiệt độ, độ ẩm, ánh sáng, độ ẩm đất của cây trồng Bên cạnh đó, người dùng còn

có thể tự động hoặc thủ công việc tắt, bật đèn LED, máy bơm nước tùy theo người dùng nhằm đảm bảo cho cây trồng sinh trưởng tốt

Hệ thống cũng cung cấp cho người dùng khả năng nhận biết bệnh của cây trồng thông qua mô hình học máy Qua đó, người dùng có thể theo dõi quá trình sinh trưởng của cây

1.2 Hành vi

Hệ thống vườn cây thông minh nên có chế độ tự động và thủ công với các chức năng về đèn LED hay máy bơm nước

Ở chế độ tự động, hệ thống đo mức độ ánh sáng trong vườn và bật đèn khi trời tối, tắt đèn khi trời sáng Tương tự với máy bơm nước khi sẽ tự chạy nếu độ ẩm của đất ở ngưỡng thấp và tắt khi độ ẩm đất cao

Ở chế độ thủ công, hệ thống cung cấp tùy chọn bật/tắt đèn hay máy bơm bằng tay và từ xa thông qua trình duyệt web

1.3 Yêu cầu quản lý hệ thống

Hệ thống cần cung cấp chức năng giám sát và điều khiển từ xa

Ở đây, hệ thống cho phép người dùng sử dụng trang web để tiến hành giám sát các thông số liên quan đến việc sinh trưởng của cây, qua đó có thể điều khiển các thiết bị từ xa để hỗ trợ cho cây

1.4 Yêu cầu phân tích dữ liệu

Hệ thống phải thực hiện phân tích dữ liệu cục bộ

Dữ liệu sẽ được đọc từ các cảm biến, lưu giữ dữ liệu vào trong cơ sở dữ liệu, tiến hành phân tích, loại bỏ những dữ liệu không hợp lệ

1.5 Yêu cầu triển khai ứng dụng

Ứng dụng phải được triển khai cục bộ trên thiết bị nhưng có thể truy cập được

từ xa

1.6 Yêu cầu bảo mật

Hệ thống phải có khả năng xác thực người dùng cơ bản

Trang 6

CHAPTER 2 CÁC CÔNG NGHỆ SỬ DỤNG

2.1 ReactJS

ReactJS là một thư viện JavaScript mã nguồn mở được phát triển bởi Facebook Được giới thiệu lần đầu tiên vào năm 2013, ReactJS đã trở thành một trong những công cụ phổ biến nhất cho việc xây dựng giao diện người dùng (UI) tương tác trên web

Dưới đây là một số đặc điểm quan trọng của ReactJS:

•Component-Based Architecture (Kiến trúc dựa trên thành phần): ReactJS sử dụng mô hình kiến trúc dựa trên thành phần, nơi mọi ứng dụng được xây dựng

từ các thành phần độc lập Các thành phần này có thể tái sử dụng và kết hợp

để tạo thành các ứng dụng phức tạp

•Virtual DOM (DOM Ảo): React sử dụng một cơ chế gọi là Virtual DOM để tối ưu hóa hiệu suất Thay vì cập nhật DOM thực trực tiếp, React tạo ra một bản sao ảo của DOM, thực hiện các thay đổi trên nó, sau đó so sánh với DOM thực tế để chỉ cập nhật những phần cần thiết Điều này giúp giảm độ trễ và tăng tốc độ hiển thị của ứng dụng

•JSX (JavaScript XML): JSX là một phần quan trọng của React, cho phép viết

mã HTML trong JavaScript JSX giúp tạo ra mã nguồn dễ đọc hơn và dễ duy trì hơn, đồng thời cung cấp khả năng tích hợp logic JavaScript vào mã HTML

•One-Way Data Binding (Ràng buộc dữ liệu một chiều): React sử dụng mô hình ràng buộc dữ liệu một chiều, điều này có nghĩa là dữ liệu chỉ di chuyển theo một hướng, từ thành phần cha xuống thành phần con Điều này giúp quản lý trạng thái ứng dụng một cách dễ dàng hơn

•Ecosystem đa dạng: React có một cộng đồng mạnh mẽ và phong phú, với nhiều thư viện và công cụ bổ sung như Redux (quản lý trạng thái ứng dụng), React Router (định tuyến), và nhiều thành phần khác giúp mở rộng khả năng

và tính linh hoạt của React

2.2 Firebase

Firebase là một nền tảng phát triển ứng dụng di động và web được cung cấp bởi Google Firebase cung cấp một loạt các dịch vụ và công cụ để giúp các nhà phát triển xây dựng ứng dụng một cách nhanh chóng và dễ dàng, giảm bớt khối lượng công việc cần thiết cho việc quản lý cơ sở dữ liệu, xác thực người dùng, hosting, và nhiều tính năng khác Dưới đây là một số đặc điểm chính của Firebase:

2

Trang 7

CHƯƠNG 2 CÁC CÔNG NGHỆ SỬ DỤNG

•Realtime Database: Firebase cung cấp một cơ sở dữ liệu thời gian thực (Real-time Database) làm cho việc đồng bộ dữ liệu giữa các thiết bị di động và web trở nên dễ dàng Dữ liệu được cập nhật ngay lập tức khi có thay đổi, giúp xây dựng các ứng dụng có tính năng thời gian thực

•Authentication (Xác thực): Firebase hỗ trợ xác thực người dùng với nhiều phương tiện như email/password, Google, Facebook, Twitter và nhiều phương thức khác Điều này giúp giảm bớt công việc xây dựng và quản lý hệ thống xác thực

•Hosting: Firebase Hosting cung cấp dịch vụ lưu trữ web tốc độ cao với hệ thống CDN (Content Delivery Network) tích hợp sẵn Việc triển khai và quản

lý ứng dụng web trở nên đơn giản

•Cloud Functions: Firebase Cloud Functions là một dịch vụ cho phép bạn triển khai và chạy mã JavaScript hoặc TypeScript trực tiếp trên nền tảng Firebase Điều này giúp thực hiện các chức năng máy chủ mà không cần phải duy trì máy chủ riêng biệt

•Cloud Firestore: Firebase cung cấp Cloud Firestore, một cơ sở dữ liệu NoSQL linh hoạt cho phép lưu trữ và truy xuất dữ liệu của ứng dụng một cách hiệu quả

•Cloud Messaging: Firebase Cloud Messaging (FCM) cung cấp dịch vụ thông báo đa nền tảng cho việc giữ kết nối với người dùng thông qua thông báo push trên di động và web

•Machine Learning: Firebase cung cấp nền tảng Machine Learning (ML) để tích hợp tính năng máy học vào ứng dụng của bạn

Firebase rất phổ biến trong cộng đồng phát triển do tính tiện ích và tính toàn diện của nó Nó được ưa chuộng đặc biệt trong các dự án khởi nghiệp và ứng dụng di động nhanh chóng phát triển

2.3 NodeJS

Node.js là một môi trường thực thi mã nguồn mở được xây dựng trên JavaScript

và được sử dụng để phát triển ứng dụng web có khả năng mở rộng Nó chủ yếu được sử dụng để xây dựng các ứng dụng mạng thời gian thực, đặc biệt là các ứng dụng có độ chuyển động cao và khả năng mở rộng tốt

•**JavaScript Everywhere:** Node.js cho phép sử dụng JavaScript cả ở phía máy chủ (server-side) và ở phía người dùng (client-side), tạo điều kiện cho việc chia sẻ mã nguồn giữa phía máy chủ và phía người dùng, giảm độ phức tạp của việc duy trì và phát triển ứng dụng

Trang 8

CHƯƠNG 2 CÁC CÔNG NGHỆ SỬ DỤNG

•**Asynchronous I/O:** Node.js sử dụng mô hình xử lý không đồng bộ (asyn-chronous) để xử lý nhiều kết nối cùng một lúc mà không làm chậm quá trình thực thi Điều này làm cho Node.js trở thành lựa chọn lý tưởng cho việc xây dựng ứng dụng mạng thời gian thực, như chat, trò chơi trực tuyến, và các ứng dụng cần xử lý đồng thời nhiều sự kiện

•**V8 JavaScript Engine:** Node.js sử dụng V8 JavaScript Engine của Google, giúp thực thi mã JavaScript nhanh chóng và hiệu quả V8 được tối ưu hóa để chạy trên môi trường máy chủ, giúp Node.js đạt được hiệu suất cao

•**Nền Tảng Mở Rộng và Cộng Đồng Lớn:** Node.js có một cộng đồng phát triển mạnh mẽ và đa dạng Cộng đồng này đóng góp vào việc phát triển các thư viện và framework như Express.js, Socket.io, và nhiều công cụ hỗ trợ khác, giúp Node.js trở thành một nền tảng mở rộng và linh hoạt

•**Package Manager (npm):** npm là một trình quản lý gói (package manager) mạnh mẽ đi kèm với Node.js, cho phép người phát triển dễ dàng cài đặt, quản

lý và chia sẻ các thư viện và công cụ mở rộng

Node.js được sử dụng rộng rãi trong cả ứng dụng web, backend, và các ứng dụng mạng thời gian thực Nó thường được chọn để xây dựng các dự án có khả năng mở rộng, đồng thời giúp tối ưu hóa hiệu suất và đơn giản hóa quy trình phát triển

4

Trang 9

CHAPTER 3 ĐẶC TẢ TIẾN TRÌNH

3.1 Đèn LED

3.2 Máy bơm nước

Trang 10

CHAPTER 4 ĐẶC TẢ MÔ HÌNH MIỀN

6

Trang 11

CHAPTER 5 ĐẶC TẢ MÔ HÌNH THÔNG TIN

5.1 LED

5.2 MÁY BƠM

Trang 12

CHAPTER 6 THÔNG SỐ DỊCH VỤ 6.1 LED

8

Trang 13

CHƯƠNG 6 THÔNG SỐ DỊCH VỤ

6.2 Máy bơm

Trang 14

CHAPTER 7 ĐẶC TẢ CẤP ĐỘ IOT

10

Trang 15

CHAPTER 8 ĐẶC TẢ THÀNH PHẦN CHỨC NĂNG

1 loT device tương ứng với the Device FG (sensors, actuators devices, comput-ing devices) và the Management FG (device management)

2 Resources tương ứng với the Device FG (on-device resource) và Communl-cationFG (communication APis và protocols)

3 Controller service tương ứng với the Services FG (natwe service) Web Ser-vices tương ứng với SerSer-vices FG (web serSer-vices)

4 Web Services tương ứng với Services FG (web services)

5 Database tương ứng với the Management FG (Database management) và Se-curity FG (database seSe-curity)

6 Application tương ứng với the Application FG (web application, application

và database servers), Management FG (app management) và Security FG (appse-curity)

Trang 16

CHAPTER 9 ĐẶC TẢ THÀNH PHẦN HOẠT ĐỘNG

12

Trang 17

CHAPTER 10 TÍCH HỢP THIẾT BỊ

10.1 Các thiết bị được sử dụng trong hệ thống

- Module ESP32 WROOM

- Cảm biến nhiệt độ độ ẩm DHT11

- Cảm biến độ ẩm đất

- Cảm biến cường độ ánh sáng BH1750 FVI

- Relay 5V kích mức thấp

- Máy bơm nước mini

- Màn hình LCD16x2

- Module I2C

10.2 Sơ đồ mạch

Trang 18

CHAPTER 11 PHÁT TRIỂN ỨNG DỤNG

11.1 Đối với đèn LED

Chế độ tự động:

•Điều khiển thiết bị chiếu sáng tự động dựa trên điều kiện ánh sáng trong môi trường

Đèn:

•Khi chế độ tự động tắt, chế độ này được sử dụng để điều khiển thiết bị chiếu sáng theo cách thủ công

•Khi chế độ Tự động được bật, không thể bật tắt một cách thủ công

11.2 Đối với máy bơm

Chế độ tự động:

•Điều khiển thiết bị máy bơm dựa trên điều kiện về độ ẩm của đất trong chậu Máy bơm:

•Khi chế độ tự động tắt, chế độ này được sử dụng để điều khiển thiết bị bật tắt theo cách thủ công

•Khi chế độ Tự động được bật, không thể bật tắt một cách thủ công

14

Trang 19

CHƯƠNG 11 PHÁT TRIỂN ỨNG DỤNG

Ngày đăng: 30/05/2024, 14:56

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w