(57)【要約】【課題】高速シリアル通信を行う制御装置であって、通信相手の存在の誤認識を防ぐ疎通確認を可能とする制御装置を提供する。【解決手段】差動信号を用いて信号ケーブル接続の高速シリアル通信を行う数値制御装置１であって、シリアルデータを送信する送信部１５１と、シリアルデータを受信する受信部１５２と、通信先に対する疎通要求信号を送信部１５１を介して送信し、疎通応答信号を受信部１５２を介して受信することで、高速シリアル通信に係る疎通確認を行う疎通確認部１４１と、疎通確認部１４１に対して、疎通確認を予め設定された所定回数実行させ、疎通要求信号を送信してから疎通応答信号を受信するまでの応答時間のバラツキが予め設定された閾値以下又は未満の場合、通信先との接続状態が正常と判定する疎通判定部１４２と、を備える数値制御装置１。【選択図】図１
2020102683.tif 000002
【特許請求の範囲】
【請求項１】
信号ケーブル接続の高速シリアル通信を行う制御装置であって、
シリアルデータを送信する送信部と、
シリアルデータを受信する受信部と、
疎通要求信号を前記送信部を介して通信先に対して送信し、疎通応答信号を前記受信部を介して受信することで、前記通信先との高速シリアル通信に係る疎通確認を行う疎通確認部と、
前記疎通確認部に対して、前記疎通確認を予め設定された所定回数実行させ、前記疎通要求信号を送信してから前記疎通応答信号を受信するまでの応答時間のバラツキが予め設定された閾値以下又は閾値未満の場合、前記通信先との接続状態が正常と判定する疎通判定部と、を備える制御装置。
【請求項２】
前記高速シリアル通信は、ＡＣ結合の差動信号を用いた高速シリアル通信である、請求項１に記載の制御装置。
【請求項３】
前記疎通確認部は、
前記通信先との高速シリアル通信に係る疎通確認を前記制御装置の起動時に行い、前記疎通判定部により前記通信先との接続状態が正常と判定されなかった場合、前記通信先からの受信を止める、又は前記通信先に係るアラームをマスクする、請求項１又は請求項２に記載の制御装置。
【請求項４】
前記信号ケーブルは、電気信号ケーブルである、請求項１から請求項３のいずれか１項に記載の制御装置。
【請求項５】
前記信号ケーブルは光信号ケーブルであり、前記高速シリアル通信は、電気／光交換コネクタと前記光信号ケーブルを用いた光通信である、請求項１から請求項３のいずれか１項に記載の制御装置。
【請求項６】
請求項４又は請求項５に記載の制御装置と、Ｉ／Ｏユニットと、を前記電気信号ケーブル又は前記光信号ケーブルを介して接続した制御システム。
【請求項７】
請求項４又は請求項５に記載の制御装置と、サーボアンプ又はスピンドルアンプと、を前記電気信号ケーブル又は前記光信号ケーブルを介して接続した制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、高速シリアル通信を行う制御装置及び制御システムに関する。
【背景技術】
【０００２】
工作機械を制御する数値制御装置や産業用ロボットを制御するロボット制御装置は、例えば、光信号ケーブルを介してサーボアンプ等と接続し、短い周期でリアルタイム制御動作を行っており、通信路に高速性及び高い信頼性が求められる。このため、数値制御装置やロボット制御装置等の産業用機械の分野では、従来から、差動信号伝送方式に基づく高速シリアル通信により、通信接続をしている（特許文献１）。
さらに、高速シリアル通信では、送信側と受信側のＤＣバイアス差を吸収するため、ＡＣ結合した差動信号伝送方式が用いられることが一般的に知られている。以下、特に断らない限り、差動信号伝送方式は、ＡＣ結合した差動信号伝送方式を指すものとする。なお、高速シリアル通信は、制御装置とサーボアンプ間の通信接続に限られず、例えば、外部信号入出力用機器（以下、「Ｉ／Ｏユニット」ともいう）との入出力等にも適用されている。なお、Ｉ／Ｏユニットとの入出力では、制御装置は、通常、電気信号ケーブルを介して高速シリアル通信による通信接続を行っている。
また、産業用機械分野では、例えば、ＲＳ−４８５規格の高速シリアル通信（最大通信距離１２００ｍ、最大伝送速度１０Ｍｂｐｓ）は、現在も多く使われている。
【０００３】
図４Ａ及び図４Ｂに示すように、当業者にとって公知技術である、差動信号伝送方式は、２本の信号線を用いて１つの信号を伝送する方式である。２本の信号線は、プラス側（ポジティブ）、マイナス側（ネガティブ）として結線され、２つの信号の電位差が信号レベルになり、例えば差がプラスの場合‘Ｈ’、マイナスの場合‘Ｌ’と認識する。
【０００４】
通常、高速通信プロトコルにおいて、通信相手の存在を確認するための疎通確認プロトコルを用いて、通信相手の存在を確認することが行なわれる。
数値制御装置やロボット制御装置等の制御装置は、例えば起動時に、サーボアンプ、スピンドルアンプ、及びＩ／Ｏユニット等との入出力等に関して、通信相手の存在を確認するために疎通確認を行う。
具体的には、数値制御装置やロボット制御装置等の制御装置は、高速シリアル通信の接続通信先に対して疎通要求信号を送信し、接続通信先から当該疎通要求信号に対する疎通応答信号を受信することで、接続通信先の存在を確認する。
また、数値制御装置やロボット制御装置等の制御装置は、疎通確認を行うことで、例えば、サーボアンプ又はスピンドルアンプ等との間のケーブル長、及びＩ／Ｏユニット等との間のケーブル長を推定することができる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１０−４１４４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
数値制御装置やロボット制御装置等の制御装置とサーボアンプ又はスピンドルアンプ等のモータ用アンプとの光信号ケーブル接続の高速シリアル通信において、例えば、光信号ケーブル未接続時等のため、ノイズが発生し、光／電気変換コネクタが当該ノイズによる誤動作をした場合、又は光／電気変換コネクタが故障により誤動作をした場合に、当該制御装置は、終端抵抗に発生した差動電圧により生成される不確定データを受信する可能性がある。特に、光／電気変換コネクタが誤動作した場合は、電圧レベルや動作周波数の点では正常なデータが出力される可能性がある。
図５Ａに、光信号ケーブル接続の高速シリアル通信において、例えば、光／電気変換コネクタがノイズによる誤動作や故障による誤動作をした場合を例示する。図５Ａに示すように、終端抵抗に発生した差動電圧により生成される不確定データが正常な信号に化けた場合、例えば不確定データが、疎通応答信号に化けた場合、当該制御装置は、正しい通信相手が存在していると誤認識をする。そうすると、当該制御装置は、正しい通信相手が存在しているとの誤認識に基づいて、例えば通信エラー又はコンフィギュレーションエラーと判断し、アラーム処理をする可能性がある。疎通確認時において、このような誤認識に基づく不要なアラーム処理を防止することが望まれる。
【０００７】
同様に、数値制御装置やロボット制御装置等の制御装置とＩ／Ｏユニットとの電気信号ケーブル接続の高速シリアル通信においても、例えば当該制御装置の備える電気コネクタにおいて電気信号ケーブルが未接続の場合、又は、当該制御装置に電気コネクタが未実装の場合に、例えば当該制御装置の受信側回路がアンテナになってノイズを拾うことで、終端抵抗に発生した差動電圧により生成される不確定データを受信する可能性がある。
図５Ｂに、数値制御装置やロボット制御装置等の制御装置の受信側回路がノイズを拾うことで、終端抵抗に差動電圧が発生する場合を例示する。図５Ｂに示すように、終端抵抗に発生した差動電圧により生成される不確定データが正常な信号に化けた場合、例えば不確定データが、疎通応答信号に化けた場合、当該制御装置は、正しい通信相手が存在していると誤認識をする。そうすると正しい通信相手が存在しているとの誤認識に基づいて、当該制御装置は、例えば通信エラー又はコンフィギュレーションエラーとなり、アラーム処理をする可能性がある。疎通確認時において、このような不要なアラーム処理を防止することが望まれる。
【０００８】
以上のように、高速シリアル通信を行う数値制御装置やロボット制御装置等の制御装置においては、例えば信号ケーブル未接続、電気コネクタ未実装、又は電気／光交換コネクタが誤動作又は故障した時等に、仮に差動電圧が発生し、当該差動電圧により生成された不確定信号が疎通応答信号に化けた場合であっても、通信相手（例えば、サーボアンプ、スピンドルアンプ、Ｉ／Ｏユニット等）の存在の誤認識を防ぐ疎通確認を可能とすることが望まれている。
【課題を解決するための手段】
【０００９】
（１）本開示の１態様は、信号ケーブル接続の高速シリアル通信を行う制御装置であって、シリアルデータを送信する送信部と、シリアルデータを受信する受信部と、疎通要求信号を前記送信部を介して通信先に対して送信し、疎通応答信号を前記受信部を介して受信することで、前記通信先との高速シリアル通信に係る疎通確認を行う疎通確認部と、前記疎通確認部に対して、前記疎通確認を予め設定された所定回数実行させ、前記疎通要求信号を送信してから前記疎通応答信号を受信するまでの応答時間のバラツキが予め設定された閾値以下又は閾値未満の場合、前記通信先との接続状態が正常と判定する疎通判定部と、を備える制御装置に関する。
【００１０】
（２）  （１）に記載の制御装置において、前記高速シリアル通信は、ＡＣ結合の差動信号を用いた高速シリアル通信であるようにしてもよい。
【００１１】
（３）  （１）又は（２）に記載の制御装置において、前記疎通確認部は、前記通信先との高速シリアル通信に係る疎通確認を前記制御装置の起動時に行い、前記疎通判定部により前記通信先との接続状態が正常と判定されなかった場合、前記通信先からの受信を止める、又は前記通信先に係るアラームをマスクするようにしてもよい。
【００１２】
（４）  （１）から（３）までのいずれかに記載の制御装置において、前記信号ケーブルは、電気信号ケーブルであるようにしてもよい。
【００１３】
（５）  （１）から（３）までのいずれかに記載の制御装置において、前記信号ケーブルは光信号ケーブルであり、前記高速シリアル通信は、電気／光交換コネクタと前記光信号ケーブルを用いた光通信であるようにしてもよい。
【００１４】
（６）  本開示の１態様は、（４）と（５）に記載の制御装置と、Ｉ／Ｏユニットと、を前記電気信号ケーブル又は光信号ケーブルを介して接続した制御システムに関する。
【００１５】
（７）  本開示の１態様は、（４）と（５）に記載の制御装置と、サーボアンプ又はスピンドルアンプと、を前記電気信号ケーブル又は光信号ケーブルを介して接続した制御システムに関する。
。
【発明の効果】
【００１６】
本開示の１態様によれば、高速シリアル通信を行う数値制御装置やロボット制御装置等の制御装置において、例えば信号ケーブル未接続、電気コネクタ未実装、又は電気／光交換コネクタが誤動作又は故障した時等に、仮に差動電圧が発生し、当該差動電圧により生成された不確定信号が疎通応答信号に化けた場合であっても、通信相手（例えば、サーボアンプ、スピンドルアンプ、Ｉ／Ｏユニット等）の存在の誤認識を防ぐ疎通確認を可能とすることができる。
【図面の簡単な説明】
【００１７】
【図１】本実施形態の数値制御システムの一例を示す概略図である
【図２Ａ】数値制御装置、サーボアンプの送受信部の機能ブロックを示す概略図である。
【図２Ｂ】数値制御装置、Ｉ／Ｏユニットの送受信部の機能ブロックを示す概略図である。
【図３】本実施形態の数値制御装置による疎通確認処理動作を示すフローチャートである。
【図４Ａ】差動信号伝送方式の概要を示す図である。
【図４Ｂ】差動信号伝送方式の概要を示す図である。
【図５Ａ】数値制御装置の光信号ケーブル接続の高速シリアル通信において、光／電気変換コネクタがノイズによる誤動作又は故障により不確定データが発生する場合を例示する図である。
【図５Ｂ】数値制御装置の電気信号ケーブル接続の高速シリアル通信において、ノイズによる誤動作又は故障により不確定データが発生する場合を例示する図である。
【発明を実施するための形態】
【００１８】
（第１実施形態）
本発明の１つの実施形態の概略を説明する。１つの実施形態として、制御装置としての数値制御装置とモータ用アンプの一例であるサーボアンプとを光信号ケーブルで接続、及び／又は数値制御装置とＩ／Ｏユニットとを電気信号ケーブルで接続し、データ通信（高速シリアル通信）を行う形態を例示して説明する。なお、実施形態の構成等はこれに限られない。モータ用アンプはサーボアンプに限られない。例えば、スピンドルアンプ等であってもよい。また、モータ用アンプが電気信号ケーブルで接続されてもよい。またＩ／Ｏユニットが光信号ケーブルで接続されてもよい。また、高速シリアル通信を行う装置は数値制御装置に限られない。例えば、産業用ロボットを含む産業用機械の制御装置であってもよい。
【００１９】
図１は、上記実施形態に係る、数値制御装置１とサーボアンプ２とを光信号ケーブル５で接続、及び／又は数値制御装置１とＩ／Ｏユニット３とを電気信号ケーブル６で接続して構成される数値制御システム１０００の一例を示す概略図である。
図１に示すように、数値制御システム１０００は、数値制御装置１と、サーボアンプ２と、光信号ケーブル５と、光／電気変換コネクタ１９Ａ（２９）と、Ｉ／Ｏユニット３と、電気信号ケーブル６と、電気コネクタ１９Ｂ（３９）を備えている。
数値制御装置１と、サーボアンプ２とは、光／電気変換コネクタ１９Ａ（２１）を介して光信号ケーブル５に通信可能に接続され、差動シリアル信号による高速シリアル通信によるデータ通信を行っている。
具体的には、例えば、数値制御装置１からは、モータを駆動するための電流指令値等の制御信号が光信号ケーブルを通してサーボアンプ２に対して送信される。他方、サーボアンプ２からは、モータに対する電流値やモータの位置情報等のフィードバック情報が光信号ケーブルを通して数値制御装置１に対して送信される。
こうすることで、数値制御装置１は、サーボアンプ２を短い周期でリアルタイム制御を行うことができる。
同様に、数値制御装置１と、Ｉ／Ｏユニット３とは、電気コネクタ１９Ｂ（３９）を介して電気信号ケーブル６に通信可能に接続され、差動シリアル信号による高速シリアル通信によるデータ通信を行っている。
具体的には、例えば、Ｉ／Ｏユニット３は、数値制御装置１と工作機械（図示せず）との間で、入力信号（ＤＩ信号）／出力信号（ＤＯ信号）の入出力を行っている。
【００２０】
［数値制御装置１］
数値制御装置１は、図１に示すように、例えば、数値制御部１０、ＲＯＭ１１、ＲＡＭ１２、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）１３、疎通確認制御部１４、送受信部１５、光／電気変換コネクタ１９Ａ、電気コネクタ１９Ｂ等で構成されている。ＲＯＭ１１、ＲＡＭ１２、ＤＳＰ１３、疎通確認制御部１４、送受信部１５等は、例えばシステムバス（図示せず）を介して数値制御部１０に接続している。
ＤＳＰ１３は、数値制御部１０から指令される各軸の移動指令と、各軸のサーボモータ２１に内蔵された位置／速度検出器からフィードバックされる位置、速度、電流の各フィードバック信号とによって、各軸のサーボモータの位置のフィードバック制御、速度のフィードバック制御、及び電流制御を行い、サーボアンプ２への指令を生成するプロセッサである。
送受信部１５は、後述する送信部１５１と、後述する受信部１５２と、を含む。
送信部１５１は、光／電気変換コネクタ１９Ａ又は電気コネクタ１９Ｂに接続され、送信部１５１により出力される電気信号が、光／電気変換コネクタ１９Ａにより電気／光変換され、光信号ケーブル５に光信号の形態で送出、又は電気コネクタ１９Ｂを介して電気信号ケーブル６に電気信号の形態で送出する。
受信部１５２は、光／電気変換コネクタ１９Ａ又は電気コネクタ１９Ｂに接続され、光信号ケーブル５から入力される光信号が、光／電気変換コネクタ１９Ａにより光／電気変換され、又は電気信号ケーブル６から入力される電気信号が電気コネクタ１９Ｂを介して受信部１５２に電気信号の形態で入力される。
【００２１】
次に、信号ケーブル未接続、電気コネクタ未実装、又は電気／光交換コネクタが誤動作した時であっても、通信相手（例えば、サーボアンプ、スピンドルアンプ、Ｉ／Ｏユニット）の存在の誤認識を防ぐ疎通確認を可能とするための構成について詳細に説明する。
【００２２】
数値制御装置１の備える疎通確認部１４１及び疎通判定部１４２、並びにサーボアンプ２及びＩ／Ｏユニット３がそれぞれ備える疎通応答部２４及び疎通応答部３４を説明する前に、まず、数値制御装置１の備える送受信部１５の構成について図２Ａ及び図２Ｂを参照して簡単に説明する。
図２Ａは、数値制御装置１及びサーボアンプ２にそれぞれ含まれる送受信部１５及び送受信部２５の概略を示す図である。図２Ｂは、数値制御装置１及びＩ／Ｏユニットにそれぞれ含まれる送受信部１５及び送受信部３５の概略を示す図である。
【００２３】
［数値制御装置１の備える送受信部１５］
図２Ａ及び図２Ｂに示すように、送受信部１５は、送信部１５１と、受信部１５２と、を備える。図２Ａ及び図２Ｂに示すように、数値制御装置１は、サーボアンプ２との送受信のための送受信部１５及びＩ／Ｏユニット３との送受信のための送受信部１５をそれぞれ備える。
以下、数値制御装置１は、Ｎ１個のサーボアンプ２及びＮ２個のＩ／Ｏユニット３が、それぞれ、例えば光信号ケーブル５及び電気信号ケーブル６を介して高速シリアル通信を行う１つの実施形態を例示して説明する。ここで、Ｎ１、Ｎ２は任意の０以上の整数であり、Ｎ１＋Ｎ２＝Ｎ≧１とする。
なお、前述したように、モータ用アンプはサーボアンプに限られない。例えば、スピンドルアンプ等であってもよい。また、モータ用アンプが電気信号ケーブルで接続されてもよい。またＩ／Ｏユニットが光信号ケーブルで接続されてもよい。また、高速シリアル通信を行う装置は数値制御装置１に限られない。例えば、産業用ロボットを含む産業用機械の制御装置であってもよい。
【００２４】
次に、数値制御装置１の送受信部１５について説明する。ここでは、数値制御装置１の送受信部１５が、それぞれＮ１個のサーボアンプ２及びＮ２個のＩ／Ｏユニット３との高速シリアル通信を行う際の通信処理内容をわかりやすく説明するために、数値制御装置１は、送受信部１５をＮ個（１≦ｎ≦Ｎ）備えるものとして説明する。すなわち、上記Ｎ個の送受信部１５の内、Ｎ１個の送受信部１５が、サーボアンプ２との送受信のための送受信部１５、Ｎ２個の送受信部１５がＩ／Ｏユニット３との送受信のための送受信部１５とする。
なお、数値制御装置１は、Ｎが複数の場合、Ｎ個の通信先（例えば、Ｎ１個のサーボアンプ２及びＮ２個のＩ／Ｏユニット３）との間で高速シリアル通信を行うために、必ずしも物理的に複数Ｎ（＝Ｎ１＋Ｎ２）個の送受信部を備える必要はない。
例えば、数値制御装置１の備える１つの送受信部で、複数の通信先と通信するようにしてもよい。具体的には、通信チャネル数と同じ個数の送受信部を備えるようにしてもよい。例えば、光通信用のチャネルが２チャンネルある場合、光通信用のチャネル毎に送受信部を備えるようにしてもよい。また、光／電気変換コネクタ１９Ａと電気コネクタ１９Ｂの個数に対応して、それぞれに送受信部を備えるようにしてもよい。
以下、特に断らない限り、簡単のため、ｎを省略して、送受信部１５（送信部１５１と受信部１５２）とも記載する。
【００２５】
送信部１５１は、上位機能部（例えばＤＳＰ１８、疎通確認制御部１４等）で生成された１又は複数のバイト列（各バイトは例えば８ビットのデータ）から構成される送信データを差動シリアル信号に変換して、光／電気変換コネクタ１９Ａ又は電気コネクタ１９Ｂに出力する。光／電気変換コネクタ１９Ａは、差動シリアル信号を光信号に変換して、光信号ケーブル５に出力する。電気コネクタ１９Ｂは、差動シリアル信号を電気信号ケーブル６に出力する。
送信部１５１は、符号化部１５１１と、Ｐ／Ｓ変換部１５１２と、トランシーバ１５１３と、差動出力端子１５１４と、を含む。
符号化部１５１１は、例えば、１又は複数のバイト列（各バイトは例えば８ビットのデータ）から構成される送信データを送信する、８ビットのデータ）を１０ビットのデータに変換する。
Ｐ／Ｓ変換部１５１２は、パラレルデータをシングルのシリアルデータに変換する。トランシーバ１５１３は、シリアルデータをシリアルデータとシリアルデータの位相を反転させた逆位相のデータからなる差動シリアル信号を生成し、差動出力端子１５１４に出力する。
差動出力端子１５１４は正極性端子１５１４Ａと負極性端子１５１４Ｂを含み、それぞれ送信用の差動信号線ペアを介して光／電気変換コネクタ１９Ａ又は電気コネクタ１９Ｂに接続される。
【００２６】
受信部１５２は、光信号ケーブル５から受信された光信号が光／電気変換コネクタ１９Ａにより変換された差動シリアル信号、又は電気信号ケーブル６から電気コネクタ１９Ｂを介して受信された差動シリアル信号を入力し、通信相手から送信された１又は複数のバイト列（各バイトは例えば８ビットのデータ）から構成される受信データに変換して、上位機能部（例えばＤＳＰ１８）に出力する。なお、受信部１５２は、終端抵抗に既定電圧以上の差動電圧（正／負）がかかれば、ビットデータを受信したと判断する。
受信部１５２は、差動入力端子１５２１と、レシーバ１５２２と、Ｓ／Ｐ変換部１５２３と、復号化部１５２４と、を含む。
差動入力端子１５２１は正極性端子１５２１Ａと負極性端子１５２１Ｂを含み、それぞれ受信用の差動信号線ペアを介して光／電気変換コネクタ１９Ａに接続され、通信相手から送信された差動シリアル信号を受信して、レシーバ１５２２に出力する。
レシーバ１５２２は、差動入力端子１５２１からの入力をシングルのシリアルデータに変換してＳ／Ｐ変換部１５２３に出力する。
Ｓ／Ｐ変換部１５２３は、シリアルデータからクロック信号を分離して受信再生クロックを得るとともに、シリアルデータをパラレルデータに変換する。
復号化部１５２４は、例えば１０ビットのデータを８ビットのデータに復号して、上位機能部（例えばＤＳＰ１８、疎通確認制御部１４等）に通信相手（例えばサーボアンプ、スピンドルアンプ、Ｉ／Ｏユニット等）が送信してきた送信データとして出力する。
【００２７】
次に、通信相手（例えば、サーボアンプ、スピンドルアンプ、Ｉ／Ｏユニット等）の存在の誤認識を防ぐ疎通確認を可能とするための構成について説明する。
通信相手（例えば、サーボアンプ、スピンドルアンプ、Ｉ／Ｏユニット等）の存在の誤認識を防ぐ疎通確認を可能とするために、図１に示すように、数値制御装置１は、疎通確認制御部１４を備える。疎通確認制御部１４は、疎通確認部１４１と、疎通判定部１４２と、を備える。なお、以下の説明では、疎通確認制御部１４が疎通確認部１４１、及び疎通判定部１４２を備える場合を例示するが、これに限られない。例えば、数値制御部１０が備えるようにしてもよい。また、ＤＳＰ１３が備えるようにしてもよい。
【００２８】
［疎通確認部］
疎通確認部１４１は、疎通要求信号を送信部１５１を介して通信先に対して送信し、疎通応答信号を受信部１５２を介して受信することで、通信先との高速シリアル通信に係る疎通確認を行う。
具体的には、例えば数値制御装置１の起動時に、疎通確認部１４１は、疎通要求データを生成して、送信部１５１を介して、通信先ｎ（１≦ｎ≦Ｎ）に対して疎通要求データを送信させることで、当該送信部１５１に接続される全ての通信先ｎに対して、疎通要求データを送信する。なお、通信先ｎには、信号ケーブルが未接続の場合も存在する可能性があるが、信号ケーブルの接続／未接続に関わらず、全ての通信先ｎに対して、疎通要求データを送信する。その際、疎通確認部１４１は、送信部１５１を介して、各通信先ｎに対して疎通要求データを送信した時刻（タイムスタンプ）を例えば、記憶部に記憶する。
疎通確認部１４１は、送信部１５１を介して、通信先ｎに対して疎通要求データを、所定の時間をあけて、Ｍ回（Ｍは予め設定される送信回数）送信させる。
以下、送信部１５１を介して通信先ｎに送信したｊ番目の送信確認要求データを疎通要求データ（ｎ，ｊ）（１≦ｊ≦Ｍ）と記載し、当該疎通要求データの入力（送信）した時刻（タイムスタンプ）をｔ１（ｎ，ｊ）（１≦ｊ≦Ｍ）とする。
疎通確認部１４１は、送信部１５１を介して通信先ｎ毎に、疎通要求データ（ｎ，ｊ）を入力した時刻ｔ１（ｎ，ｊ）（タイムスタンプ）を例えば、記憶部（図示せず）に記憶する。
【００２９】
疎通確認部１４１は、送信部１５１を介して通信先ｎに送信したｊ番目の送信確認要求データ（疎通要求データ（ｎ，ｊ））（１≦ｊ≦Ｍ）に対する疎通応答データ（ｎ，ｊ）を受信部１５２を介して受信すると、当該疎通応答データ（ｎ，ｊ）を受信した時刻ｔ２（ｎ，ｊ）に基づいて、当該通信先への疎通要求データ（ｎ，ｊ）の送信から疎通応答（ｎ，ｊ）の受信までに要した時間Ｔ（ｎ，ｊ）を算出する。
なお、例えば、Ｎ１≧１でＮ１個のサーボアンプ２との送受信の場合（１≦ｎ≦Ｎ１の場合）であって、サーボアンプ２が光信号ケーブルで接続されている場合、サーボアンプ２までの光信号ケーブル５を含む通信路の最大線長に基づいて、タイムアウト時間を予め設定しておくことで、１度でもタイムアウトとなった場合は、疎通確認部１４１は、当該通信先が存在しないと判断し、当該通信先からの受信を止めるようにしてもよい、又は当該通信先に係るアラームをマスクするようにしてもよい。なお、サーボアンプ２が電気信号ケーブルで接続されている場合、サーボアンプ２までの電気信号ケーブル６を含む通信路の最大線長に基づいて、タイムアウト時間を予め設定する。
同様に、例えば、Ｎ２≧１でＮ２個のＩ／Ｏユニット３との送受信の場合（Ｎ１＋１≦ｎ≦Ｎ＝Ｎ１＋Ｎ２の場合）であって、Ｉ／Ｏユニット３が電気信号ケーブルで接続されている場合、Ｉ／Ｏユニット３までの電気信号ケーブル６を含む通信路の最大線長に基づいて、タイムアウト時間を予め設定しておくことで、１度でもタイムアウトとなった場合は、疎通確認部１４１は、当該通信先が存在しないと判断し、当該通信先からの受信を止めるようにしてもよい、又は当該通信先に係るアラームをマスクするようにしてもよい。なお、Ｉ／Ｏユニット３が光信号ケーブルで接続されている場合、Ｉ／Ｏユニット３までの光信号ケーブル５を含む通信路の最大線長に基づいて、タイムアウト時間を予め設定する。
それにより、例えば通信先において信号ケーブル未接続、電気コネクタ未実装、又は電気／光交換コネクタが誤動作又は故障した時等に、仮に差動電圧が発生し、当該差動電圧により生成された不確定信号が疎通応答信号に化けた場合における通信先の存在の誤認識に起因するエラー処理（アラーム処理）を防ぐことができる。すなわち、仮に不確定データを受信した場合であっても、データは無視される。
【００３０】
疎通判定部１４２は、当該通信先に送信した全てのｊ（１≦ｊ≦Ｍ）番目の送信確認要求データ（疎通要求データ（ｎ，ｊ））（１≦ｊ≦Ｍ）に対する疎通応答（ｎ，ｊ）の受信までに要した時間Ｔ（ｎ，ｊ）がタイムアウトとならなかった場合、｛Ｔ（ｎ，ｊ）：１≦ｊ≦Ｍ｝に関するバラツキ（ｎ）を算出する。ここで、バラツキは、例えば、｛Ｔ（ｎ，ｊ）：１≦ｊ≦Ｍ｝の最大値であるＭａｘ｛Ｔ（ｎ，ｊ）：１≦ｊ≦Ｍ｝と｛Ｔ（ｎ，ｊ）：１≦ｊ≦Ｍ｝の最小値であるＭｉｎ｛Ｔ（ｎ，ｊ）：１≦ｊ≦Ｍ｝との差分をバラツキの値としてもよい。なお、バラツキの算出方法はこれに限られない。任意の算出方法を適用してもよい。
疎通判定部１４２は、バラツキ（ｎ）が予め設定された閾値以下（又は予め設定された閾値未満）の場合、当該通信先が存在すると判定する。
逆に、疎通判定部１４２は、バラツキ（ｎ）が予め設定された閾値を超える（又は予め設定された閾値以上）の場合、通信先ｎが存在しないと判断し、当該通信先ｎからの受信を止める、又は当該通信先に係るアラームをマスクすることができる。ここで、当該閾値は、信号ケーブルの種類（光信号ケーブル５又は電気信号ケーブル６）に応じて設定してもよい。
それにより、例えば通信先において信号ケーブル未接続、電気コネクタ未実装、又は電気／光交換コネクタが誤動作又は故障した時等に、仮に差動電圧が発生し、当該差動電圧により生成された不確定信号が疎通応答信号に化けた場合における通信先の存在の誤認識に起因するエラー処理（アラーム処理）を防ぐことができる。すなわち、以降は、当該通信先からの受信停止とする（又は受信は動作しているが当該通信先に係るアラームをマスクする）ことで、仮に不確定データを受信した場合であっても、データは無視される。
以上、数値制御装置１の本願発明に係る機能部について説明したが、数値制御装置１特有の数値制御に係る機能部は、当業者にとって公知であり、説明は省略する。
【００３１】
［サーボアンプ２］
図１に示すようにサーボアンプ２は、サーボ駆動制御部２０と、疎通応答部２４と、送受信部２５と、光／電気変換コネクタ２９と、を備える。サーボ駆動制御部２０は、数値制御装置１から指令される各軸のモータを駆動するための電流指令値等の制御信号に基づいて、サーボモータ（図示せず）を駆動する。また、モータに対する電流値やモータの位置情報等のフィードバック情報を数値制御装置１に対してフィードバックする。なお、サーボアンプ２特有の駆動制御は、当業者にとって公知であり、説明は省略する。
【００３２】
［サーボアンプ２の備える送受信部２５］
図２Ａに示すように、サーボアンプ２の備える送受信部２５は、数値制御装置１の備える送受信部１５と同様の構成を備える。例えば、送信部１５１、符号化部１５１１、Ｐ／Ｓ変換部１５１２、トランシーバ１５１３、差動出力端子１５１４、受信部１５２、差動入力端子１５２１と、レシーバ１５２２、Ｓ／Ｐ変換部１５２３、及び復号化部１５２４をそれぞれ、送信部２５１、符号化部２５１１、Ｐ／Ｓ変換部２５１２、トランシーバ２５１３、差動出力端子２５１４、受信部２５２、差動入力端子２５２１と、レシーバ２５２２、Ｓ／Ｐ変換部２５２３、及び復号化部２５２４と読み換えることで説明される。
【００３３】
次に、通信相手（例えば、数値制御装置１）からの疎通確認（疎通要求信号）に対する応答（疎通応答信号）を送信するための構成について説明する。
通信相手（例えば、数値制御装置１）からの疎通確認（疎通要求信号）に対する応答（疎通応答信号）を送信するために、サーボアンプ２は、疎通応答部２４を備える。
疎通応答部２４は、数値制御装置１の送信部１５１を介してのｊ番目の疎通要求データ（ｎ，ｊ）（１≦ｊ≦Ｍ）を受信すると、当該疎通要求に対応するｊ番目の疎通応答データ（ｎ，ｊ）を数値制御装置１（受信部１５２）に対して送信する。
【００３４】
［Ｉ／Ｏユニット３］
図１に示すようにＩ／Ｏユニット３は、制御部３０と、疎通応答部３４と、送受信部３５と、電気コネクタ３９と、を備える。
【００３５】
［Ｉ／Ｏユニット３の備える送受信部３５］
図２Ｂに示すように、Ｉ／Ｏユニット３の備える送受信部３５は、サーボアンプ２の備える送受信部２５と同様の構成を備える。例えば、送信部２５１、符号化部２５１１、Ｐ／Ｓ変換部２５１２、トランシーバ２５１３、差動出力端子２５１４、受信部２５２、差動入力端子２５２１と、レシーバ２５２２、Ｓ／Ｐ変換部２５２３、及び復号化部２５２４をそれぞれ、送信部３５１、符号化部３５１１、Ｐ／Ｓ変換部３５１２、トランシーバ３５１３、差動出力端子３５１４、受信部３５２、差動入力端子３５２１と、レシーバ３５２２、Ｓ／Ｐ変換部３５２３、及び復号化部３５２４と読み換えることで説明される。
【００３６】
次に、通信相手（例えば、数値制御装置１）からの疎通確認（疎通要求信号）に対する応答（疎通応答信号）を送信するための構成について説明する。
通信相手（例えば、数値制御装置１）からの疎通確認（疎通要求信号）に対する応答（疎通応答信号）を送信するために、Ｉ／Ｏユニット３は、疎通応答部３４を備える。
疎通応答部３４は、数値制御装置１の送信部１５１のｊ番目の疎通要求データ（ｎ，ｊ）（１≦ｊ≦Ｍ）を受信すると、当該疎通要求に対応するｊ番目の疎通応答データ（ｎ，ｊ）を数値制御装置１（受信部１５２）に対して送信する。
以上、本実施形態の数値制御システム１０００の各機能部の実施形態を数値制御装置１００、サーボアンプ２、及びＩ／Ｏユニット３の構成に基づいて説明した。
【００３７】
次に、図３のフローチャートを参照して、本実施形態の動作について説明する。図３は、数値制御装置１が通信相手（例えば、サーボアンプ、スピンドルアンプ、Ｉ／Ｏユニット等）の存在又は不存在を判定する動作を示すフローチャートの一例である。なお、図３に示すフローチャートは一例であって、これに限られない。
【００３８】
図３を参照すると、ステップＳ１０において、数値制御装置１は、例えば、起動されると、疎通確認部１４１は、全ての送信部１５１を介して、通信する通信先ｎに対して、疎通確認を行うために、ｎに１を設定する。
ステップＳ１１において、数値制御装置１（疎通確認部１４１）は、送信部１５１−ｎを介して通信先に対して、所定回数（Ｍ回）疎通確認を行うために、ｊに１を設定する。
ステップＳ１２において、数値制御装置１（疎通確認部１４１）は、通信先ｎに対して、Ｍ回疎通確認を行ったか否かを判定する。ＹＥＳの場合（すなわち、Ｍ回行った場合）、ステップＳ１８に移る。ＮＯの場合（すなわち、Ｍ回行っていない場合）、ステップＳ１３に移る。
【００３９】
ステップＳ１３において、数値制御装置１（疎通確認部１４１）は、通信先ｎに対して、疎通要求データ（ｎ，ｊ）を送信する。
ステップＳ１４において、数値制御装置１（疎通確認部１４１）は、タイムアウトか否かを判定する。ＹＥＳの場合（すなわち、タイムアウトの場合）、ステップＳ２０に移る。ＮＯの場合（タイムアウトでない場合）、ステップＳ１５に移る。
【００４０】
ステップＳ１５において、数値制御装置１（疎通確認部１４１）は、疎通要求データ（ｎ，ｊ）に対する疎通応答データ（ｎ，ｊ）を受信する。
ステップＳ１６において、数値制御装置１（疎通確認部１４１）は、疎通要求データ（ｎ，ｊ）に対する疎通応答データ（ｎ，ｊ）の受信までに要した応答時間Ｔ（ｎ，ｊ）を算出する。
【００４１】
ステップＳ１７において、数値制御装置１（疎通確認部１４１）は、ｊに１をプラスして、ステップＳ１２に戻る。
ステップＳ１８において、数値制御装置１（疎通判定部１４２）は、通信先ｎに対する複数回（Ｍ回）の疎通確認の応答時間のバラツキ値（ｎ）を算出する。
【００４２】
ステップＳ１９において、数値制御装置１（疎通判定部１４２）は、バラツキ値（ｎ）が予め設定された閾値を超えるか否かを判定する。ＹＥＳの場合（すなわち、閾値を超える場合）ステップＳ２０に移る。ＮＯの場合（すなわち、閾値を超えない場合）ステップＳ２１に移る。
【００４３】
ステップＳ２０において、数値制御装置１（疎通判定部１４２）は、当該通信先は不存在であると判定し、当該通信先からの受信停止処理、又は受信は動作しているが当該通信先に係るアラームをマスクする処理を行う。その後、ステップＳ２２に移る。
【００４４】
ステップＳ２１において、数値制御装置１（疎通判定部１４２）は、当該通信先ｎの存在を確認する。
【００４５】
ステップＳ２２において、数値制御装置１（疎通確認部１４１）は、次の送信部１５１を介して通信する通信先ｎの疎通確認を行うため、ｎに１をプラスする。
ステップＳ２３において、全ての通信先ｎに関して、疎通確認が終了したか否かを判定する。ＹＥＳの場合、疎通確認処理を終了する。ＮＯの場合、ステップＳ１１に移る。
以上のようにして、数値制御装置１は、例えば、起動されると、全ての通信先に対して、疎通確認を行い、存在／不存在を判定し、不存在の場合、当該通信先からの受信停止処理又は、当該通信先に係るアラームをマスクすることができる。こうすることにより、高速シリアル通信を行う数値制御装置１は、例えば、信号ケーブル未接続、電気コネクタ未実装、又は電気／光交換コネクタが誤動作した時であっても、通信相手（例えば、サーボアンプ、スピンドルアンプ、Ｉ／Ｏユニット等）の存在の誤認識を防ぐことができる。
【００４６】
数値制御装置１の各種機能部は、例えばＲＯＭ１１等に格納された所定のソフトウェアとハードウェアとの協働で実現されてもよいし、ハードウェア（電子回路、ＬＳＩ等）のみで実現されてもよい。サーボアンプ２及びＩ／Ｏユニット３の各種機能部についても同様である。
また、本発明で使用する動作プログラムを初めとするプログラムは、様々なタイプの非一時的なコンピュータ可読媒体（ｎｏｎ−ｔｒａｎｓｉｔｏｒｙ  ｃｏｍｐｕｔｅｒ  ｒｅａｄａｂｌｅ  ｍｅｄｉｕｍ）を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体（ｔａｎｇｉｂｌｅ  ｓｔｏｒａｇｅ  ｍｅｄｉｕｍ）を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体（例えば、フレキシブルディスク、磁気テープ、ハードディスクドライブ）、光磁気記録媒体（例えば、光磁気ディスク）、ＣＤ−ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＣＤ−Ｒ、ＣＤ−Ｒ／Ｗ、半導体メモリ（例えば、マスクＲＯＭ、ＰＲＯＭ（Ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）、ＥＰＲＯＭ（Ｅｒａｓａｂｌｅ  ＰＲＯＭ）、フラッシュＲＯＭ、ＲＡＭ（ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ））を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体（ｔｒａｎｓｉｔｏｒｙ  ｃｏｍｐｕｔｅｒ  ｒｅａｄａｂｌｅ  ｍｅｄｉｕｍ）によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【００４７】
上述した実施形態は、本発明の好適な実施形態の１つではあるが、上記実施形態のみに本発明の範囲を限定するものではなく、本発明の要旨を逸脱しない範囲において種々の変更を施した形態での実施が可能である。
【００４８】
＜変形例１：デイジーチェーン＞
前述した実施形態では、数値制御装置１の各送受信部１５には、それぞれ１台のサーボアンプ２又は１台のＩ／Ｏユニット３が光信号ケーブル５又は電気信号ケーブル６を介して接続される場合を例示したが、これに限られない。
例えば、数値制御装置１の送受信部１５に、複数のサーボアンプ２をデイジーチェーンで接続してもよい。同様に、数値制御装置１の送受信部１５に、複数のＩ／Ｏユニット３をデイジーチェーンで接続してもよい。
この場合、例えば、サーボアンプ２は、前段に接続されている数値制御装置１又はサーボアンプ２から信号を受信すると、受信した信号をそのまま後段に接続されているサーボアンプ２に送信する。また、サーボアンプ２は、後段に接続されているサーボアンプ２から信号を受信すると、受信した信号をそのまま前段に接続されている数値制御装置１又はサーボアンプ２に送信する。このようにして、数値制御装置１又は各サーボアンプ２との間で通信を行うことができる。複数のＩ／Ｏユニット３をデイジーチェーンで接続する場合も同様である。
デイジーチェーン接続された各サーボアンプ２又は各Ｉ／Ｏユニット３との疎通確認は、数値制御装置１から、通信先のサーボアンプ２又はＩ／Ｏユニット３の例えばスレーブ番号を疎通要求データに付して送信することで、通信先のサーボアンプ２又はＩ／Ｏユニット３から、スレーブ番号を付した疎通応答データを受信するように構成することができる。
具体的には、図３に示したフローチャートにおいて、Ｓ１１からＳ２０又はＳ２１までの処理をデイジーチェーンで接続される全ての通信先に対して実行する。
【００４９】
＜変形例２＞
上述した実施形態では、制御装置として数値制御装置１を例として説明したが、これに限られない。前述したように、ロボットコントローラ等、産業用機械の制御装置における高速シリアル通信にも適用してもよい。また、上述した実施形態では、サーボアンプ、スピンドルアンプ等のモータ用アンプ、及びＩ／Ｏユニットを例として説明したが、これに限られない。数値制御装置、ロボットコントローラ等の産業用機械の制御装置と高速シリアル通信で接続される装置に適用してもよい。
【符号の説明】
【００５０】
１  数値制御装置
１０  数値制御部
１１  ＲＯＭ
１２  ＲＡＭ
１３  ＤＳＰ
１４  疎通確認制御部
１４１  疎通確認部
１４２  疎通判定部
１５  送受信部
１９Ａ  光／電気変換コネクタ
１９Ｂ  電気コネクタ
２  サーボアンプ
２０  サーボ駆動制御部
２４  疎通応答部
２５  送受信部
３  Ｉ／Ｏユニット
３０  制御部
３４  疎通応答部
３５  送受信部
５  光信号ケーブル
６  電気信号ケーブル
１０００  数値制御システム
【図１】
2020102683.tif 000003
【図２Ａ】
2020102683.tif 000004
【図２Ｂ】
2020102683.tif 000005
【図３】
2020102683.tif 000006
【図４Ａ】
2020102683.tif 000007
【図４Ｂ】
2020102683.tif 000008
【図５Ａ】
2020102683.tif 000009
【図５Ｂ】
2020102683.tif 000010