RFモジュールの使用

デバイス間で、ワイヤレス接続を確立する必要がある場合があります。 最近、この目的のために、BluetoothおよびWi-Fiモジュールの使用が増えています。 しかし、ビデオと膨大なファイルを転送することと、10チームのマシンまたはロボットを制御することです。 一方、無線のアマチュアは、受信機と送信機を作成、調整、改造して、コマンドの既製の暗号化/復号化器で動作することがよくあります。 どちらの場合も、かなり安価なRFモジュールを使用できます。 彼らの仕事とカットの下での使用の特徴。



モジュールの種類



データ伝送用のRFモジュールはVHF帯域で動作し、433 MHz、868 MHz、または2.4 GHzの標準周波数(315 MHz、450 MHz、490 MHz、915 MHzなど)を使用します。キャリア周波数が高いほど、情報を高速に送信できます。

原則として、製造されたRFモジュールは、あらゆるデータ転送プロトコルで動作するように設計されています。 ほとんどの場合、UART(RS-232)またはSPIです。 通常、UARTモジュールは安価であり、非標準(ユーザー)転送プロトコルを使用することもできます。 最初は、 このようなものをリベットすることを考えましたが、無線制御装置の製造での苦い経験を​​思い出して、かなり安価なHM-T868とHM-R868を選択しました(60 UAH = 8ドル以下) モデルHM- * 315およびHM- * 433もあります。これらは、以下で説明するものとは、搬送周波数(それぞれ315 MHzおよび433 MHz)のみが異なります。 さらに、作業方法が似ている他の多くのモジュールがあるため、この情報は他のモジュールの所有者に役立つ場合があります。



送信機



ほとんどすべてのRFモジュールは、電力、データ伝送、制御信号を接続するための接点を備えた小さなプリント基板です。 送信機(送信機)HM-T868を検討してください 画像

GND(一般)、DATA(データ)、VCC(+電源)、およびアンテナをはんだ付けするためのパッチ(8.5 cm-1/4波長でMGTFワイヤのコアを使用)の3ピンコネクタがあります。



受信機



外部の受信機HM-R868は、対応する送信機と非常によく似ています

画像

しかし、そのコネクタに4番目のピンがあります。有効にすると、電源が供給されると、レシーバーが動作し始めます。



仕事



ドキュメントによると、動作電圧は2.5〜5Vで、電圧が高いほど範囲が広くなります。 実際、これは無線拡張です。電圧がDATAトランスミッタの入力に印加されると、電圧はDATAレシーバの出力にも現れます(電圧がENABLEにも印加される場合)。 しかし、いくつかのニュアンスがあります。 最初:データ転送頻度(この場合、600-4800 bps)。 第二に、データ入力に70ms以上の信号がない場合、トランスミッターはスリープモードになります(基本的にオフになります)。 第三に、受信機の受信ゾーンに有効な送信機がない場合、出力にノイズが現れます。



ちょっとした実験を行ってみましょう。送信機のGNDピンとVCCピンに電源を接続します。 ボタンまたはジャンパを介してDATA出力をVCCに接続します。 また、電源をレシーバのGNDおよびVCC端子に接続し、ENABLEとVCCを互いに閉じます。 LEDをDATA出力に接続します(抵抗を介して非常に望ましい)。 適切な1/4波長のワイヤをアンテナとして使用します。 次の図を取得する必要があります。



レシーバーの電源をオンにしたり、ENABLEをオンにした直後に、LEDが点灯し、連続的に(十分に、またはほぼ連続的に)点灯します。 送信機のボタンを押した後、LEDでも何も起こりません-さらに点灯し続けます。 ボタンを放すと、LEDが点滅し(消灯してから再び点灯します)、点灯し続けます。 もう一度ボタンを押して放すと、すべてが繰り返されます。 そこで何が起こっていましたか? 受信機がオンになったとき、送信機はスリープ状態にあり、受信機は通常の信号を見つけられず、ノイズを受信し始め、出力にあらゆる種類の信号が現れました。 目で連続信号とノイズを区別するのは非現実的であり、LEDが連続的に点灯しているようです。 ボタンを押すと、送信機は休止状態から抜け出て送信を開始し、受信機の出力に論理「1」が表示され、LEDはすでに連続点灯しています。 ボタンを離すと、トランスミッターは論理的な「0」を送信します。これはレシーバーによって受信され、「0」もその出力に表示されます-LEDは最終的にオフになります。 しかし、70ms後、トランスミッタは入力に同じ「0」がまだあることを認識してスリープ状態になり、キャリア周波数ジェネレータがオフになり、レシーバがあらゆる種類のノイズ、出力ノイズの受信を開始します-LEDが再び点灯します。



上記から、トランスミッタ入力の信号が70ms未満の間存在せず、正しい周波数範囲にある場合、モジュールは通常のワイヤのように動作します(干渉やその他の信号にはまだ注意を払っていません)。



パッケージ形式



このタイプのRFモジュールは、MAX232を介してハードウェアUARTまたはコンピューターに直接接続できますが、その機能を考えると、プログラムで説明されている特別なプロトコルを使用することをお勧めします。 目的のために、次のタイプのパケットを使用します:スタートビット、情報バイト、制御バイト(または複数)、ストップビット。 最初の開始ビットを長くすることをお勧めします。これにより、トランスミッターが起動し、レシーバーがそれに同調し、受信側のマイクロコントローラー(またはユーザーが持っているもの)が受信を開始する時間が与えられます。 次に、「01010」のように、レシーバの出力にある場合、これはほとんどの場合ノイズではありません。 次に、識別バイトを挿入できます。これにより、パケットの宛先のデバイスを理解しやすくなり、ノイズが発生する可能性が高くなります。 この時点まで、別々のビットで情報を読み取って確認することをお勧めします。少なくとも1つが正しくない場合は、受信を完了して、再びエーテルのリッスンを開始します。 さらに、送信された情報はすぐにバイト単位で読み取り、適切なレジスタ/変数に書き込むことができます。 受信の最後に、結果が制御バイトに等しい場合、制御式を実行します。受信した情報を使用して必要なアクションを実行します。そうでない場合は、ブロードキャストを再度聴きます。 制御式として、送信される情報があまりない場合はチェックサムを取るか、プログラミングが苦手です。送信されるバイトが変数となる算術式を単純に計算できます。 ただし、結果は整数であり、制御バイト数に収まる必要があることを考慮する必要があります。 したがって、算術演算の代わりにビット単位の論理演算を使用することをお勧めします:AND、OR、NOT、および特にXOR。 可能であれば、無線は非常に汚いものであるため、特に今では電子機器の世界では制御バイトを作成する必要があります。 デバイス自体が干渉を引き起こす場合があります。 たとえば、受信機から10cm離れた46kHz PWMのボード上のトラックが、実際に受信を妨害しています。 そしてこれは、RFモジュールが現在他のデバイスが動作できる標準周波数を使用していることは言うまでもありません:トランシーバー、アラーム、無線制御、テレメトリーなど。



他に何が読めますか



HM-TおよびHM-R-製造元のWebサイトの説明とドキュメント。

1、2 、および3-興味深い記事と観察(多くの有用なものがコメントにあります)。



All Articles