(57)【要約】【課題】  連続性が保たれたスレーブ時刻と、スレーブ時刻から既知のズレを補正した時刻の、両方の時刻をマスタが取得可能とする産業用コントローラシステムを提供することを目的とする。【解決手段】  この発明に係る産業用コントローラシステムは、それぞれ計時手段を備え、ネットワークを介して接続されたマスタ装置およびスレーブ装置を備え、スレーブ装置は、自装置の計時手段とマスタ装置の計時手段との時間差を求める時間差認識部と、あらかじめ定めた目標時刻において調整が完了するように自装置の計時手段の時間の進みを徐々に調整するクロック調整部と、それぞれ異なる期間におけるスレーブ時刻とマスタ時刻との時刻を変換する第１の時刻変換式および第２の変換式を算出する時刻変換式算出部と、を備え、マスタ装置は、スレーブ装置より受信する第１の時刻変換式および第２の変換式に基づいてスレーブ装置を制御すること、を特徴とする。【選択図】          図１
2018112881.tif 000002
【特許請求の範囲】
【請求項１】
それぞれ計時手段を備え、ネットワークを介して接続されたマスタ装置およびスレーブ装置を備える産業用コントローラシステムであって、
前記マスタ装置は、
前記スレーブ装置との間で信号の送受信を行うマスタ側送受信部と、
計時タイミング信号を生成し、前記マスタ側送受信部を介して前記スレーブ装置に送信する時刻同期処理部と、
を備え、
前記スレーブ装置は、
前記マスタ装置との間で信号の送受信を行うスレーブ側送受信部と、
前記マスタ装置より受信した計時タイミング信号に基づいて、自装置の前記計時手段と前記マスタ装置の前記計時手段との時間差を求める時間差認識部と、
前記時間差認識部で求めた時間差に基づき、あらかじめ定めた目標時刻において調整が完了するように自装置の前記計時手段の時間の進みを徐々に調整するクロック調整部と、
それぞれ異なる期間におけるスレーブ時刻とマスタ時刻との時刻を変換する第１の時刻変換式および第２の時刻変換式を算出して前記スレーブ側送受信部を介して、前記マスタ装置へ前記第１の時刻変換式および第２の時刻変換式を送信する時刻変換式算出部と、
を備え、
前記マスタ装置は、前記スレーブ装置より受信する前記第１の時刻変換式および第２の時刻変換式に基づいて前記スレーブ装置を制御すること、
を特徴とする産業用コントローラシステム。
【請求項２】
前記マスタ装置は、計時手段を備える時刻補正装置に接続されており、
前記マスタ装置は、前記時刻補正装置からの計時タイミング信号を受信し、前記時刻補正装置と自装置の計時手段との時間差を求めるマスタ側時間差認識部と、
前記マスタ側時間差認識部により求められた時間差に基づいて、自装置の計時手段の時間の進みを徐々に調整するマスタ側クロック調整部と、
を備えることを特徴とする請求項１に記載の産業用コントローラシステム。
【請求項３】
前記時刻変換式算出部は、前記第２の時刻変換式に関する期間を経過した場合に、再度前記第２の時刻変換式を算出し、再度算出した前記第２の時刻変換式をマスタ装置に送信し、
前記マスタ装置は、前記再度算出した第２の時刻変換式に基づいて前記スレーブ装置を制御すること、
を特徴とする請求項１または２のいずれかに記載の産業用コントローラシステム。
【請求項４】
前記時刻同期処理部は、自装置の計時手段と前記スレーブ装置からの応答信号に基づいて、前記スレーブ装置とマスタ装置との間の伝送路遅延時間を算出し、算出した前記伝送路遅延時間を前記スレーブ装置に送信し、
前記時間差認識部は、前記時刻同期処理部により算出された前記伝送路遅延時間に基づいて、自装置の前記計時手段と前記マスタ装置の前記計時手段との時間差を求めること、
を特徴とする請求項１〜３のいずれか１項に記載の産業用コントローラシステム。
【請求項５】
前記スレーブ装置の前記時刻変換式算出部は、前記調整が完了する目標時刻における自装置の前記計時手段と前記マスタ装置の前記計時手段との時間差を用いた第２の時刻変換式を算出し、前記スレーブ側送受信部を介して前記マスタ装置へ前記第２の時刻変換式を送信し、
前記マスタ装置は、前記第２の時刻変換式を受信した場合、前記第２の時刻変換式を用いてスレーブ側が検出した事象の発生時刻をマスタ時刻に変換すること、
を特徴とする請求項１〜４のいずれか１項に記載の産業用コントローラシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の産業用コントローラがネットワークを介して接続された産業用コントローラシステムに関するものである。
【背景技術】
【０００２】
さまざまな産業で使用されている制御システムには、複数のプログラマブルロジックコントローラ（Programmable Logic Controller, 以下、ＰＬＣとする）と、そのＰＬＣにより動作が制御される機器（以下、制御機器とする）とが、制御系のネットワークにより接続される産業用ネットワークがある。
産業用ネットワークで用いられるＰＬＣには、時計が内蔵されたものがある。その時計が内蔵されたＰＬＣは、その時計に合わせて指定された動作、例えば、制御値の出力、データの取得を行うものがある。また近年は、時計に合わせて取得された複数のデータを解析し、制御機器の故障予知や予測制御を実施するものがある。
【０００３】
各ＰＬＣに内蔵された時計と、他のＰＬＣに内蔵された時計との時刻同期を行う場合には、ＰＬＣのうちの１つが基準時刻を管理するマスタとなり、マスタ以外のＰＬＣがマスタに管理されるスレーブとなり、スレーブとマスタ間のネットワーク遅延時間を考慮してマスタ時刻とスレーブ時刻の時間差を算出し、スレーブ時刻をマスタ時刻に一括で合わせるものがある。一括で時刻を合わせる場合、時間同期の前後において、２入力信号の時間差の測定などの制御処理が不適切な動作となる場合がある。例えば、２入力信号の時間差が時間同期の補正分の誤差を含むなどである。そこで、時間同期処理により、マスタとスレーブの時間差を認識した後、スレーブの時計の進みを調整し、徐々にマスタ時刻へ近づける手段を持つものがある（例えば、特許文献１）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−１５７９１３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１に記載の産業用コントローラでは、スレーブ時刻を徐々にマスタ時刻へ近づける間、スレーブ時刻とマスタ時刻にはズレが発生しており、時刻の連続性よりも時刻の精度が必要な故障予知や予測制御等に対して精度が低下する問題があった。
【０００６】
この発明は、上記のような課題を解決するためになされたものであり、そこで、本発明は、連続性が保たれたスレーブ時刻と、スレーブ時刻から既知のズレを補正した時刻の、両方の時刻をマスタが取得可能とし、目的に応じて使い分けることを可能とする産業用コントローラ、および産業用コントローラシステムに用いられる産業用コントローラを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明にかかる産業用コントローラシステムは、それぞれ計時手段を備え、ネットワークを介して接続されたマスタ装置およびスレーブ装置を備える産業用コントローラシステムであって、マスタ装置は、スレーブ装置との間で信号の送受信を行うマスタ側送受信部と、計時タイミング信号を生成し、マスタ側送受信部を介してスレーブ装置に送信する時刻同期処理部と、を備え、スレーブ装置は、マスタ装置との間で信号の送受信を行うスレーブ側送受信部と、マスタ装置より受信した計時タイミング信号に基づいて、自装置の計時手段とマスタ装置の計時手段との時間差を求める時間差認識部と、時間差認識部で求めた時間差に基づき、あらかじめ定めた目標時刻において調整が完了するように自装置の計時手段の時間の進みを徐々に調整するクロック調整部と、それぞれ異なる期間におけるスレーブ時刻とマスタ時刻との時刻を変換する第１の時刻変換式および第２の時刻変換式を算出してスレーブ側送受信部を介して、マスタ装置へ第１の時刻変換式および第２の時刻変換式を送信する時刻変換式算出部と、を備え、マスタ装置は、スレーブ装置より受信する第１の時刻変換式および第２の時刻変換式に基づいてスレーブ装置を制御すること、を特徴とする。
【発明の効果】
【０００８】
本発明に係る時刻同期システム、時刻同期方法および産業用コントローラによれば、スレーブの時間軸のズレを徐々に解消する調整作業中であっても、スレーブで発生したイベント（制御値の出力、データの取得等）に対して、マスタ時刻との既知の時間のズレを補正した時刻を用いた制御が可能となる。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施の形態１に係る産業用コントローラシステムの全体のブロック図である。
【図２】本発明の実施の形態１に係る産業用コントローラシステムのマスタ装置の構成を示すブロック図である。
【図３】本発明の実施の形態１に係る産業用コントローラシステムのスレーブ装置の構成を示すブロック図である。
【図４】本発明の実施の形態１に係る産業用コントローラシステムにおける時間同期処理のマスタとスレーブ間の処理を説明するための図である。
【図５】本発明の実施の形態１に係る産業用コントローラシステムにおけるスレーブの時計の進みの調整方法について説明するための図である。
【図６】本発明の実施の形態１に係る産業用コントローラシステムにおけるスレーブ時刻からマスタ時刻への時刻変換式の算出について説明するための図である。
【図７】本発明の実施の形態１に係る産業用コントローラシステムにおける時間同期処理と時刻変換式の送信のタイミングについて説明するための図である。
【図８】本発明の実施の形態２に係る産業用コントローラシステムにおける全体のブロック図である。
【図９】本発明の実施の形態２に係る産業用コントローラシステムのマスタの内部構成を示すブロック図である
【図１０】本発明の実施の形態２に係る産業用コントローラシステムのスレーブの内部構成を示すブロック図である。
【図１１】本発明の実施の形態２に係る産業用コントローラシステムのスレーブの時計の進みの調整方法について説明するための図である。
【発明を実施するための形態】
【００１０】
実施の形態１．
本発明の実施の形態１に係る産業用コントローラシステムについて、図面を用いて説明する。図１は、本発明の実施の形態１に係る産業用コントローラシステムのブロック図である。図２は、本システムに用いられるマスタ装置の内部構成を示すブロック図である。図３は、本システムに用いられるスレーブ装置の内部構成を示すブロック図である。
【００１１】
本実施の形態に係る産業用コントローラシステムは、図１に示すように複数の産業用コントローラを備えている。この複数の産業用コントローラのうちの１つをマスタ装置１０とし、残りの産業用コントローラをスレーブ装置２０としている。このマスタ装置１０と複数のスレーブ装置２０とが、ネットワーク３０を介し接続されている。また、マスタ装置１０とスレーブ装置２０は、それぞれ計時手段を備えている。
【００１２】
マスタ装置１０は、図２に示すようにクロック部１１、時刻同期処理部１２、制御処理部１３、受信データ格納部１４、送受信部１５、データ解析部１６および時刻変換式格納部１７を備えている。また、マスタ装置１０は、送受信部１５がネットワーク３０と接続されており、ネットワーク３０を介してスレーブ装置２０との通信を行う。
【００１３】
クロック部１１は、計時手段であり、例えば、タイムパルス信号を基準としてカウンタで時間が刻まれる方式の計時手段である。これらのタイムパルス信号は、各装置の持つ発振器でカウントアップされる時刻カウンタで一定カウント値に達すると生成されることが一般的である。しかしながら、これらの発振器は、発振器ごとの製造ばらつきや温度変化による周波数変化により、長時間経過すると各観測装置の時計はずれてきてしまい、正確な事象記録ができなくなる場合がある。
【００１４】
時刻同期処理部１２は、クロック部１１および送受信部１５と接続されており、時刻同期処理に用いる計時タイミング信号を生成し、送受信部１５を介してこの計時タイミング信号をスレーブ装置２０へ送信する。また、送受信部１５を介して受信したスレーブ装置２０からの応答信号に基づいて、マスタ装置１０とスレーブ装置２０間の伝送路遅延時間を算出し、スレーブ装置２０へマスタ装置１０の時刻を伝達する。制御処理部１３は、クロック部１１、受信データ格納部１４、送受信部１５およびデータ解析部１６と接続されており、各部からの信号に基づいてスレーブ装置２０への制御指令信号を生成する。
【００１５】
受信データ格納部１４は、制御処理部１３、送受信部１５およびデータ解析部１６と接続されており、送受信部１５を介してスレーブ装置２０から受信したタイムスタンプ付き情報を格納する。送受信部１５は、マスタ側の送受信部であり、ネットワーク３０と接続され、ネットワーク３０を介しスレーブ装置２０と通信を行う。データ解析部１６は、複数の受信データを解析し、予測制御や制御対象の故障予知などを行う。時刻変換式格納部１７は、スレーブ装置２０から受信した時刻変換式を格納する。
【００１６】
図３に、スレーブ装置２０の構成を示す。スレーブ装置２０は、送受信部２１、時間差認識部２２、クロック部２３、時刻変換式算出部２４、クロック調整部２５を備えている。また、スレーブ装置の送受信部２１が、ネットワーク３０と接続されており、ネットワーク３０を介して、マスタ装置１０との通信を行う。
【００１７】
送受信部２１は、マスタ装置１０から送信される信号を処理し、また、マスタ装置に対して送信する信号の処理を行う。ネットワーク３０を介してマスタ装置１０および他のスレーブ装置２０と接続されており、ネットワーク３０マスタ装置１０と通信を行う。
【００１８】
時間差認識部２２は、送受信部２１、クロック部２３および時刻変換式算出部２４と接続されており、マスタ装置１０との時間同期処理を実施し時間差を認識する。クロック部２３は、マスタ側のクロック部１１と同様の計時手段であり、時間差認識部２２およびクロック調整部２５と接続されている。クロック調整部２５は、時間差認識部２２において求めた時間差に基づいてマスタ装置１０との時間差を徐々に近づけるため時計の進み度合の調整を行う。時刻変換式算出部２４は、マスタ装置１０との時間差を徐々に近づける間のスレーブ装置２０の時刻からマスタ装置１０の時刻を算出するための変換式を算出する。
【００１９】
次に、本実施の形態1に係る産業用コントローラシステムの動作について説明する。
まず、マスタ装置１０の計時手段とスレーブ装置２０の計時手段との時間差認識処理について説明する。図４に、この時間差認識処理のシーケンスを示す。ここでは、マスタ装置１０に内蔵された計時手段により得られる時刻をマスタ時刻とし、同様にスレーブ装置２０に内蔵された計時手段により得られる時刻をスレーブ時刻として説明する。
【００２０】
時間差認識処理を行う場合、まずマスタ装置１０において、時刻同期処理部１２が計時タイミング信号を生成し、生成した計時タイミング信号を送受信部１５からスレーブ装置２０に対して送信する。また、時刻同期処理部１２は、計時タイミング信号を送信したマスタ時刻ｔ１をクロック部１１から取得し記憶しておく。
【００２１】
スレーブ装置２０では、送受信部２１がネットワーク３０を介して計時タイミング信号を受信する。計時タイミング信号を受信した場合、時間差認識部２２は、計時タイミング信号を受信したスレーブ時刻ｔ'２をクロック部２３より取得し記憶する。また、時間差認識部２２は、ｔ'２と現在時刻ｔ'３に関する情報を格納した応答信号を生成し、生成した応答信号を送受信部２１からマスタ装置１０へ送信する。
【００２２】
マスタ装置１０では、送受信部１５がスレーブ装置２０からの応答信号を受信する。時刻同期処理部１２は、スレーブ装置２０からの応答信号を受信した場合、この信号を受信したマスタ時刻ｔ４をクロック部１１から取得し格納しておく。時刻同期処理部１２は、格納したマスタ時刻ｔ１、ｔ４と、マスタ装置より受信した信号から得られるスレーブ時刻ｔ'２、ｔ'３の時刻から伝送路遅延時間Ｔｄを以下の式に従って算出する。
Ｔｄ×２＝（ｔ４−ｔ１）−（ｔ'３−ｔ'２）
時刻同期処理部１２は、算出した伝送路遅延時間Ｔｄとマスタ装置１０の現在時刻ｔ５を格納した遅延時間通知信号を生成し、送受信部１５よりスレーブ装置２０に送信する。
【００２３】
スレーブ装置２０では、時間差認識部２２は、遅延時間通知信号を受信した受信時刻ｔ'６をクロック部２３から取得し、受信したマスタ時刻ｔ５と伝送路遅延時間Ｔｄとからスレーブ時刻ｔ'６に対応するマスタ時刻ｔ６を以下の式に従って算出する。
ｔ６＝ｔ５＋Ｔｄ  
本実施の形態に係る時刻同期システムでは、上記の時間差認識処理を２回繰り返し、スレーブ装置側で、２つの時点でのスレーブ時刻と、これらのスレーブ時刻に対応するマスタ時刻を取得し、各時点における時間差を認識する。以下では、スレーブ時刻ｔ'１，ｔ'２と、スレーブ時刻ｔ'１，ｔ'２に対応するマスタ時刻ｔ１，ｔ２とを算出したものとして説明する。
【００２４】
次に、クロック部２３の時計の進みの調整動作について説明する。クロック調整部２５は、時間差認識部２２により算出されたマスタ時刻ｔ１，ｔ２およびスレーブｔ'１，ｔ'２を用いてクロック部２３の時計の進みの調整を行う。時間差認識部２２がマスタ時刻ｔ１，ｔ２を算出した後、マスタ装置１０との時間差を徐々に近づける間のスレーブ装置２０の時刻からマスタ装置１０の時刻を算出するための変換式を算出する。クロック調整部２５は、算出した変換式に基づいてスレーブ装置２０の時計の進みの調整処理を実施し、目標時刻（ここではマスタ時刻ｔ３とする）においてマスタ装置１０とスレーブ装置２０の時刻を一致させる。以下に調整処理について詳述する。
【００２５】
図５に、スレーブ装置２０の時計の進みの調整処理の説明図を示す。ここで、時計の進みとは、例えば、内部で時計のソースとなるクロックの発生回数をカウントし、Ｎ回クロックの発生によりＭナノ秒の時間を刻むなどの場合、Ｍ／Ｎを指す。２回の時間差認識処理により、スレーブ装置は、マスタ時刻ｔ１に対応するスレーブ時刻ｔ'１およびマスタ時刻ｔ２に対応するスレーブ時刻ｔ'２を認識する。マスタ時刻ｔ１からｔ２までの時計の進みをＷとし、スレーブ時刻ｔ'１からｔ'２までのスレーブ装置２０の時計の進みをＷ'１とした場合、ＷとＷ'１は下記の関係式であらわされる。
【００２６】
【数１】
2018112881.tif 000003
【００２７】
また、目標時刻（マスタ時刻ｔ３）においてスレーブ時刻とマスタ時刻を一致させるように徐々に時計を近づけるためのスレーブ装置２０の時計の進み度合をＷ'２とした時、Ｗ'２とＷは下記の関係式で表される。
【００２８】
【数２】
2018112881.tif 000004
上記数式（１）と数式（２）から、下記の関係式が導出される。
【００２９】
【数３】
2018112881.tif 000005
クロック調整部２５は、数式（３）に従ってスレーブ装置２０は時計の進みＷ'２を調整する。
【００３０】
次に、スレーブ時刻からマスタ時刻に変換する時刻変換式の算出処理について説明する。スレーブ装置２０の時刻変換式算出部２４は、任意のスレーブ時刻ｔ’ｘと、スレーブ時刻ｔ’ｘに対応するマスタ時刻ｔｘとの関係式を算出する。マスタ時刻ｔ２での時刻変換式の導出について図６に示す。図６において、横軸はマスタ時間、縦軸はスレーブ時間とである。時間同期処理に認識したマスタ時刻ｔ１でのスレーブ時刻ｔ'１、マスタ時刻ｔ２でのスレーブ時刻ｔ'２は下記の関係式であらわされる。
【００３１】
【数４】
2018112881.tif 000006
スレーブ時刻ｔ'１からｔ'２までの期間（ｔ'１＜ｔ'ｘ＜ｔ'２）における任意のマスタ時刻ｔｘとスレーブ時刻ｔ'ｘの関係式（第１の時刻変換式）は、上記の連立一次方程式から下記の式が導出される。
【００３２】
【数５】
2018112881.tif 000007
同様にスレーブ時刻ｔ'２からｔ'３までの期間（ｔ'２＜ｔ'ｘ＜ｔ'３）の任意のマスタ時刻ｔｘでのスレーブ時刻ｔ'ｘの関係式（第２の時刻変換式）について、マスタ時刻ｔ２、ｔ３およびスレーブ時刻ｔ'２、ｔ'３を用いて下記のように表すことができる。
【００３３】
【数６】
2018112881.tif 000008
【００３４】
時刻変換式算出部２４は、スレーブ時刻ｔ'２において算出した数式（５）に時刻変換式ＩＤ＝１を付与し、送受信部２１を介してマスタ装置１０へ送付し、同様に、数式（６）に時刻変換式ＩＤ＝２を付与し、送受信部２１を介してマスタ装置１０へ送付する。
【００３５】
ここで、スレーブ時刻ｔ'２において算出した数式（５）は、時間同期処理により認識したマスタ時刻ｔ１、ｔ２、スレーブ時刻ｔ'１、ｔ'２を用いているが、数式（６）はスレーブ時刻ｔ'３でマスタ時刻ｔ３が一致する前提での時刻変換式であり、正確な時刻変換式ではない場合がある。時刻変換式算出部２４は、スレーブ時刻ｔ'３で再度、時間差認識処理を行ってマスタ時刻ｔ３を認識した際に、再度、数式（６）と同様の時刻変換式を算出し、時刻変換式ＩＤ＝２を付与して、マスタ装置１０へ再送信を行う。マスタ装置１０は同一時刻変換式ＩＤの２回目の受信時に確定した時刻変換式と認識する。１回目で受信した時刻変換式で算出するマスタ時刻と２回目に受信した時刻変換式で算出するマスタ時刻とは異なる時刻となる場合があり、１回目に受信した時刻変換式を用いて算出したマスタ時刻を用いた場合、時刻の連続性が保たれない。
【００３６】
時間差認識処理と時刻変換式の送付、スレーブ装置２０の事象検出の例を図７に示す。スレーブ装置２０は、時間差認識処理１により、マスタ時刻ｔｎに対応するスレーブ時刻ｔ'ｎを認識する。スレーブ装置２０は、スレーブ時刻ｔ'ｎ−１からｔ'ｎまでの区間の時刻変換式をＩＤ＝ｎ−１で、ｔ'ｎからｔ'ｎ＋１までの区間の時刻変換式をＩＤ＝ｎとして、マスタ装置１０へ送信する。
【００３７】
次の時間差認識処理２でマスタ時刻ｔｎ＋１に対応するスレーブ時刻ｔ'ｎ＋１を認識し、スレーブ時刻ｔ'ｎからｔ'ｎ＋１までの区間の時刻変換式を算出し、算出した時刻変換式をＩＤ＝ｎを付して、ｔ'ｎからｔ'ｎ＋１までの区間の時刻変換式をＩＤ＝ｎ＋１として、マスタ装置１０へ送信する。すなわち、ＩＤ＝ｎの時刻変換式を再度算出することとなる。
【００３８】
スレーブ装置２０はスレーブ時刻ｔ'ｎからｔ'ｎ＋１までの区間内の時刻ｔ'ａで入力信号Ａの変化を検出し、スレーブ時刻ｔ'ｎ＋１からｔ'ｎ＋２の区間内の時刻ｔ'ｂで入力信号Ｂの変化を検出し、マスタ装置１０へスレーブ時刻ｔ'ｎ＋１からｔ'ｎ＋２の期間内に入力信号Ａ，Ｂの変化と変化時刻ｔ'ａ，ｔ'ｂを送付する。
【００３９】
マスタ装置１０は入力信号Ａの変化時刻ｔ'ａは２回目に受信したＩＤ＝ｎの時刻変換式により正確にマスタ時刻へ変換するが、入力信号Ｂの変化時刻ｔ'ｂは１回目に受信したＩＤ＝ｎ＋１の時刻変換式により誤差を含んだマスタ時刻へと変換する。入力信号Ｂの変化時刻ｔ'ｂの正確なマスタ時刻への変換のためには、さらに次の時間同期処理時に生成される、時刻変換式ＩＤ＝ｎ＋１の２回目の受信時に再計算を行う。
【００４０】
このように、マスタ装置１０はスレーブ装置２０が検出した事象の発生時刻を正確に認識したい場合には、２回目に受信した時刻変換式を用いてマスタ時刻へ変換を行って用いる。
【００４１】
また、マスタ装置１０からスレーブ装置２０へ指定時刻での制御を指示する場合などは、スレーブ時刻での動作を指示する。例えば、スレーブ装置２０へ時刻ｔ１で出力信号Ｙ１を出力し、時刻ｔ１＋１００マイクロ秒で出力信号Ｙ２を出力させる場合などである。
【００４２】
以上のように、本実施の形態に係る産業用コントローラシステムでは、スレーブ時刻の連続性を保つことができるとともに、スレーブ時刻から既知のズレを補正した時刻をマスタが取得可能となる。これにより、スレーブ装置２０が検出したデータをより正確に解析することが可能となり、データ解析に基づく装置の故障予知などの精度が高めることができる。
【００４３】
実施の形態２．
実施の形態１ではマスタ装置１０の時計の進みは一定とした場合について説明したが、本実施の形態では、マスタ装置１０が、外部ネットワーク上のタイムサーバ（時刻補正装置）と時間同期処理を行い、マスタ装置１０の時計の進みを調整する場合について説明する。図８は、実施の形態２に係る産業用コントローラシステムの構成を示すブロック図である。
【００４４】
図８におけるマスタ装置１０の内部構成を図９に示す。マスタ装置１０は図２で示した構成に加えて、タイムサーバと時間同期処理のための通信を行う送受信部１８ａ１（マスタ側送受信部）と、タイムサーバとの時間差を認識する時間差認識部１８ａ２（マスタ側時間差認識部）と、認識した時間差からクロック部１１の時計の進みを調整するクロック調整部１８ａ３（マスタ側クロック調整部）と、マスタ時刻からタイムサーバ時刻への時刻変換式を算出する時刻変換式算出部１８ａ４（マスタ側時刻変換式算出部）を備える。なお、図２で示した構成と同じ符号を付した構成について同一または同様の構成であり、説明を省略する。
【００４５】
図８におけるスレーブ装置２０の内部構成を図１０に示す。スレーブ装置２０は図３の構成に加えてマスタ時刻からタイムサーバ時刻への時刻変換式を格納する時刻変換式格納部２６を備える。なお、図３で示した構成と同じ符号を付した構成について同一または同様の構成であり、説明を省略する。
【００４６】
マスタ装置１０、スレーブ装置２０、タイムサーバ４０のそれぞれの時間差認識処理と補正処理について図１１に示す。マスタ装置１０とタイムサーバ４０は時間差認識処理により、タイムサーバ時刻ｔ１におけるマスタ時刻ｔ'１を、タイムサーバ時刻ｔ３におけるマスタ時刻ｔ'３を認識する。時間差認識処理については実施の形態１に示すものと同様であり、説明を省略する。
【００４７】
これらの時間を用いてマスタ装置１０は図５で示したスレーブ装置２０の時計の進みの調整方法と同様に、タイムサーバ時刻ｔ５でタイムサーバとマスタ時刻が一致するようにマスタ装置１０の時計の進みを調整し、図６で示したスレーブ時刻からマスタ時刻の時刻変換式の導出と同様に、マスタ時刻からタイムサーバ時刻への時刻変換式の算出を行い、スレーブ装置２０へ時刻変換式を送付する。
スレーブ時刻ｔ'１からｔ'３までの期間（ｔ'１＜ｔ'ｘ＜ｔ'３）におけるマスタ時刻からタイムサーバ時刻への時刻変換式は下記となる。
【００４８】
【数７】
2018112881.tif 000009
同様に、スレーブ時刻ｔ'３からｔ'５までの期間（ｔ'３＜ｔ'ｘ＜ｔ'５）におけるマスタ時刻からタイムサーバ時刻への時刻変換式は下記となる。
【００４９】
【数８】
2018112881.tif 000010
【００５０】
次に、スレーブ装置２０とマスタ装置１０は時間差認識処理により、マスタ時刻ｔ'２におけるスレーブ時刻ｔ''２、マスタ時刻ｔ'４におけるスレーブ時刻ｔ''４を認識する。マスタ時刻はタイムサーバ時刻へ一致させるために調整中のため、スレーブ装置２０の時計の調整はマスタ時刻へ一致させるのではなく、タイムサーバ時刻へと一致させるように、スレーブ装置２０の時計の進みを調整する。そのため、マスタ装置１０から受信したマスタ時刻からスレーブ時刻への時刻変換式（数式（７）、数式（８））を用いて、スレーブ時刻ｔ''２におけるタイムサーバ時刻ｔ２、スレーブ時刻ｔ''４におけるタイムサーバ時刻ｔ４を算出する。
【００５１】
タイムサーバ時刻ｔ''６でタイムサーバ時刻とスレーブ時刻を一致させるために、スレーブ装置２０の時計の進みは図５で示した算出方法と同様に、スレーブ時刻ｔ''２からスレーブ時刻ｔ''４までの時計の進みをＷ''１とし、調整後の時計の進みをＷ''２とすると、下記の式であらわされる。
【００５２】
【数９】
2018112881.tif 000011
クロック調整部２５は、数式（９）に従ってスレーブ装置２０は時計の進みＷ''２を調整する。
【００５３】
スレーブ装置２０はスレーブ時刻からタイムサーバ時刻への時刻変換式を算出し、マスタ装置１０へ送信する。スレーブ時刻ｔ''２からｔ''４までの期間（ｔ''２＜ｔ''ｘ＜ｔ''４）における任意のタイムサーバ時刻ｔｘとスレーブ時刻ｔ''ｘの関係式時刻変換式は下記の式で表される。
【００５４】
【数１０】
2018112881.tif 000012
また、スレーブ時刻ｔ''４からｔ''６までの期間（ｔ''４＜ｔ''ｘ＜ｔ''６）における任意のタイムサーバ時刻ｔｘとスレーブ時刻ｔ''ｘの関係式時刻変換式は下記の式で表される。
【００５５】
【数１１】
2018112881.tif 000013
【００５６】
マスタ装置１０はスレーブ装置２０から受信した時刻変換式（数式（１０）、数式（１１））を用いて、スレーブ装置２０から受信したタイムスタンプ付きデータに対し、データ解析など時刻精度を求める処理に対して、スレーブ時刻をタイムサーバ時刻へ変換し用いる。
【００５７】
以上のように、本実施の形態に係る制御システムでは、実施形態１の効果に加えて、スレーブ装置２０の時計の進みはマスタ装置１０の時計の進みではなく、タイムサーバ４０の時計の進みに対して調整を行うことが可能となり、マスタ装置１０の時計の進みの調整の影響を受けずに高速に時間同期を行うことができる。
【符号の説明】
【００５８】
１０  マスタ装置、１１  クロック部、１２  時刻同期処理部、１３  制御処理部、１４  受信データ格納部、１５  送受信部、１６  データ解析部、１７  時刻変換式格納部、１８ａ１  （マスタ側）送受信部、１８ａ２  （マスタ側）時間差認識部、１８ａ３  （マスタ側）クロック調整部、２０  スレーブ装置、２１  送受信部、２２  時間差認識部、２３  クロック部、２４  時刻変換式算出部、２５  クロック調整部、２６  時刻変換式格納部、３０  ネットワーク、４０  タイムサーバ
【図１】
2018112881.tif 000014
【図２】
2018112881.tif 000015
【図３】
2018112881.tif 000016
【図４】
2018112881.tif 000017
【図５】
2018112881.tif 000018
【図６】
2018112881.tif 000019
【図７】
2018112881.tif 000020
【図８】
2018112881.tif 000021
【図９】
2018112881.tif 000022
【図１０】
2018112881.tif 000023
【図１１】
2018112881.tif 000024