NI-CANチャンネルAPIとフレームAPIの違いについて



使用ソフトウェア:
使用ソフトウェア・バージョン: 2.6.1
使用ソフトウェア・バージョンに特化: N/A
二次のソフトウェア: N/A
ハードウェア: Industrial Communications>>CAN

問題:
NI-CANのチャンネルAPIとフレームAPIの違いについて教えて下さい。。

解決策:
チャンネルAPIかフレームAPIを使用するかは作成中のアプリケーションと Measurement&Automation Explorer(MAX) でデータベースファイルをインポートできるかに依存します。
チャンネルAPIの方が多くの場合好まれます。
その理由は簡単に使用することのできる単一の物理ユニットを使用してCANネットワークにアクセスできるからです。チャンネルAPIを使用する時、NI-CANソフトウェアはCANメッセージの生データをチャンネル構成の各チャンネルの物理ユニットから(へ)変換します。
ところが、フレームAPIはCANネットワークの低レベルにアクセスするので、チャンネルAPIよりも使用が推奨される場合があります。

以下はフレームAPIを使用したほうがいい場合の例です。

USB-CAN製品はチャンネルAPIやCAN Objectをサポートしていません。フレームAPIを使用することはできますが、USB-CANに対しては関数の使用が制限されています。これらの関数のリストを見るためには下記の関連リンクをご覧ください。

フレームAPIを使用してメッセージを受信するときには、符号なし8ビットの文字の配列としてデータを受信します。各メッセージごとに8バイトの情報があるので、メッセージには複数のチャンネル情報が含まれています。

これによって、ひとつのCANフレームで複数の情報を持つことが可能になります。
チャンネルAPIは自動的にメッセージの各チャンネルを分解して、必要に応じてチャンネルをスケール出来ます。

この画像はフレームAPIが8バイトの情報を含んでいることを示します。
これはどのバイトが組みになっているか、つまり、バイトが入るべき順番、もしくはスケールの情報を含みません。MAX上でCANチャンネルを構成するとき、このすべての情報は自動的なフォーマットからユーザー指定のフォーマットに自動的にデータを入力することができます。

CANチャンネル

メモ: チャンネルAPIとフレームAPIの両方を同じCANインターフェイスで同時に使用することはできません。
もしあるアプリケーションがCAN0でフレームAPIを使用して実行されているのであれば、他のアプリケーションでCAN0上でチャンネルAPIを使用することはできません。

もし、2ポートのCANカードを使用しているのであれば、異なるインターフェイス上で別のアプリケーションを使用することができます。もしくは、そのアプリケーションを異なるタイミングで動作させることができます。



関連リンク:

添付:





報告日時: 01/24/2005
最終更新日: 04/28/2011
ドキュメントID: 3HNHF5HS