Mục lục:

Cửa thú cưng ngoài trời IoT: 6 bước (có hình ảnh)
Cửa thú cưng ngoài trời IoT: 6 bước (có hình ảnh)

Video: Cửa thú cưng ngoài trời IoT: 6 bước (có hình ảnh)

Video: Cửa thú cưng ngoài trời IoT: 6 bước (có hình ảnh)
Video: Trung Thu Trẻ Trâu #1 Parody | Đào Nguyễn Ánh x Hữu Hưng | Nhạc chế | #shorts 2024, Tháng bảy
Anonim
Cửa thú cưng ngoài trời IoT
Cửa thú cưng ngoài trời IoT
Cửa thú cưng ngoài trời IoT
Cửa thú cưng ngoài trời IoT
Cửa thú cưng ngoài trời IoT
Cửa thú cưng ngoài trời IoT
Cửa thú cưng ngoài trời IoT
Cửa thú cưng ngoài trời IoT

Tôi đã lấy cảm hứng từ tài liệu hướng dẫn này để tạo ra một cửa chuồng gà tự động. Tôi không chỉ muốn cửa chuồng gà hẹn giờ, mà tôi còn muốn kết nối cửa với internet để tôi có thể điều khiển nó bằng điện thoại hoặc máy tính của mình. Cánh cửa này được xây dựng cho chuồng gà của tôi, tuy nhiên, nó có thể dễ dàng áp dụng cho các kiểu chuồng khác dành cho nhiều loại vật nuôi. Bạn cũng có thể sử dụng các loại động cơ 12V khác nhau bên cạnh động cơ ăng ten trên ô tô cũ mà tôi đã sử dụng.

Sau khi thiết lập và kết nối Adafruit IO và IFTTT với ESP8266 của tôi, cửa chuồng gà của tôi có thể được kiểm soát trực tuyến. Cửa có thể mở hoặc đóng:

1) Vào những thời điểm chính xác mà tôi nhập trên adafruit.io

2) Bằng cách nhấn một nút trên điện thoại của tôi

3) Bằng cách gửi tin nhắn văn bản đến một số cụ thể

4) Bằng cách nhấp vào một nút trên adafruit.io

5) Bằng cách nhấn một nút vật lý

Ngoài những tính năng đó, cửa chuồng gà có thể gửi thông báo đẩy đến điện thoại của tôi thông qua ứng dụng IFTTT về bất kỳ sự cố nào xảy ra với cửa như cửa không mở hoặc đóng được.

Vì chuồng gà của tôi nằm bên ngoài cách bộ định tuyến WiFi của tôi khoảng 500 ft, tôi đã sử dụng bộ phát và bộ thu RFM69HCW 433MHz được ghép nối với ESP8266 để thực hiện dự án này. Có một hộp phát trong nhà màu đen với phần cứng được kết nối với internet và một hộp thu ngoài trời màu xám điều khiển động cơ.

Tài liệu hướng dẫn này sẽ hướng dẫn bạn quá trình tạo phần cứng cần thiết để điều khiển động cơ 12V mở hoặc đóng cửa chuồng gà của tôi.

Tôi đã sử dụng các phần sau:

Adafruit 32u4 với 433MHz RFM69HCW - $ 25

IC mở rộng cổng vào / ra Adafruit MCP23017 I2C 16 - $ 2,95

Adafruit Feather HUZZAH với ESP8266 WiFi - $ 16,95

Đài Adafruit FeatherWing 433MHz RFM69HCW - $ 10

Đầu nối Adafruit SMA cho PCB dày 1,6 mm - $ 2,50

Đầu nối Antenna Adafruit uFL SMA - $ 0,75

Nút nhấn Adafruit RGB - $ 10,95

Nguồn điện 12V - $ 7

Nguồn điện 5V USB - $ 7

Cáp Micro USB - $ 5

Bảng chuyển tiếp 4 kênh (có thể sử dụng 2 kênh) - $ 7

Bộ chuyển đổi DC-DC Buck (chỉ được sử dụng một nhưng đi kèm dưới dạng gói 5 cái) - $ 20

Reed Switch (cảm biến công tắc cửa từ) - $ 9

Ăng ten đa hướng 2x 433MHz - $ 6

Bộ chuyển đổi cáp uFL sang SMA (chỉ được sử dụng một nhưng đi kèm như gói 2) - $ 5

Hộp dự án ABS ngoài trời không thấm nước - $ 11

Hộp dự án ABS màu đen - $ 10

Màn hình LCD ký tự màu xanh lam 20x4 - $ 10

Động cơ ăng ten ô tô 12V - ~ $ 25 trên ebay

Dây và điện trở

Bước 1: Bộ thu ngoài trời

Bộ thu ngoài trời
Bộ thu ngoài trời
Bộ thu ngoài trời
Bộ thu ngoài trời

Bộ thu ngoài trời bao gồm một Adafruit 32u4 với 433MHz RFM69HCW được kết nối với một vài rơ le để bật hoặc tắt nguồn cho động cơ 12V. Các mô-đun này cũng như bộ chuyển đổi DC-DC 12V sang 5V nằm bên trong hộp dự án màu xám không thấm nước. Cuối cùng, có một cảm biến công tắc cửa được kết nối với một trong các chân của bộ vi điều khiển Arduino 32u4 để cảm nhận xem cửa có mở hoặc đóng đúng cách khi cần hay không.

Cứ sau 15 giây, máy phát trong nhà sẽ gửi "Mở" hoặc "Đóng". Dựa trên lệnh đã nhận, Arduino 32u4 sẽ bật hoặc tắt rơ le. Đối với động cơ mà tôi chọn, là động cơ ăng-ten ô tô cũ, tôi phải bật hoặc tắt hai rơ le vì cách đấu dây của động cơ. Về cơ bản có một rơ le để bật nguồn và sau đó là một rơ le khác điều khiển động cơ kéo dài hay rút lại.

Khi nhận được tín hiệu đóng hoặc mở, bộ thu ngoài trời sẽ phản hồi bằng "sensorOpen" hoặc "sensorClosed" để cho biết trạng thái của cảm biến công tắc cửa. Lý tưởng nhất, lệnh "mở" sẽ trả về phản hồi "sensorOpen", tuy nhiên, nếu cửa bị kẹt hoặc động cơ bị kẹt, các lệnh này sẽ không khớp. Khi chúng không khớp, thiết bị phát trong nhà sẽ hiển thị thông tin đó và thông báo đẩy sẽ được gửi đến điện thoại của bạn.

Bước 2: Kết nối phần cứng bộ thu ngoài trời

Kết nối phần cứng bộ thu ngoài trời
Kết nối phần cứng bộ thu ngoài trời
Kết nối phần cứng bộ thu ngoài trời
Kết nối phần cứng bộ thu ngoài trời
Kết nối phần cứng bộ thu ngoài trời
Kết nối phần cứng bộ thu ngoài trời

Phần cứng của đầu thu ngoài trời không quá khó để đấu dây. Tôi đã bao gồm một sơ đồ phức tạp bên dưới để có thể dễ dàng xem các chân mà tôi đã sử dụng.

Như tôi đã trình bày ở trên, động cơ tôi sử dụng yêu cầu hai rơ le. Tôi đã bao gồm một hình ảnh của sơ đồ chân. Lần thứ hai bạn kết nối 12V với dây màu đỏ, động cơ sẽ rút lại nếu nó kéo dài. Nếu bạn kết nối 12V với dây màu đỏ và dây màu xanh lá cây cùng một lúc, động cơ sẽ kéo dài.

Công tắc sậy mà tôi đã liên kết ở trên phải được nối dây như một công tắc thường đóng. Sự khác biệt giữa thường mở và thường đóng được giải thích trong hình tôi đính kèm ở trên. Sử dụng phần mềm, có một điện trở pullup bên trong được gắn vào chân đầu vào trên 32u4, vì vậy tất cả những gì bạn cần làm là kết nối công tắc cửa với chân đầu vào và cả với đất.

Bạn sẽ phải gắn một ăng-ten vào Adafruit 32u4. Vui lòng xem hướng dẫn được giải thích rõ ràng của Adafruit về bước này. Tôi đã chọn sử dụng một ăng-ten bên ngoài thay vì một đoạn dây để có được phạm vi tốt hơn.

Bước 3: Máy phát trong nhà

Máy phát trong nhà
Máy phát trong nhà
Máy phát trong nhà
Máy phát trong nhà
Máy phát trong nhà
Máy phát trong nhà

Bộ phát trong nhà bao gồm một Adafruit FeatherWing 433MHz RFM69HCW xếp chồng lên trên một Adafruit Feather HUZZAH với ESP8266 WiFi. Các mô-đun này được kết nối với màn hình ký tự 20x4 và nút màu bạc RGB bên trong hộp dự án màu đen.

Màn hình có đồng hồ được đồng bộ hóa NTC, cường độ RSSI tính bằng dB (đo cường độ của tín hiệu radio), thời gian cửa chuồng gà mở, thời điểm cửa chuồng gà đóng và trạng thái hiện tại của cửa. Nút màu đỏ khi cửa đóng và màu xanh lá cây khi cửa mở.

Nếu bộ thu ngoài trời bị mất nguồn hoặc nếu không thể gửi tín hiệu 433MHz vì bất kỳ lý do gì, thì màn hình và nút RGB sẽ chuyển sang chế độ lỗi đầu tiên trong số hai chế độ có thể xảy ra. Ở chế độ lỗi đầu tiên, màn hình sẽ thông báo "LỖI! Hãy thử khởi động lại bộ thu ngoài trời". và nút sẽ không có màu. Nếu cảm biến công tắc cửa phát hiện cửa không đóng hoặc mở đúng cách, màn hình và nút RGB sẽ chuyển sang chế độ thứ hai trong hai chế độ lỗi. Ở chế độ lỗi thứ hai, màn hình sẽ thông báo "LỖI! Sự cố cảm biến cửa hoặc công tắc." và nút sẽ không có màu. Khi sự cố tự giải quyết, màn hình và nút RGB sẽ hoạt động trở lại bình thường. Bạn có thể nhận thông báo đẩy đến điện thoại của mình nếu một trong hai chế độ lỗi này xảy ra (Tôi sẽ xem xét thiết lập đó ở bước sau).

Bước 4: Kết nối phần cứng máy phát trong nhà

Kết nối phần cứng máy phát trong nhà
Kết nối phần cứng máy phát trong nhà
Kết nối phần cứng máy phát trong nhà
Kết nối phần cứng máy phát trong nhà

Sau khi xếp Adafruit Radio FeatherWing 433MHz RFM69HCW lên trên Adafruit Feather HUZZAH với ESP8266 WiFi, chỉ còn lại 2 chân không được lấy, các chân I2C SDA và SCL. Đây là lý do tại sao tôi sử dụng mạch tích hợp (IC) MCP23017. Nó là một vi mạch thực sự tuyệt vời kết nối tới 16 chân đầu vào / đầu ra bổ sung với bất kỳ bộ vi điều khiển nào qua I2C. Thêm vào đó, có một thư viện viết sẵn tên là Adafruit-RGB-LCD-Shield sử dụng vi mạch này với màn hình ký tự được viết về mặt kỹ thuật cho sản phẩm Adafruit này, tuy nhiên, nó hoạt động hoàn hảo cho dự án này.

Ý tưởng sử dụng MCP23017 với màn hình ký tự xuất phát từ tài liệu hướng dẫn được viết rất tốt này. Làm ơn hãy kiểm tra nó!

Tôi đã lấy hướng dẫn đó và thay vì kết nối nhiều nút và màn hình RGB với IC, tôi chỉ kết nối một nút có đèn LED RGB bên trong và màn hình đơn sắc với IC. Điều này cho phép tôi xác định mã PIN 1 của IC (thường được sử dụng cho đèn nền màu xanh lam của màn hình RGB) làm đèn nền cho màn hình đơn sắc của tôi, mã PIN 28 (thường được sử dụng cho đèn nền màu xanh lá cây của màn hình RGB) làm đèn LED màu đỏ bên trong và mã PIN 27 (thường được sử dụng cho đèn nền màu đỏ của màn hình RGB) làm đèn LED màu xanh lục bên trong nút. Mã PIN 24 được kết nối với một mặt của nút và mặt kia được kết nối với đất. Bạn có thể thấy sơ đồ chân của nút trong hình đính kèm ở trên (tôi đã để cực âm màu xanh dương bị ngắt kết nối).

Bên cạnh việc sử dụng tài liệu hướng dẫn mà tôi đã liên kết để giúp kết nối màn hình, tôi đã bao gồm một sơ đồ hoạt động sẽ giúp bạn kết nối mọi thứ.

Bạn sẽ phải cắt ngắn ba chân trên đỉnh của FeatherWing 433MHz RFM69HCW như được giải thích trong hướng dẫn Adafruit này. Bạn cũng sẽ phải gắn ăng-ten vào FeatherWing 433MHz RFM69HCW. Vui lòng xem hướng dẫn được giải thích rõ ràng của Adafruit về bước này. Tôi đã chọn sử dụng một ăng-ten bên ngoài với đầu nối SMA gắn bên cạnh thay vì một đoạn dây để có được phạm vi tốt hơn.

Bước 5: Kết nối với Adafruit. IO và IFTTT

Kết nối với Adafruit. IO và IFTTT
Kết nối với Adafruit. IO và IFTTT
Kết nối với Adafruit. IO và IFTTT
Kết nối với Adafruit. IO và IFTTT

Adafruit IO:

Vui lòng làm theo hướng dẫn trong hướng dẫn Adafruit này để đăng ký Adafruit. IO nếu bạn chưa có tài khoản. Bạn cũng nên đọc về nguồn cấp dữ liệu và trang tổng quan là gì.

Nói một cách dễ hiểu, trang tổng quan giống như giao diện người dùng đồ họa trong khi nguồn cấp dữ liệu là những gì bạn gửi dữ liệu đến để bạn có thể lưu trữ trên internet. Bạn sẽ cần tạo 1 Trang tổng quan và 4 Nguồn cấp dữ liệu. Tôi đã đặt tên cho tôi trước khi tôi biết cách viết đúng chính tả chuồng gà, vì vậy xin vui lòng bỏ qua lỗi chính tả sai. Nếu bạn không muốn đổi tên tên nguồn cấp dữ liệu trong mã arduino, chỉ cần sử dụng cách đặt tên giống như tôi đã làm.

Trước tiên, hãy tạo bốn nguồn cấp dữ liệu:

1) "Cuộc đảo chính gà" Đây là cho công tắc Mở / Đóng

2) "Hẹn giờ phiếu giảm giá gà" Đây là bộ hẹn giờ mở

3) "Bộ hẹn giờ đảo giá gà 2" Đây là bộ hẹn giờ đóng

4) "Thông báo lỗi Chicken Coup" Đây là thông báo lỗi

Tạo một bảng điều khiển tiếp theo có tên là Chicken Coup và thêm 4 khối bằng cách sử dụng nút + màu xanh lam. Vui lòng xem hình trên để biết các loại khối bạn nên đặt cũng như tên của các khối. Đảm bảo đặt tên chính xác cho các trạng thái chuyển đổi là "Mở" và "Đóng"

IFTTT:

Phần IFTTT của dự án này bổ sung khả năng nhấn một nút trên điện thoại của bạn và gửi tin nhắn văn bản để mở hoặc đóng cửa chuồng gà. Nó cũng cho phép ứng dụng IFTTT gửi cho bạn thông báo đẩy nếu có bất kỳ nội dung nào được xuất bản lên nguồn cấp dữ liệu Thông báo lỗi Chicken Coup. Nếu bạn không muốn những khả năng này, bạn có thể bỏ qua phần này.

Đầu tiên, hãy thiết lập tài khoản IFTTT nếu bạn chưa có. Nếu bạn muốn sử dụng các applet tạo sẵn mà tôi đã tạo, chỉ cần điều hướng đến tài khoản của tôi và bật các applet mà bạn muốn. Nếu không, bạn sẽ phải tạo của riêng mình và đăng ký hoặc xuất bản lên nguồn cấp dữ liệu adafruit mà bạn đã tạo ở trên.

Bước 6: Tải lên mã và chỉnh sửa SSID và mật khẩu WiFi

Bạn sẽ cần phải xem qua trang hướng dẫn Adafruit này để có thể tải mã lên bộ phát trong nhà.

Bạn sẽ cần phải xem qua trang hướng dẫn Adafruit này để có thể tải mã lên bộ thu ngoài trời.

Bạn sẽ cần cài đặt thư viện RFM69, thư viện Adafruit_RGBLCDShield, thư viện đồng hồ NTC được gọi là simpleDSTadjust và thư viện mã. Bạn có thể tìm thấy hướng dẫn về cách thực hiện điều đó tại đây.

Mở Arduino IDE và tải mã "Outdoor_Receiver.ino" lên Arduino 32u4 ngoài trời qua cáp USB.

Sau đó, mở "Indoor_Transmitter.ino", mở tab config.h và nhập tên WiFi (SSID) và mật khẩu của bạn bên trong dấu ngoặc kép. Sau đó, lấy tên người dùng Adafruit. IO và Khóa IO của bạn bằng cách làm theo trang hướng dẫn này và nhập tên người dùng đó vào tab config.h.

Nếu bạn đã thay đổi tên của nguồn cấp dữ liệu IO Adafruit, bạn sẽ cần phải chỉnh sửa mã trong tab chính Indoor_Transmitter. Chỉnh sửa phần sau:

AdafruitIO_Feed * toggleSwitch = io.feed ("Cuộc đảo chính gà");

AdafruitIO_Feed * timer = io.feed ("Hẹn giờ giảm giá gà");

AdafruitIO_Feed * timer2 = io.feed ("Bộ hẹn giờ đảo giá gà 2");

AdafruitIO_Feed * error = io.feed ("Thông báo Lỗi Phiếu giảm giá Gà");

Đó là tất cả những gì bạn phải làm! Nếu bạn muốn hiểu thêm về cách hoạt động của hai bản phác thảo, tôi đã nhận xét đoạn mã. Hãy cho tôi biết nếu bạn có bất cứ thắc mắc nào. Chúc may mắn!

Đề xuất: