我需要什么才能运行 12mW/28mA @18V 设备,方波在 0 到 18V 之间,使用 USB 2.0 端口并使用 Python 控制 USB 输出?这是一台 PC。
答案1
如果设备以 28mA 电流消耗 18V 电压,则功耗仅为 500mW。对于任何 USB 5V 端口来说,这应该没有问题。要完成此任务,您需要:
至少有一个 GPIO 的 USB 设备。这个就可以了光纤到户。
设计/购买一个从 5V 到 18V 的升压转换电路(附加板);
使用晶体管将 18V 脉冲驱动到您的“18V 设备”,使用 GPIO 作为晶体管的控制。任何 BJT 或 FET 都可以。阅读 Adafruit 板文档,了解如何通过 Python 控制 GPIO。
耐心和运气(如果您的方波需要在低 kHz 范围内)。
答案2
最好的办法是不要担心启动设备(即使用外部的,独立电源)并使用USB控制开关。
这样做的好处是简单、电气解耦(你不会想在供电时烧坏你的电脑,即使它没有那么多的功率)和设备稳定性,因为你可以让设备一直“运行”,而调节其输出。例如,您可以使用 USB-to-RS232 来获取可用信号。
否则,您可以使用升压 DC-DC 转换器(5 至 18V)为设备供电。您可以找到现成的 12V 模型很容易;我曾经在一个套件中找到一个 24V 50mW 的。或者你可以自己做一个,或者让别人根据你在谷歌上搜索到的原理图帮你做一个。不过,我并不推荐这样做。考虑到大多数升压电路,输出电压可能需要额外的调节才能与你的设备兼容,因为你会得到相当大的纹波。
您可能会发现无法通过同一个 USB 端口为设备供电并控制它,因此需要两个 USB 端口。对于大多数 USB 芯片,如果您连接一个哑负载,则会获得“默认”电流,这不是端口可以提供的最大电流(它应该仍然足够,但查看),出于芯片自我保护的原因。但要让你的设备传输必要的“发送更多电流,我同意”信号,你仍然需要更多的硬件。我怀疑你可能会发现这样做的复杂性那实际上不仅仅是获得一个独立的电源。
答案3
根据USB 维基百科- USB 2.0 无法为 18V 供电。电池充电的最大电压为 5V,最大电流为 5A。
带有电源传输功能的 USB(感谢 Daniel B)能够提供高达 20V 的电源,因此这应该是您尝试此类电源输出的最佳选择。
参考自维基百科:
- 电力输送微格式
- Power Delivery 标准格式或 Type-C
答案4
您可以使用外部电源以及由 USB 电缆信号切换的晶体管来实现此结果。我不建议尝试使用 USB 电缆提供的 5 伏电压的升压稳压器。
但是,据我所知,没有真正的方法可以通过纯 USB 从计算机发送方波。您可以尝试将 USB 连接到串行电缆并向其发送 ASCII U 字符,您将获得频率为发送频率 1/2 的方波。
您也可以选择简单的方法,使用 Arduino 或其他小型微控制器来生成波浪的时钟(如果您要使用可变频率,这是一个很好的选择)。