RS485コントローラーの使い方と適切な電源接続について

このQ&Aのポイント
  • リニアテクノロジーのRS485コントローラーには、LTC485CN8というデバイスがあります。このデバイスは、5V単一電源で動作し、5V動作するマイクロコントローラーと接続可能です。
  • LTC485CN8のVCCには12Vを接続することはできますが、RS485の信号レベルは0-12Vとはなりません。3.3Vマイコンと組み合わせる場合、3.3V-5Vのレベルコンバート+LTC485CN8の組み合わせが良いでしょう。
  • LTC1480もVCCに3.3V以上の電源が接続できますが、12Vは接続できません。RS485で安定した通信を行うためには、12Vレベルで信号を送ることが望ましいと思われます。
回答を見る
  • ベストアンサー

RS485コントローラーについて

リニアテクノロジーのRS485コントローラーに、LTC485CN8があります。 このデバイスは、5V単一電源で動作するとデータシートにあります。 これは、5V動作するマイクロコントローラーと接続可能ということだと思います。 また、データシートの最大値にはSupply Voltage 12Vとあります。 質問は、3つあります。 LTC485CN8のVCCに12Vを接続してもよいか? 接続できた場合、RS485の信号レベルは0-12Vとなるか? 3.3Vマイコンと組み合わせる場合、3.3V-5Vのレベルコンバート+LTC485CN8の組み合わせと、LTC1480(3.3V動作)を使うののどちらが良いか。 3番目の質問は、LTC1480もVCCに3.3V以上の電源が接続できればですが。 ちなみに、LTC1480のデータシートの最大値にはSupply Voltage 7Vとありますので、12Vは入れられないのだと思います。 RS485で安定した通信を行うなら信号は12Vレベルで送りたいと思いますが、どうでしょう? 3.3VでRS485通信を行うと安定性や転送距離等で十分なものが得られないように思うのですが。 ご教授願えればと思います。

質問者が選んだベストアンサー

  • ベストアンサー
  • xpopo
  • ベストアンサー率77% (295/379)
回答No.4

1) >LTC485CN8のVCCに12Vを接続してもよいか? 接続できた場合、RS485の信号レベルは0-12Vとなるか? 回答>>電源電圧は絶対最大定格電圧が12Vになってます。12Vを少しでも超えたら保証外とデータシートには記載されてます。したがって、12Vが温度やバラツキで少しでも超える可能性があるならやめておいた方が良いと思います。しかし、もし、趣味で使うのならばOKでしょう(自己責任という意味で)  信号レベルはデータシートに VOD2 Differential Driver Output Voltage (with Load)   R = 50Ω (RS422) 2 Vmin   R = 27Ω (RS485), Figure 1 1.5min で最大値は 5 Vmax とありますので、12Vの電源で使っても差動出力は0-12Vにはならないと言うことです。 通信ラインの終端抵抗が50Ωの場合で0-2Vmin、27Ωの場合で0-1.5Vminになります。通信ラインの信号に対する受信端での入力スレッショールド電圧|VTH|は200mV以内でヒステリシス電圧は∆VTH Receiver Input Hysteresis VCM = 0V 70 mVになってますので70mVを超えるか超えないかで通信のデータの1-0判定を行っているわけです。 2) >3.3Vマイコンと組み合わせる場合、3.3V-5Vのレベルコンバート+LTC485CN8の組み合わせと、LTC1480(3.3V動作)を使うののどちらが良いか。 回答>>ロジック入力はデータシートに VIH Input High Voltage DE, DI, RE 2 V VIL Input Low Voltage DE, DI, RE 0.8 V とありますので、3.3Vロジックで変換なしに使用可能のようです。 しかしロジック出力はデータシートに VOH Receiver Output High Voltage IO = –4mA, VID = 200mV 3.5 V VOL Receiver Output Low Voltage IO = 4mA, VID = –200mV 0.4 V とありますので、VOHが3.5Vと少し3.3Vを超えてますのでそのままでは使えませんがロジック出力とマイコン側入力の間を510Ω程度の抵抗でつなぎ、マイコン側の入力端子とマイコンの電源Vdd(3.3V)間にショットキーダイオードを接続(マイコンの入力端子をアノードに)すれば使えます。 3) >3番目の質問は、LTC1480もVCCに3.3V以上の電源が接続できればですが。 ちなみに、LTC1480のデータシートの最大値にはSupply Voltage 7Vとありますので、12Vは入れられないのだと思います。 回答>>LTC1480の絶対最大定格電圧は 7V ですのでその通りです。 4) >RS485で安定した通信を行うなら信号は12Vレベルで送りたいと思いますが、どうでしょう?3.3VでRS485通信を行うと安定性や転送距離等で十分なものが得られないように思うのですが。 回答>>信号(通信ラインの)はどちらのICも1)で回答したように12Vではなく、 VOD2は通信ラインの終端抵抗が50Ωの場合で0-2Vmin、27Ωの場合で0-1.5Vminになります。ただ最大値がLTC1480は3.3Vmaxになってるだけなので、通信ラインをつなげるのは問題ありません。  通信ラインの信号に対する受信端での入力スレッショールド電圧|VTH|も200mV以内でヒステリシス電圧は∆VTH Receiver Input Hysteresis VCM = 0V 70 mVになってますので両ICとも同じ受信感度で動作します。結論として RS485通信を行う場合、安定性や転送距離等で両者はそん色ない性能が得られる ということになります。

cool59
質問者

お礼

お礼が遅くなりまして申し訳ありません。 No.3の方の御回答にもあるように、12Vは、ノイズを含めた最大値ということですね。 データシートのVod2で説明しているMAX値5Vは、Vcc=5V+-5%時という条件によるものなので、もしVccに7Vを入れた時は7Vになるのではないでしょうか。 (もう考えないですけど) 抵抗とダイオードを使うレベルシフト回路は、ダイオードクリップ型というのですね。 5V->3.3Vにするときに3.3V+ダイオードのVf値に変換されるようです。 勉強になりました。 また、200mVという小さい値でのO/1判定を考えると3.3Vと5Vでの信号電圧降下の違いは考えなくていいのですね。 ありがとうございました。

その他の回答 (4)

  • xpopo
  • ベストアンサー率77% (295/379)
回答No.5

回答NO.4の訂正があります。 以下の部分: 通信ラインの終端抵抗が50Ωの場合で0-2Vmin、27Ωの場合で0-1.5Vminになります。通信ラインの信号に対する受信端での入力スレッショールド電圧|VTH|は200mV以内でヒステリシス電圧は∆VTH Receiver Input Hysteresis VCM = 0V 70 mVになってますので70mVを超えるか超えないかで通信のデータの1-0判定を行っているわけです。 で最後の部分:「70mVを超えるか超えないかで通信のデータの1-0判定を行っているわけです。」は間違いです。以下のように訂正します。 通信ラインの終端抵抗が50Ωの場合で0-2Vmin、27Ωの場合で0-1.5Vminになります。通信ラインの信号に対する受信端での入力スレッショールド電圧|VTH|は200mV以内でヒステリシス電圧は∆VTH Receiver Input Hysteresis VCM = 0V 70 mVになってますので70mV以内の変動(ノイズ)はヒステリス特性で無視するように動作します。 4)の回答の最後の部分も同様に訂正します。

cool59
質問者

お礼

重ねての御回答ありがとうございます。 3.3Vロジックで、RS485だけに5Vを作って入力するのは面倒です。3.3Vと5Vで通信品質に差がないのあれば3.3VのRS485デバイスを使用するのがいいですね。 でも3.3VのRS485デバイスは少し高いですね。 ありがとうございました。

  • koujikuu
  • ベストアンサー率43% (428/992)
回答No.3

私も勉強中の身ですが RS485は差動信号なので、A=5V の時 B=0V 、A=0V の時 B=5V となり ツイストペアケーブルを使用することにより、A,B両信号に同じノイズが加わります A,B信号にノイズが乗り、A=5+7V=12V になれば B=0+7V=7V 、A=5-7V=-2V で B=0-7V=-7V これで±7Vのノイズマージンがあり、A/Bの電位差が200mV(0.2V)あればH/Lを判別できます RS485は末端抵抗が100Ω×2だとすると、5V/((100+100)/2))=100mA流れます、(銅線抵抗は無視して) 仮にRS485を12V駆動すると、12/((100+100)/2)=240mA 末端抵抗を見直す必要があると思われ、速度も低下します LTC485CN8ですが3.3VのI/Oピンに繋ぐのに問題になるのは、RO のみ抵抗分圧で3.3Vへ電圧を落とせば問題無いと考えます、(5V電源は必要) http://blogs.yahoo.co.jp/gomisai/25240358.html また3.3V対応のRS485ドライバは他にもあります http://www.marutsu.co.jp/ichiran/?CN=1

cool59
質問者

お礼

お礼が遅くなりまして申し訳ありません。 差動信号とノイズの関係の説明大変わかりやすかったです。 つまり、12Vの信号だとノイズが乗った時のマージンが無いということでしょうか。 推奨されている終端抵抗値が120Ωなのは、ケーブルインピーダンスと合わせているようです。 Vccに5Vを入れた時は、DE,DI,REは、2V以上でInputを判断しROは、Outputで5Vを出すということですね。 教えていただいてからデータシートを見ることで理解できるようになる時が多いです。 ありがとうございました。

  • koujikuu
  • ベストアンサー率43% (428/992)
回答No.2

調べてみました RS485は,0-5V信号レベルで,1200m伝送可能と規定されています、入力信号が±12Vまで可能なのはノイズマージンです、(RS485を12V駆動するのは、ノイズマージンが狭くなります) http://www.miyazaki-gijutsu.com/series3/denso032a.html RS485は差動信号の為ツイストペアケーブルが必須になります http://blog.livedoor.jp/rs485/archives/1604660.html 余談、USBも+D/-Dの差動信号を使用しています、(3.3V信号レベル)

cool59
質問者

お礼

ご回答ありがとうございます。 RS485の信号レベルは0-5Vで、LTC485CN8にある+-12Vとは信号に乗ったノイスも含めての許容有力レベルということでしょうか。 差動信号のH/Lを決める信号差は200mA程度だということのようですので、RS485を12V駆動すると12V/200mAは5V/200mAに対して不利ということでしょうか。 3.3Vマイコンには、3.3VのRS485トランシーバのほうが相性がいいのでしょうが、3.3VRS485トランシーバは5V版に対して高価です。 3.3VのRS485信号の安定性はどうなのでしょうか。

回答No.1

すべてデーターシートを見れば解決する問題です。 http://cds.linear.com/docs/en/datasheet/1480fa.pdf http://cds.linear.com/docs/en/datasheet/485fk.pdf

cool59
質問者

お礼

ご回答ありがとうございます。 まあ、おっしゃることはそうなのですが、

関連するQ&A

  • パソコンとプログラマブルコントローラを接続するには?

    パソコンとプログラマブルコントローラを接続しようと思っています。 プログラマブルコントローラへは、10接点くらいの信号を与えます。 また、プログラマブルコントローラからは、数十の接点のオン・オフの信号が来ます。 僕のパソコンには、USBインタフェースやRS232C しかありません。 間に入れる機器は、自作は考えていません。 どういう名称で、どんなものが市販されているか、 教えて下さい。

  • Arduinoから6V駆動のサーボを動かすには?

    Arduinoから6V駆動のサーボモータを動かしてみたいと考えています。信号は5Vで、電源だけ6Vでもいいのでしょうか? 私の予想だと以下のままで一応動きそうですが。 ・6V電源のVCCとGNDをサーボのVCCとGNDに接続 ・ArduinoのPWM可能なPINをサーボの信号線につなげる ・全てのGNDを接続する 信号が5Vでもカタログどおり6V駆動時のトルクがでるんでしょうか? データシートなどを見ても信号が何V以上でないといけないと描いてませんし。 http://eleshop.jp/shop/g/gDBQ412/ たとえば、12V駆動のサーボだとさすがに5Vの信号はまずそうですが。 それとも図のようにして信号も駆動電圧に合せたほうがいいのでしょうか?

  • RS-232C コントローラの製作

    ビデオプロジェクタ(以下VP)の電源ON/OFF等を、「RS-232C」で操作する『基盤』を作成しないといけなくなりました。 動作手順として、 1.ON信号(接点)が入ったら VPへ「電源ON」のコマンドを出力。 2.VPから「電源ON」のステータスが帰ってくるまで 定期的に繰り返す。 3.ON信号(接点)が切れたら VPへ「電源OFF」のコマンドを出力。 4.VPから「ランプ電源OFF」のステータスが帰ってくるまで 定期的に繰り返す。 コマンド出力は 基盤→VP 'C' + 'コマンド1' + 'コマンド2' + CR         VP→基盤 ACK + CR 戻り値は    基盤→VP 'C' + 'R' + '0' + CR        VP→基盤 '戻値1' + '戻値2' + CR です。 当方 シリアル通信、RS-232Cの技術的なことはよくわかりません。 ある程度のロジック回路は組めます。 そこで、 (1)既製品で「RS-232Cコントローラ」のようなものは あるのでしょうか? (2)このようなものを 少ロットで製作(5~10台単位)で   受けてもらえる業者さんは ありますか? (3)(将来は)自分で勉強しようと思いますが、  「Basic-stamp」や「PIC」を使った 通信を学べるいい教材はありますか? (4)そのほか シリアル通信の勉強にタメになるっと 思われる情報もお願い致します。 尚、この質問内容がこのカテゴリでなかったらご指摘ください。

  • オペアンプLM675

    National SemiconductorのオペアンプLM675(http://www.national.com/mpf/LM/LM675.html#Overview)のデータシート2ページ目に記載の Generating a Split Supply From a Single Supply という回路ですが, これは,例えば入力側に60V,10Aの電源を接続すると,出力は+/-30,10Aとなるといった理解で良いでしょうか. 要するに,60Vの単電源を+/-30Vの両電源に変換するという回路だと思うのですが,電流は入力に接続する電源が出力可能な電流(今の場合だと60V,10Aの電源を使っているので10A出力可能)となるのか,LM675の性能に依存するのか(データシートには"Power Dissipation (Note 2) 30W"と記載されているので,30V,1Aとなるのか)分かりません. あと,"Supply Voltage ±30V"と書いてあるのですが60Vの電源に接続してもよいものなのでしょうか

  • PC用のゲームコントローラー

    現在使用しているPCにUSB端子やゲームコントローラー用端子がないのでRS232Cに接続できるコントローラーを探しています。 機種 PC9821 V13D3(PCI*0 Cバス*2) OS Windows98

  • CMOSのしきい値

    こんにちは CMOSロジックICで一般的に VILmax 0.3×Vcc VIHmin 0.7×Vcc と記載されています。Vcc5VのときLoレベル入力最大値は1.5Vとなりますが、 実際の入力LoレベルVthは何Vでしょうか?

  • RS485通信障害について

    RS485通信の中継器でのトラブルです。 下記トラブルの原因が分からず困っていますので宜しくお願いします。 機器(中継器とする)の仕様: ・RS485通信回路が2回路 ・両回路は同一電源で動作し、基板上のグランドはベタになっている ・CPUを含むデジタル回路とRS485の回路はフォトカプラで絶縁されている ・電源はAC100Vでトランス+3端子レギュレータで電源を作っている ・RS485の片方(下位側とする)はAC200Vで動作する機器(下位機器とする。最大30台)につながっている ・もう片方(上位側とする)はAC100Vで動作する機器(上位機器とする。最大30台)につながっている。 症状: ・中継器の送信が下位機器で受信されず、再送信を行う時がある(恒にではない) ・障害時、下位側の波形(A,B間)でコモンから上側や下側が無い波形が見られる ・下位側の波形(A,B間)にAC成分が重畳されている ・上位側の通信ラインを外すと下位側に重畳されているAC成分が消え、通信障害も起きない ・下位側に485-USBコンバータ(MAXIM MAX1480というトランシーバ内蔵)を接続すると通信障害が治る  但し、AC成分の重畳は消えない

  • RS485通信障害について

    RS485通信の中継器でのトラブルです。 下記トラブルの原因が分からず困っていますので宜しくお願いします。 機器(中継器とする)の仕様: ・RS485通信回路が2回路 ・両回路は同一電源で動作し、基板上のグランドはベタになっている ・CPUを含むデジタル回路とRS485の回路はフォトカプラで絶縁されている ・電源はAC100Vでトランス+3端子レギュレータで電源を作っている ・RS485の片方(下位側とする)はAC200Vで動作する機器(下位機器とする。最大30台)につながっている ・もう片方(上位側とする)はAC100Vで動作する機器(上位機器とする。最大30台)につながっている。 症状: ・中継器の送信が下位機器で受信されず、再送信を行う時がある(恒にではない) ・障害時、下位側の波形(A,B間)でコモンから上側や下側が無い波形が見られる ・下位側の波形(A,B間)にAC成分が重畳されている ・上位側の通信ラインを外すと下位側に重畳されているAC成分が消え、通信障害も起きない ・下位側に485-USBコンバータ(MAXIM MAX1480というトランシーバ内蔵)を接続すると通信障害が治る  但し、AC成分の重畳は消えない。

  • OPアンプの仕様について

    はじめまして。どうぞよろしくお願い致します。 ----やりたい事--------------------------------------------- ファンクションジェネレータから差動信号(ユニポーラ出力)を発生させOPアンプの+と-に入力を行います。OPアンプの差動増幅回路を使い信号をユニポーラからバイポーラに変換したいと考えています。回路は以下のURLの差動増幅回路です(http://markun.cs.shinshu-u.ac.jp/learn/OPamp/diffop.html) ----質問内容--------------------------------------------- OPアンプはMAXIM社のMAX4225を使用していますが、データシートを見ても仕様を理解できません。ど素人ですみません… 1.このOPアンプの電源に何ボルトを仕様すればよいのでしょうか? (データシートのページ目には「±2.85V~±5.5Vデュアル電源で動作」とかかれていますが、2ページ目にはSupply Voltage (VCC to VEE) ..12Vと書かれていて惑わされてしまっています。 2.OPアンプの入力抵抗値と、出力抵抗値はいくつでしょうか? RIN+とRIN-で入力抵抗値が違うとデータシートに記載されていますが、 RIN+とRIN-で入力抵抗値が違うと、参考書などに出てくる差動増幅回路のようにVo=R2/R1(V2-V1)の動作にならないような気がするのですが。。。 3.このデータシートに出てくる「Rl」と「Tr」 とはどういった意味なのでしょうか? 4.この手のデータシートに記載されている DC ELECTRICAL CHARACTERISTICS(DCの電気特性)と AC ELECTRICAL CHARACTERISTICS(ACの電気特性)とはOPアンプの 電源にDCとACを用いた場合の振る舞い方を示したものなのでしょうか? ながながとど素人的な質問で申し訳ございません。 このデータシートを理解できず2日間悩んでいます。。。 どうかご回答よろしくお願いいたします。 OPアンプ MAX4225のデータシート http://japan.maxim-ic.com/quick_view2.cfm/qv_pk/1718/t/do#%E3%83%87%E3%83%BC%E3%82%BF%E3%82%B7%E3%83%BC%E3%83%88

  • RS232Cの分岐?

    パソコンA (WindowsNT)に RS232C ケーブルで接続しているパソコン出力リレー(12V回転灯を動かす)を、 パソコンB (WindowsXPーPRO)からも動作させる事は出来ますでしょうか? 思い当たったのは、RS232Cを分岐知ればいいのかなと、素人判断でしたが、 分岐が出来るかも、仮に分岐したとして認識することが出来るかも手法がまったく判りません。 このように、PC-AにRS232Cで接続されている物を、 PC-Bで使うことは出来るのでしょうか?