reComputer R1000でBACnet MS/TPを使用する
この文書は AI によって翻訳されています。内容に不正確な点や改善すべき点がございましたら、文書下部のコメント欄または以下の Issue ページにてご報告ください。
https://github.com/Seeed-Studio/wiki-documents/issues
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 MS/TP通信機能をテストする手順
ステップ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メッセージを確認します。シミュレートしたデバイスがトークンを渡していることが確認できます。私のバスには他のデバイスがないため、トークンを渡し続けています。

技術サポートと製品に関する議論
弊社製品をお選びいただきありがとうございます!弊社では、製品の使用体験をスムーズにするために、さまざまなサポートを提供しています。異なる好みやニーズに対応するため、いくつかのコミュニケーションチャネルを用意しています。