Управление питанием нескольких USB-устройств

Управление питанием нескольких USB-устройств

Проблема

У меня есть несколько USB-устройств (несколько лампочек, работающих только от электропитания, камера с питанием и последовательным интерфейсом), питанием которых мне нужно управлять.программночерез один порт USB.

Вопросы

Какие варианты аппаратных устройств доступны для этого приложения?

Как бы называлось такое устройство?

Является ли моя потребность в корне ошибочной, раз это невозможно?

решение1

Кажется, устройство называется либо:

  • Переключаемый USB-концентратор

  • Программируемый USB-концентратор

Я сам ищу нечто подобное и пока наткнулся на:

01) YKUSH Yepkit USB-коммутируемый концентратор(29,94 евро)

Хотите включать и выключать USB-устройства? С помощью YKUSH вы можете выборочно управлять включением и выключением USB-устройств, подключенных к нему... или вы можете просто использовать его как «обычный» USB-концентратор.

Простой учебник по YKUSH здесь: (Линукс) (Окна).

02) Управляемый компьютером переключаемый USB-концентратор(29 секунд видео)

03) Программируемый USB-концентратор Acroname с 4 портами для зарядки(300$)

Надеюсь, другие смогут предложить здесь доступные, простые в реализации и управлении решения.

решение2

Вам нужно будет создать внешний контроллер для такой задачи. Моя первая идея — получитьАрдуино, макетная плата и USB-концентратор и в основном создаем коммутатор, который управляется через Arduino. Для Aruduino понадобится программа под названиемФирматазагруженный на него, который позволяет управлять выводами через последовательный порт (USB). Ваша программа на самом компьютере будет работать следующим образом:

Выключение USB-концентратора:

  1. Извлечь камеру/другие устройства передачи данных, подключенные к концентратору
  2. Общайтесь с Arduino через Firmata и отключайте необходимые контакты

Включение USB-концентратора:

  1. Общайтесь с Arduino через Firmata и включайте необходимые пины

И ваша блок-схема будет выглядеть примерно так:

USB Hub>USB Cable>Breadboard Switch/Arduino>USB Cable>Computer

Единственным недостатком здесь будет то, что вы не сможете индивидуально отключать каждое USB-устройство. Чтобы добиться этого, вам понадобится более индивидуальное решение, которое потребует создания собственного USB-концентратора. Но это был бы потрясающий проект!

решение3

Вы можете купить любой дешевый USB-концентратор, который поддерживает переключение питания на каждом порту, и использовать утилитуuhubctlдля управления питанием на каждом порту - подробнее см.https://github.com/mvp/uhubctl. Некоторые совместимые концентраторы стоят всего 20 долларов.

Связанный контент