Powerlinkプロトコルの使用法を最小限に抑えたチュートリアル

インターネット上には Powerlink プロトコルに関する知識が少なすぎ、あまりにも分散および断片化されているため、人々は簡単にこのプロトコルに飛び込み、混乱してしまいます。初心者はデモのソースコードを見ても、何が目的なのかわからないかもしれません。実際、Powerlink プロトコルの使用は、特に Canopen プロトコルの使用経験がある人にとっては非常に簡単です。ここでは、Powerlink プロトコル全体の使用の概要を説明します。Powerlink のエコロジーの改善に参加するために、より関心のあるパートナーと共有してください。以下の内容は継続的に改善・補足し、不定期に更新していきます。

以下では、Powerlink とは何か、その利点は何か、何に使用できるか、どのように使用するかなど、グローバルな視点から見て把握するために説明します。初心者が回り道を避け、Powerlink プロトコルをより早く理解して使用できるようにします。

Powerlink の概要

POWERLINK は 2001 年に B&R によって初めて開発および発売され、初期の知的財産権は B&R に属していました。シーメンスと同様に、B&R は完全な製品システムを備えており、当初の目的はシーメンスと同様にハードウェアおよびソフトウェアのソリューションの完全なセットを提供することでした。唯一の問題は、製品の顧客ベースがシーメンスほど広範囲ではないことです。その後、「局」therCat が登場したため、POVERLTNK は独占を失い、閉鎖的な基盤を失いました。そこでB&Rは2009年にPOWERLINKの特許と知的財産権を放棄したため、POWERLINKはLinuxと同様のオープンソース技術となった。

これは効率的な産業用イーサネット フィールドバス プロトコルです。Powerlinkは、標準のイーサネットデータリンク層を変更してCSMA/CDメカニズムを無効にするだけで、マスターステーションがネットワーク上のデータ送受信プロセスを完全に制御することで、厳密な時間特性を確保し、リアルタイム通信機能を実現します。Powerlink のソフトウェア実装では、従来のオペレーティング システムのネットワーク ドライバのみが変更され、割り込みベースのネットワーク IO プロセスが削除され、ネットワーク カードの初期化と送受信機能のみが保持されます。マスタ局のネットワークデータの送信は高精度クロックをトリガとして、スレーブ局との間で定期的にIO動作を行います。通常、マスタ・スレーブ局はマスタ局の形式をそのまま利用してスレーブ局にポーリングしてリアルタイム同期データを送信し、リアルタイム性を必要としない通常のデータはサイクルの後半に送信する。
Powerlink プロトコルは非常にオープンで、openPowerlink を実装するためのオープン ソース ソフトウェアと FPGA が含まれています。また、ネットワーク全体を構成するオープン ソースの OpenConfigurator ソフトウェアがあり、コード開発作業の一部を節約でき、ネットワークが停止したときにネットワーク全体を再構成できます。ネットワークが実行されています。
Powerlinkプロトコルはアプリケーション層でCanOpenプロトコルを使用し、ユーザープログラミングは基本的にオブジェクトディクショナリ、PDO(プロセスデータオブジェクト)とSDO(サービスデータオブジェクト)、およびそれらのマッピング関係の定義です。オブジェクトは、8 ビット入力データ、32 ビット長の整数データ、文字列、時間、温度などのデバイス上のデータ単位に対応します。データ オブジェクトのセットはオブジェクト ディクショナリを構成します。PDO は同期リアルタイム データ オブジェクトであり、SDO は非同期で非リアルタイムです。CanOpen はいくつかの産業オートメーション機器の仕様を定義しており、特定のタイプの機器がサポートする必要があるデータ タイプ、インデックス、およびサブインデックスを詳細に説明します。一般に、Powerlink デバイスの開発では、CanOpen デバイスの開発と同じ方法で仕様の定義を実装する必要があります。

パワーリンクの原理

Powerlinkネットワークパケットの送信で競合を回避し、帯域幅の使用を最大化するために、デバイス間のデータ交換はタイムスロットに基づいています。Powerlink ネットワーク内のデバイスは管理ノード (MN) と呼ばれ、通信機能を制御し、すべてのノードの同期クロック パルスを定義し、各スレーブ デバイスに送信権を割り当てます。残りのノードはスレーブ制御ノード (CN) と呼ばれます。

パワーリンク サイクルは 4 つの期間に分割されます (図)。

ここに画像の説明を挿入

 ノード (MN を含む) が割り当てられていない場合は、タイムアウトを待たずに次の POWERLINK ショート サイクルが開始されます。
アイソクロナス POWERLINK サイクルの非同期フェーズに使用される割り当てメカニズムは、短い POWERLINK サイクルにも適用されます。

POWERLINK のデータ リンク層は POWERLINK の中核であり、主に次の機能が含まれます。

  1. データ フレームの構築と分析、データ フレームの区切り、ネットワーク同期、データ フレームの送受信のシーケンスを制御します。

  2. フロー制御、エラー検出、および送信中の物理層での生データのデータ カプセル化。

  3. リアルタイム通信のためのトランスポート制御。

  4. ネットワーク ステート マシン。

POWERLINK ネットワークでは、少なくとも 1 つのデバイスがマスター ステーション (MN) として機能し、他のデバイスがスレーブ ステーション (CN) として機能します。

各スレーブ デバイスには、ネットワーク内のデバイスを区別するために使用される一意のノード番号 (NodeId) があり、値の範囲は 1 ~ 239 です。親局装置(MN)のノード番号は240です。親局の役割は、各子局を調整し、バス使用権を合理的に割り当て、競合を回避し、リアルタイム通信を実現することです。
POWERLINK のリアルタイム通信メカニズム: POWERLINK には、リクエスト/レスポンス モードとタイミング アクティブ レポート モード (PRC モード) に基づく 2 つの通信メカニズムがあります。

ハブを使用すると、任意のトポロジを実装できます。一度に 1 つのデバイスだけが送信し、衝突が発生しないため、ハブの数は制限されなくなりました。設計の観点から見ると、PowerLink デバイスにすでに統合された 2 ポート ハブ ライン構造があり、アプリケーション インターフェイスにイーサネットを簡単に実装できるため、これは明らかな利点です。powerlink V2 は、canopen 通信プロトコル DS301 CAN 定義の自動化メカニズム (EN50325-4) に基づいています。これにより、powerlink、canopen 用にすぐに使用できる幅広いデバイスおよびアプリケーション プロファイルが開かれ、powerlink システム間の通信サービスの継続が可能になり、canopen からイーサネット powerlink へのソフトウェア レベルでの移行が容易になります。

パワーリンクの利点

1. オープンソースは無料で、オープンソースの C コードであろうと VHDL 実装コードであろうと、研究、研究、商用アプリケーションに利用できます。

2. ソリューションは柔軟です リアルタイム要件がミリ秒レベルでそれほど高くない場合には、完全なソフトウェア ソリューションで十分です。微妙なレベルが必要な場合には、代替可能な FPGA ソリューションがあります。

3. 性能が非常に高く、FPGAとギガビットネットワークカードを使用するとサイクルタイム9usを実現します。

4. CANopen の実装 (CANopen は、アプリケーションに統一インターフェイスを提供するアプリケーション層プロトコルであり、異なるデバイスやアプリケーション間で統一されたアクセス方法が存在します)。

5. 中国では高い評判と技術サポートがあり、いくつかのユニットと組織が協力してエコロジーを構築しています。

6. イノベーションと特許マイニングに貢献します。オープンソースのプロトコルスタックに基づいて、誰でも独自の研究結果を公開できます。現在、PowerLink プロトコルに基づいた論文や発明特許が多数存在します。

7. 成熟したケースがたくさんあります。

Maixin の PowerLink プロトコルに基づく 400us、8 軸サーボ制御システム:

 Can バスや 485 バスなど、さまざまなバス技術がありますが、それぞれに長所と短所もあります。次に、powerlink のいくつかの典型的なアプリケーション シナリオを示します。

openPOWERLINK の概要

openPOWERLINK は、POWERLINK プロトコル スタックのオープン ソース C コード実装です。これは、プラットフォームに依存しない高度にモジュール化されたリアルタイム通信ソリューションです。Linux、Windows、VxWorks、FPGA スレーブ ステーションなど、以前にサポートされていたオペレーティング システム プラットフォームに加えて、新しいバージョン 2.0 のサポート ALETRA と XILINX に加えて、新しいスキームには TI の Sitara チップの実現も含まれています。

openPOWERLINK の詳細な紹介とソース コードは、Sourceforge から入手できます。

オープンパワーリンク :: オープンパワーリンク

開発準備

開発プロセスの概要

子局の開発

親局の開発

デモの使用

スレーブのデモコード

メインステーションのデモコード

テスト検証

コードフロー分析

openCONFIGURATOR ツールの紹介

CANopen プロトコル標準の概要

CIA301 および CIA402 規格について

CANopen プロトコルは CIA (CANopen Protocol International Association) 標準に基づいており、この標準には多くのサブプロトコルが含まれており、最も一般的に使用される 2 つのサブプロトコルは CIA 301 と CIA 402 です。CIA 301 は CANopen プロトコルの基本プロトコルであり、主に CANopen ネットワークの物理層、データリンク層、オブジェクト ディクショナリを定義します。CAN バスのデータ形式、フレーム形式、データ送信、コマンドと応答を定義し、オブジェクト ディクショナリの構造と規則を定義します。すべての CANopen デバイスは CIA 301 標準に準拠する必要があります。CIA 402 は、モーター ドライブと位置制御を制御するための特定の機能を定義するモーション コントロール用のデバイス プリセット プロトコルです。CIA 301 に基づいて、モーション コントロールに関連するいくつかのオブジェクト ディクショナリとオペレーション コードが追加され、モーション コントロール機器に対するいくつかの特別な要件が指定されています。CIA 402 は、速度制御、位置制御、電流制御、その他の制御モードを含むさまざまなドライブおよびアクチュエータの制御方法を定義しており、CANopen プロトコルを幅広いオートメーション制御分野に適用できるようにしています。要約すると、CIA 301 は CANopen プロトコルの基本プロトコルであり、すべての CANopen デバイスが従う必要がある基本ルールを指定します。一方、CIA 402 は CANopen プロトコルの重要なサブプロトコルで、位置制御の特定の機能を定義します。 CANopen プロトコルを幅広いオートメーション制御分野に適用できるようになります。

CIA (CANopen International Association) プロトコル標準に準拠し、ネットワーク内の他のデバイスとの互換性と相互運用性を確保します。これらの標準は、ネットワーク内のさまざまなデバイスで使用される形式、構造、および通信プロトコルを定義し、たとえ製造元が異なっていても、すべてのデバイスが相互に通信できるようにします。データと機能をカスタマイズする場合は、CANopen プロトコルに加えて、デバイスのパラメータ、構成、およびステータス情報を定義するための標準化されたオブジェクト ディクショナリが提供されます。カスタム オブジェクトを辞書に追加して、実現したい機能を定義することもできます。ただし、ネットワークに変更を加える前に、その変更が CIA 標準に違反しておらず、ネットワーク上の他のデバイスの互換性や相互運用性に影響を与えていないことを確認する必要があります。

CANopen プロトコルには、基本的な CiA 301 仕様から始まり、以下の図に示すように、さまざまなタイプの CANopen デバイスに対応するさまざまなサブプロトコルがあります。
1. CiA 301 シリーズ:基本プロトコル
2. CiA 401 シリーズ:IO 機器
3. CiA 402 シリーズ:モーション機器(サーボドライブ、インバータ、ステッピングモータドライブなどを含む)
4. CiA 421 シリーズ:鉄道車両制御システム 車両制御システム
5、CiA 423 シリーズ:ディーゼルエンジン制御システム ディーゼルエンジン制御システム
6、CiA 424 シリーズ:ドア制御システム ドア制御システム
7、CiA 426 シリーズ:車外照明制御システム 車外照明制御システム
8、CiA 430 シリーズ:補機制御システムシステム補機制御システム
9、CiA433シリーズ:室内灯制御システム室内灯制御システム
    

CiA301、CiA401、CiA402、CiA421、CiA423、CiA424、CiA426、CiA430、CiA433、およびその他の多くのサブプロトコルが CANopen プロトコルを構成します。

他のプロトコルについては、「CAN in Automation (CiA): コントローラー エリア ネットワーク (CAN)」を参照することをお勧めします。

CAN 辞書のダウンロード: https://www.can-cia.org/fileadmin/resources/documents/publications/can_dictionary_v9_cn

XDDファイルの紹介

POWERLINK では、XDD ファイルは CANopen デバイス記述ファイル (デバイス記述ファイル) の拡張子であり、POWERLINK デバイスのオブジェクト ディクショナリ構造、パラメータと記述情報、デバイス メーカー情報などを記述するために使用されます。POWERLINK では、通常、XDD ファイルはデバイス メーカーから提供され、開発者はデバイス メーカーからファイルを入手する必要があります。

XDDファイルの作り方

XDD ファイルを作成する手順:

1. オブジェクト ディクショナリの決定: デバイスの仕様または実際の構成に従ってデバイスのオブジェクト ディクショナリを決定し、XDD ファイルに定義します。

2. オブジェクト パラメータの追加: オブジェクト、パラメータ、およびそれらの説明情報をオブジェクト ディクショナリに定義します。パラメータの種類、単位、アクセス権、デフォルト値などを指定できます。

3. デバイスの説明情報を入力します。デバイスのモデル、製造元情報、デバイスのバージョン番号などのデバイスの説明情報を追加します。

4. XML エディタまたは CANopen ツールボックスを使用した編集: 適切なツールを使用して XDD ファイルを編集および作成します。

5. XDD ファイルの検証とテスト: CANopen ツールボックスまたはその他のツールを使用して、XDD ファイルの形式が正しく、エラーがないことを検証およびテストします。

上記は、XDD ファイルを作成するための基本的な手順です。

つまり、XDD ファイルは CANopen デバイス記述ファイルの拡張子であり、POWERLINK でデバイスのオブジェクト ディクショナリ構造、パラメータと記述情報、製造元情報などを記述するために使用されます。

XDD ファイルは通常、デバイスの製造元によって提供されますが、開発者の場合は、手動で作成することも、ツールを使用して簡単に作成することもできます。

XDD ファイルを作成するには、オブジェクト辞書を決定し、パラメータと説明情報を入力し、デバイスの説明情報を追加する必要があります。XDD ファイルは、さまざまな既存の XML エディタ、または検証およびテスト用のツールを備えた CANopen ツールボックスを使用して作成および編集できます。openCONFIGURATOR ツールを使用してプロジェクトを作成すると、ロードされるデフォルトの xdd ファイルが提供され、手動での変更に使用できます。手動で変更するのが面倒な場合は、ツールを使用することもできます。CANopen Magic、CANeds などのサードパーティ ツールを使用して編集できます。これらのツールはすべて CANopen 情報とパラメータ記述をサポートしており、XDD 記述ファイルを簡単に編集および管理できます。 caneds3.6.92 ツールのダウンロード:

XDDファイルを作成するためのツールの紹介

前世代の POWERLINK デバイスの場合、CANopen に基づく EDS ファイルがニーズを満たすことができましたが、XDD が現在の標準化されたファイルになりました。CAN および Ethernet ベースのフィールドバス システムの専門家である port は、XDD ファイルの生成を大幅に容易にする、Windows および Linux オペレーティング システム用に設計された専用の構成ツールを提供できるようになりました。

しかし、どうしようもなく、これらのツールは依然として有料です。その他のツールの紹介:ツールキット 

CAN /CANopen 製品開発プロセスでは、オブジェクト ディクショナリの設定は非常に重要な部分です。ユーザーは、デバイスで考えられる変数と送信タイプを知るために、CANopen プロトコルについて十分な知識を持っている必要があります。また、設計プロセス中に CANopen プロトコルの関連定義に違反していないことを確認する必要があります。オブジェクト ディクショナリの設計プロセスは、多くの場合、時間がかかり、間違いが発生したり、期待を満たしていないためにやり直したりすることがよくあります。複数の機能を設計し、何度も作業を繰り返す必要があります。オブジェクト ディクショナリを設定する場合、プロフェッショナルで効率的な CANopen 設計ツールが必要ですが、CANopen DeviceDesigner は設計を支援するだけでなく、オブジェクト ディクショナリに従って emotas プロトコル スタックのオブジェクト ディクショナリ定義部分に適したコードを生成することもできます。

以下のツールが推奨されます

Ethernet POWERLINK XDD Tool Suite: XDD の編集、検証、OD 生成のための Eclipse プラグインを提供します。ダウンロード アドレス: Ethernet POWERLINK XDD ツール スイートの詳細をご覧ください | SourceForge.net

エクリプスのダウンロード

マスタ局、スレーブ局の最新設定ツールopenCONFIGURATORおよびXDDエディタはEclipseをベースとしているため、Eclipseをダウンロードしてインストールする必要があります。4.x 以降のEclipse Committer には Eclipse IDEをインストールすることをお勧めします。

公式 Web サイトのダウンロード: Eclipse Packaging Project (EPP) リリース | Eclipse パッケージ

国内イメージのダウンロード アドレス:  /eclipse/technology/epp/downloads/release/ のインデックス

その他のリソース

港湾会社の XDD エディタを使用すると、ユーザーは POWERLINK デバイス記述ファイルを生成できます - 中国伝送網

ツールキット

(2) PowerLink 理論知識_ty_xiumud のブログ - CSDN ブログ

POWERLINKポータル

B&Rアカデミックアライアンス

産業オートメーション通信ネットワークの標準とプロトコル (profinet、opc-ua、産業用イーサネット、フィールドバスなど) について? - ほぼ知っています

CANOPEN の使用体験 1-cia301、cia402 の概要_Jomb のブログ-CSDN ブログ

CANopen プロトコルと application_MSh_I のブログ - CSDN ブログ

【CiAウェビナーシリーズ-6】CANopen I/Oモジュール-CiA 401プロトコルの現状と開発2021-03-18_哔哩哔哩_bilibili

Smart Embedded IoTのZQWL取得および制御端末製品におけるCANopenプロトコルの適用-深センスマート組み込みIoT電子技術有限公司

OSI 7 層モデル、CAN、CiA、CANopen、CiA301CiA402、および EtherCAT_cia402 の概要 protocol_y_q_m のブログ - CSDN ブログ

オートメーションにおける CAN (CiA): コントローラー エリア ネットワーク (CAN)

おすすめ

転載: blog.csdn.net/qq8864/article/details/130608407
おすすめ