NI-Industrial Communications for CANopen を使用して複数のノードと通信するにはどうすればよいですか?

更新しました Feb 20, 2025

使用製品

ハードウェア

  • PCI-8531
  • PXI-8531
  • NI-9881

ソフトウェア

  • CANopen Library Toolkit

問題

NI-Industrial Communications for CANopenを使用して、PCI-8531、PXI-8531、またはNI 9881 Cシリーズモジュールなどを用いてCANopenバス上のノードと通信しています。バス上の複数のノードと同時に通信するにはどうすればよいですか?

解決策

NI-Industrial Communications for CANopenのVI(例:NMT Write.vi、TPDO Create.vi、RPDO Create.vi、SDO Create.vi)には、ノードID入力端子があります。NMT Write.viを使用して、ノードID 0を指定することで、バス上のすべてのノードにメッセージを送信できます。複数のノードと通信する場合は、それぞれのノードに接続を開き、メッセージを送信する必要があります。以下の例では、CANopen NMT Write VIを使用して、バス上のすべてのノードを一度にプリオペレーショナル状態に設定しています。その後、ノード4および3からSDOデータを読み取ります。


注記:

  • この画像はLabVIEWスニペットであり、プロジェクトで再利用できるLabVIEWコードが含まれています。スニペットを使用するには、画像を右クリックしてコンピュータに保存し、そのファイルをLabVIEWダイアグラムにドラッグします。
  • ノードID 0は、NMT Write.viでのみサポートされています。