Tải bản đầy đủ

THIẾT kế và THI CÔNG dây CHUYỀN PHÂN LOẠI ĐAI ốc ỨNG DỤNG xử lý ẢNH

BỘ GIÁO DỤC & ĐÀO TẠO
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP. HỒ CHÍ MINH
KHOA ĐIỆN – ĐIỆN TỬ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
--------------------------------

ĐỒ ÁN TỐT NGHIỆP
NGÀNH CÔNG NGHỆ KỸ THUẬT ĐIỆN TỬ TRUYỀN THÔNG

ĐỀ TÀI: THIẾT KẾ VÀ THI CÔNG DÂY CHUYỀN
PHÂN LOẠI ĐAI ỐC ỨNG DỤNG XỬ LÝ ẢNH

GVHD: THS. VÕ ĐỨC DŨNG
SVTH:

NGUYỄN VĂN TÀI

15141273

NGUYỄN MINH ĐỨC 15141135


Tp. Hồ Chí Minh - 6/2019



TRƯỜNG ĐH SPKT TP. HỒ CHÍ MINH
KHOA ĐIỆN-ĐIỆN TỬ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH

CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
ĐỘC LẬP - TỰ DO - HẠNH PHÚC
----o0o----

Tp. HCM, ngày 20 tháng 6 năm 2019

NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP
Họ tên sinh viên:
Chuyên ngành:
Hệ đào tạo:
Khóa:

Nguyễn Văn Tài
Nguyễn Minh Đức
Kỹ thuật điện tử - truyền thông
Đại học chính quy
2015

MSSV: 15141273
MSSV: 15141135
Mã ngành: 141
Mã hệ: 1
Lớp: 15141DT2C

I. TÊN ĐỀ TÀI: THIẾT KẾ VÀ THI CÔNG DÂY CHUYỀN PHÂN LOẠI

ĐAI ỐC ỨNG DỤNG XỬ LÝ ẢNH
II. NHIỆM VỤ
1. Các số liệu ban đầu:
Mô hình dây chuyền phân loại đai ốc ứng dụng xử lý ảnh sử dụng động cơ DC
12V, khung xây dựng bằng nhôm định hình, camera sử dụng là loại webcam C270,
vi điều khiển sử dụng STM32F103C8T6, phần xử lý ảnh dùng máy vi tính. Giao


tiếp giữa máy tính và vi điều khiển qua IC PL2303 dựa trên giao tiếp UART.
Chương trình xử lý ảnh trên máy tính viết bằng ngôn ngữ C++ dựa trên bộ thư viện
mã nguồn mở OpenCV và được tạo giao diện bằng phần mềm QT Creator.
2. Nội dung thực hiện:
- Tìm hiểu cách thức hoạt động của các hệ thống phân loại dùng xử lý ảnh.
- Tìm hiểu chuẩn giao tiếp UART, động cơ DC, cảm biến hồng ngoại, encoder.
- Tìm hiểu về vi điều khiển STM32F103C8T6.
- Thiết kế và thi công mô hình dây chuyền phân loại.
- Thiết kế và thi công mạch điện cho hệ thống.
- Viết chương trình xử lý ảnh trên máy tính dùng phần mềm QT Creator.
- Viết chương trình điều khiển cho vi điều khiển STM32F103C8T6
- Chạy thử nghiệm mô hình, chỉnh sửa và hoàn thiện hệ thống.
- Thực hiện viết luận văn báo cáo.
- Tiến hành báo cáo đề tài tốt nghiệp.
III. NGÀY GIAO NHIỆM VỤ:
18/2/2019
IV. NGÀY HOÀN THÀNH NHIỆM VỤ:
20/6/2019
V. HỌ VÀ TÊN CÁN BỘ HƯỚNG DẪN:
ThS. Võ Đức Dũng
CÁN BỘ HƯỚNG DẪN
SINH

BM. ĐIỆN TỬ CÔNG NGHIỆP – Y

i


TRƯỜNG ĐH SPKT TP. HỒ CHÍ MINH
KHOA ĐIỆN-ĐIỆN TỬ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH

CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
ĐỘC LẬP - TỰ DO - HẠNH PHÚC
----o0o----

Tp. HCM, ngày 18 tháng 02 năm 2019

LỊCH TRÌNH THỰC HIỆN ĐỒ ÁN TỐT NGHIỆP
Họ tên sinh viên 1: Nguyễn Minh Đức

Lớp: 15141DT2C

MSSV: 15141135

Họ tên sinh viên 2: Nguyễn Văn Tài

Lớp: 15141DT2C

MSSV: 15141273

Tên đề tài: THIẾT KẾ VÀ THI CÔNG DÂY CHUYỀN PHÂN LOẠI

ĐAI ỐC ỨNG DỤNG XỬ LÝ ẢNH

Tuần/ngày

Nội dung

Xác nhận
GVHD

- Gặp GVHD để nghe phổ biến yêu cầu làm đồ
án, tiến hành chọn đề tài, GVHD tiến hành xét
(18/02 - 24/02) duyệt đề tài.
Tuần 1

Tuần 2
(25/02 - 03/03)
Tuần 3
(04/03 - 10/03)
Tuần 4
(11/03 - 17/03)

- Viết đề cương tóm tắt nội dung đồ án.
- Tìm hiểu tổng quan và phương thức hoạt động
của các Module STM32f103c8t6, Camera
- Tìm hiểu về công nghệ xử lý ảnh
- Tìm hiểu và nghiên cứu điều khiển động cơ và
khí nén dùng STM32f103c8t6.
- Tìm hiểu kết nối Camera để thu thập hình ảnh

Tuần 5

- Tìm hiểu và nghiêm cứu giao tiếp Uart giữa máy
(18/03 - 24/03) tính và STM32f103c8t6.
Tuần 6 - 7

- Tìm hiểu cách lập trình và ngôn ngữ viết cho xử
(25/03 - 07/04) lý ảnh

ii


Tuần 8

- Mô phỏng mạch, kiểm tra và cân chỉnh mạch.

(08/04 - 14/04) - Vẽ PCB.
Tuần 9 - 10

- Tiến hành thi công mạch.

(15/04 - 28/04) - Kiểm tra mạch thi công.
Tuần 11
(29/04 - 05/05)
Tuần 12 – 13
(06/05 - 19/05)
Tuần 14

- Kiểm tra và cải tiến hệ thống

- Viết báo cáo những nội dung đã làm.

(20/05- 26/05)

- Hoàn thiện báo cáo và gởi cho GVHD để xem
xét góp ý lần cuối trước khi in và báo cáo.

Tuần 15

- Nộp quyển báo cáo và báo cáo đề tài.

(27/05 - 02/06) - Thiết kế Slide báo cáo.

GV HƯỚNG DẪN
(Ký và ghi rõ họ và tên)

iii


LỜI CAM ĐOAN
Đề tài này là do nhóm tự thực hiện, dựa vào một số đề tài trước đó cũng như các
tài liệu tham khảo và không sao chép từ tài liệu hay công trình đã có trước đó.
TP. Hồ Chí Minh, ngày 20/6/2019
Người thực hiện đề tài

Nguyễn Văn Tài

Nguyễn Minh Đức

iv


LỜI CẢM ƠN
Lời đầu tiên, nhóm thực hiện đề tài xin gửi lời cảm ơn chân thành đến thầy
Võ Đức Dũng - giảng viên khoa Điện-Điện tử, đã theo sát hỗ trợ và hướng dẫn nhóm
một cách chi tiết trong quá trình thực hiện đề tài. Thầy luôn hỗ trợ hết mình, giải đáp
thắc mắc, chỉ ra sai sót cũng như gợi ý những phương án thực hiện sao cho khả thi và
dễ tiếp cận nhất.
Trong quá trình thực hiện Đồ án tốt ngiệp chúng em đã nhận được sự giúp đỡ
và ủng hộ của các thầy, cô trong khoa Điện-Điện tử. Sự hỗ trợ của các thầy, cô đã
góp phần không nhỏ giúp chúng em hoàn thành đề tài này.
Nhóm đề tài cũng xin cảm ơn các bạn sinh viên trong khoa Điện-Điện tử đã
nhiệt tình giúp đỡ, hỗ trợ nhóm, chia sẻ kinh nghiệm. Những đóng góp của các bạn
luôn được nhóm tiếp nhận và xem xét kĩ lưỡng.
Cuối cùng, nhóm xin cảm ơn chân thành và sâu sắc đến những người thân đặc
biệt là quý phụ huynh - những người luôn bên cạnh hỗ trợ hết mình về tài chính cũng
như tinh thần trong suốt quá trình học tập cũng như thực hiện đề tài này.
Dù đã cố gắng và nỗ lực tuy nhiên với những hạn chế về kiến thức và kinh
nghiệm, đề tài không thể tránh được còn nhiều thiếu sót. Nhóm mong nhận được sự
đóng góp, nhận xét để của các thầy, cô và bạn bè để có thể hoàn thiện đề tài hơn
Xin chân thành cảm ơn!

Người thực hiện đề tài

Nguyễn Văn Tài

Nguyễn Minh Đức

v


MỤC LỤC
LỊCH TRÌNH THỰC HIỆN ĐỒ ÁN TỐT NGHIỆP ......................................................................... ii
LỜI CAM ĐOAN ..............................................................................................................................iv
LỜI CẢM ƠN ..................................................................................................................................... v
LIỆT KÊ HÌNH ............................................................................................................................... viii
LIỆT KÊ BẢNG ................................................................................................................................. x
TÓM TẮT ..........................................................................................................................................xi
Chương 1. TỔNG QUAN ................................................................................................................... 1
1.1

ĐẶT VẤN ĐỀ .................................................................................................................... 1

1.2

MỤC TIÊU VÀ GIỚI HẠN................................................................................................ 2

1.3

NỘI DUNG NGHIÊN CỨU ............................................................................................... 2

1.4

GIỚI HẠN........................................................................................................................... 3

1.5

BỐ CỤC .............................................................................................................................. 3

Chương 2. CƠ SỞ LÝ THUYẾT ........................................................................................................ 5
2.1.

TỔNG QUAN VỀ XỬ LÝ ẢNH ........................................................................................ 5

2.1.1.

Giới thiệu về ảnh số .................................................................................................... 5

2.1.2.

Phương pháp thu nhận ảnh .......................................................................................... 6

2.1.3.

Giới thiệu về thư viện OpenCV và camera Logitech C270 ........................................ 6

2.1.4.

Điều chỉnh độ sáng và độ tương phản ......................................................................... 7

2.1.5.

Lọc nhiễu ảnh .............................................................................................................. 8

2.2.

TÌM ĐƯỜNG BIÊN CỦA ẢNH ...................................................................................... 13

2.3.

GIAO TIẾP UART ........................................................................................................... 15

2.4.

VI ĐIỀU KHIỂN STM32F103C8T6 ................................................................................ 17

2.4.1.

Tổng quan ................................................................................................................. 17

2.4.2.

Cấu trúc hệ thống ...................................................................................................... 18

2.4.3.

Tìm hiểu GPIO .......................................................................................................... 21

2.4.4.

Timer và PWM.......................................................................................................... 23

2.5.

ĐỘNG CƠ DC .................................................................................................................. 25

2.6.

ENCODER ........................................................................................................................ 26

2.7.

CẢM BIẾN HỒNG NGOẠI ............................................................................................. 29

Chương 3. TÍNH TOÁN VÀ THIẾT KẾ HỆ THỐNG .................................................................... 31
3.1.

THIẾT KẾ SƠ ĐỒ KHỐI ................................................................................................. 31

3.2.

TÍNH TOÁN THIẾT KẾ MẠCH ..................................................................................... 32

3.2.1.

Khối vi điều khiển và giao tiếp máy tính .................................................................. 32

vi


3.2.2.

Khối cảm biến và encoder ......................................................................................... 35

3.2.3.

Khối công suất điều khiển tải .................................................................................... 35

3.2.4.

Khối nguồn ................................................................................................................ 39

3.2.5.

Mạch PCB ................................................................................................................. 41

3.2.6.

Sơ đồ nguyên lý toàn mạch ....................................................................................... 43

3.3.

TÍNH TOÁN THIẾT KẾ MÔ HÌNH ................................................................................ 44

3.3.1.

Cơ cấu cấp phôi ......................................................................................................... 44

3.3.2.

Băng tải ..................................................................................................................... 46

3.3.3.

Cơ cấu phân loại........................................................................................................ 46

3.3.4.

Hộp điện .................................................................................................................... 49

Chương 4. THI CÔNG HỆ THỐNG ................................................................................................ 50
4.1.

GIỚI THIỆU ..................................................................................................................... 50

4.2.

THI CÔNG MẠCH ĐIỆN ................................................................................................ 50

4.2.1.

Linh kiện sử dụng trong mạch điện........................................................................... 50

4.2.2.

Lắp ráp và kiểm tra mạch điện .................................................................................. 51

4.3.

THI CÔNG MÔ HÌNH ..................................................................................................... 52

4.3.1.

Vật liệu, linh kiện sử dụng ........................................................................................ 52

4.3.2.

Các bước thi công ..................................................................................................... 53

4.4.

LẬP TRÌNH HỆ THỐNG................................................................................................. 57

4.4.1.

Lưu đồ giải thuật cho vi điều khiển........................................................................... 57

4.4.2.

Lưu đồ giải thuật cho chương trình xử lý ảnh ........................................................... 63

4.4.3.

Phần mềm QT Creator .............................................................................................. 65

4.4.4.

Trình biên dịch Keil µVision 5 ................................................................................. 70

Chương 5. KẾT QUẢ - NHẬN XÉT – ĐÁNH GIÁ ........................................................................ 75
Chương 6. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ...................................................................... 81
6.1.

KẾT LUẬN ....................................................................................................................... 81

6.2.

HƯỚNG PHÁT TRIỂN .................................................................................................... 81

TÀI LIỆU THAM KHẢO................................................................................................................. 82
PHỤ LỤC.......................................................................................................................................... 83

vii


LIỆT KÊ HÌNH
Hình

Trang

Hình 2. 1 Các bước xử lý ảnh .....................................................................................5
Hình 2. 2 Hình ảnh Webcam Logitech C270 ..............................................................7
Hình 2. 3 Một mặt nạ lọc kích thước 3x3 ...................................................................9
Hình 2. 4 Ví dụ về phần tử trung vị ..........................................................................10
Hình 2. 5 Các hướng xét giá trị .................................................................................15
Hình 2. 6 Sơ đồ cấu trúc các khối của STM32F103C8T6 ........................................18
Hình 2. 7 Sơ đồ nguồn xung clock của STM32F103C8T6 ......................................20
Hình 2. 8 Thanh ghi cấu hình chức năng chân GPIO của port .................................22
Hình 2. 9 Thanh ghi đọc giá trị ngõ vào ...................................................................23
Hình 2. 10 Thanh ghi chọn giá trị ngõ ra của port ....................................................23
Hình 2. 11 Động cơ GA25 ........................................................................................26
Hình 2. 12 Đĩa encoder tương đối kiểu quay ............................................................28
Hình 2. 13 Hình ảnh encoder quang 100 xung .........................................................28
Hình 2. 14 Led phát hồng ngoại ................................................................................29
Hình 2. 15 Kí hiệu đi-ốt quang .................................................................................29
Hình 2. 16 Kí hiệu transistor quang ..........................................................................30
Hình 2. 17 Cảm biến hồng ngoại E18-D80NK .........................................................30
Hình 3. 1 Sơ đồ khối của hệ thống. ...........................................................................31
Hình 3. 2 Sơ đồ mạch vi điều khiển ..........................................................................33
Hình 3. 3 Mạch chuyển USB UART PL2303 ...........................................................34
Hình 3. 4 Cổng domino kết nối cảm biến và encoder ...............................................35
Hình 3. 5 Sơ đồ kết nối cảm biến và encoder ...........................................................35
Hình 3. 6 Sơ đồ mạch công suất điều khiển động cơ DC dùng PWM......................36
Hình 3. 7 Sơ đồ mạch công suất điều khiển động cơ DC bằng relay .......................37
Hình 3. 8 Sơ đồ mạch công suất điều khiển servo ....................................................38
Hình 3. 9 Sơ đồ mạch công suất điều khiển led rọi ..................................................38
Hình 3. 10 Sơ đồ mạch led báo trạng thái các tải .....................................................39
Hình 3. 11 Sơ đồ mạch nguồn ...................................................................................41
Hình 3. 12 Hình ảnh mạch PCB ................................................................................41
Hình 3. 13 Hình ảnh 3D của mạch in mặt trên .........................................................42
Hình 3. 14 Hình ảnh 3D của mạch in nhìn nghiêng..................................................42
Hình 3. 15 Sơ đồ nguyên lý toàn mạch .....................................................................43
Hình 3. 16 Hình ảnh con lăn thiết kế ........................................................................44
Hình 3. 17 Hình ảnh bánh răng thiết kế ....................................................................45
Hình 3. 18 Mặt trước puly .........................................................................................46
Hình 3. 19 Trục phụ của đĩa quay .............................................................................47
Hình 3. 20 Puly trục đĩa ............................................................................................48
Hình 3. 21 Sơ đồ nối dây hộp điện............................................................................49
viii


Hình 4. 1 Mạch sau khi hàn linh kiện .......................................................................51
Hình 4. 2 Hình ảnh bánh răng thực tế .......................................................................53
Hình 4. 3 Hình ảnh cơ cấu cấp phôi sau khi thi công ...............................................53
Hình 4. 4 Băng tải mặt bên........................................................................................54
Hình 4. 5 Băng tải mặt trên .......................................................................................54
Hình 4. 6 Cảm biến hồng ngoại phát hiện phôi ........................................................55
Hình 4. 7 Hộp camera và khung đĩa quay .................................................................55
Hình 4. 8 Cơ cấu gạt phôi .........................................................................................56
Hình 4. 9 Encoder và puly truyền động cho đĩa quay ...............................................56
Hình 4. 10 Mô hình nhìn từ phía trước .....................................................................57
Hình 4. 11 Mô hình nhìn từ trên xuống ....................................................................57
Hình 4. 12 Lưu đồ chương trình chính......................................................................58
Hình 4. 13 Lưu đồ hàm khởi tạo GPIO .....................................................................59
Hình 4. 14 Lưu đồ hàm khởi tạo UART ...................................................................60
Hình 4. 15 Lưu đồ hàm xử lý PWM .........................................................................61
Hình 4. 16 Lưu đồ hàm điều khiển Servo .................................................................62
Hình 4. 17 Lưu đồ hàm nhận dữ liệu ........................................................................63
Hình 4. 18 Lưu đồ chương trình chính xử lý ảnh .....................................................64
Hình 4. 19 Cửa sổ làm việc của QT Creator .............................................................66
Hình 4. 20 Giao diện khởi động QT Creator ............................................................67
Hình 4. 21 Cửa sổ tạo New Project ...........................................................................67
Hình 4. 22 Đặt tên và chọn đường dẫn lưu project ...................................................68
Hình 4. 23 Giao diện chương trình sau khi tạo project mới .....................................68
Hình 4. 24 Thêm đường dẫn thư viện OpenCV vào project .....................................69
Hình 4. 25 Giao diện lập trình UI của QT Creator ...................................................69
Hình 4. 26 Biểu tượng trình biên dịch Keil µVision 5 .............................................70
Hình 4. 27 Giao diện của trình biên dịch Keil µVision 5 .........................................70
Hình 4. 28 Thư viện cho STM32F1 ..........................................................................71
Hình 4. 29 Cây thư mục chứa project .......................................................................71
Hình 4. 30 Tạo project mới .......................................................................................72
Hình 4. 31 Menu dùng để chọn chip STM32F103C8 ...............................................72
Hình 4. 32 Cửa sổ cấu hình cho project ....................................................................73
Hình 4. 33 Tạo thư mục main.c.................................................................................74
Hình 4. 34 Cây thư mục của project .........................................................................74
Hình 5. 1 Cấp nguồn cho mô hình ............................................................................ 75
Hình 5. 2 Giao diện chương trình xử lý ảnh trên máy tính ....................................... 75
Hình 5. 3 Đai ốc từ lồng cấp phôi rơi xuống băng tải ............................................... 76
Hình 5. 4 Đai ốc sau khi được chụp bởi camera ....................................................... 77
Hình 5. 5 Các đai ốc từ băng tải tới đĩa phân loại ..................................................... 77
Hình 5. 6 Thanh gạt đai ốc đạt yêu cầu ..................................................................... 78
ix


Hình 5. 7 Servo gạt vật không đạt yêu cầu ............................................................... 78
Hình 5. 8 Các hình chụp được lưu lại trong thư mục................................................ 79

LIỆT KÊ BẢNG
Bảng

Trang

Bảng 3. 1 Bảng cấu hình chế độ nạp của vi điều khiển ............................................ 33
Bảng 3. 2 Điện áp hoạt động và dòng tiêu thụ của một số linh kiện ........................ 40
Bảng 4. 1 Danh sách các linh kiện ............................................................................ 50
Bảng 4. 2 Các linh kiện, vật liệu được sử dụng trong mô hình ................................ 52

x


TÓM TẮT
Ứng dụng thị giác máy vào đời sống và sản xuất là một điều tất yếu hiện nay
nhằm giúp tăng năng suất và đảm bảo sự tin cậy, chính vì vậy nhằm tiếp cận các kiến
thức mới và theo kịp sự phát triển của kỹ thuật, nhóm quyết định thực hiện đề tài
“Thiết kế và thi công dây chuyền phân loại đai ốc ứng dụng xử lý ảnh”, đây là mô
hình phân loại sản phẩm. Hoạt động của mô hình dựa trên nguyên lý xử lý tín hiệu số
(hình ảnh) với ngôn ngữ lập trình C++ và thư viện OpenCV nhằm phân biệt các đai
ốc không đúng kích thước, sau đó chuyển tín hiệu về cho mạch điện trung tâm xử lý
điều khiển các cơ cấu chấp hành. Mục tiêu của đề tài là thi công một mô hình dây
chuyền có thể phân loại các đai ốc kích cỡ khác nhau. Việc xử lý hình ảnh được máy
tính đảm nhiệm nhằm đảm bảo tốc độ xử lý. Chương trình xử lý được viết thành phần
mềm có giao diện để trực quan và dễ quản lý.

xi


Chương 1. TỔNG QUAN
1.1

ĐẶT VẤN ĐỀ

Công nghiệp ngày càng phát triển, các nhà máy được xây dựng khắp nơi. Trong các
nhà máy thì dây chuyền tự động hóa cũng ngày càng phổ biến, thay thế cho việc sử dụng
nhân công, giảm công sức bỏ ra nhưng lại đạt được hiệu quả cao hơn. Đi kèm với các
dây truyền sản xuất tự động luôn là vấn đề phân loại sản phẩm. Đây là vấn đề không
mới và có mặt ở hầu hết mọi nhà máy nó không chỉ giúp tiết giảm nhân lực mà còn giúp
đảm bảo chất lượng của sản phẩm trước khi xuất xưởng.
Phân loại sản phẩm có nhiều cách, tùy vào yếu tố cần phân loại và sản phẩm mà
ta có thể chọn lựa cách thức phù hợp như phân loại theo kích thước, theo màu sắc, theo
hình dạng, theo lỗi… Trong đó phân loại theo sản phẩm lỗi là phức tạp nhất tuy nhiên
đây cũng là vấn đề xuất hiện ở tất cả các dây chuyền sản xuất. Để có thể phân loại theo
sản phẩm lỗi ta có thể sử dụng thị giác máy tính cụ thể là phương pháp xử lý hình ảnh,
với phương pháp này có thể xử lý nhanh và chính xác các lỗi mà ngay cả mắt thường
cũng khó nhận biết, với những sản phẩm nhiều chi tiết, các lỗi phức tạp thì ta cần kết
hợp với các phương pháp như mạng nơ-ron, học máy… để xử lý đạt được hiệu quả [12].
Hiện nay đã có nhiều nghiên cứu về phân loại sản phẩm dùng thị giác máy mà cụ thể
là xử lý ảnh, các công ty cũng cho ra đời nhiều loại smart camera tích hơp sẵn bộ xử lý
hình ảnh ứng dụng cho công nghiệp. Tuy nhiên giá thành các camera này là rất cao và
chỉ phù hợp cho các nhà máy lớn với những dây chuyền hiện đại. Ngoài ra cũng đã có
nhiều đề tài của sinh viên nghiên cứu về ứng dụng xử lý ảnh hoặc về điều khiển động
cơ, dây chuyền. Phan Văn Phương và Trần Trí Tâm nghiên cứu đề tài “Ứng dụng xử lý
ảnh cảnh báo tài xế ngủ gật” sử dụng thư viện OpenCV lập trình trên nền tảng Window
và Linux (kit Raspberry) để cảnh báo tài xế ngủ gật qua việc xử lý hình chụp để xác
định tài xế nhắm hay mở mắt, có cảnh báo nếu tài xế ngủ gật [3]. Phan Trọng Thuật và
Nguyễn Văn Đúng thực hiện đề tài “Phân loại sản phẩm dùng camera” qua đó nghiên
cứu các phương thức ứng dụng xử lý ảnh để phân loại đối tượng [4]. Lê Quốc Nhật và
Châu Thái Bảo thực hiện “Nhận dạng thứ tự màu cho cáp kết nối trong công nghiệp
dùng xử lý ảnh”, sử dụng thư viện OpenCV và phần mềm Visual Studio 2013 (C++) để
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP- Y SINH

1


nhận diện thứ tự màu cho dây cáp kết nối, hệ thống có giao diện thống kê thông số màu,
kiểm tra sai số so với màu chuẩn [5]. Trần Thanh Sang và Trần Mạnh Hùng thực hiện
đề tài “Thiết kế hệ thống nhận dạng biển số xe” từ đó đưa ra những phương pháp phát
hiện biển số xe dựa trên việc xử lý hình ảnh [6]. Lê Doãn Thắng với đề tài “Thiết kế thi
công bộ điều khiển máy chạy bộ điện” đã nghiên cứu kit STM32F103VET6 và sử dụng
kit này để điều khiển tốc độ động cơ động cơ DC của máy chạy bộ [7].
Với mục đích nghiên cứu, học hỏi và áp dụng những kiến thức đã được học về xử lý
ảnh, vi điều khiển, điện tử cơ bản…, chúng em quyết định thực hiện đề tài “Thiết kế và
thi công dây chuyền phân loại đai ốc ứng dụng xử lý ảnh”. Dây chuyền sử dụng vi điều
khiển trung tâm là STM32F103C8T6, cảm biến hồng ngoại, động cơ DC, USB camera
để lấy ảnh, đèn led chiếu sáng mẫu, máy tính với hệ điều hành Window để xử lý ảnh sử
dụng thư viện mã nguồn mở OpenCV. Dây chuyền có thể phân loại các đai ốc bị sai
kích thước, bị lệch tâm, bị méo. Các thông số của dây chuyền có thể cài đặt và giám sát
qua phần mềm trên máy tính. Ưu điểm của việc sử dụng USB camera kết hợp máy tính
cùng bộ xử lý dùng vi điều khiển là giá thành rẻ, nhỏ gọn, có thể thực hiện, vận hành và
sửa chữa dễ dàng. [8]

1.2

MỤC TIÊU VÀ GIỚI HẠN

Thiết kế và thi công một dây chuyền có thể phân loại đai ốc ứng dụng xử lý ảnh dùng
thư viện mã nguồn mở OpenCV viết trên ngôn ngữ C++. Dây chuyền có thể phân loại
các đai ốc bị sai kích thước, bị méo. Các thông số của dây chuyền có thể cài đặt và giám
sát qua phần mềm trên máy tính sử dụng hệ điều hành Window. Máy tính sẽ giao tiếp
với vi điều khiển thông qua giao tiếp UART.

1.3

NỘI DUNG NGHIÊN CỨU

-

Tìm hiểu cách thức hoạt động của các hệ thống phân loại dùng xử lý ảnh.

-

Tìm hiểu chuẩn giao tiếp UART, động cơ DC, cảm biến hồng ngoại, encoder.

-

Tìm hiểu về vi điều khiển STM32F103C8T6.

-

Thiết kế và thi công mô hình dây chuyền phân loại.

-

Thiết kế và thi công mạch điện cho hệ thống.

-

Viết chương trình xử lý ảnh trên máy tính dùng phần mềm QT Creator.

-

Viết chương trình điều khiển cho vi điều khiển STM32F103C8T6

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP- Y SINH

2


-

Chạy thử nghiệm mô hình, chỉnh sửa và hoàn thiện hệ thống.

-

Thực hiện viết luận văn báo cáo.

-

Tiến hành báo cáo đề tài tốt nghiệp.

1.4

GIỚI HẠN
-

Sử dụng USB Camera để thu nhận ảnh và dùng máy tính PC hoặc laptop trên hệ
điều hành Window để xử lý hình ảnh thu được.

-

Dây chuyền phân loại đai ốc lục giác loại M10 độ dày 8mm, khoảng các giữa 2
đỉnh đối diện là 18.9mm, khoảng cách giữa 2 cạnh đối diện là 17mm với các đai
ốc có kích thước khác

1.5

-

Dây chuyền chỉ dừng ở mức mô hình, kích thước nhỏ.

-

Dây chuyền sử dụng động cơ giảm tốc DC 12V

BỐ CỤC

Chương 1: TỔNG QUAN.
Trình bày, đặt vấn đề dẫn nhập lý do chọn đề tài, mục tiêu, nội dung nghiên cứu, các
giới hạn thông số và bố cục đồ án.
Chương 2: CƠ SỞ LÝ THUYẾT.
Giới thiệu các cơ sở lý thuyết gồm lý thuyết về xử lý ảnh, các linh kiện và thiết bị sử
dụng để thiết kế hệ thống và trình bày các chuẩn truyền, giao thức.
Chương 3: TÍNH TOÁN VÀ THIẾT KẾ HỆ THỐNG.
Thiết kế sơ đồ khối của hệ thống, đưa ra sơ đồ nguyên lí của các khối trong hệ thống
và thực hiện việc tính toán thiết kế.
Chương 4: THI CÔNG HỆ THỐNG.
Trình bày về thiết kế lưu đồ, đưa ra giải thuật và viết chương trình. Quá trình thi công
mạch điện, mô hình hệ thống hoàn chỉnh.
Chương 5: KẾT QUẢ - NHẬN XÉT - ĐÁNH GIÁ.
Đưa ra kết quả đạt được sau khi thi công mô hình, rút ra những nhận xét, đánh giá
toàn bộ hệ thống.

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP- Y SINH

3


Chương 6: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN.
Trình bày những kết luận về hệ thống những phần đã làm và chưa làm, đồng thời nêu
ra hướng phát triển cho hệ thống

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP- Y SINH

4


Chương 2. CƠ SỞ LÝ THUYẾT
2.1.

TỔNG QUAN VỀ XỬ LÝ ẢNH

Xử lý ảnh là quá trình xử lý số tín hiệu ở đây là tín hiệu hình ảnh. Hiện nay xử lý
ảnh đang phát triển rất mạnh mẽ, vì ứng dụng của nó rất rộng và hữu ích bao gồm ở rất
nhiều lĩnh vực: sản xuất, kinh tế, đời sống, y tế, quân sự… Chúng ta có thể chia xử lý
ảnh thành bốn nhóm ứng với bốn lĩnh vực chính: xử lý nâng cao chất lượng ảnh, nhận
dạng ảnh, truy vấn ảnh và nén ảnh. Trong đề tài này sẽ tìm hiểu về lĩnh vực nhận dạng
ảnh. Các bước cơ bản của xử lý ảnh như hình 2.1

Hình
2.1.2.Các
1bước
xử xử
lý ảnh
Hình
1 Các
bước
lý ảnh

2.1.1. Giới thiệu về ảnh số
Ảnh số là tập hợp các điểm ảnh (Pixel) có giá trị mức xám xác định dùng để mô
tả ảnh gần với ảnh thật, trong đề tài này chỉ xét đến ảnh 2 chiều, một ảnh sau khi được
số hóa có thể được mô tả như một ma trận điểm A[M, N] trong không gian hai chiều
trong đó M và N là số cột và số hàng của các điểm ảnh. Một điểm ảnh bất kì lúc này sẽ
có tọa độ A(x, y) với 0=của ảnh. Ảnh có độ phân giải càng cao thì ảnh càng trở nên chân thực và sắc nét hơn.
Giá trị của mỗi điểm ảnh sẽ quyết định màu sắc của ảnh ta gọi là mức xám của điểm
ảnh, giá trị này có thể là một số (ảnh nhị phân, ảnh xám) hoặc một tập hợp các giá trị
(ảnh màu). Xử lý ảnh là ta xử lý các giá trị này trong ma trận ảnh để được một kết quả
mong muốn. Số bit của một bức ảnh chính là số các giá trị mức xám có thể có, ví dụ một
ảnh 8bit sẽ có 28 =256 giá trị mức xám từ 0 đến 255 tương tự ảnh 16bit thì sẽ có 216 giá
trị.
Tùy theo giá trị dùng để biểu diễn điểm ảnh mà ta có thể phân ra 3 loại ảnh chính
thông dụng:
+ Ảnh nhị phân: giá trị mỗi điểm ảnh là 0 hoặc 1, nghĩa là trắng hoặc đen. Chính
vì vậy mà còn gọi là ảnh đen trắng
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP- Y SINH

5


+ Ảnh xám: giá trị mỗi điểm ảnh nằm trong giải giá trị từ 0 đến 255, nghĩa là cần
8 bits hay 1 byte để biểu diễn mỗi điểm ảnh này.
+ Ảnh màu RGB: mỗi điểm ảnh có giá trị gồm 3 màu đỏ (Red) + xanh lục (Green)
+ xanh dương (Blue). Mỗi màu có giá trị từ 0 đến 255, nghĩa là mỗi điểm ảnh cần 24bits
hay 3bytes để biểu diễn. Ngoài hệ màu RGB còn có nhiều hệ màu khác phù hợp với
những mục đích khác nhau như hệ CMYK, hệ HSV…

2.1.2. Phương pháp thu nhận ảnh
Ảnh tự nhiên từ thế giới ngoài được thu nhận qua các thiết bị thu (như Camera,
máy chụp ảnh). Trước đây, ảnh được thu qua Camera là các ảnh tương tự. Giờ đây, với
sự phát triển của khoa học công nghệ ảnh được thu nhận từ cảm biến và chuyển trực tiếp
thành ảnh số nên không cần bước chuyển đổi từ tương tự sang số. Có nhiều thiết bị cho
phép thu ảnh ví dụ điện thoại di động, máy chụp hình, máy scan, webcam…Các thiết bị
này đều cho ra ảnh với những định dạng ảnh đã được quy định phù hợp cho máy tính
như JPG, PNG, JPEG… chính vì vậy việc đọc chúng trên máy tính là rất dễ dàng. Trong
đề tài này sử dụng camera loại webcam để thu nhận hình ảnh thực tế.

2.1.3. Giới thiệu về thư viện OpenCV và camera Logitech C270
 Thư viện OpenCV
OpenCV (Open Computer Vision) là một thư viện mã nguồn mở hàng đầu cho
xử lý về thị giác máy tính, machine learning, xử lý ảnh. OpenCV đươc viết bằng C/C++,
vì vậy có tốc độ tính toán rất nhanh, có thể sử dụng với các ứng dụng liên quan đến thời
gian thực. Opencv có thể hỗ trợ cho C/C++, Python Java vì vậy hỗ trợ được cho Window,
Linux, MacOs lẫn Android, iOS. OpenCV có cộng đồng hơn 47 nghìn người dùng và
số lượng download vượt quá 6 triệu lần và vẫn đang mở rộng liên tục.
Opencv có rất nhiều ứng dụng:
-

Nhận dạng ảnh

-

Xử lý hình ảnh

-

Phục hồi hình ảnh/video

-

Thực tế ảo.

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP- Y SINH

6


OpenCV vẫn đang được đóng góp và phát triển liên tục, nó đặc biệt phù hợp cho
những ứng dụng xử lý hình ảnh đơn giản vì thư viện dễ sử dụng và nhiều hỗ trợ từ
cộng đồng.
 Camera Logitech C270
Webcam Logitech C270 chụp hình và quay film có thể đạt độ phân giải HD 720p
(1280 x 720 pixel). Với độ phân giải này hình ảnh thu được trung thực và khá sắc nét.
Ngoài ra, Webcam C270 có chế độ chỉnh sáng tự động sẽ giúp hình ảnh sáng hơn kể cả
trong điều kiện ánh sáng tối, góc chụp lên tới 60 độ. Tốc độ khung hình đạt 30fps (30
khung hình một giây) tốc độ này giúp việc chụp các vật chuyển động với tốc độ không
quá nhanh được thực hiện chính xác. Sử dụng chuẩn giao tiếp USB nên việc kết nối với
máy tính rất dễ dàng

Hình 2. 2 Hình ảnh Webcam Logitech C270

2.1.4. Điều chỉnh độ sáng và độ tương phản
Độ sáng của ảnh phụ thuộc vào giá trị của mỗi pixel tạo nên ảnh. Vì vậy để thay
đổi độ sáng ảnh ta thay đổi giá trị mức sáng các pixel. Với g và f là ảnh trước và sau khi
biến đổi ta có công thức điều chỉnh độ sáng như sau:
g(x,y) = a*f(x,y)+b

(2.1)

 a, b: hằng số tự chọn.
 f(x,y): mức sáng của pixel trong ảnh tại điểm có tọa độ (x,y).
 g(x,y): mức sáng của pixel trong ảnh tại điểm có toạ độ (x,y) sau khi biến đổi.

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP- Y SINH

7


Ngoài việc thay đổi bằng phần mềm ta có thể tăng độ sáng ảnh bằng phần cứng như lắp
thêm đèn rọi, dùng tấm nền màu sáng…

2.1.5. Lọc nhiễu ảnh
Một ảnh khi được chụp thường kèm theo các nhiễu, các nhiễu này có nhiều
nguyên nhân gây nên: ánh sáng không đủ, chất lượng thiết bị thu không tốt, ảnh hưởng
do các yếu tố môi trường xung quanh, do sai số lượng tử hóa hay sai số truyền … Một
số loại nhiễu phổ biến thường xuất hiện trong ảnh:
 Nhiễu độc lập với dữ liệu ảnh:
-

Là một loại nhiễu cộng (additive noise): ảnh thu được f(i,j) là tổng của ảnh đúng
(true image) và nhiễu n(i,j): f(i,j) = s(i,j) + n(i,j)

-

Thông tin ảnh có tần số thấp, còn nhiễu ảnh hưởng đến tần số cao và ảnh hưởng
này có thể được giảm đi khi sử dụng bộ lọc thông thấp

 Nhiễu phụ thuộc vào dữ liệu:
-

Nhiễu xuất hiện khi có sự bức xạ đơn sắc nằm rải rác trên bề mặt ảnh, độ lởm
chởm trên bề mặt tùy thuộc vào bước sóng của điểm ảnh.

-

Do có sự giao thoa giữa các sóng ảnh nên làm xuất hiện những vết lốm đốm trên
ảnh

 Nhiễu Gauss:
-

Nhiễu này có được do bản chất rời rạc của bức xạ (hệ thống ghi ảnh bằng cách
đếm các photon (lượng tử ánh sáng)

-

Là nhiễu cộng và độc lập (independent, additive noise) – nhiễu n(i,j) có phân tán
Gauss (trung bình = zero) được mô tả bởi độ lệch chuẩn, hay phương sai

-

Mỗi pixel trong ảnh nhiễu là tổng giá trị pixel đúng (true pixel) và pixel ngẫu
nhiên

 Nhiễu muối – tiêu (Salt & Pepper noise):
-

Là một loại nhiễu xung, sinh ra do xảy ra sai số trong quá trình truyền dữ liệu.

-

Những điểm ảnh có thể mang giá trị cực đại hoặc cực tiểu. Với ảnh xám nếu một
điểm ảnh có giá trị cực đại (tức cường độ sáng bằng 255) thì nó sẽ tạo ra một
đốm trắng trên ảnh, trông giống như hạt “muối”. Và ngược lại nếu một điểm ảnh

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP- Y SINH

8


có giá trị cực tiểu (tức cường độ sáng bằng 0) thì sẽ tạo ra một đốm đen, giống
như “tiêu”. Vậy nên còn gọi là ảnh muối tiêu.
Để có thể xử lý một cách chính xác và hiệu quả, ảnh cần được lọc nhiễu. Nguyên tắc
chung của các phương pháp lọc ảnh số là cho ma trận ảnh nhân chập với một ma trận
lọc (Kernel) hay còn được gọi là các phép tính nhân chập trên ảnh. Ma trận lọc lọc
(Kernel) còn có thể được gọi là cửa số chập, cửa sổ lọc, mặt nạ...
G = M*I

(2.2)

 I: Là ảnh gốc được sử dụng để lọc số ảnh.
 G: Là ảnh ra sau khi thực hiện xong phép lọc số ảnh.
 M: Là ma trận lọc (Mask, kernel).
Với mỗi phép lọc ta có những ma trận lọc (Kernel) khác nhau, không có một quy
định cụ thể nào cho việc xác định M. Tổng các phẩn tử trong ma trận M thường là 1
 Tpt > 1: Ảnh sau khi thực hiện xong phép lọc số ảnh (G) có độ sáng lớn hơn so
với ảnh ban đầu (F).
 Tpt < 1: Ảnh sau khi thực hiện xong phép lọc số ảnh (G) có độ sáng nhỏ hơn so
với ảnh ban đầu (F).

Hình 2. 3 Một mặt nạ lọc kích thước 3x3
Một số phương pháp lọc phù hợp để xử lý một loại nhiễu nhất định. Một số bộ lọc
thông dụng như lọc trung vị, lọc trung bình, lọc thông thấp, lọc thông cao…
 Lọc trung vị
Lọc trung vị là một kĩ thuật lọc phi tuyến (non-linear), bộ lọc này được sử dụng rất
phổ biến trong xử lý ảnh, lọc trung vị còn được gọi là bộ lọc hạng. Ý tưởng chính của
thuật toán lọc trung vị là sử dụng một cửa sổ lọc (thường là ma trận 3x3) quét qua lần
lượt từng điểm ảnh của ảnh đầu vào input. Tại vị trí mỗi điểm ảnh lấy giá trị của các
điểm ảnh tương ứng trong vùng 3x3 của ảnh gốc "lấp" vào ma trận lọc. Sau đó sắp xếp
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP- Y SINH

9


các điểm ảnh trong cửa sổ này theo thứ tự (tăng dần hoặc giảm dần tùy ý). Cuối cùng,
gán điểm ảnh nằm chính giữa (trung vị) của dãy giá trị điểm ảnh đã được sắp xếp ở trên
cho giá trị điểm ảnh đang xét của ảnh đầu ra output.
Cho một dãy số 𝑋1 , 𝑋2 , 𝑋3 , ..., 𝑋𝑛 được sắp xếp theo thứ tự tăng dần hoặc giảm dần.
Khi đó 𝑋𝑡𝑣 được tính bởi công thức sau:
-

Nếu n lẻ:

𝑛

𝑋𝑡𝑣 = 𝑋( + 1)

(2.3)

2

Nếu n chẵn: 𝑋𝑡𝑣 =

𝑛
2

𝑛
2

𝑋( )+𝑋( +1)

(2.4)

2

Hình 2. 4 Ví dụ về phần tử trung vị
Các bước thực hiên khi sử dụng bộ lọc trung vị:
-

Quét ma trận lọc lên các thành phần của ảnh gốc, điền các giá trị được quét vào
ma trận lọc.

-

Lấy các thành phần trong của sổ lọc để xử lý.

-

Sắp xếp theo thứ tự các thành phần trong cửa sổ lọc.

-

Lưu lại thành phần trung vị, gán cho ảnh output.
Ví dụ cho ảnh I kích thước 5x5 như sau:
1

2

1

6

8

4

5

1

3

9

3

1

5

4

5

4

5

1

2

2

6

6

9

7

7

Sử dụng ma trận lọc M kích thước 3x3 xét tại I(3,3):

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP- Y SINH

10


1

2

1

6

8

4

5

1

3

9

3

1

5

4

5

4

5

1

2

2

6

6

9

7

7

Các giá trị sau khi sắp xếp từ thấp tới cao:
1

1

1

2

3

4

5

5

5

Kết quả 3 chính là giá trị trung vị cần tìm, lúc này ta gán giá trị 3 cho pixel tại vị trí
I(3,3) trong ảnh.
Vì phải sắp xếp lại mỗi khi ma trận lọc di chuyển đến một pixel nên bộ lọc này
có tốc độ không cao, hiệu quả giảm nếu ảnh có kích thước lớn. Tuy nhiên bộ lọc trung
vị có nhiều ưu điểm như giúp loại bỏ nhiễu nhưng vẫn đảm bảo độ phân giải, nó khá
hiệu quả đối với hai loại nhiễu: nhiễu đốm (speckle noise) và nhiễu muối tiêu (saltpepper noise).
 Lọc trung bình
Lọc trung bình là loại lọc tuyến tính, với phương pháp thay thế giá trị mỗi điểm ảnh
bằng trung bình trọng số của các điểm trong vùng lân cận. Giả sử rằng dùng một ma trận
lọc (3x3) quét qua từng điểm ảnh của ảnh đầu vào. Tại vị trí mỗi điểm ảnh lấy giá trị
của các điểm ảnh tương ứng trong vùng (3x3) của ảnh gốc đặt vào ma trận lọc. Giá trị
điểm ảnh của ảnh đầu ra là giá trị trung bình của tất cả các điểm trong ảnh trong ma trận
lọc.
Các bước thực hiện lọc trung bình với ảnh đầu vào I và I(x,y) là điểm ảnh đang xét,
mộ ngưỡng α:
-

Bước 1: Quét ma trận lọc lên các thành phần của ảnh gốc, điền các giá trị được
quét vào ma trận lọc

-

Bước 2: Tính tổng các thành phần trong ma trận lọc, chia tổng này với số lượng
các phần tử của cửa sổ lọc ra một giá trị Itb = (x, y).

-

Bước 3: Hiệu chỉnh:
+ Nếu I(x, y) - Itb (x, y) > α thì I(x,y) = Itb (x, y).

BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP- Y SINH

11


+ Nếu I(x, y) - Itb (x, y) ≤ α thì I(x,y) = I(x,y).
Giá trị ngưỡng α có thể có hoặc không tùy vào mục đích sử dụng.
Ví dụ I là một ma trận kích thước 5x5:
1

2

1

6

8

4

5

1

3

9

3

1

5

4

5

4

5

1

2

2

6

6

9

7

7

Sử dụng ma trận lọc kích thước 3x3 xét tại I(3,3), không sử dụng ngưỡng:

𝐼𝑡𝑏 (𝑥, 𝑦) =

1

2

1

6

8

4

5

1

3

9

3

1

5

4

5

4

5

1

2

2

6

6

9

7

7

5+1+3+1+5+4+5+1+2
=3
9

Vậy I(3,3) sau khi lọc sẽ có giá trị 3.
Sau khi sử dụng bộ lọc trung bình, chênh lệch độ sáng các điểm ảnh sẽ giảm
xuống nghĩa là sẽ không có sự đột biến về giá trị của các điểm ảnh lân cận nhau. Vì các
nhiễu ngẫu nhiên thường là các điểm có giá trị đột biến mạnh so với điểm xung quanh
nên bộ lọc trung bình sẽ giúp giảm các nhiễu này hiệu quả ví dụ như nhiễu muối tiêu.
Tuy nhiên bởi vì các cạnh hoặc đường biên trong ảnh cũng đặc trưng bởi quá trình biến
đổi mạnh về cường độ nên lọc trung bình có thể làm mờ các cạnh và đường biên.
 Lọc Gauss
Bộ lọc Gauss là một bộ lọc rất hữu ích và thông dụng, được thực hiện bằng cách
nhân chập ảnh đầu vào với một ma trận lọc Gauss sau đó cộng chúng lại để tạo thành
ảnh đầu ra. Vì biến đổi Fourier của một Gaussian sẽ tạo ra một Gaussian khác cho nên
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP- Y SINH

12


Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay

×