CANopen
CANopen(きゃんおーぷん)とは、オートメーションシステム内の組み込みシステム用の通信プロトコルおよびデバイスプロファイル仕様である。OSI参照モデルのネットワーク層から上の層を実装している。CANopenは、アドレッシングスキーム、いくつかの小規模な通信プロトコル、デバイスプロファイルによって定義されたアプリケーション層から構成される。Controller Area Networkをベースとしており、オープンネットワークのひとつでもある。
概要
[編集]組み込みシステムのネットワーク技術として、簡易にマルチマスタのネットワークを構築することができる。CANopenは、仕様が一般に公開されている上位ソフトウエアである。
2004年12月にドイツの非営利団体de:CAN in Automationが、最初に通信プロファイルであるDS-301をリリースした。このときのバージョンはv4.02である。
その他に約20の機器(デバイス)の標準仕様が策定されており、モータやリモートI/Oなどの仕様書が作成されている。実際に使われているアプリケーションとして、新幹線などもある。一番大きなCANが使われているシステムとしては、CERNの実験施設があり、数十万ノードのCANが使われている。
通信速度は、1Mbps。ハードウェアが再送処理を行うので、ノイズが多い環境でもソフトウエアの処理が不要である。推奨されている通信レートと配線長の組合せがある。 一つのネットワークに127個のノードが接続できる。ただし、CAN自体が柔軟なネットワークなので、拡張することが可能である。
通信は、PDOおよびSDOで構成され、NMTによるブートアップが定義されている。
CANopenのネットワーク構成
[編集]CANopenのノードは、コンシューマーとプロデューサーで構成される。
- コンシューマー
- コンシューマーは、情報を受け取り、利用する側である。
- プロデューサー
- プロデューサーは、情報を管理し、発信する側である。
CANopenのレイヤ構造
[編集]上記のデータリンク層は、OSIモデルの第2層となる。第1層の物理層は、CANトランシーバーと呼ばれる。
CANopenのプロファイル
[編集]CANopenには、チップの違いを吸収する通信プロファイルDS-301が定義されている。NECエレクトロニクス、ルネサス、富士通デバイスその他、約50の世界中のチップメーカから発売されているCAN内蔵マイコンやCANコントローラの違いを吸収している。
CAN in Automationによれば共通プロファイルが、DS-3xx(ディーエス300番台)で定義されており、通信プロファイルのDS-301だけでなく、コネクタやワイヤを定義したプロファイルも用意されている。
接続手順の実際
[編集]CANopenのマスターは、CANopenスレーブノードからハートビートまたはガーディングによって基本立ち上げされる。
CANおよびCANの国際規格
[編集]ISOおよびIEC文書で、CANおよびCANopenの規格が定められている。