Mục lục:

Hệ thống tự động hóa tại nhà bằng WiFi công suất cực thấp: 6 bước (có hình ảnh)
Hệ thống tự động hóa tại nhà bằng WiFi công suất cực thấp: 6 bước (có hình ảnh)

Video: Hệ thống tự động hóa tại nhà bằng WiFi công suất cực thấp: 6 bước (có hình ảnh)

Video: Hệ thống tự động hóa tại nhà bằng WiFi công suất cực thấp: 6 bước (có hình ảnh)
Video: HỆ THỐNG NHÀ THÔNG MINH CÓ GÌ, CÁCH THỨC HOẠT ĐỘNG RA SAO PHẦN 2 #smarthome#nhathongminh 2024, Tháng mười một
Anonim
Hệ thống tự động hóa tại nhà bằng WiFi công suất cực thấp
Hệ thống tự động hóa tại nhà bằng WiFi công suất cực thấp
Hệ thống tự động hóa tại nhà bằng WiFi công suất cực thấp
Hệ thống tự động hóa tại nhà bằng WiFi công suất cực thấp

Trong dự án này, chúng tôi chỉ ra cách bạn có thể xây dựng một hệ thống tự động hóa gia đình cục bộ cơ bản trong một vài bước. Chúng tôi sẽ sử dụng Raspberry Pi sẽ hoạt động như một thiết bị WiFi trung tâm. Trong khi đối với các nút cuối, chúng tôi sẽ sử dụng IOT Cricket để tạo thiết bị WiFi chạy bằng pin, ví dụ: cảm biến nhiệt độ và kết nối nó với RPi mà không cần viết một dòng mã nào.

Hệ thống của chúng tôi sẽ dựa trên giao thức truyền thông MQTT, được sử dụng rộng rãi trong hầu hết các hệ thống tự động hóa gia đình. Để thiết lập nó, chúng tôi chọn nhà môi giới Mosquitto MQTT (máy chủ) và cài đặt nó trên Raspberry Pi (trung tâm trung tâm của chúng tôi).

IOT Cricket cũng đi kèm với hỗ trợ giao thức HTTP (S) và MQTT. Chúng tôi định cấu hình nó để sử dụng MQTT để giao tiếp trực tiếp với nhà môi giới RPi MQTT của chúng tôi.

Dự án này có thể được thực hiện bởi các nhà sản xuất ở tất cả các cấp độ kỹ năng. Nó có thể yêu cầu một số hàn cơ bản tuy nhiên nó không yêu cầu bất kỳ mã hóa hoặc lập trình nào. Cuối cùng của dự án này, bạn sẽ có một ý tưởng vững chắc về cách bạn có thể dễ dàng xây dựng hệ thống của riêng mình và nhanh chóng mở rộng bằng cách thêm các nút cuối IOT của riêng bạn vào hệ thống.

Quân nhu:

  • Raspberry Pi (chúng tôi đã sử dụng phiên bản 3 cho dự án này)
  • Mô-đun WiFi IOT Cricket
  • Giá đỡ pin 2xAAA
  • Pin 2xAAA

Bước 1: MQTT là gì?

Giao thức MQTT cung cấp một phương pháp nhẹ nhàng để thực hiện nhắn tin bằng cách sử dụng mô hình xuất bản / đăng ký. Điều này làm cho nó phù hợp với nhắn tin Internet of Things như cảm biến năng lượng thấp hoặc thiết bị di động như điện thoại, máy tính nhúng hoặc vi điều khiển. (nguồn: mosquitto.org)

Chúng tôi có thể sử dụng bao nhiêu thiết bị tùy thích để đăng ký các chủ đề và lắng nghe thông báo gửi đến. Nếu một số thiết bị xuất bản thông báo về chủ đề đó thì tất cả các thiết bị, được đăng ký với chủ đề đó, sẽ nhận được thông báo đó ngay lập tức. Chủ đề có thể là bất kỳ chuỗi tùy ý nào thường được nối với / ký tự để cho phép xây dựng các chủ đề phân cấp. Việc sử dụng MQTT điển hình nhất là có một máy chủ trung tâm để các thiết bị có thể đăng ký và xuất bản tin nhắn. Nó tạo điều kiện cho tất cả các giao tiếp giữa các thiết bị kết nối với máy chủ đó. Trong dự án này, chúng tôi sẽ sử dụng RPi để hoạt động như nhà môi giới MQTT trung tâm của chúng tôi và tất cả các thiết bị khác sẽ gửi tin nhắn qua nhà môi giới này. Cách tốt nhất để tìm hiểu về nó, rõ ràng là bằng cách tự làm. Có rất nhiều tài nguyên có sẵn trên internet về MQTT. Tuy nhiên, đối với dự án này, bạn sẽ không sao với phần giới thiệu cơ bản mà chúng tôi đã cung cấp ở trên.

Bước 2: Cài đặt MQTT Broker trên Raspberry Pi

Đối với dự án này, chúng tôi sử dụng nhà môi giới Mosquitto MQTT mã nguồn mở. Nó có trọng lượng nhẹ và phù hợp để sử dụng trên tất cả các thiết bị từ máy tính bảng đơn công suất thấp đến máy chủ đầy đủ.

Trước khi bắt đầu cài đặt, bạn nên cập nhật các thành phần hệ thống trước:

$ sudo apt-get cập nhật $ sudo apt-get nâng cấp

Cài đặt nhà môi giới Mosquitto. Mở một thiết bị đầu cuối và nhập lệnh sau:

$ sudo apt-get install mosquitto -y

Định cấu hình nhà môi giới Mosquitto. Chỉnh sửa tệp cấu hình:

$ sudo vi /etc/mosquitto/mosquitto.conf

và thêm các dòng sau ở trên cùng:

port 1883allow_anonymous true

Khởi động lại RPi để áp dụng các thay đổi:

$ sudo khởi động lại

Đó là nó! Nhà môi giới MQTT của chúng tôi hiện đang hoạt động!

LƯU Ý: vì mục đích đơn giản của dự án này, chúng tôi không tạo tài khoản. Vì vậy, bất kỳ ai trong mạng cục bộ của chúng tôi đều có thể kết nối với nhà môi giới MQTT này mà không cần thông tin đăng nhập. Nếu bạn muốn thêm xác thực người dùng và làm cho nó an toàn hơn, có rất nhiều hướng dẫn trên internet về cách thực hiện.

Bây giờ, chúng tôi chỉ cần lấy địa chỉ IP để có thể gửi tin nhắn đến nhà môi giới Mosquitto của chúng tôi từ các thiết bị khác trong mạng:

Lấy địa chỉ IP:

$ hostname-Tôi

your_RPi_IP_address (ví dụ: 192.168.1.10)

Bước 3: Kết nối IOT Cricket với RaspberryPi qua MQTT

Kết nối IOT Cricket với RaspberryPi qua MQTT
Kết nối IOT Cricket với RaspberryPi qua MQTT
Kết nối IOT Cricket với RaspberryPi qua MQTT
Kết nối IOT Cricket với RaspberryPi qua MQTT

Trong dự án này, chúng tôi sử dụng mô-đun WiFi IOT Cricket cho một cảm biến đơn giản để báo cáo nhiệt độ cứ sau 30 giây cho hệ thống của chúng tôi. Nó sẽ chạy bằng pin nên chúng ta có thể dán ở bất cứ đâu trong nhà hoặc ngoài vườn. Sau đó, bạn có thể sử dụng IOT Cricket để xây dựng các cảm biến, báo thức, nút, công tắc chạy bằng pin khác nhau và kết nối chúng với nhà môi giới RPi MQTT của chúng tôi.

Trong bước đầu tiên kết nối pin với Cricket.

Cricket được tích hợp cảm biến nhiệt độ. Chúng tôi chỉ cần định cấu hình nó để gửi giá trị nhiệt độ đến nhà môi giới MQTT của chúng tôi bằng cách đặt địa chỉ IP RPi. điều chỉnh địa chỉ IP trong hộp "url" thành RPi của bạn)

Bây giờ chúng ta có thể thoát khỏi chế độ cấu hình. Thiết bị đã sẵn sàng! Cricket đã gửi dữ liệu đến nhà môi giới MQTT của chúng tôi sau mỗi 30 giây.

Bước 4: Kiểm tra tin nhắn MQTT

Kiểm tra Tin nhắn MQTT
Kiểm tra Tin nhắn MQTT

Để xem / nhận tin nhắn được gửi đến nhà môi giới MQTT của chúng tôi, chúng tôi có thể sử dụng nhiều công cụ khác nhau.

Cách dễ nhất có thể là công cụ dòng lệnh mosquitto_sub. Chúng tôi có thể cài đặt nó trên bất kỳ máy tính nào trong mạng của chúng tôi hoặc trên RPi của chúng tôi bằng lệnh sau:

$ sudo apt-get install mosquitto-client -y

Bây giờ chúng ta có thể thực hiện lệnh sau để nghe TẤT CẢ các chủ đề và tin nhắn được gửi qua nhà môi giới MQTT của chúng tôi:

$ mosquitto_sub -v -h your_RPi_IP_address -p 1883 -t '#'

… / 59A98F494C / device_name MyTempeosystemDev / 59A98F494C / device_sn 59A98F494C / 59A98F494C / hwc_wake_up 3794 / 59A98F494C / hwc_wifi_enabled 3763/59A98F494C / hwc_message / 5998F491 5998

Trên đây là ví dụ đầu ra về những gì IOT Cricket gửi cho nhà môi giới của chúng tôi. Trong số các dữ liệu khác mà chúng ta có thể thấy có nhiệt độ:

/ 59A98F494C / nhiệt độ 26.0

Cái hay của MQTT là nó cho phép chúng tôi chỉ đăng ký các chủ đề mà chúng tôi quan tâm. Nếu chúng tôi chỉ muốn nhận nhiệt độ, chúng tôi có thể đăng ký chủ đề / 59A98F494C / temp bằng cách sử dụng lệnh sau:

$ mosquitto_sub -h your_RPi_IP_address -t '/ 59A98F494C / temp'

…26.126.527.227.6…

Bước 5: Tóm tắt

Tóm lược
Tóm lược

Trong dự án này, chúng tôi đã chỉ ra một phần cứng và phần mềm thiết yếu để bắt đầu xây dựng các hệ thống tự động hóa tại nhà, tiết kiệm năng lượng, tiết kiệm năng lượng dựa trên WiFi. MQTT là bản chất để xây dựng cho các hệ thống phức tạp hơn.

Hệ sinh thái phần mềm và dịch vụ có thể được tích hợp với MQTT là rất LỚN! Có rất nhiều hệ thống tuyệt vời như Home Assistant, Node RED, Grafana, v.v. để bạn có được trải nghiệm người dùng tuyệt vời cho hệ thống của riêng mình. Chúng tôi không chỉ có thể thực hiện một bản in nhiệt độ đơn giản mà còn có thể có các bảng điều khiển tuyệt vời để hiển thị dữ liệu và quản lý thiết bị của bạn.

Giờ đây, khi chúng tôi đã có sẵn cơ sở hạ tầng hệ thống cơ bản này, bầu trời là giới hạn của chúng tôi về những gì các thiết bị WiFi khác mà chúng tôi có thể xây dựng bằng cách sử dụng mô-đun IOT Cricket và thêm vào hệ thống tự động hóa gia đình của chúng tôi.

Cảm ơn vì đã đến đây. Chúng tôi hy vọng bạn thích hướng dẫn này!

Nhóm Things On Edge

Bước 6: Giới thiệu

Things On Edge là một công ty có trụ sở tại Cambridge, Vương quốc Anh. Chúng tôi thiết kế mô-đun Cricket Wi-Fi siêu tiết kiệm pin để cho phép bạn kết nối các thiết bị điện tử khác nhau với điện thoại thông minh hoặc các dịch vụ internet khác chỉ trong vài phút. Nó không yêu cầu bất kỳ lập trình và mã hóa nào. Nó cho phép bạn tích hợp các thiết bị của mình với các dịch vụ hệ sinh thái IOT khổng lồ qua MQTT và HTTP apis.

Đề xuất: