CHƯƠNG 1: LÝ THUYẾT TỔNG QUAN 1. Khái niệm về nhà thông minh Nhà thông minh (tiếng Anh là “Smart Home”) hoặc hệ thống nhà thông minh là một ngôi nhà/căn hộ được trang bị hệ thống tự động tiên tiến dành cho điều khiển đèn chiếu sáng, nhiệt độ, truyền thông đa phương tiện, an ninh, rèm cửa, cửa và nhiều tính năng khác nhằm mục đích làm cho cuộc sống ngày càng tiện nghi, an toàn và góp phần sử dụng hợp lý các nguồn tài nguyên. Nhà thông minh sử dụng các thiết bị kết nối Internet để có thể quản lý và giám sát các thiết bị và hệ thống từ xa như ánh sáng và nhiệt độ.1 Ảnh minh họa 11 Công nghệ nhà thông minh Smart Home, còn được biết đến như Home Automation (tự động hóa ngôi nhà), cung cấp cho chủ nhà sự an toàn, thoải mái, tiện lợi và tiết kiệm năng lượng bằng cách cho phép họ kiểm soát các thiết bị thông minh bởi một ứng dụng smart home trên điện thoại smartphone hoặc các thiết bị kết nối mạng khác. Một phần của mạng lưới vạn vật kết nối (Internet of Things - IoT), các hệ thống và thiết bị nhà thông minh thường hoạt động cùng nhau, chia sẻ dữ liệu người dùng và tự động hóa các hành động dựa trên quyền ưu tiên của chủ nhà.
Với những kiến thức đã học qua môn “ Hệ thống nhúng ”, chúng em xin được phép trình bày nghiên cứu và kết quả đồ án môn học với đề tài “ Thiết Kế Hệ thống Cảm Biến Nhiệt Độ ,Độ Ẩm Và ReLay” 1. Cơ sở hình thành hệ thống cảm biến nhiệt độ,độ ẩm Xã hội ngày càng phát triển, nhu cầu của con người ngày càng tang cao, đồng thời tiết kiệm năng lượng cũng đang là nhiệm vụ hàng đầu của mỗi quốc gia. Thiết bị đo nhiệt độ, độ ẩm luôn gắn liền với đời sống của con người, vì vậy việc kiểm soát các thiết bị đo nhiệt độ , độ ẩm là rất cần thiết để tạo sự tiện nghi cho người sử dụng cũng như giảm đáng kể sự lãng phí năng lượng không cần thiết. Xuất phát từ những vấn đề thực tiễn trên, đã có rất nhiều thiết bị đo nhiệt độ , độ ẩm được ra đời nhằm phục vụ nhu cầu đời sống của con người.
Một số thiết bị đo nhiệt độ , độ ẩm thông minh trên thị trường hiện nay đến từ nhiều nước phát triển như: Model KLK 100 ( Phần Lan), cảm biến được sản suất bởi VCP-Thụy Điển, Model OM352UNI ( Cộng Hòa Séc)….2 Cảm biến nhiệt độ, độ ẩm trong phòng 1. Yêu cầu công nghệ của hệ thống cảm biến nhiệt độ , độ ẩm thông minh 1. Tính tự động Do yêu cầu ngày càng cao của sản xuất công nghiệp, sự phát triển khoa học kĩ thuật, các thiết bị máy móc ngày càng hiện đại nên tính tự động của hệ thống của một hệ 12 thống cảm biến nhiệt độ , độ ẩm thông minh nói riêng và các máy móc khác nói chung là vô cùng cần thiết và quan trọng. Tính tự động giúp giảm lượng hao phí điện năng, hạn chế tối đa can thiệp của con người.
Tính thông minh Với sự phát triển của công nghệ IoT, các thiết bị tự động thông minh ngày nay đa phần đều được kết nối với mạng Internet nhằm giúp người sử dụng có thể giám sát và điều khiển các thiết bị tự động từ xa. Tính đơn giản Tiếp đến một trong những tiêu chuẩn mà bất kỳ hộ gia đình,cơ quan, công ty, … nào cũng phải xem xét đó là tính đơn giản của hệ thống. Tính đơn giản đảm bảo người dùng có thể dễ dàng sử dụng, dễ dàng thao tác, vận hành, lắp đặt, bảo trì, bảo dưỡng, sửa chữa dễ dàng khi có sự cố. Tính thẩm mỹ Khi xã hội ngày càng văn minh hiện đại thì con người cũng đòi hỏi tính thẩm mỹ cao do vậy các sản phẩm phục vụ nhu cầu của con người cũng phải đa dạng phong phú và mang tính năng mỹ quan, hình thức mẫu mã bắt mắt đồng thời cũng cần phải có độ bền và độ chắc chắn cao, hoạt động trơn tru, ít xảy ra sự cố.
Tính thuận tiện Ngày nay tính thuận tiện trong các sản phẩm cũng là một tiêu chí để người dùng lựa chọn. Yêu cầu tính thuận tiện có trong hầu hết các khâu từ lắp rắp, vận hành đến đến khâu bảo trì, sửa chữa để không mất nhiều thời gian, tiết kiệm chi phí, công sức. 13 CHƯƠNG 2: NỀN TẢNG GIAO TIẾP 2. Home Assistant Home Assistant còn được gọi là “HA” hay “HASS” là một nền tảng quản lý nhà thông minh được lập trình bằng ngôn ngữ Python.
Nó có thể chạy trên mọi nền tảng hệ điều hành và quản lý ngôi nhà thông minh qua giao diện web hay qua ứng dụng trên smartphone. Home Assistant có 2 phiên bản. Phiên bản “Home Assistant” hay "Home Assistant Core" là thành phần cốt lõi nhất, có thể cài đặt lên bất kỳ nền tảng hệ điều hành nào giống như một phần mềm máy tính. “Home Assistant OS” kết hợp giữa “Home Assistant Core” và các công cụ khác.
Phiên bản này có thể cài đặt lên một chiếc máy tính như Raspberry Pi, máy ảo. Hai phiên bản này khi cài lên thiết bị nào đó sẽ biến thiết bị đó thành một hub tổng giúp kết nối và điều khiển thiết bị nhà thông minh, tương tự như Gateway trên nền tảng Xiaomi, Aqara, Hub tổng trên nền tảng Samsung SmartThings.1 Một giao diện quản lý nhà thông minh với Home Assistant 14 Là phần mềm nguồn mở với sự hỗ trợ của đội ngũ kỹ sư, lập trình viên trên khắp thế giới, Home Assistant tương thích với hầu hết mọi thiết bị nhà thông minh, mở ra khả năng làm việc không giới hạn của các thiết bị trong ngôi nhà. Dù là sử dụng phiên bản nào, người dùng cũng phải cài đặt Home Assistant trước, sau đó hệ thống sẽ quét qua các thiết bị nhà thông minh hiện có, người dùng sẽ tiến hành cấu hình để các thiết bị làm việc theo nhu cầu. Như vậy, nếu xét về sự tiện lợi, nhanh chóng, các nền tảng nhà thông minh đã giới thiệu trong các bài viết trước tỏ ra vượt trội, trong khi đó, Home Assistant lại mạnh ở khả năng điều khiển trong mạng nội bộ và tùy biến mạnh mẽ.
Các tính năng của Home Assistant Hình 2.2 Giao diện quản lý của Home Assistant thân thiện dễ dùng Home Assistant đóng vai trò như hub tổng điều khiển nhà thông minh, giúp tạo ra các ngữ cảnh để thực hiện các tác vụ nhà thông minh từ đơn giản đến phức tạp, đóng vai trò là cầu nối cho các thiết bị nhà thông minh sử dụng các công nghệ IoT khác nhau. Nền tảng nhà thông minh mã nguồn mở này cung cấp giải pháp lưu trữ dữ liệu tại chỗ (On-Premises) giúp đảm bảo an toàn, không dùng nền tảng đám mây (Cloud), giúp 15 kết nối các thiết bị nội bộ hoặc với nền tảng đám mây từ các nhà cung cấp nền tảng nhà thông minh mở hoặc đóng. Home Assistant cung cấp các thành phần có khả năng tích hợp (ở dạng add-on hoặc plugin) các hệ sinh thái IoT khác dự trên phần mềm như Google, Apple, Amazon, hay sản xuất phần cứng như IKEA, Philips, Sonos, Tuya, Xiaomi… Thay vì mỗi hãng phải cài mỗi app khác nhau để có thể thêm và sử dụng, Home Assistant giúp gom mọi thứ về một mối, vừa dễ dàng quản lý, vừa dễ dàng trong việc tạo ra các ngữ cảnh linh hoạt để các thiết bị làm việc liền mạch với nhau.3 Home Assistant có thể kết nối các thương hiệu khác nhau để hoàn tất tác vụ nhà thông minh cần thiết Việc điều khiển mọi thứ từ một “máy chủ” nội bộ vừa đảm bảo an toàn cho ngôi nhà, dữ liệu cá nhân, còn đảm bảo mỗi khi đường truyền mạng gặp vấn đề – đa phần các nền tảng khác đều đặt máy chủ ở nước ngoài – thì mọi thứ vẫn làm việc trôi chảy. Người dùng có thể sử dụng trợ lý ảo kỹ thuật số Google Assistant hay Amazon Alexa để điều khiển nhà thông minh qua giọng nói rảnh tay.
Vì tính mở và tùy biến cao, Home Assistant không dễ cho tất cả mọi người. Tuy nhiên, cộng đồng người dùng nền tảng này cực kỳ đông đảo và năng động, nên hầu như người dùng có thể làm, học hỏi mọi thứ mà không gặp khó khăn gì. 16 Người dùng cũng cần có kiến thức về hệ thống để cài đặt Home Assistant Core nền tảng lên hệ điều hành hiện có (Windows, Mac…) hoặc cài đặt Home Assistant OS. Để có thể tùy biến, người dùng cần có kiến thức về lập trình Python.
Giao thức MQTT 2. MQTT là gì? MQTT - viết tắt của Message Queueing Telemetry Transport, là một giao thức mạng mở, dùng để truyền thông điệp giữa các thiết bị. MQTT được xem là giao thức nhắn tin tiêu chuẩn cho IoT bởi nó hoạt động truyền tải cực kỳ nhẹ, có độ tin cậy cao và kết nối với mức băng thông tối thiểu. Xuất hiện đầu tiên vào năm 1999, cho đến nay, MQTT đã được sử dụng rộng rãi trong nhiều lĩnh vực.
Được biết, phiên bản mới nhất của MQTT là MQTT 5.0 với nhiều thay đổi tối ưu hơn so với các phiên bản trước đó. Kiến trúc MQTT bao gồm 2 phần chính là Broker - có nhiệm vụ xuất bản và Client - có nhiệm vụ đăng ký. Hoạt động Trong kiến trúc MQTT, MQTT Broker có vai trò như một trung tâm lưu trữ thông tin, trong khi đó MQTT Client sẽ bao gồm 2 nhóm là Publisher (xuất bản) và Subscriber (đăng ký). Broker chính là cầu nối giữa các Publisher và Subscriber, Broker nhận thông tin từ Publisher, sau đó những Client nào có đăng ký topic (chủ đề) thông tin đó trên Broker sẽ nhận được thông tin.
Mô hình này được thiết kế để việc giao nhận thông tin diễn ra ngay cả khi đường truyền không ổn định, và là giao thức lý tưởng cho các ứng dụng M2M (Machine to Machine - Máy đến máy).4 Sơ đồ hoạt động của MQTT 2. Tính năng, đặc điểm nổi bật Dạng truyền thông điệp theo mô hình Pub/Sub cung cấp việc truyền tin phân tán một chiều, tách biệt với phần ứng dụng. Việc truyền thông điệp là ngay lập tức, không quan tâm đến nội dung được truyền. Sử dụng TCP/IP là giao thức nền.
Tồn tại ba mức độ tin cậy cho việc truyền dữ liệu (QoS: Quality of service) o QoS 0: Broker/client sẽ gửi dữ liệu đúng một lần, quá trình gửi được xác nhận bởi chỉ giao thức TCP/IP. o QoS 1: Broker/client sẽ gửi dữ liệu với ít nhất một lần xác nhận từ đầu kia, nghĩa là có thể có nhiều hơn 1 lần xác nhận đã nhận được dữ liệu.