(57)【要約】【課題】バス接続された複数のエンコーダ装置の仕様を容易に設定することが可能なエンコーダ装置、および、このエンコーダ装置を使用したロボットシステムを提供すること。【解決手段】ロボットシステムに複数のエンコーダ装置を組み込んだ後、任意のエンコーダ装置のモード（仕様）を変更する。各エンコーダ装置の不揮発性メモリ７には各エンコーダ装置のエンコーダアドレス７ａが格納されている。ロボットシステムのコントローラ部９は、モードを変更したい任意のエンコーダ装置のエンコーダアドレスと変更すべきモードに関するデータをモードデータ書き込みコマンド３２ａに設定してバス８に送信する。該当エンコーダ装置は、エンコーダアドレス７ａにより自己が対象であることを認識し、自己のモードを変更する。このとき、モード設定用のコマンドの送受信の伝送速度は、通常のエンコーダデータの送受信用のコマンドを含むデータ送受信の伝送速度より遅く設定されている。【選択図】        図１
2004317261.tif 000002
【特許請求の範囲】
【請求項１】
固有のエンコーダ識別情報を格納するエンコーダ識別情報格納手段と、
エンコーダ装置の動作環境を決定する仕様設定データを格納する仕様設定データ格納手段と、
外部装置から前記エンコーダ識別情報格納手段に格納されているエンコーダ識別情報と同一のエンコーダ識別情報を受信したとき、前記外部装置から送信された前記エンコーダ識別情報に付帯した仕様設定データを前記仕様設定データ格納手段に格納するよう処理する処理手段とを備えることを特徴とするエンコーダ装置。
【請求項２】
請求項１に記載のエンコーダ装置において、
前記外部装置とシリアル通信によりデータを送受信する送受信手段をさらに備え、
前記送受信手段が前記外部装置からエンコーダ識別情報とともに仕様設定データを受信するときの伝送速度は、前記送受信手段が前記外部装置との前記エンコーダ装置の位置情報に関するエンコーダデータの送受信の伝送速度よりも遅いことを特徴とするエンコーダ装置。
【請求項３】
請求項２に記載のエンコーダ装置において、
前記送受信手段は、ローパスフィルタと受信するデータのエラーチェック手段により、前記伝送速度の違いによる受信データーの違いを区別することを特徴とするエンコーダ装置。
【請求項４】
請求項１〜３のいずれか１項に記載のエンコーダ装置において、
前記エンコーダ識別情報は、エンコーダ装置固有のエンコーダ識別コードあるいはエンコーダアドレスであることを特徴とするエンコーダ装置。
【請求項５】
請求項１〜４のいずれか１項に記載のエンコーダ装置において、
前記エンコーダ装置の仕様は、前記エンコーダ装置の通信フォーマット、分解能、および、伝送速度の少なくとも１つを含むことを特徴とするエンコーダ装置。
【請求項６】
複数のエンコーダ装置と、
バス手段と、
前記バス手段を介して前記複数のエンコーダ装置と接続され、前記複数のエンコーダ装置を制御するとともに前記複数のエンコーダ装置より位置情報に関するエンコーダデータを受信して所定のロボットに関する制御を行う制御手段とを備えたロボットシステムであって、
前記複数のエンコーダ装置の各エンコーダ装置は、
固有のエンコーダ識別情報を格納するエンコーダ識別情報格納手段と、
エンコーダ装置の動作環境を決定する仕様設定データを格納する仕様設定データ格納手段と、
前記制御手段から前記エンコーダ識別情報格納手段に格納されているエンコーダ識別情報と同一のエンコーダ識別情報を受信したとき、前記制御手段から送信された前記エンコーダ識別情報に付帯した仕様設定データを前記仕様設定データ格納手段に格納するよう処理する処理手段とを備え、
前記制御手段は、任意のエンコーダ装置の仕様設定データを送信するとき、前記任意のエンコーダ装置のエンコーダ識別情報とともに前記任意のエンコーダ装置の仕様設定データを前記バスを介して前記複数のエンコーダ装置に送信することを特徴とするロボットシステム。
【請求項７】
請求項６に記載のロボットシステムにおいて、
前記制御装置と前記複数のエンコーダ装置との間は、前記バス手段を介してシリアル通信によりデータを送受信し、
前記制御手段が前記任意のエンコーダ装置のエンコーダ識別情報とともに前記任意のエンコーダ装置の仕様設定データを前記バスを介して前記複数のエンコーダ装置に送信するときの伝送速度は、前記制御手段が前記エンコーダデータの送受信のときに前記複数のエンコーダ装置に送信するデータの伝送速度よりも遅いことを特徴とするロボットシステム。
【請求項８】
請求項６〜７のいずれか１項に記載のロボットシステムにおいて、
前記エンコーダ識別情報は、エンコーダ装置固有のエンコーダ識別コードあるいはエンコーダアドレスであることを特徴とするエンコーダ装置。
【請求項９】
請求項６〜８のいずれか１項に記載のロボットシステムにおいて、
前記エンコーダ装置の仕様は、前記エンコーダ装置の通信フォーマット、分解能、および、伝送速度の少なくとも１つを含むことを特徴とするエンコーダ装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ロボットなどに使用するエンコーダ装置に関する。
【０００２】
【従来の技術】
ロボットは、複数の軸に複数のモータおよび複数のエンコーダ装置をそれぞれ搭載して制御される。また、エンコーダ装置内に電気的書き換え可能なＲＯＭを設け、分解能や通信方法などの性能に関するデータを外部装置から書き込むことが可能なエンコーダ装置も提案されている（例えば、特許文献１参照）。
【０００３】
【特許文献１】
特開平１１−３０４５３６号公報
【発明が解決しようとする課題】
しかし、上述した分解能や通信方法などの性能（仕様）に関するデータを外部装置から書き込むことが可能なエンコーダ装置では、外部装置に接続される複数のエンコーダ装置からデータ書き込み対象の１つのエンコーダ装置を特定することができない。例えば、ロボットにおける複数のエンコーダ装置がバス接続された状態で、１つのエンコーダ装置の分解能や通信方法などの性能に関する設定データを外部から書き込むことはできない。
【０００４】
本発明は、バス接続された複数のエンコーダ装置の仕様を容易に設定することが可能なエンコーダ装置、および、このエンコーダ装置を使用したロボットシステムを提供する。
【０００５】
【課題を解決するための手段】
請求項１の発明は、エンコーダ装置に適用され、固有のエンコーダ識別情報を格納するエンコーダ識別情報格納手段と、エンコーダ装置の動作環境を決定する仕様設定データを格納する仕様設定データ格納手段と、外部装置からエンコーダ識別情報格納手段に格納されているエンコーダ識別情報と同一のエンコーダ識別情報を受信したとき、外部装置から送信されたエンコーダ識別情報に付帯した仕様設定データを仕様設定データ格納手段に格納するよう処理する処理手段とを備えることを特徴とするものである。
請求項２の発明は、請求項１に記載のエンコーダ装置において、外部装置とシリアル通信によりデータを送受信する送受信手段をさらに備え、送受信手段が外部装置からエンコーダ識別情報とともに仕様設定データを受信するときの伝送速度は、送受信手段が外部装置とのエンコーダ装置の位置情報に関するエンコーダデータの送受信の伝送速度よりも遅いことを特徴とするものである。
請求項３の発明は、請求項２に記載のエンコーダ装置において、送受信手段は、ローパスフィルタと受信するデータのエラーチェック手段により、伝送速度の違いによる受信データーの違いを区別することを特徴とするものである。
請求項４の発明は、請求項１〜３のいずれか１項に記載のエンコーダ装置において、エンコーダ識別情報は、エンコーダ装置固有のエンコーダ識別コードあるいはエンコーダアドレスであることを特徴とするものである。
請求項５の発明は、請求項１〜４のいずれか１項に記載のエンコーダ装置において、エンコーダ装置の仕様は、エンコーダ装置の通信フォーマット、分解能、および、伝送速度の少なくとも１つを含むことを特徴とするものである。
請求項６の発明は、ロボットシステムに適用され、複数のエンコーダ装置と、バス手段と、バス手段を介して複数のエンコーダ装置と接続され、複数のエンコーダ装置を制御するとともに複数のエンコーダ装置より位置情報に関するエンコーダデータを受信して所定のロボットに関する制御を行う制御手段とを備え、複数のエンコーダ装置の各エンコーダ装置は、固有のエンコーダ識別情報を格納するエンコーダ識別情報格納手段と、エンコーダ装置の動作環境を決定する仕様設定データを格納する仕様設定データ格納手段と、制御手段からエンコーダ識別情報格納手段に格納されているエンコーダ識別情報と同一のエンコーダ識別情報を受信したとき、制御手段から送信されたエンコーダ識別情報に付帯した仕様設定データを仕様設定データ格納手段に格納するよう処理する処理手段とを備え、制御手段は、任意のエンコーダ装置の仕様設定データを送信するとき、任意のエンコーダ装置のエンコーダ識別情報とともに任意のエンコーダ装置の仕様設定データをバスを介して複数のエンコーダ装置に送信することを特徴とするものである。
請求項７の発明は、請求項６に記載のロボットシステムにおいて、制御装置と複数のエンコーダ装置との間は、バス手段を介してシリアル通信によりデータを送受信し、制御手段が任意のエンコーダ装置のエンコーダ識別情報とともに任意のエンコーダ装置の仕様設定データをバスを介して複数のエンコーダ装置に送信するときの伝送速度は、制御手段がエンコーダデータの送受信のときに複数のエンコーダ装置に送信するデータの伝送速度よりも遅いことを特徴とするものである。
請求項８の発明は、請求項６〜７のいずれか１項に記載のロボットシステムにおいて、エンコーダ識別情報は、エンコーダ装置固有のエンコーダ識別コードあるいはエンコーダアドレスであることを特徴とするものである。
請求項９の発明は、請求項６〜８のいずれか１項に記載のロボットシステムにおいて、エンコーダ装置の仕様は、エンコーダ装置の通信フォーマット、分解能、および、伝送速度の少なくとも１つを含むことを特徴とするものである。
【０００６】
【発明の実施の形態】
図１は、本実施の形態のエンコーダ装置の構成図を示す図である。発光部１からの光は、回転円板２のスリットを経て受光部３に入光する。受光部３からの出力信号は、波形整形回路４で波形整形されて信号処理部５に入力する。信号処理部５は、所定の演算処理を施し位置変位を検出する。回転円板２には微小なスリットが円周方向に形成され、回転により位置変位が生じると光を透過または遮光する。この光の変化を受光部３により検知し、波形整形回路４および信号処理部５を経て、位置変位を検出する。位置変位を検出する方法は、公知な内容である。
【０００７】
信号処理部５は、所定の演算処理を施して検出した位置変位を、エンコーダ信号５ａとして送受信ドライバ部６に送信する。送受信ドライバ部６は、エンコーダ信号５ａをバス通信ライン８を介して外部コントローラ９へ出力する。また、信号処理部５は、外部コントローラ９よりバス通信ライン８を経て送受信ドライバ部６で受信されたコマンド信号６ａを入力する。
【０００８】
エンコーダ信号５ａおよびコマンド信号６ａは、デジタルデータでありシリアルデータによって構成される。信号処理部５において、エンコーダ信号５ａの出力タイミングは、コマンド信号６ａに対して同期（調歩同期）が取られている。
＿
【０００９】
信号処理部５には、不揮発性メモリ７が接続される。不揮発性メモリ７内には、エンコーダアドレス７ａ、エンコーダ識別コード７ｂ、各種モードデータ７ｃが保持されている。エンコーダアドレス７ａは、バス通信ラインに接続されたｎ軸（ｎ≧１の整数）のエンコーダ装置においてエンコーダ区分ＥＮＣ１〜ＥＮＣｎを自己認識するためのものである。また、エンコーダ識別コード７ｂは、例えば、エンコーダが取り付けられたモータ製品のラベル（銘板）などに記載されているモータの製造シリアル番号、またはエンコーダの製造シリアル番号などである。これらは、エンコーダ装置の外観から目視で識別可能な製品固有の番号であり、ロボットに取り付けられる前にあらかじめ設定されているものである。各種モードデータ７ｃについては、後述する。
【００１０】
図２は、ｎ軸（ｎ≧１の整数）のエンコーダ装置ＥＮＣ１〜ＥＮＣｎと外部コントローラ９から構成されるロボット（ロボットシステム）の構成を示す図である。複数のエンコーダ装置ＥＮＣ１〜ＥＮＣｎは、ロボットのｎ軸を駆動する複数のモータ（不図示）にそれぞれ搭載され、各モータの回転位置変位を検出する。外部コントローラ部９は、エンコーダ装置ＥＮＣ１〜ＥＮＣｎから各モータの位置変位であるエンコーダ信号５ａ（エンコーダデータとも言う）を入力し、それらのデータに基づき各種のロボットに関する制御を行う。例えば、各モータを所定量回転する制御を行う。
【００１１】
外部コントローラ部９とエンコーダ装置ＥＮＣ１〜ＥＮＣｎは、図２のようなバスライン構成をとっている。バス通信ライン８は、一対のＳＤ＋８ａとＳＤ−８ｂの差動伝送信号（ＲＳ４８５規格準拠）によって構成され、ＳＤ＋８ａとＳＤ−８ｂ間には終端抵抗１０が接続される。また、外部コントローラ部９より一対の電源線ＶＣＣとＧＮＤが各エンコーダに対し接続されている。すなわち、エンコーダ装置ＥＮＣ１〜ＥＮＣｎの電源は、外部コントローラ部９が供給する。
【００１２】
本エンコーダ装置は、外部コントローラ部９との通信において、通常のエンコーダの位置情報を出力するエンコーダデータに関する通信方式の他に、エンコーダのモードデータ７ｃの読出し及び書込みが可能なモードデータに関する通信方式の２種類の通信方式を有している。モードデータ７ｃは、エンコーダ装置の通信フォーマット、分解能、伝送速度などのエンコーダ装置の性能・仕様を決定するデータである。モードデータ７ｃは、外部コントローラ部９から所定の値に設定可能である。モードデータ７ｃについては、後にさらに詳述する。
【００１３】
両通信方式ともに、バス通信ライン８を介してシリアル伝送を行う。伝送速度は、両者の間で異なるように設定されている。本実施の形態においては、エンコーダデータの場合は２．５Ｍｂｐｓ（又は４Ｍｂｐｓ）の伝送速度、モードデータの場合は１００Ｋｂｐｓの伝送速度に設定される。シリアル伝送信号の周波数帯域を異ならせることにより、両者の間でシリアルデータを誤認識しないように構成すると同時に、エンコーダに重要なモードデータに関しては周波数帯域を下げることにより、外乱ノイズ等に対してより堅牢な構成をとっている。
【００１４】
図３は、信号処理部５の内部構成を示すブロック図である。エンコーダデータ用通信回路１０１、モードデータ用通信回路１０２、エンコーダデータ計数演算部１０３、不揮発性メモリ用インターフェース部１０４とが設けられている。エンコーダデータ用通信回路１０１は、ＤＬＰＦ（デジタルローパスフィルタ）１０５、受信部１０６、送信部１０７、制御部１０８とから構成される。モードデータ用通信回路１０２は、ＤＬＰＦ（デジタルローパスフィルタ）１０９、受信部１１０、送信部１１１、制御部１１２とから構成される。エンコーダデータ用通信回路１０１の制御部１０８は、エンコーダデータ計数演算部１０３および不揮発性メモリ用インターフェース部１０４と接続されている。モードデータ用通信回路１０２の制御部１１２は、不揮発性メモリ用インターフェース部１０４と接続されている。
【００１５】
ＤＬＰＦ１０９のカットオフ周波数は、例えば上述の２．５Ｍｂｐｓのエンコーダデータ用コマンド信号は遮断し、１００Ｋｂｐｓモードデータ用コマンド信号は通過できるような値が設定されている。ＤＬＰＦ１０５のカットオフ周波数は、２．５Ｍｂｐｓのエンコーダデータ用コマンド信号が通過できるような値が設定されている。従って、ＤＬＰＦ１０５のカットオフ周波数の方がＤＬＰＦ１０９のカットオフ周波数より高い。
【００１６】
このことは、モードデータ用通信回路１０２の受信部１１０では、エンコーダデータ用コマンド信号は除去されモードデータ用コマンド信号のみが入力されるが、エンコーダデータ用通信回路１０１の受信部１０６では、エンコーダデータ用コマンド信号およびモードデータ用コマンド信号の双方が入力される。しかし、両者の周波数が異なり、フレーム長が異なるため、受信部１０６では、モードデータ用のコマンド信号はフレミングエラー等として検出される。従って、エンコーダデータ用通信回路１０１の受信部１０６が、誤ってモードデータ用のコマンドを検出することはない。このような構成により、エンコーダデータ用コマンドとモードデータ用コマンドとの区別を行う。
【００１７】
−エンコーダアドレスの設定−
次にエンコーダデータに関する通信方式を使用して、エンコーダ装置にエンコーダアドレスを設定する制御について説明する。ここでのコマンド信号６ａは、エンコーダデータに関するコマンド信号であり、上述したように例えば２．５Ｍｂｐｓのボーレートを有する。従って、図３のエンコーダデータ用通信回路１０１が、コマンド信号６ａを検出し、解析し、各コマンドに応じた処理をする。
【００１８】
図４は、このコマンド信号６ａのフレームフォーマットの構成図である。外部コントローラ部９からのコマンド信号６ａは、コマンドデータフレームＣＤＦ、メモリデータフレーム０ＭＤＦ０、メモリデータフレーム１ＭＤＦ１、メモリデータフレーム２ＭＤＦ２の最大４つのフレームで構成される。各フレーム間はアイドルＨ状態を保つ。
【００１９】
図５は、コマンドデータフレームの構成図である。図６は、メモリデータフレームの構成図である。各フレーム内にはフレーム毎に異なるフレームコード２ビット２３が存在し、どのフレームかの識別が可能となっている。また、図５のコマンドデータフレーム内のコマンドコード２１の種類によって、コマンドの機能、及びフレームの構成が異なっている。図７は、コマンドデータフレームのコマンドコード２１の構成図である。図７において、通常のエンコーダデータのやり取りのコマンドの機能として、データ要求コマンド、クリア要求コマンド、メモリ読出要求コマンド、メモリ書込要求コマンドがある。その他の機能として、エンコーダアドレス設定Ｉコマンド２１ａ、及びエンコーダアドレス設定ＩＩコマンド２１ｂがある。
【００２０】
エンコーダアドレス設定Ｉコマンド２１ａは、１つのコマンドデータフレームによって構成された従来のエンコーダ装置で利用されているエンコーダアドレスの設定コマンドである。このコマンド信号２１ａを受信したエンコーダ装置は、不揮発性メモリ７に保持しているエンコーダアドレス７ａを、図５のコマンドデータフレーム内で設定されるエンコーダアドレス２０に書き換える。このエンコーダアドレス設定Ｉコマンド２１ａは、エンコーダアドレスでエンコーダ装置を選択することができないため、エンコーダ装置と１対１接続しているときに使用されるコマンドである。
【００２１】
エンコーダアドレス設定ＩＩコマンド２１ｂは、図７に示すように、１つのコマンドデータフレームと３つのメモリデータフレームで構成されたエンコーダ装置に対するエンコーダアドレスの設定コマンドである。図８は、メモリデータフレームのフレームコード２３およびデータビット２２の構成図である。メモリデータフレームＭＤＦ０〜ＭＤＦ２には、図８に示すように、各フレーム内のデータビットＤ０［０〜７］、Ｄ１［０〜７］、Ｄ２［０〜７］、合計２４ビットに所定のエンコーダ識別コード（２４ビット）２２を設定する。
【００２２】
バスライン接続されたエンコーダ装置ＥＮＣ１〜ＥＮＣｎは、このコマンド信号２１ｂを受信すると、各々のエンコーダ装置は不揮発性メモリ７に保持しているエンコーダ識別コード７ｂと、メモリデータフレーム内で設定されたエンコーダ識別コード２２とを比較する。比較の結果一致したエンコーダ装置のみが、自己のエンコーダ装置へのエンコーダアドレス設定ＩＩコマンド２１ｂであると認識し、不揮発性メモリ７に保持しているエンコーダアドレス７ａを、図５のコマンドデータフレーム内で設定されたエンコーダアドレス２０に書き換える。図９は、コマンドデータフレームのエンコーダアドレス２０の構成図である。
【００２３】
図１０は、エンコーダ装置におけるエンコーダアドレス設定処理に関するフローチャートを示す図である。信号処理部５はＡＳＩＣで構成され、各回路はロジック回路で構成されている。図１０のフローチャートは、ロジック回路の処理の流れを理解するために記載するものである。具体的には、エンコーダデータ用通信回路１０１の処理の流れである。
【００２４】
外部コントローラ部９では、コントローラ制御パネル（不図示）等を通して、マニュアル操作により、エンコーダアドレスを設定したいエンコーダ装置のエンコーダ識別コードとエンコーダアドレスを設定して送信する。外部コントローラ部９は、エンコーダアドレスの送信指示がなされると、設定されたエンコーダ識別コードとエンコーダアドレスに基づきエンコーダアドレス設定ＩＩコマンド２１ｂを生成し、該コマンドをバス通信ライン８に送信する。このときの、通信速度は、前述のように２．５Ｍｂｐｓに設定される。
【００２５】
エンコーダ装置では、電源がオンされると、図１０のステップＳ１において、初期化処理がなされる。ステップＳ２では、コマンド信号６ａを受信したかどうかを判定する。受信したと判定すると、ステップＳ３に進み、受信していない場合はステップＳ２の判定を繰り返す。ステップＳ３では、コマンド信号６ａのコマンドコードに基づきコマンドの種類を判定する。エンコーダアドレス設定ＩＩコマンド２１ｂであると判定するとステップＳ４に進む。ステップＳ４では、エンコーダアドレス設定ＩＩコマンド２１ｂのメモリデータフレームのデータビットに設定されたエンコーダ識別コードと不揮発性メモリ７に予め格納されているエンコーダ識別コードとが一致するかどうか判定する。ステップＳ４で一致しないと判定するとステップＳ２に戻り処理を繰り返す。ステップＳ４で一致すると判定するとステップＳ５に進む。
【００２６】
ステップＳ５では、不揮発性メモリ用インターフェース部１０４を介して、不揮発性メモリ７に保持しているエンコーダアドレス７ａを、図５のコマンドデータフレーム内で設定されたエンコーダアドレス２０に書き換える。ステップＳ６では、外部コントローラ部９へのエンコーダ装置のステータス情報のデータ送信処理を行う。
【００２７】
ステップＳ３で、コマンド信号６ａがエンコーダアドレス設定Ｉコマンド２１ａであると判定するとステップＳ５に進む。この場合は、外部コントローラ部９あるいはそれに代わる装置とエンコーダ装置とが１対１接続されている場合である。ステップＳ３で、コマンド信号６ａがデータ要求１コマンド、データ要求２コマンド等と判定するとそれぞれのコマンドに対応したエンコーダに関する処理を行う。このコマンドには、コマンドデータフレームにエンコーダアドレスが挿入されているため、不揮発性メモリ７に格納された自己のエンコーダアドレスと比較して、自己のエンコーダ装置へのコマンドであるかを認識する。自己のエンコーダ装置へのコマンドであると認識すると、各コマンドに基づく処理を行う。
【００２８】
図１１は、ロボットの組み立て時のエンコーダ装置の取り付け作業の流れについて説明するフローチャートである。ロボットは、複数のエンコーダ装置を取り付け、バス接続する。
【００２９】
ステップＳ１１では、取り付けるべきエンコーダ装置にエンコーダ識別コードを設定する。一般的には、エンコーダ識別コードは、エンコーダ装置の取り付け作業時よりも前の上流工程において、モータの容量、シリアル番号等が、エンコーダ識別コードとしてあらかじめエンコーダに設定されているため、この工程は必要ない。ステップＳ１２において、ロボットの各軸にエンコーダ装置を取り付ける。取り付けた複数のエンコーダ装置はバスラインで接続される。ステップＳ１３で、外部コントローラ部９に、特定軸に設置されたエンコーダ装置のエンコーダ識別コードを入力する。外部コントローラ部９では、ロボットの各軸に設置されたエンコーダ装置との関連付けをエンコーダ識別コードを用いて行っている。例えば、外部コントローラ部９の内部に関連付けのテーブルを持つ。
【００３０】
ステップＳ１４において、外部コントローラ部９から該エンコーダ装置に対して、所定のコマンド信号（エンコーダアドレス設定ＩＩ）を送る。コマンド信号には、該エンコーダ装置のエンコーダ識別コードと、変更したいエンコーダアドレスが指定される。ステップＳ１５では、該エンコーダ装置のエンコーダアドレスが正しく設定できているかどうかの確認をする。例えば、該エンコーダ装置とデータ通信が可能かどうかを確認する。取り付けた複数のエンコーダ装置すべてに対して、ステップＳ１３〜Ｓ１５を繰り返す。このようにして、エンコーダ装置の取り付け作業が完了する。
【００３１】
−モードデータの設定−
次にモードデータに関する通信方式を使用して、エンコーダ装置にモードデータを設定する制御について説明する。ここでのコマンド信号６ａは、モードデータに関するコマンド信号であり、上述したように例えば１００Ｋｂｐｓのボーレートを有する。従って、図３のモードデータ用通信回路１０２が、コマンド信号６ａを検出し、解析し、各コマンドに応じた処理をする。
【００３２】
図１２は、モードデータ用コマンド信号６ａのフレームフォーマットの構成図である。コマンド信号６ａは、コマンドデータフレームＣＤＦ、メモリデータフレームＭＤＦ、メモリアドレスフレームＭＡＦの３つのフレームで構成される。各フレーム間はアイドルＨ状態を保つ。
【００３３】
図１３は、コマンドデータフレームＣＤＦの構成図である。図１４は、メモリデータフレームの構成図である。図１５は、メモリアドレスフレームの構成図である。各フレーム内にはフレーム毎に異なるフレームコード２ビット３１が存在し、どのフレームかの識別が可能となっている。図１６は、コマンドデータフレームのコマンドコード３２の構成図である。図１６において、コマンドデータフレーム内のコマンドコード３２の種類によって、モードデータ読出コマンド、およびモードデータ書込コマンド３２ａなどがある。
【００３４】
モードデータ書込コマンド３２ａは、コマンドデータフレーム、メモリデータフレーム、メモリアドレスフレームで構成された、エンコーダ装置に対するモードデータの設定コマンドである。コマンドデータフレーム内のエンコーダアドレス３３のビットには、バスライン接続されたエンコーダ装置の中でモード設定の対象となるエンコーダのエンコーダ区分ＥＮＣ１〜ＥＮＣｎ（図９）を指定する。
【００３５】
メモリアドレスフレーム内のアドレスビット３５およびメモリデータフレーム内のデータビット３４には、エンコーダ装置の各種モードデータを格納している不揮発性メモリ７の、所定のモードデータに対応したＥＥＰＲＯＭのアドレス（Ｄａ０〜Ｄａ７）と、そのアドレスへの書込データ（Ｄｄ０〜Ｄｄ７）を指定する。バスライン接続されたＥＮＣ１〜ＥＮＣｎのエンコーダ装置は、このコマンド信号３２ａを受信すると、各々のエンコーダ装置は不揮発性メモリ７に保持しているエンコーダアドレス７ａと、コマンドデータフレーム内で指定されたエンコーダアドレス３３とを比較する。比較の結果一致したエンコーダ装置のみが、メモリデータフレーム、メモリアドレスフレーム内で指定されたデータ及びアドレスに基づき、不揮発性メモリに保持している所定のモードデータを書き換える。
【００３６】
バス通信ライン８に接続されたｎ軸（ｎ≧１の整数）のエンコーダＥＮＣ１〜ＥＮＣｎに対して個別にモードデータを設定する場合、エンコーダ装置それぞれが保持している固有のエンコーダアドレス７ａをコマンド信号のコマンドデータフレームで指定し、所定のモードデータをメモリデータフレーム、メモリアドレスフレームに指定する。これにより、バスライン接続された複数のエンコーダ装置のモードデータを自由に書き換えられることができる。
【００３７】
図１７は、エンコーダ装置におけるモードデータ設定処理に関するフローチャートを示す図である。信号処理部５はＡＳＩＣで構成され、各回路はロジック回路で構成されている。図１７のフローチャートは、ロジック回路の処理の流れを理解するために記載するものである。具体的には、モードデータ用通信回路１０２の処理の流れである。
【００３８】
外部コントローラ部９では、コントローラ制御パネル（不図示）等を通して、マニュアル操作により、モードデータ指示される。モードデータは、例えば、エンコーダ装置の通信フォーマットの種類、分解能、伝送速度などである。通信フォーマットの種類は、フレームのビット構成やビット数の違いによるものや、コマンド体系の違いによるものなどがある。すなわち、モードデータは、エンコーダ装置の性能や仕様を決定するデータである。エンコーダ装置の性能や仕様は、エンコーダ装置の動作環境を決定するものであり、代表してエンコーダ装置の仕様と言う。外部コントローラ部９は、指示されたモードデータに応じて、モードデータ書き込みコマンド３２ａを生成して、該コマンドをバス通信ライン８に送信する。このときの通信速度は、前述のように１００Ｋｂｐｓに設定される。
【００３９】
エンコーダ装置では、電源がオンされると、図１７のステップＳ２１において、初期化処理がなされる。ステップＳ２２では、コマンド信号６ａを受信したかどうかを判定する。受信したと判定すると、ステップＳ２３に進み、受信していない場合はステップＳ２２の判定を繰り返す。ステップＳ２３では、コマンド信号６ａで指定されたエンコーダアドレスと不揮発性メモリ７に格納されているエンコーダアドレスとの一致不一致を判定する。不一致と判定するとステップＳ２２に戻り処理を繰り返す。一致すると判定するとステップＳ２４に進む。一致することは、自己のエンコーダ装置へのコマンドであると認識することである。
【００４０】
ステップＳ２４では、コマンド信号６ａのコマンドコードに基づきコマンドの種類を判定する。モードデータ書き込みコマンド３２ａであると判定するとステップＳ２５に進む。ステップＳ２５では、モードデータ書き込みコマンド３２ａのメモリデータフレーム、メモリアドレスフレーム内で指定されたデータ及びアドレスに基づき、不揮発性メモリ７に保持している所定のモードデータを書き換える。
【００４１】
ステップＳ２４でモードデータ読み出しコマンドであると判定するとステップＳ２６に進む。ステップＳ２６では、モードデータ読み出しコマンドのメモリアドレスフレーム内で指定されたアドレスに基づき、不揮発性メモリ７に保持している所定のモードデータを読み出す。ステップＳ２７では、読み出したモードデータの送信処理を行う。
【００４２】
図１８は、不揮発性メモリ７のモードデータ７ｃと信号処理部５の各機能ブロックとの関係を説明する図である。符号２０１は、不揮発性メモリ７内のモードデータ７ｃのアドレス０ｘＦＦに格納されたモードデータを示す。ビット０，１には分解能ＳＲＥＳ２０２が格納される。ビット２，３には、伝送速度ＳＢＰＳ２０３が格納される。ビット４−７には、通信フォーマットＳＭＦＴ２０４が格納される。アドレス０ｘＦＦは、図１５のアドレスフレームのアドレスビット３５により指定される。モードデータ２０１は、図１４のデータフレームのデータビット３４に対応する。
【００４３】
レジスタ２０５は、信号処理部５に設けられたレジスタであり、モードデータ書き込みコマンド３２ａにより不揮発性メモリ７にモードデータが書き込まれると同時にこのレジスタ２０５にも書き込まれる。図１７の初期化ステップＳ２１においても、不揮発性メモリ７のモードデータ２０１がこのレジスタ２０５に書き込まれる。初期化するときには、不揮発性メモリ７内の他のモードデータも同様に信号処理部５内の対応するレジスタに書き込まれる。レジスタ２０５の分解能ＳＲＥＳ２０６、伝送速度ＳＢＰＳ２０７、通信フォーマットＳＭＦＴ２０８は、モードデータ２０１の分解能ＳＲＥＳ２０２、伝送速度ＳＢＰＳ２０３、通信フォーマットＳＭＦＴ２０４に対応する。
【００４４】
本実施の形態では、通信フォーマットは例えば４種類設けられている。各通信フォーマットブロック２０９〜２１２は独立した回路として設けられ、セレクタ２１３により選択される。セレクタ２１３には、通信フォーマットＳＭＦＴ２０８のビットデータが接続され、ビット構成に応じて通信フォーマットが選択される。各通信フォーマットブロック２０９〜２１２は、図３のエンコーダデータ用通信回路１０１に対応し、それぞれの通信フォーマットの種類に応じた図３のエンコーダデータ用通信回路１０１が４個あると考えればよい。
【００４５】
通信フォーマットブロック２０９〜２１２には、伝送速度ＳＢＰＳ２０７のビットデータが接続され、シリアル通信の伝送速度を選択することができる。本実施の形態では、前述したように、２．５Ｍｂｐｓと４Ｍｂｐｓの２種類のボーレートが選択可能である。これは、エンコーダデータの伝送速度であり、モードデータの伝送速度は、上述の通り１００Ｋｂｐｓに固定されている。
【００４６】
分解能ＳＲＥＳ２０６のビットデータは、エンコーダデータ計数演算部１０３（図３）に接続される。本実施の形態の形態では、例えば１７ビット分解能と２０ビット分解能が選択可能である。図１の受光部３から波形整形回路４を経て信号処理部５に入力される擬似正弦波Ａ相、Ｂ相の信号は、エンコーダデータ計数演算部１０３で、Ａ／Ｄ変換、細分化処理（内挿処理）等を施されて、所定のビット数のエンコーダデータが生成される。このとき、分解能として１７ビットデータとするか２０ビットデータとするかを選択することが可能である。
【００４７】
以上説明した本実施の形態のエンコーダ装置やロボットシステムでは、次のようなすぐれた効果を奏する。
（１）複数のｎ軸のエンコーダ装置がバスライン接続された状態において、各々のエンコーダ装置のエンコーダアドレスを任意に設定できるため、ロボットにエンコーダを取り付けた後に所定のエンコーダアドレスの設定ができる。これにより、ロボットへのエンコーダ装置の取り付け作業を従来よりも大幅に容易化することができる。その結果、ロボットを組み立てるときに、ロボットの組み立て作業が容易になる。
（２）このことは、複数のエンコーダ装置を取り替える場合にも有効である。複数のエンコーダ装置を取り替えた後に、各エンコーダ装置のエンコーダアドレスを後から任意に設定することができる。これにより、エンコーダ装置の取替え作業も容易になる。
（３）エンコーダ識別コードをエンコーダ装置を外部から目視により識別できるものとしているので、いつでもエンコーダ識別コードを確認することができる。これにより、どのようなエンコーダ識別コードをエンコーダ装置に格納したかを忘れてしまっても、すぐに確認することができる。すなわち、どのようなエンコーダ識別コードを格納したかを記憶したり記録したりする必要がない。
（４）エンコーダ識別コードを、例えばモータの製造シリアル番号やエンコーダ装置の製造シリアル番号とすることも可能である。これにより、モータの製造工場で、エンコーダ装置を取り付けたときなどに、エンコーダ識別コードを設定することができる。すなわち、エンコーダ装置が使用される工程にかかわらず、任意の工程で、特に上流の工程でエンコーダ識別コードを設定することができる。（５）エンコーダ識別コードはモータの製造番号などを使用するため、実質的に重複がなく無制限の数が設定できる。上記実施の形態の例では、２４ビットで指定できる数の組み合わせが可能となり、実質的に無制限である。一方、通常のエンコーダデータのやりとりに使用するエンコーダアドレスは、上記の実施の形態では３ビットしか使用していない。エンコーダアドレスの設定時のみ、長いビット数のエンコーダ識別コードを使用するが、その後の通常の処理では短いエンコーダアドレスを使用するので、長いビット数のエンコーダ識別コードはエンコーダ装置のスループットにはなんら影響をおよぼさない。
（６）複数のｎ軸のエンコーダがバスライン接続された状態において、各々のエンコーダのモードデータを任意に設定できる。このため、ロボット組み立て時にエンコーダ装置を取り付けた後に、あるいは、取替え時に取替用のエンコーダ装置を取り付けた後に所定の動作モードに設定変更できる。これにより、ロボットへのエンコーダ取り付け作業や取替作業を従来よりも大幅に容易化することができる。
（７）ロボットに取り付ける前に、エンコーダ装置の仕様を確定する必要がない。
（８）ロボット完成状態においても本発明のモード設定を利用することにより、ロボットの分離・解体することなくエンコーダの性能・仕様を変更することが可能となる。
（９）本エンコーダ装置は、外部コントローラ部９との通信において、通信速度の速い通常のエンコーダの位置情報を出力するエンコーダデータに関する通信方式と、通信速度の遅いモードデータに関する通信方式の２種類の通信方式を採用している。これにより、通常の処理は高速に行うことが可能になり、モードデータの設定という重要な処理については、ノイズの影響を受けない信頼性の高い処理が可能となる。
（１０）上記２つの通信方式の区別は、フィルター等の簡易な回路で行っているので、コストアップやエンコーダ装置が大きくなるというような問題が生じない。
【００４８】
上記実施の形態では、モータの回転位置を求めるエンコーダ装置の例を説明したが、必ずしもこの内容に限定する必要はない。直線位置を求めるエンコーダ装置であってもよい。すなわち、あらゆるエンコーダ装置およびそのエンコーダ装置を使用するロボットシステムに適用することができる。
【００４９】
上記実施の形態では、信号処理部５の内部にデジタルフィルタを使用する例を説明したが、必ずしもこの内容に限定する必要はない。アナログフィルタであってもよい。
【００５０】
上記実施の形態では、信号処理部５はＡＳＩＣによるロジック回路の例を説明したが、必ずしもこの内容に限定する必要はない。マイクロＣＰＵなどを使用したものであってもよい。その場合、前述した図１０や図１７の処理が、プログラムにより実行される。
【００５１】
上記実施の形態では、シリアルラインのバス接続の例を説明したが、必ずしもこの内容に限定する必要はない。複数のラインからなるパラレルラインのバスであってもよい。また、デージーチェーンなどの接続も、本実施の形態では、バス接続とみなす。
【００５２】
上記実施の形態では、エンコーダ識別コードとしてモータの製造シリアル番号またはエンコーダの製造シリアル番号などの例を説明したが、必ずしもこの内容に限定する必要はない。複数のエンコーダ装置をそれぞれ特定できる固有のものであればどのようなものでもよい。この場合、複数のモータやエンコーダ装置が外観から目視で区別して識別できる情報であればより好ましい。
【００５３】
上記実施の形態では、モードデータとして、通信フォーマットの種類、分解能、伝送速度などの例を説明したが、本発明はこれらの内容に限定されるものではない。例えば、オーバースピード検出速度を選択するようにしてもよい。また、温度異常を出力するかしないかを選択するようにしてもよい。すなわち、エンコーダ装置の性能・仕様を決定するデータであればどのようなものでもよい。通信フォーマットの種類についても、フレームのビット構成やビット数の違いによるものや、コマンド体系の違いによるもを例として説明したが、その他の違いによるものであってもよい。通信フォーマットは、通信プロトコルを含む概念である。
【００５４】
上記実施の形態では、通信フォーマットは４種類、エンコーダデータの伝送速度は２．５Ｍｂｐｓと４Ｍｂｐｓの２種類、分解能は１７ビット分解能と２０ビット分解能の２種類の例を説明したが、必ずしもこの内容に限定する必要はない。通信フォーマットの種類の数は５個以上であってもよいし、４個未満であってもよい。エンコーダデータの伝送速度は３種類以上であってもよいし、その他の伝送速度の値であってもよい。分解能も３種類以上であってもよいし、分解能ビット数もその他の値であってもよい。
【００５５】
上記実施の形態では、エンコーダ装置と外部コントローラ部９との通信において、通信速度（伝送速度）の速い通常のエンコーダの位置情報を出力するエンコーダデータに関する通信方式と、通信速度の遅いモードデータに関する通信方式の２種類の通信方式を採用する例を説明した。このような内容は、必ずしもエンコーダ装置やロボットシステムにおける応用に限定する必要はない。他のシステムにも適用することは可能である。すなわち、バスを介して接続される複数の装置が接続されるシステムにおいて、通常のデータのやり取りは速い伝送速度の通信で行い、各装置の仕様の設定のような大事なデータのやり取りは遅い伝送速度の通信で行う。これにより、通常の処理は高速に行うことが可能になり、仕様の設定という重要な処理については、ノイズの影響を受けない信頼性の高い処理が可能となる。
【００５６】
上記実施の形態では、エンコーダアドレスで対象エンコーダ装置を特定し、モードデータを送信する例を説明したが、必ずしもこの内容に限定する必要はない。例えば、エンコーダアドレスの設定に使用したエンコーダ識別コードを使用して対象エンコーダ装置を特定し、モードデータを送信するようにしてもよい。すなわち、バス接続された複数のエンコーダ装置の中から任意のエンコーダ装置を特定あるいは識別できる情報であればどのようなものでもよい。
【００５７】
上記実施の形態では、種々の実施の形態および変形例を説明したが、本発明はこれらの内容に限定されるものではない。本発明の技術的思想の範囲内で考えられるその他の態様も本発明の範囲内に含まれる。
【００５８】
【発明の効果】
本発明は、以上説明したように構成しているので、次のような効果を奏する。複数のエンコーダ装置がバスライン接続された状態において、各々のエンコーダ装置のモードデータを任意に設定できる。このため、ロボット組み立て時にエンコーダ装置を取り付けた後に、あるいは、取替え時に取替用のエンコーダ装置を取り付けた後に所定の動作モードに設定変更できる。これにより、ロボットへのエンコーダ取り付け作業や取替作業を従来よりも大幅に容易化することができる。
【図面の簡単な説明】
【図１】本実施の形態のエンコーダ装置の構成図を示す図である。
【図２】ｎ軸のエンコーダ装置と外部コントローラから構成されるロボットの構成を示す図である。
【図３】信号処理部の内部構成を示すブロック図である。
【図４】コマンド信号のフレームフォーマットの構成図である。
【図５】コマンドデータフレームの構成図である。
【図６】メモリデータフレームの構成図である。
【図７】コマンドデータフレームのコマンドコードの構成図である。
【図８】メモリデータフレームのフレームコードおよびデータビットの構成図である。
【図９】コマンドデータフレームのエンコーダアドレスの構成図である。
【図１０】エンコーダ装置におけるエンコーダアドレス設定処理に関するフローチャートを示す図である。
【図１１】ロボットのエンコーダ装置の取替作業の流れについて説明するフローチャートである。
【図１２】モードデータ用コマンド信号のフレームフォーマットの構成図である。
【図１３】コマンドデータフレームの構成図である。
【図１４】メモリデータフレームの構成図である。
【図１５】メモリアドレスフレームの構成図である。
【図１６】コマンドデータフレームのコマンドコード３２の構成図である。
【図１７】エンコーダ装置におけるモードデータ設定処理に関するフローチャートを示す図である。
【図１８】不揮発性メモリのモードデータと信号処理部の各機能ブロックとの関係を説明する図である。
【符号の説明】
１  発光部
２  回転円板
３  受光部
４  波形整形回路
５  信号処理部
５ａ  エンコーダ信号
６  送受信ドライバ部
６ａ  コマンド信号
７  不揮発性メモリ
８  バス通信ライン
９  外部コントローラ
１０  終端抵抗
ＥＮＣ１〜ＥＮＣｎ  エンコーダ装置
【図１】
2004317261.tif 000003
【図２】
2004317261.tif 000004
【図３】
2004317261.tif 000005
【図４】
2004317261.tif 000006
【図５】
2004317261.tif 000007
【図６】
2004317261.tif 000008
【図７】
2004317261.tif 000009
【図８】
2004317261.tif 000010
【図９】
2004317261.tif 000011
【図１０】
2004317261.tif 000012
【図１１】
2004317261.tif 000013
【図１２】
2004317261.tif 000014
【図１３】
2004317261.tif 000015
【図１４】
2004317261.tif 000016
【図１５】
2004317261.tif 000017
【図１６】
2004317261.tif 000018
【図１７】
2004317261.tif 000019
【図１８】
2004317261.tif 000020