チュートリアル 4255

1-Wire®デバイスの拡張機能に対する給電方法


要約: 1-Wireバスは、単一のラインを使ってホストデバイスとスレーブデバイスの間に通信と電力の両方を供給します。一部の1-Wireデバイスは、EEPROM、温度測定、およびSHA-1エンジンを含む拡張機能を提供しています。これらの特別な機能の動作には追加の電力が必要になる可能性があるため、1-Wireデバイスのプルアップ抵抗(RPUP)の大きさをそれに応じて決める必要があります。

はじめに

1-Wireバスは、マスタコントローラと1個または複数のスレーブ間で半二重の双方向通信を行う単純な信号方式であり、すべてのデバイスが共通のデータラインを共有します。給電とデータ通信の両方が、この単一のライン上で行われます。ほとんどの1-Wireデバイスは、動作と通信に数十µA程度の非常にわずかな電力しか使用しません。しかし、一部の1-Wireデバイスは、EEPROMの書込みやデバイス固有の計算/測定など、特定の動作中にこれより大きな電力を必要とします。このような電力要件の増大期間について、1-Wireバス上の電圧がデバイスの最小動作プルアップ電圧(VPUP)を下回らないようにすることが重要になります。ほとんどの寄生給電型1-Wireデバイスの場合、最小動作電圧(VPUP)は2.8Vです。

追加の電力を必要とする1-Wireデバイス

表1は、追加の電力を必要とする特別な機能を備えた1-Wireデバイスの一部をリストにしたものです。

表1. 追加の電力を必要とするデバイス
Part EEPROM SHA-1 Temperature ADC
DS18B20 Check   Check  
DS1920 Check   Check  
DS1961S Check Check    
DS1971 Check      
DS1972 Check      
DS1973 Check      
DS1977 Check      
DS2431 Check      
DS2432 Check Check    
DS2450       Check
DS28E01-100 Check Check    
DS28E04-100 Check      
DS28EA00 Check   Check  
DS28EC20 Check      

ECの表で追加の電力要件を識別する方法

デバイスに追加の電力要件が存在する場合は、データシートの電気的特性(EC)の表に様々な形で記載されています(表2)。ECの表のプルアップ抵抗の仕様(RPUP)は1-Wireの通信のみに関するものであり、特別な動作のための追加の電力要件は含まれていません。

表2. 追加の電力の必要を示すEC表のパラメータ
Parameter Description Symbol 1-Wire Device
Programming Current IPROG DS1961S, DS1972, DS2431, DS28E01, DS28E04, DS28E00
Programming Current ILPROG DS1973, DS1977, DS2432
Programming Current IP DS1971 (DS2430A)
SHA Computation Current ILCSHA DS1961S, DS28E01
Active Current IDD, IDQA DS1920, DS18B20, DS18B20-PAR
Conversion Current ICONV DS28EA00
Operating Current ICC DS2450

Figure 1.Example of the EC table for the DS28EA00.
図1. DS28EA00のECの表の例

利用可能な電力

特定のVPUPとRPUPに対して、VPUPと1-WireデバイスのVPUPminの電圧差によって、特別な機能に利用可能な電流が決まります。利用可能な電流は、IAVAIL = (VPUP - VPUPmin)/RPUPで計算することができます。計算例を示します。

VPUP = 5V
RPUP = 2kΩ
VPUPmin = 2.8V、結果はIAVAIL = 1.1mA

すなわちこの例の場合、1-Wire電圧が下限のVPUPを下回るまでに利用可能な電流は1.1mAになります。利用可能な電流がアプリケーションにとって不十分な場合は、より小さなプルアップ抵抗か、またはプルアップ抵抗に対するローインピーダンスのバイパスが必要になります。

適正なプルアップ(RPUP)の判別

利用可能な電流は、公称VPUPから最小VPUPへの潜在的な電圧降下をプルアップ抵抗(RPUP)で除算することによって計算可能です。図2は、最小VPUPが2.8Vのデバイスについて、VPUPが5Vという条件に基づいてこの計算をグラフ化したものです。プルアップ電圧が5Vの場合、2.2kΩ以下のプルアップ抵抗によって少なくとも1mAがサポートされます。

Figure 2. Available current for VPUP = 5V.
図2. VPUP = 5Vの場合の利用可能な電流

同様に、図3はVPUPが3.3Vという条件に基づいて利用可能な電流を示したものです。プルアップ抵抗での許容電圧降下が0.5Vしかないため、利用可能な電流は非常にわずかです。恐らく別の手段によって追加の電流を供給する必要があると思われます(この後の「ローインピーダンスバイパス」の項をご覧ください)。

Figure 3. Available current for VPUP = 3.3V.
図3. VPUP = 3.3Vの場合の利用可能な電流

高度な考慮

非常に低いプルアップ抵抗値を選択することで、特別な機能を実行するために必要となる電力が提供されます。しかし、この構成では1-Wireバス上でロジック0を表す電圧が上昇します。VOLのレベルが1-Wireスレーブまたは1-Wireマスタについて規定されているローの最低入力電圧(VIL)を満たさない場合、信頼性のある通信は不可能になります。1-Wireデバイスの最も一般的なVOLの仕様は、4mAで最大0.4Vです。この値は、1-Wireデバイスがロジック0の応答を返す場合の、最大インピーダンス100Ωに相当します。VILは、1-Wireデバイスによって0.3V~0.8Vの幅があります。複数の1-Wireデバイスがバス上に存在する場合、最も低いVILによって限度が決まります。ロジック0の要件を満たすプルアップ抵抗値は、RPUPmin = 100Ω × (VPUP/VILmax - 1)で計算することができます。

(注:等式の最初の項である100Ωの代わりに、VOL/4mAとすることも可能です。)

したがって、VILの最大値を0.4Vとすると結果は次のようになります。

VPUP = 5Vの場合:1150Ω
VPUP = 3.3Vの場合:725Ω

VILの最大値を0.3Vとすると結果は次のようになります。

VPUP = 5Vの場合:1567Ω
VPUP = 3.3Vの場合:1000Ω

適切なプルアップを選択する際には、プルアップ抵抗と電源の公差についても考慮する必要があります。これらの公差には相関性がなく、すなわちどちらかの(正/負)側に加算される場合と、互いに相殺される場合があります。電圧が上限値で抵抗が下限値(すなわちVOLが最大)、および電圧が下限値で抵抗が上限値(すなわち利用可能な追加の電流が最小)という、最悪の組合せについて常に確認を行ってください。

ローインピーダンスバイパス

VOLとVILの要件を満たすために要求されるプルアップ抵抗では必要な電流を供給することができない場合は、他の手段によって追加の電流を供給する必要があります。これには次の2種類の方法があります。
  1. 大電流が要求される間のみ作動するディスクリートのローインピーダンスバイパス(強プルアップとも呼ばるもの)を実装する。
  2. 強プルアップを内蔵した1-Wireインタフェースデバイスを利用する。
ディスクリートの強プルアップを使用する1-Wireマスタの例は、アプリケーションノート4206 「組込みアプリケーション用の正しい1-Wire®マスタの選択」またはアプリケーションノート244 「高度1-Wireネットワークドライバ」をご覧ください。図4に、追加のIO端子によって制御される強プルアップを示します。

Figure 4. Bidirectional port pin with optional circuit for strong pullup (dashed lines).
図4. 強プルアップ用の回路(点線)を追加可能な双方向ポート端子

強プルアップ機能が組み込まれた1-Wireインタフェースチップは3種類あります(表3)。DS2482-100は、追加のディスクリート、特強プルアップの駆動に使用することができる外部制御信号も備えています。

表3. 1-Wireマスタインタフェースデバイス
Device Interface Features
DS2480B Serial Strong pullup, active pullup
DS2482-100 I²C Single 1-Wire channel with built in strong pullup, optional active pullup, control signal for extra-strong pullup
DS2482-800 I²C Eight 1-Wire channels with built in strong pullup, optional active pullup

結論

温度変換、EEPROM、またはSHA-1エンジンなどの拡張機能が1-Wireデバイスの中で適正に動作するためには、1-Wireが最小電圧プルアップ(VPUP)を下回らないという条件で1-Wireマスタからそれらのデバイスに十分な電流を供給する必要があります。したがって、アプリケーションの必要に応じてこの電流を供給するように1-Wireプルアップ抵抗(RPUP)の大きさを決める必要があります。アプリケーションの要求によって、適正な大きさのプルアップ抵抗が許されない場合には、ディスクリートの強プルアップ回路またはDS2480BやDS2482などの1-Wireインタフェースチップを使用して電流を供給することが可能です。