Đồ Án Tốt Nghiệp Kỹ Thuật Điện Tử: Ứng Dụng Chatbot và Điều Khiển Nhà Thông Minh

Đồ án kỹ thuật nghiên cứu tốt nghiệp kỹ thuật điện tử truyền thông ứng dụng chatbot và điều khiển nhà thông minh, thiết kế chi tiết, tính toán kỹ thuật theo tiêu chuẩn, đánh giá

Người đăng

Ẩn danh

Thể loại

Đồ án tốt nghiệp

2018

91
2
0

Phí lưu trữ

35 Point

Mục lục chi tiết

LỜI CAM ĐOAN

LỜI CẢM ƠN

1. CHƯƠNG 1: TỔNG QUAN

1.1. ĐẶT VẤN ĐỀ

1.2. MỤC TIÊU

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

1.4. GIỚI HẠN

1.5. BỐ CỤC

2. CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

2.1. TỔNG QUAN VỀ CHATBOT

2.1.1. Khái niệm về chatbot

2.1.2. Phân loại chatbot

2.1.3. Xử lý ngôn ngữ tự nhiên (Natural Language Processing)

2.2. TỔNG QUAN VỀ API

2.2.1. Khái niệm về API

2.2.2. Mô hình của một API

2.2.3. Các tác vụ thực hiện qua API

2.3. TỔNG QUAN VỀ WEBHOOK

2.3.1. Khái niệm Webhook

2.3.2. Hoạt động của Webhook

2.4. TỔNG QUAN VỀ DIALOGFLOW

2.4.1. Giới thiệu về Dialogflow

2.4.2. Cấu trúc của Dialogflow

2.5. GIỚI THIỆU VỀ BOARD RASPBERRY PI

2.5.1. Giới thiệu về Board Raspberry Pi

2.5.2. Phần cứng của Raspberry Pi 3

2.5.2.1. Nguồn cung cấp
2.5.2.2. Các cổng giao tiếp
2.5.2.3. Các chân giao tiếp GPIO của kit

2.5.3. Hệ điều hành Raspbian cho kit Raspberry Pi

2.6. GIỚI THIỆU ĐỘNG CƠ SERVO

2.6.1. Giới thiệu động cơ servo

2.6.2. Nguyên lý hoạt động của động cơ servo

2.7. CẢM BIẾN NHIỆT ĐỘ DHT11

2.8. MODULE RELAY 2 CHANNEL 5V

2.8.1. Cấu tạo Mosfet

2.8.2. Nguyên lí hoạt động

3. CHƯƠNG 3: TÍNH TOÁN VÀ THIẾT KẾ

3.1. THIẾT KẾ SƠ ĐỒ KHỐI HỆ THỐNG

3.1.1. Sơ đồ khối hệ thống

3.1.2. Sơ đồ mô hình hệ thống

3.2. TÍNH TOÁN VÀ THIẾT KẾ MẠCH

3.2.1. Thiết kế khối Dialogflow

3.2.2. Thiết kế khối điều khiển raspberry

3.2.3. Thiết kế khối điều khiển động lực

3.2.4. Thiết kế khối nguồn

4. CHƯƠNG 4: THI CÔNG HỆ THỐNG

4.1. THIẾT KẾ DIALOGFLOW

4.1.1. Thiết kế cho yêu cầu điều khiển ON-OFF

4.1.2. Tạo mới Agent

4.1.3. Mở rộng cho điều khiển ON-OFF

4.1.4. Thêm mới entities

4.1.5. Thêm mới intent

4.1.6. Kết quả hoàn chỉnh trên Dialogflow

4.2. LẬP TRÌNH TRÊN RASPBERRY PI 3

4.2.1. Giới thiệu ngôn ngữ lập trình Python

4.2.2. Giới thiệu phần mềm lập trình Python 3 IDLE

4.2.3. Viết chương trình hệ thống

4.2.4. Public server lên internet bằng ngrok

4.3. THI CÔNG MẠCH ĐIỀU KHIỂN DIMMER

4.3.1. Sơ đồ mạch PCB Dimmer

4.3.2. Thi công mạch

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

4.4.1. Đóng gói bộ điều khiển

4.4.2. Thi công mô hình

4.5. KẾT QUẢ VẬN HÀNH HỆ THỐNG

4.6. TÀI LIỆU HƯỚNG DẪN, THAO TÁC

4.6.1. Tài liệu hướng dẫn sử dụng

4.6.2. Quy trình thao tác

5. CHƯƠNG 5: KẾT QUẢ, NHẬN XÉT VÀ ĐÁNH GIÁ

5.1. Các khái niệm liên quan

5.2. Công cụ ngrok

5.3. Mạch điều khiển dimmer

5.4. Module Relay 2 kênh 5V

5.5. Module cảm biến DHT11

5.6. NHẬN XÉT VÀ ĐÁNH GIÁ

6. CHƯƠNG 6: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

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

TÀI LIỆU THAM KHẢO

LIỆT KÊ HÌNH VẼ

LIỆT KÊ BẢNG

TÓM TẮT

Tóm tắt

I. Ứng dụng Chatbot trong điều khiển nhà thông minh

Ứng dụng chatbot trong điều khiển nhà thông minh là một xu hướng công nghệ hiện đại, kết hợp giữa trí tuệ nhân tạohệ thống điều khiển tự động. Chatbot được xây dựng trên nền tảng Dialogflow, sử dụng xử lý ngôn ngữ tự nhiên (NLP) để giao tiếp với người dùng. Hệ thống này cho phép điều khiển các thiết bị trong nhà như đèn, quạt, cửa thông qua lệnh thoại hoặc tin nhắn. Raspberry Pi 3 đóng vai trò trung tâm, kết nối với các module như Relay, Dimmer, và cảm biến DHT11 để thực hiện các tác vụ điều khiển và giám sát.

1.1. Khái niệm và phân loại Chatbot

Chatbot là một chương trình máy tính tương tác với người dùng thông qua ngôn ngữ tự nhiên. Nó được chia thành hai loại chính: Audiotory (âm thanh) và Text-based (văn bản). Chatbot sử dụng NLP để hiểu và phản hồi yêu cầu của người dùng. Trong đề tài này, chatbot được xây dựng trên Dialogflow, một nền tảng mạnh mẽ cho phép tạo ra các chatbot thông minh với khả năng xử lý ngôn ngữ tự nhiên cao.

1.2. Ứng dụng Chatbot trong nhà thông minh

Chatbot được tích hợp vào hệ thống nhà thông minh để điều khiển các thiết bị như đèn, quạt, cửa thông qua lệnh thoại hoặc tin nhắn. Hệ thống sử dụng Raspberry Pi 3 làm trung tâm điều khiển, kết nối với các module như Relay, Dimmer, và cảm biến DHT11. Chatbot giúp người dùng dễ dàng quản lý và điều khiển các thiết bị trong nhà một cách thông minh và tiện lợi.

II. Hệ thống điều khiển nhà thông minh

Hệ thống điều khiển nhà thông minh trong đề tài này được thiết kế dựa trên Raspberry Pi 3, kết hợp với các module phần cứng như Relay, Dimmer, và cảm biến DHT11. Hệ thống cho phép điều khiển các thiết bị trong nhà thông qua chatbot, đồng thời giám sát nhiệt độ và độ ẩm. Webhook được sử dụng để kết nối giữa chatbot và Raspberry Pi, giúp xử lý và phản hồi các yêu cầu từ người dùng một cách nhanh chóng và chính xác.

2.1. Thiết kế hệ thống phần cứng

Hệ thống phần cứng bao gồm Raspberry Pi 3, Relay, Dimmer, và cảm biến DHT11. Raspberry Pi đóng vai trò trung tâm, kết nối với các module để điều khiển thiết bị trong nhà. Relay được sử dụng để đóng/mở các thiết bị điện, trong khi Dimmer điều chỉnh độ sáng của đèn. Cảm biến DHT11 giúp giám sát nhiệt độ và độ ẩm trong nhà.

2.2. Lập trình và kết nối hệ thống

Hệ thống được lập trình bằng ngôn ngữ Python, sử dụng Webhook để kết nối giữa chatbot và Raspberry Pi. Webhook nhận dữ liệu từ Dialogflow, xử lý và gửi lệnh điều khiển đến các thiết bị. Ngrok được sử dụng để public server, cho phép hệ thống hoạt động qua mạng Internet. Quá trình lập trình bao gồm việc tạo các IntentEntities trên Dialogflow để xử lý các yêu cầu từ người dùng.

III. Thi công và vận hành hệ thống

Quá trình thi công hệ thống bao gồm việc thiết kế mạch điều khiển, lắp đặt các module phần cứng, và kết nối chúng với Raspberry Pi. Mô hình nhà thông minh được xây dựng để mô phỏng các thiết bị trong nhà. Hệ thống được kiểm tra và đánh giá để đảm bảo hoạt động ổn định và đáp ứng các yêu cầu đề ra. Kết quả cho thấy hệ thống có khả năng điều khiển các thiết bị một cách hiệu quả thông qua chatbot.

3.1. Thi công mạch điều khiển

Mạch điều khiển được thiết kế và thi công dựa trên sơ đồ nguyên lý. PCB được vẽ và lắp đặt các linh kiện như Relay, Dimmer, và cảm biến DHT11. Quá trình thi công bao gồm việc kiểm tra và hiệu chỉnh mạch để đảm bảo hoạt động chính xác. Mạch điều khiển được kết nối với Raspberry Pi để thực hiện các lệnh điều khiển từ chatbot.

3.2. Vận hành và đánh giá hệ thống

Hệ thống được vận hành và kiểm tra để đảm bảo hoạt động ổn định. Các chức năng như điều khiển đèn, quạt, cửa, và giám sát nhiệt độ, độ ẩm được đánh giá. Kết quả cho thấy hệ thống có khả năng đáp ứng các yêu cầu từ người dùng một cách nhanh chóng và chính xác. Hệ thống cũng được đánh giá về tính thân thiện và dễ sử dụng.

12/02/2025

Trích đoạn nội dung tài liệu

đặ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.1 TỔNG QUAN VỀ CHATBOT 2.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.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 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 CHƢƠNG 2. CƠ SỞ LÝ THUYẾT - Audiotory (âm thanh): + Siri (Apple).

+ Javis của Tony – Stark. + Thực phẩm - order pizza (Dominos Pizza). + Làm đẹp - stylish cá nhân (Sephora). + Giao thông - thông tin tàu điện vùng Kanto (qmau.3 Xử lý ngôn ngữ tự nhiên (Natural Language Processing) Để chatbot có thể hiểu đƣợc ngƣời dùng nói gì thì ta phải dùng đến NLP (Natural Language Processing).

Xử lý ngôn ngữ tự nhiên (NLP) là một nhánh của Trí tuệ nhân tạo, tập trung vào việc nghiên cứu sự tƣơng tác giữa máy tính và ngôn ngữ tự nhiên của con ngƣời. Mục tiêu của lĩnh vực này là giúp máy tính hiểu và thực hiện hiệu quả những nhiệm vụ liên quan đến ngôn ngữ của con ngƣời nhƣ: tƣơng tác giữa ngƣời và máy, cải thiện hiệu quả giao tiếp giữa con ngƣời với con ngƣời, hoặc đơn giản là nâng cao hiệu quả xử lý văn bản và lời nói. NLP đƣợc Dialogflow sử dụng để tạo ra những chatbot thông minh.2 TỔNG QUAN VỀ API 2.1 Khái niệm về API Hình 2.2: Khái niệm về API API (Application Programming Interface) là một giao diện lập trình ứng dụng mà một hệ thống máy tính hay ứng dụng cung cấp để cho phép các yêu cầu BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 5 CHƢƠNG 2. CƠ SỞ LÝ THUYẾT dịch vụ có thể đƣợc tạo ra từ các chƣơng trình máy tính khác, và/hoặc cho phép dữ liệu có thể đƣợc trao đổi qua lại giữa chúng.2 Mô hình của một API API bao gồm ba phần: - Ngƣời dùng: ngƣời đƣa ra yêu cầu.

- Máy khách: máy tính gửi yêu cầu tới máy chủ. - Máy chủ: máy tính phản hồi yêu cầu. Máy chủ đƣợc xây dựng nó thu thập và lƣu trữ dữ liệu. Khi máy chủ đó đang chạy, các lập trình viên tạo ra dữ liệu, bao gồm các end point (điểm cuối) nơi có thể tìm thấy dữ liệu cụ thể.

Sau đó, ngƣời dùng bên ngoài có thể truy vấn (hoặc tìm kiếm) dữ liệu trên máy chủ hoặc xây dựng một chƣơng trình chạy tìm kiếm trên cơ sở dữ liệu và biến thông tin đó thành định dạng có thể sử dụng khác. Nhiều công ty sử dụng các API mở từ các công ty lớn hơn nhƣ Google và Facebook để truy cập dữ liệu không có sẵn. Trong trƣờng hợp này các API làm giảm đáng kể các rào cản phát triển đối với các công ty nhỏ hơn.3 Các tác vụ thực hiện qua API API là cách để hai máy tính (phần mềm) giao tiếp với nhau. Có bốn loại hành động mà API có thể thực hiện:  GET: yêu cầu dữ liệu từ máy chủ.

 POST: gửi các thay đổi từ máy khách đến máy chủ khi thêm thông tin vào máy chủ, nhƣ tạo một mục mới.  PUT: sửa đổi hoặc thêm vào thông tin hiện có.  DELETE: xóa thông tin hiện có. Khi bạn kết hợp các end point (điểm cuối) với các hành động này, bạn có thể tìm kiếm hoặc cập nhật mọi thông tin có sẵn trên API.

Bạn sẽ cần phải kiểm tra tài liệu API để tìm hiểu cách mã hóa các hành động này, vì chúng hoàn toàn khác nhau. - Thực hiện một yêu cầu trên một máy chủ: BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 6 CHƢƠNG 2. CƠ SỞ LÝ THUYẾT HTTP: giao thức truyền siêu văn bản. Đây là cách bạn truy cập trang web bằng cách nhập URL vào thanh tìm kiếm trong trình duyệt của bạn.

Đây là một cách thực sự dễ dàng để truy cập dữ liệu. Định dạng văn bản: XML, JSON. Đây là những ngôn ngữ chính để truy cập dữ liệu qua API. Khi bạn nhận đƣợc dữ liệu của mình, bạn sẽ cần phải biết đọc mã XML hoặc JSON để hiểu những gì máy chủ đã cung cấp cho bạn.

- Ý tƣởng và các bƣớc trong quy trình API:  Hầu hết các API đều yêu cầu key (mã khóa) API. Khi bạn tìm thấy API bạn muốn sử dụng, hãy xem tài liệu về các yêu cầu truy cập. Hầu hết các API sẽ yêu cầu bạn hoàn tất xác minh danh tính, chẳng hạn nhƣ đăng nhập bằng tài khoản Google của bạn. Bạn sẽ nhận đƣợc một chuỗi ký tự và số duy nhất để sử dụng khi truy cập API, thay vì chỉ thêm email và mật khẩu của bạn.

 Các công cụ sẵn có (và thƣờng miễn phí) giúp bạn điều hƣớng các yêu cầu của mình để truy cập các API hiện có bằng key API mà bạn nhận đƣợc. Bạn vẫn sẽ cần phải biết một số cú pháp từ tài liệu, nhƣng có rất ít kiến thức mã hóa cần thiết.  Cách tốt nhất tiếp theo để lấy dữ liệu từ API là tạo URL từ tài liệu API hiện có. Nhìn chung, yêu cầu API trông không khác nhiều so với URL trình duyệt thông thƣờng, nhƣng dữ liệu đƣợc trả về sẽ ở dạng dễ đọc cho máy tính.1 Khái niệm Webhook Webhook là một HTTP callback: là 1 công cụ để truy vấn và lƣu trữ dữ liệu của một Event xác định.

Khi một trong những sự kiện đƣợc kích hoạt, nó sẽ gửi một HTTP POST đến URL đã đƣợc cấu hình webhook.2 Hoạt động của Webhook Một ứng dụng web đang triển khai Webhook sẽ POST một thông báo tới một URL khi một event xảy ra. Events này do ngƣời dùng cấu hình và URL này đƣợc ngƣời dùng đăng ký với trang web. Hay nói cách khác, bằng cách cho phép ngƣời BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 7 CHƢƠNG 2. CƠ SỞ LÝ THUYẾT dùng chỉ định một URL cho các sự kiện khác nhau, ứng dụng sẽ POST dữ liệu tới các URL đó khi các sự kiện xảy ra.

Sau khi nhận đƣợc thông báo thành công, webhook sẽ trả về status code 200 OK về cho trang web. Những đặc điểm của webhook:  Push: nhận dữ liệu theo thời gian thực Bất cứ khi nào một events đã đƣợc cấu hình trƣớc xảy ra thì ngay lập tức dữ liệu sẽ gửi đến URL đã đăng ký ngay lập tức với thời gian thực.  Pipes: nhận dữ liệu và truyền đi Một Pipe xảy ra khi WebHook của bạn không chỉ nhận dữ liệu thời gian thực, mà còn tiếp tục thực hiện khi có một event mới, kích hoạt các hành động không liên quan đến sự kiện ban đầu.  Plugins: xử lý dữ liệu và trả lại thứ gì đó Đây là nơi mà toàn bộ web trở thành một nền tảng lập trình.

Bạn có thể sử dụng Webhook này để cho phép ngƣời khác mở rộng ứng dụng của bạn. Ý tƣởng chung là một ứng dụng web gửi dữ liệu qua Webhook cũng sẽ sử dụng phản hồi từ webhooks để sửa đổi dữ liệu của riêng nó. Theo cách này, webhook thay đổi ứng dụng của bạn nếu bạn muốn cho phép những ngƣời khác thực sự mở rộng và nâng cao khả năng của ứng dụng của bạn.4 TỔNG QUAN VỀ DIALOGFLOW 2.1 Giới thiệu về Dialogflow Hình 2.3: Giới thiệu Dialogflow Dialogflow.com (tiền thân là API.AI) là một API do Google cung cấp nhằm giúp các lập trình viên dễ dàng hơn khi lập trình các sản phẩm có giao tiếp giữa BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 8 CHƢƠNG 2. CƠ SỞ LÝ THUYẾT ngƣời dùng với sản phẩm thông qua các đoạn hội thoại bằng văn bản (text) hoặc giọng nói (voice).

Dialogflow là nền tảng về công nghệ tƣơng tác giữa con ngƣời và máy tính dựa trên các cuộc trò truyện bằng ngôn ngữ tự nhiên và có thể đƣợc sử dụng để phát hiện các từ khóa và ý định trong câu của ngƣời dùng. Vai trò của nó là giúp xây dựng chatbots sử dụng Machine Learning. Với DialogFlow hỗ trợ các tích hợp với các nền tảng, dịch vụ khác nhau nhƣ Facebook Messenger, các nền tảng Google, Skype, v. chatbot của bạn sẽ làm việc với mọi nền tảng này nếu bạn thiết lập tích hợp đúng cách.

Dialogflow sử dụng trí tuệ nhân tạo (AI) giúp phân tích ngôn ngữ tự nhiên để hiểu đƣợc những gì ngƣời dùng đƣa vào. Hiện Dialogflow có 2 phiên bản: - Standad: Hoàn toàn miễn phí để sử dụng - Và Enterprise: Cần trả một ít tiền 2.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ

Bài viết "Ứng dụng Chatbot và Điều Khiển Nhà Thông Minh trong Đồ Án Tốt Nghiệp Kỹ Thuật Điện Tử" tập trung vào việc tích hợp công nghệ chatbot và hệ thống điều khiển nhà thông minh trong các dự án tốt nghiệp ngành kỹ thuật điện tử. Bài viết nêu bật cách thức các công nghệ này có thể tối ưu hóa quản lý năng lượng, nâng cao trải nghiệm người dùng và tạo ra các giải pháp thông minh, tiết kiệm chi phí. Đây là một hướng đi sáng tạo, phù hợp với xu hướng IoT và AI hiện nay, mang lại giá trị thực tiễn cao cho sinh viên và các nhà nghiên cứu.

Để mở rộng kiến thức về các ứng dụng công nghệ trong lĩnh vực điện tử, bạn có thể tham khảo thêm bài viết "Luận văn thạc sĩ HCMUTE thiết kế và thực thi mạng trên chip NOC trên FPGA", nơi đi sâu vào việc thiết kế mạng trên chip với công nghệ FPGA. Ngoài ra, bài viết "Luận văn thạc sĩ HCMUTE xây dựng hệ thống neuromorphic dùng memristor trong nhận dạng ảnh" cung cấp cái nhìn chi tiết về hệ thống neuromorphic, một hướng nghiên cứu tiên tiến khác. Cuối cùng, "Luận văn thạc sĩ thử nghiệm thiết bị điều khiển giám sát dòng điện thông qua mạng GSM" sẽ giúp bạn hiểu rõ hơn về các giải pháp giám sát và điều khiển từ xa trong lĩnh vực điện tử.