VI. ĐIỀU KHIỂN CÁC THIẾT BỊ TRONG GIA ĐÌNH BẰNG GIỌNG NÓ
4. Giao thức MQTT
● (Message Queue Telemetry Transport) là một giao thức gởi dạng publish/subscribe với băng thông thấp, độ tin cậy cao và khả năng được sử dụng trong mạng lưới không ổn định.
72
● ESP8266 bản thân là một chip tích hợp giao thức TCP/IP, đây là giao thức chính được sử
dụng trong dự án “Ngôi nhà thông minh” này. Bộ xử lí đủ mạnh để giao tiếp với các loại cảm biến và các thiết bị chấp hành thông qua các cổng GPIO.
● MQTT là 1 giao thức truyền dữ liệu giữa nhiều thiết bị thông qua 1 trạm trung gian (gọi là Broker – là 1 application chạy trên máy tính server/cloud).
● Về cơ bản, các thiết bị trong nhà thông minh (ví dụ như Temperature sensor (Cảm biến nhiệt độ)) sẽ đóng vai trò client và đăng ký với Broker dữ liệu nó muốn gửi lên hoặc dữ liệu nó muốn nhận được. Nhiệm vụ của Broker là thiết bị trung gian nhận dữ liệu truyền lên từ các thiết bị client và gửi dữ liệu đến các client muốn nhận tương ứng. Chúng ta có thể hình dung mô hình Broker – Client tương tự như mô hình tổng đài điện thoại. Lưu ý là MQTT không phải là mô hình Server-Client vì tất cả thiết bị đều ngang hàng và đều có thể gửi dữ liệu lẫn nhau thông qua cầu nối Broker.
● Các thiết bị client có thể đăng ký nhận dữ liệu hoặc ngừng nhận dữ liệu từ Broker trong runtime tùy yêu cầu của ứng dụng. Ngoài ra các thiết bị client gửi dữ liệu cũng không cần đăng ký trước loại dữ liệu mà nó sẽ gửi. Do đó, có thể nói giao thức MQTT là mô hình sao và cho phép nhiều thiết bị trao đổi dữ liệu khá linh hoạt cả đối với thiết bị gửi dữ liệu và thiết bị nhận dữ liệu.
● Client: là thiết bị Smarthome muốn gửi/nhận dữ liệu trong network
● Broker: là thiết bị trung gian nhận dữ liệu từ các client muốn gửi và gửi dữ liệu đó tới các client muốn nhận
● Publish: là bước gửi dữ liệu từ 1 thiết bị client đến Broker. Trong bước này, thiết bị Smarthome sẽ xác định topic (là loại dữ liệu muốn gửi) và giá trị của topic đó
73
● Subscribe: là bước đăng ký nhận dữ liệu từ Broker của 1 thiết bị Client. Trong bước này, thiết bị IoT sẽ xác định loại dữ liệu mà nó muốn nhận. Khi Broker nhận được loại dữ liệu này từ 1 thiết bị client khác, nó sẽ gửi dữ liệu này tới thiết bị client đã đăng ký nhận. ► Tạo tài khoản và cấu hình ClouseMQTT:
Bước 1: Vào trực tiếp trang CloudMQTT để tạo một tài khoản cho mình, sẽ có một đường dẫn để kích hoạt thông tin và cấu hình cho tài khoản của bạn, trừ email và mật khẩu ra thì các ô còn lại bạn nhập gì tùy thích.
Bước 2: Tạo MQTT Broker bằng cách ấn vào nút Create màu xanh, nhập các thông tin vào như hình.
74 Bước 3: Chọn Details để cấu hình thông tin. Bước 3: Chọn Details để cấu hình thông tin.
75 Cuối cùng ta dùng lệnh Save để lưu lại. Cuối cùng ta dùng lệnh Save để lưu lại.
Chương 3. THIẾT KẾ HỆ THỐNG 1. Sơ đồ khối tổng quát
Hệ thống bao gồm 6 khối chính, sử dụng wifi để điều khiển:
76
- Khối nguồn: Sử dụng nguồn 5V để điều khiển toàn bộ hệ thống
- Khối cảm biến: bao gồm cảm biến nhiệt độ, độ ẩm và cảm biến khí gas. - Bật tắt các thiết bị điện.
- Điều khiển các thết bị bằng giọng nói - Hệ thống đóng mở cửa tự động.