DC電源ラインを介した通信信号の注入


22

電源線のみを使用して複数のデバイスをデイジーチェーン接続し、その後、電力線を介して通信信号を注入し、半二重ネットワークに変換したいと考えています。

これを達成する一般的な方法はありますか?シンプルであるほど良いので、マイクロコントローラでUARTを使用した方がいいでしょう。

編集:実際に私が取り組んでいる2つのプロジェクトがありますが、この恩恵を受けると思います-1つは低電力センサーネットワークです。もう1つは、LED照明プロジェクトです。どちらの場合も、目的は配線を簡素化することですが、ソリューションが複雑すぎる場合は、おそらく3本のワイヤ(pwr、gnd、comms)を使用する方が理にかなっています。


1
ACまたはDC電源?電源電圧はいくらですか?
mjh2007

3
いくつかの回答で言及されているコンデンサ+インダクタの配列には、バイアスTという名前が付いています。
-davidcary

回答:


15

ダラス1-Wireプロトコルを検討しましたか?それは本当に低速であり、デバイスの電流が比較的少ない場合は、寄生電力を使用してデータラインでデバイスに電力を供給できます。


それに感謝します-1-Wireはかなり人気があり、低電力センサーネットワークに適しているようです。
ピーターギブソン

2
こんにちはピーター、具体的にはUARTを要求したからです。UARTを1線バスマスターとして使用するための格言アプリノートを見つけることができました。(maxim-ic.com/app-notes/index.mvp/id/214を参照)。
テリーチェン

11

基本的に、AC信号をDC電力線にプッシュし、再び分離する必要があります。これは、テレビアンテナを備えた家庭では一般的です。電力増幅器はアンテナの近くに配置され、DC信号はアンテナ線に押し上げられ、テレビ信号はアンテナ線に送られます。

回路例の詳細は十分に説明していませんが、基本は次のとおりです。

電源には、出力に接続するインダクタを直列に接続して、電源に供給される高周波信号をブロックし、場合によってはレギュレーションの問題を引き起こす必要があります。

各ユニットの電源入力は、AC信号を除去するためにインダクタで同様に保護する必要があります。それをダイオードとコンデンサに供給すると、AC信号がモジュールの電源を危険にさらさないようになります。

インダクタの前に、コンデンサも取り付けます。おそらく、ライン上のほとんどのAC信号がコンデンサを通過するように低い値になりますが、DCは通過しません。

このコンデンサMIGHTの出力は、現在切断されているデータをオフラインで読み取るために必要なソフトウェアを実装するスキルを持っている場合、マイクロコントローラ(ダイオードクランプ付き)で直接使用できます。同様に、I / Oピンでコンデンサにパルスを直接送信できます。

スコープでどのように見えるかを確認してください-コンデンサに入る方形波は、電力線の減衰スパイクのように見えます。ネットワーク上の別のコンデンサが出ると、さらに変更されます-回線上のスパイクです。

これらのスパイクを読み取ることは困難であり、ノイズを除去することは困難な場合があります。そのため、長いラインを実行している場合、ノイズの多い電源がある場合、または他のノイズ源の近くでラインを実行する場合は、重要な信号処理を実装する必要があります。通常、これは、データスライサー、コンパレータ、トーンジェネレーター、検出器などを使用して、ライン上でAM(ASK-振幅シフトキーイング)またはFM(FSK-周波数シフトキーイング)の形式をとります。

大変な作業のように思えるかもしれませんが、受信側の単純なパルス検出器から始めて、送信時に方形波を送信します。オシロスコープを使用して、何が起こっているのかを理解してください。さらに複雑なソリューションが必要な場合は、ASKまたはFSKの検出について再度お問い合わせください。

パルス検出器は、入力ピンの変更時の単純なソフトウェア割り込み、またはパルスストレッチャーとして設定された555です。


私はここでadamに同意します。ただし、すべての通信はFMで行われるべきであり、信号をほぼ完全に戻すための本当に素晴らしいフィルターを構築できると信じています。彼はこれについて言及しましたが、適切なフィルターとFM変調によってノイズの多い信号が再び美しくなる可能性があることを明確にするために、メモを追加すると思いました。
コルトゥク

1
FMはAMや他の多くの単純な変調方式よりもはるかに優れていますが、ハードウェアやソフトウェアの点でわずかにコストが高くなり、信号品質が良好な場合は過剰になる可能性があります。
アダムデイビス

7

列車制御システム(もちろん、鉄道模型)用にこのようなものを作成しました。

これは、単方向の低速プロトコル(単一のエンティティがデータを送信し、他のすべてはレシーバーのみ)であり、伝送は単純にレールの極性を反転させることによって行われました。

すべての「クライアント」には、写真(16C54、数年前!)、整流器、およびアドレスを設定するためのディップスイッチで簡単な回路がありました。

私はもうソースコードを持っていませんが、システムは本当に簡単で、何年も問題なく動作し、追加のワイヤなしでメインコントロールパネルからすべての機関車、ライロードバリア、セマフォなどを簡単に制御できました。


アックスマン、私は言うことは何もありませんが、あなたは私に感銘を与えました。その解決策は私を笑わせます。
Kortuk

Kortuk、あなたが「笑う」ことは「親指」を意味することを願っています(私はイタリア人で、英語ではあまり強くありません:-))とにかく、私の「発明」の数年前に完成)モデル鉄道工場の設計、標準化、実装(同じ方法で)DCC:デジタルコマンドコントロール、同じ目的で: en.wikipedia.org/wiki/Digital_Command_Control
Axeman

5

DCオフセットを追加および削除する信号として考えることをお勧めします。コンデンサを回路と直列に配置することにより、DCをブロックすることができます。

それ以外は、アプリケーションに依存するため、何をする必要があるかを言うのは困難です。オペアンプを使用して、信号を受信して​​いるものからカップリングコンデンサを分離する必要がある場合があります。DCオフセット電圧が信号電圧に比べて大きい場合、リップルを除去するために電力調整を行う必要さえないかもしれませんが、これはすべてアプリケーションによって異なります。

この同じ手法を使用して、セカンダリスピーカーの電源LEDを点灯させるスピーカーが2つあります。ボリュームを十分に大きくすると、LEDが明るくなることに気付くことができます。この特定のアプリケーションでは、どのタイプのRCフィルターが作成されるのかを心配する必要があります。


12V電源に結合された高周波数信号でRS232を変調しようと考えました-リップルを滑らかにしようとしないようにPSUの容量を分離することが重要だと思いますか?
ピーターギブソン

4

私はこれがかなり古いスレッドであることを知っていますが、ここに私の2ペンスの価値があります...

まだ何も機能していませんが、Arduino + VirtualWire(非常に低いボーレートに設定)を使用して同様のことをしようとしていました。Adam Davisが上記のように言っているように、値の小さいコンデンサを介して12Vラインからデータを送受信します。つまり、スパイクがほとんどない状態で本質的に0Vを取得し、VirtualWireが(おそらく)デコードできます。この方法の良い点は、理論上、12Vライン上のすべてのデバイスが通信でき、どのデバイスでも受信できることです。私はこれをブレッドボード上の2つのデバイス間の通常のビット線で動作させましたが、それが距離を超えて機能するか、実際の電力線を介して機能するかはわかりません。

伝送が常に同じ場所から行われている場合は、おそらくHornby方式のようなものを使用する方が良い場合があります。トランスミッターに+ 12Vと-12Vの間で電力線を切り替えて信号を作成します。各レシーバーには、電力線への接続に整流器があるため、常に+ 12Vの電源が供給されます。おそらく単純に+ 12Vをパルスし、各デバイスに大きなコンデンサを使用してバンプを滑らかにすることができます。これらの方法のいずれかは、電力線上の信号がはるかに強く、したがってデコードが容易であるため、おそらくより信頼性が高くなります(VirtualWireを使用して気にしていますが、UARTも機能する可能性があります)。

LED照明プロジェクトの場合、12Vラインの下に数個のアンプをシフトしなければならない可能性が十分にあります。そのため、切り替えが少し難しくなりますので、RF-over-capacitor方式の方が良いかもしれません。ただし、受信するスパイクの高さは電流が大きくなると大幅に低下するため、ラインに書き込む信号を増幅する必要がある場合があります(たとえば、TTL信号を12Vに「増幅」する前に高周波トランジスタまたは2つを使用する必要があります)コンデンサを介して12Vラインに押し込みます)。

いずれにせよ、VirtualWireのようなものは、ほとんど常にUART(およびおそらくI2Cなど)よりもうまく機能します。その理由は、位相ロックループを使用して送信と受信を同時に「同期」するためです。つまり、信号対雑音比が高くなり、エラーが少なくなります。これにより、完璧ではないハードウェアをもう少し寛容にできるはずです;-)


2

アドバイスをする前に質問できることがたくさんあります。私たちが理解しようとする最初のことは、ここでの目標は何ですか?低構築コスト、長時間の通信により、配線、概念実証などを節約できます。それらにはすべて異なる推奨事項があります。たとえば、コストを心配していない場合は、Zigbeeソリューションを使用するか、長時間実行する場合、ほとんどの単一ワイヤ伝送で問題が発生するため、他のオプションを検討する必要があります。あなたの質問について私が一番心配しているのは、あなたが「単純であるほど良い」と言うことだと思います。あなたが求めていることは状況によっては可能ですが、私はそれが簡単ではないと言うことを敢えてします。主に、信号損失、ノイズ、電流管理など、実際に発生する問題が原因です。

幸運を祈ります。


おかげで-私はトラックに遭遇する可能性のある潜在的な問題を聞いて良いです。上記の投稿で私のニーズを少し明確にしようとしました。
ピーターギブソン

2

何らかのUSBソリューションが機能しないことは確かですか?約2〜2.5Wを使用できます。

他にもいくつかのアイデアがあります-

Power over Ethernet(POE)は、電力とイーサネット信号を統合します。これらのデバイス用に設計されたさまざまな半導体およびDC / DCコンバーターがあります。これには市販の部品があるため、おそらくこれが最良のオプションです。

一部のホームオートメーション企業は、AC電源と通信信号を統合していると思います。たぶんその一部は適応可能です。

オーディオの人々は、マイクの「ファントム」パワーを持っています。48VDCとマイクケーブル経由のオーディオ。


1
USBから電力を引き出す際には注意が必要です。デバイスを初めてUSBポートに接続すると、5v = 0.5Wで100mAが許可されます。デバイスは追加の電力を要求し、5v = 2.5Wで500mAを取得できます。また、最初に接続するときにデバイスが大きく引っ張られないようにする必要があります。ウィキペディアでは、USB電源について、en.wikipedia.org
wiki / Universal_Serial_Bus#

Kellenjb、列挙はより多くの電力を要求することとまったく同じではありません。私はあなたがインテリジェントなデバイスであることを検証するものと考えたいです。また、ほとんどの人は、デバイスを他の誰かに提供している場合、それが電源の入っていないハブに接続され、状況に関係なく最大100mAのプルが発生することを忘れています。
Kortuk

1

X-10プロトコルは、まさにこれを行います。

また、上記の提案のいくつかは安全ではないか、承認された(UL / CEマーク)デバイスでは使用できません。


1
「電源線」は低電圧線を意味すると思います。それらがAC電源線である場合、はい、他のほとんどの答えはこれを考慮しないと不適切です。
アダムデイビス

2
X10は設計上AC電源ラインを想定しており、特定の調整された変圧器が必要です。質問の「単純な方が良い」部分に当てはまるとは思わないでください:-)
Axeman

0

UARTバイトを取得し、最大115.2Kbpsの速度で電力線を介して転送する専用の半導体があります。このデバイスは自動車用に設計されているため、ノイズに強いです。http://yamar.com/product/sig60/をご覧ください



-2

電話システムで行われます。電話でご存知のように、2線式システムには電源とダイヤルトーンと音声があります。トーン(通常の電話のトーンダイヤルなど)を生成することにより、電力線を介してコマンドを送信できます。このアプリケーションの集積回路(Ic)は一般的に使用されるため、非常に安価です。

イランの大規模な工場の水バルブ(最大99バルブ)を制御するために、このようなプロジェクトを行いました。役に立つと思われる場合は、コーダーデコーダー回路のブロック図を追加できます。


2
これは質問に答えません。
ヌル14年

Saeed、古い質問(2010)に答えるとき、特に他の良い答えが既にあるので、重要な貢献をするのが習慣です。また、ここで閲覧する人には答えが役立つはずなので、個人的な情報交換を提案しないでください。
クラバッキオ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.