1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Dựa trên nền tảng iot thiết kế hệ thống giám sát nhiệt độ độ ẩm ánh sáng qua mạng LAN

90 9 0

Đ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 90
Dung lượng 14,34 MB

Cấu trúc

  • DATN_MAU_01_Bia Ngoai.pdf (p.1)

  • DATN_MAU_02_Bia Trong.pdf (p.2)

  • 03_NhiemVu_DA.pdf (p.3)

  • 04_Lich_Trinh.pdf (p.4)

  • 05_Cam_Doan.pdf (p.5)

  • DATN_MAU_06_Loi Cam On.pdf (p.6)

  • 07_Muc_Luc.pdf (p.7-9)

  • 08_Liet_Ke_Hinh.pdf (p.10-12)

  • 09_Liet_Ke_Bang.pdf (p.13)

  • 10_Tom_Tat.pdf (p.14-15)

  • 11_1_Chuong_1.pdf (p.16-18)

  • 11_2_Chuong_2.pdf (p.19-33)

  • 11_3_Chuong_3.pdf (p.34-38)

  • 11_4_Chuong_4.pdf (p.39-66)

  • 11_5_Chuong_5.pdf (p.67-76)

  • 11_6_Chuong_6.pdf (p.77-78)

  • 11_7_TLTK_Phu_Luc.pdf (p.79-88)

  • Page 1

  • Page 1

Nội dung

TỔNG QUAN

Đặt vấn đề

Xã hội hiện đại đang phát triển mạnh mẽ nhờ vào công nghệ, dẫn đến nhu cầu gia tăng về các dịch vụ và tiện ích từ khoa học kỹ thuật Việc ứng dụng công nghệ điện tử, công nghệ thông tin và truyền thông vào đời sống hàng ngày ngày càng trở nên quan trọng.

Công nghệ Internet of Things (IoT) và cảm biến không dây đang được ứng dụng rộng rãi trong nhiều lĩnh vực như nghiên cứu, giải trí, sản xuất và kinh doanh Sự phát triển này mở ra nhiều cơ hội cho việc tạo ra các ứng dụng đáp ứng nhu cầu đa dạng Dưới sự hướng dẫn của GVC.Ths Trần Thanh Mai, nhóm chúng tôi đã chọn đề tài: “Thiết kế hệ thống giám sát nhiệt độ, độ ẩm và ánh sáng dựa trên nền tảng IoT qua mạng Lan”.

Mục tiêu

Dựa trên nền tảng IoT thiết kế hệ thống giám sát nhiệt độ - độ ẩm – ánh sáng qua mạng Lan.

Bố cục

QUYỂN ĐỒ ÁN NÀY GỒM CÓ 6 CHƯƠNG

CƠ SỞ LÝ THUYẾT

TỔNG QUAN VỀ IOT( INTERNET OF THINGS)

2.1.1 Giới thiệu Internet of Things:

Khái niệm "the Internet of Things" do Kevin Ashton làm việc tại Procter & Gamble, sau này là MIT's Auto-ID Center, giới thiệu vào năm 1999

Hình 2.1 Kết nối vạn vật

Internet Vạn Vật (IoT) là mạng lưới kết nối các thiết bị và phương tiện vận tải thông qua Internet, cho phép chúng thu thập và truyền tải dữ liệu Các thiết bị này, được gọi là "thiết bị kết nối" và "thiết bị thông minh", có khả năng giao tiếp và tương tác với nhau, tạo ra một hệ sinh thái thông minh và hiệu quả.

HỆ THỐNG IOT

IoT được xem như một tầm nhìn công nghệ rộng lớn, đóng vai trò là hạ tầng toàn cầu cho xã hội thông tin, kết nối các "Things" để cung cấp dịch vụ tiên tiến Nó dự kiến tích hợp nhiều công nghệ mới như machine-to-machine, mạng tự trị, khai thác dữ liệu, bảo mật và điện toán đám mây Hệ thống thông tin trước đây đã tạo ra chiều hướng "Any TIME", mở ra nhiều cơ hội cho sự phát triển và cải tiến trong lĩnh vực này.

“Any PLACE” communication Giờ IoT đã tạo thêm một chiều mới trong hệ thống thông tin đó là “Any THING” Communication (Kết nối mọi vật)

Hình 2.2 Kết nối mọi vật 2.2.2 IoT từ góc nhìn kỹ thuật

Trong IoT, "Things" có thể là đối tượng vật lý hoặc đối tượng thông tin (đối tượng ảo) Hai loại đối tượng này có thể ánh xạ qua lại với nhau Một đối tượng vật lý có thể được đại diện bởi một đối tượng thông tin, nhưng một đối tượng thông tin cũng có thể tồn tại mà không cần ánh xạ từ một đối tượng vật lý.

Hình 2.3 Hệ thống IoT từ góc nhìn kỹ thuật

Các thiết bị có thể giao tiếp với nhau theo ba cách chính: Thứ nhất, thông qua các mạng lưới thông tin gọi là gateway; thứ hai, giao tiếp qua mạng lưới mà không cần gateway; và thứ ba, liên lạc trực tiếp với nhau qua mạng nội bộ.

Hình 2.4 Các loại thiết bị khác nhau và mối quan hệ

Yêu cầu cơ bản của các thiết bị trong Internet of Things (IoT) là khả năng giao tiếp Các thiết bị này được phân loại thành nhiều loại, bao gồm thiết bị mang dữ liệu, thiết bị thu thập dữ liệu, cảm biến (sensor) và thiết bị thực thi.

Thiết bị mang dữ liệu là một thiết bị được gắn vào một vật thể vật lý, nhằm kết nối gián tiếp các vật thể này với các mạng lưới thông tin liên lạc.

Thiết bị thu thập dữ liệu là một thiết bị có khả năng đọc và ghi thông tin, đồng thời tương tác với các đối tượng vật lý.

Thiết bị cảm ứng và thiết bị thực thi là những công cụ quan trọng trong việc phát hiện và đo lường thông tin từ môi trường xung quanh Chúng chuyển đổi thông tin này thành tín hiệu số và có khả năng thực hiện các hành động dựa trên tín hiệu kỹ thuật số nhận được từ các mạng.

General device là thiết bị tích hợp mạng thông qua kết nối có dây hoặc không dây, bao gồm nhiều loại thiết bị phục vụ cho các lĩnh vực khác nhau trong IoT.

2.2.3 Đặc điểm cơ bản và yêu cầu của một hệ thống IoT

2.2.3.1 Đặc tính cơ bản Đặc tính cơ bản của IoT bao gồm:

Tính kết nối liên thông trong IoT cho phép mọi thiết bị kết nối với nhau thông qua mạng lưới thông tin và cơ sở hạ tầng liên lạc toàn cầu.

Những dịch vụ liên quan đến “Things”: hệ thống IoT có khả năng cung cấp các dịch vụ liên quan đến “Things”

Tính không đồng nhất: Các thiết bị trong IoT là không đồng

Thay đổi linh hoạt: Status của các thiết bị tự động thay đổi Hơn nữa, số lượng thiết bị có thể tự động thay đổi

Quy mô lớn: Sẽ có một số lượng rất lớn các thiết bị được quản lý và giao tiếp với nhau

2.2.3.2 Yêu cầu đối với một hệ thống IoT

Một hệ thống IoT phải thoả mãn các yêu cầu sau:

Kết nối trong hệ thống IoT dựa trên việc nhận diện các "Things" thông qua ID riêng biệt Mỗi "Thing" cần có một định danh duy nhất để thiết lập kết nối hiệu quả giữa chúng.

Khả năng cộng tác: hệ thống IoT khả năng tương tác qua lại giữa các mạng và

Khả năng tự quản của mạng: Tự quản lý, tự cấu hình, tự recovery, tự tối ưu hóa và tự có cơ chế bảo vệ

Dịch vụ thoả thuận: Được thiết lập bởi người vận hành hoặc tùy chỉnh bởi các người dùng

Các khả năng dựa vào vị trí (location-based capabilities): Hệ thống IoT có thể biết và theo dõi vị trí một cách tự động

Bảo mật: Trong IoT, nhiều “Things” được kết nối với nhau nên tính bảo mật bị hạn chế

Bảo vệ tính riêng tư trong hệ thống IoT là rất quan trọng, bao gồm các biện pháp bảo vệ trong quá trình truyền dữ liệu, cũng như trong các giai đoạn thu thập, lưu trữ, khai thác và xử lý thông tin.

Plug and play: các Things phải được plug-and-play một cách dễ

Hệ thống IoT cần có khả năng quản lý các "Things" để đảm bảo mạng hoạt động ổn định Quá trình này được giám sát và điều hành bởi các bên liên quan, nhằm duy trì hiệu suất và tính liên tục của mạng.

2.2.4 Mô hình của một hệ thống IoT

Một hệ thống IOT được xây dựng lên từ sự kết hợp của 4 layer sau:

 Lớp ứng dụng (Application Layer)

 Lớp Hỗ trợ (Service support and application support layer)

 Lớp thiết bị (Device Layer)

LÀM QUEN VỚI RASPBERRY PI

Hình 2.6 Sơ đồ khối Raspberry Pi

Raspberry pi 3: hỗ trợ đa kết nối (sẽ được đề cập sau)

Chỉ cần một bàn phím, một tivi hoặc màn hình có cổng HDMI/DVI, nguồn USB 5V và dây micro USB, bạn có thể sử dụng Raspberry Pi như một máy tính thông thường Raspberry Pi cho phép bạn thực hiện các tác vụ văn phòng, nghe nhạc và xem phim với độ nét cao Đặc biệt, thiết bị này rất tiết kiệm điện và có khả năng hoạt động liên tục 24/24.

 CPU 64 bit quad-core bộ vi xử lý ARM Cortex A53, tốc độ 1.2GHz

 Tích hợp Bluetooth 4.1 (sở hữu tính năng tiết kiệm năng lượng BLE)

 Cổng HDMI, hỗ trợ Full HDMI

 Cổng Ethernet (hay là cổng mạng LAN)

 Giao tiếp Camera qua CSI

 Hỗ trợ hiển thị DSI

 Khe gắn Micro SD card được hàn chết trên board theo kiểu Push-Pull

 Vi xử lý hình ảnh VideoCore IV 3D

Hình 2.8 Sơ đồ cổng kết nối Raspberry Pi Trái tim của Raspberry Pi 3: là bộ vi xử lý ARM Cortex A53, tốc độ 1.2GHz gấp

10 lần so với thế hệ đầu tiên

Hệ thống GPIO (General Purpose Input Output) bao gồm 40 chân được chia thành hai hàng, cho phép người dùng kết nối và điều khiển đa dạng thiết bị điện tử và cơ khí.

Ngõ HDMI: dùng để kết nối Pi với màn hình máy tính hay tivi có hỗ trợ cổng HDMI

Cổng audio 3.5mm cho phép kết nối dễ dàng với loa ngoài và tai nghe Đối với tivi trang bị cổng HDMI, âm thanh đã được tích hợp qua tín hiệu HDMI, do đó không cần sử dụng cổng audio này.

Cổng CSI: khe cắm này là để cắm modul camera vào Raspberry Pi

Cổng DSI: nơi đây sẽ giúp ta có thể kết nối Raspberry Pi với màn hình cảm ứng Cổng USB: Raspberry Pi tích hợp 4 cổng USB

Cổng Ethernet: cho phép kết nối Internet dễ dàng

Khe cắm thẻ SD: Raspberry Pi không tích hợp ổ cứng Thay vào đó nó dùng thẻ

LED trên Raspberry: Raspberry có tổng cộng 4 LED 2 LED trên board (LED PWR (đỏ); LED ACT (xanh)) và 2 LED trong cổng Ethernet (LED trái (vàng); LED phải (xanh))

Nguồn cho Raspberry: Jack nguồn micro USB 5V với nguồn lý tưởng cho Raspberry là nguồn DC 5V-2.5A

Hình 2.9 Sơ đồ kết nối Raspberry Pi

Nhà sản xuất Raspberry sẽ cung cấp một bộ thư viện mã nguồn đóng, cho phép người dùng truy cập vào các tính năng tăng tốc GPU Các thư viện này bao gồm: OpenGL ES 2.0 (opengl), OpenVG, EGL, Openmax và Openmax IL.

2.3.3.2 Hệ điều hành của Raspberry Pi

Raspberry Pi là một máy tính cần cài đặt hệ điều hành để hoạt động Trong thế giới nguồn mở Linux, có nhiều phiên bản hệ điều hành tùy biến (distro) khác nhau Việc lựa chọn distro phù hợp phụ thuộc vào nhu cầu, mục đích và khả năng học hỏi của người dùng.

2.3.3.3 Hệ điều hành chính của Raspberry:

Raspian "wheezy", Soft-float "wheezy", Arch Linux, Pidora, RISC OS

Tuy nhiên với cấu hình tương đối Raspberry Pi 3 Model chạy ổn định nhiều hệ điều hành khác như: CentOS, Fedora, Ubuntu, ATE, Kali Linux, Ubuntu Core, Windows

10 IoT Core, Slackware, Debian, Android Things…

NGÔN NGỮ LẬP TRÌNH PYTHON

Python là một ngôn ngữ lập trình thông dịch được phát triển bởi Guido van Rossum vào năm 1990 Nó có đặc điểm kiểu dữ liệu động và sử dụng cơ chế cấp phát bộ nhớ tự động, tương tự như các ngôn ngữ như Perl, Ruby, Scheme, Smalltalk và Tcl.

Cấu trúc của Python cho phép người dùng viết mã lệnh với số lần gõ phím tối thiểu Ban đầu, Python được phát triển cho nền tảng Unix, nhưng sau đó đã mở rộng ra tất cả các hệ điều hành, từ MS-DOS đến Mac.

OS, OS/2, Windows, Linux và các hệ điều hành khác thuộc họ Unix

2.4.2 Đặc điểm của ngôn ngữ lập trình Python:

Python được thiết kế để trở thành một ngôn ngữ dễ học, mã nguồn dễ đọc, bố cục trực quan, dễ hiểu, thể hiện qua các điểm sau:

Từ khóa: đơn giản và trực quan với người dùng

Với Python ta chỉ cần thụt các câu lệnh trong khối vào sâu hơn (về bên phải) so với các câu lệnh của khối lệnh cha chứa nó

Ví dụ, giả sử có đoạn mã sau trong C/C++:

6 // Khối lệnh mới bắt đầu từ kí tự {đến}

12 printf("Phuong trinh co hai nghiem phan biet:\n");

16 Đoạn mã trên có thể được viết lại bằng Python như sau:

5 # Khối lệnh mới, thụt vào đầu dòng

8 print "Phuong trinh co hai nghiem phan biet:"

Python cho phép người dùng dễ dàng viết và tích hợp nhiều hàm tùy chỉnh theo nhu cầu, tương tự như các ngôn ngữ lập trình khác Hơn nữa, người dùng có thể mở rộng trình thông dịch để kết nối với các thư viện một cách thuận tiện.

Như đã đề cập ở trên nó có thể tương thích với nhiều trình thông dịch

Lệnh và cấu trúc: Python lệnh đơn giản và khối lệnh đa cấu trúc

Hệ thống kiểu dữ liệu:

Python áp dụng hệ thống kiểu duck typing, hay còn gọi là latent typing, cho phép tự động xác định kiểu dữ liệu mà không cần khai báo trước Khi sử dụng Python, biến được khai báo và xác định kiểu dữ liệu ngay tại lần gán đầu tiên Một số kiểu dữ liệu phổ biến trong Python bao gồm: int, long, float, complex, list, tuple, str, dict và set, bên cạnh nhiều kiểu dữ liệu khác.

Python hỗ trợ chia chương trình thành các module, giúp tái sử dụng trong các ứng dụng khác Ngoài ra, Python cung cấp một bộ module chuẩn phong phú, cho phép lập trình viên dễ dàng sử dụng lại trong dự án của họ Các module này mang lại nhiều chức năng hữu ích, bao gồm hàm truy xuất tập tin, gọi hệ thống và hỗ trợ lập trình mạng (socket).

2.4.4 Các ứng dụng từ Raspberry Pi

Ta có thể sử dụng board Raspberry Pi cho rất nhiều ứng dụng khác nhau, từ đơn giản đến phức tạp

Yêu cầu: Một chiếc Raspberry Pi đã được cài đặt Raspbian và kết nối Internet Thực hiện:

CÀI ĐẶT APACHE WEB SERVER

Apache is the most popular web server application globally and can be installed on a Raspberry Pi, enabling the public hosting of one or multiple websites on the Internet By default, Apache supports only HTML files; however, with the addition of certain modules, it can also run PHP files.

Cài đặt gói dịch vụ Apache bằng cách chạy lệnh sau: sudo apt-get install apache2 -y

Mặc định, sau khi cài đặt, Apache sẽ hiển thị một file HTML test Để kiểm tra, bạn chỉ cần mở trình duyệt và nhập địa chỉ IP của Raspberry Pi trong mạng của bạn, hoặc sử dụng localhost nếu đang thử nghiệm trên chính máy Raspberry Pi.

Hình 2.10 Truy cập webserver THAY ĐỔI TRANG MẶC ĐỊNH CỦA APACHE

Sau khi cài đặt Apache, dữ liệu web sẽ được lưu trữ tại thư mục /var/www/ Trong thư mục này, file index.html là file chính mà chúng ta đã thấy trước đó Để truy cập vào thư mục /var/www và xem danh sách các file, bạn có thể sử dụng hai lệnh: cd /var/www và ls -al.

Chúng ta sẽ nhìn thấy như sau: total 1 drwxr-xr-x 2 root root 4096 Jan 8 01:29 drwxr-xr-x 12 root root 4096 Jan 8 01:28

In the /var/www directory, there is only one file named index.html, as indicated by the permissions -rw-r r 1 root root 177 Jan 8 01:29 index.html The single dot (.) refers to the current directory, /var/www/, while the double dot ( ) points to the parent directory, /var/.

TÍNH TOÁN VÀ THIẾT KẾ

GIỚI THIỆU

Chúng ta sẽ phát triển một ứng dụng giám sát các thông số môi trường quan trọng cho việc bảo quản thực phẩm, đặc biệt là thực phẩm tươi sống trong quá trình vận chuyển, bao gồm nhiệt độ, độ ẩm và ánh sáng Sử dụng thiết bị Raspberry Pi cùng với các cảm biến DHT22 và BH1570, chúng ta sẽ lập trình bằng ngôn ngữ Python và các thư viện chuyên dụng từ Adafruit để thu thập và xử lý dữ liệu từ các cảm biến này.

Sử dụng ngôn ngữ lập trình Python, chúng ta có thể đọc dữ liệu từ các cảm biến như cảm ứng ánh sáng, nhiệt độ và độ ẩm Đồng thời, việc tạo webserver giúp hiển thị dữ liệu từ cảm biến một cách trực quan và dễ hiểu.

Hướng dẫn tạo cơ sở dữ liệu Raspberry Pi với MYSQL và PHPMyAdmin giúp ghi lại dữ liệu từ cảm biến, phục vụ cho việc vẽ đồ thị và sử dụng trong tương lai.

Theo dõi thường xuyên, liên tục các thông số môi trường (để điều chỉnh nếu nhận được sự thay đổi ngoài giới hạn).

THI CÔNG HỆ THỐNG

GIỚI THIỆU

Phần này bao gồm hai nội dung chính: kết quả thi công phần cứng và các kết quả hình ảnh hiển thị trên màn hình, cũng như mô phỏng tín hiệu và thống kê kết quả.

THI CÔNG HỆ THỐNG

Danh sách các linh kiện

- Cảm biến nhiệt độ và độ ẩm DHT22

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

4.2.2 Lắp ráp và kiểm tra

Vi điều khiển trung tâm là KIT Raspberry Pi với thiết kế nhỏ gọn

Các module kết nối vào KIT gồm:

Cảm biến nhiệt độ và độ ẩm DHT22

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

Các module kết nối với KIT thông qua các chân GPIO

Bằng việc điều khiển KIT xuất và nhận tín hiệu tại các chân GPIO, ta điều khiển được các module hoạt động theo ý muốn mình

Lắp ráp module cảm biến

Cảm biến nhiệt độ và độ ẩm DHT22

Thông số kỹ thuật của linh kiện điện tử DHT22: Điện áp hoạt động 3.3V – 5.5V

Sai số độ ẩm ±2% + Dải đo nhiệt độ -40 – 80oC

Sơ đồ và chức năng chân của linh kiện điện tử DHT22

Hình 4.1 Sơ đồ chân DHT22 Chức năng chân của DHT22

Chân 1 - VDD chân nối nguồn (5V)

Chân 2 - DATA chân dữ liệu vào ra

Chân 4 - GND chân nối mass (0V)

Nguyên lý hoạt động của linh kiện điện tử DHT22

Hình 4.2 Sơ đồ kết nối với vi xử lý Để có thể giao tiếp với DHT22 cần thực hiện theo 2 bước:

Gửi tín hiệu muốn đo (Start) tới DHT22, sau đó xác nhận lại

Khi đã giao tiếp được với DHT22, cảm biến sẽ gửi lại 5 byte dữ liệu và nhiệt độ đo được

Kết nối DHT22: Trong các chân GPIO của KIT Raspberry Pi có 7 chân xuất nhập tín hiệu là: GPIO 4, GPIO 17, GPIO 18, GPIO 21, GPIO 22, GPIO 23, GPIO 24, GPIO 25

Ta có thể chọn các chân này làm chân giao tiếp với các module cảm biến DHT22

Hình 4.3 Sơ đồ chân IO của board Raspberry Pi

Chân Đỏ nối vào 5V (PIN 2)

Chân Nâu nối vào GROUND (PIN 6)

Chân Cam nối vào GPIO 17(PIN 11) a Cảm biến cường độ ánh sáng BH1750

Cảm biến ánh sáng kỹ thuật số BH1750 sử dụng giao tiếp I2C, cho phép nhận diện dữ liệu ánh sáng xung quanh với độ phân giải cao từ 1 đến 65535 lx Linh kiện này rất phù hợp cho việc điều chỉnh độ sáng màn hình LCD và bàn phím đèn nền trên điện thoại di động.

Chân vàng nối vào vcc (PIN 1) chân SDA nối vào SDA (pin 3) chân SCL nối vào SCL (pin 5)

Chân nâu nối tới GND và ADO (PIN 6)

4.2.2.2 Kết nối với Raspberry Pi từ PC

Khi không có sẵn màn hình, bàn phím hoặc chuột để sử dụng Raspberry

Pi, ta có thể kết nối Raspberry Pi với máy tính chạy Windows thông qua

SSH là giao thức mạng thiết lập kết nối bảo mật giữa hai thiết bị trong cùng một lớp mạng Để sử dụng SSH với Raspberry Pi, bạn cần khởi động phần mềm Putty, nhập địa chỉ IP của Raspberry Pi vào ô Host Name và chọn Open Lưu ý rằng sau khi cài đặt hệ điều hành và khởi động Raspberry Pi, bạn có thể tìm địa chỉ IP của thiết bị này.

Pi bằng cách sử dụng một chương trình quét IP ví dụ như Advanced IP

Hình 4.4 Phần mềm Putty Ngoài ra, ta có thể dùng Remote Desktop Connection có sẵn trên

Windows để điều khiển từ xa Raspberry Pi trên giao diện đồ họa

Hình 4.5 Phần mềm Remote Desktop Connection

To initiate a Remote Desktop Connection from Windows, enter the IP address of your Raspberry Pi in the Computer field and click Connect A window will prompt you for a username and password, where you should use the default credentials for Raspberry Pi: username "pi" and password "raspberry."

Thiết lập IP cho Raspberry Pi

Sau khi kết nối với Raspberry Pi, giao diện của Putty sẽ hiển thị dòng lệnh tương tự như Terminal trên Raspberry Pi, cho phép người dùng sử dụng các lệnh giống như khi làm việc trực tiếp trên thiết bị.

Hình 4.6 Giao diện dòng lệnh của Putty

Mặc định Raspberry Pi nhận IP động từ DHCP, ta sẽ thiết lập địa chỉ

IP của Raspberry Pi thành IP tĩnh để thuận tiện cho việc cài đặt webserver lên Raspberry Pi Đầu tiên ta mở file config IP bằng lệnh:

$ sudo nano /etc/dhcpcd.conf

To set a static IP for Raspberry Pi, add the following lines to the network configuration: under interface eth0, specify static ip_address as 2.168.1.150/24, static routers as 2.168.1.1, and static domain_name_servers as 8.8.8.8 and 208.67.222.222 Similarly, for interface wlan0, set static ip_address to 2.168.1.200/24, with the same static routers and domain name servers.

Giao diện (interface) là định dạng của card mạng mà bạn muốn sử dụng, ví dụ như mạng dây (eth0) hoặc Wifi (wlan0) Địa chỉ IP tĩnh (static ip_address) là địa chỉ mà bạn muốn thiết lập cho Raspberry Pi, lưu ý thêm /24 ở cuối hoặc tùy thuộc vào dải mạng mà bạn sử dụng, thường là /24 Địa chỉ IP Gateway (static routers) thường là địa chỉ IP của modem hoặc router trong gia đình Địa chỉ IP DNS (static domain_name_servers) dùng để phân giải tên miền, thường sử dụng DNS của Google và OpenDNS, có thể thêm nhiều DNS cách nhau bằng dấu cách.

Sau đó ta chỉ cần thoát và lưu lại file dhcpcd.conf bằng cách bấm Ctrl + X rồi gõ Y xong Enter là được

Với dòng lệnh trên thì IP tĩnh của Raspberry khi kết nối mạng dây sẽ là

192.168.1.150 (ta cần lưu ý nếu IP Raspberry chỉ khác IP routers dãy số cuối)

Công việc này giúp kết nối với Raspberry Pi dể dàng hơn khi thay đổi WLAN hoặc

THI CÔNG VÀ ĐÓNG GÓI MÔ HÌNH

Hình ảnh thực tế của sản phẩm:

Hình 4.8 Bộ sản phẩm thực tế (1)

LẬP TRÌNH HỆ THỐNG

Mô hình hoạt động biểu diễn trên use-case, tương tác giữa các thành phần, cấu trúc của chương trình:

Hình 4.10 Mô hình hoạt động use-case

Mô hình hoạt động của chương trình biểu diễn dưới dạng sơ đồ:

Hình 4.11 Mô hình hoạt động theo sơ đồ 4.4.2 Phần mềm lập trình cho vi điều khiển

4.4.2.1 Cài đặt hệ điều hành Raspian cho Raspberry Pi: a Lựa chọn và cài đặt hệ điều hành:

Hệ điều hành Raspian được chọn vì nó hỗ trợ giao diện người dùng và giao tiếp mạng hiệu quả, đồng thời tương thích tốt với nhiều ngôn ngữ lập trình, đáp ứng nhu cầu của đề tài Ngoài ra, việc chuẩn bị phần cứng cũng là một yếu tố quan trọng trong quá trình triển khai dự án.

Thẻ nhớ SD: tối thiểu 4 GB Tốt nhất là 8 GB hoặc hơn, tốc độ từ class 6 trở lên

Bàn phím, chuột sử dụng cổng USB

Màn hình kết nối với cổng HDMI hoăc TIVI kết nối với cồng RCA

Dây mạng nếu bạn muốn Raspberry Pi có thể kết nối mạng

Máy tính và đầu đọc thẻ nhớ

Hình 4.12 Sơ đồ kết nối board Pi với các thiết bị

HĐH mà ta sử dụng được gọi là Raspbian, link tải về: http://www.raspberrypi.org/downloads

Bước 2: tải phần mềm Win32DiskImage:

Tải về tại http://sourceforge.net/projects/win32diskimager/

Giải nén và các bạn sẽ được thư mục win32diskimager-binary chứa phần mềm chúng ta cần sử dụng

Bước 3: Nạp Raspbian vào thẻ nhớ:

Cắm thẻ nhớ SD vào máy tính

Chạy phần mềm Win32DiskImage nằm trong thư mục vừa giải nén ở bước 3

Trong ô Image File, chọn file img vừa download lúc nãy

Trong ô Device, chọn thẻ nhớ muốn sử dụng

Bấm Write để bắt đầu ghi, quá trình này sẽ mất vài phút

Hình 4.13 Chạy phần mềm Win32DiskImage Khởi động và thiết lập Raspberry Pi: lần khởi động đầu tiên, các bạn sẽ thấy màn hình như hình 4.14 bên dưới

To start and configure your Raspberry Pi, adjust the timezone or locale settings as desired Finally, select option two: expand_rootfs and confirm with 'yes' to reboot Upon restarting, you will see the Raspberry Pi login screen.

Hình 4.15 Màn hình Raspberry Pi login

Tiếp theo sẽ là Password: gõ pass mặc định là: raspberry Đăng nhập thành công, các bạn sẽ thấy dấu nhắc lệnh pi@raspberry~$

Hình 4.16 Đăng nhập vào Pi thành công

Gõ startx hoặc init 5 để khởi động giao diện đồ họa

Hình 4.17 Giao diện hệ điều hành Raspbian

Cài đặt và khởi động hệ điều hành Raspbian cho KIT Raspberry Pi cần thực hiện theo các bước cần thiết Ngoài Raspbian, bạn có thể tải về nhiều hệ điều hành khác từ trang web http://www.raspberrypi.org/downloads và cài đặt chúng theo cách tương tự.

4.4.2.2 Lựa chọn ngôn ngữ lập trình:

Mỗi phần cứng, bao gồm KIT Raspberry Pi, đều cần một phần mềm để điều khiển và kiểm soát hoạt động của nó Python là một ngôn ngữ lập trình linh hoạt, tương tự như Java và NET, cho phép chạy trên hầu hết các hệ điều hành như Windows, Linux/Unix, Mac OS X, OS/2, Amiga và Palm Handhelds.

Cài đặt Python: Mặc định hệ điều hành Raspbian đã cài sẳn Python, nếu không có Python cài sẵn ta tiến hành cái Python cho Raspberry Pi như sau:

Bước 1: Kết nối dây mạng vào cổng Ethernet của KIT Raspberry Pi

Bước 2: Tại giao diện màn hình của Raspberry Pi ta chạy LX terminal

To install essential Python development tools, open the LX terminal and sequentially enter the following commands: `sudo apt-get install python-dev`, followed by `curl -O http://python-distribute.org/distribute_setup.py`, then execute `python distribute_setup.py` Next, download the pip installation script with `curl -O https://raw.github.com/pypa/pip/master/contrib/get-pip.py` and run it using `python get-pip.py` Finally, install the virtual environment package by executing `sudo pip install virtualenv`.

Sau mỗi lệnh, ta đợi trong vài phút để KIT Raspberry Pi tải và cài đặt các tập tin trực tiếp từ mạng internet

Bước 3: Tiến hành cài đặt thư viện Rpi.GPIO Library nhằm lặp trình điều khiển các chân GPIO tiện lợi hơn

Trên cửa sổ LX Terminal đánh vào dòng lệnh: sudo apt-get update đợi trong vài phút để KIT Raspberry tải và cài đặt các tập tin

Bước 4: Khởi động Python: từ màn hình Desktop, chạy file IDLE3

Tạo file giao tiếp cảm biến

Trên Raspberry tạo file cambien.py để giao tiếp với cảm biến và cập nhập dữ liệu lên database:

Ta dùng lệnh sudo nano cambien.py để tạo file cambien.py với ngôn ngữ lập trình sẽ là python

Code đầy đủ sẽ được để phần PHỤ LỤC ở đây ta chỉ chú ý tới 1 vài dòng lệnh liên quan đến IoT:

Mở kết nối đến database db = MySQLdb.connect("localhost","root","doantotnghiep","nhietdo")

Chuẩn bị một đối tượng cursor vì ta sử dụng phương thức cursor() cursor = db.cursor()

Truy vấn SQL để INSERT một bản ghi vào trong (cập nhập dữ liệu mớí) sql = "INSERT INTO dulieu(tem, \ hum, time,lux) \

(temperature,humidity,datetime.now(),readLight()) try:

Thực thi lệnh SQL cursor.execute(sql)

Commit các thay đổi vào trong Database db.commit() Đến đây ta có thể hình dung Raspberry hiện tại đã là 1 server lưu trữ

Tạo khối chương trình con phụ vụ việc hiển thị

Tạo file NhietDo_model.php

Tạo khối chương trình kết nối với trang hiển thị

Tạo một trang để thể hiện thông tin cho người dùng

Tạo file nhietDo_view.php là bước quan trọng trong việc phát triển các chương trình hỗ trợ người dùng, sử dụng ngôn ngữ lập trình web để giám sát hệ thống IoT từ xa qua trình duyệt Các chương trình này sẽ được trình bày và giải thích chi tiết trong PHỤ LỤC.

Trên các cảm biến của chúng ta, công việc đã được mặc định, vì vậy chỉ cần kết nối đúng chân dữ liệu Các thao tác còn lại sẽ được thực hiện trên khối điều khiển.

KẾT QUẢ, NHẬN XÉT, ĐÁNH GIÁ

Kết quả nghiên cứu

Sau khi thực hiện đề tài “Dựa trên nền tảng IoT thiết kế hệ thống giám sát nhiệt độ - độ ẩm - ánh sáng qua mạng LAN”, chúng tôi đã hoàn thành các nội dung chính liên quan đến việc phát triển và triển khai hệ thống giám sát hiệu quả, ứng dụng công nghệ IoT để theo dõi các thông số môi trường như nhiệt độ, độ ẩm và ánh sáng, đồng thời sử dụng mạng LAN để truyền tải dữ liệu một cách nhanh chóng và chính xác.

Thiết kế được hệ thông với nền tản IoT với webserver trên Raspberry Pi

Nắm được về cấu trúc Raspberry Pi

Tìm hiểu và phân tích các đặc tính kỹ thuật của Raspberry Pi

Trình bày các giao tiếp Raspberry Pi với các thiết bị ngoại vi

Trình bày tổng quát ngôn ngữ lập trình Python

Tìm hiểu về cảm biến nhiệt độ và độ ẩm DHT22, cảm biến cường độ ánh sáng BH1750

Về hệ thống giám sát môi trường:

Sử dụng ngôn ngữ lập trình Python để đọc dữ liệu từ các cảm biến ánh sáng, nhiệt độ và độ ẩm, sau đó hiển thị thông tin này trên giao diện web một cách trực quan và dễ hiểu.

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 52

5.1.1 Hình ảnh thực tế của sản phẩm:

Hình 5.1 Bộ sản phẩm thực tế (1)

Hình 5.2 Bộ sản phẩm thực tế (2)

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 53

Hình 5.3 Bộ Kit Raspberry Pi 3

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 54

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 55

5.1.2 Hình ảnh thực tế của hệ thống cơ sở dữ liệu Đăng nhập vào địa chỉ http://192.168.1.8/phpmyadmin/ trong đó 192.168.1.8 là địa chỉ

IP của Raspberry Pi trong WLAN

Hình 5.6 Giao diện đăng nhập cơ sơ dữ liệu

Hình 5.7 Giao diện đăng nhập trên smatphone Ở đây ta đăng nhập bằng tài khoản root với pass là: doantotnghiep

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 56

Hình 5.8 Các dữ liệu update

Hình 5.9 Truy cập trên smatphone

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 57

Hình 5.10 Truy cập cơ sơ dữ liệu bằng smatphone

Để xem đồ thị cùng các giá trị nhiệt độ, độ ẩm và cường độ ánh sáng, hãy đăng nhập vào địa chỉ http://192.168.1.8/nhietdo/index.php/nhietdo#.

Hình 5.11 Giao diện giám sát môi trường

Hình 5.12 Giao diện giám sát môi trường trên smatphone (1)

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 59

Hình 5.13 Giao diện giám sát môi trường trên samtphone (2)

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 60

Ngày đăng: 29/11/2021, 10:29

HÌNH ẢNH LIÊN QUAN

Hình 2.2. Kết nối mọi vật - Dựa trên nền tảng iot thiết kế hệ thống giám sát nhiệt độ   độ ẩm   ánh sáng qua mạng LAN
Hình 2.2. Kết nối mọi vật (Trang 21)
Hình 2.4. Các loại thiết bị khác nhau và mối quan hệ - Dựa trên nền tảng iot thiết kế hệ thống giám sát nhiệt độ   độ ẩm   ánh sáng qua mạng LAN
Hình 2.4. Các loại thiết bị khác nhau và mối quan hệ (Trang 22)
Hình 2.7. RaspberryPi 3 mode lB - Dựa trên nền tảng iot thiết kế hệ thống giám sát nhiệt độ   độ ẩm   ánh sáng qua mạng LAN
Hình 2.7. RaspberryPi 3 mode lB (Trang 25)
Hình 2.11. Cảm biến DTH22 - Dựa trên nền tảng iot thiết kế hệ thống giám sát nhiệt độ   độ ẩm   ánh sáng qua mạng LAN
Hình 2.11. Cảm biến DTH22 (Trang 33)
Hình 3.1. Sơ đồ khối hệ thống - Dựa trên nền tảng iot thiết kế hệ thống giám sát nhiệt độ   độ ẩm   ánh sáng qua mạng LAN
Hình 3.1. Sơ đồ khối hệ thống (Trang 36)
Mô hình hoạt động biểu diễn trên use-case, tương tác giữa các thành phần, cấu trúc của chương trình:   - Dựa trên nền tảng iot thiết kế hệ thống giám sát nhiệt độ   độ ẩm   ánh sáng qua mạng LAN
h ình hoạt động biểu diễn trên use-case, tương tác giữa các thành phần, cấu trúc của chương trình: (Trang 37)
Hình 3.4. lưu đồ trên Raspberry - Dựa trên nền tảng iot thiết kế hệ thống giám sát nhiệt độ   độ ẩm   ánh sáng qua mạng LAN
Hình 3.4. lưu đồ trên Raspberry (Trang 38)
Hình 4.1. Sơ đồ chân DHT22 - Dựa trên nền tảng iot thiết kế hệ thống giám sát nhiệt độ   độ ẩm   ánh sáng qua mạng LAN
Hình 4.1. Sơ đồ chân DHT22 (Trang 41)
Hình 4.2. Sơ đồ kết nối với vi xử lý - Dựa trên nền tảng iot thiết kế hệ thống giám sát nhiệt độ   độ ẩm   ánh sáng qua mạng LAN
Hình 4.2. Sơ đồ kết nối với vi xử lý (Trang 42)
Hình 4.6. Giao diện dòng lệnh của Putty - Dựa trên nền tảng iot thiết kế hệ thống giám sát nhiệt độ   độ ẩm   ánh sáng qua mạng LAN
Hình 4.6. Giao diện dòng lệnh của Putty (Trang 45)
Hình 4.7. Đặt IP tĩnh cho RaspberryPi - Dựa trên nền tảng iot thiết kế hệ thống giám sát nhiệt độ   độ ẩm   ánh sáng qua mạng LAN
Hình 4.7. Đặt IP tĩnh cho RaspberryPi (Trang 46)
Mô hình hoạt động biểu diễn trên use-case, tương tác giữa các thành phần, cấu trúc của chương trình:   - Dựa trên nền tảng iot thiết kế hệ thống giám sát nhiệt độ   độ ẩm   ánh sáng qua mạng LAN
h ình hoạt động biểu diễn trên use-case, tương tác giữa các thành phần, cấu trúc của chương trình: (Trang 48)
Mô hình hoạt động của chương trình biểu diễn dưới dạng sơ đồ: - Dựa trên nền tảng iot thiết kế hệ thống giám sát nhiệt độ   độ ẩm   ánh sáng qua mạng LAN
h ình hoạt động của chương trình biểu diễn dưới dạng sơ đồ: (Trang 49)
lần khởi động đầu tiên, các bạn sẽ thấy màn hình như hình 4.14 bên dưới. - Dựa trên nền tảng iot thiết kế hệ thống giám sát nhiệt độ   độ ẩm   ánh sáng qua mạng LAN
l ần khởi động đầu tiên, các bạn sẽ thấy màn hình như hình 4.14 bên dưới (Trang 51)
Hình 4.13. Chạy phần mềm Win32DiskImage Khởi động và thiết lập Raspberry Pi:  - Dựa trên nền tảng iot thiết kế hệ thống giám sát nhiệt độ   độ ẩm   ánh sáng qua mạng LAN
Hình 4.13. Chạy phần mềm Win32DiskImage Khởi động và thiết lập Raspberry Pi: (Trang 51)
Hình 4.18. Giao diện Terminal. - Dựa trên nền tảng iot thiết kế hệ thống giám sát nhiệt độ   độ ẩm   ánh sáng qua mạng LAN
Hình 4.18. Giao diện Terminal (Trang 54)
Hình 4.19. Giao diện IDLE3 - Dựa trên nền tảng iot thiết kế hệ thống giám sát nhiệt độ   độ ẩm   ánh sáng qua mạng LAN
Hình 4.19. Giao diện IDLE3 (Trang 55)
Hình 4.24. Dữ liệu trên cơ sở dữ liệu - Dựa trên nền tảng iot thiết kế hệ thống giám sát nhiệt độ   độ ẩm   ánh sáng qua mạng LAN
Hình 4.24. Dữ liệu trên cơ sở dữ liệu (Trang 59)
Hình 4.23. Giao diện đăng nhập cơ sở dữ liệu - Dựa trên nền tảng iot thiết kế hệ thống giám sát nhiệt độ   độ ẩm   ánh sáng qua mạng LAN
Hình 4.23. Giao diện đăng nhập cơ sở dữ liệu (Trang 59)
Hình 4.25. Giao diện giám sát - Dựa trên nền tảng iot thiết kế hệ thống giám sát nhiệt độ   độ ẩm   ánh sáng qua mạng LAN
Hình 4.25. Giao diện giám sát (Trang 60)
Hình 4.26. Sơ đồ quy trình thao tác. - Dựa trên nền tảng iot thiết kế hệ thống giám sát nhiệt độ   độ ẩm   ánh sáng qua mạng LAN
Hình 4.26. Sơ đồ quy trình thao tác (Trang 60)
Hình 4.28. Raspberrypi bỏ vào hộp bảo vệ có quạt - Dựa trên nền tảng iot thiết kế hệ thống giám sát nhiệt độ   độ ẩm   ánh sáng qua mạng LAN
Hình 4.28. Raspberrypi bỏ vào hộp bảo vệ có quạt (Trang 62)
Hình 4.29. Khối cảm biến được làm gọn - Dựa trên nền tảng iot thiết kế hệ thống giám sát nhiệt độ   độ ẩm   ánh sáng qua mạng LAN
Hình 4.29. Khối cảm biến được làm gọn (Trang 63)
Hình 4.31. Kết nối hệ thống (1) - Dựa trên nền tảng iot thiết kế hệ thống giám sát nhiệt độ   độ ẩm   ánh sáng qua mạng LAN
Hình 4.31. Kết nối hệ thống (1) (Trang 65)
Hình 4.32. Kết nối hệ thống (2) - Dựa trên nền tảng iot thiết kế hệ thống giám sát nhiệt độ   độ ẩm   ánh sáng qua mạng LAN
Hình 4.32. Kết nối hệ thống (2) (Trang 66)
Hình 5.1. Bộ sản phẩm thực tế (1) - Dựa trên nền tảng iot thiết kế hệ thống giám sát nhiệt độ   độ ẩm   ánh sáng qua mạng LAN
Hình 5.1. Bộ sản phẩm thực tế (1) (Trang 69)
Hình 5.4. Khối cảm biến (1) - Dựa trên nền tảng iot thiết kế hệ thống giám sát nhiệt độ   độ ẩm   ánh sáng qua mạng LAN
Hình 5.4. Khối cảm biến (1) (Trang 70)
Hình 5.8. Các dữ liệu update - Dựa trên nền tảng iot thiết kế hệ thống giám sát nhiệt độ   độ ẩm   ánh sáng qua mạng LAN
Hình 5.8. Các dữ liệu update (Trang 73)
Hình 5.10. Truy cập cơ sơ dữ liệu bằng smatphone - Dựa trên nền tảng iot thiết kế hệ thống giám sát nhiệt độ   độ ẩm   ánh sáng qua mạng LAN
Hình 5.10. Truy cập cơ sơ dữ liệu bằng smatphone (Trang 74)
Hình 5.13. Giao diện giám sát môi trường trên samtphone (2) - Dựa trên nền tảng iot thiết kế hệ thống giám sát nhiệt độ   độ ẩm   ánh sáng qua mạng LAN
Hình 5.13. Giao diện giám sát môi trường trên samtphone (2) (Trang 76)

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

TÀI LIỆU LIÊN QUAN

w