Mục lục:

Mở cửa nhà để xe bằng Raspberry Pi: 5 bước (có hình ảnh)
Mở cửa nhà để xe bằng Raspberry Pi: 5 bước (có hình ảnh)

Video: Mở cửa nhà để xe bằng Raspberry Pi: 5 bước (có hình ảnh)

Video: Mở cửa nhà để xe bằng Raspberry Pi: 5 bước (có hình ảnh)
Video: Phát hiện tài xế ngủ gật trên xe hơi bằng Raspberry Pi - Mì Ai 2024, Tháng mười một
Anonim
Mở cửa nhà để xe bằng Raspberry Pi
Mở cửa nhà để xe bằng Raspberry Pi

Điều khiển động cơ ga ra từ điện thoại thông minh hoặc bất kỳ thiết bị nào có thể duyệt trang web (với AJAX!). Dự án được bắt đầu vì tôi chỉ có một chiếc điều khiển từ xa cho nhà để xe của mình. Vui vẻ như thế nào khi mua một cái thứ hai? Không đủ. Mục tiêu của tôi là có thể kiểm soát và giám sát cửa nhà để xe của tôi từ điện thoại thông minh với một trang duy nhất. Tôi đã không đặt bất kỳ bảo mật ưa thích nào xung quanh nó vì RPi không bị lộ ra bên ngoài mạng LAN của tôi. Qua đó tôi dựa vào VPN để truy cập trang web. Sử dụng điện thoại thông minh Android, rất dễ dàng để vừa thiết lập VPN vừa thêm trang web vào màn hình chính của tôi. Tất cả những gì tôi cần là phần mềm cho nó.

Nếu bạn muốn hỗ trợ tôi viết các tài liệu hướng dẫn khác, vui lòng mua phần cứng từ các liên kết được Amazon tài trợ.

Ngoài ra, hướng dẫn này hiện cũng có sẵn trên trang cá nhân của tôi:

Bước 1: Một số thông tin cơ bản

Những gì tôi tìm thấy trực tuyến

Là một lập trình viên, tôi thích sử dụng lại các hướng dẫn hoặc mã đã có "mức sản xuất". Trong trường hợp này, tôi không hài lòng với những gì tôi tìm thấy:

  • Công cụ mở cửa nhà để xe Raspberry Pi của bộ tứ. Nơi tôi bắt đầu, một nút đơn giản để chỉ huy chuyển tiếp. Không có nút đóng / mở, không có phản hồi. Dù sao cũng rất hữu ích khi hiểu khái niệm về RPi chuyên dụng để điều khiển động cơ từ rơ le. Hệ thống cáp tôi sử dụng bây giờ vẫn giống nhau cho phần lệnh.
  • Công cụ mở cửa nhà để xe Raspberry Pi với GaragePi của Chase Chou. Cùng một kiểu thiết lập nhưng sử dụng thêm một điều khiển từ xa không dây. Tôi không sẵn sàng giết chiếc điều khiển duy nhất của mình. Nó được chứng minh là dù sao cũng sử dụng cùng một kiểu thiết lập điện cho phần lệnh. Trong quá trình thực hiện, tôi đã tìm hiểu về WebIOPi để kiểm tra GPIO của mình qua một trang web. Đó là tôi cũng đã học về cách đặt phím tắt cho màn hình chính Android của mình. Sau cùng, tôi cũng bắt đầu nảy sinh ý tưởng dựa vào các dịch vụ, tôi muốn nó phải đáng tin cậy.
  • Tạo cửa nhà để xe của bạn qua email, Tweet hoặc SMS: Phần 1 của Richard L. Lynch. Điều này đã thêm ý tưởng sử dụng Cảm biến từ tính để kiểm soát trạng thái cửa. Tuy nhiên, tôi không sử dụng nhiều vì tôi không xây dựng một hệ thống báo động mà là một hệ thống chỉ huy / giám sát.
  • Cửa mở / Cam an ninh hoàn toàn không dây của DeckerEgo. Điều này khiến tôi nhận thức rõ hơn về việc phát trực tuyến bằng webcam để giám sát cửa. Tôi vẫn phải nỗ lực cho điều đó. Có lẽ tôi phải tái chế một trung tâm USB hoặc tìm nạp một webcam khác.
  • Điều khiển Raspberry Pi từ thiết bị di động hoặc trình duyệt web trên máy tính để bàn của Frédérick Blais. Đây bây giờ là cơ sở của tôi cho ngăn xếp phần mềm. Nó sử dụng Flask để chạy một trang web rất đơn giản cùng với AJAX. Điều này là cao cấp đối với tôi vì nó cung cấp các tùy chọn theo dõi và lệnh theo thời gian thực. Đọc bên dưới.

Giới thiệu về RPi của tôi

Khi tôi vẫn đang tìm hiểu về RPi và các thiết bị điện tử nói chung, tôi đã mua một số thứ cho Raspberry Pi mới mua của mình: một vài dây cáp, một bộ cobbler T, một số đèn led, một mô-đun một rơ le, một tám rơ le mô-đun, màn hình LCD, v.v. Tôi không phải là một thợ điện và điều này tỏ ra rất có tính hướng dẫn. Để mua thêm phần cứng, Amazon và Ebay là những người bạn tốt nhất của bạn.

Trạng thái hiện tại của dự án bao gồm phần cứng sau:

  • Raspberry Pi (FR / DE) chạy Raspbian Wheezy 2014-09-09 với các bản cập nhật mới nhất
  • Thẻ micro SD loại 10 8GB (FR / DE) hoặc 16GB (FR / DE) hoặc 32GB (FR / DE) để chứa hệ điều hành, tệp, v.v.
  • Hai công tắc nhà để xe bằng hợp kim kẽm (FR / DE) để phát hiện trạng thái đóng / mở
  • Một mô-đun rơle 3v (FR / DE) để gửi lệnh đến động cơ cửa (của tôi có đèn LED tích hợp để theo dõi trạng thái rơle, rất tiện dụng!)
  • Một bảng mạch không hàn (FR / DE) và 2 công tắc tạm thời (FR / DE) để mô phỏng cánh cửa trên bàn làm việc của tôi (hoặc mua bộ khởi động (FR / DE))
  • Một khóa wifi (FR / DE) để loại bỏ hệ thống cáp phụ khi nó sẽ được treo trên trần nhà để xe

Một hạn chế mà tôi vẫn gặp phải là không biết cửa đi được nửa đường, dừng lại hay vẫn chuyển động. Đây cũng là lý do tại sao sau này tôi muốn thêm một webcam cũ để phát trực tuyến từ bên trong nhà để xe. Có lẽ tôi sẽ thực sự thêm một số cảm biến để giám sát chính động cơ.

Bước 2: Ngăn xếp phần mềm

Ngăn xếp phần mềm
Ngăn xếp phần mềm

Những thứ chung chung

Phần mềm dựa trên mô-đun Python của Python, Flask và WiringPi GPIO. Như đã giải thích ở phần nền, tôi bắt đầu từ hướng dẫn điều khiển Raspberry Pi từ thiết bị di động hoặc trình duyệt web trên máy tính để bàn do Frédérick Blais xuất bản. Phần mềm hiện tại bao gồm:

  • Tệp mẫu HTML chứa một số mã và điều khiển jQuery Mobile
  • Mô-đun Python Pins để truy cập GPIO của Raspberry Pi
  • Một mô-đun Python go để chạy Flask và hỗ trợ các truy vấn AJAX

Những gì hiện có trong kho là phần mềm thô. Nó không có cách nào lạ mắt hoặc tràn ngập các tính năng. Đó chỉ là những gì tôi có thể đạt được từ những gì tôi đã học được.

Giao diện hiện tại

Hiện tại, trạng thái cho các cửa được đọc sau mỗi 0,5 giây. Hai công tắc được sử dụng cho cả trạng thái đóng / mở. Một rơ le được sử dụng để chỉ huy động cơ. Mã hiện tại vẫn xuất ra một số gỡ lỗi. Ảnh chụp màn hình dưới đây là từ Nexus 5.

Bước 3: Phần cứng - Alpha

Phần cứng - Alpha
Phần cứng - Alpha
Phần cứng - Alpha
Phần cứng - Alpha

Giường thử nghiệm

Giường thử nghiệm của tôi khá đơn giản, một RPi, một rơ le và hai công tắc. Để giữ chặt mọi thứ, một vài dây buộc zip (FR / DE) là tất cả những gì bạn cần. Dưới đây là một hình ảnh của nó. Cáp RJ45 LAN (FR / DE) dùng để gỡ lỗi trên máy tính để bàn và thiết bị bảo vệ WIFI để sử dụng trong ga ra.

Hệ thống trực tiếp

RPi chỉ được kết nối với động cơ cửa lúc này, các công tắc sẽ chạy theo. Tôi phải đợi một chút để lấy ống co nhiệt (FR / DE). Tôi cũng nên vững vàng hơn. Xin lỗi vì đã làm mờ.

Các dây cáp màu xanh lam, vàng và xanh lá cây ở bên trái dành cho các công tắc từ tính.

  • Màu xanh là GND
  • Màu vàng và xanh lá cây là chân 18 (trạng thái mở) và 27 (trạng thái đóng).

Bước 4: Phần cứng - Beta

Phần cứng - Beta
Phần cứng - Beta
Phần cứng - Beta
Phần cứng - Beta
Phần cứng - Beta
Phần cứng - Beta

Giường thử nghiệm

Đây bây giờ là một bìa cứng trực tiếp với dây buộc zip. Màn hình LCD và rơ le cũng được đóng gói. Màn hình LCD có kích thước 20x4 (20 ký tự cho hàng, 4 dòng) (FR / DE) trên I²C.

2 dòng đầu tiên hiển thị chào mừng và ngày / giờ. 2 dòng cuối chu kỳ giữa trạng thái chân và trạng thái mạng (eth0 / wan0 IP). Dòng trạng thái cửa là một GFX tốt để nói:

  • | | đang mở
  • | - | đang hoạt động
  • | đã đóng cửa

Sơ đồ Fritzing

Sơ đồ Fritzing với màn hình LCD 20x4 I2C, công tắc đóng / mở và rơ le. Sự bổ sung duy nhất là màn hình LCD I2C. Tôi thích điều đó cho 18x2 mà tôi có.

Hệ thống trực tiếp

Phiên bản beta HW hiện là "cấp độ sản xuất" vì nó vừa vặn trong một hộp ốc vít cũ. Tôi đã giữ một bộ phân cách để lưu trữ rơ le và cáp linh kiện trong khi RPi đứng ở cấp thấp hơn. Bạn có thể nhận thấy NAS Synology (FR / DE) ở phía bên phải, nó được sử dụng để cấp nguồn trực tiếp cho RPi. Vào ban đêm với modem, switch và NAS.

Chế độ xem đóng hộp vít, màn hình LCD hiển thị trạng thái của cửa và sơ đồ chân Mở / Đóng / Rơ le.

Vào ban đêm, nhìn từ trên xuống bên trong.

Bước 5: Mã nguồn và nguồn

Bạn có thể tìm thấy tất cả các nguồn tại kho lưu trữ GitHub này:

github.com/amayii0/GarageOpenerR1

Đề xuất: