Skip to main content

アーキテクチャ、コンポーネント、およびそれらのタスク

CODESYS BACnet2 SL そして CODESYS BACnet(1) SL それぞれに 3 つの IEC ライブラリが含まれています。

  • CmpBACnetCmpBACnet2

  • BACnetBACnet2

  • BACnetDefaultImplBACnet2DefaultImpl2

(注: 以下の説明は、ライブラリの両方の「バリアント」に適用されます。)

パッケージには以下も含まれます BACnet のプラグイン CODESYS 開発環境。ライブラリのバージョンと一貫性チェックを実行します。 BACnet オブジェクト ID を提供するだけでなく、EDE エクスポート/インポートも提供します。

BACnet スタック (BACstack) は、のオプションのコンポーネントです。 CODESYS ランタイム (CmpBACnet 成分)。

CmpBACnet IEC ライブラリは、 BACnet に積み重ねる CODESYS IEC環境を提供し、 BACnet データ型だけでなく、 BACstack 方法。 IEC ライブラリの唯一の使用 CmpBACnet (なしで BACnet そして BACnetDefaultImpl ライブラリ)を作成すると、IEC アプリケーション コードが複雑で長くなる可能性があります。

詳細については、以下を参照してください。 BACnet ライブラリまたは CmpBACnet ライブラリを使用する場合

BACnet ライブラリは簡素化します BACnet を単独で使用する場合に比べて、アプリケーション開発が大幅に短縮されます。 CmpBACnet、特に次の分野で。

  • の開始と停止 BACnet スタック

  • 使用する BACnet サーバーオブジェクトとそのプロパティ

  • 非同期リクエスト (主に「クライアント サービス リクエスト」) のトリガーと「リクエスト トランザクション」の処理

  • からの「コールバック」の処理 BACnet スタック (参照 IBACnetEventConsumer) およびアプリケーション内の複数の受信者に「コールバック」を分散します。

さらに、 BACnet ライブラリはプラグインメカニズムを提供します(BACnetServerPlugin) の特定の側面を拡張するため BACnet 図書館。 BACnetServerPlugin の基礎となっています BACnetDefaultImpl 図書館。

BACnetDefaultImpl ライブラリは、さらに単純化するために使用されます。 BACnet アプリケーション開発。の BACnet 標準 ASHRAE 135 では、実際の使用に関するいくつかの側面が残されています。 BACnet 開ける。最も注目すべき例には次のようなものがあります。

  • サーバーオブジェクトの永続化

  • の保存と永続化 Trend LogTrend Log Multiple、 そして Event Log エントリ

  • デバイスオブジェクトの日時情報の更新

CODESYS これらの側面の実装は、必然的に PLC とアプリケーションに関するいくつかの仮定に基づいています。たとえば、次のとおりです。

  • PLCにはファイルシステムがあります。

  • PLC ファイル システムには、データ量、速度、書き込みサイクル数に関して過度に厳しい制限はありません。

これらの前提により、そのような実装を永続的に BACnet これにより、他のユースケースの実装や他の制約への準拠が妨げられるためです。

BACnetDefaultImpl library は、この種の「デフォルト実装」の場所です。最良の場合、仮定が正しければ、これらの標準実装を簡単に使用できます。仮定が当てはまらない場合は、特定の側面の標準実装を、PLC/アプリケーション固有の実装の例および基礎として非常によく使用できます。

このため、 BACnetDefaultImpl ライブラリは、コンパイルされたライブラリとソース コード ライブラリの両方として提供されます。