要約
本稿では、RS-485を使用してネットワークを構成する場合の適切な配線方法について説明します。特に、ツイスト・ペア・ケーブルの使用方法や終端抵抗の配置方法について詳しく解説します。そのなかでは、ケーブルの適切な終端方法と不適切な終端方法の例を示し、それぞれの信号波形を示すことにします。また、単一のトランスミッタと複数のレシーバーを使用して構成するネットワークの例や、複数のトランシーバーを使用する例、マルチブランチの例なども紹介します。
はじめに
RS-485を利用すれば、比較的シンプルなネットワークを容易に構成することができます。本稿では、その場合の配線方法に関する基本的なガイドラインを示します。実は、RS-485の仕様(正式名称はTIA/EIA-485-A)を見ても、ネットワークの配線方法については具体的に説明されていません。ただ、いくつかのガイドラインが示されています。本稿では、それらのガイドラインと理に適ったエンジニアリング手法をベースとして解説を進めます。なお、本稿で示す内容は、ネットワークを構成するためのあらゆる方法を網羅しているわけではありません。その点には注意してください。
RS-485を使用すれば、複数の場所の間で情報の伝達(デジタル・データの伝送)を実現できます。データ・レートは最高10Mbpsですが、それ以上の値を実現可能なケースもあります。RS-485の特徴の1つは、長い伝送距離に対応できる点にあります。実際、1000mの伝送距離にも十分に対応可能です。ただ、RS-485を適切に使用できる距離とデータ・レートは、システムの配線方法に大きく依存します。そのため、適切な配線方法を適用することが極めて重要です。
配線の基本
RS-485は平衡システム(balanced system)として設計されています。簡単に言えば、信号を送信するために、グラウンド以外に2本のワイヤを使用するということです。
このシステムは、なぜ平衡システムと呼ばれるのでしょうか。その理由は、理想的には、一方のワイヤで伝送される信号がもう一方のワイヤで伝送される信号を完全に反転したものになるからです。つまり、1本のワイヤAがハイ・レベルの信号を伝送している場合、もう1本のワイヤBはロー・レベルの信号を伝送します(図2)。ワイヤAがロー・レベルの信号を伝送している場合、ワイヤBはハイ・レベルの信号を伝送することになります。
RS-485の信号の伝送には複数種のメディアを使用可能です。ただ、最適な伝送を行うためには、配線用のワイヤとしてツイスト・ペア・ケーブルを使用する必要があります。
ツイスト・ペア・ケーブルとは何か、なぜそれが選択されるのか?
その名が示すとおり、ツイスト・ペア・ケーブルは同じ長さの2本のワイヤを撚り合わせたものです。RS-485に準拠するトランスミッタにツイスト・ペア・ケーブルを適用することは、高速/長距離のネットワークにおける2つの問題の緩和につながります。すなわち、電磁干渉(EMI)の原因になる放射エミッション(以下、放射EMI)と受信エミッション(以下、受信EMI)が軽減されるということです。
放射EMI
ここで図3をご覧ください。データ送信に急峻なエッジが伴う場合には必ず高周波成分が生じます。より高いデータ・レートを使用するRS-485では、必ず急峻なエッジが生じます。
急峻なエッジに伴って生じる高周波成分は、長いワイヤと結合して放射EMIを発生させる可能性があります。ここで、ツイスト・ペア・ケーブルを選択すると、平衡システムは非効率的な放射装置として振る舞うようになります。そのため、EMIの影響を軽減できます。このメリットは非常に単純な原理によって得られます。2本のワイヤで伝送されるのは、振幅が等しい逆相の信号です。そのため、各ワイヤから放射される成分も振幅が等しく、極性が逆の信号になる傾向があります。結果として、両者が互いに打ち消し合う効果が生じ、正味の放射EMIが大幅に軽減されるのです。但し、この原理は、ワイヤが全く同じ長さで、全く同じ場所にあるという仮定に基づいています。2本のワイヤを全く同じ場所に配置するのは不可能なので、ワイヤをできるだけ近くに配置することが極めて重要になります。そこで、2本のワイヤ間の距離が有限になるようにそれらを撚り合わせる方法が用いられています。それにより、放射EMIを互いに打ち消す効果が得られるようになりました。
受信EMI
受信EMIは、基本的に放射EMIと同じ理由で生じる問題です。ただ、放射ではなく受信する点が異なります。RS-485をベースとするシステムで使用されるワイヤは、不要な信号を受信するアンテナとしても振る舞います。そうした不要な信号は、本来伝送したい信号を歪ませる可能性があります。その影響が大きい場合には、データに関するエラーが発生してしまうかもしれません。上述したように、ツイスト・ペア・ケーブルを使用すれば放射EMIの影響を軽減できます。それと同じ理由で、受信EMIに関する影響も緩和されます。2本のワイヤが互いに近接して撚り合わされていることから、1本のワイヤが受信するノイズは、もう1本のワイヤで受信するノイズと同等のものになる傾向があります。このタイプのノイズはコモン モード・ノイズと呼ばれています。RS-485に対応するレシーバーは、互いに値が逆(ハイとロー)の信号を検出するように設計されています。そのため、両方のワイヤに共通して存在するノイズは簡単に排除できます。
ツイスト・ペア・ケーブルの特性インピーダンス
ツイスト・ペア・ケーブルには特性インピーダンスが存在します。その値は、ケーブルの形状と絶縁体として使用される材料に依存します。特性インピーダンスについては、通常はケーブルの製造元から値が提示されています。RS-485の仕様では、特性インピーダンスの値を120Ωにすることが推奨されています。ただ、これは規定値ではありません。このインピーダンスを推奨しているのは、RS-485の仕様で指定されている最悪の負荷とコモンモード電圧範囲を計算するために必要になるからです。同仕様では、恐らく柔軟性が得られるようにするために特性インピーダンスの値を規定していないのでしょう。実際、何らかの理由で120Ωのケーブルを使用できないケースもあるはずです。そのような場合には、設計中のシステムが確実に機能するよう、最悪の負荷(使用するトランスミッタとレシーバーの数に依存)と最悪のコモンモード電圧範囲を自身で計算し直すことをお勧めします。これらの計算方法については、業界標準のドキュメント「TIA(Telecommunications Industry Association)-TSB-89:Application Guidelines for TIA/EIA-485-A(TIA(電気通信工業会)-TSB-89:TIA-EIA-485-Aのアプリケーション・ガイドライン)」を参照してください。
トランスミッタで駆動できるツイスト・ペア・ケーブルの本数
ここまでで、必要なワイヤの種類について明らかにすることができました。では、1つのトランスミッタによって駆動できるツイスト・ペア・ケーブルの本数はいくつなのでしょうか。答えは簡単で、1本です。特定の状況下では1つのトランスミッタによって複数のツイスト・ペア・ケーブルを駆動することも可能です。ただ、それはRS-485の仕様で意図していることではありません。
終端抵抗
高い周波数と長い距離を扱うことから、RS-485に対応するネットワークでは伝送線路の影響について十分に注意を払う必要があります。但し、伝送線路の影響と適切な終端技術について詳細に解説するというのは、本稿でカバーできる範囲を超えています。そのため、以下では、RS-485に関連する最も単純な終端方法について説明することにします。
終端抵抗とは、ケーブルの遠端(片端または両端)に配置する抵抗のことです(図4)。終端抵抗の値は、理想的にはケーブルの特性インピーダンスの値と同じにします。
終端抵抗の値がツイスト・ペア・ケーブルの特性インピーダンスの値と異なると、何が起きるのでしょうか。その場合、信号がケーブルを伝わる際に反射が生じます。そのプロセスは、(Rt - Zo)/(Zo + Rt) という式で表されます。ここで、Zoはケーブルのインピーダンス、Rtは終端抵抗の値です。ケーブルのインピーダンスにも抵抗の値にも許容誤差が存在します。そのため、ある程度の反射は避けられません。しかし、両者の値の差が大きすぎると、反射が大きくなり、データに関するエラーが生じる可能性があります(図5)。
反射の影響を認識すれば、終端抵抗と特性インピーダンスの値を可能な限り一致させることが重要だということがわかります。また、終端抵抗を配置する位置も非常に重要です。終端抵抗は、常にケーブルの遠端に配置しなければなりません。
原則として、終端抵抗はケーブルの両方の遠端に配置する必要があります。両端を適切に終端するのは、ほとんどのシステム設計にとって極めて重要なことです。ただ、終端抵抗を1つしか必要としない特殊なケースも存在します。それは、トランスミッタを1つしか使用せず、それがケーブルの遠端に配置されている場合です。そのようなシステムであれば、信号は常にトランスミッタが存在するケーブル端から遠ざかるように伝送されるので、そこに終端抵抗を配置する必要はありません。
トランスミッタとレシーバーの最大数
RS-485に対応する最もシンプルなネットワークは、1つのトランスミッタと1つのレシーバーで構成されます。ただ、RS-485は多くのアプリケーションにとって有用なものであり、1本のツイスト・ペア・ケーブルに複数のレシーバーとトランスミッタを接続できるだけの柔軟性も備えています。許容可能なトランスミッタとレシーバーの最大数は、各デバイスがシステムにとってどの程度の負荷になるのかによって決まります。理想となるのは、すべてのレシーバーと非アクティブなトランスミッタのインピーダンスが無限大である状態です。これであれば、システムには決して過負荷がかかることはありません。しかし、現実としてそのような状態が得られないことは明らかです。ネットワークに接続された各レシーバーと非アクティブなすべてのトランスミッタにより、相応の負荷が加わることになります。
RS-485に対応するネットワークに追加できるデバイスの数を把握するにはどうすればよいのでしょうか。そのために生み出された仮想的な単位が「ユニット負荷」です。RS-485に対応するネットワークに接続されるすべてのデバイスについては、それぞれがユニット負荷の整数倍または何分の1であるのかが示されている必要があります。例えば、RS-485に対応するトランシーバー「MAX3485」は1ユニット負荷、同「MAX487」は1/4ユニット負荷と規定されています。では、1本のツイスト・ペア・ケーブルが許容できるユニット負荷の最大数はどのようになっているのでしょうか。これについては、特性インピーダンスが120Ω以上で適切に終端されたケーブルの場合、32となります。つまり、そのケーブルを使用した1つのネットワークには、MAX3485であれば最大32個、MAX487であれば最大128個まで接続できることになります。
フェイルセーフ・バイアス用の抵抗
レシーバーへの入力電圧が -200mV~200mVの場合、出力は不定になります。以下に示すのは、そのような状態が生じ得る一般的な障害の例です。これらの状態では、レシーバーの出力が不定になり、誤ったデータが生成されてしまう可能性があります。
- システム内のすべてのトランスミッタがシャットダウンされている。
- レシーバーがケーブルに接続されていない。
- ケーブルがオープンの状態になっている。
- ケーブルが短絡した状態になっている。
フェイルセーフ・バイアス機能を使用すれば、これらのうちいずれの状態が発生した場合でも、レシーバーの出力を、定義された状態に維持することができます。同機能は、非反転ライン上のプルアップ抵抗と反転ライン上のプルダウン抵抗によって実現されます。適切なバイアスを適用することにより、いずれかの障害が発生しても、レシーバーからは有効なハイの出力が得られます。なお、これらフェイルセーフ・バイアス用の抵抗は、伝送ラインのレシーバー側に配置する必要があります。
「MAX13080」や「MAX3535」といったトランシーバー製品ファミリは、真のフェイルセーフ機能を搭載しています。そのため、フェイルセーフ・バイアス用の抵抗を使用する必要はありません。そのフェイルセーフ機能では、レシーバーの閾値として -50mV~-200mVという範囲が設定されています。そのため、フェイルセーフ・バイアス用の抵抗を使用することなく、RS-485の規格に準拠することができます。これらのICは、レシーバーの入力が0Vの場合、必ずロジック・レベルのハイを出力します。また、ケーブルがオープンまたは短絡している場合でも、レシーバーの出力として既知の状態が得られることが保証されます。
適切なネットワークの例
ここまでの説明により、RS-485に対応する代表的なネットワークを設計する準備が整ったことになります。以下、そうした例を示していきます。
1つのトランスミッタと1つのレシーバー
最もシンプルなネットワークは、1つのトランスミッタと1つのレシーバーで構成されます(図6)。この例では、ケーブルのトランスミッタ側にも終端抵抗を配置しています。先述したように、この抵抗は使用しなくても構いませんが、2つの終端抵抗を使用することを習慣にするのは望ましいことだと言えます。そうすれば、トランスミッタを遠端以外の位置に移動させることが可能です。また、必要に応じ、ネットワークにトランスミッタを追加することができます。
1つのトランスミッタと複数のレシーバー
図7に示したのは、1つのトランスミッタと複数のレシーバーでネットワークを構成した例です。この場合、ツイスト・ペア・ケーブルからレシーバーまでの距離をできるだけ短くすることが重要です。
2つのトランシーバー
図8に示したのは、2つのトランシーバーを使用して構成したネットワークの例です。
複数のトランシーバー
図9に示したのは、複数のトランシーバーを使用して構成したネットワークの例です。この場合、図7に示した例と同様に、ツイスト・ペア・ケーブルからレシーバーまでの距離をできるだけ短くすることが重要になります。
不適切なネットワーク構成の例
ここからは、不適切なネットワーク構成の例を示していきます。いずれも、RS-485を採用してはいるものの、本来の機能/性能を引き出せない状態になっています。それぞれの例では、適切に設計されたRS-485対応のネットワークで取得した波形と、不適切な構成のネットワークで取得した波形を示すことにします。それぞれの波形は、A点とB点で差動的(A-B)に取得しました。
終端されていないネットワーク
ここで示すのは、ツイスト・ペア・ケーブルの両端を終端していないネットワークの例です。その場合の信号は、ワイヤを伝搬していくと、ケーブルの末端でオープン・サーキットに行き当たります。すると、インピーダンス・ミスマッチが原因となって反射が発生します。図10のようなオープン・サーキットが存在する場合、全エネルギーが反射して信号源まで戻ってきます。そのため、信号の波形が大きく歪みます。
終端の位置が不適切
図11に示した回路では、終端抵抗が使われています。但し、その一方はケーブルの遠端ではない位置に配置されています。この場合、信号はケーブルを伝搬していく過程で2つのインピーダンス・ミスマッチに遭遇します。最初のミスマッチは終端抵抗で発生します。抵抗の値がケーブルの特性インピーダンスの値と一致していても、抵抗の後段にはまだケーブルが存在しています。この余分なケーブルによってミスマッチが起こり、反射が生じます。2つ目のミスマッチは終端されていないケーブル端で発生します。それによって更に反射が発生することになります。
複数のケーブル
図12をご覧ください。このレイアウトには、複数の問題があります。RS-485に対応するドライバは、適切に終端された1本のツイスト・ペア・ケーブルだけを駆動するように設計されています。それに対し、図12の例の場合、トランスミッタが4本のツイスト・ペア・ケーブルをそれぞれ並列に駆動しています。これでは、必要とされる最小ロジック・レベルを保証できません。負荷が重いことに加え、複数のケーブルが接続されている個所ではインピーダンス・ミスマッチが生じます。その結果、反射が発生し、信号に歪みが現れます。
長いスタブ
最後に図13に示した例をご覧ください。この例の場合、ケーブルは適切に終端されており、トランスミッタは1本のツイスト・ペア・ケーブルだけを駆動しています。しかし、レシーバーの接続点までの距離(スタブ)が長すぎます。スタブが長いと、大きなインピーダンス・ミスマッチが生じます。その結果、反射が発生します。すべてのスタブはできるだけ短くしなければなりません。
{{modalTitle}}
{{modalDescription}}
{{dropdownTitle}}
- {{defaultSelectedText}} {{#each projectNames}}
- {{name}} {{/each}} {{#if newProjectText}}
- {{newProjectText}} {{/if}}
{{newProjectTitle}}
{{projectNameErrorText}}