Đồ án thiết kế và thi công hệ thống nhà thông minh tại HCMUTE

Đồ án nghiên cứu hcmute thiết kế và thi công hệ thống nhà thông minh, áp dụng công nghệ tiên tiến, tối ưu giải pháp kỹ thuật cho bài toán .

Người đăng

Ẩn danh

Thể loại

đồ án tốt nghiệp

2019

144
3
0

Phí lưu trữ

35 Point

Mục lục chi tiết

LỜI CẢM ƠN

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

1.1. Mục tiêu đề tài

1.2. Nội dung nghiên cứu

1.3. Giới hạn

1.4. Bố cục

2. CHƯƠNG 2: CƠ SỞ LÝ THUYẾT LIÊN QUAN

2.1. Vi điều khiển

2.2. Giới thiệu giao thức UART

2.3. Giới thiệu về Wifi

2.4. Giới thiệu giao thức I2C

2.5. Màn hình LCD

3. CHƯƠNG 3: XÂY DỰNG VÀ THIẾT KẾ HỆ THỐNG

3.1. Sơ đồ khối của hệ thống

3.2. Yêu cầu của hệ thống

3.3. Chức năng từng khối

3.4. Thiết kế tính toán hệ thống

3.5. Khối cảm biến

3.6. Giao diện điều khiển

3.7. Khối cảm ứng

3.8. Khối đóng ngắt

3.9. Khối bàn phím

3.10. Khối hiển thị

3.11. Khối xử lý trung tâm

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

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

4.1. Thi công bảng mạch kết nối

4.2. Vẽ mạch in

4.3. Xuất file mạch in ra pdf tiến hành in

4.4. Kết quả sau khi thi công

4.5. Lập trình hệ thống

4.5.1. Phần mềm lập trình vi điều khiển

4.5.2. Viết chương trình

4.5.3. Lập trình ứng dụng cho điện thoại

4.5.3.1. Giới thiệu về phần mềm Android Studio và Firebase
4.5.3.2. Lưu đồ giải thuật Android
4.5.3.3. Lập trình ứng dụng android
4.5.3.4. Chạy ứng dụng trên điện thoại

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

5.1. Kết quả mô hình

5.2. Ứng dụng điều khiển trên điện thoại

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

Tóm tắt

I. Thiết kế hệ thống nhà thông minh tại HCMUTE

Đồ án tốt nghiệp "Thiết kế và thi công hệ thống nhà thông minh tại HCMUTE" tập trung vào việc xây dựng một hệ thống nhà thông minh có khả năng giám sát và điều khiển từ xa. Hệ thống sử dụng vi điều khiển ATMega2560ESP8266EX, kết hợp với các cảm biến khác nhau (ánh sáng, chuyển động, nhiệt độ, độ ẩm, lửa), màn hình LCD, nút nhấn, và một ứng dụng Android để điều khiển. Giải pháp này hướng đến việc tối ưu hóa hiệu quả năng lượng và tăng cường tính an ninh. Các chức năng chính bao gồm: khóa số điện tử, giám sát lịch sử ra vào, tự động bật/tắt thiết bị, điều khiển bằng điện thoại hoặc nút nhấn, và cảnh báo cháy. Thiết kế hệ thống bao gồm sơ đồ khối, tính toán các thông số kỹ thuật, và lựa chọn linh kiện phù hợp. Thi công hệ thống tập trung vào việc lắp ráp mạch, lập trình vi điều khiển, và phát triển ứng dụng Android. Thực tiễn cho thấy, việc ứng dụng IoTAI trong nhà thông minh mang lại nhiều tiện ích cho người dùng. Nghiên cứu này đóng góp vào sự phát triển của nhà thông minh cao cấpxu hướng nhà thông minh hiện nay.

1.1. Lập đặt và thiết kế hệ thống

Phần này tập trung vào thiết kế hệ thống nhà thông minh. Thiết kế bao gồm việc lựa chọn các cảm biến phù hợp để thu thập dữ liệu môi trường (ánh sáng, nhiệt độ, độ ẩm, khói...). Việc lập đặt hệ thống bao gồm sơ đồ khối chi tiết, mô tả chức năng từng thành phần (Arduino Mega 2560, ESP8266, màn hình LCD, các cảm biến, nút nhấn, relay...). Thiết kế phần mềm bao gồm việc lựa chọn ngôn ngữ lập trình (Arduino IDE, Android Studio) và thiết kế giao diện người dùng (UI) thân thiện trên điện thoại. Thiết kế hệ thống cần chú trọng đến tính khả thi, độ tin cậy và khả năng mở rộng. Hệ thống smart home được thiết kế để đáp ứng các yêu cầu về an ninh nhà thông minh, tiết kiệm năng lượng nhà thông minh, và tự động hóa nhà thông minh. Kiến trúc hệ thống được lựa chọn sao cho tối ưu về hiệu năng và chi phí. Lựa chọn các linh kiện điện tử cần dựa trên các tiêu chí kỹ thuật, giá thành và khả năng tích hợp. Giải pháp được đề xuất cần đảm bảo khả năng tương thích giữa các module phần cứng và phần mềm. Dịch vụ nhà thông minh được thiết kế dựa trên nhu cầu sử dụng thực tế. Việc lập trình hệ thống nhà thông minh cần đảm bảo tính chính xác và ổn định của hệ thống. Báo cáo sẽ trình bày chi tiết quá trình thiết kế và lựa chọn các giải pháp kỹ thuật.

1.2. Thi công và lập trình hệ thống

Phần này mô tả quá trình thi công hệ thống nhà thông minh. Thi công bao gồm việc lắp ráp mạch điện tử, kết nối các cảm biến, vi điều khiển và các thiết bị ngoại vi khác. Quá trình thi công cần đảm bảo tính chính xác và an toàn. Thi công smart home yêu cầu kỹ năng hàn mạch và kiến thức về điện tử cơ bản. Việc lập trình vi điều khiển ATMega2560 và ESP8266 được thực hiện bằng Arduino IDE. Lập trình ứng dụng Android được thực hiện bằng Android Studio, kết hợp với Firebase để quản lý dữ liệu. Ứng dụng nhà thông minh được thiết kế để dễ sử dụng và cung cấp đầy đủ các chức năng điều khiển. Bảo trì hệ thống nhà thông minh cần được xem xét để đảm bảo hệ thống hoạt động ổn định. Cấu hình hệ thống nhà thông minh được thực hiện thông qua ứng dụng Android. Tiện ích nhà thông minh được tối ưu hóa thông qua việc lập trình và tích hợp các chức năng. Dịch vụ nhà thông minh được cung cấp thông qua ứng dụng. An ninh nhà thông minh được đảm bảo bằng các cơ chế bảo mật trong ứng dụng và hệ thống. Bài toán được giải quyết là việc điều khiển các thiết bị trong nhà thông minh. Thuật toán được sử dụng trong quá trình lập trình cần được mô tả rõ ràng.

1.3. Kết quả và đánh giá hệ thống

Phần này trình bày kết quả thực hiện hệ thống nhà thông minh. Kết quả bao gồm việc chạy thử nghiệm hệ thống, đánh giá hiệu quả hoạt động và phân tích các lỗi phát sinh. Kết quả được đánh giá dựa trên các tiêu chí về độ tin cậy, hiệu quả và khả năng sử dụng. Nhận xét về tính năng, hiệu suất và sự ổn định của hệ thống sẽ được trình bày chi tiết. Đánh giá hệ thống bao gồm việc so sánh với các hệ thống nhà thông minh khác trên thị trường. Thực tiễn cho thấy hệ thống này hoạt động ổn định và đáp ứng được các yêu cầu đề ra. Cải tiến hệ thống có thể tập trung vào việc nâng cao độ bảo mật và tích hợp thêm các chức năng mới. Kinh nghiệm thu được từ quá trình thiết kếthi công được tổng kết lại. Câu hỏi thường gặp về nhà thông minh được giải đáp. So sánh với các hệ thống tương tự. Lựa chọn giải pháp tối ưu. Tương lai của nhà thông minh được dự đoán. Hệ thống nhà thông minh này thể hiện sự ứng dụng thực tiễn của IoTAI.

01/02/2025

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

Chương 1: Tổng Quan.  Chương 2: Cơ Sở Lý Thuyết.  Chương 3: Thiết Kế và Tính Toán.  Chương 4: Thi Công Hệ Thống.

 Chương 5: Kết Quả, Nhận Xét, Đánh Giá.  Chương 6: Kết Luận. CNKT ĐIỆN TỬ - TRUYỀN THÔNG 2 do an CHƯƠNG 2: CƠ SỞ LÝ THUYẾT LIÊN QUAN Chương 2: CƠ SỞ LÝ THUYẾT LIÊN QUAN 2. Vi điều khiển 2.

Giới thiệu giao thức UART Giới thiệu về giao thức truyền UART: Thuật ngữ UART trong tiếng anh là viết tắt của cụm tự Universal Synchronous & Asynchronous serial Reveiver and Transmitter, nghĩa là bộ truyền nhận nối tiếp đồng bộ và không đồng bộ. UART thường được dùng trong máy tính công nghiệp, truyền thông, vi điều khiển hay một số các thiết bị truyền tin khác. Mục đích của UART sinh ra là để truyền tín hiệu qua lại lẫn nhau hay truyền từ vi điều khiển tới vi điều khiển hoặc truyền từ ngoại vi tới vi điều khiển. Trong đó hai thiết bị giao tiếp với nhau thông qua giao thức UART bằng hai đường dẫn RX (read) và TX (transmit).

Vì phương thức giao tiếp không đồng bộ nên hai thiết bị giao tiếp với nhau phải được thống nhất về khung truyền, tốc độ truyền. TX RX Slave Master RX GND TX Hình 2. 1 Cách kết nối hai thiết bị sử dụng giao thức UART.  Sơ đồ khối UART: - Bao gồm hai thành phần là máy phát và máy thu được hiển thị bên dưới.

Phần máy phát bao gồm ba khối là thanh ghi giữ truyền, thanh ghi dịch chuyển và logic điều khiển. Tương tự, phần máy thu bao gồm một thanh ghi giữ, thanh ghi thay đổi và logic điều khiển. Hai phần này thường được cung cấp bởi một bộ tạo tốc độ baud. Trình tạo này được sử dụng để tạo tốc độ khi phần máy phát và phần máy thu phải truyền hoặc nhận dữ liệu.

- Thanh ghi giữ trong máy phát bao gồm byte dữ liệu được truyền. Các thanh ghi thay đổi trong máy phát và máy thu di chuyển các bit sang phải hoặc trái cho đến khi một byte dữ liệu được truyền hoặc nhận. Một logic điều khiển đọc (hoặc) ghi được sử dụng để biết khi nào nên đọc hoặc viết. - Máy phát tốc độ baud giữa máy phát và máy thu tạo ra tốc độ dao động từ 110 bps đến 230400 bps.

Thông thường, tốc độ truyền của vi điều khiển là 9600 đến 115200. CNKT ĐIỆN TỬ - TRUYỀN THÔNG 3 do an CHƯƠNG 2: CƠ SỞ LÝ THUYẾT LIÊN QUAN Hình 2. 2 Sơ đồ khối UART Hình 2. 3 Khung truyền dữ liệu của giao thức UART.

 Các khái niệm quan trọng trong chuẩn truyền thông UART: - Baudrate: Số bit truyền được trong 1s, ở truyền nhận không đồng bộ thì ở các bên truyền và nhận phải thống nhất Baudrate. Các thông số tốc độ Baudrate thường hay sử dụng dể giao tiếp với máy tính là 600, 1200, 2400, 4800, 9600, 14400, 19200, 38400, 56000, 57600, 115200. - Frame: Ngoài việc giống nhau của tốc độ baud 2 thiết bị truyền nhận thì khung truyền của bên cũng được cấu hình giống nhau. Khung truyền quy định số bit CNKT ĐIỆN TỬ - TRUYỀN THÔNG 4 do an CHƯƠNG 2: CƠ SỞ LÝ THUYẾT LIÊN QUAN trong mỗi lần truyền, bit bắt đầu “Start bit”, các bit kết thúc (Stop bit), bit kiểm tra tính chẵn lẻ (Parity), ngoài ra số bit quy định trong một gói dữ liệu cũng được quy định bởi khung truyền.

Có thể thấy, khung truyền đóng một vai trò rất quan trọng trong việc truyền thành công dữ liệu.  Idle frame: Đường truyền UART ở mức “1”, để xác nhận hiện tại đường truyền dữ liệu trống, không có frame nào đang được truyền đi.  Break frame: Đường truyền UART ở mức “0”, để xác nhận hiện tại trên đường truyền đang truyền dữ liệu, có frame đang được truyền đi. - Start bit: Bit đầu tiên được truyền trong một frame, bit này có chức năng báo cho bên nhận rằng sắp có một gói dữ liệu truyền đến.

Đường truyền UART luôn ở trạng thái cao mức “1” cho đến khi chip muốn truyền dữ liệu đi thì nó gởi bit start bằng cách kéo xuống mức “0”. Như vậy start bit giá trị điện áp 0V và phải bắt buộc có bit start trong khung truyền. 4 Vị trí Start bit - Data: Data hay dữ liệu là thông tin mà chúng ta nhận được trong quá trình truyền và nhận. Data trong STM32 có quy định khung truyền là 8bit hoặc 9bit.

Trong quá trình truyền UART, bit có trọng số thấp nhất (LSB – least significant bit – bên CNKT ĐIỆN TỬ - TRUYỀN THÔNG 5 do an CHƯƠNG 2: CƠ SỞ LÝ THUYẾT LIÊN QUAN phải) sẽ được truyền trước và cuối cùng là bit có ảnh hưởng cao nhất (MSB – most significant bit – bên trái) - Parity bit: Parity dùng để kiểm tra dữ liệu truyền có đúng hay không. Có 2 loại Parity đó là Parity chẵn (even parity) và parity lẽ (odd parity). Parity chẵn nghĩa là số bit 1 trong trong data truyền cùng với bit Parity luôn là số chẵn, ngược lại nếu Parity lẽ nghĩa là số bit 1 trong data truyền cùng với bit Parity luôn là số lẽ. Bit Parity không phải là bit bắt buộc và vì thế chúng ta có thể loại bỏ bit này ra khỏi khung truyền.

5 Vị trí Parity bit - Stop bits: Stop bits là một bit báo cáo để cho bộ truyền/nhận biết được gói dữ liệu đã được gởi xong. Stop bits là bit bắt buộc phải có trong khung truyền. Stop bits có thể là 1bit, 1.5bit tùy thuộc vào ứng dụng UART của người sử dụng. CNKT ĐIỆN TỬ - TRUYỀN THÔNG 6 do an CHƯƠNG 2: CƠ SỞ LÝ THUYẾT LIÊN QUAN Hình 2.

6 Vị trí Stop bit 2. Arduino Mega 2560 Arduino đã và đang được sử dụng rất rộng rãi trên thế giới, và ngày càng chứng tỏ được sức mạnh của chúng thông qua vô số ứng dụng độc đáo của người dùng trong cộng đồng nguồn mở (open-source). Dòng mạch Arduino có rất nhiều phiên bản, một trong những phiên bản phổ biến của mạch Arduino chính là Arduino Mega 2560. 7 Arduino Mega 2560 CNKT ĐIỆN TỬ - TRUYỀN THÔNG 7 do an CHƯƠNG 2: CƠ SỞ LÝ THUYẾT LIÊN QUAN Arduino Mega 2560 là phiên bản nâng cấp của Arduino Mega hay còn gọi là Arduino Mega 1280.

Sự khác biệt lớn nhất với Arduino Mega 1280 chính là chip nhân. Ở Arduino Mega 1280 sử dụng chip ATmega1280 với flash memory 128KB, SRAM 8KB và EEPROM 4 KB. Còn Arduino Mega 2560 là phiên bản hiện đang được sử dụng rộng rãi và ứng dụng nhiều hơn. Với chip ATmega2560 có bộ nhớ flash memory 256 KB, 8KB cho bộ nhớ SRAM, 4 KB cho bộ nhớ EEPROM.

Giúp cho người dùng thêm khả năng viết những chương trình phức tạp và điều khiển các thiết bị lớn hơn như máy in 3D, điều khiển robot. 1 Thông số cơ bản của Mạch Arduino Mega 2560 Vi điều khiển ATmega2560 Điện áp hoạt động 5V Điện áp đầu vào (khuyên dùng) 7-12V Điện áp đầu vào (giới hạn) 6-20V Chân Digital I/O 54 (Với 15 chân PWM output) Chân đầu vào Analog 16 Dòng ra trên chân digital Tối đa 40 mA Dòng ra tối đa (5V) 500 mA Dòng ra trên chân 3.3V 50 mA 256 KB (ATmega2560) với 8 KB dùng bởi bộ Bộ nhớ Flash nạp khởi động SRAM 8 KB (ATmega2560) EEPROM 4 KB (ATmega2560) Xung nhịp 16 MHz CNKT ĐIỆN TỬ - TRUYỀN THÔNG 8 do an CHƯƠNG 2: CƠ SỞ LÝ THUYẾT LIÊN QUAN  Nguồn cho ARDUINO: Arduino Mega có thể được cấp nguồn thông qua kết nối USB hoặc nguồn ngoài. Nguồn nuôi được chọn một cách tự động. Nguồn ngoài (không phải USB) có thế lấy từ bộ chuyển đổi AC sang DC hoặc từ pin.

Bo mạch có thể hoạt động với nguồn ngoài từ 6 – 20V. Tuy nhiên, nếu nguồn cấp nhỏ hơn 7V thì chân 5V có thể cấp không đủ 5V và bo mạch có thể chạy không ổn định. Nếu cấp lớn hơn 12V, bộ biến áp có thể bị nóng và ảnh hưởng tới mạch. Điện áp khuyến nghị là 7 – 12V.

Các chân cấp nguồn VIN: Điện áp vào mạch Arduino khi nó sử dụng nguồn ngoài (khác với nguồn 5V từ kết nối USB hoặc nguồn khác). Ta có thể cấp nguồn qua chân này hoặc cấp thông qua jack cắm nguồn. 5V: Chân cấp điện áp ra 5V từ bộ điều chỉnh điện áp của bo mạch. 3V3: Chân cấp điện áp ra 3,3V từ bộ điều chỉnh điện áp.

GND: Chân nối đất. IOREF: Chân này cấp điện áp tham chiếu cho vi điều khiển hoạt động. Một shield được cấu hình đúng có thể đọc điện áp chân IOREF và chọn nguồn điện phù hợp hoặc cho phép biến đổi điện áp để làm việc vơi 5,5V hoặc 3,3V.  Vi điều khiển Atmega328 tiêu chuẩn cung cấp cho người dùng: 256KB bộ nhớ Flash: những đoạn lệnh bạn lập trình sẽ được lưu trữ trong bộ nhớ Flash của vi điều khiển.

Thường thì sẽ có khoảng vài KB trong số này sẽ được dùng cho bootloader nhưng đừng lo, bạn hiếm khi nào cần quá 20KB bộ nhớ này đâu. 8KB cho SRAM (Static Random Access Memory): giá trị các biến bạn khai báo khi lập trình sẽ lưu ở đây. Khi mất điện, dữ liệu trên SRAM sẽ bị mất. 4KB cho EEPROM (Electrically Erasable Programmable Read Only Memory): đây giống như một chiếc ổ cứng mini – nơi mà có thể đọc và ghi dữ liệu của mình vào đây mà không phải lo bị mất khi cúp điện giống như dữ liệu trên SRAM.

 Các chân vào ra của ARDUINO MEGA 2560: Mỗi chân trong 54 chân digital trên bo Mega có thể sử dụng làm chân input hoặc output. Chúng hoạt động ở 5V. Mỗi chân có thể cấp hoặc nhận tối đa 40mA và CNKT ĐIỆN TỬ - TRUYỀN THÔNG 9 do an CHƯƠNG 2: CƠ SỞ LÝ THUYẾT LIÊN QUAN có một trở kéo nội (mặc định không nối) từ 20 – 50Kohm. Ngoài ra, một số chân có các chức năng đặc biệt như sau: 8 chân Serial 0 (RX) và 1 (TX), Serial 19 (RX) và 18 (TX), Serial 17 (RX) và 16 (TX), Serial 15 (RX) và 14 (TX) : dùng để gửi (Transmit – TX) và nhận (Receive – RX) dữ liệu TTL Serial.

Arduino Uno có thể giao tiếp với thiết bị khác thông qua 2 chân này. Kết nối bluetooth có thể nói là kết nối Serial không dây. Nói một cách đơn giản, bạn có thể điều chỉnh được điện áp ra ở chân này từ mức 0V đến 5V thay vì chỉ cố định ở mức 0V và 5V như những chân khác Chân giao tiếp SPI: 53 (SS), 51 (MOSI), 50 (MISO), 52 (SCK). Ngoài các chức năng thông thường, 4 chân này còn dùng để truyền phát dữ liệu bằng giao thức SPI với các thiết bị khác.

LED 13: trên ARDUINO MEGA 2560 có 1 đèn led màu cam (kí hiệu chữ L). Khi bấm nút Reset, bạn sẽ thấy đèn này nhấp nháy để báo hiệu.

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

Bài viết "Thiết kế và thi công hệ thống nhà thông minh tại HCMUTE" cung cấp cái nhìn tổng quan về quy trình và công nghệ được áp dụng trong việc xây dựng hệ thống nhà thông minh tại Học viện Công nghệ Bưu chính Viễn thông. Nội dung bài viết nhấn mạnh những lợi ích của nhà thông minh, bao gồm khả năng tự động hóa, tiết kiệm năng lượng và nâng cao sự tiện nghi cho người sử dụng. Đặc biệt, bài viết còn đề cập đến các công nghệ IoT (Internet of Things) đang được ứng dụng để tối ưu hóa quản lý và điều khiển các thiết bị trong nhà.

Để mở rộng thêm kiến thức về lĩnh vực này, bạn có thể tham khảo các tài liệu liên quan như Đồ án hcmute nghiên cứu và phát triển hệ thống nhà thông minh, nơi bạn sẽ tìm thấy những nghiên cứu sâu hơn về các giải pháp công nghệ cho nhà thông minh. Ngoài ra, bài viết Báo cáo thực tập tốt nghiệp đề tài thiết kế hệ thống điều khiển qua web cho nhà thông minh sẽ giúp bạn hiểu rõ hơn về cách điều khiển các thiết bị trong nhà thông minh thông qua nền tảng web. Cuối cùng, bạn cũng có thể tìm hiểu về Đồ án hcmute điều khiển các thiết bị trong nhà thông minh bằng giọng nói, một ứng dụng thú vị của công nghệ giọng nói trong việc quản lý nhà thông minh. Những tài liệu này sẽ giúp bạn có cái nhìn sâu sắc hơn về xu hướng phát triển của nhà thông minh hiện nay.