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

Hệ thống tưới nước thông minh có sử dụng học máy

17 179 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 17
Dung lượng 1,26 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Hệ thống tưới nước thông minh có sử dụng học máy, đồ án lập trình hệ thống và vi điều khiển bách khoa đà nẵng, bách khoa đà nẵng, Hệ thống tưới nước thông minh, học máy trong tưới nước , đồ án vi điều khiển, đồ án lập trình hệ thống và vi điều khiển điều khiển

Trang 1

TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA CÔNG NGHỆ THÔNG TIN

-o0o -

BÁO CÁO ĐỒ ÁN LẬP TRÌNH HỆ THỐNG VÀ VI ĐIỀU KHIỂN

ĐỀ TÀI:

HỆ THỐNG TƯỚI CÂY THÔNG MINH

GIẢNG VIÊN HƯỚNG DẪN: Huỳnh Hữu Hưng

STT NHÓM: 8

HỌ VÀ TÊN SINH VIÊN

LỚP HỌC PHẦN

ĐỒ ÁN

ĐIỂM QUÁ TRÌNH (do GVHD ghi)

ĐIỂM BẢO VỆ (do GV chấm ghi) Nguyễn Đăng Bin 17N10C

Lê Xuân Mạnh 17N10A

Nguyễn Đức Minh 17N10C

Hoàng Long Nhật 17N10C

ĐÀ NẴNG, 07/2020

Trang 2

TÓM TẮT ĐỒ ÁN

Hiện nay, hệ thống tưới nước thông minh là một nhu cầu cần thiết đối với nhiều người

có thú vui trồng cây cảnh hay vườn rau trong không gian trống của nhà mình nhưng công việc lại bận rộn Bài báo cáo này sẽ trình bày việc xây dựng một mô hình hệ thống tưới nước sử dụng arduino, esp8266, các cảm biến liên kết với ứng dụng máy tính để thực hiện việc tưới nước dựa trên việc thu thập dữ liệu và sử dụng thuật toán Regression trong học máy Sau khi tìm hiểu lắp ráp mạch, xây dựng mô hình thì hệ thống đã tự động tính toán được lượng nước tối ưu nhất cần tưới cho cây trồng trong một lượng đất cố định

Trang 3

Mục lục

I Giới thiệu 3

I.1 Thực trạng và vấn đề cần giải quyết 3

I.2 Đề xuất giải pháp 3

I.3 Phân công nhiệm vụ 3

II Giải pháp 4

II.1 Sơ đồ mạch 4

II.1.1 Sơ đồ tổng quan 4

II.1.2 Sơ đồ kết nối các linh kiện 5

II.1.3 Sơ đồ giải thuật 5

II.2 Linh kiện 10

III Kết quả 13

III.1 Mô hình sản phẩm 13

III.2 Dữ liệu đã sử dụng 14

III.2.1 Nguồn gốc dữ liệu và cách thức thu thập 14

III.2.2 Tính chất dữ liệu 14

III.2.3 Cách phân chia và kích thước tập huấn luyện, kiểm thử 15

III.3 Điều kiện tiến hành thực nghiệm 15

III.4 Quy trình và điều kiện kiểm thử hệ thống 15

IV Kết luận 16

IV.1 Kết quả đạt được 16

IV.2 Hướng phát triển 16

V Tài liệu tham khảo 16

Trang 4

I Giới thiệu

I.1 Thực trạng và vấn đề cần giải quyết

Hiện nay, nhiều người có thú vui trồng cây cảnh, vườn rau trong không gian trống của nhà mình như: sân thượng, ban công, Tuy nhiên sẽ có những lúc công việc bận rộn vườn rau sẽ không được ai chăm sóc Ở nước ta, các hệ thống phục vụ nhu cầu vẫn còn ít, yêu cầu đặt ra cần có hệ thống tưới nước tự động có thể tính toán các thông

số cần thiết để tự động tưới nước

I.2 Đề xuất giải pháp

- Kết hợp chức năng của Arduino Uno, esp8266, cảm biến nhiệt độ, độ ẩm đất để thu thập dữ liệu và thực hiện việc tưới thông qua ứng dụng máy tính

- Sử dụng thuật toán Regression trong học máy để tính toán lượng nước tối ưu nhất cho cây trồng

I.3 Phân công nhiệm vụ

Dưới đây là bảng phân công nhiệm vụ của các thành viên :

Bảng 1 Phân công nhiệm của các thành viên

Thành viên Nhiệm vụ

Nguyễn Đăng Bin Tìm hiểu về Arduino & ESP8266, lập trình Arduino &

ESP8266, gửi và nhận dữ liệu giữa Arduino, ESP8266 với server, lắp ráp mạch, viết báo cáo

Lê Xuân Mạnh Tìm hiểu về Machine learning, viết app nhận dữ liệu để xử lý,

gửi và nhận dữ liệu giữa app với server, thu thập và xử lí dữ liệu, viết báo cáo

Nguyễn Đức Minh Tìm hiểu về server, liên kết server với App, gửi và nhận dữ

liệu giữa App với server, thu thập dữ liệu, viết báo cáo Hoàng Long Nhật Tìm hiểu về server, liên kết server với Arduino, gửi và nhận dữ

liệu giữa Arduino với server, làm slide, viết báo cáo

Trang 5

II Giải pháp

II.1 Sơ đồ mạch

II.1.1 Sơ đồ tổng quan

Hình 1 Sơ đồng tổng quan của sản phẩm

Nguyên lý hoạt động:

(1) App gửi yêu cầu lấy dữ liệu đến Server

(2) (3) Yêu cầu được chuyển tiếp từ Server sang Esp8266 rồi đến Arduino (4) Arduino thu thập nhiệt độ, độ ẩm từ các cảm biển gắn ở vườn cây

(5) (6) (7) Dữ liệu được truyền từ Arduino sang Esp8266 qua Server rồi vể App

(8) (9) (10) Lượng nước tưới sau khi tính toán được gửi từ App đến Arduino thông qua Server và Esp8266

(11) Arduino tiến hành tưới cây bằng lượng nước từ dữ liệu nhận được

Trang 6

II.1.2 Sơ đồ kết nối các linh kiện

Hình 2 Sơ đồ kết nối linh kiện phần cứng

II.1.3 Sơ đồ giải thuật

a) Sơ đồ nguyên lý hoạt động của server

Hình 3 Sơ đồ nguyên lý hoạt động của server

Server đóng vai trò chuyển tiếp lệnh và dữ liệu qua lại app và esp8266

Trang 7

b) Giao tiếp giữa Arduino với Esp8266, cảm biến và bơm nước

Hình 4 Sơ đồ giao tiếp giữa Arduio với các linh kiện

Sau khi thiết lập các thông số, khai báo linh kiện, các hàm lệnh, chương trình sẽ

đi vào vòng lặp để chờ nhận lệnh bao gồm lệnh send để nhận dữ liệu tưới nước hoặc lệnh flow để thu thập nhiệt độ, độ ẩm và gửi đi dữ liệu cho esp8266

Trang 8

c) Giao tiếp giữa Esp8266 với Server và Arduino

Hình 5 Sơ đồ giao tiếp giữa Esp8266 với Server và Arduino

Khi bắt đầu, eps8266 sẽ tiến hành kết nối tới mạngWIFI và Socket Server Khi

đã kết nối thành công, esp8266 sẽ tiến vào vòng lặp đợi lệnh, nó sẽ bắt lệnh flow từ server rồi chuyển tiếp sang arduino và bắt lệnh Farduino để lấy dữ liệu nhiệt độ, độ ẩm

từ arduino và gửi lên server

Trang 9

d) Giao tiếp App và Server

Hình 6 Sơ đồ giao tiếp giữa App và Server

Sau khi chạy chương trình, hệ thống sẽ tiến hành kết nối với WIFI và Socket server Tiếp đó kiểm tra thời gian, nếu đã đến thời gian tưới thì sẽ gửi lệnh flow về server để yêu cầu dữ liệu Sau khi nhận được thì tiến hành tính toán và gửi lệnh send chứa lượng nước cần tưới về server

Trang 10

e) Sơ đồ học máy

Hình 7 Sơ đồ học máy

Quá trình huấn luyện mô hình (training model): Mô hình lấy dữ liệu từ file

csv đã lưu các dữ liệu Sau đó ta chia dữ liệu thành 90% để cho máy học thông qua thuật toán regression và 10% còn lại để dùng đánh giá model Thực hiện huấn luyện

mô hình thông qua thư viện sciki-sklearn bằng thuật toán regression Sau khi thực hiện quá trình training ta dùng thuật toán sai số trung bình bình phương MSE(Mean Squared Error) Mean Square Error là phương pháp đo sự chênh lệch trung bình bình phương giữa giá trị thực tế và giá trị dự đoán[3] Lưu mô hình đã được training để dự đoán giá trị sau này

Trang 11

Quá trình dự đoán: Mô hình nhận dữ liệu từ server gửi xuống rồi thông qua

mô hình đã được học qua quá trình huấn luyện để dự đoán lượng nước cần tưới Lưu giá trị dự đoán vào file dữ liệu và gửi giữ liệu lên server

II.2 Linh kiện

Trong quá trình thực hiện đồ án, những linh kiện được sử dụng là: Arduino Uno R3, ESP8266, cảm biến nhiệt độ đất, cảm biến độ ẩm đất, Modelu Relay 5VDC, động

cơ DC bơm nước P385 12VDC, …

Bảng 2 Bảng mô tả linh kiện

Linh kiện Thông số kĩ thuật và nguyên lý hoạt động Arduino Uno R3

- Arduino là một bo mạch xử lý

được dùng để lập trình tương tác

với các thiết bị phần cứng như

cảm biến nhiệt độ, độ ẩm, động

cơ, đèn LED nhấp nháy, màn

hình LCD,… hay những ứng

dụng khác

- Thông số kỹ thuật:

+ Điện áp hoạt động: 5V DC + Số chân Digital I/O: 14 (6 chân hardware PWM)

+ Số chân Analog: 6 + Dòng ra tối đa (5V): 500mA + Dòng ra tối đa (3.3V): 50mA

- Nguyên lý hoạt động:

+ Thu thập nhiệt độ từ cảm biến nhiệt độ qua chân serial 8 bằng thư viện DallasTemperature

+ Thu thập độ ẩm từ cảm biến độ ẩm thông qua chân Analog 0

+ Nhận và truyền lệnh với esp8266 thông qua 2 chân serial 2, 3 bằng cách sử dụng thư viện SoftwareSerial và SerialCommand

+ Bật tắt Module Relay để điều khiển tưới nước thông qua chân serial 7

- Code kết nối Arduino với ESP8266:

sCmd.readSerial();

SoftwareSerial mySerial(RX, TX); SerialCommand sCmd(mySerial);

mySerial.print(command);

root2.printTo(mySerial);

Trang 12

Esp8266

- ESP8266 là kít phát triển dựa

trên nền chíp Wifi SoC Bên

trong ESP8266 có sẵn một lõi vi

xử lý Hiện tại có hai ngôn ngữ

có thể lập trình cho ESP8266: sử

dụng trực tiếp phần mềm IDE

của Arduino để lập trình với bộ

thư viện riêng hoặc sử dụng

phần mềm node MCU

- Thông số kỹ thuật:

+ Nguồn cấp 5VDC + GPIO giao tiếp mức logic 3.3V

- Nguyên lý hoạt động:

+ Nhận và truyền lệnh và dữ liệu từ Arduino thông qua chân D1, D2 bằng thư viện SoftwareSerial và SerialCommand

+ Nhận và truyền lệnh và dữ liệu từ Socket server thông qua thư viện SocketIOClient và ESP8266WiFi

- Code kết nối:

+ Kết nối với ardunio:

SoftwareSerial mySerial(RX, TX);

SerialCommand sCmd(mySerial);

sCmd.readSerial();

mySerial.print(RID);

mySerial.print(Rfull);

+ Kết nối với Server:

socket.monitor();

socket.send(command, json);

Cảm biến nhiệt độ đất DS18B20

- Cảm biến nhiệt độ đất rất hay

được ứng dụng trong các ứng

dụng đo nhiệt độ thời gian thực

Vì nó hoạt động khá chính xác

với sai số nhỏ, đồng thời với

kích thước nhỏ và giá thành rẻ là

một trong những ưu điểm của

- Thông số kỹ thuật:

+ Điện áp đầu vào: 3.0-5.5V + Khoảng nhiệt độ đo: -55 °C đến +125°C + Độ chính xác từ ± 0.5 °C trong khoảng

10 °C đến +85 °C + Đầu ra : VCC (Red), DATA (Blue), GND (Black)

- Nguyên lý hoạt động:

+ Thu thập nhiệt độ rồi gửi đến Ardunio qua chân serial 8

- Kết nối với Arduino:

#define ONE_WIRE_BUS 8 OneWire oneWire(ONE_WIRE_BUS); DallasTemperature sensors(&oneWire); Sensors.requestTemperatures();

Celsius =sensors.getTempCByIndex(0);

Trang 13

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

- Cảm biến độ ẩm đất thường

được sử dụng trong các mô hình

tưới nước tự động, vườn thông

minh, Cảm biến giúp xác định

độ ẩm của đất qua đầu dò và trả

về giá trị analog, digital qua 2

chân tương ứng để giao tiếp với

vi điều khiển để thực hiện vô số

các ứng dụng khác nhau [2]

- Thông số kỹ thuật:

+ Điện áp hoạt động: 3.3~5VDC

+ Tín hiệu đầu ra: Analog theo điện áp cấp nguồn tương ứng Digital có High hoặc Low, có thể điều chỉnh độ ẩm mong muốn bằng biến trở thông qua

mạch so sánh LM393 tích hợp

- Nguyên lý hoạt động:

+ Thu thập độ ẩm đất rồi truyền đến Arduino qua chân Analog 0

- Kết nối với Arduino:

int sensor = A0;

int j = analogRead(sensor);

j=map(j,0,1023,100,0);

Module Relay 5VDC

- Module Relay 1 kênh 5V dùng

dòng điện nhỏ của vi điều khiển,

arduino, PLC, esp8266, để

điều khiển các thiết bị điện, đồ

dùng điện hoạt động ở mức điên

áp cao như điện sinh hoạt, hay

trong các ứng dụng thiết bị

thông minh

- Thông số kỹ thuật:

+ Tải tối đa: AC 250V / 10A, DC 30V / 10A

+ Dòng kích hoạt: 5mA + Điện áp làm việc: 5V

- Nguyên lý hoạt động:

+ Chân kích để bật tắt Module relay được nối với chân serial 7 của arduino để nhận tín hiệu điều khiển để điều khiển bơm nước

- Kết nối Module relay với Arduino và ESP8266:

digitalWrite(7, LOW);

delay(t);

digitalWrite(7, HIGH);

Động cơ DC bơm nước Water

Pump P385 12VDC

- Thông số kỹ thuật:

+ Loại động cơ: P385

+ Điện áp sử dụng: 6~12VDC + Dòng điện sử dụng: 0.5~0.7A + Lưu lượng bơm: 1~2L / 1 phút

- Nguyên lý hoạt động:

+ Tưới nước theo điều khiển của Module

Trang 14

Bảng 3 Bảng chi phí các linh kiện

lượng

Đơn giá (VNĐ)

Thành tiền (VNĐ)

6 Động cơ DC bơm nước Water Pump P385 12VDC 1 60.000 60.000

III Kết quả

III.1 Mô hình sản phẩm

Hình 8 Mô hình sản phẩm tưới nước thông minh

Trang 15

III.2 Dữ liệu đã sử dụng

III.2.1 Nguồn gốc dữ liệu và cách thức thu thập

- Nguồn gốc dữ liệu từ quá trình thu thập dữ liệu hàng ngày trong các khung giờ với điều kiện nhiệt độ, độ ẩm khác nhau

- Cách thức thu thập:

Mỗi ngày dựa vào mức độ chiếu sáng của mặt trời thì nhiệt độ đất và độ ẩm đất khác nhau, do đó chúng ta chia thành 4 khung giờ: 6h - 9h (sáng sớm), 9h – 16h (ánh nắng mặt trời lớn), 16h – 19h (mặt trời bắt đầu tắt nắng), 19h - 24h (trời tối) Mỗi khung giờ chúng ta sẽ có 8 mẫu do đó mỗi ngày ta sẽ thu được 32 mẫu Để thu thập một mẫu:

+ Bước 1: Đo nhiệt độ đất và độ ẩm đất ban đầu

+ Bước 2: Tưới từng lượng nước nhỏ rồi cộng với lượng nước đã tưới trước đó (lượng nước khi chưa tưới bằng 0)

+ Bước 3: Tiếp tục đo lại, nếu độ ẩm nhỏ hơn 82% thì quay lại bước 2

+ Bước 4: Kết thúc quá trình đo, ta có được nhiệt độ đất và độ ẩm đất ban đầu và tổng lượng nước đã tưới

III.2.2 Tính chất dữ liệu

Hình 9 Bản ghi dữ liệu của 5 giá tri đầu tiên

Tất cả có 1040 mẫu được đo trong 33 ngày từ: 28/5/2020 – 29/6/2020 Trong đó:

- Nhiệt độ đất đo được dao động trong khoảng 28oC - 34oC Nhiệt độ lớn nhất trong khoảng thời gian 11h – 16h và nhỏ nhất trong các khoảng thời gian: 6h – 8h và 21h – 24h

Trang 16

- Độ ẩm đất đo được dao động trong khoảng từ 20% - 86% Độ ẩm lớn nhất vào các khoảng thời gian: 6h – 8h, 23h – 24h hoặc vào những ngày mưa và nhỏ nhất vào khoảng thời gian: 14h -16h

III.2.3 Cách phân chia và kích thước tập huấn luyện, kiểm thử

Dữ liệu gồm có 1040 mẫu, được chia thành hai phần: 90% dùng để huấn luyện (training) và 10% dùng để kiểm thử (test)

III.3 Điều kiện tiến hành thực nghiệm

- Sử dụng hàm regression thư viện scikit-learn của Python để dự đoán giá trị thực nghiệm với tham số đầu vào là nhiệt độ, độ ẩm, thể tích đất và đầu ra là lượng nước cần tưới

- Điều kiện môi trường: dữ liệu được thu thập vào cả ngày mưa lần ngày nắng, vào tất cả các giờ trong khoảng 6h – 24h

III.4 Quy trình và điều kiện kiểm thử hệ thống

Hệ thống và thuật toán được đánh giá thông qua các tiêu chí như độ chính xác, độ

ổn định, tốc độ thực thi, khả năng mở rộng dự án cụ thể:

- Tốc độ thực thi một quá trình tưới là thời gian phản hồi giữa arduino, esp8266, server, app với điều kiện mạng ổn định là không quá 2 giây

- Độ chính xác của thuật toán được đánh giá qua tập test bằng hàm đánh giá Mean Square Error trong thư viện scikit-learn của python Mean Square Error (MSE) là phương pháp đo sự chênh lệch trung bình bình phương giữa giá trị thực tế và giá trị dự đoán[3], giá trị này càng nhỏ thì mô hình học càng chính xác Khi đánh giá

mô hình sản phẩm ta thấy MSE = 5.67 nên mô hình học tương đối tốt

- Độ ổn định: hệ thống có thể dự đoán với nhiệt độ đất, độ ẩm đất bất kì trong điều kiện mạng ổn định

- Khả năng mở rộng: hệ thống có thể áp dụng với nhiều cây trồng khác nhau với những diện tích đất khác nhau và điều kiện thời tiết khác nhau

Trang 17

IV Kết luận

IV.1 Kết quả đạt được

Qua đồ án này nhóm chúng em đã thiết kế và xây dựng thành công hệ thống tưới nước thông minh được thực hiện thông qua ứng dụng trên máy tính, hệ thống có thể thực hiện các công việc sau:

- Thực hiện đo nhiệt độ đất và độ ẩm đất tại một thời điểm bất kì trong ngày dựa vào cảm biến nhiệt độ đất và cảm biến độ ẩm đất

- Sử dụng học máy để tính toán lượng nước cần tưới tối ưu nhất cho cây trồng

- Điều khiển hệ thống một cách dễ dàng, thuận tiện thông qua một ứng dựng trên máy tính

Ngoài ra thông qua đồ án này giúp cho mỗi cá nhân hoàn thiện hơn về khả năng làm việc nhóm, khả năng trình bày báo cáo, cũng như biết thêm nhiều kiến thức mới trong lập trình và trong cuộc sống

Bên cạnh đó nhóm cũng gặp không ít khó khăn như: tình trạng dịch nCovid kéo dài, các thành viên ở cách xa nhau nên khó khăn trong làm việc nhóm; khó khăn trong việc thu lượng lớn dữ liệu phục vụ cho học máy; hay khó khăn trong việc tìm hiểu những kiến thức chưa được học,… Vì vậy việc sai sót là không thể tránh khỏi mong thầy (cô) thông cảm Nhóm chúng em rất mong nhận được sự ủng hộ cũng như những đánh giá, nhận xét để có thể hoàn thiện hơn về hệ thống này

IV.2 Hướng phát triển

Trong tương lai, nếu có thời gian và kinh phí chúng em có thể tích hợp sử dụng thêm ứng trên điện thoại nhằm tạo thuận lợi cho người sử dụng Ngoài ra có thể thu thập nhiều dữ liệu hơn trên nhiều vùng miền khác nhau để tăng độ chính xác hơn, có thể sử dụng ở các vùng miền khác nhau Bên cạnh đó có thể tính toán chính xác lượng nước cần tưới cho từng loại cây trồng; sử dụng đồng thời nhiều cảm biến nhiệt độ và

độ ẩm để thực hiện tưới đồng thời nhiều cây ở những vị trí khác nhau

V Tài liệu tham khảo

[1] Link : http://arduino.vn/

[2] Link: https://hshop.vn/

Ngày đăng: 02/09/2020, 09:50

HÌNH ẢNH LIÊN QUAN

Hình 1. Sơ đồng tổng quan của sản phẩm Nguyên lý hoạt động:  - Hệ thống tưới nước thông minh có sử dụng học máy
Hình 1. Sơ đồng tổng quan của sản phẩm Nguyên lý hoạt động: (Trang 5)
Hình 2. Sơ đồ kết nối linh kiện phần cứng - Hệ thống tưới nước thông minh có sử dụng học máy
Hình 2. Sơ đồ kết nối linh kiện phần cứng (Trang 6)
Hình 3. Sơ đồ nguyên lý hoạt động của server Server đóng vai trò chuyển tiếp lệnh và dữ liệu qua lại app và esp8266  - Hệ thống tưới nước thông minh có sử dụng học máy
Hình 3. Sơ đồ nguyên lý hoạt động của server Server đóng vai trò chuyển tiếp lệnh và dữ liệu qua lại app và esp8266 (Trang 6)
Hình 4. Sơ đồ giao tiếp giữa Arduio với các linh kiện - Hệ thống tưới nước thông minh có sử dụng học máy
Hình 4. Sơ đồ giao tiếp giữa Arduio với các linh kiện (Trang 7)
Hình 5. Sơ đồ giao tiếp giữa Esp8266 với Server và Arduino - Hệ thống tưới nước thông minh có sử dụng học máy
Hình 5. Sơ đồ giao tiếp giữa Esp8266 với Server và Arduino (Trang 8)
Hình 6. Sơ đồ giao tiếp giữa App và Server - Hệ thống tưới nước thông minh có sử dụng học máy
Hình 6. Sơ đồ giao tiếp giữa App và Server (Trang 9)
Hình 7. Sơ đồ học máy - Hệ thống tưới nước thông minh có sử dụng học máy
Hình 7. Sơ đồ học máy (Trang 10)
Quá trình dự đoán: Mô hình nhận dữ liệu từ server gửi xuống rồi thông qua - Hệ thống tưới nước thông minh có sử dụng học máy
u á trình dự đoán: Mô hình nhận dữ liệu từ server gửi xuống rồi thông qua (Trang 11)
III.1 Mô hình sản phẩm - Hệ thống tưới nước thông minh có sử dụng học máy
1 Mô hình sản phẩm (Trang 14)
Bảng 3. Bảng chi phí các linh kiện - Hệ thống tưới nước thông minh có sử dụng học máy
Bảng 3. Bảng chi phí các linh kiện (Trang 14)
Hình 9. Bản ghi dữ liệu của 5 giá tri đầu tiên - Hệ thống tưới nước thông minh có sử dụng học máy
Hình 9. Bản ghi dữ liệu của 5 giá tri đầu tiên (Trang 15)

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w