(57)【特許請求の範囲】
【請求項１】
複数の駆動軸の各々に対応した複数のアブソリュート型のエンコーダと、
前記複数のアブソリュート型のエンコーダの各々から出力されるエンコーダ信号のビット列の各ビットのハイレベル又はローレベルを示す第１ビットと、前記エンコーダ信号のデータの有無を示す第２ビットとを多重化した多重化データを生成し、前記エンコーダ信号に付加されたフレームチェックシーケンスによる誤りの検出又は前記多重化データが所定時間だけ受信できないタイムアウト異常検出の少なくとも一方の検出に応じて、前記第１ビットをハイレベル又はローレベルとし、前記第２ビットをデータ無しに設定したデータを、異常を報知するデータとして送信する多重化手段と、
自局において演算したフレームチェックシーケンスの演算結果を、前記エンコーダ信号に付加されたフレームチェックシーケンスの値と比較した結果と、前記異常を報知するデータの受信の有無とに基づいて、自局前に既に異常となっていたのか、あるいは自局転送中に異常となったのかを判定し、自局転送中に異常となった場合に、異常回数をカウントするカウント手段と、
を備えることを特徴とする多重化通信装置。
【請求項２】
前記カウント手段は、送信及び受信の経路ごとに前記異常回数をカウントすることを特徴とする請求項１に記載の多重化通信装置。
【請求項３】
前記カウント手段は、連続して発生した前記異常回数をカウントすることを特徴とする請求項１又は請求項２に記載の多重化通信装置。
【請求項４】
前記カウント手段がカウントした前記異常回数を表示する表示手段を備えることを特徴とする請求項１乃至請求項３のいずれかに記載の多重化通信装置。
【請求項５】
複数のポートの産業用イーサネット（登録商標）の信号を１つの伝送路にのせる多重化通信装置であって、
データの論理層と物理層の内部インターフェースであるメディアインペンデントインターフェース最小単位データにデータ有無のフラグ情報を付加し、データの最小単位の送受信を行い、データの連続性を確保した状態で多重化した多重化データを生成し、前記産業用イーサネット（登録商標）において伝送されるデータに付加されたフレームチェックシーケンスによる誤りの検出又は前記多重化データが所定時間だけ受信できないタイムアウト異常検出の少なくとも一方の検出に応じて、前記メディアインペンデントインターフェース最小単位データにおける所定の有効な値に、データ無しであることを示す前記フラグ情報を付加したデータを、異常を報知するデータとして送信する多重化手段と、
自局において演算したフレームチェックシーケンスの演算結果を、前記産業用イーサネット（登録商標）におけるデータに付加されたフレームチェックシーケンスの値と比較した結果と、前記異常を報知するデータの受信の有無とに基づいて、自局前に既に異常となっていたのか、あるいは自局転送中に異常となったのかを判定し、自局転送中に異常となった場合に、異常回数をカウントするカウント手段と、
を備えることを特徴とする多重化通信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、多軸のエンコーダ信号を多重化して送信する多重化通信装置に関するものである。
【背景技術】
【０００２】
従来、電子部品実装装置などの作業用ロボットは、例えば、電子部品を吸着する吸着ノズルの位置や向き等を変更する駆動源として電磁モータが装着ヘッドに内蔵されている。また、作業用ロボットは、電磁モータの変位等を検出するエンコーダから出力されるエンコーダ信号に基づいて、電磁モータを駆動制御するアンプ部が装置本体側に設けられる。この場合、アンプ部とエンコーダとを直接接続するのが一般的な接続方法である。
【０００３】
また、この種の作業用ロボットでは、吸着ノズルをより多様な方向（多軸）に精度よく動作させるために、より多くの電磁モータを装着ヘッドに内蔵したいという要望がある。作業用ロボットは、装着ヘッドに搭載する電磁モータやエンコーダの装置数が増加すると、アンプ部とエンコーダ等とを直接接続するワイヤーハーネスの本数が増加し、ケーブルダクトとして大きなエリアを確保する必要が生じて装置の設計自由度が低下する。これに対し、アンプ部とエンコーダとのワイヤーハーネスの本数を少なくするためにエンコーダ信号を多重化して共通の通信線を介して伝送する多重化通信装置がある（例えば、特許文献１など）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第３１８６４９０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記した多重化通信装置では、通信線を共通化したことで、不具合がある箇所を見つけ出すことが困難となる。より具体的には、何らかの障害が発生しメンテナンスを行う際に、多重化の処理回路、アンプ部との接続線、エンコーダとの接続線など、どの回路やワイヤーハーネスが劣化・故障したのかがわからず、適切な処置を行うまでの作業時間が長くなるという問題がある。
【０００６】
本発明は、上記の課題に鑑みてなされたものであり、不具合が発生した場合に、迅速且つ適切に処置を行うことが可能な多重化通信装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を鑑みてなされた本願に開示される技術に係る多重化通信装置は、複数の駆動軸の各々に対応した複数のアブソリュート型のエンコーダと、複数のアブソリュート型のエンコーダの各々から出力されるエンコーダ信号のビット列の各ビットのハイレベル又はローレベルを示す第１ビットと、エンコーダ信号のデータの有無を示す第２ビットとを多重化した多重化データを生成し、エンコーダ信号に付加されたフレームチェックシーケンスによる誤りの検出又は多重化データが所定時間だけ受信できないタイムアウト異常検出の少なくとも一方の検出に応じて、第１ビットをハイレベル又はローレベルとし、第２ビットをデータ無しに設定したデータを、異常を報知するデータとして送信する多重化手段と、自局において演算したフレームチェックシーケンスの演算結果を、エンコーダ信号に付加されたフレームチェックシーケンスの値と比較した結果と、異常を報知するデータの受信の有無とに基づいて、自局前に既に異常となっていたのか、あるいは自局転送中に異常となったのかを判定し、自局転送中に異常となった場合に、異常回数をカウントするカウント手段と、を備えることを特徴とする。
【０００８】
また、上記課題を鑑みてなされた本願に開示される技術に係る多重化通信装置は、複数のポートの産業用イーサネット（登録商標）の信号を１つの伝送路にのせる多重化通信装置であって、データの論理層と物理層の内部インターフェースであるメディアインペンデントインターフェース最小単位データにデータ有無のフラグ情報を付加し、データの最小単位の送受信を行い、データの連続性を確保した状態で多重化した多重化データを生成し、産業用イーサネット（登録商標）において伝送されるデータに付加されたフレームチェックシーケンスによる誤りの検出又は多重化データが所定時間だけ受信できないタイムアウト異常検出の少なくとも一方の検出に応じて、メディアインペンデントインターフェース最小単位データにおける所定の有効な値に、データ無しであることを示すフラグ情報を付加したデータを、異常を報知するデータとして送信する多重化手段と、自局において演算したフレームチェックシーケンスの演算結果を、産業用イーサネット（登録商標）におけるデータに付加されたフレームチェックシーケンスの値と比較した結果と、異常を報知するデータの受信の有無とに基づいて、自局前に既に異常となっていたのか、あるいは自局転送中に異常となったのかを判定し、自局転送中に異常となった場合に、異常回数をカウントするカウント手段と、を備えることを特徴とする。
【０００９】
なお、ここでいう「複数のポートの産業用イーサネット（登録商標）の信号」とは、例えば、１００ｂａｓｅ−ｔｘがある。「データの論理層と物理層の内部インターフェース」とは、例えば、ＭＩＩ：Ｍｅｄｉａ  Ｉｎｄｅｐｅｎｄｅｎｔ  Ｉｎｔｅｒｆａｃｅ，ＧＭＩＩ：Ｇｉｇａｂｉｔ  Ｍｅｄｉａ  Ｉｎｄｅｐｅｎｄｅｎｔ  Ｉｎｔｅｒｆａｃｅ等がある。「最小単位」とは、例えば、ＭＩＩでは、１Ｎｉｂｂｌｅの２５ＭＨｚ，４ＢＩＴであり、ＧＭＩＩでは、１２５ＭＨｚ，８ＢＩＴである。「データの最小単位の送受信を行い」とは、例えば、イーサネット（登録商標）の規格ＧｂＥによる１００ｂａｓｅ−ｔｘの半２重通信時では一定の固定間隔（１５クロック）で送受信を切り替え、ＳＦＰ等を使用する全２重通信では一定の固定間隔（１０クロック）で送受信を行う。
【発明の効果】
【００１０】
本発明では、不具合が発生した場合に、迅速且つ適切に処置を行うことが可能な多重化通信装置を提供することが可能となる。
【図面の簡単な説明】
【００１１】
【図１】本発明の一実施形態に係る多重化通信装置のブロック図である。
【図２】ＨＤＬＣによる通信のフレームデータの構造を示す図である。
【図３】多重化通信装置間での多重化通信プロトコルが表された図である。
【図４】多重化データの割付表を示す図である。
【図５】多重化通信装置のデータの流れの一例を示す模式図である。
【図６】多重化通信装置で送受信されるデータのタイミングを示す図である。
【図７】多重化通信装置で送受信されるデータのタイミングを示す図である。
【図８】多重化通信装置で送受信されるデータのタイミングを示す図である。
【図９】多重化通信装置の内部処理を示すフローチャートである。
【図１０】別例の産業用イーサネット（登録商標）におけるパケットのデータ形式を示す図である。
【図１１】別例の多重化通信プロトコルが表された図である。
【発明を実施するための形態】
【００１２】
以下、本発明の一実施形態について図を参照して説明する。初めに、本願の多重化通信装置を適用する装置の一例として作業用ロボットについて説明する。
（作業用ロボット１０の構成）
図１は、作業用ロボット１０に適用される多重化通信の構成を示す模式図である。図１に示すように、作業用ロボット１０は、作業用ロボット１０を設置する場所に固定的に設ける装置本体１１と、装置本体１１に対して相対的に移動する第１可動部１３と、第２可動部１５とを備える。作業用ロボット１０は、例えば、装置本体１１のコントローラ２３の制御に基づいて、生産ラインを搬送される対象物に第２可動部１５のロボットアームに保持されたワークの取り付けなどの作業を実施する作業用ロボットである。
【００１３】
装置本体１１は、多重化通信装置２１と、コントローラ２３と、Ｙ軸リニア用サーボアンプ２５と、Ｘ軸リニア用サーボアンプ２６と、６軸ロータリ用サーボアンプ（以下、「アンプ」という場合がある）２７と、表示部２９とを備える。コントローラ２３は、ＣＰＵ、ＲＡＭ等を備えたコンピュータを主体として構成されている。コントローラ２３は、３つのアンプ２５〜２７と接続されている。多重化通信装置２１は、各アンプ２５〜２７を制御することで、後述する各種モータ（サーボモータ４２など）を制御し、第２可動部１５の位置・速度などを制御する。
【００１４】
アンプ２５〜２７の各々は、多重化通信装置２１に接続されている。作業用ロボット１０は、装置本体１１に設けられた多重化通信装置２１が、第１可動部１３に設けられた多重化通信装置３１と、多重化通信用ケーブル５１で接続されている。この多重化通信用ケーブル５１は、例えばGigabit Ethernet（登録商標）の通信規格に準拠したＬＡＮケーブルである。なお、多重化通信用ケーブル５１は、他の種類のケーブル、例えば、光ファイバーケーブルやＵＳＢ（Universal Serial Bus）３．０の通信規格に準拠したＵＳＢケーブルでもよい。また、多重化通信用ケーブル５１は、対屈曲性のあるケーブルが好ましい。
【００１５】
第１可動部１３は、例えば、装置本体１１の上部において、第２可動部１５の位置をＸ軸方向及びＹ軸方向に移動させるスライダ装置である。また、第１可動部１３は、当該第１可動部１３をＸ軸方向及びＹ軸方向に移動させるための駆動源として、Ｙ軸用リニアモータ３３及びＸ軸用リニアモータ３７を有する。装置本体１１のＹ軸リニア用サーボアンプ２５は、第１可動部１３のＹ軸用リニアモータ３３に対応している。第１可動部１３は、Ｙ軸用リニアモータ３３の駆動に応じてＹ軸方向に沿ったガイドレール上を移動する。また、リニアスケール３４は、第１可動部１３のＹ軸方向における位置を検出する。リニアスケール３４は、第１可動部１３のＹ軸方向の位置（Ｙ座標値）等のエンコーダ信号を、通信プロトコル変換器３５に出力する。通信プロトコル変換器３５は、多重化通信装置３１と接続されている。通信プロトコル変換器３５は、多重化通信装置２１，３１を介してリニアスケール３４のエンコーダ信号を、Ｙ軸リニア用サーボアンプ２５に送信する。Ｙ軸リニア用サーボアンプ２５は、受信したエンコーダ信号を、コントローラ２３に転送する。コントローラ２３は、リニアスケール３４のエンコーダ信号に基づいてＹ軸リニア用サーボアンプ２５を介してＹ軸用リニアモータ３３を制御する。
【００１６】
同様に、Ｘ軸リニア用サーボアンプ２６は、第１可動部１３のＸ軸用リニアモータ３７に対応している。第１可動部１３は、Ｘ軸用リニアモータ３７の駆動に応じてＸ軸方向に沿ったガイドレール上を移動する。また、リニアスケール３８は、第１可動部１３のＸ軸方向における位置を検出する。リニアスケール３８のエンコーダ信号は、通信プロトコル変換器３９を介して多重化通信装置３１に出力される。コントローラ２３は、リニアスケール３８のエンコーダ信号に基づいて、Ｘ軸リニア用サーボアンプ２６を介してＸ軸用リニアモータ３７を制御する。
【００１７】
第２可動部１５は、多重化通信装置４１と、６つのサーボモータ４２と、各サーボモータ４２に対応したエンコーダ４５とを備える。多重化通信装置４１は、第１可動部１３の多重化通信装置３１と多重化通信用ケーブル５２（例えばGigabit Ethernet（登録商標）のＬＡＮケーブルなど）で接続されている。
【００１８】
装置本体１１のサーボアンプ２７は、多軸制御アンプであり、コントローラ２３からの指令で６つのサーボモータ４２をフィードバック制御する。第２可動部１５は、ワーク等を挟持して作業を行うロボットアームを備えており、当該ロボットアームが、各サーボモータ４２の駆動に応じてＸ軸、Ｙ軸及びＺ軸等の各方向への自由度を有して変位駆動される。
【００１９】
エンコーダ４５は、例えば、アブソリュート型エンコーダであり、サーボモータ４２の磁極位置を絶対値として検出可能なものである。エンコーダ４５は、各サーボモータ４２の位置情報などのエンコーダ信号を、多重化通信装置４１に出力する。多重化通信装置４１は、各エンコーダ４５のエンコーダ信号を、第１可動部１３の多重化通信装置３１を介して装置本体１１の多重化通信装置２１に送信する。多重化通信装置２１は、受信した多重化データから分離したエンコーダ信号を、サーボアンプ２７に出力する。サーボアンプ２７は、エンコーダ信号に基づいてサーボモータ４２の各々を駆動する。
【００２０】
次に、多重化通信で伝送されるエンコーダ信号について説明する。
アンプ２５〜２７の各々は、エンコーダ４５と、例えば、ＨＤＬＣ（High level Data Link Control procedure）の通信規格に準拠した通信で、エンコーダ信号を送受信する。図２は、ＨＤＬＣによる通信で送信されるデータのフレーム構成の一例を示している。図２に示すように、例えば、送信されるデータは、送受信間で同期をとるための同期用データの後に、開始フラグ（例えば、１６進数（０ｘ）で「７ＥＨ」）、データ（エンコーダ信号）、フレームチェックシーケンス（例えば、ＣＲＣ−１６）、終了フラグ（０ｘ７ＥＨ）が設定されている。フレームチェックシーケンス（ＣＲＣ−１６）は、所定の生成多項式を用いてデータ（エンコーダ信号）を演算して求められる。なお、フレームチェックシーケンスは、ＣＲＣに限らず、パリティ符号を用いてもよい。
【００２１】
図３は、多重化通信装置２１，３１間で送信される多重化データの構成の一例を示している。縦軸は、多重化データのビット位置を示している。横軸は、多重化通信の送信クロックを示している。この場合、多重化データは、例えば８ビットで構成されている。多重化通信装置２１，３１は、１つの多重化データ当りの周期が８ｎｓｅｃ（周波数が１２５ＭＨｚ）に設定され、１Ｇｂｐｓ（８ビット×１２５ＭＨｚ）の通信回線を構築する。この通信回線は半２重通信である。図３には、多重化データを送信する１クロック（８ｎｓｅｃ）ごとに送信されるデータを示しており、リニアスケール３４，３８及び６つのエンコーダ４５の各々に対応する８つのエンコーダ信号を、順にエンコーダ信号ＥＮＣＤ１〜ＥＮＣＤ８として図示している（図中ではＥ１Ｄ〜Ｅ８Ｄ）。多重化データは、２０クロックを１サイクル（１周期）として、半周期ごとに送受信が切り替えられる半二重通信を行う。図３は半周期（１／２サイクル）の０〜１０クロックを示している。従って、図３に示す例では、多重化通信装置２１，３１は、１０クロック目で互いに同期を取って送受信を切り替える。
【００２２】
なお、多重化通信装置３１，４１間で送信される多重化データは、図３と同様の構成でもよく、リニアスケール３４，３８を除く、６軸のエンコーダ４５分のみを含む構成でもよい。この場合、多重化通信用ケーブル５２の通信速度は、多重化通信用ケーブル５１に比べて低速にできる。
【００２３】
多重化データは、１／２サイクル（１０クロック）のうち、エンコーダ信号ＥＮＣＤ１〜ＥＮＣＤ８を送信する前の３クロック（図示例ではクロック０〜２）でヘッダ情報などの制御情報が設定されている。また、多重化データは、１／２サイクル（１０クロック）のうち、６クロック（図示例ではクロック３〜９）にエンコーダ信号ＥＮＣＤ１〜ＥＮＣＤ８に係るデータが設定されている。多重化データは、先頭ビット（ビット位置０）〜ビット位置７までの各ビットがこの順にエンコーダ信号ＥＮＣＤ１〜ＥＮＣＤ８に対応している。多重化データは、クロック３，５における各ビット位置にエンコーダ信号ＥＮＣＤ１〜ＥＮＣＤ８（図中の「Ｅ１Ｄ〜Ｅ８Ｄ」）がビット割り当てされる。また、多重化データは、クロック４，６における各ビット位置にエンコーダ信号ＥＮＣＤ１〜ＥＮＣＤ８のデータの有無を示す情報（図中の「Ｅ１Ｄ有〜Ｅ８Ｄ有」）がビット割り当てされる。データの有無を示す情報は、例えば、多重化データのデータ転送レートに対して低速なエンコーダ信号ＥＮＣＤ１〜ＥＮＣＤ８が各ビット位置０〜７に設定されているか否かを示すための情報である。エンコーダ信号ＥＮＣＤ１〜ＥＮＣＤ８とエンコーダ信号ＥＮＣＤ１〜ＥＮＣＤ８の有無を示す情報とは、各サイクルで交互に設定される。また、多重化データは、１サイクルのうち、３クロック（図示例ではクロック７〜９）が、ハミング符号の前方誤り訂正符号ＦＥＣ（７，４）として付加される３ビットの符号ビットが設定される。そして、多重化通信装置２１，３１は、３クロック続けて訂正符号ＦＥＣ（７，４）が設定されたフレームデータＦＲＭＤを送信した後、１０クロックで互いに同期を取って送受信を切り替える。
【００２４】
次に、複数の多重化通信装置２１，３１，４１を代表して多重化通信装置３１の動作について説明する。多重化通信装置３１は、例えば、リニアスケール３４から通信プロトコル変換器３５を介して入力されたエンコーダ信号ＥＮＣＤ１のビットごとに、データの有無を示す情報を付加する。図４は、エンコーダ信号の１ビットにデータの有無を示す１ビットの情報付加した場合の割付表を示している。図４における１番上の「０，０」は、エンコーダ信号のデータがない、即ち、リニアスケール３４から多重化通信装置３１にデータ入力がないことを示している。次の「１，１」は、ハイレベルのビット値「１」であることを示している。「０，１」は、ローレベルのビット値「０」であることを示している。
【００２５】
そして、本実施形態において「１，０」は、異常有りであることを示している。ここでいう異常とは、例えば、生成多項式による演算結果と、図２に示すフレームチェックシーケンス（ＣＲＣ−１６）との値が一致しない状態である。従来の多重化通信装置では、この「１，０」のデータを、「０，０」のデータと同様に、処理対象とせず破棄等していた。本願の多重化通信装置２１，３１，４１では、この「１，０」のデータに異常を報知する意味を持たせて活用している。なお、同様に、「０，０」を、異常を報知するデータとして使用してもよい。また、図４に示すビット値の表現方法は、一例である。
【００２６】
多重化通信装置３１は、エンコーダ信号の各ビットに、データの有無の情報を付加したデータ（４ビット）に対し、ハミング符号の前方誤り訂正符号ＦＥＣ（７，４）を付与する。多重化通信装置３１は、例えば、ＦＥＣが付与されたエンコーダ信号ＥＮＣＤ１をビットごとに分割し、クロック信号に同期して多重化通信装置２１に送信する。なお、他のリニアスケール３８や多重化通信装置４１のエンコーダ４５のエンコーダ信号（エンコーダ信号ＥＮＣＤ２〜ＥＮＣＤ８）については、エンコーダ信号ＥＮＣＤ１と同様であるため、説明を省略する。
【００２７】
多重化通信装置３１は、例えば、エンコーダ信号ＥＮＣＤ１〜ＥＮＣＤ８を、入力ポートに対して割り当てた一定時間（タイムスロット）に応じて８ビットのデータに多重化する。受信した装置本体１１の多重化通信装置２１は、多重化データから各エンコーダ信号ＥＮＣＤ１〜ＥＮＣＤ８を分離し、ＦＥＣ（７，４）により誤り検出・訂正処理を行う。また、多重化通信装置２１は、エンコーダ信号ＥＮＣＤ１〜ＥＮＣＤ８を受信しながら、図２に示すフレーム（ＨＤＬＣのデータ）に対応するビットまで受信すると、フレームチェックシーケンス（ＣＲＣ−１６）を用いて誤り検出を行う。誤りが無ければ、多重化通信装置２１は、受信したエンコーダ信号ＥＮＣＤ１等を、Ｙ軸リニア用サーボアンプ２５等に送信する。
【００２８】
次に、図５〜図９を参照して、多重化通信において異常が発生した場合の動作について説明する。図５のＡ〜Ｅの記号は、図６〜図９の処理ブロックの欄に対応する。以下の説明では、サーボアンプ２７が、エンコーダ４５に対し、位置情報等の送信を要求する場合について説明する。まず、図６の処理ブロックＡにおいて、サーボアンプ２７は、多重化通信装置２１に向けて、エンコーダ４５の位置情報を要求するためのＨＤＬＣに準拠したＨＤＬＣデータ（図２のフレーム参照）を送信する。
【００２９】
次に、処理ブロックＢにおいて、多重化通信装置２１は、アンプ２５からＨＤＬＣデータを受信する処理をしつつ、受信したＨＤＬＣデータを多重化通信により、順次後段の多重化通信装置３１に転送する。また、多重化通信装置２１は、１フレームのＨＤＬＣデータを受信すると、フレームチェックシーケンスを使用して誤り検出処理を行う。図６に示す場合では、多重化通信装置２１は、誤りを検出しないため、ＣＲＣ−ＮＧカウンタをカウントアップしない。ここでいうＣＲＣ−ＮＧカウンタとは、誤り検出や通信異常を検出するごとにカウントアップされるものであり、例えば、多重化通信装置２１がメモリ等に領域を確保して回数を保存する処理を行う。また、多重化通信装置２１，３１，４１の各々は、双方向に対応してＣＲＣ−ＮＧカウンタを備えている。より具体的には、多重化通信装置２１，３１，４１の各々は、サーボアンプ２７からエンコーダ４５へ向かう方向（図５の接続「１〜４」）と、エンコーダ４５からサーボアンプ２７へ向かう方向（図５の接続「５〜８」）のそれぞれの通信方向に対応して、ＣＲＣ−ＮＧカウンタを備えている。
【００３０】
次に、処理ブロックＣにおいて、多重化通信装置３１は、多重化通信装置２１から多重化データ（ＨＤＬＣデータを分割したもの）を受信しつつ、受信した多重化データを多重化通信装置４１に転送する。また、多重化通信装置４１は、１フレームのＨＤＬＣデータを受信すると、フレームチェックシーケンスを使用して誤り検出処理を行う。図６に示す場合では、多重化通信装置２１は、誤りを検出したため、異常を示すＣＲＣ−ＮＧ計算フラグをＯＮし、ＣＲＣ−ＮＧカウンタをカウントアップする。そして、多重化通信装置４１は、異常を示すデータ「１，０」（図４参照）を、多重化通信により後段の多重化通信装置４１に送信する。なお、多重化通信装置３１が異常を示すデータ「１，０」を送信する回数は任意であり、１回でもよく、複数回でもよい。
【００３１】
次に、図７に示す処理ブロックＤにおいて、多重化通信装置４１は、多重化通信で受信した多重化データを分離して各エンコーダ４５に転送する。また、多重化通信装置４１は、フレームチェックシーケンスを使用して誤りを検出するが、上流の多重化通信装置３１から異常を示すデータ「１，０」を受信するため、ＣＲＣ−ＮＧカウンタをカウントアップしない。つまり、多重化通信装置４１は、多重化通信装置３１から異常を示すデータを受信しているため、ＣＲＣエラー（データ化け等）が自局の経路で発生していないと判定し、カウントアップをしない。また、多重化通信装置４１は、フレームチェックシーケンスを使用して誤りを検出したため、ＣＲＣ−ＮＧ計算フラグをＯＮする。また、多重化通信装置４１は、異常を示すデータを受信したことを示すＣＲＣ−ＮＧ受信フラグをＯＮする。なお、各多重化通信装置２１，３１，４１は、ＣＲＣ−ＮＧ計算フラグ及びＣＲＣ−ＮＧ受信フラグを、例えば、次のＨＤＬＣデータを受信するまで保持する。
【００３２】
次に、処理ブロックＥにおいて、エンコーダ４５は、多重化通信装置４１から入力されたＨＤＬＣデータに対し、フレームチェックシーケンスを使用して誤り検出を行う。エンコーダ４５は、誤りを検出すると、異常を示すフラグをＯＮするとともに、サーボアンプ２７からのＨＤＬＣデータによる問い合わせに応答しない。（図中の「Ｅ．ＥＮＣ出力」の欄参照）。なお、エンコーダ４５の動作は、無応答に限らず、何らかの異状を応答する動作でもよい。
【００３３】
次に、エンコーダ４５からサーボアンプ２７に向かう通信について説明する。処理ブロックＤにおいて、多重化通信装置４１は、エンコーダ４５が問い合わせに対して無応答となるため、問い合わせを開始してから所定時間だけ経過するとタイムアウト異常フラグをＯＮ（例えば、「ＮＧ」を示す値を設定）とする（図中の「受信タイムアウト異常」参照）。多重化通信装置４１は、タイムアウト異常が発生した旨を、多重化通信装置３１に多重化通信により通知する（図中の「送信ＤＡＴＡ」の欄の「ＮＧ」参照）。
【００３４】
次に、図８に示す処理ブロックＣにおいて、多重化通信装置３１は、多重化通信装置４１からタイムアウト異常の情報を受信すると（図中の「受信ＤＡＴＡ」の欄の「ＮＧ」参照）、タイムアウト異常フラグをＯＮする。
【００３５】
次に、処理ブロックＢにおいて、多重化通信装置２１は、多重化通信装置３１からタイムアウト異常の情報を受信すると、タイムアウト異常フラグをＯＮする。多重化通信装置２１、３１，４１は、タイムアウト異常フラグのＯＮ状態を、例えば、次のＨＤＬＣデータを受信するまで保持する。なお、多重化通信装置３１，４１は、タイムアウト異常の情報の受信に合わせてＣＲＣ−ＮＧ受信フラグをＯＮする。
【００３６】
また、図６〜図８の右側には、エンコーダ４５が正常に応答を返信した場合を示している。サーボアンプ２７からＣＲＣエラーが発生せずにエンコーダ４５にＨＤＬＣデータが送信された場合には、エンコーダ４５は、問い合わせに応じてサーボモータ４２の位置情報等をサーボアンプ２７に応答する。エンコーダ４５の応答は、フレームチェックシーケンスによる誤り検出が実施されながらサーボアンプ２７まで転送される。この場合、ＣＲＣエラーが発生していないため、多重化通信装置２１，３１，４１のＣＲＣ−ＮＧ計算フラグ等はＯＦＦとなる。一方、前回検出された多重化通信装置２１のＣＲＣ−ＮＧカウンタの値「１」は保持された状態となる。このような動作を繰り返すことによって、ＣＲＣ−ＮＧカウンタの値を参照することで、メンテナンスの際に、障害が発生した場所の発見等が容易となる。
【００３７】
例えば、コントローラ２３は、ユーザの操作に応じて、各多重化通信装置２１，３１，４１等にＣＲＣ−ＮＧカウンタの値を問い合わせて、その結果を表示部２９（図１参照）に表示する。なお、ユーザに対するエラーの通知方法は、適宜変更可能である。
【００３８】
次に、多重化通信装置２１，３１，４１の転送動作について説明する。一例として、多重化通信装置３１の転送動作を、図９のフローチャートを参照しつつ、説明する。まず、図９に示すステップ（以下、単位「Ｓ」と表記する）１１において、多重化通信装置３１は、例えば、多重化通信装置２１から受信した多重化データの非多重化を実行し、分離後の各エンコーダ信号ＥＮＣＤ１〜ＥＮＣＤ８（図４参照）に対し、即ち、多軸の軸ごとに、図９の「Ｂ」から「Ｃ．ＥＮＤ」までの処理を並列に実行する。
【００３９】
次に、多重化通信装置３１は、分離したデータ（２ビット）を確認すると（Ｓ１３）、データの有無を示す情報（図４参照）が、「１」（ハイレベル）であるか否かを判定する（Ｓ１５）。多重化通信装置３１は、データの有無を示す情報が「１」、即ちデータが有りの場合（Ｓ１５：ＹＥＳ）、例えば、データをバッファ（ＦＩＦＯなど）に一時的に保持し、４ビットごとにハミング符号の前方誤り訂正符号ＦＥＣによる誤り検出・訂正処理を実行する（Ｓ１７）。
【００４０】
次に、Ｓ１９において、多重化通信装置３１は、自局に接続された機器（リニアスケール３４，３８）へのエンコーダ信号か、他局（多重化通信装置４１のエンコーダ４５）へのエンコーダ信号かを判定する。他局へのエンコーダ信号であると判定した場合（Ｓ１９：ＹＥＳ）、多重化通信装置３１は、エンコーダ信号を多重化データにより受信しつつ、受信したエンコーダ信号を多重化通信装置４１へ転送する処理を実行する（Ｓ２１）。一方で、自局に接続された機器へのエンコーダ信号であると判定した場合（Ｓ１９：ＮＯ）、多重化通信装置３１は、受信したエンコーダ信号を、リニアスケール３４，３８のいずれかにＨＤＬＣによる出力を行う（Ｓ２３）。多重化通信装置３１は、転送処理（Ｓ２１）又はＨＤＬＣ出力（Ｓ２３）を実行後、ＨＤＬＣデータ（図２のＣＲＣ計算対象のデータ）に対して、所定の生成多項式によりＣＲＣの計算処理を実行する（Ｓ２５）。そして、多重化通信装置３１は、Ｓ２９以降のエラー処理を実行する。
【００４１】
一方で、多重化通信装置３１は、Ｓ１５においてデータの有無を示す情報が「０」、即ちデータがない場合、データ部分（図４の「Ｅ１Ｄ−Ｅ８Ｄ」に相当するビット）が「１」であるか否かを判定する（Ｓ２７）。データ部分が「０」である場合（Ｓ２７：ＮＯ）、図４におけるＥＮＣデータなし「０，０」となるため、多重化通信装置３１は、データを破棄して処理を終了する。また、データ部分が「１」である場合（Ｓ２７：ＹＥＳ）、図４におけるＣＲＣ異常有り「１，０」となるため、Ｓ２９以降のエラー処理を実行する。
【００４２】
Ｓ２９において、多重化通信装置３１は、異常が発生しているか否かを判定する。ここでいう異常の発生とは、例えば、自局のＣＲＣ計算による誤り検出である。なお、多重化通信装置３１は、他の多重化通信装置から所定時間だけ多重化データを受信できないタイムアウト異常を異常の発生に含めてもよい（図９参照）。
【００４３】
多重化通信装置３１は、異常が発生していないと判定した場合（Ｓ２９：ＮＯ）、処理を終了する。一方で、多重化通信装置３１は、異常が発生していると判定した場合（Ｓ２９：ＹＥＳ）、ＣＲＣ−ＮＧカウンタのカウント処理を行う（Ｓ３１）。多重化通信装置３１は、上述したように、自局においてＣＲＣエラーが発生した場合、即ち、Ｓ２５でのＣＲＣ計算の結果がフレームチェックシーケンスと一致しない場合に、カウントアップ処理を実行する。また、多重化通信装置３１は、ＣＲＣ異常有り「１，０」を受信した場合、カウントアップを実行しない。多重化通信装置３１は、自局においてＣＲＣエラーが１回発生するごとにカウントアップする。なお、多重化通信装置３１は、自局においてＣＲＣエラーが連続して発生した回数をカウントする。
【００４４】
次に、多重化通信装置３１は、発生した異常が自局で起きていた場合（Ｓ３３：ＹＥＳ、ＣＲＣ−ＮＧ計算フラグが「１」）、異常が発生したエンコーダ信号ＥＮＣＤ１〜ＥＮＣＤ８が、他局へ転送するデータである否かを判定する（Ｓ３５）。他局へ転送するデータである場合（Ｓ３５：ＹＥＳ）、多重化通信装置３１は、ＣＲＣ異常有り「１，０」を転送する処理を実行する（Ｓ３７）。また、異常が発生したエンコーダ信号ＥＮＣＤ１〜ＥＮＣＤ８が、他局へ転送する必要がない場合（Ｓ３５：ＮＯ）、多重化通信装置３１は、処理を終了する。また、多重化通信装置３１は、発生した異常が自局でない場合（Ｓ３３：ＮＯ）、Ｓ３５以降の処理を実施しない。なお、多重化通信装置３１は、例えば、多重化通信装置２１からＣＲＣ異常有り「１，０」の情報を受信した場合は、その情報を多重化通信装置４１に転送することが好ましい。
【００４５】
因みに、作業用ロボット１０は、多重化通信装置を備える作業機の一例である。図４に示すＥ１Ｄ〜Ｅ８Ｄのビットは、第１ビットの一例である。図４に示すＥ１有〜Ｅ８有のビットは、第２ビットの一例である。多重化通信装置２１，３１，４１は、多重化手段、カウント手段の一例である。表示部２９は、表示手段の一例である。
【００４６】
以上、詳細に説明した本実施形態によれば以下の効果を奏する。
＜効果１＞多重化通信装置２１，３１，４１は、アブソリュート型のエンコーダ４５の各々から出力されるエンコーダ信号（例えば、エンコーダ信号ＥＮＣＤ３〜ＥＮＣＤ８のいずれか）のデータ内容を示すビット（第１ビット）と、データの有無を示すビット（第２ビット）とを多重化した多重化データを生成する（図３参照）。また、多重化通信装置２１，３１，４１は、第１ビットを「１」、第２ビットを「０」に設定した「１，０」のデータを、異常を報知するデータとして送受信している。多重化通信装置２１，３１，４１は、フレームチェックシーケンスの誤り検出に応じて、この異常を報知するデータを他の多重化通信装置に送信する。また、例えば、図６の場合、多重化通信装置２１は、フレームチェックシーケンスを使用して誤りを検出したため、ＣＲＣ−ＮＧカウンタをカウントアップする。一方、多重化通信装置４１は、同様にＣＲＣエラーを検出するが、上流の多重化通信装置３１から異常を示すデータ「１，０」を受信するため、ＣＲＣ−ＮＧカウンタをカウントアップしない。つまり、多重化通信装置４１は、多重化通信装置３１から異常を示すデータを受信しているため、ＣＲＣエラーが自局の経路で発生していないと判定し、カウントアップをしない（図７参照）。このような構成では、多重化通信装置２１，３１，４１の各々のカウント値を参照することによって、多重化通信用ケーブル５１の接続不良など、何らかの障害が発生しメンテナンスを行う際に、迅速かつ適切な処置を行うことが可能となる。
【００４７】
＜効果２＞多重化通信装置２１，３１，４１の各々は、送信及び受信の経路ごとに異常回数をカウントしている。例えば、多重化通信装置２１は、サーボアンプ２７から多重化通信装置３１向けの送信及び受信の経路（下り）と、多重化通信装置３１からサーボアンプ２７向けの経路（上り）との各々の経路ごとに異常回数をカウントしている。これにより、多重化通信装置２１の経路ごとの異常回数を参照することによって、エンコーダ４５向けの下りの経路に異常があるのか、サーボアンプ２７向けの上りの経路に異常がるのかを判別することが可能となる。
【００４８】
＜効果３＞上記実施形態では、多重化通信装置３１は、自局においてＣＲＣエラーが１回発生するごとにカウントアップする構成であった。しかしながら、多重化通信装置３１は、自局においてＣＲＣエラーが連続して発生した回数をカウントする構成でも実施可能である。この構成では、外部ノイズが影響して一時的にＣＲＣエラーになる場合などを除外し、断線等によって連続的に発生するＣＲＣエラーの回数を計測することが可能となる。
【００４９】
＜効果４＞コントローラ２３は、ユーザの操作に応じて、各多重化通信装置２１，３１，４１等にＣＲＣ−ＮＧカウンタの値を問い合わせて、その結果を表示部２９に表示する。これにより、ユーザは、異常が生じた場所を視覚的に認識することができ、メンテナンスをすべき場所を容易且つ確実に判断することが可能となる。
【００５０】
尚、本発明は上記実施形態に限定されるものでなく、その趣旨を逸脱しない範囲で様々な変更が可能である。
例えば、上記実施形態では、ＨＤＬＣの通信規格に準拠したデータ通信において、本願発明を適用したが、他の種類の通信規格に適用してもよい。例えば、産業用イーサネット（登録商標）の通信規格に準拠したデータ通信に適用してもよい。ここでいう産業用イーサネットとは、例えば、ＥｔｈｅｒＣＡＴ（登録商標）・ＭＥＣＨＡＴＲＯＬＩＮＫ（登録商標）−ＩＩＩ等である。
【００５１】
図１０は、イーサネット（登録商標）で送受信されるパケットのデータ形式の一例を示している。図１０に示すように、データには、「ヘッダ」、「データ」、「ＦＣＳ（Frame Check Sequence）」が含まれる。ヘッダは、「宛先アドレス」、「送信元アドレス」、「タイプ」の各フィールドからなる。例えば、ヘッダとＦＣＳのフィールド長は固定である。ＦＣＳは、４バイト（３２ビット）である。一方、データは、例えば、４６〜１５００バイトのデータフィールドである。
【００５２】
ここで、上記実施形態との違いは、送受信されるデータがエンコーダ信号から産業用イーサネット（登録商標）のデータに変更されている点が異なる。また、上記実施形態のエンコーダ信号ＥＮＣＤ１〜ＥＮＣＤ８の場合は、最小ビットを１ビットとしたが、この産業用イーサネット（登録商標）の場合には、例えば、最小ビットをＭＩＩの最小単位である４ビットとする。また、上記実施形態では、１６ビットのフレームチェックシーケンスが付加されていたが、イーサネット（登録商標）のパケットでは３２ビットのフレームチェックシーケンスが付加されている点が異なる。
【００５３】
例えば、多重化通信装置２１等は、Gigabit Ethernet（登録商標）（１０００ｂａｓｅ−ｔ、半２重通信）により接続され、一定回数毎に送受信を切り替えて行う。図１１は、多重化通信装置２１等が半２重通信方式で送受信を行う際のGigabit Ethernet（以下、「ＧｂＥ」と省略する場合がある）による多重化通信プロトコルが表わされた図である。
【００５４】
図１１では、縦軸に通信方向が表されている。図１１は、例えば、多重化通信装置２１（固定部）から多重化通信装置３１（可動部）にデータを送信する半２重通信方式の多重化通信プロトコルが表わされた図であるが、多重化通信装置３１から多重化通信装置２１にデータを送信する半２重通信方式の多重化通信プロトコルは記載されていない。多重化通信装置２１は、例えば、１０００ｂａｓｅ−ｔの最小単位であるＧＭＩＩ（１２５ＭＨｚ＊８ＢＩＴ）で送受信が行われる。その８ＢＩＴは、図１１では、縦軸に並んだ「Ｂ０」，「Ｂ１」，「Ｂ２」，「Ｂ３」，「Ｂ４」，「Ｂ５」，「Ｂ６」，「Ｂ７」で表されている。
【００５５】
図１１では、横軸に並んだ「０」〜「１４」の数値は、多重化通信を行うクロック（規格ＧｂＥ用と同じ１２５ＭＨｚ）のカウンタ数である。多重化通信装置２１等は、産業用イーサネット（登録商標）を介してデータを伝送するリレーやセンサ（図示略）等がローカル側のネットワークに接続されている。多重化通信装置２１等は、ローカル側のイーサネット（登録商標）の規格ＧｂＥによる１００ｂａｓｅ−ｔｘの最小単位であるＭＩＩの１Ｎｉｂｂｌｅ，２５ＭＨｚ，４ＢＩＴを単位として、データ有無フラグを追加して、データの送受信を行う。
【００５６】
図１１では、「Ｘ」を回線番号、「Ｙ」をバッファにたまった順番とすると、データが「ＭＩＩＸ−Ｙ」で表わされる。「Ｘ」の回線番号は「１」，「２」，「３」のいずれかであり、「Ｙ」のバッファにたまった順番は「１」，「２」，「３」，「４」，「５」，「６」のいずれかである。「ＭＩＩＸ−Ｙ有／無」は、データ有無のフラグである。「ＭＩＩＸ−Ｙ有」は、「ＭＩＩＸ−Ｙ」のデータが有ることを表す。「ＭＩＩＸ−Ｙ無」は、「ＭＩＩＸ−Ｙ」のデータが無いことを表す。なお、「空き」は、データそのものが存在しないことを表す。
【００５７】
図１１に表されたように、カウンタ数が「０」，「１」の通信開始時はプリアンブル２個が送受信される。カウンタ数が「１４」では、送受信を切り替えるため、お互いに送信ＯＦＦの状態とする。一般的に、上記各ローカル側のイーサネット（登録商標）の通信では、パケット単位で送受信が行われ、必要なデータがない時に無通信状態となる。但し、パケット間は、最低でも、ＩＰＧ（Inter-Packet Gap、ＭＩＮ１２バイト）間分の無通信が有る。
【００５８】
一方、多重化通信装置２１等は、最小の遅延・ジッタで多重化するために、一定の固定間隔でデータ送受信を行う。そのため、上記ローカル側に送信すべきデータがないときに、存在しないデータを上記ローカル側に送信すると、通信異常となる。従って、図１１に表したように、最小単位のデータ毎にデータ有無のフラグの情報を付加し、データが無いときはＭＩＩの４ＢＩＴデータを出力しない。このような構成では、多重化データ上でビット位置が固定され、複数の種類の産業用イーサネット（登録商標）を１本の経路で配線させることができる。よって、省配線化ができる。また、上記実施形態と同様に、「ＭＩＩＸ−Ｙ」及び「データ有無のフラグ」のビットの割付のいずれかに、異常を報知するデータを設定することで（図４参照）、複数の種類の産業用イーサネット（登録商標）をまとめて送信した場合でも、どの回線で、どの産業用イーサネット（登録商標）のデータに不具合があるのかを判定することが可能となる。
【００５９】
また、上記実施形態では、ＣＲＣ異常の場合に、異常を示すデータ「１，０」を送っていたが、これに限らず、例えば、多重化通信にタイムアウト異常が発生した場合に異常を示すデータを送信する設定でもよい。
【００６０】
また、上記実施形態では作業用ロボット１０について説明したが、本願はこれに限定されるものではなく、電子部品を回路基板に実装する実装装置や回路基板に半田を印刷するスクリーン印刷装置などの他の装置に適用することができる。
【符号の説明】
【００６１】
１０  作業用ロボット、２１，３１，４１  多重化通信装置、２９  表示部、４５  エンコーダ、ＥＮＣＤ１〜ＥＮＣＤ８  エンコーダ信号。
【図１】
0006466732.tif 000002
【図２】
0006466732.tif 000003
【図３】
0006466732.tif 000004
【図４】
0006466732.tif 000005
【図５】
0006466732.tif 000006
【図６】
0006466732.tif 000007
【図７】
0006466732.tif 000008
【図８】
0006466732.tif 000009
【図９】
0006466732.tif 000010
【図１０】
0006466732.tif 000011
【図１１】
0006466732.tif 000012