2010-07-14 31 views
13

Tôi đang tìm cách điều khiển nguồn điện được cấp nguồn từ một công tắc rơle đơn giản được kết nối qua USB với máy tính.Điều khiển công tắc rơle đơn giản qua USB

Công tắc rơle không phải là thiết bị USB, nó chỉ là một công tắc đơn giản yêu cầu điện áp USB bật lên. Khi điện áp giảm xuống dưới ngưỡng, công tắc sẽ tắt đèn.

Vấn đề của tôi là tôi không thể kiểm soát đầu ra nguồn của cổng USB. Tôi rất vui khi sử dụng bất kỳ ngôn ngữ nào trên Windows hoặc Linux (nhưng tốt hơn là Java vì tôi đã quen với nó).

Trả lời

15

Thật không may, trong hầu hết các trường hợp, bạn không thể điều khiển nguồn cấp điện cho cổng USB. Nguồn cung cấp thường được truyền tải thông qua và không thể chuyển đổi được trong phần mềm. Bạn có thể send a reset to a USB device, nhưng điều đó sẽ không hoạt động trong trường hợp của bạn.

Có một số dự án về hướng dẫn tương tự như những gì bạn mô tả, nhưng tiếc là chúng dường như khá phức tạp hoặc yêu cầu các bộ phận đắt tiền.

EDIT: Có thực sự là một sản phẩm hiện trong các tin tức đó sẽ không muốn bạn muốn, nhưng nó không xuất hiện để được vận chuyển nào: http://www.pwrusb.com/

EDIT (một lần nữa): Rõ ràng you can do this with some usb hubs. This post sugggests the Linksys USB2HUB4 là một trong những công trình.

EDIT (và một lần nữa): Rõ ràng có một số câu hỏi tương tự, nhưng có dường như không được bất kỳ câu trả lời hữu ích hơn:

+0

p1 để chỉnh sửa rộng rãi và cập nhật cho chúng tôi. – Caelum

2

Đây là giải pháp hoàn chỉnh .

Nó sử dụng bảng Arduino, với kết nối USB, (và Uno chẳng hạn) để điều khiển rơle và kết hợp điều này với pfod (Giao thức cho hoạt động Discovery) www.pfod.com.au sẽ cho phép bạn điều khiển bảng/tiếp sức từ Arduino IDE SerialMonitor, hoặc một cửa sổ đầu cuối (TeraTerm) hoặc một chương trình Java. Giao thức thông báo bao gồm các lệnh trong {}, suy nghĩ đơn giản hóa html cho micros, và cung cấp nhiều màn hình, menu, thanh trượt, văn bản và đầu vào số, vv. Mã Arduino và một ví dụ về kiểm soát rơle từ TeraTerm cũng như Arduino IDE SerialMonitor.

Ngoài ra còn có một ứng dụng Android, pfodApp, sẽ kiểm soát mục đích chung thông qua bluetooth hoặc wifi/internet với bảo mật 128 bit. Các pfodApp hiện tất cả các công cụ Android, bạn chỉ cần mã một số chuỗi đơn giản trong mã Arduino của bạn để có được bất kỳ hệ thống menu bạn muốn. Xem www.pfod.com.au để biết nhiều ví dụ.

0

Tôi khuyên bạn nên đặt một đơn vị Raspberry Pi riêng biệt với tính năng đánh thức-trên-lan được kích hoạt để bạn có thể ping nó đi và bật.

+3

Bạn có thể cung cấp tài liệu hoặc hướng dẫn về cách thiết lập Wake-on-LAN với Quả mâm xôi? –

+0

Là một chủ sở hữu RPi, tôi không biết rằng kết nối mạng LAN có dây RPi được cung cấp bởi MicroChip [LAN9512] (http://ww1.microchip.com/downloads/en/DeviceDoc/9512.pdf) (các kiểu cổng 2 cổng USB B)) hoặc [LAN9514] (http://ww1.microchip.com/downloads/en/DeviceDoc/9514.pdf) (4 cổng USB B + mô hình) được kết nối trong phần mềm/phần mềm/phần cứng - mặc dù IC không có đánh thức khả năng -on-LAN để có thể thú vị nếu xem nó có thể được thực hiện ...! – SlySven

0

Bạn có thể làm điều đó bằng cách kết hợp hai sản phẩm này từ Pololu, với giá khoảng $ 25:

  1. Micro Maestro (assembled)
  2. Basic SPDT Relay Carrier with 5VDC Relay (Assembled)

Các Maestro là chủ yếu một bộ điều khiển servo nhưng bạn có thể đặt bất kỳ kênh của nó là đầu ra kỹ thuật số đơn giản thay thế. Đầu ra có thể được điều khiển từ phần mềm Trung tâm điều khiển Maestro hoặc bạn có thể viết phần mềm của riêng bạn. Đầu ra kỹ thuật số từ Maestro phù hợp để bật rơle trên sóng mang. Relay có thể được cấp nguồn từ USB thông qua Maestro; Tôi nghĩ rằng nó rút ra khoảng 100 mA của hiện tại để có lẽ sẽ không phải là một vấn đề đối với hầu hết các cổng USB, mặc dù nó sẽ không được USB tuân thủ vì tổng số hiện tại được vẽ bởi Maestro và relay sẽ là hơn 100 mA. Bạn có thể cung cấp nguồn năng lượng của riêng bạn cho relay nếu bạn lo lắng về điều đó.

4

Hầu hết bộ chuyển đổi USB sang Serial hoặc USB thành RS232 $ 10 hỗ trợ bắt tay phần cứng. Sử dụng một trong số đó làm io kỹ thuật số kênh đơn.

Kết nối bóng bán dẫn sẽ điều khiển rơle tới DTR trên bảng chuyển đổi và lệnh DTR BẬT/TẮT với trình điều khiển bộ chuyển đổi.

Một 2N7002 là một bóng bán dẫn tốt để sử dụng (FET thực sự) vì nó sẽ làm việc từ 3V và không cần bất kỳ điện trở bất cứ nơi nào.

1

Bạn cần một vi điều khiển USB-GPIO:

Adafruit FT232H (khoảng $ 15) enter image description here

Arduino Nano ATmega328 (khoảng $ 7) 2

See this answer

Các vấn đề liên quan