volttron読み取りBACnetはメッセージバスを指します
2つの温度センサーを備えたMSTPBACnetコントローラーを備えたテストベンチにラズパイをセットアップしています。これらのセンサーの読み取り値を継続的に読み取り、VOLTTRONメッセージバスに公開するにはどうすればよいですか?
RPi->イーサネット->ルーター-> mstpdevice
piターミナルでVOLTTRONログファイルを表示する方法の最初のステップが欠けていると思います。SSHを介してpiターミナルとVOLTTRON.log / messageバスのテールを表示することは可能ですか?
ボルトトロンをセットアップしてpiで実行しています。実行するとpython3 bacnet_scan.py
、BACnetルーターとMSTPコントローラーと温度センサーが表示されます。
Device Address = <Address 192.168.0.190>
Device Id = 0
maxAPDULengthAccepted = 1476
segmentationSupported = noSegmentation
vendorID = 245
Device Address = <RemoteStation 12345:2>
Device Id = 201201
maxAPDULengthAccepted = 286
segmentationSupported = noSegmentation
vendorID = 11
、ランニングpython3 grab_bacnet_config.py 201201 --driver-out-file uhl.csv
を通してnano
私は、このファイルを見ることができます:
{
"driver_config": {
"device_address": "12345:2",
"device_id": 201201
},
"driver_type": "bacnet",
"registry_config": "config://registry_configs/<stdout>"
}
analogInput 1
およびのメッセージバスでセンサーの読み取り値(BACnetの読み取り値を継続)を表示することは可能analogInput 2
ですか?
ありがとうございました!
編集
このyouTUBEビデオを見てください!
回答
VOLTTRONでのBACnet通信には、他のいくつかのドライバーに対して少なくとも1つの追加ステップがあります。これは、BACnetプロキシエージェントを構成してインストールすることです。ドキュメントを読むことをお勧めしますが、他のエージェントと同じようにインストールできます。多くの場合、変更する必要がある唯一の値はアドレスです。これは、プロキシによって作成されたBACnet仮想デバイスのアドレスです。バインドする必要があります(多くの場合、デフォルトのBACnetポートを持つローカルIP)。
さらに、VOLTTRONのドライバーには、ドライバー構成とレジストリ構成の2つの構成ファイルが必要です。上で作成した「uhl.csv」(実際にはJSONファイル)は、マスタードライバーにドライバーの制御方法を指示するドライバー構成です。レジストリ設定はCSV(実際にはCSV)であり、デバイスの読み取り方法をドライバーに指示します(詳細はこちら)。ドライバ構成を作成したのと同じユーティリティスクリプトを使用して、両方の構成を作成できます。
python3 grab_bacnet_config.py 201201 --driver-out-file uhl.json --registry-out-file uhl.csv
両方のファイルが作成されたら、VOLTTRON-Controlのconfig storeサブコマンドを使用してconfig storeにロードする必要があります(このガイドでは、偽のドライバーの手順を示しています。手順は同じです。ドライバーの詳細は異なります)。
SSHと環境の表示に関して、SSH(Secure Shell)は単一のシェルインスタンスに接続します。単一のSSH接続で複数のシェルを持つことができるtmuxなどのユーティリティがありますが、tmuxの使用方法を学ぶ代わりに、通常は複数のSSH接続を作成します(他のオプションもある可能性があります、これは私自身のものです方法)。