Khóa luận tốt nghiệp: Giám sát và điều khiển thiết bị trong nhà bằng giọng nói qua Internet

Khóa luận tốt nghiệp về giám sát và điều khiển thiết bị trong nhà bằng giọng nói qua internet, cung cấp giải pháp công nghệ hiện đại và tiện ích.

Người đăng

Ẩn danh

Thể loại

Đồ Án Tốt Nghiệp

2022

99
1
0

Phí lưu trữ

35 Point

Mục lục chi tiết

LỜI CẢM ƠN

LỜI MỞ ĐẦU

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

1.1. ĐẶT VẤN ĐỀ

1.2. MỤC TIÊU

1.3. NỘI DUNG THỰC HIỆN

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Ề ARDUINO

2.2. PHẦN CỨNG ARDUINO

2.3. MODULE CẢM BIẾN KHÍ GA MQ2

2.4. MODULE CẢM BIẾN CHUYỂN ĐỘNG PIR HC – SR501

2.5. MODULE WIFI ESP8266 NODEMCU

2.6. MODULE CẢM BIẾN NHIỆT ĐỘ - ĐỘ ẨM DHT11

2.7. BÀN PHÍM MA TRẬN 4X4

2.8. MÀN HÌNH LCD 1602

2.9. LÝ THUYẾT CHUẨN GIAO TIẾP UART

2.10. LÝ THUYẾT CHUẨN GIAO TIẾP ONE-WIRE

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

3.1. TÍNH TOÁN VÀ THIẾT KẾ HỆ THỐNG

3.1.1. Thiết kế sơ đồ khối hệ thống

3.1.2. Tính toán và thiết kế mạch

3.2. THIẾT KẾ KHỐI CẢM BIẾN VÀ XỬ LÝ

3.2.1. Thiết kế khối cảm biến

3.2.2. Thiết kế khối xử lí trung tâm

3.2.3. Thiết kế khối Relay điều khiển thiết bị

3.2.4. Khối truyền dữ liệu

3.2.5. Thiết kế khối hiển thị trên LCD

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

3.2.7. Sơ đồ nguyên lý của toàn mạch

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

3.3.1. Lưu đồ giải thuật module NodeMCU

3.3.2. Lưu đồ giải thuật module Arduino mega 2560

4. CHƯƠNG 4: KẾT QUẢ THỰC HIỆN

4.1. Mô hình hệ thống

4.2. Giao diện phần mềm hệ thống

4.3. Hiển thị thông báo trên LCD

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

5.1. Kết luận

5.2. Hướng phát triển

CÁC TỪ VIẾT TẮT

Tóm tắt

I. Tổng quan về giám sát và điều khiển thiết bị trong nhà bằng giọng nói

Trong thời đại công nghệ 4.0, việc giám sát và điều khiển thiết bị trong nhà bằng giọng nói qua Internet đang trở thành xu hướng phổ biến. Hệ thống này không chỉ mang lại sự tiện lợi mà còn giúp nâng cao an ninh cho ngôi nhà. Việc sử dụng công nghệ IoT cho phép người dùng điều khiển các thiết bị điện từ xa, tạo ra một môi trường sống thông minh và an toàn hơn.

1.1. Khái niệm về hệ thống nhà thông minh

Hệ thống nhà thông minh là một mạng lưới các thiết bị điện tử được kết nối với nhau, cho phép người dùng điều khiển và giám sát từ xa thông qua Internet. Các thiết bị này có thể bao gồm đèn, quạt, máy lạnh và nhiều thiết bị khác, tất cả đều có thể được điều khiển bằng giọng nói hoặc ứng dụng trên điện thoại.

1.2. Lợi ích của việc điều khiển thiết bị bằng giọng nói

Việc điều khiển thiết bị bằng giọng nói mang lại nhiều lợi ích như tiết kiệm thời gian, tăng cường an ninh và tạo sự tiện lợi cho người dùng. Người dùng có thể dễ dàng bật tắt thiết bị mà không cần phải di chuyển, đặc biệt hữu ích cho người cao tuổi hoặc người khuyết tật.

II. Thách thức trong việc giám sát và điều khiển thiết bị qua Internet

Mặc dù có nhiều lợi ích, việc giám sát và điều khiển thiết bị trong nhà bằng giọng nói cũng gặp phải một số thách thức. Các vấn đề về an ninh mạng, độ tin cậy của kết nối Internet và khả năng nhận diện giọng nói chính xác là những yếu tố cần được xem xét.

2.1. Vấn đề an ninh mạng trong hệ thống nhà thông minh

An ninh mạng là một trong những vấn đề lớn nhất khi triển khai hệ thống nhà thông minh. Các thiết bị kết nối Internet có thể trở thành mục tiêu của các cuộc tấn công mạng, dẫn đến việc rò rỉ thông tin cá nhân hoặc kiểm soát thiết bị trái phép.

2.2. Độ tin cậy của kết nối Internet

Kết nối Internet không ổn định có thể gây ra sự gián đoạn trong việc điều khiển thiết bị. Điều này có thể dẫn đến những rắc rối trong việc giám sát và điều khiển thiết bị, đặc biệt trong những tình huống khẩn cấp.

III. Phương pháp giám sát và điều khiển thiết bị bằng giọng nói

Để thực hiện việc giám sát và điều khiển thiết bị trong nhà bằng giọng nói, có thể áp dụng một số phương pháp như sử dụng trợ lý ảo, ứng dụng di động và các thiết bị cảm biến thông minh. Những công nghệ này giúp người dùng dễ dàng tương tác với hệ thống.

3.1. Sử dụng trợ lý ảo để điều khiển thiết bị

Trợ lý ảo như Google Assistant hoặc Amazon Alexa cho phép người dùng điều khiển thiết bị bằng giọng nói. Người dùng chỉ cần ra lệnh và trợ lý ảo sẽ thực hiện các tác vụ tương ứng, giúp tiết kiệm thời gian và công sức.

3.2. Ứng dụng di động trong giám sát thiết bị

Các ứng dụng di động như Blynk hoặc SmartThings cho phép người dùng theo dõi và điều khiển thiết bị từ xa. Người dùng có thể nhận thông báo về trạng thái hoạt động của thiết bị và thực hiện các điều chỉnh cần thiết ngay cả khi không có mặt tại nhà.

IV. Ứng dụng thực tiễn của hệ thống giám sát và điều khiển thiết bị

Hệ thống giám sát và điều khiển thiết bị trong nhà bằng giọng nói đã được áp dụng rộng rãi trong nhiều lĩnh vực. Từ việc quản lý an ninh cho đến tự động hóa các thiết bị điện, hệ thống này mang lại nhiều giá trị cho người dùng.

4.1. Ứng dụng trong quản lý an ninh

Hệ thống giám sát an ninh có thể bao gồm camera và cảm biến chuyển động, cho phép người dùng theo dõi tình hình an ninh trong nhà từ xa. Khi có sự cố xảy ra, người dùng sẽ nhận được thông báo ngay lập tức.

4.2. Tự động hóa thiết bị điện trong nhà

Việc tự động hóa thiết bị điện giúp tiết kiệm năng lượng và nâng cao sự tiện nghi cho người dùng. Các thiết bị như đèn, quạt và máy lạnh có thể được lập trình để hoạt động tự động theo thời gian hoặc theo nhu cầu của người dùng.

V. Kết luận và tương lai của hệ thống giám sát và điều khiển thiết bị

Hệ thống giám sát và điều khiển thiết bị trong nhà bằng giọng nói qua Internet đang ngày càng trở nên phổ biến và cần thiết trong cuộc sống hiện đại. Tương lai của công nghệ này hứa hẹn sẽ mang lại nhiều cải tiến và tiện ích hơn nữa cho người dùng.

5.1. Xu hướng phát triển công nghệ IoT

Công nghệ IoT đang phát triển mạnh mẽ, với nhiều thiết bị mới được ra mắt hàng năm. Điều này sẽ giúp cho việc giám sát và điều khiển thiết bị trở nên dễ dàng và hiệu quả hơn.

5.2. Tương lai của giám sát và điều khiển bằng giọng nói

Với sự phát triển của trí tuệ nhân tạo, khả năng nhận diện giọng nói sẽ ngày càng chính xác hơn. Điều này sẽ mở ra nhiều cơ hội mới cho việc phát triển hệ thống giám sát và điều khiển thiết bị trong nhà.

25/07/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, trình bày 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 Trình bày về các lý thuyết có liên quan về việc lập trình cho hệ thống, các linh kiện, phần cứng sử dụng để thực hiện đề tài.  Chương 3: Tính toán và thiết kế Trình bày về thiết kế và các tính toán xây dựng hệ thống như thiết kế sơ đồ khối hệ thống, sơ đồ nguyên lý toàn mạch, tính toán thiết kế mạch, tiến hành xây dựng hệ thống thực tế, kiểm tra và tinh chỉnh.  Chương 4: Kết quả thực hiện Trình bày về những kết quả mà em đã đạt được sau khi thực hiện đề tài, về hệ thống mà em thực hiện, đánh giá mức độ hoàn thiện, sự vận hành của hệ thống.

 Chương 5: Kết luận và hướng phát triển Trình bày về những kết quả mà em đã đạt được sau khi thực hiện đề tài, những hạn chế, từ đó rút ra kết luận và hướng phát triển để giải quyết các vấn đề còn tồn đọng để đồ án hoàn thiện hơn GVHD TS: Đoàn Hữu SVTH: Phan Minh Phú CHƯƠNG 2 CƠ SỞ LÝ THUYẾT 2.1 TỔNG QUAN VỀ ARDUINO Hình 2. Các loại Board Arduino 2. Giới thiệu Arduino là một bo mạch vi 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, động cơ, đèn hoặc các thiết bị khác. Đặc điểm nổi bật của arduino là môi trường phát triển ứng dụng rất dễ sử dụng, với ngôn ngữ lập trình có thể học một cách nhanh chóng ngay cả với người ít am hiểu về điện tử và lập trình cũng có thể sử dụng một cách dễ dàng.

Arduino có mức giá thấp, phù hợp với nhu cầu người dùng, có tính chất nguồn mở và cộng đồng người dùng đông đảo. Với lợi thế đến từ giá thành cũng như lợi thế về cộng đồng người dùng, arduino đang ngày càng trở nên phổ biến hơn, người dùng arduino trải rộng từ học sinh phổ thông đến sinh viên đại học. Board mạch arduino được sử dụng để thực hiện nhiều ứng dụng như: điều khiển robot, điều khiển và giám sát nhiệt độ độ ẩm phòng thí nghiệm, điều khiển xe mô hình. GVHD TS: Đoàn Hữu SVTH: Phan Minh Phú 2.

Phần cứng arduino Phần cứng arduino bao gồm một board mạch nguồn mở được thiết kế trên nền tảng là vi xử lý AVR Atmel 8-bit, hoặc ARM Atmel 32-bit. Board arduino sẽ đưa ra hầu hết các chân I/O của vi điều khiển để sử dụng cho những mạch ngoài. Những mẫu hiện tại thường được trang bị gồm 1 cổng giao tiếp USB, nhiều chân đầu vào analog và chân I/O kỹ thuật số tương thích với nhiều board mở rộng khác nhau. Điều này giúp người dùng dễ dàng lập trình và có thể mở rộng với các mạch khác, các module thêm vào có thể dễ dàng chuyển đổi, được gọi là shield.

Một số shield kết nối với board arduino trực tiếp thông qua các chân khác nhau, ngoài ra còn một số shield được định địa chỉ thông qua serial bus I2C, người dùng có thể kết nối nhiều shield với arduino dưới dạng song song. Arduino thường sử dụng các dòng chip MegaAVR, đặc biệt là ATMega8, ATMega168, ATMega328, ATMega1280, và ATMega2560. Theo nguyên tắc, khi sử dụng phần mềm arduino, tất cả các board được lập trình thông qua một kết nối RS-232, nhưng cách thức thực hiện lại tùy thuộc vào đời phần cứng. Các board serial arduino có chứa một mạch chuyển đổi giữa RS-232 sang TTL.

Các board arduino hiện tại được lập trình thông qua cổng USB, thực hiện thông qua chip chuyển đổi USB-to-serial như là FTDI FT232. Arduino mega 2560 Arduino mega 2560 sử dụng chip ATmega2560, có 54 chân digital I/O (trong đó có 15 chân điều chế độ rộng xung PWM), 16 chân đầu vào tương tự (Analog Inputs), 4 cổng UARTs (cổng nối tiếp phần cứng), một thạch anh dao động 16 MHz, kết nối USB, một jack cắm điện để cấp nguồn, một đầu ICSP và một nút reset. Arduino mega 2560 chứa tất cả mọi thứ cần thiết để hỗ trợ các vi điều khiển, người dùng chỉ đơn giản là kết nối nó với một máy tính bằng cáp USB hoặc với một bộ chuyển đổi điện AC-DC hoặc có thể sử dụng pin. Board có khả năng tự động reset nhờ phần mềm thay vì đòi hỏi phải ấn nút reset trước khi tải lên.

Phần mềm arduino sử dụng khả năng này để cho phép nạp code lên chỉ GVHD TS: Đoàn Hữu SVTH: Phan Minh Phú cần nhấn vào nút Upload trong Arduino IDE. Điều này có nghĩa rằng bộ nạp khởi động có thể có một thời gian chờ ngắn hơn. Arduino mega 2560 có thể bảo vệ cổng USB của máy tính khi xảy ra hiện tượng quá dòng. Mặc dù hầu hết các máy tính đều có khả năng bảo vệ nội bộ, các cầu chì còn giúp tạo ra thêm một lớp bảo vệ.

Nếu dòng cao hơn 500mA được áp dụng cho các cổng USB, cầu chì sẽ tự động phá vỡ các kết nối cho đến khi ngắt hoặc hiện tượng quá tải được khắc phục. Thông số kỹ thuật arduino mega 2560 [1]:  Chip vi điều khiển: ATmega2560.  Điện áp cấp nguồn: 5V.  Điện áp đầu vào (kiến nghị): 7-12V.

 Điện áp đầu vào (giới hạn): 6-20V.  Số chân Digital I/O: 54 (có 15 chân điều chế độ rộng xung PWM).  Số chân Analog (Input): 16.  Dòng DC trên chân I/O: 40 mA.

 Dòng DC cho chân 3.  Flash Memory: 256KB trong đó có 8KB được sử dụng bởi bộ nạp khởi động (bootloader).  Xung nhịp: 16 MH.  Chiều dài: 101,52 mm.

 Chiều rộng: 53,3 mm.  Sơ đồ các khối kết nối của arduino mega 2560 Trong hình 2.2 Bên dưới là hình ảnh sơ đồ các khối kết nối trên Arduino mega 2560: GVHD TS: Đoàn Hữu SVTH: Phan Minh Phú Hình 2. Vị trí các khối kết nối trên arduino mega 2560 USB (1): Arduino mega 2560 sử dụng cáp USB để giao tiếp với máy tính. Bằng việc sử dụng cáp USB, người dùng có thể upload chương trình cho arduino hoạt động, ngoài ra USB còn có thể dùng làm nguồn cho arduino.

Nguồn (2 và 3): Khi không sử dụng USB làm nguồn thì người dùng có thể sử dụng nguồn ngoài thông qua jack cắm 2.1mm (cực dương ở giữa) hoặc có thể sử dụng 2 chân Vin và GND để cấp nguồn cho arduino. Bo mạch hoạt động với nguồn ngoài ở điện áp từ 5 – 20 Volt. Người dùng có thể cấp một áp lớn hơn tuy nhiên chân 5V sẽ có mức điện áp lớn hơn 5 Volt. Và nếu sử dụng nguồn lớn hơn 12 Volt thì sẽ có hiện tượng nóng và dễ dẫn đến làm hỏng bo mạch.

Chân 5V và chân 3.3V (Output voltage): các chân này dùng để lấy nguồn ra từ nguồn mà chúng ta đã cung cấp cho arduino để cấp cho các thiết bị giao tiếp khác. Lưu ý: không được cấp nguồn vào các chân này vì sẽ làm hỏng arduino. Ngõ vào tương tự (4): Arduino mega 2560 có 16 ngõ vào tương tự (các chân từ A0 đến A15), mỗi ngõ vào này đều có độ phân giải 10 bit (1024 giá trị). Mặc định đo từ 0 đến 5V, có thể thiết GVHD TS: Đoàn Hữu SVTH: Phan Minh Phú lập giá trị bằng cách điều chỉnh chân AREF và sử dụng hàm Analog Referency() để chuyển đổi.

Ngõ vào số (5 và 6): Mỗi một chân trong 54 chân số của board đều có thể sử dụng như một ngõ vào hoặc ngõ ra. Mỗi chân có thể cung cấp hoặc nhận được tối đa 40 mA và có một điện trở kéo lên bên trong 20-50 kOhms. Ngoài ra, một số chân có chức năng đặc biệt:  Serial: để truyền và nhận dữ liệu nối tiếp. Gồm các chân: Serial 0: 0 (RX) và 1 (TX); Serial 1: 19 (RX) và 18 (TX); Serial 2: 17 (RX) và 16 (TX); Serial 3: 15 (RX) và 14 (TX).

 External Interrupt: Các chân này có thể được cấu hình để kích hoạt ngắt mức thấp, ngắt cạnh lên hoặc xuống.  PWM: Cung cấp ngõ ra PWM 8 bit. Gồm các chân từ chân 2 đến 13 và 44 đến 46.  SPI: Các chân này hỗ trợ giao tiếp SPI bằng cách sử dụng thư viện SPI.

 TWI: Hỗ trợ giao tiếp TWI bằng việc sử dụng thư viện WIRE.  Nút Retset (7): Đây là nút nhấn để người dùng có thể thiết lập lại vi điều khiển. Arduino uno r3 Arduino uno r3 là dòng mạch arduino phổ biến, với thiết kế tiêu chuẩn sử dụng vi điều khiển ATmega328 hoặc ATmega168 (bộ nhớ flash 16KB) đối với loại có giá thành thấp hơn. Arduino uno r3 sử dụng thạch anh có chu kì dao động là 16 MHz, có 14 pin (ngõ) ra/vào được đánh số từ 0 tới 13 trong đó có 6 pin PWM, ngoài ra còn có thêm 6 pin nhận tín hiệu analog được đánh kí hiệu từ A0 - A5, 6 pin này cũng có thể sử dụng được như các pin ra/vào bình thường.

GVHD TS: Đoàn Hữu SVTH: Phan Minh Phú Trên board arduino uno r3 còn có 1 nút reset, 1 ngõ kết nối với máy tính qua cổng USB và 1 ngõ cấp nguồn sử dụng jack 2.1mm lấy năng lượng trực tiếp từ ACDC adapter hay thông qua ắc-quy nguồn. Thông số kỹ thuật của arduino uno r3 [2]:  Vi điều khiển: ATmega328P.  Điện áp hoạt động: 5V.  Điện áp vào khuyên dùng: 7-12V.

 Điện áp vào giới hạn: 6-20V.  Chân PWM Ddigital I/O: 6.  Cường độ dòng điện trên mỗi chân I/O: 20 mA.  Cường độ dòng điện trên mỗi chân 3.

 Flash Memory: 32 KB (đối với ATmega328P).  SRAM: 2 KB (ATmega328P)  EEPROM: 1 KB (ATmega328P)  Tốc độ: 16 MHz Sơ đồ các khối kết nối của arduino uno r3: GVHD TS: Đoàn Hữu SVTH: Phan Minh Phú Hình 2.3 Vị trí các khối kết nối trên arduino uno r3 Các khối kết nối trên arduino uno r3 cũng có chức năng tương tự như trên arduino mega 2560 đã trình bày ở trên, bao gồm: 1. Ngõ vào số 2. Ngõ vào tương tự 4.

Nguồn vào và ra 5. Phần mềm lập trình arduino IDE Giao diện phần mềm lập trình arduino IDE bao gồm 3 phần chính như hình dưới đây: GVHD TS: Đoàn Hữu SVTH: Phan Minh Phú Hình 2.4 Giao diện phần mềm lập trình arduino IDE 1. Vùng lệnh: Bao gồm các nút lệnh (File, Edit, Sketch, Tools, Help). Phía dưới là các biểu tượng cho phép sử dụng nhanh các chức năng thường dùng.

Chức năng lần lượt của các biểu tượng được trình bày trong hình dưới đây: Hình 2.5 Chức năng các biểu tượng trong arduino IDE 2. Vùng viết chương trình: Là nơi đế người dùng viết chương trình, phần mềm arduino IDE sử dụng ngôn ngữ C/C++ để lập trình cho arduino.

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