Xem mẫu
- 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:
ỨNG DỤNG CHATBOT VÀO
ĐIỀU KHIỂN NHÀ THÔNG MINH
GVHD: TS. Nguyễn Mạnh Hùng
SVTH: Nguyễn Minh Hùng MSSV: 14141139
Tp. Hồ Chí Minh - 06/2018
- 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 KỸ THUẬT ĐIỆN TỬ TRUYỀN THÔNG
ĐỀ TÀI:
ỨNG DỤNG CHATBOT VÀO ĐIỀU
KHIỂN NHÀ THÔNG MINH
GVHD: TS. Nguyễn Mạnh Hùng
SVTH: Nguyễn Minh Hùng MSSV: 14141139
Tp. Hồ Chí Minh - 06/2018
i
- TRƢỜNG ĐH SPKT TP. HỒ CHÍ MINH CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
KHOA ĐIỆN-ĐIỆN TỬ ĐỘC LẬP - TỰ DO - HẠNH PHÚC
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH ----o0o----
Tp. HCM, ngày 28 tháng 06 năm 2018
NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP
Họ tên sinh viên: Nguyễn Minh Hùng MSSV: 14141139
Chuyên ngành: Kỹ thuật Điện Tử Truyền Thông Mã ngành: 14141
Hệ đào tạo: Đại học chính quy Mã hệ: 1
Khóa: 2014 Lớp: 14141DT3B
I. TÊN ĐỀ TÀI: ỨNG DỤNG CHATBOT VÀO ĐIỀU KHIỂN NHÀ THÔNG MINH
II. NHIỆM VỤ
1. Các số liệu ban đầu:
- 1 chatbot đƣợc tạo ra trên nền tảng Dialogflow.
- 1 kit raspberry Pi3 B.
- 1 Mạch dimmer điều khiển độ sáng của bóng đèn.
- 2 Module Relay 5V 2 kênh điều khiển đóng/mở đèn, quạt.
- 1 động cơ servo MG90S điều khiển đóng/mở cửa.
- 1 Module cảm biến nhiệt độ, độ ẩm DHT11.
2. Nội dung thực hiện:
- Tìm hiểu nền tảng Dialogflow và tạo ra chatbot dựa trên nền tảng này.
- Tìm hiểu kit Raspberry Pi 3 và ngôn ngữ lập trình Python.
- Tạo webhook để nhận dữ liệu từ Dialogflow, xử lí dữ liệu để trả lại đồng thời điều
khiển thiết bị trong nhà.
- Thiết kế và thi công mạch điều khiển dimmer.
- Tìm hiểu cách điều khiển động cơ servo, cảm biến nhiệt độ, độ ẩm DHT11.
- Thi công mô hình nhà thông minh, kết nối các module lại với nhau.
III. NGÀY GIAO NHIỆM VỤ: 16/03/2018
IV. NGÀY HOÀN THÀNH NHIỆM VỤ: 28/06/2018
V. HỌ VÀ TÊN CÁN BỘ HƢỚNG DẪN: TS. Nguyễn Mạnh Hùng
CÁN BỘ HƢỚNG DẪN BM. ĐIỆN TỬ CÔNG NGHIỆP – Y SINH
ii
- TRƢỜNG ĐH SPKT TP. HỒ CHÍ MINH CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
KHOA ĐIỆN-ĐIỆN TỬ ĐỘC LẬP - TỰ DO - HẠNH PHÚC
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH ----o0o----
Tp. HCM, ngày 28 tháng 06 năm 2018
LỊCH TRÌNH THỰC HIỆN ĐỒ ÁN TỐT NGHIỆP
Họ tên sinh viên: Nguyễn Minh Hùng
Lớp: 14141DT3B MSSV: 14141139
Tên đề tài: Ứng dụng chatbot và điều khiển nhà thông minh
Xác nhận
Tuần/ngày Nội dung
GVHD
Tuần 1 Gặp GVHD để nghe phổ biến yêu cầu làm đồ án,
(16/03 - 23/03) tiến hành chọn đồ án
Tuần 2 GVHD tiến hành xét duyệt đề tài
Tuần 3 Viết tóm tắt yêu cầu đề tài đã chọn: đề tài làm cái
gì, nội dung thiết kế, các thông số giới hạn của đề
tài
Tuần 4 Tiến hành thiết kế sơ đồ khối, giải thích chức
năng các khối
Tuần 5 - Tìm hiểu các khái niệm liên quan đến đề tài
nhƣ API, webhook
- Thực hiên thiết kế trên Dialogflow
Tuần 6 - Cài đặt các gói thƣ viện cần thiết cho Raspberry
- Thực hiện tạo webhook và xử lí dữ liệu nhận
đƣợc
Tuần 7 - Thực hiện code phần back-end để hoàn thiện
yêu cầu xử lí trả về dữ liệu cho Dialogflow, điều
Tuần 8
khiển phần cứng.
Tuần 9 - Sử dụng ngrok để public server online
iii
- Tuần 10 - Thiết kế sơ đồ nguyên lí mạch dimmer
- Tiến hành vẽ PCB, chọn linh kiện
- Tiến hành thi công mạch
- Kiểm tra mạch thi công
Tuần 11 - Thi công mô hình đồ án
Tuần 12 - Kiểm tra, đánh giá mô hình
Tuần 13 - Viết báo cáo những nội dung đã làm
- Hoàn thiện báo cáo và gởi cho GVHD để xem
Tuần 14
xét góp ý lần cuối trƣớc khi in và báo cáo
Tuần 15 Tiến hành làm silde báo cáo và các nhiệm vụ liên
quan đến đồ án tốt nghiệp
GV HƢỚNG DẪN
(Ký và ghi rõ họ và tên)
iv
- LỜI CAM ĐOAN
----- -----
Tôi xin cam đoan đây là công trình nghiên cứu của riêng tôi và đƣợc sự hƣớng
dẫn khoa học của Ts. Nguyễn Mạnh Hùng. Các nội dung nghiên cứu, kết quả trong
đề tài này là do tôi tự thực hiện dựa vào một số tài liệu trƣớc đó và không sao chép
từ tài liệu hay công trình đã có trƣớc đó. Những thông tin phục vụ cho đề tài đƣợc
chính tác giả thu thập từ các nguồn khác nhau có ghi rõ trong phần tài liệu tham
khảo.
Tôi xin chịu mọi trách nhiệm về công trình nghiên cứu của riêng mình!
Sinh viên thực hiện
Nguyễn Minh Hùng
v
- LỜI CẢM ƠN
----- -----
Trong thời gian làm đồ án tốt môn học, em đã nhận đƣợc nhiều sự giúp đỡ,
đóng góp ý kiến và chỉ bảo nhiệt tình của thầy cô, gia đình và bạn bè.
Em xin gửi lời cảm ơn chân thành đến Ts. Nguyễn Mạnh Hùng, giảng viên Bộ
môn Điện Tử Công Nghiệp – Y Sinh - Trƣờng ĐH Sƣ Phạm Kỹ Thuật TP.HCM,
ngƣời đã tận tình hƣớng dẫn, chỉ bảo em trong suốt quá trình làm đồ án.
Em cũng xin chân thành cảm ơn các thầy cô giáo trong trƣờng ĐH Sƣ Phạm
Kỹ Thuật TP.HCM nói chung, các thầy cô trong Bộ môn Điện Tử Công Nghiệp – Y
Sinh nói riêng đã dạy dỗ cho em kiến thức về các môn đại cƣơng cũng nhƣ các môn
chuyên ngành, giúp em có đƣợc cơ sở lý thuyết vững vàng và tạo điều kiện giúp đỡ
em trong suốt quá trình học tập.
Cuối cùng, em xin chân thành cảm ơn gia đình và bạn bè, đã luôn tạo điều
kiện, quan tâm, giúp đỡ, động viên em trong suốt quá trình học tập và hoàn thành
đồ án môn học.
Sinh viên thực hiện
Nguyễn Minh Hùng
vi
- MỤC LỤC
Trang bìa ..................................................................................................................... i
Nhiệm vụ đồ án .......................................................................................................... ii
Lịch trình ................................................................................................................... iii
Cam đoan.....................................................................................................................v
Lời cảm ơn ................................................................................................................ vi
Mục lục ..................................................................................................................... vii
Liệt kê hình vẽ ........................................................................................................... xi
Liệt kê bảng vẽ ........................................................................................................ xiv
Tóm tắt ......................................................................................................................xv
Chƣơng 1. TỔNG QUAN .........................................................................................1
1.1 ĐẶT VẤN ĐỀ ...............................................................................................1
1.2 MỤC TIÊU ....................................................................................................1
1.3 NỘI DUNG NGHIÊN CỨU .........................................................................2
1.4 GIỚI HẠN .....................................................................................................2
1.5 BỐ CỤC ........................................................................................................3
Chƣơng 2. CƠ SỞ LÝ THUYẾT .............................................................................4
2.1 TỔNG QUAN VỀ CHATBOT .....................................................................4
2.1.1 Khái niệm về chatbot ..............................................................................4
2.1.2 Phân loại chatbot .....................................................................................4
2.1.3 Xử lý ngôn ngữ tự nhiên (Natural Language Processing) ......................5
2.2 TỔNG QUAN VỀ API ..................................................................................5
2.2.1 Khái niệm về API ...................................................................................5
2.2.2 Mô hình của một API..............................................................................6
2.2.3 Các tác vụ thực hiện qua API .................................................................6
2.3 WEBHOOK ...................................................................................................7
2.3.1 Khái niệm Webhook ...............................................................................7
2.3.2 Hoạt động của Webhook.........................................................................7
2.4 TỔNG QUAN VỀ DIALOGFLOW .............................................................8
2.4.1 Giới thiệu về Dialogflow ........................................................................8
2.4.2 Cấu trúc của Dialogflow .........................................................................9
a. Agent ...........................................................................................................10
vii
- b. Intent ...........................................................................................................10
c. Entities .........................................................................................................15
d. Fulfillment ...................................................................................................17
e. Integrations ..................................................................................................17
2.5 RASPBERRY PI 3 ......................................................................................18
2.5.1 Giới thiệu về Board Raspberry Pi .........................................................18
2.5.2 Phần cứng của Raspberry Pi 3 ..............................................................18
a. Nguồn cung cấp ...........................................................................................20
b. Các cổng giao tiếp .......................................................................................20
c. Các chân giao tiếp GPIO của kit .................................................................22
2.5.3 Hệ điều hành Raspbian cho kit Raspberry Pi .......................................23
2.6 ĐỘNG CƠ SERVO .....................................................................................24
2.6.1 Giới thiệu động cơ servo.......................................................................24
2.6.2 Nguyên lý hoạt động của động cơ servo...............................................25
2.7 CẢM BIẾN NHIỆT ĐỘ DHT11 .................................................................27
2.8 MODULE RELAY 2 CHANNEL 5V .........................................................27
2.9 MOSFET .....................................................................................................28
2.9.1 Cấu tạo Mosfet ......................................................................................29
2.9.2 Nguyên lí hoạt động ..............................................................................30
Chƣơng 3. TÍNH TOÁN VÀ THIẾT KẾ ..............................................................31
3.1 GIỚI THIỆU ................................................................................................31
3.2 TÍNH TOÁN VÀ THIẾT KẾ HỆ THỐNG ................................................31
3.2.1 Thiết kế sơ đồ khối hệ thống ................................................................31
a. Sơ đồ khối hệ thống ....................................................................................31
b. Sơ đồ mô hình hệ thống ..............................................................................32
3.2.2 Tính toán và thiết kế mạch....................................................................32
a. Thiết kế khối Dialogflow ............................................................................33
b. Thiết kế khối điều khiển raspberry .............................................................33
c. Thiết kế khối điều khiển động lực...............................................................33
d. Thiết kế khối nguồn ....................................................................................35
Chƣơng 4. THI CÔNG HỆ THỐNG .....................................................................36
4.1 GIỚI THIỆU ................................................................................................36
viii
- 4.2 THIẾT KẾ DIALOGFLOW........................................................................36
4.2.1 Lƣu đồ giải thuật ...................................................................................36
4.2.2 Thiết kế cho yêu cầu điều khiển ON-OFF ............................................37
a. Tạo mới Agent.............................................................................................37
b. Tạo entities ..................................................................................................38
c. Tạo Intent ....................................................................................................39
d. Fulfillment ...................................................................................................42
e. Integrations ..................................................................................................43
4.2.3 Mở rộng cho điều khiển ON-OFF ........................................................44
a. Thêm mới entities........................................................................................44
b. Thêm mới intent ..........................................................................................45
4.2.4 Kết quả hoàn chỉnh trên Dialogflow .....................................................46
a. Intents ..........................................................................................................46
b. Entities ........................................................................................................46
4.3 LẬP TRÌNH TRÊN RASPBERRY PI 3 .....................................................46
4.3.1 Giới thiệu ngôn ngữ lập trình Python ...................................................46
a. Lịch sử của Python ......................................................................................47
b. Các phiên bản Python đã phát hành ............................................................47
c. Đặc điểm của ngôn ngữ lập trình Python ....................................................48
4.3.2 Giới thiệu phần mềm lập trình Python 3 IDLE ....................................49
4.3.3 Lƣu đồ giải thuật ...................................................................................50
4.3.4 Viết chƣơng trình hệ thống ...................................................................51
4.3.5 Public server lên internet bằng ngrok ...................................................52
4.4 THI CÔNG MẠCH ĐIỀU KHIỂN DIMMER ............................................53
4.4.1 Sơ đồ mạch PCB Dimmer.....................................................................54
4.4.2 Thi công mạch ......................................................................................55
4.5 ĐÓNG GÓI VÀ THI CÔNG MÔ HÌNH ....................................................56
4.5.1 Đóng gói bộ điều khiển .........................................................................56
4.5.2 Thi công mô hình ..................................................................................57
4.6 KẾT QUẢ VẬN HÀNH HỆ THỐNG ........................................................61
4.7 TÀI LIỆU HƢỚNG DẪN, THAO TÁC .....................................................63
4.7.1 Tài liệu hƣớng dẫn sử dụng ..................................................................63
ix
- 4.7.2 Quy trình thao tác .................................................................................63
Chƣơng 5. KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ ................................................65
5.1 DIALOGFLOW...........................................................................................65
5.1.1 Dialogflow ............................................................................................65
5.1.2 Các khái niệm liên quan........................................................................65
5.2 RASPBERRY PI 3 ......................................................................................66
5.2.1 Raspberry Pi 3 .......................................................................................66
5.2.2 Công cụ ngrok .......................................................................................66
5.3 PHẦN CỨNG ..............................................................................................66
5.3.1 Mạch điều khiển dimmer ......................................................................66
5.3.2 Động cơ Servo ......................................................................................67
5.3.3 Module Relay 2 kênh 5V ......................................................................67
5.3.4 Module cảm biến DHT11 .....................................................................67
5.4 NHẬN XÉT VÀ ĐÁNH GIÁ .....................................................................67
Chƣơng 6. KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN ..........................................69
6.1 KẾT LUẬN .................................................................................................69
6.2 HƢỚNG PHÁT TRIỂN ..............................................................................69
TÀI LIỆU THAM KHẢO ......................................................................................70
PHỤ LỤC .................................................................................................................71
x
- LIỆT KÊ HÌNH VẼ
Hình Trang
Hình 2.1: Khái niệm chatbot .......................................................................................4
Hình 2.2: Khái niệm về API ........................................................................................5
Hình 2.3: Giới thiệu Dialogflow .................................................................................8
Hình 2.4: Các phần của Dialogflow ............................................................................9
Hình 2.5: Các mục trong một Intent .........................................................................10
Hình 2.6: Hình ảnh mục context ...............................................................................11
Hình 2.7: Hình ảnh mục Events ................................................................................12
Hình 2.8: Hình ảnh mục Training Phrases ................................................................12
Hình 2.9: Hình ảnh của mục Action & Parameters...................................................13
Hình 2.10: Hình ảnh mục Responses ........................................................................14
Hình 2.11: Hình ảnh của mục Fulfillment ................................................................15
Hình 2.12: Hình ảnh của mục Entities ......................................................................16
Hình 2.13: Các nền tảng tích hợp trong Integrations ................................................17
Hình 2.14: Board Raspberry Pi .................................................................................18
Hình 2.15: Phần cứng của Raspberry Pi ...................................................................19
Hình 2.16: Các cổng giao tiếp trên Raspberry ..........................................................21
Hình 2.17: Sơ đồ chân GPIO ....................................................................................22
Hình 2.18: Hình ảnh thực tế các chân GPIO .............................................................23
Hình 2.19: Giao diện hệ điều hành Raspbian............................................................24
Hình 2.20: Hình ảnh động cơ Servo..........................................................................24
Hình 2.21: Điều khiển động cơ servo bằng Duty Cycle ...........................................26
Hình 2.22: Cảm biến nhiệt độ - độ ẩm DHT11 .........................................................27
Hình 2.23: Module Relay 2 channel 5V ...................................................................28
Hình 2.24: Hình ảnh Mosfet......................................................................................29
Hình 2.25: Các cực của Mosfet .................................................................................29
Hình 2.26: Hình ảnh các loại Mosfet ........................................................................30
Hình 3.1: Sơ đồ khối hệ thống ..................................................................................31
Hình 3.2: Sơ đồ thiết kế mô hình ..............................................................................32
Hình 3.3: Sơ đồ các khối điều khiển động lực ..........................................................33
Hình 3.4: Sơ đồ nguyên lí mạch dimmer ..................................................................34
xi
- Hình 4.1: Lƣu đồ thiết kế trên Dialogflow ................................................................36
Hình 4.2: Tạo mới Agent ..........................................................................................37
Hình 4.3: Cài đặt các thông số cho Agent.................................................................38
Hình 4.4: Thực hiện tạo mới Entities ........................................................................38
Hình 4.5: Hình ảnh entities on-off ............................................................................39
Hình 4.6: Hình ảnh entities led .................................................................................39
Hình 4.7: Tạo mới intents .........................................................................................40
Hình 4.8: Bảng Action và Parameters .......................................................................41
Hình 4.9: Mục Responses .........................................................................................41
Hình 4.10: Kích hoạt Fulfillment cho Intent .............................................................42
Hình 4.11: Đặt link webhook trong mục Fulfillment................................................42
Hình 4.12: Tùy chỉnh trong Integrations ...................................................................43
Hình 4.13: Giao diện trò chuyện chatbot ..................................................................43
Hình 4.14: Thêm mới entities room ..........................................................................44
Hình 4.15: Thêm mới entities status .........................................................................44
Hình 4.16: Thêm mới Intent on-off:condition ..........................................................45
Hình 4.17: Kết quả thao tác trên Intent mới..............................................................45
Hình 4.18: Kết quả hoàn thành Intent .......................................................................46
Hình 4.19: Kết quả hoàn thành Entities ....................................................................46
Hình 4.20: Ngôn ngữ Python ....................................................................................47
Hình 4.21: Giao diện Python 3 IDLE .......................................................................49
Hình 4.22: Thao tác file trên giao diện Python 3 IDLE ............................................49
Hình 4.23: Các phần của giao diện ...........................................................................50
Hình 4.24: Lƣu đồ điều khiển trên Raspberry Pi ......................................................51
Hình 4.25: Giới thiệu ngrok ......................................................................................53
Hình 4.26: Hình ảnh chạy ngrok ...............................................................................53
Hình 4.27: Sơ đồ mạch in PCB .................................................................................54
Hình 4.28: Sơ đồ linh kiện 3D ..................................................................................54
Hình 4.29: Hình ảnh mạch thi công ..........................................................................55
Hình 4.30: Hình ảnh mạch sau thi công ....................................................................56
Hình 4.31: Đóng gói bộ điều khiển ...........................................................................56
Hình 4.32: Thi công khối đèn xoay chiều .................................................................57
xii
- Hình 4.33: Kết nối đèn với module Relay ................................................................57
Hình 4.34: Kết nối đèn với mạch dimmer .................................................................58
Hình 4.35: Kết nối Module DHT11 vào đúng vị trí..................................................59
Hình 4.36: Đặt đúng động cơ servo vào vị trí ...........................................................59
Hình 4.37: Kết nối với Raspberry Pi .........................................................................60
Hình 4.38: Hình ảnh mô hình thi công hoàn chỉnh ...................................................60
Hình 4.39: Điều khiển thiết bị thông qua giao diện ..................................................61
Hình 4.40: Kết quả sau khi nhận yêu cầu điều khiển ................................................61
Hình 4.41: Yêu cầu điều khiển đóng mở cửa............................................................62
Hình 4.42: Thực hiện mở cửa ...................................................................................62
Hình 4.43: Truy vấn thông tin nhiệt độ .....................................................................63
Hình 4.44: Lƣu đồ hƣớng dẫn sử dụng .....................................................................64
xiii
- LIỆT KÊ BẢNG
Bảng Trang
Bảng 2.1: Bảng thông số kỹ thuật của Raspberry Pi .................................................20
Bảng 2.2: Các chân của Servo...................................................................................25
Bảng 2.3: Hình ảnh xung tƣơng ứng với góc quay ...................................................26
Bảng 4.1: Các phiên bản Python đã phát hành .........................................................47
Bảng 4.2: Danh sách linh kiện ..................................................................................55
xiv
- TÓM TẮT
Trong những năm gần đây ngƣời ta thƣờng nhắc nhiều đến AI (trí tuệ nhân
tạo) và những ứng dụng rộng rãi của chúng. Nhóm em rất thích thú khi biết những
thành tựu mà AI(trí tuệ nhân tạo) sẽ mang lại trong tƣơng lai, đặc biệt là những ứng
dụng hiệu quả của chatbot trong kinh doanh và khoa học kỹ thuật. Và để bắt kịp xu
hƣớng đó, nhóm chúng em quyết định chọn chatbot làm đối tƣợng nghiên cứu và
ứng dụng cụ thể vào điều khiển nhà thông minh.
Nhà thông minh đƣợc thiết kế sử dụng Raspberry Pi 3 cho việc điều khiển và
giám sát những thiết bị trong nhà thông qua việc giao tiếp với chatbot. Việc mô
phỏng các thiết bị trong nhà đƣợc thể hiện bằng làm mô hình ngôi nhà và các thiết
bị điện bên trong. Một số thiết bị đƣợc điều khiển thông qua việc trò chuyện với
chatbot:
Điều khiển mở/tắt các thiết bị dân dụng.
Điều khiển tuyến tính các thiết bị.
Giám sát nhiệt độ và độ ẩm trong nhà.
Có thể mở/tắt tất cả các thiết bị cùng 1 lúc hoặc từng thiết bị.
Đóng mở cửa bằng động cơ servo.
xv
- CHƢƠNG 1. TỔNG QUAN
Chƣơng 1. TỔNG QUAN
1.1 ĐẶT VẤN ĐỀ
Trong những năm gần đây ngƣời ta thƣờng nhắc nhiều đến AI (trí tuệ nhân
tạo) và những ứng dụng rộng rãi của chúng. Nhóm em rất thích thú khi biết những
thành tựu mà AI (trí tuệ nhân tạo) sẽ mang lại trong tƣơng lai, đặc biệt là những ứng
dụng hiệu quả của chatbot trong kinh doanh và khoa học kỹ thuật. Và để bắt kịp xu
hƣớng đó, nhóm chúng em quyết định chọn chatbot làm đối tƣợng nghiên cứu và
ứng dụng cụ thể vào điều khiển nhà thông minh.
Chatbot là một lĩnh vực của trí tuệ nhân tạo, chatbot thực hiện hội thoại thông
minh giữa máy tính với ngƣời dùng thông qua trò chuyện trực tiếp. Với việc cung
cấp thông tin cho từng ngữ cảnh để điều khiển các thiết bị khác nhau qua internet.
Đồng thời ngày nay mạng lƣới Internet đang ngày càng trở nên phổ biến, điều đó
khiến cho việc điều khiển thiết bị từ xa qua mạng Internet trở nên dễ dàng và tiện
lợi hơn.
Nhà thông minh đƣợc thiết kế sử dụng Raspberry Pi 3 cho việc điều khiển và
giám sát những thiết bị trong nhà thông qua việc giao tiếp với chatbot. Ngoài việc
điều khiển các thiết bị trong nhà bằng app android nhƣ những đề tài về smarthome
đã có, ngƣời dùng có thể giao tiếp với chatbot về mọi thứ và điều khiển thiết bị
trong gia đình thông qua việc trò chuyện với chatbot. So với việc điều khiển bằng
thao tác cứng nhắt trên các app android thông thƣờng nhƣ các đề tài về IoT đã có
trƣớc đây, ngƣời dùng có thể trò chuyện với chatbot nhƣ một trợ lí ảo giúp ngƣời
dùng quản lí và điều khiển hoạt động của ngôi nhà. Vì những lý do đó, nhóm sinh
viên quyết định thực hiện đề tài “Ứng dụng chatbot vào điều khiển nhà thông
minh”.
1.2 MỤC TIÊU
Tạo ra đƣợc chatbot giao tiếp với ngƣời dùng và thực hiện nhiệm vụ khi có
yêu cầu từ ngƣời dùng thông qua mạng internet. Đồ án đƣợc nghiên cứu, khảo sát,
xây dựng với mục định áp dụng những kiến thức đã học và tìm hiểu đƣợc để thiết
kế, tạo ra một hệ thống chatbot để điều khiển thiết bị 1 cách hoàn chỉnh.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 1
- CHƢƠNG 1. TỔNG QUAN
Một số chức năng của hệ thống điều khiển bằng hệ thống chatbot:
Điều khiển mở/tắt các thiết bị dân dụng.
Điều khiển tuyến tính các thiết bị.
Giám sát nhiệt độ và độ ẩm trong nhà.
Có thể mở/tắt tất cả các thiết bị cùng 1 lúc hoặc từng thiết bị.
1.3 NỘI DUNG NGHIÊN CỨU
NỘI DUNG 1: Tìm hiểu về khái niệm chatbot và cách tạo ra chatbot.
NỘI DUNG 2: Tìm hiểu về các khái niệm về API, Webhook và trang
dialogflow.com (tiền thân là API.AI).
NỘI DUNG 3: Tìm hiểu các khái niệm intent, entity, fulfillment,.... và tạo ra
một chatbot từ Dialogflow để phục vụ đề tài.
NỘI DUNG 4: Tìm hiểu định dạng Json và cách trích xuất dữ liệu liệu để
nhận biết yêu cầu từ ngƣời dùng.
NỘI DUNG 5: Tìm hiểu về kit raspberry pi 3 và ngôn ngữ lập trình python.
NỘI DUNG 6: Lập trình giao tiếp giữa raspberry pi 3 với chatbot bằng
webhook thông qua mạng internet.
NỘI DUNG 7: Thiết kế, thi công và lập trình khối điều khiển công suất, cảm
biến trong nhà.
NỘI DUNG 8: Thiết kế, thi công mô hình nhà thông minh.
NỘI DUNG 9: Chạy thử nghiệm và cân chỉnh hệ thống.
NỘI DUNG 10: Đánh giá kết quả thực hiện.
1.4 GIỚI HẠN
Tạo ra chatbot cơ bản có thể trò chuyện với ngƣời dùng và thực hiện điều
khiển thiết bị trong nhà khi có yêu cầu từ ngƣời dùng.
Thiết kế mô hình ngôi nhà thông minh.
Giám sát ngôi nhà bằng cảm biến và giao tiếp với ngƣời dùng qua chatbot.
Dùng chatbot để điều khiển đèn, quạt, đóng mở cửa.... để mô phỏng ngôi nhà
thông minh.
Hệ thống hoạt động thông qua mạng internet, chatbot giao tiếp đơn giản.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 2
- CHƢƠNG 1. TỔNG QUAN
1.5 BỐ CỤC
Chƣơng 1: Tổng Quan
Chƣơng này 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
Chƣơng này trình bày tổng quát về các lý thuyết có liên quan đến các vấn đề
mà đề tài sẽ dùng để thực hiện thiết kế, thi công cho đề tài. Tìm hiểu về nền tảng
Dialogflow.com, các khái niệm API, webhook và tìm hiểu rõ về kit Raspberry pi 3.
Chƣơng 3: Thiết Kế và Tính Toán
Giới thiệu tổng quan về các yêu cầu của đề tài mà mình thiết kế và các tính
toán, thiết kế sơ đồ khối hệ thống và các khối .
Chƣơng 4: Thi Công Hệ Thống
Chƣơng này trình bày kết quả thi công trên phần mềm và phần cứng, quá
trình thi công mạch PCB. Xây dựng mô hình nhà thông minh và thực hiện kết nối
các module với nhau.
Chƣơng 5: Kết Quả, Nhận Xét và Đánh Giá
Chƣơng này trình bày kết quả của cả quá trình nghiên cứu làm đề tài, nêu lên
những kiến thức đã học đƣợc từ quá trình làm đồ án, nhận xét và đánh giá sản
phẩm.
Chƣơng 6: Kết Luận và Hƣớng Phát Triển
Trình bày ngắn gọn những kết quả thu đƣợc từ đó tiến hành kết luận, đánh
giá sản phẩm có đạt hay không, từ đó đƣa ra hƣớng phát triển để tăng chức năng,
khả năng cho sản phẩm.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 3
- CHƢƠNG 2. CƠ SỞ LÝ THUYẾT
Chƣơng 2. CƠ SỞ LÝ THUYẾT
2.1 TỔNG QUAN VỀ CHATBOT
2.1.1 Khái niệm về chatbot
Định nghĩa một cách đơn giản nhất, chatbot là một chƣơng trình máy tính
tƣơng tác với ngƣời dùng bằng ngôn ngữ tự nhiên dƣới một giao diện đơn giản, âm
thanh hoặc dƣới dạng tin nhắn.
Hình 2.1: Khái niệm chatbot
Về cơ bản, chatbot là một hình thức thô sơ của phần mềm trí tuệ nhân tạo. Nó
hoạt động độc lập, có thể tự động trả lời những câu hỏi hoặc xử lý tình huống càng
thật càng tốt. Phạm vi và sự phức tạp của chatbot đƣợc xác định bởi thuật toán của
ngƣời tạo nên chúng.
Chatbot là sự kết hợp của các kịch bản có trƣớc và tự học trong quá trình
tƣơng tác. Với các câu hỏi đƣợc đặt ra, chatbot sẽ dự đoán và phản hồi chính xác
nhất có thể. Nếu tình huống đó chƣa xảy ra (không có trong dữ liệu), chatbot sẽ bỏ
qua nhƣng sẽ đồng thời “bắt chƣớc” để áp dụng cho các cuộc trò chuyện thƣờng
xuyên (lặp đi lặp lại nhiều lần) về sau.
2.1.2 Phân loại chatbot
Theo đúng cách mà chúng tƣơng tác với ngƣời dùng, các chatbot thƣờng đƣợc
chia thành 2 loại:
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 4
nguon tai.lieu . vn