今はUSB 3.0なんて新しい規格もありますが、組み込み用途ではそんな5Gbpsなんて速度は必要とされないことが多く、今でも一つ前のUSB2.0相当で設計されることは多いです。
さて、通信部分については今回触りません。
今回のテーマはUSB2.0の電源です。
民生用機器だけでなく産業用機器でも
「通信はUSBなら、電源もUSBで取ってよ。別にACアダプタが必要とか面倒でやだ!」
と言われる時代です。
USBから電源を取る機器も多いです。
ですが、この時に安易に「5V 500mAだろ」と考えてしまう設計者が多いのですが、実は違います。
まず電圧は500mA対応のハイパワーポートを想定しても4.75-5.25Vのバラ付きがあります。
さらに、ケーブルでの電圧降下がVBUS側125mV,GND側125mV認められています。
つまり、機器に入ってくる電圧は4.75-0.125-0.125=4.5Vです。
つまり、4.5-5.25Vを想定しないといけません。
なお、これはハブを使わない場合です。
ハブを使うとさらに最大350mVの電圧降下が発生するので、さらに下がります。
次に電流ですが、たしかにハイパワーポート(PCなどホスト機器でローパワーポートなんて実際にないので)は500mA引けます。
しかし、「500mA要求します」とホストとネゴシエーションしないと500mA引けません。
ネゴシエーションする前はローパワーデバイスとして振る舞わなければならないので、100mAしか引くことが出来ません。
さらに最大負荷は「10uFのコンデンサと44Ωの抵抗の並列」を超えてはいけないという規定があります。
つまり、電源のパスコンに47uFとか使ったらアウトなわけです。
……とまぁ、USB対応を謳うとこういったこと全てにきちんと対応する必要があります。
が、ぶっちゃけ大変です。
民生用ならとにかく、産業向けだと「無駄にお金をかけて規格を取るより、法律的に問題なくきちんと動けばいい」という判断をすることが多いです。
その場合、「USB2.0 準拠」という書き方にして、「実質的にはUSB2.0が使えますが、すべての規格を完全には守っているわけではありません」ということにします。
ま、これで実際困らないんですけどね・・・。
(実際はネゴシエーションなんか関係なく500mA供給できますしね)
以上、小田切でした。