reComputer R1000でbacnet MS/TPを使用する
はじめに
BACnet MS/TP(Master-Slave/Token Passing)は、ビルディングオートメーションおよび制御ネットワーク用の通信プロトコルです。これはBACnet(Building Automation and Control Networks)プロトコルスイートの一部です。MS/TPは通常RS-485物理層とバストポロジを使用します。すべてのデバイスは同じツイストペアケーブルに接続されます。MS/TPネットワークにはマスターステーションとスレーブステーションがあります。マスターはトークンの生成と配信を担当し、スレーブは要求を受信したときのみ応答します。マスターデバイスはトークンを渡すことで、どのデバイスがデータを送信できるかを決定します。トークンパッシングメカニズムにより、バス上の通信が秩序正しく、競合のないものになることが保証されます。
この記事では、reComputer R1000でbacnet MS/TPプロトコルの機能テストを実行する方法を主に紹介します。reComputer R1000でbacnet MS/TPサーバーをシミュレートし、その後W10 PC上のYABEを使用してデバイスが存在するかどうかを確認しました。シミュレートしたデバイスが正常に見つかれば、bacnet MS/TP通信が正常であることを意味します。
はじめに
このプロジェクトを開始する前に、ここで説明されているように、ハードウェアとソフトウェアを事前に準備する必要があります。
ハードウェアの準備
reComputer R1000 |
---|
![]() |
ソフトウェア
- bacnet MS/TPはRS485物理層を使用するため、reComputer R1000 V1.0でRS485機能を正常に使用する方法については、このwikiを参照してください。
bacnet-stack
ライブラリアプリケーションの助けを借りてサーバーをシミュレートするため、以下のコマンドを入力してダウンロードする必要があります:git clone https://github.com/bacnet-stack/bacnet-stack.git
cd bacnet-stack- このリンクにアクセスして、YABE(Yet Another BACnet Explorer)をダウンロードしてください。
- このリンクにアクセスして、wiresharkをダウンロードしてください。
ハードウェア構成
このテストでは、RS485からUSBモジュールを使用してreComputer R1000とW10 PCを接続します。

bacnet mstp通信機能をテストする手順
ステップ1: bacnet-stack
をダウンロードします。

ステップ2: bacnet-stack
のデフォルトシリアルポート番号は/dev/ttyUSB0
です。実際に使用するポート番号がそれでない場合、通信ができないため、ポート番号を変更する必要があります。変更が必要なファイル名はports/linux/rs485.c
です。これを使用する必要があるポート番号に変更してください。私は/dev/ttyAMA30
に変更しました。

ステップ3: 以下の指示を入力してコンパイルします。コンパイル結果はbinディレクトリで確認できます。
make clean
make mstp
# wait
cd bin/

ステップ4: bacserv
を実行し、YABE
を使用してシミュレートされたデバイスを検索します。シミュレートしたデバイスが正常に検索されたことがわかります。

ステップ5: wiresharkを使用してbacnet MS/TPメッセージを表示します。シミュレートしたデバイスがトークンを渡していることがわかります。私のバス上に他のデバイスがないため、トークンを渡し続けています。

技術サポートと製品ディスカッション
私たちの製品をお選びいただき、ありがとうございます!私たちの製品での体験ができるだけスムーズになるよう、さまざまなサポートを提供しています。さまざまな好みやニーズに対応するため、複数のコミュニケーションチャネルを提供しています。