特許第6408277号(P6408277)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社ベルチャイルドの特許一覧

特許6408277データ収集装置及び産業用ネットワークシステム
<>
  • 特許6408277-データ収集装置及び産業用ネットワークシステム 図000002
  • 特許6408277-データ収集装置及び産業用ネットワークシステム 図000003
  • 特許6408277-データ収集装置及び産業用ネットワークシステム 図000004
  • 特許6408277-データ収集装置及び産業用ネットワークシステム 図000005
  • 特許6408277-データ収集装置及び産業用ネットワークシステム 図000006
  • 特許6408277-データ収集装置及び産業用ネットワークシステム 図000007
  • 特許6408277-データ収集装置及び産業用ネットワークシステム 図000008
  • 特許6408277-データ収集装置及び産業用ネットワークシステム 図000009
  • 特許6408277-データ収集装置及び産業用ネットワークシステム 図000010
  • 特許6408277-データ収集装置及び産業用ネットワークシステム 図000011
  • 特許6408277-データ収集装置及び産業用ネットワークシステム 図000012
  • 特許6408277-データ収集装置及び産業用ネットワークシステム 図000013
  • 特許6408277-データ収集装置及び産業用ネットワークシステム 図000014
  • 特許6408277-データ収集装置及び産業用ネットワークシステム 図000015
  • 特許6408277-データ収集装置及び産業用ネットワークシステム 図000016
  • 特許6408277-データ収集装置及び産業用ネットワークシステム 図000017
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6408277
(24)【登録日】2018年9月28日
(45)【発行日】2018年10月17日
(54)【発明の名称】データ収集装置及び産業用ネットワークシステム
(51)【国際特許分類】
   G05B 19/05 20060101AFI20181004BHJP
【FI】
   G05B19/05 L
【請求項の数】7
【全頁数】23
(21)【出願番号】特願2014-152145(P2014-152145)
(22)【出願日】2014年7月25日
(65)【公開番号】特開2016-31554(P2016-31554A)
(43)【公開日】2016年3月7日
【審査請求日】2017年7月21日
(73)【特許権者】
【識別番号】314005610
【氏名又は名称】株式会社ベルチャイルド
(74)【代理人】
【識別番号】100117101
【弁理士】
【氏名又は名称】西木 信夫
(74)【代理人】
【識別番号】100120318
【弁理士】
【氏名又は名称】松田 朋浩
(74)【代理人】
【識別番号】100142561
【弁理士】
【氏名又は名称】田中 大介
(72)【発明者】
【氏名】日野山 隆
【審査官】 影山 直洋
(56)【参考文献】
【文献】 特開2003−150211(JP,A)
【文献】 特開2013−126247(JP,A)
【文献】 特開2000−216798(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05B 19/05
(57)【特許請求の範囲】
【請求項1】
マスタコントローラ及び複数のスレーブデバイスが接続されたリアルタイムEthernet(登録商標)ネットワークに接続されるデータ収集装置であって、
前記マスタコントローラは、前記リアルタイムEthernet(登録商標)ネットワークに接続されたと認識した前記スレーブデバイスとの間で入出力データを含むMACフレームを周期的に交換し、且つ該データ収集装置を認識しておらず、
該データ収集装置は、
前記マスタコントローラから前記スレーブデバイスに送信される全ての前記MACフレーム、及び前記スレーブデバイスから前記マスタコントローラに送信される全ての前記MACフレームを受信可能な位置において前記リアルタイムEthernet(登録商標)ネットワークに接続され、且つ前記リアルタイムEthernet(登録商標)ネットワークにデータを送出しない第1通信部と、
データ管理装置に接続される第2通信部と、
前記第1通信部を通じて受信した前記MACフレームから抽出した前記入出力データを記憶部に記憶させ、且つ前記記憶部に記憶された前記入出力データを前記第2通信部を通じて前記データ管理装置に送信するデータ処理部と、を備え
前記データ処理部は、前記第1通信部を通じて受信した前記MACフレームのうち、
前記マスタコントローラによって前記MACフレームにセットされた出力データを、前記マスタコントローラから前記スレーブデバイスに向けて送信された前記MACフレームから抽出し、
前記スレーブデバイスによって前記MACフレームにセットされた入力データを、前記スレーブデバイスから前記マスタコントローラに向けて送信された前記MACフレームから抽出し、
前記MACフレームは、全ての前記スレーブデバイスそれぞれに対する前記入出力データを含み、
前記入出力データは、当該データにアクセスした前記スレーブデバイスによってインクリメントされるワーキングカウンタを含み、
前記データ処理部は、前記ワーキングカウンタに0が設定された前記出力データ、及び前記ワーキングカウンタに1以上が設定された前記入力データを、前記第1通信部によって受信された前記MACフレームから抽出するデータ収集装置。
【請求項2】
マスタコントローラ及び複数のスレーブデバイスが接続されたリアルタイムEthernet(登録商標)ネットワークに接続されるデータ収集装置であって、
前記マスタコントローラは、前記リアルタイムEthernet(登録商標)ネットワークに接続されたと認識した前記スレーブデバイスとの間で入出力データを含むMACフレームを周期的に交換し、且つ該データ収集装置を認識しておらず、
該データ収集装置は、
前記マスタコントローラから前記スレーブデバイスに送信される全ての前記MACフレーム、及び前記スレーブデバイスから前記マスタコントローラに送信される全ての前記MACフレームを受信可能な位置において前記リアルタイムEthernet(登録商標)ネットワークに接続され、且つ前記リアルタイムEthernet(登録商標)ネットワークにデータを送出しない第1通信部と、
データ管理装置に接続される第2通信部と、
前記第1通信部を通じて受信した前記MACフレームから抽出した前記入出力データを記憶部に記憶させ、且つ前記記憶部に記憶された前記入出力データを前記第2通信部を通じて前記データ管理装置に送信するデータ処理部と、を備え
前記MACフレームは、全ての前記スレーブデバイスそれぞれに対する前記入出力データを含み、
前記マスタコントローラは、認識した全ての前記スレーブデバイスそれぞれに対して、当該スレーブデバイスを識別するデバイス識別子、前記MACフレーム内において当該スレーブデバイスにアクセスさせる前記入出力データの論理アドレス、及び当該入出力データのデータサイズを含むネットワーク構成情報を含む前記MACフレームを送信し、
前記データ処理部は、
前記ネットワーク構成情報を含む前記MACフレームを前記第1通信部を通じて受信したことに応じて、当該ネットワーク構成情報を前記記憶部に記憶させ、
前記入出力データを含む前記MACフレームを前記第1通信部を通じて受信したことに応じて、前記論理アドレス及び前記データサイズに基づいて前記MACフレームから抽出した前記入出力データを、対応する前記スレーブデバイスのデバイスIDと関連づけて前記記憶部に記憶させるデータ収集装置。
【請求項3】
前記データ処理部は、前記入出力データの送信要求を前記第2通信部を通じて前記データ管理装置から受信したことに応じて、前記記憶部に記憶された前記入出力データを予め定められたフォーマットに変換し、変換された前記入出力データを前記第2通信部を通じて前記データ管理装置に送信する請求項1または2に記載のデータ収集装置。
【請求項4】
前記データ処理部は、予め定められた送信タイミングが到来したことに応じて、前記記憶部に記憶された前記入出力データを予め定められたフォーマットに変換し、変換された前記入出力データを前記第2通信部を通じて前記データ管理装置に送信する請求項1からのいずれかに記載のデータ収集装置。
【請求項5】
マスタコントローラ及び複数のスレーブデバイスが接続されたリアルタイムEthernet(登録商標)ネットワークに接続されるデータ収集装置であって、
前記マスタコントローラは、前記リアルタイムEthernet(登録商標)ネットワークに接続されたと認識した前記スレーブデバイスとの間で入出力データを含むMACフレームを周期的に交換し、且つ該データ収集装置を認識しておらず、
該データ収集装置は、
前記マスタコントローラから前記スレーブデバイスに送信される全ての前記MACフレーム、及び前記スレーブデバイスから前記マスタコントローラに送信される全ての前記MACフレームを受信可能な位置において前記リアルタイムEthernet(登録商標)ネットワークに接続され、且つ前記リアルタイムEthernet(登録商標)ネットワークにデータを送出しない第1通信部と、
データ管理装置に接続される第2通信部と、
前記第1通信部を通じて受信した前記MACフレームから抽出した前記入出力データを記憶部に記憶させ、且つ前記記憶部に記憶された前記入出力データを前記第2通信部を通じて前記データ管理装置に送信するデータ処理部と、を備え
該データ収集装置は、前記マスタコントローラとの前記入出力データの交換に伴う実質的な動作が割り当てられていないダミースレーブ部を備えており、
前記マスタコントローラは、当該マスタコントローラで用いられている時計情報或いは前記スレーブデバイスの動作条件を定義するレシピ情報を、前記ダミースレーブ部に対する出力データとして前記MACフレームに含めて送信し、
前記データ処理部は、前記第1通信部を通じて前記MACフレームを受信したことに応じて、前記時計情報或いは前記レシピ情報を当該MACフレームから抽出するデータ収集装置。
【請求項6】
該データ収集装置は、前記マスタコントローラとの前記入出力データの交換に伴う実質的な動作が割り当てられていないダミースレーブ部を備えており、
前記マスタコントローラは、当該マスタコントローラで用いられている時計情報或いは前記スレーブデバイスの動作条件を定義するレシピ情報を、前記ダミースレーブ部に対する出力データとして前記MACフレームに含めて送信し、
前記データ処理部は、前記第1通信部を通じて前記MACフレームを受信したことに応じて、前記時計情報或いは前記レシピ情報を当該MACフレームから抽出する請求項1からのいずれかに記載のデータ収集装置。
【請求項7】
請求項1からのいずれかに記載のデータ収集装置と、前記マスタコントローラと、複数の前記スレーブデバイスと、を備える産業用ネットワークシステムであって、
複数の前記スレーブデバイスは、前記マスタコントローラとの前記入出力データの交換に伴う実質的な動作が割り当てられていないダミースレーブを含み、
前記マスタコントローラは、当該マスタコントローラで用いられている時計情報或いは前記スレーブデバイスの動作条件を定義するレシピ情報を、前記ダミースレーブに対する出力データとして前記MACフレームに含めて送信し、
前記データ処理部は、前記第1通信部を通じて前記MACフレームを受信したことに応じて、前記時計情報或いは前記レシピ情報を当該MACフレームから抽出する産業用ネットワークシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、1台または複数のマスタコントローラと、マスタコントローラの制御下の複数の入出力デバイスとの間で、周期的或いは非周期的にデータ交換を行う産業用ネットワークシステムに関するものである。
【背景技術】
【0002】
マスタコントローラと複数の入出力デバイスとの間で周期的データ交換を行うネットワークシステムとして、例えば、PLC(Programmable Logic Controller)、FA(Factory Automation)、装置制御コントローラのフィールドネットワーク、計測或いは制御用のネットワークシステム等がある(特許文献1参照)。このようなネットワーク上における各種スレーブデバイス、データ収集装置、及びデータ管理装置等の一般的な構成を図15及び図16に示す。
【0003】
リアルタイムEthernet(登録商標)であるEtherCAT(登録商標)において、マスタコントローラと制御対象であるスレーブデバイスとは、リングトポロジを構成する。このスレーブデバイスは、2つのEthernetポートを有する。そして、スレーブデバイスのEthernetポートを逐次接続していくことでリングトポロジが構成される。ただし、マスタコントローラは、Ethernetポートが1つであっても構わない。Ethernetポートが1つのマスタコントローラを用いたフィールドネットワークシステムでは、マスタコントローラから最も遠いスレーブデバイスが内部でパケットを折り返すことで、最終的にマスタコントローラのEthernetポートにパケットが戻される。したがって、例えば、物理的にはライントポロジを構成する場合であっても、パケットの通信経路に着目すれば、論理的なリングトポロジになっている。
【0004】
EtherCATにおいて、マスタコントローラとスレーブデバイスとの間の入出力データの交換は、例えば以下のように行われる。まず、マスタコントローラは、出力データを含むデータ交換用のデータグラムをフィールドネットワークに送出する。スレーブデバイスは、当該データグラムの所定の位置にセットされた出力データを取り込み、或いは当該データグラムの所定の位置に入力データをセットする。そして、このデータグラムがリング上のフィールドネットワークを一巡することによって、マスタコントローラと全てのスレーブデバイスとの間の入出力データの交換が終了する。
【0005】
このようにして交換された入出力データは、マスタコントローラの内部メモリに保持され、次にデータ交換された入出力データによって更新(上書き)される。また、データ管理装置は、当該フィールドネットワークを介して、マスタコントローラの内部メモリに保持された入出力データを所定のタイミングで取得し、ファイルメモリ等に蓄積する。そして、データ管理装置は、ファイルメモリ等に蓄積された入出力データに基づいて、異常発生時の原因解析、累積入出力データの分析に基づく故障予知、或いは入出力データの現在値の更新によるモニタ監視等を含む解析処理を実行する。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2000−216798号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
上記構成のデータ管理装置は、マスタコントローラの内部メモリに保持された入出力データを、フィールドネットワークを介して当該マスタコントローラから取得する必要がある。しかしながら、取得周期の高速化及び入出力データの増大等に伴って、マスタコントローラのネットワークインタフェース、CPU、或いはフィールドネットワークに大きな負荷が掛かる。そして、この負荷は、マスタコントローラの制御周期、当該フィールドネットワークの周期性或いは定時性に影響を与えるという課題がある。
【0008】
また、データ管理装置による入出力データの取得周期は、マスタコントローラによる入出力データの更新周期より一般的に大きい。さらに、フィールドネットワークにおけるデータ交換周期、及びマスタコントローラによる入出力データの更新周期は、今後もより高速化が求められている。そこで、データ管理装置の取得周期とマスタコントローラの更新周期とのギャップ(周期時間差)を埋める手段として、マスタコントローラに設けられた不揮発性メモリに入出力データを中間貯蔵する方法も散見される。この場合、マスタコントローラのCPUの負荷、メモリリソースの負荷がさらに増大するという課題がある。
【0009】
また、データ管理装置による入出力データの取得方法は、マスタコントローラのメーカー或いは機種等に依存するため、メーカー或いは機種が異なるマスタコントローラ毎に、データ管理装置内の入出力データの取得、及びレスポンス解析部のソフトウエア改造等が必要になるという課題がある。
【0010】
さらに、データ管理装置がより高度なデータ収集、分析、及び解析を行うためには、例えば、製造装置であれば制御に使用される時計情報、製造指示、或いは処理条件設定のためのレシピ情報(命令、設定値等)等が、入出力データに同期して必要となる。しかしながら、前述した従来のマスタコントローラは、これらの必要とされる全ての情報を、データ管理装置からの単一要求コマンドに対する応答として送信する機能を提供していない。すなわち、データ管理装置がマスタコントローラから取得した入出力データが、マスタコントローラの制御サイクルに完全同期していることが保証されないという課題がある。
【0011】
この発明は、上記のような課題を解決することを主な目的の一つとしており、フィールドネットワークの負荷、マスタコントローラのリソースの負荷を増大させることなく、当該フィールドネットワーク上でデータ交換される入出力データを収集することが可能なデータ収集装置を提供することを主な目的とする。
【課題を解決するための手段】
【0012】
(1) 本発明に係るデータ収集装置は、マスタコントローラ及び複数のスレーブデバイスが接続されたリアルタイムEthernetネットワークに接続される。前記マスタコントローラは、前記リアルタイムEthernetネットワークに接続されたと認識した前記スレーブデバイスとの間で入出力データを含むMACフレームを周期的に交換し、且つ該データ収集装置を認識していない。そして、該データ収集装置は、前記マスタコントローラから前記スレーブデバイスに送信される全ての前記MACフレーム、及び前記スレーブデバイスから前記マスタコントローラに送信される全ての前記MACフレームを受信可能な位置において前記リアルタイムEthernetネットーワークに接続され、且つ前記リアルタイムEthernetネットワークにデータを送出しない第1通信部と、データ管理装置に接続される第2通信部と、前記第1通信部を通じて受信した前記MACフレームから抽出した前記入出力データを記憶部に記憶させ、且つ前記記憶部に記憶された前記入出力データを前記第2通信部を通じて前記データ管理装置に送信するデータ処理部とを備える。
【0013】
上記構成によれば、マスタコントローラ及びスレーブデバイスは、リアルタイムEthernetネットワークにデータ収集装置が接続されていることを意識することなく動作する。また、リアルタイムEthernetネットワークには、データ収集装置が接続されたことに伴うトラフィックの増加がない。その結果、リアルタイムEthernetネットワークの負荷、及びマスタコントローラのリソースの負荷を増大させることなく、当該リアルタイムEthernetネットワーク上で交換される入出力データを収集することができる。
【0014】
また、リアルタイムEthernetネットワーク上において、マスタコントローラによるスレーブデバイスの制御機能と、データ収集装置によるデータ収集機能とを分離することで、マスタコントローラによる制御周期の高速化(=入出力データ交換サイクルの高速化)と合わせて、データ収集装置によるデータ収集速度の高速化(データ収集サイクルの高速化)が計れるという効果が生じる。
【0015】
(2) 好ましくは、前記データ処理部は、前記第1通信部を通じて受信した前記MACフレームのうち、前記マスタコントローラによって前記MACフレームにセットされた出力データを、前記マスタコントローラから前記スレーブデバイスに向けて送信された前記MACフレームから抽出し、前記スレーブデバイスによって前記MACフレームにセットされた入力データを、前記スレーブデバイスから前記マスタコントローラに向けて送信された前記MACフレームから抽出する。
【0016】
(3) さらに好ましくは、前記MACフレームは、全ての前記スレーブデバイスそれぞれに対する前記入出力データを含む。また、前記入出力データは、当該データにアクセスした前記スレーブデバイスによってインクリメントされるワーキングカウンタを含む。そして、前記データ処理部は、前記ワーキングカウンタに0が設定された前記出力データ、及び前記ワーキングカウンタに1以上が設定された前記入力データを、前記第1通信部によって受信された前記MACフレームから抽出する。
【0017】
上記構成によれば、入力データ及び出力データを適切なタイミングでMACフレームから抽出することができる。
【0018】
(4) 好ましくは、前記MACフレームは、全ての前記スレーブデバイスそれぞれに対する前記入出力データを含む。前記マスタコントローラは、認識した全ての前記スレーブデバイスそれぞれに対して、当該スレーブデバイスを識別するデバイス識別子、前記MACフレーム内において当該スレーブデバイスにアクセスさせる前記入出力データの論理アドレス、及び当該入出力データのデータサイズを含むネットワーク構成情報を含む前記MACフレームを送信する。そして、前記データ処理部は、前記ネットワーク構成情報を含む前記MACフレームを前記第1通信部を通じて受信したことに応じて、当該ネットワーク構成情報を前記記憶部に記憶させ、前記入出力データを含む前記MACフレームを前記第1通信部を通じて受信したことに応じて、前記論理アドレス及び前記データサイズに基づいて前記MACフレームから抽出した前記入出力データを、対応する前記スレーブデバイスのデバイスIDと関連づけて前記記憶部に記憶させる。
【0019】
上記構成によれば、MACフレーム内における入出力データのデータ構造をネットワーク構成情報に基づいて特定できるので、マスタコントローラのメーカー或いは機種に依存することなく、当該リアルタイムEthernetネットワーク上で交換される入出力データを収集することができる。
【0020】
(5) 好ましくは、前記データ処理部は、前記入出力データの送信要求を前記第2通信部を通じて前記データ管理装置から受信したことに応じて、前記記憶部に記憶された前記入出力データを予め定められたフォーマットに変換し、変換された前記入出力データを前記第2通信部を通じて前記データ管理装置に送信する。
【0021】
(6) 好ましくは、前記データ処理部は、予め定められた送信タイミングが到来したことに応じて、前記記憶部に記憶された前記入出力データを予め定められたフォーマットに変換し、変換された前記入出力データを前記第2通信部を通じて前記データ管理装置に送信する。
【0022】
上記の各構成によれば、収集した入出力データを所望のタイミングでデータ管理装置に送信することができる。
【0023】
(7) 好ましくは、該データ収集装置は、前記マスタコントローラとの前記入出力データの交換に伴う実質的な動作が割り当てられていないダミースレーブ部を備える。前記マスタコントローラは、当該マスタコントローラで用いられている時計情報或いは前記スレーブデバイスの動作条件を定義するレシピ情報を、前記ダミースレーブ部に対する出力データとして前記MACフレームに含めて送信する。そして、前記データ処理部は、前記第1通信部を通じて前記MACフレームを受信したことに応じて、前記時計情報或いは前記レシピ情報を当該MACフレームから抽出する。
【0024】
上記構成のように、データ収集装置がスレーブ機能を併せ持つことで、従来方式では困難となっていた、入出力データ(センサー、アクチュエータ情報)の制御サイクルに完全同期化された時計情報或いはレシピ情報等を簡易に収集することができる。その結果、これらの情報を用いて入出力データのデータ管理及びデータ分析をデータ管理装置に行わせることができる。
【0025】
(8) 本発明に係る産業用ネットワークシステムは、上記記載のデータ収集装置と、前記マスタコントローラと、複数の前記スレーブデバイスとを備える。複数の前記スレーブデバイスは、前記マスタコントローラとの前記入出力データの交換に伴う実質的な動作が割り当てられていないダミースレーブを含む。前記マスタコントローラは、当該マスタコントローラで用いられている時計情報或いは前記スレーブデバイスの動作条件を定義するレシピ情報を、前記ダミースレーブに対する出力データとして前記MACフレームに含めて送信する。そして、前記データ処理部は、前記第1通信部を通じて前記MACフレームを受信したことに応じて、前記時計情報或いは前記レシピ情報を当該MACフレームから抽出する。
【発明の効果】
【0026】
本発明によれば、リアルタイムEthernetネットワークの負荷、及びマスタコントローラのリソースの負荷を増大させることなく、当該リアルタイムEthernetネットワーク上で交換される入出力データを収集することができる。
【図面の簡単な説明】
【0027】
図1図1は、産業用ネットワークシステム100の構成図である。
図2図2は、産業用ネットワークシステム100内で送受信されるMACフレームのデータ構造を示す図である。
図3図3は、実施形態1に係るデータ収集装置10のブロック図である。
図4図4は、ネットワーク構成情報テーブルの一例である。
図5図5は、各スレーブデバイス22〜24のレジスタに設定される入出力管理情報の一例を示す図である。
図6図6は、各種コマンドのデータ構造の一例であって、(A)APWRコマンド或いはFPWRコマンドを、(B)はLRDコマンドを、(C)はLWRコマンドを、(D)はLRWコマンドを示す。
図7図7は、データ収集処理のフローチャートである。
図8図8は、データ収集装置10の不揮発性メモリ13に記憶される入出力レコードの一例を示す図である。
図9図9は、データ送信処理のフローチャートである。
図10図10は、データ収集装置10とデータ管理装置50との間で送受信されるコマンドの一例であって、(A)は収集データ一括要求コマンドを、(B)は収集データ個別要求コマンドを、(C)は収集データ一括/個別応答コマンドを示す。
図11図11は、実施形態2に係るデータ収集装置10Aのブロック図である。
図12図12は、実施形態3に係るデータ収集装置10Bのブロック図である。
図13図13は、ダミースレーブ部60に対するLWRコマンドのデータ領域に含める出力データの一例である。
図14図14は、実施形態3の変形例に係る産業用ネットワークシステム100の構成図である。
図15図15は、従来の産業用ネットワークシステムの一例である。
図16図16は、従来の産業用ネットワークシステムの他の例である。
【発明を実施するための形態】
【0028】
以下、本発明の実施形態について説明する。なお、以下に説明される実施形態は本発明の一例にすぎず、本発明の要旨を変更しない範囲で、本発明の実施形態を適宜変更できることは言うまでもない。
【0029】
[実施形態1]
図1を参照して、実施形態1に係る産業用ネットワークシステム100の構成を説明する。図1は、実施形態1に係る産業用ネットワークシステム100の構成図である。図1に示される産業用ネットワークシステム100は、データ収集装置10と、マスタコントローラ21と、複数のスレーブデバイス22、23、24と、リピータ30と、スイッチ40とで構成されている。また、データ収集装置10は、データ管理装置50と接続されている。なお、産業用ネットワークシステム100のネットワークトポロジは、後述するように論理的なリングトポロジであればよく、物理的なトポロジは図1の例に限定されない。
【0030】
なお、実施形態1において、産業用ネットワークシステム100を構成するネットワークは、リアルタイムEthernetネットワーク(或いは、産業用Ethernet、Ethernetベースフィールドネットワーク)の一例であるEtherCATである。また、実施形態1では、産業用ネットワークシステム100にマスタコントローラ21が1つだけ接続された例を説明するが、1つの産業用ネットワークシステム100に複数のマスタコントローラ21が接続されてもよい。マスタコントローラ21には、例えば、当該マスタコントローラ21を識別するマスタIDによって識別される。さらに、産業用ネットワークシステム100に接続されるスレーブデバイス22、23、24の数は3つに限定されない。
【0031】
リピータ30は、複数のポート31、32、33、・・・を有している。マスタコントローラ21、データ収集装置10、及びスイッチ40は、リピータ30の各ポート31、32、33に接続されている。リピータ30は、複数のポート31〜33の1つを通じて受信したデータを、他の全てのポート31〜33に対して送出する機能を有する。すなわち、リピータ30は、ポート31を通じてマスタコントローラ21から受信したデータを、ポート32、33を通じてデータ収集装置10及びスイッチ40に送信する。また、リピータ30は、ポート33を通じてスイッチ40から受信したデータを、ポート31、32を通じてマスタコントローラ21及びデータ収集装置10に送信する。
【0032】
スイッチ40は、複数のポート41、42、43、44、・・・を有している。リピータ30及びスレーブデバイス22〜24は、スイッチ40の各ポート41〜44に接続されている。スイッチ40は、複数のポート41〜44の1つを通じて受信したデータを、予め定められた他のポート41〜44に送出する機能を有する。なお、データの受信ポート及び送信ポートの組み合わせは、スイッチ40に予め設定されていてもよいし、当該データに含まれるMACアドレスによって特定されてもよい。
【0033】
本実施形態に係るスイッチ40は、ポート41を通じてリピータ30から受信したデータを、ポート42を通じてスレーブデバイス22に送信する。また、スイッチ40は、ポート42を通じてスレーブデバイス22から受信したデータを、ポート43を通じてスレーブデバイス23に送信する。さらに、スイッチ40は、ポート43を通じてスレーブデバイス23から受信したデータを、ポート44を通じてスレーブデバイス24に送信する。さらに、スイッチ40は、ポート44を通じてスレーブデバイス24から受信したデータを、ポート41を通じてリピータ30に送信する。
【0034】
実施形態1に係る産業用ネットワークシステム100は、マスタコントローラ21とスレーブデバイス22〜24との間で入出力データを含むMAC(Media Access Control)フレームが周期的に交換されることによって、動作するものである。なお、スレーブデバイス22〜24は、後述するように、センサやモータそのものを指してもよいし、センサやモータを制御するI/Oターミナルを指してもよいし、両方を含んでいてもよい。但し、実施形態1に係るスレーブデバイス22〜24には、ESC(EtherCAT Slave Controller)が共通して実装される。
【0035】
一例として、スレーブデバイス22は、マスタコントローラ21に入力データを送信するセンサ(入力デバイスの一例)である。この場合の入力データは、例えば、センサが検出した検出値(温度、回転数、回転速度等)である。他の例として、スレーブデバイス23は、マスタコントローラ21から受信した出力データに基づいて回転するモータ(出力デバイスの一例)である。この場合の出力データは、例えば、モータの回転速度或いは回転量を特定するためのデータである。さらに他の例として、スレーブデバイス24は、マスタコントローラ21からの出力データに基づいて回転し、且つステータス情報を入力データとしてマスタコントローラ21に送信するモータ(入出力デバイスの一例)である。但し、スレーブデバイス22〜24の具体例は、これらに限定されない。
【0036】
図2は、マスタコントローラ21とスレーブデバイス22〜24との間で交換されるMACフレーム(或いは、MACデータグラム等とも呼ばれる。)のデータ構造の一例である。宛先アドレスには、当該MACフレームの送信先の装置のMACアドレスが設定される。送信元アドレスには、当該MACフレームの送信元の装置のMACアドレスが設定される。TYPEは、上位のプロトコル(実施形態1では、EtherCAT)を識別する情報が設定される。データ部には、スレーブデバイス22に対する入出力データ1と、スレーブデバイス23に対する入出力データ2と、スレーブデバイス24に対する入出力データ3とが含まれる。FCS(Frame Check Sequence)には、当該MACフレームの誤りを検出するためのCRC(Cyclic Redundancy Check)等がセットされる。入出力データ1〜3のデータ構造の詳細は、後述する。
【0037】
図1に示されるEtherCATネットワークは、論理的なリングトポロジとなっている。そのため、マスタコントローラ21から送信されたMACフレームは論理的なリングトポロジ内を巡回し、全てのスレーブデバイス22〜24を経てマスタコントローラ21に戻る。そして、実施形態1に係るデータ収集装置10は、マスタコントローラ21とスレーブデバイス22〜24との間で周期的に交換されるMACフレームを収集する。
【0038】
[データ収集装置10]
データ収集装置10は、図1に示されるように、論理的なリングトポロジ内のマスタコントローラ21の直下流(または全スレーブデバイス22〜24の最上流)に接続されている。より詳細には、データ収集装置10は、マスタコントローラ21からスレーブデバイス22〜24に送信される全てのMACフレーム、及びスレーブデバイス22〜24からマスタコントローラ21に送信される全てのMACフレームを受信可能な位置において、EtherCATネットワークに接続されている。これにより、データ収集装置10には、論理的なリングトポロジ内を巡回するMACフレームを受信する機会が往路及び復路の2回ある。そして、データ収集装置10は、MACフレームの往路で出力データを取り込み、且つMACフレームの復路で入力データを取り込む。
【0039】
図3は、実施形態1に係るデータ収集装置10のブロック図である。図3に示されるデータ収集装置10は、データ処理部11と、揮発性メモリ12と、不揮発性メモリ13と、第1通信部14と、第2通信部15と、ユーザインタフェース部16とを備える。データ処理部11及び揮発性メモリ12は、MCU(Micro Control Unit)を構成する。揮発性メモリ12及び不揮発性メモリ13は、記憶部の一例である。
【0040】
データ処理部11は、第1通信部14を通じて受信したデータを編集、加工、或いは変換し、当該データを揮発性メモリ12又は不揮発性メモリ13に記憶させる。また、データ処理部11は、揮発性メモリ12又は不揮発性メモリ13に記憶されたデータを編集、加工、或いは変換し、当該データを第2通信部15を通じてデータ管理装置50に送信する。揮発性メモリ12は、例えば、RAM(Random Access Memory)である。不揮発性メモリ13は、例えば、EEPROM(Electrically Erasable Programmable Read−Only Memory)、或いはHDD(Hard Disk Drive)である。
【0041】
第1通信部14は、EtherCATネットワークに接続される。実施形態1に係る第1通信部14は、リピータ30のポート32から延出されたEthernetケーブルが接続される通信コネクタと、当該Ethernetケーブルを通じて伝送されたデータを受信する受信回路とを備えるEthernetインタフェースである。
【0042】
第1通信部14の受信回路は、Ethernetで規定される公知の技術で構成できる回路である。実施形態1に係る第1通信部14は、産業用ネットワークシステム100にデータ収集装置10を加入或いは参加させない。換言すれば、第1通信部14は、EtherCATネットワークに対して電気的にアクティブな動作を一切せず、且つ如何なるデータも送出することなく、EtherCATネットワーク上を流れるMACフレームを受信する機能(すなわち、受信回路)のみをアクティブ化している。なお、第1通信部14は、使用する通信コントローラ等の仕様により送信回路を併せ持っても良いが、実用上は送信回路の実装は不要である。
【0043】
第2通信部15は、データ収集装置10をデータ管理装置50に接続させるためのインタフェースである。第2通信部15の具体例は特に限定されないが、例えば、Ethernetインタフェースであってもよいし、USB(Universal Serial Bus)インタフェースであってもよい。なお、データ収集装置10とデータ管理装置50とは、インターネットを介して接続されていてもよい。
【0044】
ユーザインタフェース部16は、例えば、ユーザに対して情報を表示する表示部(出力インタフェース)と、ユーザからの支持を受け付ける操作部(入力インタフェース)とを備える。表示部は、例えば、表示パネル或いはインジケータ等である。操作部は、例えば、タッチセンサ、押ボタン、切替スイッチ等である。
【0045】
[産業用ネットワークシステム100の動作]
マスタコントローラ21は、産業用ネットワークシステム100に接続されたスレーブデバイス22〜24を管理するためのネットワーク構成情報と、スレーブデバイス22〜24との間で送受信された入出力データ(すなわち、スレーブデバイス22〜24毎のI/Oデータ)とを記憶するメモリを有している。図4は、複数のネットワーク構成情報を含むネットワーク構成情報テーブルの一例である。ネットワーク構成情報テーブルの各行は、1つのスレーブデバイスに対応するネットワーク構成情報に相当する。
【0046】
ネットワーク構成情報は、例えば図4に示されるように、ノード番号と、デバイスIDと、ロジカルアドレスと、入力サイズと、出力サイズとを含む。図4の例において、ノード番号#1はスレーブデバイス22のネットワーク構成情報を指し、ノード番号#2はスレーブデバイス23のネットワーク構成情報を指し、ノード番号#3はスレーブデバイス23のネットワーク構成情報を指すものとする。
【0047】
ノード番号は、産業用ネットワークシステム100内において、対応するスレーブデバイスに割り当てられた番号である。デバイスIDは、対応するスレーブデバイスを一意に識別するデバイス識別子の一例である。一方、データ収集装置10には、デバイスIDが割り当てられていない。ロジカルアドレスは、複数の入出力データを含むMACフレーム内において、対応するスレーブデバイスにアクセスさせる入出力データの位置を示す論理アドレスの一例である。入力サイズは、対応するスレーブデバイスに割り当てられた入力データのサイズである。出力サイズは、対応するスレーブデバイスに割り当てられた出力データのサイズである。
【0048】
ネットワーク構成情報は、通常、コンフィグレータ(図示省略)と呼ばれるPC上で動作する管理ソフトウエアで編集或いは生成され、マスタコントローラ21にダウンロードされる。または、マスタコントローラ21は、産業用ネットワークシステム100に接続されているスレーブデバイス22〜24を認識し、ネットワーク構成情報を自動生成してもよい。この場合、マスタコントローラ21は、生成したネットワーク構成情報を前述のコンフィグレータにアップロードする。
【0049】
また、マスタコントローラ21は、産業用ネットワークシステム100の構成に変化(例えば、スレーブデバイス22〜24が取り外された、或いは新たなスレーブデバイスが接続された)が生じた場合、ネットワーク構成情報を更新する。また、マスタコントローラ21は、産業用ネットワークシステム100の立ち上がり時(すなわち、入出力データの交換をする前)及び産業用ネットワークシステム100の構成変化時に、最新のネットワーク構成情報を必要とするスレーブデバイス22〜24に、ネットワーク構成情報を通知する機能を有してもよい。
【0050】
産業用ネットワークシステム100において、マスタコントローラ21とスレーブデバイス22〜24との間で周期的に交換される入出力データは、仮想空間(0x00000000〜)においてスレーブデバイス22〜24毎に割り振られたロジカルアドレス(0x00000000〜)で管理される。また、ロジカルアドレスとフィジカルメモリアドレスとのマッピングは、当該スレーブデバイス22〜24内のメモリマネジメントユニット内のレジスタ(0x0600〜)で管理される。
【0051】
そこで、マスタコントローラ21は、産業用ネットワークシステム100が運転状態(オペレーショナル)に移行する前に、図5に示される各スレーブデバイス22〜24のレジスタに、図6(A)に示される書き込みコマンドを用いて入出力管理情報を書き込む。より詳細には、マスタコントローラ21は、入出力管理情報の書き込みコマンドを含むMACフレームを各スレーブデバイス22〜24に送信する。そして、当該MACフレームをマスタコントローラ21から受信したスレーブデバイス22〜24は、書き込みコマンドに含まれる入出力管理情報をレジスタに設定する。
【0052】
図6に示されるAPWR(Auto−incremental Physical Write)コマンド(或いは、FPWR(Configured−address Physical write)コマンド)は、書き込みコマンドの一例である。APWRコマンド及びFPWRコマンドのデータ構造は、EtherCATで規定されているので、詳しい説明は省略する。また、スレーブデバイス22〜24のレジスタに書き込まれる入出力管理情報の一部は、例えば、図4に示されるネットワーク構成情報に含まれる情報である。
【0053】
次に、マスタコントローラ21は、産業用ネットワークシステム100で定義された手順に基づいて、ネットワーク構成情報テーブルに登録されている各スレーブデバイス22〜23に送信すべき入出力データを生成する。なお、ネットワーク構成情報テーブルに登録されているスレーブデバイスは、EtherCATネットワークに接続されているとマスタコントローラ21が認識しているデバイスを指す。そして、図4に示されるネットワーク構成情報テーブルには、データ収集装置10が登録されていない。すなわち、実施形態1に係るマスタコントローラ21は、データ収集装置10がEtherCATに登録されていることを認識していない。
【0054】
マスタコントローラ21は、最新のネットワーク構成情報テーブルに登録されている各スレーブデバイス22〜24の属性(入力、出力、データサイズ等)に基づいて、入出力データを生成する。そして、マスタコントローラ21は、例えばコンフィグレータによりスケジュールされた周期情報に基づいて、生成した入出力データを含むMACフレームを産業用ネットワークシステム100に送出する。なお、スケジュールとは、一般的にデータ更新周期時間を表す。
【0055】
マスタコントローラ21とスレーブデバイス22〜24との間での入出力データの交換には、マスタコントローラ21によって発行されるLRD(Logical Read)コマンド、LWR(Logical Write)コマンド、或いはLRW(Logical Read/Write)コマンドが用いられる。図6(B)〜図6(D)に示されるLRDコマンド、LWRコマンド、及びLRWコマンドは、入出力コマンドの一例である。マスタコントローラ21は、図2に示される入出力データ1〜3のそれぞれに入出力コマンドを含めたMACフレームを、スレーブデバイス22〜24に送信する。
【0056】
図6(B)に示されるLRDコマンドには、マスタコントローラ21に取得させる入力データをスレーブデバイス22にセットさせるためのコマンドである。図6(C)に示されるLWRコマンドは、マスタコントローラ21がセットした出力データをスレーブデバイス23に取得させるためのコマンドである。図6(D)に示されるLRWコマンドは、マスタコントローラ21がセットした出力データをスレーブデバイス24に取得させ、且つマスタコントローラ21に取得させる入力データをスレーブデバイス24にセットさせるためのコマンドである。入出力コマンドのデータ構造は、EtherCATで規定されている。
【0057】
マスタコントローラ21は、例えば、入力デバイスの一例であるスレーブデバイス22に対する入出力データ1に、WKC(ワーキングカウンタ)に”0”をセットしたLRDコマンドを含める。また、マスタコントローラ21は、例えば、出力デバイスの一例であるスレーブデバイス23に対する入出力データ2に、データ領域に出力データをセットし且つWKCに”0”をセットしたLWRコマンドを含める。さらに、マスタコントローラ21は、例えば、入出力デバイスの一例であるスレーブデバイス24に対する入出力データ3に、データ領域に出力データをセットし且つWKCに”0”をセットしたLRWコマンドを含める。
【0058】
スレーブデバイス22は、マスタコントローラ21から受信したMACフレームに含まれる入出力データ1のデータ領域に入力データをセットし且つWKCに”1”をセット(すなわち、インクリメント)して、当該MACフレームをスレーブデバイス23に送信する。また、スレーブデバイス23は、スレーブデバイス22から受信したMACフレームに含まれる入出力データ2のデータ領域から出力データを読み出し且つWKCに”1”をセットして、当該MACフレームをスレーブデバイス24に送信する。さらに、スレーブデバイス24は、スレーブデバイス23から受信したMACフレームに含まれる入出力データ3のデータ領域から出力データを読み出し、当該データ領域に入力データをセットし、且つWKCに”2”をセットして、当該MACフレームをマスタコントローラ21に送信する。この一連の処理によって、マスタコントローラ21とスレーブデバイス22〜24との間で入出力データが交換される。
【0059】
[データ収集処理]
図7及び図8を参照して、マスタコントローラ21とスレーブデバイス22〜24との間で交換されるMACフレームを収集するデータ収集処理を説明する。図7に示されるデータ収集処理は、データ収集装置10のデータ処理部11によって実行される。
【0060】
まず、データ収集装置10のデータ処理部11は、第1通信部14を通じてMACフレームを受信したことに応じて(S11)、当該MACフレームのTYPEの設定値を確認する(S12)。そして、データ処理部11は、EtherCATを示す値がTYPEに設定されていることに応じて(S12:Yes)、当該MACフレームに書き込みコマンド(APWRコマンド/FPWRコマンド)が含まれるか否かを判断する(S13)。一方、データ処理部11は、EtherCAT以外のプロトコルを示す値がTYPEに設定されていることに応じて(S12:No)、当該MACフレームを破棄する(S17)。
【0061】
次に、データ処理部11は、受信したMACフレームに書き込みコマンドが含まれていることに応じて(S13:Yes)、当該書き込みコマンドに含まれる入出力管理情報をネットワーク構成情報に変換して不揮発性メモリ13に記憶させる(S14)。すなわち、データ処理部11は、全てのスレーブデバイス22〜24に対する書き込みコマンドに対してこの処理を実行することによって、図4に示されるネットワーク構成情報を完成させることができる。
【0062】
また、データ処理部11は、受信したMACフレームに入出力コマンドが含まれていることに応じて(S13:No&S15:Yes)、入出力データを不揮発性メモリ13に記憶させる(S16)。一方、データ処理部11は、書き込みコマンド及び入出力コマンドを含まないMACフレームを受信したことに応じて(S13:No&S15:No)、当該MACフレームを破棄する(S17)。
【0063】
なお、データ処理部11は、ステップS16において、マスタコントローラ21からスレーブデバイス22に向けて送信されたMACフレームから出力データを抽出し、スレーブデバイス24からマスタコントローラ21に向けて送信されたMACフレームから入力データを抽出する。より詳細には、データ処理部11は、WKCに”0”が設定されたLWRコマンド及びLRWコマンドから出力データを抽出する。また、データ処理部11は、WKCに”非0”が設定されたLRDコマンド及びWKCに”2”が設定されたLWRコマンドから入力データを抽出する。
【0064】
また、データ処理部11は、ステップS16において、図4に示されるネットワーク構成情報に基づいて、MACフレームから抽出した入出力データを図8に示される形式に変換する。より詳細には、データ処理部11は、入出力コマンドのロジカルアドレスを含むネットワーク構成情報を特定する。そして、データ処理部11は、特定されたネットワーク構成情報のデバイスID、入力データサイズ、及び出力データサイズと、MACフレームから抽出された入出力データと、MACフレームに含まれるタイムスタンプ(或いはMACフレームを受信した時刻を示すタイムスタンプ)とを対応づけて不揮発性メモリ13に記憶させる。以下、図8の各行を入出力レコードと表記する。
【0065】
そして、受信したMACフレーム内の全コマンドに対して前述の処理を実行することによって、マスタコントローラ21とスレーブデバイス22〜24との間で交換される入出力データの収集が完了する。なお、データ処理部11は、入出力レコードの記憶領域に余裕がある場合に、新たな入出力レコードを不揮発性メモリ13に追加する。一方、データ処理部11は、入出力レコードの記憶領域が一杯の場合に、最新の入出力レコードで最も古い入出力レコードを上書きする。最も古い入出力レコードは、例えば、タイムスタンプによって特定される。
【0066】
また、データ収集装置10は、コンフィグレータ、データ管理装置50、或いはユーザによって設定されたデータ収集条件(収集の開始条件、収集データ蓄積の範囲等)に基づいて、入出力データを記憶させるか否かを判断してもよい。収集開始条件としては、例えば、実時間時計、入出力データの変化或いは一致等が挙げられる。また、データ蓄積条件としては、例えば、最新の入出力データからメモリ許容量まで過去に遡った入出力データを記憶する等が挙げられる。
【0067】
さらに、MACフレームから抽出した入出力データを記憶させるのは不揮発性メモリ13に限定されない。データ処理部11は、例えば、コンフィグレータから受信回路を通じて受信したダウンロード設定、或いはデータ収集装置10に設けられたハードウエアスイッチ(不図示)を通じたユーザ設定に基づいて、入出力データを記憶させるメモリ(揮発性メモリ12又は不揮発性メモリ13)を選択してもよい。
【0068】
[データ送信処理]
次に、図9及び図10を参照して、データ収集装置10が収集した入出力データをデータ管理装置50に送信するデータ送信処理を説明する。図9に示されるデータ送信処理は、データ収集装置10のデータ処理部11によって実行される。
【0069】
まず、データ収集装置10のデータ処理部11は、図10(A)に示される収集データ一括要求コマンドを第2通信部15を通じてデータ管理装置50から受信したことに応じて(S21:Yes&S22:Yes)、不揮発性メモリ13に記憶された入出力データを含む収集データ一括応答コマンドを、第2通信部15を通じてデータ管理装置50に送信する(S23)。収集データ一括要求コマンドは、産業用ネットワークシステム100に含まれる全てのスレーブデバイス22〜24に対する入出力データの送信を要求するためのコマンドである。収集データ一括要求コマンドは、産業用ネットワークシステム100に含まれる全てのスレーブデバイス22〜24に対する入出力データを送信するためのコマンドである。
【0070】
図10(A)に示される収集データ一括要求コマンドは、マスタコントローラ21を識別するマスタIDと、当該コマンドが収集データ一括要求コマンドであることを示すコマンドIDとを含む。また、収集データ一括応答コマンドは、図10(C)に示されるように、マスタIDと、収集データ一括応答コマンドを識別するコマンドIDと、当該コマンドに含まれる入出力データの数に相当する応答スレーブ数と、応答スレーブ数に相当する1以上の入出力データとを含む。さらに、各入出力データは、例えば入出力レコードに含まれるデータのうち、デバイスID、入力データサイズ、入力データ、出力データサイズ、及び出力データを含む。
【0071】
また、データ処理部11は、図10(B)に示される収集データ個別要求コマンドを第2通信部15を通じてデータ管理装置50から受信したことに応じて(S22:No&S24:yes)、当該コマンドで特定される入出力データを含む収集データ個別応答コマンドを、第2通信部15を通じてデータ管理装置50に送信する(S25)。収集データ個別要求コマンドは、産業用ネットワークシステム100に含まれる特定のスレーブデバイスに対する入出力データのみの送信を要求するためのコマンドである。収集データ個別応答コマンドは、収集データ個別要求コマンドで要求された入出力データのみを送信するためのコマンドである。
【0072】
図10(B)に示される収集データ個別要求コマンドは、マスタIDと、収集データ個別要求コマンドを識別するコマンドIDと、送信すべき入出力データの数に相当する要求スレーブ数と、要求スレーブ数に相当する1以上のデバイスIDとを含む。また、収集データ個別応答コマンドは、図10(C)に示されるデータ構造において、収集データ個別応答コマンドを識別するコマンドIDが設定されている点において、収集データ一括応答コマンドと相違する。さらに、データ処理部11は、収集データ個別要求コマンドに含まれるデバイスIDに対応づけられた入出力データを、収集データ個別応答コマンドに含める。すなわち、収集データ個別要求コマンドの要求スレーブ数と、収集データ個別応答コマンドの応答スレーブ数とは、一致する。
【0073】
なお、データ収集装置10は、ステップS23、S25において、データ管理装置50に対してサーバーモードで動作する。また、データ処理部11は、ステップS23、S25において、不揮発性メモリ13に記憶された最新の入出力レコードに含まれる入出力データを、データ管理装置50に送信してもよい。または、入出力レコードは、データ管理装置50に送信されたか否かを示す送信フラグを含んでいてもよい。そして、データ処理部11は、送信フラグに”OFF(未送信を示す)”が設定された入出力レコードから抽出した入出力データを、データ管理装置50に送信してもよい。この場合の収集データ一括応答コマンドに含まれる入出力データの数、及び収集データ個別応答コマンドに含まれる入出力データの数は、応答スレーブ数の整数倍となる。
【0074】
さらに、データ処理部11は、設定送信条件を満たしたことに応じて(S21:No&S26:Yes)、当該条件に一致する収集データ一括応答コマンド或いは収集データ個別応答コマンドを、第2通信部15を通じてデータ管理装置50に送信する(S27)。このように、データ収集装置10のデータ処理部11は、例えば、予め設定されたタイミング(例えば、周期或いはイベント)をトリガー条件として、自発的に収集データ一括要求応答或いは収集データ個別要求応答をデータ管理装置50に送信してもよい。このときのデータ収集装置10は、データ管理装置50に対してクライアントモードで動作する。
【0075】
[実施形態1の作用効果]
上記構成によれば、マスタコントローラ21及びスレーブデバイス22〜24は、EtherCATネットワークにデータ収集装置10が接続されていることを意識することなく動作する。また、EtherCATネットワークには、データ収集装置10が接続されたことに伴うトラフィックの増加がない。その結果、リアルタイムEthernetネットワークの負荷、及びマスタコントローラ21のリソースの負荷を増大させることなく、当該リアルタイムEthernetネットワーク上で交換される入出力データを収集することができる。
【0076】
また、産業用ネットワークシステム100において、マスタコントローラ21によるスレーブデバイス22〜24の制御機能と、データ収集装置10によるデータ収集機能とを分離することで、マスタコントローラ21による制御周期の高速化(=入出力データ交換サイクルの高速化)と合わせて、データ収集装置10によるデータ収集速度の高速化(データ収集サイクルの高速化)が計れるという効果が生じる。
【0077】
また、上記構成によれば、MACフレーム内における入出力データのデータ構造をネットワーク構成情報に基づいて特定できるので、マスタコントローラ21のメーカー或いは機種に依存することなく、当該EtherCATネットワーク上で交換される入出力データを収集することができる。さらに、データ処理部11は、各入出力コマンドのWKCをチェックして、当該入出力コマンドに含まれる入出力データの抽出或いは破棄を決定するので、入力データ及び出力データを適切なタイミングでMACフレームから抽出することができる。
【0078】
さらに、上記構成によれば、収集データ一括/個別要求コマンドを受信したこと、或いは設定送信条件を満たしたことに応じて、収集した入出力データがデータ管理装置50に送信される。その結果、収集した入出力データを所望のタイミングでデータ管理装置50に送信することができる。
【0079】
[実施形態2]
次に、図11を参照して、実施形態2に係るデータ収集装置10Aを説明する。なお、実施形態1と共通する構成には同一の参照番号を付して詳しい説明を省略し、実施形態1との相違点を中心に説明する。
【0080】
実施形態2に係るデータ収集装置10Aは、図11に示されるように、第1通信部14と、データ処理部11Aと、データ管理部50Aとを備える。すなわち、実施形態2に係るデータ収集装置10Aは、実施形態1に係るデータ収集装置10及びデータ管理装置50の機能を併せ持っている。実施形態2に係るデータ収集装置10Aは、例えば、一般的なPC(Personal Computer)で構成される。
【0081】
まず、産業用ネットワークシステム100で送受信されるMACフレームをPCに標準的に搭載されるEthernetインタフェースで受信可能な場合、新たなハードウエアの追加及び構成変更をすることなく、当該Ethernetインタフェースを第1通信部14として利用できる。一方、MACフレームを受信できない場合は、専用の第1通信部14(ハードウェア及びソフトウェア)をPCに追加すればよい。
【0082】
また、実施形態2に係るデータ処理部11Aは、図11に示されるように、受信ドライバ、フレーム解析/抽出PG、及びAPI(Application Programming Interface)等の階層化されたソフトウェアによって実現できる。より詳細には、データ処理部11Aは、第1通信部14に受信させたMACフレームを受信ドライバで取得し、フレーム解析/抽出PGで入出力データを抽出する。
【0083】
さらに、実施形態2に係るデータ管理部50Aは、SCADA(Supervisory Control And Data Acquisition)或いはユーザプログラムによって実現される。すなわち、実施形態2に係るデータ管理部50Aは、SCADA等の汎用データ収集ソフト、またはユーザプログラムとして設計される専用ソフトウエアにより実現される。そして、データ管理部50Aとして機能するSCADA或いはユーザプログラムは、データ処理部11Aによって収集された入出力データをAPIを通じて取得し、記憶部17に記憶させる。
【0084】
上記構成によっても、実施形態1と同様の作用効果を得ることができる。また、実施形態1に係るデータ収集装置10及びデータ管理装置50の機能を統合したこにより、入出力データの解析等をよりリアルタイムに実現することができる。
【0085】
[実施形態3]
次に、図12図14を参照して、実施形態3に係るデータ収集装置10Bを説明する。なお、実施形態1、2と共通する構成要素には同一の参照番号を付して詳しい説明を省略し、相違点を中心に説明する。実施形態3に係るデータ収集装置10Bは、ダミースレーブ部60を備える点において、実施形態1、2に係るデータ収集装置11、11Aと相違する。
【0086】
実施形態3に係るマスタコントローラ21は、ダミースレーブ部60のネットワーク構成情報を有している。すなわち、マスタコントローラ21は、産業用ネットワークシステム100にダミースレーブ部60が接続されていると認識している。そして、マスタコントローラ21は、当該マスタコントローラ21で用いられている時計情報或いはスレーブデバイス22〜24の動作条件を定義するレシピ情報等(以下、「追加必要情報」と表記する。)を、ダミースレーブ部60に対する出力データとしてMACフレームに含める。すなわち、マスタコントローラ21は、図13に示されるマスタID、時計情報、レシピ情報、及びその他の情報を、ダミースレーブ部60に対するLWRコマンドのデータ領域に含めればよい。
【0087】
また、実施形態3に係るダミースレーブ部60は、図12に示されるように、MCU61と、外部揮発性メモリ62と、外部不揮発性メモリ63と、送受信回路64と、通信コネクタ65と、ユーザインタフェース部66とを備える。そして、ダミースレーブ部60のMCU61は、スレーブデバイス24によって送信されたMACフレームを通信コネクタ65及び送受信回路64を通じて受信し、当該MACフレーム内に含まれる出力データのWKCをインクリメントし、通信コネクタ65及び送受信回路64を通じてマスタコントローラ21に当該MACフレームを送信する。
【0088】
ダミースレーブ部60は、例えば、マスタコントローラ21との入出力データの交換に伴う実質的な動作が割り当てられていないスレーブデバイスとして機能する。すなわち、ダミースレーブ部60は、出力データを含むMACフレームを受信したことに応じて、前述の処理以外の処理を実行する必要がない。換言すれば、ダミースレーブ部60は、一般的なスレーブデバイスとしてのフルファンクションを持つ必要はない。さらに換言すれば、ダミースレーブ部60は、マスタコントローラ21からの出力データを受信できる機能を有していればよい。ダミースレーブ部60は、例えば、8/16/32/64/128バイトの出力データを受信できればよい。
【0089】
スレーブデバイス22〜24に対する入出力データの現在値のみでは、データ管理装置50によるデータ管理及びデータ分析に必要な情報が不足している場合があり得る。そこで、実施形態3に係るデータ収集装置10Bの第1通信部14Bは、ダミースレーブ部60に向けて送信されたMACフレームを、ダミースレーブ部60の通信コネクタ65を通じて取得する。これにより、データ収集装置10Bは、スレーブデバイス22〜24に対する入出力データと合わせて、ダミースレーブ部60に対する出力データとしてマッピングされた追加必要情報を収集することができる。
【0090】
なお、実施形態3では、データ収集装置10Bにダミースレーブ部60を一体化させた例を説明した。しかしながら、図14に示されるように、ダミースレーブ部60の機能を有するダミースレーブ25を、スイッチ40のポート45に接続してもよい。この場合、実施形態1、2に係るデータ収集装置10、10Aを産業用ネットワークシステム100に接続することによって、実施形態3の作用効果を得ることができる。
【0091】
なお、実施形態1〜3では、リアルタイムEthernetネットワークの一例として、EtherCATを説明したが、産業用ネットワークシステム100に適用されるネットワークの具体的な構成はこれに限定されない。例えば、Profinet、EthernetIP、MODBUS TCP等であってもよい。
【0092】
また、実施形態1〜3の説明において、「〜部」として説明しているものは、「〜回路」、「〜装置」、「〜機器」、「〜モジュール」であってもよく、また「〜処理」であってもよい。すなわち「〜部」として説明しているものは、ソフトウエアのみ、或いは素子、デバイス、基板、及び配線などのハードウエアのみ、或いはソフトウエアとハードウエアとの組み合わせで実現されても構わない。
【符号の説明】
【0093】
10,10A,10B・・・データ収集装置
11,11A・・・データ処理部
12・・・揮発性メモリ
13・・・不揮発性メモリ
14,14B・・・第1通信部
15・・・第2通信部
21・・・マスタコントローラ
22,23,24・・・スレーブデバイス
25・・・ダミースレーブ
50・・・データ管理装置
60・・・ダミースレーブ部
100・・・産業用ネットワークシステム
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16