連載
» 2009年05月11日 00時00分 UPDATE

CANopen入門(3):実践指南! CANopenの設計・開発・運用 (1/2)

CANopen入門の最終回。今回は8つの工程を例に、CANopenを利用したネットワーク設計とデバイス開発の“より実践的な内容”について詳しく解説する

[金田大介(ベクター・ジャパン),@IT MONOist]

 連載第1回「そもそも“オープンネットワーク”とは何か?」と、連載第2回「CANopenの“オープン”な特徴とは?」で、CAN(Controller Area Network)を利用したオープンネットワークの概要、CANopenの概要を説明しました。

 今回は、下記のような8つの工程を例に“CANopenを利用したネットワーク設計とデバイス開発の実践的な概要”を解説します。

  1. システム要件と市販デバイスの検討
  2. 不足部分の検討
  3. EDSファイルの入手/作成
  4. ネットワークトポロジの検討
  5. デバイスコンフィギュレーション
  6. CANopenシミュレータによる評価
  7. システム運用
  8. デバイス開発

システム要件と市販デバイスの検討

 まず、検討中のシステム要件に基づいて「I/O」「センサ」「アクチュエータ」「コントローラ」など必要な機能を持つデバイスを検討します。また、物理的に1つのネットワークで通信するのか、複数のネットワークをゲートウェイ接続して通信するのかなどのトポロジの概要も想定しておきます。

 実際に、どのような機能のデバイスがいくつ必要なのかが決まってくると、それらの要件を実現するために既存の資産がどれだけ使えるのか、市販製品から選択して追加できるのか、新規開発するのか、という方向性が定まってくるはずです。

 CANopenの市販デバイスは、CiAのWebサイトでプロファイル/ベンダ名/製品カテゴリなどに分類されていますので、目的に応じて製品を検索できます。市販デバイスがある場合は、それらの機能や価格、入手性、サポート、互換品やセカンドソースの有無などを検討します(注)。

※注:なお、このカタログに掲載されていない製品やベンダもありますので、日本国内に販売チャンネルを持つデバイスベンダの情報などは、CiAマーケティンググループジャパンのチェアマンである筆者にお問い合わせください。


関連リンク:
CiA

不足部分の検討

 CANopenの市販デバイスだけでは足りない部分を補う手段として、CANopen以外の機器やサブシステムなどの併用が考えられます。例えば、情報系にはEthernetベースのプロトコルを使って、制御系にはCANopenを使う場合もありますし、センサネットワークなどにほかのサブシステムを統合することも考えられます。

 CANopen規格のオープン性は、公開されているという点だけではなく、ほかのプロトコルとのインターフェイスもオープンという特徴が挙げられます。

 例えば、「AS-Interface(Actuator Sensor Interface)」用ゲートウェイや、トラック/建機などで使われている「SAE J1939」とのゲートウェイも規格化されています。また、CANopenではゲートウェイが規格化されていない場合でも、CANopenとほかのプロトコルのゲートウェイ機能を搭載した通信チップや、ゲートウェイ機能を持ったデバイスが使える場合もありますので、柔軟なシステム構築が可能です。

 これらの手段を検討してもシステム要件を満たす十分な機器がそろわない場合には、デバイスを新規開発する必要が生じます(デバイス開発については後述します)。

EDSファイルの入手/作成

 市販デバイスの場合は、デバイスメーカーからEDSファイルを無料で入手できます。新規開発の場合は、まずEDSファイルを新規作成する必要があります。EDSファイルの閲覧や作成には、第2回で紹介したCANopenフォーラムから無料で入手できるEDSエディタ「CANeds」などのツールが使えます。

 EDSファイルは一般的なテキストエディタでも閲覧や編集は可能ですが、専用ツールならオブジェクトディクショナリーのインデックスに基づいて構造をツリー表示し、各エントリのパラメータをGUIで視覚的に分かりやすく閲覧・編集できます。また、CANedsにはEDSファイルの整合性をチェックする機能もあり、CANopen規格で必須となっているエントリや、関連するエントリの過不足やパラメータの不整合などをチェックして警告やエラーを表示させることができます。

CANedsのEDS編集画面 図1 CANedsのEDS編集画面
関連リンク:
CANopenフォーラム

ネットワークトポロジの検討

 市販デバイスや新規開発デバイスのEDSファイルが一通りそろったら、CANopenネットワークのトポロジやデバイス間の送受信関係などを設計します。

 例えば、どのデバイスがネットワークマネジメントを行うのか、どのデバイスとどのデバイスとが通信を行い、どの入力とどの出力とが接続されるのかなどを具体的に検討します。これに併せて、各デバイスのハートビート周期やハートビートコンシューマ(ハートビートの監視役)、同期メッセージの周期などを評価し、システム要件に応じた適切な通信速度の検討も行います。

 なお、これらネットワークの設計に必要となる設定値は、システム構成が可変な場合において、システムの最小構成と最大構成でデバイスの数や物理的なネットワーク長が異なるため、さまざまなケースの想定が必要です。

 この時点で、もしすべての実デバイスがそろう状況であれば、実機で検証することが理想的です。しかし多くの場合、設計の初期段階ですべての実デバイスをそろえることは難しいでしょう。未開発のデバイスはもちろんのこと、数社のデバイスを比較検討している場合や、デバイスの要件が変わる可能性がある場合など、早い段階の実機購入はリスクが伴います。

 そこで、ソフトウェアツールによる設計環境が役に立ちます。例えば、ベクターの「CANoe.CANopen」というシミュレータに付属する「ProCANopen」というネットワークコンフィギュレータは、EDSファイルを読み込んで任意のネットワークトポロジを設計したり、コンフィギュレーションしたりできるツールです。もしこの時点で実デバイスがあれば、ProCANopenでそれらのコンフィギュレーションもできます。

ProCANopenのネットワーク設計画面 図2 ProCANopenのネットワーク設計画面
       1|2 次のページへ

Copyright© 2017 ITmedia, Inc. All Rights Reserved.