0

EIA-485 カウンターや SPI デジタル I/O エクスパンダなどのさまざまな周辺機器やインターフェイスを接続する、UART、SPI、I²C などのインターフェイスを備えたマイクロコントローラー ベースの CAN ノード カードを構築したいと考えています。可能な構成に適応し、そのようなノードカードに接続できるデバイスを含めるのに十分な柔軟性を備えたカードのプロファイルを定義したいと思います。CANopen プロファイルは非常に厳格なように見えるため、CANopen 仮想デバイスを調査しましたが、それも答えではないようです。

そのような機能の標準はありますか、それとも私は未知の海域を航海していますか?

4

2 に答える 2

0

CAN in Automation Web サイトから:

CANopen 汎用 I/O モジュールは、CiA 401デバイス プロファイル仕様で標準化されています。このプロファイルは、デジタル I/O に対して 1、8、16、および 32 ビットの粒度をサポートし、アナログ I/O に対して 1、2、および 4 バイトの解像度をサポートします。

ただし、一般的な CiA 301 CANopen アプリケーション レイヤーおよび通信プロファイル標準に基づいて、カスタム デバイスを実装する方が簡単な場合があります。Manucturer オブジェクト (2000h から 5FFFh) を使用して一連の汎用IOCTL関数を実装し、場合によってはSDO ブロック転送を使用して、接続されたデバイス エンドポイントを表す特定の OD オブジェクトにデータを「ストリーミング」することができます。

物理層のビットレートが 1 Mbps であっても、データのストリーミングに関しては、CANopen プロトコルが USB2 HS デバイスに追いつくことは決してできないということを考慮する必要があります。また、OD 値の「リアルタイム」交換に PDO を使用する場合、大幅な遅延が発生し、PDO 交換の時間量が 25 ミリ秒以上になることに注意してください。

最終的な考慮事項は、どの CANopen マスターを使用するかです。製品を市販する場合は、EDS を非常に慎重に指定して文書化する必要があります (場合によっては、OPC や類似の API を提供することさえあります)。

于 2015-05-19T09:57:32.777 に答える
0

CANopen ブートローダが可能な解決策であると考えない限り、あなたは未知の海域を航海していることになります。条件に一致する既存のデバイス プロファイルはありません。CANopen は非常に柔軟ですが、任意の拡張性はそれを超えています。

オブジェクト ディクショナリを介してマイクロコントローラのレジスタを 1:1 でエクスポートし、PDO を介して割り込みを発行できます。少し非現実的だとしても、それは確かに楽しいエクササイズになるでしょう.

于 2015-04-03T04:53:10.010 に答える