Mục lục:

Cảm biến chuyển động và nhiệt độ không dây IoT: 11 bước (có hình ảnh)
Cảm biến chuyển động và nhiệt độ không dây IoT: 11 bước (có hình ảnh)

Video: Cảm biến chuyển động và nhiệt độ không dây IoT: 11 bước (có hình ảnh)

Video: Cảm biến chuyển động và nhiệt độ không dây IoT: 11 bước (có hình ảnh)
Video: Giới thiệu về IoT siêu dễ hiểu. Học và làm việc trong ngành IoT ra sao? 2024, Tháng mười một
Anonim
Cảm biến chuyển động và nhiệt độ không dây IoT
Cảm biến chuyển động và nhiệt độ không dây IoT

Tôi được truyền cảm hứng từ nhiều dự án IoT có trong nội dung hướng dẫn, vì vậy trong quá trình học, tôi đang cố gắng kết hợp một số ứng dụng hữu ích có liên quan. Là phần mở rộng cho các Tài liệu hướng dẫn trước đây của tôi liên quan đến cảm biến Nhiệt độ IoT, giờ đây tôi đã thêm nhiều khả năng hơn vào hệ thống con. Các chức năng được bổ sung là:

- Kết nối NTP để xem thời gian

- Đèn LED có thể được điều khiển từ xa

- Cảm biến PIR để phát hiện chuyển động

- Raspberry PI đã kết nối chạy bộ homekit cho phép kết nối với iPhone "Home"

Bước 1: Khái niệm, khả năng kết nối và các thành phần

Khái niệm, khả năng kết nối và các thành phần
Khái niệm, khả năng kết nối và các thành phần

Khái niệm như được hiển thị ở trên là cho phép theo dõi nhiệt độ từ xa với khả năng bổ sung để phát hiện chuyển động nếu có người ở nhà và cho phép thông báo qua đèn LED. Thiết bị có thể được truy cập cục bộ trong mạng LAN hoặc từ xa thông qua máy chủ web. Bạn cũng có thể kết nối Raspberry pie (tùy chọn) với phụ kiện Homekit được cài đặt để cho phép kết nối với Ứng dụng "Home" trên iPhone.

Giống như phiên bản trước, các thành phần sau là bắt buộc trong dự án này, xin lưu ý rằng liên kết bên dưới là liên kết liên kết, vì vậy nếu bạn không muốn đóng góp, chỉ cần truy cập trực tiếp.

- Bảng phát triển NodeMcu Lua ESP8266. Tôi lấy của tôi từ banggood.

- Cảm biến nhiệt độ LM35

- Cảm biến PIR

- DẪN ĐẾN

- Bảng nguyên mẫu

- Arduino IDE

- Máy chủ web đang hoạt động với kịch bản máy chủ php được kích hoạt

- Raspberry pi (Tùy chọn)

Bước 2: Nhận Arduino IDE hoạt động

Nhận Arduino IDE để hoạt động
Nhận Arduino IDE để hoạt động

Để biết chi tiết về bước này, vui lòng xem các hướng dẫn trước đây của tôi Bước 2. về Cảm biến nhiệt độ IoT với ESP8266.

Bước 3: Kết nối cảm biến nhiệt độ, đèn LED và PIR

Kết nối cảm biến nhiệt độ, đèn LED và PIR
Kết nối cảm biến nhiệt độ, đèn LED và PIR
Kết nối cảm biến nhiệt độ, đèn LED và PIR
Kết nối cảm biến nhiệt độ, đèn LED và PIR
Kết nối cảm biến nhiệt độ, đèn LED và PIR
Kết nối cảm biến nhiệt độ, đèn LED và PIR

Cảm biến nhiệt độ LM35 có 3 chân, chân đầu tiên là VCC, bạn có thể kết nối cái này với 3,3V (đầu ra của bo mạch ESP8266 là 3,3V). Chân giữa là Vout (nơi đọc nhiệt độ, bạn có thể kết nối đầu vào này với đầu vào tương tự của chân ESP8266 AD0, chân này nằm ở phía trên bên phải của bảng như trong hình. Và chân phải là kết nối với mặt đất.

Cảm biến PIR cũng bao gồm 3 chân, bạn có thể thấy một dấu nhỏ +, 0, - trên PCB bên cạnh chân. Vì vậy, kết nối "+" với 3.3V, "-" với mặt đất và chân giữa "0" với chân D6 của ESP8266.

LED chỉ có 2 chân, "+" (Anode), chân dài hơn kết nối chân này với chân D5 của ESP8266 và "-" (Cathode) chân ngắn hơn nên được kết nối với đất (GND).

Bước 4: Thiết lập Cloud Webserver

Có một giả định nhất định cho bước này:

Bạn đã có một máy chủ web đang hoạt động, được lưu trữ trong một miền thích hợp. Và bạn đã quen với việc chuyển các tập tin vào máy chủ web của mình qua FTP bằng Filezilla hoặc một số chương trình FTP khác.

Tải tệp zip đính kèm lên thư mục gốc của trang web của bạn. Giả sử đối với bài tập này, trang web của bạn là "https://arduinotestbed.com"

Giả sử rằng tất cả tệp nằm trong thư mục gốc của máy chủ web, nếu bạn đã lưu trữ nó trong một thư mục khác, vui lòng điều chỉnh vị trí tệp cho phù hợp trong cả tệp ArduinoData3.php và bản phác thảo Arduino. Nếu bạn không chắc chắn, vui lòng cho tôi biết và tôi sẽ cố gắng hết sức có thể để giúp đỡ.

Bước 5: Thiết lập cơ sở dữ liệu để lưu giữ dữ liệu nhiệt độ

Thiết lập cơ sở dữ liệu để lưu giữ dữ liệu nhiệt độ
Thiết lập cơ sở dữ liệu để lưu giữ dữ liệu nhiệt độ
Thiết lập cơ sở dữ liệu để lưu giữ dữ liệu nhiệt độ
Thiết lập cơ sở dữ liệu để lưu giữ dữ liệu nhiệt độ
Thiết lập cơ sở dữ liệu để lưu giữ dữ liệu nhiệt độ
Thiết lập cơ sở dữ liệu để lưu giữ dữ liệu nhiệt độ

chúng tôi đang sử dụng cơ sở dữ liệu sqllite cho bài tập này. Sqllite là cơ sở dữ liệu dựa trên tệp nhẹ không yêu cầu máy chủ. Cơ sở dữ liệu được đặt cục bộ trong máy chủ web của bạn. Nếu bạn lo lắng về bảo mật thì bạn nên sửa đổi mã để sử dụng một máy chủ cơ sở dữ liệu thích hợp như mysql hoặc MSSQL.

Trước khi bắt đầu, bạn cần thay đổi mật khẩu cơ sở dữ liệu nằm trong tệp phpliteadmin.php. Vì vậy, hãy mở tệp này trong máy chủ web của bạn và chỉnh sửa thông tin mật khẩu ở dòng 91 thành mật khẩu bạn muốn.

Sau đó, trỏ đến phpliteadmin.php trong máy chủ web của bạn. Sử dụng ví dụ của chúng tôi trước khi bạn nên trỏ đến

Bởi vì không có cơ sở dữ liệu trong máy chủ, bạn sẽ được hiển thị với màn hình để tạo cơ sở dữ liệu. Nhập "nhiệt độ.db" vào hộp nhập cơ sở dữ liệu mới và nhấp vào nút "Tạo". Cơ sở dữ liệu sau đó sẽ được tạo thành công. Tại thời điểm này, cơ sở dữ liệu vẫn còn trống vì vậy bạn sẽ cần script sql để tạo cấu trúc bảng cơ sở dữ liệu để lưu trữ dữ liệu.

Bước 6: Tạo bảng "nhiệt độ"

Tạo
Tạo
Tạo
Tạo

Để tạo bảng, hãy nhấp vào tab "SQL" và dán vào truy vấn sql sau.

BẮT ĐẦU GIAO DỊCH;

---- - Cấu trúc bảng cho nhiệt độ ---- TẠO BẢNG 'nhiệt độ' ('ID' INTEGER PRIMARY KEY NOT NULL, độ ẩm INT NOT NULL, nhiệt độ REAL, dấu thời gian DATETIME DEFAULT CURRENT_TIMESTAMP, 'máy sưởi' BOOLEAN, 'mục tiêu' THỰC); LÀM;

Sau đó bấm vào nút "Go" ở dưới cùng. Bảng sẽ được tạo thành công.

Nếu bạn làm mới trang, bây giờ bạn sẽ thấy bảng "nhiệt độ" trong cơ sở dữ liệu nhiệt độ.db ở phía bên trái. Nếu bạn bấm vào bảng nhiệt độ nếu vẫn không có dữ liệu.

Bây giờ chúng tôi đã tạo cơ sở dữ liệu, bạn có thể trỏ đến url sau

arduinotestbed.com/ArduinoData3.php

Bạn sẽ thấy mặt số nhiệt độ hiển thị dữ liệu giả, cảm biến chuyển động và bảng điều khiển để bật đèn LED. Phần dưới cùng của biểu đồ sẽ vẫn trống vì chưa có dữ liệu.

Bước 7: Tải bản phác thảo cảm biến nhiệt độ lên ESP8266 của bạn

Tải bản phác thảo cảm biến nhiệt độ lên ESP8266 của bạn
Tải bản phác thảo cảm biến nhiệt độ lên ESP8266 của bạn
Tải bản phác thảo cảm biến nhiệt độ lên ESP8266 của bạn
Tải bản phác thảo cảm biến nhiệt độ lên ESP8266 của bạn
Tải bản phác thảo cảm biến nhiệt độ lên ESP8266 của bạn
Tải bản phác thảo cảm biến nhiệt độ lên ESP8266 của bạn

Bây giờ sao chép tất cả tệp đính kèm và mở "ESP8266TempPIRSensor.ino", giao diện Arduino sẽ tạo thư mục cho bạn. Di chuyển phần còn lại của các tệp vào thư mục mới được tạo bởi giao diện Arduino.

Sửa đổi máy chủ web được chỉ định và vị trí của tệp data_store3.php nếu cần. Sau đó tải bản phác thảo lên ESP8266.

Nếu mọi việc suôn sẻ, nó sẽ được tải lên thành công và lần đầu tiên ESP sẽ chuyển sang chế độ AP. Bạn có thể sử dụng máy tính xách tay hoặc điện thoại di động của mình để kết nối với nó. Bạn sẽ có thể tìm thấy AP bằng tên "ESP-TEMP". - Cố gắng kết nối với ESP-TEMP bằng máy tính xách tay của điện thoại di động - Tìm hiểu địa chỉ IP mà bạn đang được chỉ định, bằng cách thực hiện lệnh "ipconfig" trong windows hoặc lệnh "ifconfig" trong linux hoặc mac. - Nếu bạn đang sử dụng iphone, hãy nhấp vào nút i bên cạnh ESP-TEMP mà bạn đang kết nối - Mở trình duyệt của bạn và trỏ đến ESP-TEMP, nếu bạn được gán 192.168.4.10 làm ip của bạn, thì ESP-TEMP đang có ip là 192.168.4.1, vì vậy bạn chỉ có thể truy cập https://192.168.4.1 và bạn sẽ thấy trang cài đặt nơi bạn có thể nhập ssid bộ định tuyến wifi và khóa psk. khi bạn đã nhập cả hai và đánh dấu vào hộp kiểm "Cập nhật cấu hình Wi-Fi", hãy nhấp vào "cập nhật" để cập nhật cài đặt cho ESP8266 của bạn.

Nếu bạn muốn bật gỡ lỗi cho Serial Monitor, bạn sẽ cần bỏ ghi chú

#define GỢI Ý

dòng trong đồng hồ. h và nhận xét

// # undef DEBUG

hàng. sau đó nhấp vào Tools-> Serial Monitor. Cửa sổ giám sát nối tiếp sẽ hiển thị cho bạn tiến trình kết nối wifi và hiển thị địa chỉ IP cục bộ của ESP8266. Đèn LED màu xanh lam bên trong sẽ nhấp nháy một lần khi quá trình đọc nhiệt độ diễn ra. Nó cũng sẽ bật khi có chuyển động được phát hiện.

Bước 8: Truy cập cảm biến nhiệt độ và chuyển động của bạn

Truy cập cảm biến nhiệt độ và chuyển động của bạn
Truy cập cảm biến nhiệt độ và chuyển động của bạn
Truy cập cảm biến nhiệt độ và chuyển động của bạn
Truy cập cảm biến nhiệt độ và chuyển động của bạn

Bây giờ bạn có thể trỏ lại một lần nữa đến máy chủ web cục bộ của ESP8266. Và điều này sẽ hiển thị thời gian, nhiệt độ và cảm biến chuyển động.

Bây giờ bạn cũng có thể trỏ đến máy chủ web bên ngoài của mình, trong ví dụ này là

Bạn có thể trượt nút bên dưới bảng điều khiển để bật tắt đèn LED. Tôi sử dụng tính năng này để thông báo cho các con của mình khi tôi trên đường đi làm về.

Cảm biến chuyển động được cập nhật sau mỗi giây hoặc lâu hơn, vì vậy bạn sẽ phải làm mới trang thường xuyên hơn để xem liệu có phát hiện chuyển động hay không. Tại thời điểm này, tự động làm mới được đặt thành 60 giây. Nhiệt độ sẽ đọc vài phút một lần, nhưng bạn cũng có thể điều chỉnh nhiệt độ này theo thời gian phù hợp với mình.

Xin chúc mừng nếu bạn đã thành công đến mức này !!, hãy tự vỗ về phía sau và tận hưởng tác phẩm của bạn. Bước tiếp theo là tùy chọn, chỉ khi bạn muốn có thể điều khiển đèn LED và theo dõi nhiệt độ cũng như cảm biến chuyển động từ các thiết bị của Apple.

Bước 9: Cài đặt HomeBridge cho HomeKit trong Raspberry Pi (Tùy chọn)

Cài đặt HomeBridge cho HomeKit trong Raspberry Pi (Tùy chọn)
Cài đặt HomeBridge cho HomeKit trong Raspberry Pi (Tùy chọn)

Tôi được truyền cảm hứng từ các hướng dẫn từ GalenW1, cho phép tôi tìm hiểu rất nhiều về HomeBridge.

Để cài đặt HomeBridge cho HomeKit trên Raspberry Pi, bạn có thể sử dụng hướng dẫn sau

github.com/nfarina/homebridge

HomeBridge cho phép bạn kết nối ứng dụng Home trong Iphone với các cảm biến mà bạn vừa xây dựng ở các bước trước.

Một khi bạn cài đặt HomeBridge, bạn cần cài đặt một số plugin:

- Cảm biến nhiệt độ

- Cảm biến chuyển động

- Chuyển

sudo npm install -g homebridge-http-nhiệt độ

sudo npm install -g homebridge-MotionSensor

sudo npm install -g homebridge-http-simple-switch

Khi plugin đang được cài đặt, bạn sẽ cần phải định cấu hình tệp config.json nằm bên dưới

sudo vi /home/pi/.homebridge/config.json

bạn có thể điều chỉnh nội dung của tệp config.json như bên dưới, vui lòng đảm bảo rằng url trỏ đến đúng vị trí.

Bước 10: Kết nối Homebridge với Iphone của bạn

Kết nối Homebridge với Iphone của bạn
Kết nối Homebridge với Iphone của bạn
Kết nối Homebridge với Iphone của bạn
Kết nối Homebridge với Iphone của bạn
Kết nối Homebridge với Iphone của bạn
Kết nối Homebridge với Iphone của bạn

Bây giờ tất cả các phụ kiện đã được định cấu hình, bạn có thể chạy cầu chủ bằng lệnh sau

homebridge

Bạn sẽ thấy màn hình như trên. Bạn có thể làm theo bước sau để thêm Homebridge vào bộ trang chủ của mình.

- Bây giờ khởi động ứng dụng "Trang chủ" trên Iphone của bạn

- Nhấp vào nút "Thêm phụ kiện"

- bạn sẽ thấy màn hình để quét mã, bạn có thể sử dụng camera điện thoại để quét mã từ màn hình Raspberry Pi hoặc thêm mã theo cách thủ công.

Xin lưu ý rằng cả Iphone và Raspberry Pi đều cần phải sử dụng cùng một bộ định tuyến không dây để hoạt động.

- Sau khi kết nối, bạn sẽ được nhắc với màn hình cho biết phụ kiện của bạn chưa được chứng nhận, hãy nhấp vào nút "Vẫn thêm" để tiếp tục

- Sau đó, bạn sẽ có tùy chọn cấu hình từng phụ kiện, trong trường hợp này, chúng tôi có công tắc đèn, cảm biến chuyển động và cảm biến nhiệt độ.

- Màn hình cuối cùng sẽ hiển thị cho bạn tất cả các phụ kiện được kết nối.

Sau khi nó được kết nối, bạn có thể sử dụng Siri để kiểm tra cảm biến chuyển động, nhiệt độ và bật tắt đèn.

Bước 11: Giúp Homebridge của bạn chạy trong nền

Giúp Homebridge của bạn chạy trong nền
Giúp Homebridge của bạn chạy trong nền
Giúp Homebridge của bạn chạy trong nền
Giúp Homebridge của bạn chạy trong nền
Giúp Homebridge của bạn chạy trong nền
Giúp Homebridge của bạn chạy trong nền

Xin chúc mừng!! bạn đã làm xong việc đó. Như một phần thưởng, bạn có thể chạy homebridge ở chế độ nền bằng cách sử dụng lệnh sau:

cầu nhà &

Giờ đây, bạn có thể giải trí với Siri và tận hưởng công việc khó khăn của mình.

Cảm ơn bạn đã theo dõi điều này cho đến khi kết thúc. Nếu bạn thích điều này, xin vui lòng để lại một số nhận xét hoặc bình chọn cho tôi.

Đề xuất: