Что мне нужно для запуска устройства 12 мВт / 28 мА при 18 В с прямоугольными волнами от 0 до 18 В с использованием порта USB 2.0 и управления выходом USB с питоном? Это ПК.
4 ответа
Если устройство потребляет 18 В при 28 мА, оно составляет всего 500 мВт. Это не должно быть проблемой для любого порта USB 5V. Для выполнения задачи вам понадобится:
USB-устройство с хотя бы одним GPIO. Этот сделал бы FTDI.
Разработка / покупка схемы повышающего преобразователя (дополнительная плата) от 5 В до 18 В;
Имейте транзистор для подачи импульсов 18 В на ваше "устройство 18 В", используя GPIO в качестве управления для транзистора. Подойдет любой BJT или FET. Прочитайте документы Adafruit Board о том, как управлять GPIO через Python.
Терпение и удача (если ваша прямоугольная волна должна быть в диапазоне низких кГц).
Лучше всего не беспокоиться о включении устройства (например, с помощью внешнего независимого источника питания) и использовании управляемого USB-переключателя.
Это имеет преимущество простоты, электрической развязки (вы не хотите жарить свой компьютер, пытаясь подать питание, даже если это не так много энергии) и стабильности устройства, так как вы будете держать устройство всегда "работающим" и просто модулировать выход. Например, вы можете использовать USB-RS232 для получения полезного сигнала.
В противном случае вы можете запитать устройство от повышающего преобразователя постоянного тока (от 5 до 18 В). Вы можете легко найти готовые модели на 12 В ; Я нашел один 24V 50mW один, в комплекте. Или вы можете создать его самостоятельно или попросить кого-то создать его из схем, которые вы можете использовать в Google. Не то, что я бы порекомендовал, хотя. Учтите, что при наличии большинства повышающих цепей выходное напряжение может нуждаться в дополнительном регулировании, чтобы быть совместимым с вашим устройством, поскольку вы получаете значительные колебания.
Вы можете обнаружить, что не можете одновременно включить устройство и управлять им через один и тот же порт USB, и вам нужны два порта USB. С большинством USB-чипов, если вы подключаете немую нагрузку, вы получаете ток "по умолчанию", который не является максимальным, который порт может подать (его все равно должно быть достаточно, но проверьте), по причинам самозащиты чипа. Но чтобы ваше устройство передавало необходимые сигналы «Послать больше тока, я в порядке с этим», вам все равно понадобится больше оборудования. Что я подозреваю, так это то, что вы можете обнаружить, что сложность выполнения этого на самом деле больше, чем просто получение независимого источника питания.
Согласно USB Wikipedia - USB 2.0 не способен питать 18В. Максимум 5 В и 5 А для зарядки аккумулятора.
USB с подачей питания (спасибо Даниэлю Б) может обеспечить питание до 20 В, так что это будет лучшим выбором для такого типа выходной мощности.
Ссылка из Википедии:
- Питание Формат микро
- Питание стандартного формата доставки или Type-C
Этого результата можно достичь с помощью внешнего источника питания и транзистора, который переключается сигналами, поступающими с USB-кабеля. Я не рекомендовал бы использовать повышающий регулятор с 5 Вольт, который выдает USB-кабель.
Но, AFAIK, нет никакого реального способа отправить прямоугольную волну через чистый USB с компьютера. То, что вы можете попытаться сделать, это подключить кабель USB к последовательному порту и отправить ему символы ASCII U, вы получите прямоугольную волну с частотой 1/2 скорости, с которой вы их отправляете.
Вы также можете пойти по простому маршруту и использовать Arduino или другой небольшой микроконтроллер для генерации тактового сигнала для волн (это отличный вариант, если у вас будет переменная частота).