(57)【要約】【課題】１台の可搬式操作部を複数のコントローラにつなぎ換えて使用する場合、操作者のミスにより意図せぬロボットと接続してしまい、意図せぬロボットを操作してしまうことを防止するロボット制御システムを提供する。【解決手段】ロボット制御システム３０はティーチペンダント１０と、無線ＬＡＮを介して情報を送受信する複数のコントローラ２０Ａ等と、該コントローラ毎に接続されるとともに該コントローラにより制御可能なロボットＲ１〜Ｒ３を備える。ティーチペンダント１０はコントローラ２０に対し返信を要求するＣＰＵ１１を備えるとともに、前記返信の要求に応じてコントローラ２０から返信されたコントローラＩＤを表示する液晶ディスプレイ１７を有する。ＣＰＵ１１は液晶ディスプレイ１７により表示されたコントローラＩＤがキーボード１６の操作により選択されると、選択されたコントローラＩＤを有するコントローラと接続関係を構築する。【選択図】図１
2008080474.tif 000002
【特許請求の範囲】
【請求項１】
可搬式操作部とネットワーク手段を介して、或いは前記可搬式操作部と非有線通信手段を介して情報を送受信する複数のコントローラと、前記コントローラ毎に接続されるとともに該コントローラにより制御可能なロボットを備えたロボット制御システムにおいて、
前記可搬式操作部には、
コントローラに対してコントローラ識別情報の返信を要求する返信要求手段と、
前記返信の要求に応じてコントローラから返信されたコントローラ識別情報を表示する表示手段と、
前記表示手段により表示されたコントローラ識別情報を選択する選択操作手段と、
前記選択操作手段により選択されたコントローラ識別情報を有するコントローラと接続関係を構築する接続構築手段を備えることを特徴とするロボット制御システム。
【請求項２】
前記返信要求手段からコントローラ識別情報の返信要求を受信したコントローラは、自身が既に他の可搬式操作部と接続関係を構築済みの場合は、接続関係構築済み情報を返信の要求があった可搬式操作部に返信し、
該可搬式操作部の表示手段は、前記接続関係構築済み情報があったコントローラに関してはコントローラ識別情報を表示しないことを特徴とする請求項１に記載のロボット制御システム。
【請求項３】
コントローラには、接続許可されている可搬式操作部を識別するための接続許可操作部情報を格納したハードウェアキーが着脱自在に装着可能にされており、
該コントローラは、前記返信要求手段からコントローラ識別情報の返信要求を受信した際、前記ハードウェアキーが装着されている場合であって、該ハードウェアキーの接続許可操作部情報が前記返信要求と共に送信された送信元識別情報と一致している場合にのみ、コントローラ識別情報を返信することを特徴とする請求項１に記載のロボット制御システム。
【請求項４】
可搬式操作部とネットワーク手段を介して、或いは前記可搬式操作部と非有線通信手段を介して情報を送受信する複数のコントローラと、前記コントローラ毎に接続されるとともに該コントローラにより制御可能なロボットを備えたロボット制御システムにおいて、
前記可搬式操作部には、接続先確認操作手段と、該接続先確認操作手段の確認操作を検出し、前記ネットワーク手段又は非有線通信手段を介して可搬式操作部と接続関係が構築されているコントローラに対して確認操作情報を送信する確認操作検出手段を備え、
前記コントローラは、前記確認操作情報を受信し、送信された確認操作情報が自分に関係する場合には、制御対象のロボット又は前記コントローラが備える接続先確認表示灯を点灯することを特徴とするロボット制御システム。
【請求項５】
前記接続先確認表示灯は、ロボットアームを駆動する駆動源が通電状態で有ることを表示する警告灯と兼用されていることを特徴とする請求項４に記載のロボット制御システム。
【請求項６】
前記接続先確認操作手段は、教示作業中のロボットのロボットアームを駆動する駆動源の通電状態の切り換えに使用されるイネーブルスイッチであることを特徴とする請求項４又は請求項５に記載のロボット制御システム。
【請求項７】
可搬式操作部とネットワーク手段を介して、或いは前記可搬式操作部と非有線通信手段を介して情報を送受信する複数のコントローラと、前記コントローラ毎に接続されるとともに該コントローラにより制御可能なロボットを備えたロボット制御システムにおいて、
前記ロボットには、ロボット個体別ＩＤが表示されており、
前記可搬式操作部には、ロボット個体別ＩＤを入力する入力手段と、
該入力手段により入力されたロボット個体別ＩＤを前記ネットワーク手段、或いは前記非有線通信手段に出力する出力手段を備え、
前記コントローラは、前記可搬式操作部から送信されたロボット個体別ＩＤが、該コントローラが制御するロボットの識別情報と一致する場合に、該ロボットを駆動する駆動源の電力供給を許可することを特徴とするロボット制御システム。
【請求項８】
前記コントローラは、前記可搬式操作部から送信されたロボット個体別ＩＤが、該コントローラが制御するロボットの識別情報と一致するか否かを判別し、前記ロボット個体別ＩＤを送信した可搬式操作部に対してその判別結果を送信し、
前記可搬式操作部には、該判別結果を表示する判別結果表示手段を備えたことを特徴とする請求項７に記載のロボット制御システム。
【請求項９】
可搬式操作部とネットワーク手段を介して、或いは前記可搬式操作部と非有線通信手段を介して情報を送受信する複数のコントローラと、前記コントローラ毎に接続されるとともに該コントローラにより制御可能なロボットを備えたロボット制御システムにおいて、
前記ロボットには、該ロボット固有の点滅パターンでコントローラにより点滅御される表示灯が備えられており、
前記可搬式操作部には、前記点滅パターンを入力可能な入力手段と、
該入力手段により入力された点滅パターンを前記ネットワーク手段、或いは前記非有線通信手段に出力する出力手段を備え、
前記コントローラは、前記送信された点滅パターンが、該コントローラが制御する表示灯の点滅パターンと一致する場合に、該ロボットを駆動する駆動源の電力供給を許可することを特徴とするロボット制御システム。
【請求項１０】
前記コントローラのうち少なくとも１つのコントローラは、複数のロボットを制御することが可能であり、
該コントローラは、前記可搬式操作部から送信されたロボット個体別ＩＤが、該コントローラが制御する複数のロボットの識別情報と一致する場合に、該ロボットを駆動する駆動源の電力供給を許可することを特徴とする請求項７乃至請求項９のいずれか１項に記載のロボット制御システム。
【請求項１１】
可搬式操作部とネットワーク手段を介して、或いは前記可搬式操作部と非有線通信手段を介して情報を送受信する複数のコントローラと、前記コントローラ毎に接続されるとともに該コントローラにより制御可能なロボットを備えたロボット制御システムにおいて、
前記コントローラには、前記可搬式操作部とネットワーク手段を介して、或いは前記可搬式操作部と非有線通信手段を介して受信した情報に含まれる認証対象データと、コントローラの記憶手段に格納された認証基礎データとが一致するか否かを判定し、一致した一台の可搬式操作部に対してのみ該コントローラを操作する権限を付与する認証手段を設けたことを特徴とするロボット制御システム。
【請求項１２】
可搬式操作部とネットワーク手段を介して、或いは前記可搬式操作部と非有線通信手段を介して情報を送受信する複数のコントローラと、前記コントローラ毎に接続されるとともに該コントローラにより制御可能なロボットを備えたロボット制御システムにおいて、
前記コントローラは、該コントローラと既に接続関係にある可搬式操作部に関するユーザ識別情報と、パスワードを記憶する記憶手段を備え、
該コントローラは、前記可搬式操作部から受信した切断要求が、該切断要求とともに受信したユーザ識別情報、及びパスワードが、前記記憶手段に記憶されているユーザ識別情報と、パスワードと一致する場合のみ、該切断要求に応ずることを特徴とするロボット制御システム。
【請求項１３】
可搬式操作部とネットワーク手段を介して、或いは前記可搬式操作部と非有線通信手段を介して情報を送受信する複数のコントローラと、前記コントローラ毎に接続されるとともに該コントローラにより制御可能なロボットを備えたロボット制御システムにおいて、
前記コントローラは、
前記可搬式操作部と接続関係が構築された際、ロボットモータを制御するサーボドライバに電力供給遮断を行う電力供給遮断手段に対して電力遮断指令を付与する指令手段を備え、
前記電力供給遮断手段は、前記電力遮断指令に基づいて前記サーボドライバへの電力を遮断することを特徴とするロボット制御システム。
【請求項１４】
前記コントローラは、外部操作可能な運転準備操作手段を備え、
前記指令手段は、前記運転準備操作手段の操作に応じて電力付与指令を前記電力供給遮断手段に付与し、
前記電力供給遮断手段は、前記電力付与指令に基づいて前記サーボドライバへ電力を供給することを特徴とする請求項１３に記載のロボット制御システム。
【請求項１５】
前記指令手段は、前記電力付与指令を前記電力供給遮断手段に付与した後、接続関係が構築された可搬式操作部からの操作が予め決められた時間内にないときは、電力遮断指令を電力供給遮断手段に付与することを特徴とする請求項１４に記載のロボット制御システム。
【請求項１６】
前記コントローラは、外部操作可能な運転準備操作手段を備え、
前記指令手段は、前記運転準備操作手段の操作と、接続関係が構築された可搬式操作部からの操作による入力が同時にあったとき、電力付与指令を前記電力供給遮断手段に付与し、
前記電力供給遮断手段は、前記電力付与指令に基づいて前記サーボドライバへ電力を供給することを特徴とする請求項１３に記載のロボット制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ティーチペンダント（以下、ＴＰという）とロボットコントローラ（以下、コントローラという）とが、無線ＬＡＮや有線ＬＡＮ等で接続される際、ＴＰの接続により意図せぬロボットを誤操作してしまうことを防止するロボット制御システムに関する。
【背景技術】
【０００２】
従来から、コントローラ（ロボット制御装置）とロボットマニピュレータが一対一で対応しているシステムが提案されている。例えば、この技術は特許文献１において従来技術として取り挙げられている。この種のシステムの場合、ＴＰとコントローラ、ロボットマニピュレータは常に一対になっている。このため、仮にこのシステムが複数台並んだ生産ラインを考えた場合、各ＴＰで動作するロボットマニピュレータは確定されていることから、特定のＴＰによる操作によって、該ＴＰと一対一で対応しているマニピュレータ以外の他のマニピュレータが意図せずして動いてしまうことはない。
【０００３】
特許文献１では、この従来技術に対して、１台の制御装置（コントローラ）で２台以上のロボットの教示プログラムを記憶し、２台以上のロボットの該教示プログラムの再生運転を制御するシステムが提案されている。このシステムでは、コントローラにおいて、教示プログラム記憶部の教示プログラム識別部に、ロボット識別部と作業識別部とが設けられ、教示プログラムの選択手段にロボット選択手段と作業選択手段とが設けられている。そして、該ロボット選択手段により教示プログラムが選択された場合には、選択されたロボットの全作業プログラムが選択されるとともに、該作業選択手段により、教示プログラムが選択された場合には、選択された作業の全ロボットの該プログラムが選択される。そして、該ロボット選択手段及び作業選択手段の両方が選択された場合には、選択された作業ロボットの選択された作業プログラムが選択できるようにされている。
【０００４】
このシステムの場合、例えば１つのロボットで作成された教示プログラムが他のロボットで再生されてしまうことがないため、該他のロボットが予期せぬ動作に至ることはない。
【０００５】
又、特許文献２では、一台のコントローラに対して複数のＴＰが接続できるように複数のコネクタボックスを有するロボット制御装置が提案されている。このロボット制御装置は、接続されている複数のＴＰから情報が出力されているときにはそのいずれか一つの情報を受け入れると共にコントローラからの情報を複数のＴＰに対等に入力する制限手段と、前記コントローラと前記ＴＰとの間で授受される信号を一時記憶するバッファとを有する。
【０００６】
特許文献２では、接続されている複数のＴＰから情報が出力されているときには、その情報はそれぞれ異なるデータバッファに一旦ストアされ、排他的論理素子を介してコントローラがそのいずれか一つの情報を受け入れるようにされている。上記構成によれば、複数のＴＰから単一のコントローラに情報が出力されたときに、データバッファに一次記憶してデータの衝突の回避を図ることにより、一方のＴＰを操作している操作者の指令により、他方のＴＰを操作している操作者にとってロボットマニピュレータが予期せぬ動きをして、該操作者に危険が及ばないようにしている。
【０００７】
特許文献３では、通電状態でＴＰのコネクタの抜き差しを行ってもロボットが停止することなく、しかも数多くのロボットを制御する上位の制御装置によって制御される全てのロボットが停止しないロボット制御装置が提案されている。この特許文献３では明記されていないものの、一台のＴＰを複数のコントローラに使い回すことができる可能性が示唆されている。
【０００８】
上記特許文献１〜３に記載の従来技術では下記のようにまとめることができる。
１）コントローラとＴＰが一対一で、かつ一台のコントローラに対して複数のロボットマニピュレータが接続される場合、操作者が予期せぬロボットマニピュレータを操作してしまう危険性については、従来技術では既に考慮がなされている（特許文献１，特許文献２）。
【０００９】
２）一台のＴＰを複数のコントローラに使い回すことができる可能性が示唆されている（特許文献２，特許文献３）。
なお、上記１）２）から推測される、複数のコントローラ及び複数のロボットマニピュレータに対して一台のＴＰを使い回したりする場合、操作者が意図しないロボットマニピュレータを誤って操作してしまう問題については、上記従来技術では、考慮されていない。
【特許文献１】特開平５−１１９８２７号公報、「産業用ロボットの作業プログラム選択方法」
【特許文献２】特許第２８８４９１２、「ロボット制御装置」
【特許文献３】特開２００３−１３６４４７号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
ところで、近年、ネットワーク技術や、非有線通信技術が発達し、又、ＵＳＢ（Universal Serial Bus）や、ＩＥＥＥ１３９４（Institute of Electrical and Electronic Engineers 1394 ）等に見られるように、電源が入った状態でケーブルの挿抜や接続できる電気的通信手段が確立してきている。例えば、図３９（ａ）は、１台のティーチペンダントＴＰと、ロボットを制御する複数のコントローラＣ１０〜Ｃ１２とが無線を介して交信を行う場合を示している。又、図３９（ｂ）は、同じく１台のＴＰとロボットを制御する複数のコントローラＣ２０〜Ｃ２２とがＬＡＮ（ローカルエリアネットワーク）を介して交信を行う場合を示している。なお、ＬＡＮ（ローカルエリアネットワーク）には有線ＬＡＮ及び無線ＬＡＮを含む。このような技術状況において、１台のＴＰを、ロボットが稼働状態の複数台のコントローラにつなぎ換えて使用する場合が考えられる。この利点には、以下のものがある。
【００１１】
１）  ＴＰの数を減らす事による省スペース化
２）  ＴＰの数を減らす事によるコスト削減
３）  ＴＰを非有線化にした場合は、ケーブルレスによる作業性の向上
４）  ＴＰを非有線化にした場合は、断線がなくなるための信頼性向上
ところが、その際に一番問題になるのが、操作者の安全の確保である。仮に、複数台のコントローラから所望の接続先であるコントローラを選択できない場合には、意図せぬコントローラにＴＰが接続されてしまい、ＴＰからの操作により意図せぬロボットを動作させてしまう可能性があり、操作者の安全が確保できない問題がある。
【００１２】
本発明の目的は、１台の可搬式操作部を、複数のコントローラにつなぎ換えて使用する場合、操作者のミスにより意図せぬロボットと接続してしまい、意図せぬロボットを操作してしまうことを防止するロボット制御システムを提供することにある。
【課題を解決するための手段】
【００１３】
上記問題点を解決するために、請求項１に記載の発明は、可搬式操作部とネットワーク手段を介して、或いは前記可搬式操作部と非有線通信手段を介して情報を送受信する複数のコントローラと、前記コントローラ毎に接続されるとともに該コントローラにより制御可能なロボットを備えたロボット制御システムにおいて、前記可搬式操作部には、コントローラに対してコントローラ識別情報の返信を要求する返信要求手段と、前記返信の要求に応じてコントローラから返信されたコントローラ識別情報を表示する表示手段と、前記表示手段により表示されたコントローラ識別情報を選択する選択操作手段と、前記選択操作手段により選択されたコントローラ識別情報を有するコントローラと接続関係を構築する接続構築手段を備えることを特徴とするロボット制御システムを要旨とするものである。
【００１４】
なお、非有線通信とは、無線通信（通信媒体：電波）、赤外線通信、光通信、或いは磁気通信を含み、いずれもワイヤレスで行う伝送方式のことをいう。
請求項２の発明は、請求項１において、前記返信要求手段からコントローラ識別情報の返信要求を受信したコントローラは、自身が既に他の可搬式操作部と接続関係を構築済みの場合は、接続関係構築済み情報を返信の要求があった可搬式操作部に返信し、該可搬式操作部の表示手段は、前記接続関係構築済み情報があったコントローラに関してはコントローラ識別情報を表示しないことを特徴とする。
【００１５】
請求項３の発明は、請求項１において、コントローラには、接続許可されている可搬式操作部を識別するための接続許可操作部情報を格納したハードウェアキーが着脱自在に装着可能にされており、該コントローラは、前記返信要求手段からコントローラ識別情報の返信要求を受信した際、前記ハードウェアキーが装着されている場合であって、該ハードウェアキーの接続許可操作部情報が前記返信要求と共に送信された送信元識別情報と一致している場合にのみ、コントローラ識別情報を返信することを特徴とする。
【００１６】
請求項４の発明は、可搬式操作部とネットワーク手段を介して、或いは前記可搬式操作部と非有線通信手段を介して情報を送受信する複数のコントローラと、前記コントローラ毎に接続されるとともに該コントローラにより制御可能なロボットを備えたロボット制御システムにおいて、前記可搬式操作部には、接続先確認操作手段と、該接続先確認操作手段の確認操作を検出し、前記ネットワーク手段又は非有線通信手段を介して可搬式操作部と接続関係が構築されているコントローラに対して確認操作情報を送信する確認操作検出手段を備え、前記コントローラは、前記確認操作情報を受信し、送信された確認操作情報が自分に関係する場合には、制御対象のロボット又は前記コントローラが備える接続先確認表示灯を点灯することを特徴とするロボット制御システムを要旨とするものである。
【００１７】
請求項５の発明は、請求項４において、前記接続先確認表示灯は、ロボットアームを駆動する駆動源が通電状態で有ることを表示する警告灯と兼用されていることを特徴とする。
【００１８】
請求項６の発明は、請求項４又は請求項５において、前記接続先確認操作手段は、教示作業中のロボットのロボットアームを駆動する駆動源の通電状態の切り換えに使用されるイネーブルスイッチであることを特徴とする。
【００１９】
請求項７の発明は、可搬式操作部とネットワーク手段を介して、或いは前記可搬式操作部と非有線通信手段を介して情報を送受信する複数のコントローラと、前記コントローラ毎に接続されるとともに該コントローラにより制御可能なロボットを備えたロボット制御システムにおいて、前記ロボットには、ロボット個体別ＩＤが表示されており、前記可搬式操作部には、ロボット個体別ＩＤを入力する入力手段と、該入力手段により入力されたロボット個体別ＩＤを前記ネットワーク手段、或いは前記非有線通信手段に出力する出力手段を備え、前記コントローラは、前記可搬式操作部から送信されたロボット個体別ＩＤが、該コントローラが制御するロボットの識別情報と一致する場合に、該ロボットを駆動する駆動源の電力供給を許可することを特徴とするロボット制御システムを要旨とするものである。なお、ＩＤは識別符号（identifier）のことである。
【００２０】
請求項８の発明は、請求項７において、前記コントローラは、前記可搬式操作部から送信されたロボット個体別ＩＤが、該コントローラが制御するロボットの識別情報と一致するか否かを判別し、前記ロボット個体別ＩＤを送信した可搬式操作部に対してその判別結果を送信し、前記可搬式操作部には、該判別結果を表示する判別結果表示手段を備えたことを特徴とする。
【００２１】
請求項９の発明は、可搬式操作部とネットワーク手段を介して、或いは前記可搬式操作部と非有線通信手段を介して情報を送受信する複数のコントローラと、前記コントローラ毎に接続されるとともに該コントローラにより制御可能なロボットを備えたロボット制御システムにおいて、前記ロボットには、該ロボット固有の点滅パターンでコントローラにより点滅制御される表示灯が備えられており、前記可搬式操作部には、前記点滅パターンを入力可能な入力手段と、該入力手段により入力された点滅パターンを前記ネットワーク手段、或いは前記非有線通信手段に出力する出力手段を備え、前記コントローラは、前記送信された点滅パターンが、該コントローラが制御する表示灯の点滅パターンと一致する場合に、該ロボットを駆動する駆動源の電力供給を許可することを特徴とするロボット制御システムを要旨とするものである。
【００２２】
請求項１０の発明は、請求項７乃至請求項９のいずれか１項において、前記コントローラのうち少なくとも１つのコントローラは、複数のロボットを制御することが可能であり、該コントローラは、前記可搬式操作部から送信されたロボット個体別ＩＤが、該コントローラが制御する複数のロボットの識別情報と一致する場合に、該ロボットを駆動する駆動源の電力供給を許可することを特徴とする。
【００２３】
請求項１１の発明は、可搬式操作部とネットワーク手段を介して、或いは前記可搬式操作部と非有線通信手段を介して情報を送受信する複数のコントローラと、前記コントローラ毎に接続されるとともに該コントローラにより制御可能なロボットを備えたロボット制御システムにおいて、前記コントローラには、前記可搬式操作部とネットワーク手段を介して、或いは前記可搬式操作部と非有線通信手段を介して受信した情報に含まれる認証対象データと、コントローラの記憶手段に格納された認証基礎データとが一致するか否かを判定し、一致した一台の可搬式操作部に対してのみ該コントローラを操作する権限を付与する認証手段を設けたことを特徴とするロボット制御システムを要旨とするものである。
【００２４】
請求項１２の発明は、可搬式操作部とネットワーク手段を介して、或いは前記可搬式操作部と非有線通信手段を介して情報を送受信する複数のコントローラと、前記コントローラ毎に接続されるとともに該コントローラにより制御可能なロボットを備えたロボット制御システムにおいて、前記コントローラは、該コントローラと既に接続関係にある可搬式操作部に関するユーザ識別情報と、パスワードを記憶する記憶手段を備え、該コントローラは、前記可搬式操作部から受信した切断要求が、該切断要求とともに受信したユーザ識別情報、及びパスワードが、前記記憶手段に記憶されているユーザ識別情報と、パスワードと一致する場合のみ、該切断要求に応ずることを特徴とするロボット制御システムを要旨とするものである。
【００２５】
請求項１３の発明は、可搬式操作部とネットワーク手段を介して、或いは前記可搬式操作部と非有線通信手段を介して情報を送受信する複数のコントローラと、前記コントローラ毎に接続されるとともに該コントローラにより制御可能なロボットを備えたロボット制御システムにおいて、前記コントローラは、前記可搬式操作部と接続関係が構築された際、ロボットモータを制御するサーボドライバに電力供給遮断を行う電力供給遮断手段に対して電力遮断指令を付与する指令手段を備え、前記電力供給遮断手段は、前記電力遮断指令に基づいて前記サーボドライバへの電力を遮断することを特徴とするロボット制御システムを要旨とするものである。
【００２６】
請求項１４の発明は、請求項１３において、前記コントローラは、外部操作可能な運転準備操作手段を備え、前記指令手段は、前記運転準備操作手段の操作に応じて電力付与指令を前記電力供給遮断手段に付与し、前記電力供給遮断手段は、前記電力付与指令に基づいて前記サーボドライバへ電力を供給することを特徴とする。
【００２７】
請求項１５の発明は、請求項１４において、前記指令手段は、前記電力付与指令を前記電力供給遮断手段に付与した後、接続関係が構築された可搬式操作部からの操作が予め決められた時間内にないときは、電力遮断指令を電力供給遮断手段に付与することを特徴とする。
【００２８】
請求項１６の発明は、請求項１３において、前記コントローラは、外部操作可能な運転準備操作手段を備え、前記指令手段は、前記運転準備操作手段の操作と、接続関係が構築された可搬式操作部からの操作による入力が同時にあったとき、電力付与指令を前記電力供給遮断手段に付与し、前記電力供給遮断手段は、前記電力付与指令に基づいて前記サーボドライバへ電力を供給することを特徴とする。
【発明の効果】
【００２９】
以上詳述したように、請求項１乃至請求項１６の発明によれば、１台の可搬式操作部を、複数のコントローラにつなぎ換えて使用する場合、操作者のミスにより意図せぬロボットと接続してしまい、意図せぬロボットを操作してしまうことを防止することができる。
【００３０】
請求項２の発明によれば、コントローラが他の可搬式操作部と接続関係を構築済みの場合、該コントローラが接続関係構築済み情報を返信の要求があった可搬式操作部に返信するため、可搬式操作部の表示手段は、前記接続関係構築済み情報があったコントローラに関してはコントローラ識別情報を表示しない。この結果、可搬式操作部の操作者は、他の可搬式操作部と既に接続関係にあるコントローラを誤って選択することはないとともに、可搬式操作部と未接続のコントローラの中から所望のものを選択できるため、さらに安全確実に可搬式操作部とコントローラの接続処理が可能となる。
【００３１】
請求項３の発明によれば、可搬式操作部の操作者は、可搬式操作部と一対一の認証関係を持つハードウェアキーが装着されたコントローラのみとの接続関係の構築が可能になるので、さらに安全かつ確実に可搬式操作部とコントローラの接続処理が可能となる。又、複数の操作者が、それぞれ複数の可搬式操作部を持ち作業を行う際にも、本ハードウェアキーの認証システムによれば、ハードウェアキーを装着により接続関係を結ぶ可搬式操作部とコントローラの関係が一意に定まり、複数の操作者が誤って同一のコントローラに対して操作を実施しようとすることも無くなる。
【００３２】
請求項４の発明によれば、操作者が接続先のコントローラを確認するための接続先確認操作手段を確認操作したときだけ、可搬式操作部の接続先のコントローラが制御するロボット、又は前記コントローラに備えられた接続先確認表示灯が点灯される。このため、可搬式操作部を持つ操作者は、該可搬式操作部と接続関係にあるロボット又は接続先のコントローラを容易に目視で特定することが可能になり、複数の可搬式操作部やコントローラが混在する場合でも、可搬式操作部からの操作で安全かつ確実に可搬式操作部とコントローラの接続関係を確認することが可能となる。
【００３３】
請求項５の発明によれば、可搬式操作部の操作者は、サーボ電源状態と自身が操作している可搬式操作部の接続先という２つの重要なロボットの制御状態を、同一の表示灯で確認できるため、確認が容易である。又、接続先確認表示灯がロボットアームを駆動する駆動源が通電状態で有ることを表示する警告灯と兼用されているため、２つの状態を示すために独立した２つの表示灯を設ける場合に比べて、コスト的にも有利である。
【００３４】
請求項６の発明によれば、教示作業中のロボットのロボットアームを駆動する駆動源の通電状態の切り換えに使用されるイネーブルスイッチによって、請求項４又は請求項５の効果を実現することができる。
【００３５】
請求項７の発明は、操作者が操作対象として認識しているロボットと、操作者の操作によって実際に動作するロボットが一致している場合に限り、ロボットのアームを駆動するモータへの動力の供給が可能になり、操作者が意図していないロボットを動作させてしまうことを、事前に回避することが可能となる。
【００３６】
請求項８の発明は、可搬式操作部から送信されたロボット個体別ＩＤがコントローラが制御するロボットの識別情報と一致するか否かの判別結果が、判別結果表示手段により表示されるため、操作者は、その判別結果を容易に知ることができる。この結果、操作者は、判別結果の表示によってさらに、操作者が意図していないロボットを動作させてしまうことを、事前に回避することが可能となる。
【００３７】
請求項９の発明によれば、請求項７と同様の効果を奏する。
請求項１０の発明によれば、１台のコントローラに複数台のロボットが接続される接続形態においても、可搬式操作部、コントローラ、ロボットの接続確認をロボット毎に認証することができるため、操作者が操作対象を誤ることを回避することができる。
【００３８】
請求項１１の発明によれば、可搬式操作部とコントローラ間の通信が、ネットワーク手段や非有線通信手段を経由して行われる環境において、コントローラとの通信が可能な複数の可搬式操作部が存在しても、任意の可搬式操作部、任意のコントローラとの問に、一対一の接続関係が確立される。そして、接続関係が確立した可搬式操作部からの指示によってのみ、同コントローラを操作することができることにより、同コントローラから操作権限を与えられていない可搬式操作部を持つ操作者の介入を遮断することが可能となり、操作者の安全性を確保することができる。
【００３９】
請求項１２の発明によれば、可搬式操作部とコントローラとの接続関係が確立した後に、接続関係を破棄するためには、接続関係を確立した操作者の操作、具体的には、接続関係を確立した際に入力したユーザＩＤとパスワードが必要になる。このため、操作権限が与えられた可搬式操作部に何らかの障害が発生し、コントローラとの通信が中断した場合においても、操作権限を持たない可搬式操作部を持つ別の操作者によって、同コントローラの操作権限を奪われることがない。この結果、現在の接続関係を確立した可搬式操作部の操作者が、意図していないにも関わらずロボットが動作してしまうことを防止することができる。
【００４０】
請求項１３の発明によれば、複数のコントローラから所望の接続先を間違いなく選択できず、万が一、意図せぬコントローラに可搬式操作部を接続してしまった場合、可搬式操作部からの操作により意図せぬロボットを動作させてしまう可能性があるが、このような場合においても、接続関係が構築された場合、サーボドライバへの電力が遮断される。この結果、ロボットが必ず動作を停止させるため、現在の接続関係を確立した可搬式操作部の操作者が、意図していないにも関わらずロボットが動作してしまうことを防止することができる。
【００４１】
請求項１４の発明によれば、請求項１３の効果に加え、コントローラと接続関係を構築した可搬式操作部を持つ操作者が、一旦作動を停止したロボットのコントローラが所望の接続先であったと確認できた場合は、操作者が運転準備操作手段を操作することによって、ロボットの運転準備を行うことができる。
【００４２】
請求項１５の発明によれば、指令手段が電力付与指令を前記電力供給遮断手段に付与した後、接続関係が構築された可搬式操作部からの操作が予め決められた時間内にないときは、再び電力遮断指令が出されてサーボドライバへの電力が遮断されるため、ロボットの運転準備を解消することができる。この結果、請求項１５の発明によれば、一旦接続関係が構築された場合にも、ロボットの運転準備を長期間放置することがなくなり、操作者の誤操作を誘発するおそれをなくすことができる。
【００４３】
請求項１６の発明によれば、指令手段は、運転準備操作手段の操作と、接続関係が構築された可搬式操作部からの操作による入力が同時にあったとき、電力付与指令を電力供給遮断手段に付与するため、前記可搬式操作部を持つ操作者がロボットの運転準備を意図的に行ったことをコントローラ側で確実に確認できる。
【発明を実施するための最良の形態】
【００４４】
（第１実施形態）
以下、本発明を教示装置である可搬式操作部としてのティーチペンダント１０と複数のコントローラ２０Ａ〜２０Ｃとが無線ＬＡＮを介して通信を行うロボット制御システム３０に具体化した第１実施形態を図１及び図２を参照して説明する。このロボット制御システム３０のコントローラ２０Ａ〜２０Ｃがそれぞれ制御するロボットＲ１〜Ｒ３は、例えば溶接ロボットである、なお、ロボットは、溶接ロボットに限定されるものではなく、例えば搬送ロボット等の他のロボットであってもよい。なお、各コントローラの構成は同じであるため、コントローラ２０Ａの構成について以下では説明し、他のコントローラの説明を省略する。
【００４５】
なお、説明の便宜上、以下の説明ではコントローラ２０Ａ〜２０Ｃのいずれかを特定しない場合には、コントローラには２０の符号を付す。同様に、ロボットＲ１〜Ｒ３のいずれかを特定しない場合には、ロボットにはＲの符号を付す。
【００４６】
（１．  ティーチペンダント１０）
図１に示すように可搬式操作部としてのティーチペンダント１０はＣＰＵ１１、ＲＯＭ１２、ＲＡＭ１３、ハードディスク１４、ＬＡＮＩ／Ｆ１５、キーボード１６（図３参照）、液晶ディスプレイ１７（図３参照）及び有線・無線変換器１８の各部を備えているとともに各部はバス１９を介して接続されている。
【００４７】
ティーチペンダント１０のＲＯＭ１２には、ティーチペンダント１０からのロボットＲ１の操作やティーチペンダント１０との通信を実行するための各種制御プログラムとその制御定数が格納される。ＲＡＭ１３は、ＣＰＵ１１のワーキングエリアとして用いられ、計算途中のデータが一時的に格納される。ハードディスク１４には、各種制御プログラムの実行変数等が格納される。例えば、ティーチペンダント１０のアドレス（ＴＰＩＰ１４０）や、ティーチペンダント１０の識別情報（ＴＰＩＤ１４１）等が格納されている。ＬＡＮＩ／Ｆ１５はコントローラ２０との接続に使用される通信機である。有線・無線変換器１８は、ＬＡＮＩ／Ｆ１５を介して出力されたデータを無線で送信したり、コントローラ２０から無線送信されたデータを受信してＬＡＮＩ／Ｆ１５に該データを出力する。
【００４８】
本実施形態のＣＰＵ１１は、返信要求手段、及び接続構築手段に相当する。又、キーボード１６は選択操作手段に相当する。液晶ディスプレイ１７は、表示手段に相当する。
（２．  コントローラ２０Ａ）
コントローラ２０Ａは、ＣＰＵ２１、ＲＯＭ２２、ＲＡＭ２３、ハードディスク２４、ＬＡＮＩ／Ｆ２５、タイマ２６、サーボドライバ２７及び有線・無線変換器２８の各部を備えているとともに各部はバス２９を介して接続されている。前記ＲＯＭ２２には、該コントローラ２０Ａが制御対象とするロボットＲ１の動作制御を実行するための制御プログラムとその制御定数や、例えば、自身のＩＤ通知を行うためのＩＤ通知処理プログラム２２０等の各種プログラムが格納される。なお、図１では、説明の便宜上、ＩＤ通知処理プログラム２２０のみが図示されている。ＲＡＭ２３は、ＣＰＵ２１のワーキングエリアとして用いられ、計算途中のデータが一時的に格納される。ハードディスク２４には、ロボットＲ１の作業が教示されたデータや、制御プログラムの実行条件、ならびに各種の制御変数が格納される。なお、ハードディスク２４に代えて、他の書換可能な記憶装置であってもよい。ＬＡＮＩ／Ｆ２５は、ティーチペンダント１０との接続に使用される通信機である。サーボドライバ２７は、ロボットＲ１の各関節を駆動する図示しないモータに接続され、該モータに通電させる電流を制御する。タイマ２６は、定期時刻ごとに同期信号を発生する。該同期信号は、サーボドライバ２７への指令値の更新タイミングに使用される。
【００４９】
本実施形態では、ティーチペンダント１０のＬＡＮＩ／Ｆ１５、有線・無線変換器１８、コントローラ２０ＡのＬＡＮＩ／Ｆ２５、有線・無線変換器２８とにより、無線ＬＡＮからなるネットワーク手段が構成されている。なお、無線ＬＡＮでは通信パケットによりＬＡＮＩ／Ｆ１５，２５間の交信が行われている。なお、本実施形態を含めた以下の各実施形態では、各種メッセージが作成されて交信相手に送信されるが、特段に説明が無くても通信パケットとして各種メッセージが作成されている。
【００５０】
（第１実施形態の作用）
さて、上記のように構成されたロボット制御システム３０において、ティーチペンダント１０がコントローラ２０のいずれかに接続する際の作用を説明する。本実施形態では、ティーチペンダント１０から接続先をサーチする際、下記の順序で行われる。
【００５１】
１）ティーチペンダント１０によるコントローラのサーチ
ティーチペンダント１０のＣＰＵ１１は、ティーチペンダント１０の操作者によるキーボード操作により、「コントローラへの接続処理」が開始されたことを検知すると、ＲＯＭ１２に格納された接続先検索処理プログラム１２１を実行する。図２はＣＰＵ１１が実行する接続先検索処理プログラム１２１のフローチャートである。
【００５２】
ＣＰＵ１１は、ティーチペンダント１０の無線ＬＡＮを介して自身と接続可能なコントローラ２０Ａ〜２０Ｃを全てサーチする（図２のＳ１参照）。なお、以下では、本実施形態並びに他の実施形態において、説明の便宜上、ティーチペンダント１０とコントローラ２０とは、ＬＡＮＩ／Ｆ１５，２５、及び有線・無線変換器１８、２８による無線ＬＡＮを介して交信（送信、受信を含む）することを、単に無線ＬＡＮを介して送信、受信、発行、或いは通知する等という。
【００５３】
具体的には、ＣＰＵ１１は、全コントローラ２０に対して、アドレスであるコントローラＩＰの要求コマンド及び送信元情報として自身のＴＰＩＰ１４０を含む通信パケットを作成して無線ＬＡＮを介して発行する。一方、各コントローラ２０は、それに対しハードディスク２４に格納している自身のコントローラＩＰ２４２及び送信先情報として前記ティーチペンダントのＴＰＩＰ１４０を含む通信パケットを作成して無線ＬＡＮを介して送信する。なお、ＩＰはＩＰ（Internet  Protocol）アドレスを意味する。
【００５４】
ティーチペンダント１０のＣＰＵ１１は、サーチしたコントローラ２０のアドレス（コントローラＩＰ２４２）をハードディスク１４のコントローラアドレスリスト１４２に保存にする。なお、このとき、ＣＰＵ１１はネットワーク上に接続されている全ての装置のノードのアドレスをコントローラアドレスリスト１４２に格納しても良い。
【００５５】
なお、多くのコントローラが存在する場合は、接続が許容されるコントローラをハードディスク１４の接続許可コントローラアドレスリスト１４３に操作者が予め設定しておき、接続許可コントローラアドレスリスト１４３と合致するものだけをコントローラアドレスリスト１４２に格納するようにしてもよい。このようにすると、処理時間の短縮ならびにユーザの接続先確認作業の簡素化が可能となる。
【００５６】
２）  ティーチペンダント１０によるコントローラＩＤの取得
次に、ＣＰＵ１１は、コントローラアドレスリスト１４２から順次アドレスをピックアップし、アドレス毎に、送信先情報として該アドレス、送信元情報として自身のＴＰＩＰ１４０及びコントローラＩＤの返信を要求するコマンドを含む通信パケットを作成して無線ＬＡＮを介して発行する。コントローラＩＤは、コントローラ毎に設けられた固有の識別情報であって、コントローラ識別情報に相当する。
【００５７】
該当する送信先情報のアドレスを持つコントローラのＣＰＵ２１がコマンドを受け取ると、ＩＤ通知処理プログラム２２０に従って該ＣＰＵ２１は、自身のコントローラＩＤ２４１及び送信先情報として前記ティーチペンダントのＴＰＩＰ１４０を含む通信パケットを作成する。コントローラＩＤ２４１は、ハードディスク２４に予め格納されている。
【００５８】
そして、ＣＰＵ２１は該通信パケットをコマンド発行元のティーチペンダント１０に対して無線ＬＡＮを介して返信する。ティーチペンダント１０のＣＰＵ１１は、返信されたコントローラＩＤを、ティーチペンダント１０に接続可能なコントローラのコントローラＩＤとして、ハードディスク１４のコントローラＩＤリスト１４４に保存する（図２のＳ２参照）。
【００５９】
３）  ティーチペンダント１０によるコントローラＩＤの表示
次にＣＰＵ１１は、図２のＳ３において、ＲＯＭ１２に格納された接続先表示処理プログラム１２２を実行する。すなわち、ＣＰＵ１１は、ハードディスク１４のコントローラＩＤリスト１４４の内容を、例えば図３に示すようにティーチペンダント１０の液晶ディスプレイ１７に表示する。なお、この表示は、アルファベットや漢字・ひらがな・カナを使用したコントローラＩＤにてロボットの個体識別を行う方が、単に数字の羅列となるアドレスで検索するより、安全かつ確実になるのは言うまでも無い。又、コントローラＩＤを図３に示すようにコントローラ２０Ａ〜２０ＣあるいはロボットＲの本体部に記名しておけば、更に識別の確実性や安全性を向上できる。
【００６０】
４）  ティーチペンダント１０によるコントローラＩＤの選択
次に、ＣＰＵ１１は、Ｓ４において、ＲＯＭ１２に格納された接続先選択処理プログラム１２３を実行する。すなわち、Ｓ４において、ＣＰＵ１１は操作者がキーボード１６のキー入力を待つ。そして、ＣＰＵ１１はキー入力により液晶ディスプレイ１７に表示されたコントローラＩＤから任意の１つを選択して確定させたことを検知すると、Ｓ４の判定を「ＹＥＳ」とする。続いて、ＣＰＵ１１は、選択されたコントローラＩＤに該当するコントローラアドレスを、自ティーチペンダント１０の接続先コントローラアドレスである接続先コントローラＩＰ１４５としてハードディスク１４に登録する（Ｓ５）。
【００６１】
５）  ティーチペンダント１０による自ＩＤ番号の通知
次に、ＣＰＵ１１は、Ｓ６において、選択された接続先コントローラに対して、自身のアドレスを通知するように、送信先情報である該接続先コントローラアドレスとして接続先コントローラＩＰ１４５及び送信元情報を兼用する自身のアドレス（ＴＰＩＰ１４０）を含む通信パケットを作成して無線ＬＡＮを介して発行する。
【００６２】
通知を受けたコントローラは、接続先のティーチペンダント１０として通知されたアドレス（ＴＰＩＰ１４０）を接続先ＴＰＩＰ２４３としてコントローラ２０のハードディスク２４に保管する。
【００６３】
上記のようにして、ティーチペンダント１０とコントローラ２０の双方が互いのアドレス（ＴＰＩＰ，コントローラＩＰ）を確認し合うことにより接続関係が確立される。このことにより、複数のティーチペンダント１０や複数のコントローラが混在する場合でも、ティーチペンダント１０からの操作で安全かつ確実にティーチペンダント１０とコントローラの接続処理が可能となる。
【００６４】
さて、第１実施形態によれば、以下のような特徴がある。
第１実施形態のロボット制御システム３０では、ティーチペンダント１０（可搬式操作部）と、無線ＬＡＮ（非有線通信手段）を介して情報を送受信する複数のコントローラ２０Ａ〜２０Ｃと、該コントローラ毎に接続されるとともに該コントローラにより制御可能なロボットＲ１〜Ｒ３を備える。
【００６５】
又、ティーチペンダント１０はコントローラ２０に対してコントローラＩＤ（コントローラ識別情報）の返信を要求するＣＰＵ１１（返信要求手段）を備えるとともに、前記返信の要求に応じてコントローラ２０から返信されたコントローラＩＤを表示する液晶ディスプレイ１７（表示手段）を有する。又、ティーチペンダント１０のＣＰＵ１１（接続構築手段）は、液晶ディスプレイ１７により表示されたコントローラＩＤをキーボード１６（選択操作手段）の操作により選択すると、選択されたコントローラＩＤを有するコントローラと接続関係を構築する。
【００６６】
この結果、第１実施形態では、１台のティーチペンダント１０を、複数のコントローラにつなぎ換えて使用する場合、操作者のミスにより意図せぬロボットと接続してしまい、意図せぬロボットを操作してしまうことを防止することができる。
【００６７】
（第２実施形態）
次に、第２実施形態を説明する。なお、第２実施形態を含め、以下の各実施形態では、既に説明した実施形態の構成と同一又は相当する構成については同一符号を付してその詳細な説明を省略すると共に異なる部分を中心にして説明する。第２実施形態は第１実施形態とハード構成は同一である。そして、第２実施形態は、第１実施形態での作用の説明中、２）の「ティーチペンダント１０によるコントローラＩＤの取得」の仕方が異なっており、他の制御は同一であるため、以下、第２実施形態の作用を「ティーチペンダント１０によるコントローラＩＤの取得を中心にして説明する。
【００６８】
２）  ティーチペンダント１０によるコントローラＩＤの取得
ここでは、ＣＰＵ１１は、コントローラアドレスリスト１４２から順次アドレスをピックアップし、アドレス毎に、送信先情報として該アドレス、送信元情報として自身のＴＰＩＰ１４０及びコントローラＩＤの返信を要求するコマンドを含む通信パケットを作成して無線ＬＡＮを介して発行する。
【００６９】
そして、第２実施形態では、ＩＤ通知処理プログラム２２０による制御が第１実施形態と異なる。
すなわち、該当する送信先情報のアドレスを持つコントローラのＣＰＵ２１がコントローラＩＤの返信を要求するコマンドを受け取ると、ＩＤ通知処理プログラム２２０に従って、自身が、既に他のティーチペンダントとの接続関係を構築済みであるか否かを判断する。
【００７０】
なお、この場合、既にティーチペンダントとの接続関係を構築済みのコントローラは、接続先のティーチペンダントのアドレスを接続先ＴＰＩＰ２４３としてハードディスク２４に保管している。
【００７１】
そして、ティーチペンダントとの接続関係が未構築（すなわち、未接続中）のコントローラでは、接続先ＴＰＩＰ２４３としては、例えば“０”が保管される。この"０"は、ティーチペンダントとは接続関係がない旨を表す情報として使用されている。なお、
接続関係がない旨を表す情報は、前記“０”に限定されるものではない。他のデータであってもよいことは勿論のことである。このため、コントローラのＣＰＵ２１がコントローラＩＤの返信を要求するコマンドを受け取った際、該ＣＰＵ２１自身が、既に他のティーチペンダントと接続関係が有るか否かの判断は、接続先ＴＰＩＰ２４３が“０”であるか否かによって判断できる。そして、接続先ＴＰＩＰ２４３が“０”である場合には、ＣＰＵ２１は、未接続状態であると判断し、第１実施形態と同様に、自身のコントローラＩＤを、前記コマンドの発行元のティーチペンダント１０に対して無線ＬＡＮを介して返信する。
【００７２】
一方、接続先ＴＰＩＰ２４３が“０”でない場合には、ＣＰＵ２１は、既に他のティーチペンダントと接続状態であるとして、コントローラＩＤの返信を要求するコマンドの発行元（すなわち、接続要求元）のティーチペンダントとの接続が不可能と判断する。この場合には、ＣＰＵ２１は、“０”を自身のコントローラＩＤとするとともに、該コントローラＩＤと、送信先情報として前記ティーチペンダントのＴＰＩＰ１４０を含む通信パケットを作成する。そして、ＣＰＵ２１は、無線ＬＡＮを介して接続要求元のティーチペンダントに対し、該通信パケットを返信する。
【００７３】
この場合、“０”のコントローラＩＤは、接続関係構築済み情報に相当する。
接続要求元のティーチペンダント１０のＣＰＵ１１は、返信された通信パケットのコントローラＩＤが、“０”でない場合には、接続可能な「コントローラＩＤリスト」としてハードディスクに保存にする。一方、コントローラＩＤが、“０”で返信された場合には、ＣＰＵ１１は、本ティーチペンダントとの接続ができないコントローラであると判断し、「コントローラＩＤリスト」への登録を実行しない。
【００７４】
以下は、第１実施形態と同様にＣＰＵ１はＳ３以降の処理を実行する。このとき、Ｓ３では接続できるコントローラのコントローラＩＤをＣＰＵ１１は表示するが、接続できないコントローラりコントローラＩＤは表示しない。
【００７５】
さて、第２実施形態によれば、以下のような特徴がある。
第２実施形態は、コントローラは、ティーチペンダント１０のＣＰＵ１１からコントローラＩＤの返信要求を受信した際、自身が既に他のティーチペンダントと接続関係を構築済みの場合、コントローラＩＤを“０”として、該コントローラＩＤを接続関係構築済み情報として返信の要求があったティーチペンダント１０に返信するようにした。そして、該ティーチペンダント１０の液晶ディスプレイ１７は、コントローラＩＤが“０”であったコントローラに関してはコントローラＩＤを表示しないようにした。
【００７６】
この結果、ティーチペンダント１０の操作者は他のティーチペンダントと既に接続関係にあるコントローラを誤って選択することはないとともに、ティーチペンダントと未接続のコントローラの中から所望のものを選択できるため、さらに安全確実にティーチペンダントとコントローラの接続処理を行うことができる。
【００７７】
（第３実施形態）
次に、第３実施形態を図４を参照して説明する。
第３実施形態のロボット制御システム３０のハードウェアは、第１実施形態の構成中、各コントローラ２０にハードウェアキープラグ４０が設けられ、該ハードウェアキープラグ４０に対してハードウェアキー４１が着脱自在に取着されるところが異なっている。ハードウェアキー４１は、例えば、ＵＳＢメモリや、メモリカード等にて実現されている。又、ハードウェアキープラグ４０は、ＵＳＢメモリや、メモリカードをコントローラに対して着脱自在に接続可能なプラグにより構成されている。又、ハードウェアキー４１には、該ハードウェアキー４１が装着されたコントローラ２０に対してティーチペンダントの接続許可を付与するための接続許可ＴＰＩＤ４２が記憶保持されるとともに、バス２９を介してＣＰＵ２１がハードウェアキープラグ４０に装着されたハードウェアキー４１の接続許可ＴＰＩＤ４２を読み出し可能である。ハードウェアキー４１に格納された接続許可ＴＰＩＤ４２は、接続許可操作部情報に相当する。
【００７８】
（第３実施形態の作用）
第３実施形態では、第１実施形態での作用の説明中、２）の「ティーチペンダント１０によるコントローラＩＤの取得」の仕方が異なっており、他の制御は同一であるため、第３実施形態における２）の「ティーチペンダント１０によるコントローラＩＤの取得」について説明する。
【００７９】
２）  ティーチペンダント１０によるコントローラＩＤの取得
ＣＰＵ１１はコントローラアドレスリスト１４２から順次アドレスをピックアップし、アドレス毎に、送信先情報として該アドレス、送信元識別情報（すなわち、接続要求元ＴＰＩＤ）として自身のＴＰＩＤ１４１、送信情報としてＴＰＩＰ１４０及びコントローラＩＤの返信を要求するコマンドを含む通信パケットを作成する。そして、ＣＰＵ１１は、この通信パケットを無線ＬＡＮを介して発行する。
【００８０】
そして、該当するアドレスを持つコントローラのＣＰＵ２１が、このコマンドを受け取ると、ＲＯＭ２２に格納されたＴＰＩＤ比較処理プログラムを起動して、ハードウェアキープラグ４０にハードウェアキー４１が装着されているかを判断する。
【００８１】
そして、ＣＰＵ２１は、ハードウェアキー４１が装着されていると判断したときにはそのハードウェアキー４１に格納された「接続許可ＴＰＩＤ」を読み出す。次に、ＣＰＵ２１は読み出した「接続許可ＴＰＩＤ」と、受信した通信パケットのコマンドに付加されている「接続要求元ＴＰＩＤ（すなわち、ＴＰＩＤ１４１）」を比較して、両者が同一であるときにのみ、接続要求元のティーチペンダント１０との接続が可能と判断する。この場合は、ＣＰＵ２１は、第１実施形態と同様に、自身のコントローラＩＤを、前記コマンドの発行元のティーチペンダント１０に対して無線ＬＡＮを介して返信する。
【００８２】
ハードウェアキープラグ４０にハードウェアキー４１が装着されていない場合や、「接続許可ＴＰＩＤ」と「接続要求元ＴＰＩＤ」とが同一で無いときには、接続要求元のティーチペンダントとの接続が不可能と判断する。この場合には、ＣＰＵ２１は、第２実施形態と同様に"０"を自身のコントローラＩＤとするとともに、該コントローラＩＤと、送信先情報として前記ティーチペンダントのＴＰＩＰ１４０を含む通信パケットを作成する。そして、ＣＰＵ２１は、無線ＬＡＮを介して接続要求元のティーチペンダントに対し、該通信パケットを返信する。
【００８３】
以下、第２実施形態と同様に、接続要求元のティーチペンダント１０のＣＰＵ１１は、返信された通信パケットのコントローラＩＤが、"０"でない場合には、接続可能な「コントローラＩＤリスト」としてハードディスクに保存にする。一方、コントローラＩＤが、"０"で返信された場合には、ＣＰＵ１１は、本ティーチペンダントとの接続ができないコントローラであると判断し、「コントローラＩＤリスト」への登録を実行しない。
【００８４】
以下は、第１実施形態と同様にＣＰＵ１１はＳ３以降の処理を実行する。このとき、Ｓ３では接続できるコントローラのコントローラＩＤをＣＰＵ１１は表示するが、接続できないコントローラりコントローラＩＤは表示しない。
【００８５】
さて、第３実施形態によれば、以下のような特徴がある。
第３実施形態のロボット制御システム３０において、コントローラ２０には、接続許可されているティーチペンダント１０を識別するための接続許可ＴＰＩＤ４２（接続許可操作部情報）を格納したハードウェアキー４１が着脱自在に装着可能にされている。そして、該コントローラ２０は、ＣＰＵ１１からコントローラＩＤの返信要求を受信すると、ハードウェアキー４１が装着されている場合であって、送信されたＴＰＩＤ１４１と接続許可ＴＰＩＤ４２と一致している場合にのみ、コントローラＩＤ（コントローラ識別情報）を返信するようにした。
【００８６】
この結果、ティーチペンダントの操作者は、ティーチペンダントと一対一の認証関係を持つハードウェアキー４１が装着されたコントローラのみとの接続関係の構築が可能になるため、さらに安全かつ確実にティーチペンダントとコントローラの接続処理が可能となる。
【００８７】
又、複数の操作者が、それぞれ複数のティーチペンダントを持ち作業を行う際にも、本ハードウェアキー４１の認証システムによれば、ハードウェアキー４１を予めコントローラに装着することにより接続関係を結ぶティーチペンダントとコントローラの関係を一意に定めることができる。この結果、複数の操作者が誤って同一のコントローラに対して操作を実施しようとすることも無くなる。
【００８８】
（第４実施形態）
次に、第４実施形態を図５〜図７を参照して説明する。
第４実施形態のロボット制御システム３０において、ティーチペンダント１０には、第１実施形態の構成に加えてさらにタイマ５０及び入出力ポート５１を介して接続先確認スイッチ（以下、接続先確認ＳＷ５２という）の開閉作動を監視するための回路が設けられている。タイマ５０は定期時刻ごとに同期信号を発生する。そして、該同期信号はティーチペンダント１０で実施される定期的な演算のタイミングとして使用される。ＣＰＵ１１は、入出力ポート５１を介して接続先確認ＳＷ５２のオンオフ操作の監視が可能である。接続先確認ＳＷ５２は、接続先確認操作手段に相当する。
【００８９】
又、第４実施形態のロボット制御システム３０において、コントローラ２０には、第１実施形態の構成に加えてさらに、接続先確認表示灯５５の点灯回路５４が設けられている。点灯回路５４はコントローラ２０が制御するロボットＲに設けられた接続先確認表示灯５５を点灯するためのものであり、点灯回路５４に設けられた接点５４ａをＣＰＵ２１が入出力ポート５３を介してオンオフ制御することにより、接続先確認表示灯５５の点灯及び消灯が可能である。接点５４ａは、例えば、スイッチングトランジスタからなる。
【００９０】
（第４実施形態の作用）
さて、上記のように構成されたロボット制御システム３０の作用を図６（ａ）、（ｂ）及び図７のフローチャートを参照しながら説明する。
【００９１】
なお、このフローチャートに示される処理は、各ＣＰＵにおいて、所定の制御周期毎（例えば、０．１sec毎）に、すなわち、定期的に実行される。
１）  接続先確認ＳＷ５２の状態変化監視処理
ティーチペンダント１０のＣＰＵ１１は、タイマ５０により定期的な演算タイミングの通知を受けると、ＲＯＭ１２に格納したＳＷの状態変化監視処理プログラム１２４を実行する。図６（ａ）はＳＷの状態変化監視処理プログラム１２４のフローチャートである。
【００９２】
ＣＰＵ１１はＳ１１において、入出力ポート５１を介して、接続先確認ＳＷ５２が"開"，"閉"のどちらの状態にあるか、すなわち、操作者により接続先確認ＳＷ５２がオン操作されたか否かを監視する。なお、本実施形態では、接続先確認ＳＷ５２は非操作時には"閉"であるが、逆の"開"であってもよい。ティーチペンダント１０のハードディスク１４には、前回監視したときの接続先確認ＳＷ５２の"開"又は"閉"の状態がＳＷ状態データ１４６（すなわち、前回の監視の結果）として保管されている。そして、ＣＰＵ１１は前回の監視の結果と、今回の監視の結果を比較することにより状態が変化したことを検知する（Ｓ１２）。ＳＷ状態データ１４６は確認操作情報に相当する。
【００９３】
仮に、接続先確認ＳＷ５２の状態に変化があったとき（すなわち、Ｓ１２の判定が「ＹＥＳ」のとき）には、ＣＰＵ１１はＲＯＭ１２に格納された表示状態切替通知処理プログラム１２５を実行するとともに、ハードディスク１４のＳＷ状態データ１４６を今回の監視結果に更新する。又、接続先確認ＳＷ５２の状態に変化がないとき（すなわち、Ｓ１２の判定が「ＮＯ」のとき）には、ＣＰＵ１１はこのプログラムを一旦終了する。
【００９４】
このようにティーチペンダント１０のタイマ５０より送られてくるＳＷの状態変化監視処理プログラム１２４の実行タイミングは、通常０．１sec程度の間隔でサイクリックに発生するため、操作者が接続先確認ＳＷ５２の"開"，"閉"を繰り返す度に、ＳＷ状態の変化を検知し、表示状態切替通知処理の実行を行うことが可能となる。
【００９５】
２）  表示状態切替通知処理
次に、Ｓ１３で実行される表示状態切替通知処理について説明する。
表示状態切替通知処理プログラム１２５がＣＰＵ１１にて実行されると、ＣＰＵ１１は、ＬＡＮＩ／Ｆ１５を介して、「確認表示灯の切替命令」を接続先のコントローラ２０に対して発行する（図６（ｂ）のＳ２０参照）。この「確認表示灯の切替命令」には、ハードディスク１４に保管されているＳＷ状態データ１４６をパラメータとして付加する。なお、接続先のコントローラ２０のアドレスは、接続先コントローラＩＰ１４５として予めティーチペンダント１０のハードディスク１４に格納されているため、この「確認表示灯の切替命令」も、接続先コントローラＩＰ１４５で指定されたコントローラ２０に対して発行される。
【００９６】
３）  確認表示灯のＯＮ／ＯＦＦ処理
次に、コントローラ側での処理を説明する。
前記「確認表示灯の切替命令」を受け取った該当アドレスを持つコントローラ２０のＣＰＵ２１は「確認表示灯の切替命令」を受け取ると、ＲＯＭ２２に格納した確認表示灯Ｏｎ／Ｏｆｆ処理プログラム２２２を起動し、当該命令にパラメータとして格納されているＳＷ状態データ１４６を解析する（図７のＳ３０）。そして、ＣＰＵ２１は、ＳＷ状態データ１４６が"閉"のとき（Ｓ３１において、「ＹＥＳ」の判定のとき）には、接続先確認表示灯５５への電力供給を制御する接点５４ａを"閉"にし、接続先確認表示灯５５を点灯させる（Ｓ３２）。逆に、ＣＰＵ２１はＳＷ状態データ１４６が"開"のときには、接続先確認表示灯５５への電力供給を制御する接点５４ａも"開"にし、接続先確認表示灯５５を消灯させる（Ｓ３３）。
【００９７】
さて、第４実施形態によれば、以下のような特徴がある。
第４実施形態では、ティーチペンダント１０（可搬式操作部）は接続先確認ＳＷ５２の確認操作を検出し、無線ＬＡＮを介してティーチペンダント１０と接続関係が構築されているコントローラ２０に対してＳＷ状態データ１４６（確認操作情報）を送信するＣＰＵ１１（確認操作検出手段）を備える。
【００９８】
そして、コントローラ２０は、ＳＷ状態データ１４６を受信し、送信されたＳＷ状態データ１４６が自分に関係する場合には、制御対象のロボットＲが備える接続先確認表示灯５５を点灯するようにした。
【００９９】
このためワイヤレス化されたティーチペンダント１０を持つ操作者が、接続先のコントローラ２０を確認するためのスイッチである接続先確認ＳＷ５２を押したとき（閉）のみ、ティーチペンダント１０の接続先のコントローラ２０に取り付けられた接続先確認表示灯５５が点灯する。又、操作者がティーチペンダント１０の接続先確認ＳＷ５２を開放操作したとき（開）のみ、ティーチペンダント１０の接続先のコントローラ２０に取り付けられた接続先確認表示灯５５が消灯する。
【０１００】
この結果、ティーチペンダント１０を持つ操作者は、自らが持つティーチペンダント１０と接続関係にあるコントローラ２０を容易に目視で特定することが可能になる。従って、複数のティーチペンダント１０やコントローラ２０が混在する場合でも、ティーチペンダント１０からの操作で安全かつ確実にティーチペンダント１０とコントローラ２０の接続関係を確認することが可能となる。
【０１０１】
（第５実施形態）
次に、第５実施形態を図８及び図９を参照して説明する。
第５実施形態は第４実施形態とはロボット制御システム３０のハード構成は同一であり、確認表示灯Ｏｎ／Ｏｆｆ処理プログラム２２２が異なっていることと、ハードディスク２４には、動作警告灯表示状態データ２４４、及びサーボ電源状態データ２４５が格納されるところが異なっている（図８参照）。そして、第５実施形態では、接続先確認表示灯５５が、ロボットアームを駆動するモータが通電状態で有ることを表示する動作警告灯と兼用されているところが第４実施形態と異なっている。
【０１０２】
以下では、コントローラ２０が実行処理する確認表示灯Ｏｎ／Ｏｆｆ処理プログラム２２２を図９のフローチャートを参照して説明する。
前記「確認表示灯の切替命令」を受け取った該当アドレスを持つコントローラ２０のＣＰＵ２１は「確認表示灯の切替命令」を受け取ると、ＲＯＭ２２に格納した確認表示灯Ｏｎ／Ｏｆｆ処理プログラム２２２を起動する。
【０１０３】
そして、Ｓ３０Ａにおいて、ＣＰＵ２１は当該命令にパラメータとして格納されているＳＷ状態データ１４６と、サーボ電源状態データ２４５の２つを同時に解析する。このサーボ電源状態データ２４５はロボットＲのロボットアームを駆動する駆動源としてのモータ（図示しない）へのモータ通電の入／切状態を表すデータである。このデータの更新は、タイマ２６によって発生する同期信号と同期して行われる。すなわち、前記同期信号はＣＰＵ２１のサーボドライバ２７への指令値の更新タイミングと使用され、この時々の更新タイミングによって、ＣＰＵ２１からのサーボドライバ２７への指令値（すなわち、前記モータ通電の指令値）が更新される。そして、サーボ電源状態データ２４５は、ＣＰＵ２１によりこの指令値が生成されると同時に該指令値の内容に応じて更新されている。
【０１０４】
ＣＰＵ２１は、ＳＷ状態データ１４６が"閉"のとき（Ｓ３１において、「ＹＥＳ」の判定のとき）には、ハードディスク２４に格納されているサーボ電源状態データ２４５が「入り」か否かを判定する（Ｓ３４）。そして、ＣＰＵ２１は、サーボ電源状態データ２４５が「入り」の場合（Ｓ３４において、「ＹＥＳ」の判定のとき）には、接続先確認表示灯５５への電力供給の接点５４ａを"開"にし、接続先確認表示灯５５を消灯させる（Ｓ３５）。又、ＣＰＵ２１は、サーボ電源状態データ２４５が「切り」の場合（Ｓ３４において、「ＮＯ」の判定のとき）には、接続先確認表示灯５５への電力供給の接点５４ａを"閉"にし、接続先確認表示灯５５を点灯させる（Ｓ３６）。
【０１０５】
又、Ｓ３１において、ＳＷ状態データ１４６が"開"のとき（Ｓ３１において、「ＮＯ」の判定のとき）には、ハードディスク２４に格納されているサーボ電源状態データ２４５が「入り」か否かを判定する（Ｓ３７）。そして、ＣＰＵ２１は、サーボ電源状態データ２４５が「入り」の場合（Ｓ３７において、「ＹＥＳ」の判定のとき）には、接続先確認表示灯５５への電力供給の接点５４ａを"閉"にし、接続先確認表示灯５５を点灯させる（Ｓ３８）。又、ＣＰＵ２１は、サーボ電源状態データ２４５が「切り」の場合（Ｓ３７において、「ＮＯ」の判定のとき）には、接続先確認表示灯５５への電力供給の接点５４ａを"開"にし、接続先確認表示灯５５を消灯させる（Ｓ３９）。
【０１０６】
上記のようにワイヤレス化されたティーチペンダント１０を持つ操作者が、接続先のコントローラ２０を確認するためのスイッチである接続先確認ＳＷ５２を押していないとき（"開"状態）には、動作警告灯の本来の役割であるモータ通電の入／切状態に応じた点灯パターンになる。
【０１０７】
又、接続先確認ＳＷ５２が押されたとき（"閉"状態）には、モータ通電状態を表す点灯とは逆パターンにすることより、１つの表示灯でモータ通電状態とティーチペンダント１０の接続先の２つの情報を周知させるために使用できる。
【０１０８】
さて、第５実施形態によれば、以下のような特徴がある。
第５実施形態では、接続先確認表示灯５５は、ロボットアームを駆動するモータが通電状態で有ることを表示する警告灯（すなわち動作警告灯）と兼用した。
【０１０９】
この結果、ティーチペンダント１０の操作者は、サーボ電源状態と自身が操作しているティーチペンダント１０の接続先という２つの重要なロボットの制御状態を、同一の表示灯で確認できるため、確認が容易であるとともに、２つの状態を示すために独立した２つの表示灯を設ける場合に比べて、コスト的にも有利である。
【０１１０】
（第６実施形態）
次に、第６実施形態を図５を参照して説明する。
第６実施形態のロボット制御システム３０では、第４実施形態のティーチペンダント１０の構成において、接続先確認ＳＷ５２の代わりに３ポジションのイネーブルスイッチ５２Ａが設けられたものである。イネーブルスイッチ５２Ａは、スイッチの操作位置として３つのポジションＩ〜IIIを取り得る。そして、ポジションＩとIIIは、スイッチが開であり、ポジションIIがスイッチが閉である。そして、ポジションＩからIIIへ移行する間に、ポジションIIが位置するようにされている。ただし、一旦ポジションIIIに移行した場合は、ポジションＩに戻るまでスイッチが開の状態を保持する。イネーブルスイッチ５２Ａは、教示作業中のロボットのロボットアームを駆動するモータの通電状態を切り換えに使用される。イネーブルスイッチ５２Ａの接点の開閉状態は、入出力ポート５１を介してＣＰＵ１１に検出される。
【０１１１】
そして、コントローラ２０とティーチペンダント１０とが接続された状態において、イネーブルスイッチ５２Ａが開操作された際、ＣＰＵ１１は接続先確認ＳＷとして取り扱うようにイネーブルスイッチ５２Ａの状態を検出処理する。イネーブルスイッチ５２Ａは接続先確認操作手段に相当する。
【０１１２】
そして、ティーチペンダント１０のＣＰＵ１１は、第４実施形態で説明した１），２）と同様の処理を行う。
一方、コントローラ側では、第４実施形態で説明した３）「確認表示灯のＯＮ／ＯＦＦ処理」と同様の処理を行うとともに、下記の処理を行う。
【０１１３】
ＳＷ状態データ１４６が"閉"であれば、コントローラ２０のＣＰＵ２１は、ＣＰＵ２１の制御対象であるロボットのロボットアームのモータ（図示）の通電状態を維持する。一方、ＳＷ状態データ１４６が"開"であれば、コントローラ２０のＣＰＵ２１は、ＣＰＵ２１の制御対象であるロボットのロボットアームのモータ（図示）の通電状態を解除に切り換える。
【０１１４】
さて、第６実施形態によれば、以下のような特徴がある。
第６実施形態では、接続先確認操作手段として、教示作業中のロボットのロボットアームを駆動するモータの通電状態を切り換えに使用されるイネーブルスイッチとした。この結果、教示作業中のロボットのロボットアームを駆動する駆動源の通電状態の切り換えに使用されるイネーブルスイッチ５２Ａによって、第４実施形態と同様の効果を奏する。又、イネーブルスイッチ５２Ａと接続先確認ＳＷ５２を兼用しているため、組み付け工数や部品点数を少なくでき、コスト低減することができる。
【０１１５】
（第７実施形態）
次に第７実施形態を図１０〜１４を参照して説明する。
第７実施形態のロボット制御システム３０において、ティーチペンダント１０には、第１実施形態のティーチペンダント１０の構成に加えて、モータ運転許可スイッチ５６及びモータ運転スイッチ５７が設けられているところが異なっている。コントローラ２０のハード構成は第１実施形態と同様である。モータ運転スイッチ５７は操作者によりロボットアームを駆動するモータ（図示しない）への電力供給を操作するためものである。又、モータ運転許可スイッチ５６は、コントローラ２０に対してロボットのモータ運転許可を得るために操作するためのものである。なお、第７実施形態において、キーボード１６は入力手段に相当する。ティーチペンダント１０のＣＰＵ１１は出力手段に相当する。液晶ディスプレイ１７は判別結果表示手段に相当する。
【０１１６】
（第７実施形態の作用）
そして、第７実施形態は、ティーチペンダント１０のＣＰＵ１１と、コントローラ２０のＣＰＵ２１が下記の処理を行うところが異なっている。
【０１１７】
１）  モータ運転許可要求メッセージの通知処理
ティーチペンダント１０のＣＰＵ１１は、図示しないタイマの同期信号によって所定の制御周期毎（例えば、０．１sec毎）に、すなわち、定期的にＲＯＭ１２に格納されたスイッチ監視処理プログラム１２６を実行する。そして、操作者が、ティーチペンダント１０のモータ運転許可スイッチ５６を押すと、ＣＰＵ１１は、スイッチ監視処理プログラム１２６に従いＲＯＭ１２に格納された第１モータ運転許可管理処理プログラム１２７Ａを起動し、操作者に対しＩＤの入力を促す旨の表示を液晶ディスプレイ１７にて行う（図１１参照）。そして、ロボット個体別ＩＤの入力がキーボード１６により行われたか否かを待つ（Ｓ４０）。
【０１１８】
ここで、操作者は、ロボットＲの本体部に明記されているロボット個体別ＩＤを目視にて確認し、ティーチペンダント１０のキーボード操作にて、該ロボット個体別ＩＤを入力する。なお、ロボット個体別ＩＤはロボットを識別するためのロボット毎に付与された固有のＩＤである。
【０１１９】
操作者がロボット個体別ＩＤの入力操作を完了すると、ＣＰＵ１１は、接続先コントローラに対して、無線ＬＡＮを介してモータ運転許可要求メッセージを通知する。モータ運転許可要求メッセージには、図１３に示すようにモータ運転許可要求メッセージを識別するためのメッセージＩＤ１８０、送信元のＴＰＩＤ１４１、接続先コントローラＩＤ１４８（すなわち、送信先コントローラＩＤ）、及び認証ＩＤ１４９が含まれている。なお、認証ＩＤ１４９は、操作者が入力したロボット個体別ＩＤである。
【０１２０】
なお、ＴＰＩＤ１４１や、接続先コントローラＩＤ１４８は、操作者によりキーボード入力されハードディスク１４に格納され、前記モータ運転許可要求メッセージ作成時にＣＰＵ１１により読み出されて利用される。
【０１２１】
２）  コントローラ２０によるロボット個体別ＩＤの認証処理
無線ＬＡＮを介して、接続先コントローラＩＤ１４８と一致するコントローラ２０のＣＰＵ２１は、前記モータ運転許可要求メッセージを受信すると、モータ運転許可要求メッセージ内の送信元のＴＰＩＤ１４１をハードディスク２４に接続先ＴＰＩＤ２４６として格納するとともにＲＯＭ２２に格納されたＩＤ認証処理プログラム２２３を起動する。
【０１２２】
図１２はＩＤ認証処理プログラム２２３のフローチャートである。
ＣＰＵ２１はハードディスク２４から認証ＩＤ２４７を読み出す（Ｓ５０）。この認証ＩＤ２４７は、予め当該コントローラ２０に接続されているロボットＲに付与されたロボット個体別ＩＤである。そして、ＣＰＵ２１はモータ運転許可要求メッセージに含まれる認証ＩＤ１４９とハードディスク２４から読み出した認証ＩＤ２４７が一致、すなわち、両ロボット個体別ＩＤが一致するか否かを判断する（Ｓ５１）。
【０１２３】
ＣＰＵ２１は認証ＩＤ１４９と認証ＩＤ２４７が一致したことを確認した場合（Ｓ５１において「ＹＥＳ」の判定のとき）は、当該モータ運転許可要求メッセージに含まれる送信元のＴＰＩＤ１４１を、ハードディスク２４に操作許可ＴＰＩＤ２４８として保存する（Ｓ５２）。
【０１２４】
なお、操作許可ＴＰＩＤ２４８の初期値は、ロボットが存在しないことを意味する初期値ＩＤ（例：−１）が設定されている。そして、モータ運転許可要求メッセージに含まれる認証ＩＤ１４９と、認証ＩＤ２４７とが一致しない場合（Ｓ５１において「ＮＯ」の判定のとき）は、操作許可ＴＰＩＤ２４８には、前記初期値ＩＤが保持される（Ｓ５６）。
【０１２５】
３）  コントローラ２０によるティーチペンダント１０へのモータ運転許可承認メッセージの通知
そして、ＣＰＵ２１は、認証ＩＤ１４９と認証ＩＤ２４７とが一致している場合、モータ運転許可要求メッセージを送信したティーチペンダント１０に通知するために図１４に示すようにモータ運転許可承認メッセージを作成する（Ｓ５３）。具体的にはＣＰＵ２１はハードディスク２４内のコントローラＩＤ２４１、接続先ＴＰＩＤ２４６、及び認証ＩＤ２４７を読み込みしてそれぞれを送信元のコントローラＩＤ、送信先ＴＰＩＤ１８２、ロボット個体別ＩＤ１８３とし、これらにメッセージを識別するためのメッセージＩＤ１８１を付加してモータ運転許可承認メッセージとする。ここで作成されたモータ運転許可承認メッセージは、ロボット個体別ＩＤ１８３が認証ＩＤ２４７のロボット個体別ＩＤとなっているため、操作者が入力したロボット個体別ＩＤに対応したロボットが有る旨のメッセージとなる。
【０１２６】
一方、上記２）において、操作者が入力したロボット個体別ＩＤである認証ＩＤ１４９と認証ＩＤ２４７とが一致していない場合、ＣＰＵ２１は、モータ運転許可要求メッセージを送信したティーチペンダント１０に通知するために図１４に示すようにモータ運転許可承認メッセージを作成する（Ｓ５７）。具体的には、ＣＰＵ２１はハードディスク２４内のコントローラＩＤ２４１、及び接続先ＴＰＩＤ２４６を読み込みしてそれぞれを送信元のコントローラＩＤ、送信先ＴＰＩＤ１８２とする。さらに、ＣＰＵ２１は、ロボット個体別ＩＤ１８３には、初期値ＩＤ（例：−１）を設定し、これらのデータにメッセージを識別するためのメッセージＩＤ１８１を付加してモータ運転許可承認メッセージとする。ここで作成されたモータ運転許可承認メッセージは、ロボット個体別ＩＤ１８３に初期値が設定されているため、操作者が入力したロボット個体別ＩＤに対応したロボットが無い旨のメッセージとなる。
【０１２７】
そして、ＣＰＵ２１はＳ５３又はＳ５７で作成したモータ運転許可承認メッセージを無線ＬＡＮを介してティーチペンダント１０に通知する。
４）  ティーチペンダント１０及びコントローラ２０における当該ロボットのモータ運転の許可
コントローラ２０のＣＰＵ２１は、ＲＯＭ２２に格納されたモータ運転制御処埋プログラム２２４を起動し（Ｓ５５）、操作許可ＴＰＩＤ２４８に初期値以外のＩＤが保存されていることが確認できた場合、モータ運転禁止状態からモータ運転許可状態への状態遷移を行う。
【０１２８】
一方、ティーチペンダント１０のＣＰＵ１１は、コントローラ２０からモータ運転許可承認メッセージを受信すると、ＲＯＭ１２に格納した第２モータ運転許可管理処理プログラム１２７Ｂを起動する（図１５参照）。そして、ＣＰＵ１１はモータ運転許可承認メッセージに含まれているロボット個体別ＩＤ１８３をハードディスク１４にモータ運転許可ロボットＩＤ１４７として保存する（Ｓ５８）。
【０１２９】
又、ＣＰＵ１１はこの処理とは別に、受信したモータ運転許可承認メッセージに基づき操作者が入力したロボット個体別ＩＤに対応するロボットが当該コントローラ２０に接続されているか否かの判定結果を操作者に知らせるための処理を行う。
【０１３０】
具体的には、保存されたモータ運転許可ロボットＩＤ１４７が、初期値の場合には、ＣＰＵ１１は液晶ディスプレイ１７に操作者が入力したロボット個体別ＩＤに対応するロボットが無い旨を表示し、初期値でない場合には液晶ディスプレイ１７に該ロボットが有る旨を表示する。又は、ＣＰＵ１１はティーチペンダント１０上の表示灯（図示しない）の点灯状態を、モータ運転許可ロボットＩＤ１４７が初期値か否かに応じて変更する。このことによって、操作者が操作対象として認識しているロボットが、実際の制御対象のロボットであるか否かを操作者に対して知らせる。
【０１３１】
この後、モータ運転許可承認メッセージにより、コントローラ２０から運転許可が得られていれば（ロボット個体別ＩＤ１８３が初期値でない場合）、モータ運転スイッチ５７を操作者がオン操作すると、この操作に基づく指示がＣＰＵ１１から無線ＬＡＮを介してコントローラ２０に通知される。そして、コントローラ２０の制御によりロボットＲのロボットアームの図示しないモータに対して電力供給がされる。
【０１３２】
さて、第７実施形態によれば、以下のような特徴がある。
（１）  第７実施形態のロボット制御システム３０では、ロボットＲには、ロボット個体別ＩＤが表示されている。又、ティーチペンダント１０（可搬式操作部）には、ロボット個体別ＩＤを入力するキーボード１６（入力手段）と、キーボード１６により入力されたロボット個体別ＩＤを無線ＬＡＮに出力するＣＰＵ１１を備える。又、コントローラ２０は、送信されたロボット個体別ＩＤが、該コントローラ２０が制御するロボットのロボット個体別ＩＤ（識別情報）と一致する場合に、該ロボットを駆動する駆動源の電力供給をモータ運転許可承認メッセージにて許可するようにした。
【０１３３】
すなわち、操作者が入力したロボット個体別ＩＤに該当するロボットが、当該コントローラ２０に接続されている場合、モータ運転許可ロボットＩＤ１４７には、初期値ＩＤ以外のロボット個体別ＩＤが保存される。又、操作者が入力したロボット個体別ＩＤに対応するロボットが、当該コントローラ２０に接続されていない場合、モータ運転許可ロボットＩＤ１４７には、初期値ＩＤが保持されるようにした。
【０１３４】
したがって、ティーチペンダント１０のＣＰＵ１１は、モータ運転許可ロボットＩＤ１４７に保存された内容から、操作者が操作対象として認識しているロボットが、実際の制御対象のロボットであるか否かを知ることができる。
【０１３５】
（２）  又、第７実施形態では、コントローラ２０のＣＰＵ２１は、操作許可ＴＰＩＤ２４８に保存された内容に基づいて接続されたロボットを操作対象として正しく認識している操作者が把持しているティーチペンダント１０を特定することができる。
【０１３６】
（３）  第７実施形態では、コントローラ２０は、ティーチペンダント１０から送信されたロボット個体別ＩＤが、コントローラ２０が制御するロボットの識別情報と一致するか否かを判別し、前記ロボット個体別ＩＤを送信したティーチペンダント１０に対してその判別結果を送信するようにした。そして、ティーチペンダント１０には、該判別結果を表示する液晶ディスプレイ１７（判別結果表示手段）を備えるようにした。
【０１３７】
この結果、第７実施形態では、ティーチペンダント１０から送信されたロボット個体別ＩＤがコントローラ２０が制御するロボットのロボット個体別ＩＤ（識別情報）と一致するか否かの判別結果が、液晶ディスプレイ１７により表示されるため、操作者は、その判別結果を容易に知ることができる。この結果、操作者は前記判別結果の表示によってさらに、操作者が意図していないロボットを動作させてしまうことを事前に回避することが可能となる。
【０１３８】
（４）  第７実施形態では、以上の１）〜４）により、操作者が操作対象として認識しているロボットと、操作者の操作によって実際に動作するロボットが一致している場合に限り、ロボットのロボットアームを駆動するモータへの動力の供給が可能になり、操作者が意図していないロボットを動作させてしまうことを、事前に回避することが可能となる。
【０１３９】
（第８実施形態）
次に第８実施形態を図１６〜２１を参照して説明する。
第８実施形態のロボット制御システム３０のハード構成は、第７実施形態のロボット制御システム３０のハード構成に対して、第４実施形態と同様の入出力ポート５３、点灯回路５４、接点５４ａ及び表示灯５５Ａがコントローラ２０に付加された構成であることが異なっている。表示灯５５Ａはコントローラ２０が制御するロボットＲに付設されているとともに、第４実施形態の接続先確認表示灯５５と同様に接点５４ａのオンオフ作動により、点灯消灯が可能である。
【０１４０】
（第８実施形態の作用）
さて、上記のように構成されたロボット制御システム３０の作用を説明する。
１）  ティーチペンダント１０によるコントローラ２０へのモータ運転許可の通知
ティーチペンダント１０のＣＰＵ１１は、図示しないタイマの同期信号によって所定の制御周期毎（例えば、０．１sec毎）に、すなわち、定期的にＲＯＭ１２に格納されたスイッチ監視処理プログラム１２６Ａを実行する。
【０１４１】
そして、操作者が、ティーチペンダント１０のモータ運転許可スイッチ５６を押すと、ＣＰＵ１１は、スイッチ監視処理プログラム１２６Ａに従いＲＯＭ１２に格納された第１モータ運転許可管理処理プログラム１２７Ａ１を起動する（図１７参照）。そして、ＣＰＵ１１は、各コントローラ２０に対して、無線ＬＡＮを介して「点灯要求」を行ない（Ｓ６０）、操作者に対しＩＤの入力を促す旨の表示を液晶ディスプレイ１７にて行うとともに、点滅パターン入力がキーボード１６により行われたか否かを待つ（Ｓ６１）。
【０１４２】
一方、各コントローラ２０に対する「点灯要求」をコントローラ２０のＣＰＵ２１が無線ＬＡＮを介して受信すると、該ＣＰＵ２１はＲＯＭ２２に格納された表示灯制御処理プログラム２２５を起動する。そして、ＣＰＵ２１は表示灯制御処理プログラム２２５に従って予めハードディスク２４に認証１Ｄ２４７として登録されているロボット個体別ＩＤを認証用点滅パターンに変換し、その変換結果に従って接点５４ａのオンオフ制御を行うことによりロボットに設置された表示灯５５Ａを点滅させる。このロボット個体別ＩＤは、このコントローラ２０に接続された制御対象のロボットを識別するためにロボット毎に付与された固有のＩＤである。
【０１４３】
前記ロボット個体別ＩＤを認証用点滅パターンに変換する具体例が、図１９（ａ）〜（ｃ）に１サイクル分それぞれ示されている。図１９（ａ）〜（ｃ）の例では、ＣＰＵ２１は予め１６ビットの１６進数で付与されたロボット個体別ＩＤを、一旦、２進数に変換し、次に、２進数表記の"１"を表示灯の点灯指令、２進数表記の"０"を表示灯の消灯指令に変換している。
【０１４４】
図１９（ａ）の例では、ロボット個体別ＩＤ（１６進数表記で"ＡＡ００"）が"１０１０１０１０００００００００"の２進数に変換される。そして、この２進数表記されたものが１サイクル分の認証用点滅パターンとして、左からの順で２進数表記の"１"に対応して表示灯５５Ａが一定時間ｔ１で点灯され、２進数表記の"０"に対応して一定時間ｔ２（＝ｔ１）で消灯される。この一定時間ｔ１，ｔ２とは、人間の目で点灯消灯が十分に観察できる時間幅である。図１９（ｂ）の例では、ロボット個体別ＩＤ（１６進数表記で"Ｆ５００"）が"１１１１０１０１００００００００"の２進数に変換され、この２進数表記されたものが認証用点滅パターンとなる。図１９（ｃ）の例では、ロボット個体別ＩＤ（１６進数表記で"Ｄ５８０"）が"１１０１０１０１１０００００００"の２進数に変換され、この２進数表記されたものが認証用点滅パターンとなる。
【０１４５】
これらの例に示すように、本実施形態では、１サイクルの後半部分では、長い消灯時間があるため、操作者はこの長い消灯時間後に始まる最初の点滅から、認証用点滅パターンの開始点を知ることができる。これらの１サイクル分の認証用点滅パターンがどのロボット個体別ＩＤであるかを操作者は予め学習しておいたり、或いは、このパターンと対応するロボット個体別ＩＤを記載したパターン表（図示しない）を操作者が見ることにより、ロボット個体別ＩＤをキーボード操作によりティーチペンダント１０に入力することができる。
【０１４６】
上記のようにして、操作者は、ロボットＲの本体部に明記されているロボット個体別ＩＤを目視にて確認し、ティーチペンダント１０のキーボード操作にて、該ロボット個体別ＩＤを入力する。
【０１４７】
操作者がロボット個体別ＩＤの入力操作を完了すると、ＣＰＵ１１は入力された結果を数値化する（Ｓ６２）。この数値化されたものを以下、入力パターンという。操作者が入力した結果を数値化する具体例としては、まず、ＣＰＵ１１はティーチペンダント１０の任意のキーの押下状態を一定周期毎に監視し、任意のキーが押されている場合を"１"、同キーが離されている状態を"０"としてＲＡＭ１３に記録し、次に記録された"１"と"０"を２進数とみなして数値化する方法がある。
【０１４８】
次に、ティーチペンダント１０のＣＰＵ１１は、接続先のコントローラ２０に対して、モータ運転許可要求メッセージを通知する（Ｓ６３）。図２０に示すようにこのモータ運転許可要求メッセージの構成は、認証ＩＤ以外は第７実施形態と同様である。本実施形態の認証ＩＤ１４９Ａは、操作者がキー入力した入力操作を、Ｓ６２において数値化された入力パターンである。
【０１４９】
２）  コントローラによる入力パターンの認証
コントローラ２０のＣＰＵ２１はティーチペンダント１０からモータ運転許可要求メッセージを無線ＬＡＮを介して受信すると、該メッセージ内の送信元のＴＰＩＤ１４１をハードディスク２４に接続先ＴＰＩＤ２４６として格納するとともにＲＯＭ２２に格納されたＩＤ認証処理プログラム２２３Ａを起動する。
【０１５０】
図１８はＩＤ認証処理プログラム２２３Ａのフローチャートである。
ＣＰＵ２１はハードディスク２４から認証ＩＤ２４７を読み出す（Ｓ５０）。この認証ＩＤ２４７は、予め当該コントローラ２０に接続されているロボットＲに付与されたロボット個体別ＩＤである。
【０１５１】
そして、ＣＰＵ２１はモータ運転許可要求メッセージに含まれる認証ＩＤ１４９Ａ（入力パターン）とハードディスク２４から読み出した認証ＩＤ２４７が一致、すなわち、両ロボット個体別ＩＤが一致するか否かを判断する（Ｓ５１Ａ）。
【０１５２】
ＣＰＵ２１は認証ＩＤ１４９Ａと認証ＩＤ２４７が一致したことを確認した場合（Ｓ５１Ａにおいて「ＹＥＳ」の判定のとき）は、当該モータ運転許可要求メッセージに含まれる送信元のＴＰＩＤ１４１を、ハードディスク２４に操作許可ＴＰＩＤ２４８として保存する（Ｓ５２）。
【０１５３】
なお、操作許可ＴＰＩＤ２４８の初期値は、ロボットが存在しないことを意味する初期値ＩＤ（例：ＦＦＦＦ）が設定されている。そして、モータ運転許可要求メッセージに含まれる認証ＩＤ１４９Ａと、認証ＩＤ２４７とが一致しない場合（Ｓ５１Ａにおいて「ＮＯ」の判定のとき）は、操作許可ＴＰＩＤ２４８には、前記初期値ＩＤが保持される（Ｓ５６）。
【０１５４】
３）  コントローラ２０によるティーチペンダント１０へのモータ運転許可承認メッセージの通知
そして、ＣＰＵ２１は、認証ＩＤ１４９Ａと認証ＩＤ２４７とが一致している場合、モータ運転許可要求メッセージを送信したティーチペンダント１０に通知するために図２１に示すようにモータ運転許可承認メッセージを作成する（Ｓ５３Ａ）。
【０１５５】
具体的にはＣＰＵ２１はハードディスク２４内のコントローラＩＤ２４１、接続先ＴＰＩＤ２４６、及び認証ＩＤ２４７を読み込みしてそれぞれを送信元のコントローラＩＤ、送信先ＴＰＩＤ１８２、入力パターン２５０とし、これらにメッセージＩＤ１８１を付加してモータ運転許可承認メッセージとする。ここで作成されたモータ運転許可承認メッセージは、入力パターン２５０が認証ＩＤ２４７のロボット個体別ＩＤとなっているため、操作者が入力したロボット個体別ＩＤに対応したロボットが有る旨のメッセージとなる。
【０１５６】
一方、上記２）において、操作者が入力したロボット個体別ＩＤである認証ＩＤ１４９Ａと認証ＩＤ２４７とが一致していない場合、ＣＰＵ２１は、モータ運転許可要求メッセージを送信したティーチペンダント１０に通知するために図２１に示すようにモータ運転許可承認メッセージを作成する（Ｓ５７Ａ）。
【０１５７】
具体的には、ＣＰＵ２１はハードディスク２４内のコントローラＩＤ２４１、及び接続先ＴＰＩＤ２４６を読み込みしてそれぞれを送信元のコントローラＩＤ、送信先ＴＰＩＤ１８２とする。さらに、ＣＰＵ２１は、入力パターン２５０には、ロボットが存在しないことを意味する初期値ＩＤ（例：ＦＦＦＦ）を設定し、これらのデータにメッセージＩＤ１８１を付加してモータ運転許可承認メッセージとする。ここで作成されたモータ運転許可承認メッセージは、入力パターン２５０に初期値が設定されているため、操作者が入力したロボット個体別ＩＤに対応したロボットが無い旨のメッセージとなる。
【０１５８】
そして、ＣＰＵ２１はＳ５３Ａ又はＳ５７Ａで作成したモータ運転許可承認メッセージを無線ＬＡＮを介してティーチペンダント１０に通知する。
４）  ティーチペンダント１０及びコントローラ２０における当該ロボットのモータ運転の許可
コントローラ２０のＣＰＵ２１はＳ５５では第７実施形態のＳ５５（図１２参照）と同様の処理を行うため説明を省略する。
【０１５９】
一方、ティーチペンダント１０は、コントローラ２０からモータ運転許可承認メッセージを受信すると、ＲＯＭ１２に格納した第２モータ運転許可管理処理プログラム１２７Ｂ１を起動する。そして、ＣＰＵ１１はモータ運転許可承認メッセージに含まれている入力パターン２５０をハードディスク１４にモータ運転許可ロボットＩＤ１４７として保存する。
【０１６０】
又、ＣＰＵ１１はこの処理とは別に、受信したモータ運転許可承認メッセージに基づき操作者が入力したロボット個体別ＩＤに対応するロボットが当該コントローラ２０に接続されているか否かの判定結果を操作者に知らせるための処理を行う。この処理は、第７実施形態と同様であるため、説明を省略する。
【０１６１】
そして、モータ運転許可承認メッセージにより、コントローラ２０から運転許可が得られていれば（入力パターン２５０が初期値でない場合）、モータ運転スイッチ５７を操作者がオン操作すると、この操作に基づく指示がＣＰＵ１１から無線ＬＡＮを介してコントローラ２０に通知される。そして、コントローラ２０の制御によりロボットＲのロボットアームの図示しないモータに対して電力供給がされる。
【０１６２】
さて、第８実施形態によれば、以下のような特徴がある。
（１）  第８実施形態では、ロボットＲには、該ロボット固有の認証用点滅パターン（点滅パターン）でコントローラ２０により点滅制御される表示灯５５Ａが備えられている。そして、ティーチペンダント１０（可搬式操作部）には、前記点滅パターンを入力可能なキーボード１６（入力手段）と、キーボード１６により入力された点滅パターンを無線ＬＡＮに出力するＣＰＵ１１（出力手段）を備える。一方、コントローラ２０は、前記送信された点滅パターンが、コントローラ２０が制御する表示灯５５Ａの点滅パターンと一致する場合に、ロボットＲを駆動するモータ（駆動源）の電力供給を許可するようにした。このように構成しているため、第８実施形態は請求項７の（１）と同様の効果を奏する。
【０１６３】
（２）  第８実施形態も第７実施形態と同様に第７実施形態の（２）〜（４）の作用効果を実現することができる。
（第９実施形態）
次に、第９実施形態を図２２及び図２３を参照して説明する。第９実施形態は、第７実施形態を変形したものである。なお、第７実施形態と同一又は相当する構成については、同一符号を付す。第９実施形態では、図２２に示すように１台のコントローラ２０Ａに、複数台のロボットＲ１ａ〜Ｒ１ｃが接続されていることと、ハードディスク２４内に第７実施形態の認証ＩＤ２４７の代わりに認証ＩＤリスト２４９が格納されているところが第７実施形態と異なっている。なお、図２２において、コントローラ２０Ａ以外のコントローラ２０Ｂ等のロボットについては説明の便宜上、図示されていない。又、ロボットＲ１ａ〜Ｒ１ｃの本体部に対してそれぞれロボット個体別ＩＤが明記されている。
【０１６４】
図２３に示すように認証ＩＤリスト２４９には、当該コントローラ２０Ａに接続されているロボットＲ１ａ〜Ｒ１ｃ毎に、認証ＩＤ２４７Ａと操作許可ＴＰＩＤ２４８Ａを登録することができる。認証ＩＤリスト２４９の認証ＩＤ２４７Ａには、第７実施形態と同様に、あらかじめ、当該コントローラ２０Ａに接続されているロボットに付与されたロボット個体別ＩＤが登録されている。又、認証ＩＤリスト２４９の操作許可ＴＰＩＤ２４８Ａには、初期値として、ロボットが存在しないことを意味する初期値ＩＤ（例：−１）が設定されている。
【０１６５】
（第９実施形態の作用）
第９実施形態は、第７実施形態と一部が異なるだけであるため、異なる作用を中心に説明する。
【０１６６】
ティーチペンダント１０から第７実施形態と同様にモータ運転許可要求メッセージを受信したコントローラ２０Ａは、ＩＤ認証処理プログラム２２３を起動する。そして、ＣＰＵ２１は認証ＩＤリスト２４９を検索し、モータ運転許可要求メッセージ中の認証ＩＤ１４９（図１３参照）が、認証ＩＤリスト２４９内に存在することが確認できた場合、該メッセージ中の送信元のＴＰＩＤ１４１を認証ＩＤリスト２４９内の該当する操作許可ＴＰＩＤ２４８Ａに登録保存する。
【０１６７】
さて、第９実施形態によれば、以下のような特徴がある。
第９実施形態では、このように、認証ＩＤリスト２４９を導入したため、１台のコントローラ２０Ａに複数台のロボットＲｂ１〜Ｒｂ３が接続される接続形態においても、ティーチペンダント１０、コントローラ、ロボットの接続確認をロボット毎に認証することができるため、操作者が操作対象を誤ることを回避することができる。
【０１６８】
（第１０実施形態）
次に、第１０実施形態を図２４、図２５、図２７〜３０を参照して説明する。
第１０実施形態のロボット制御システム３０のハード構成は、第７実施形態（図１０参照）の構成中、モータ運転許可スイッチ５６及びモータ運転スイッチ５７の図示が省略されているところが異なっている。本実施形態のＣＰＵ２１は認証手段に相当する。
【０１６９】
（第１０実施形態の作用）
さて、上記のように構成されたロボット制御システム３０の作用を説明する。本実施形態では、コントローラ２０とティーチペンダント１０との通信が無線ＬＡＮを経由して行われる。そして、一台のコントローラ２０との通信が可能な複数のティーチペンダント１０等がネットワーク内に存在する環境において、ティーチペンダント１０等とコントローラ２０との間で、一対一の接続関係を確立するために、以下の４つのステップが実行される。
【０１７０】
１）  ティーチペンダント１０によるコントローラ２０への接続認証要求メッセージの通知
第１０実施形態では、図示しないタイマの同期信号によって所定の制御周期毎（例えば、０．１sec毎）に、すなわち、定期的にＲＯＭ１２に格納された図示しないスイッチ監視処理プログラムがＣＰＵ１１により実行されている。このようにコントローラ２０から操作権限を取得していないティーチペンダント１０では、コントローラ接続処理が、操作者からの接続要求待ちの状態にある。具体的には、ティーチペンダント１０は操作者からのキーボード入力を待つ状態にある。図２７は本実施形態のスイッチ監視処理プログラムのフローチャートである。この状態では、ＣＰＵ１１がスイッチ監視処理プログラムを実行することにり、操作者に対しユーザＩＤ、パスワード、コントローラＩＤの入力を促す旨の表示が図２９に示すように液晶ディスプレイ１７にて行われる。
【０１７１】
そして、操作者Ｈが任意のコントローラを操作したい場合、操作者Ｈはティーチペンダント１０の液晶ディスプレイ１７に表示する内容にしたがって、操作を行いたいコントローラに付与されているコントローラＩＤ、操作者のユーザＩＤ、操作者Ｈのパスワードをキーボード１６の操作によって入力する（Ｓ７０）。操作者Ｈの入力操作が完了すると、ＣＰＵ１１はコントローラ２０に対して、無線ＬＡＮを介して接続認証要求メッセージを通知する（Ｓ７１）。この接続認証要求メッセージには、図３０（ａ）に示すように該メッセージを識別するためのメッセージＩＤ１８４、送信元のＴＰＩＤ１４１、ユーザＩＤ１９０、及びパスワード１９１が含まれている。
【０１７２】
なお、接続認証要求メッセージの送信元のＴＰＩＤ１４１には、操作者がキーボード操作を行ったティーチペンダント１０のＭＡＣアドレス（Media Access Control address）１３０が格納されている。又、接続認証要求メッセージの送信元のユーザＩＤ１９０、及びパスワード１９１には操作者Ｈが入力した文字列情報をＡＳＣＩＩコードに変換したものが、それぞれ格納されている。ＭＡＣアドレス１３０は、ティーチペンダント１０のＲＯＭ１２に格納され、前記メッセージ作成の際に読み出される。なお、ＭＡＣアドレス１３０に代えて、ティーチペンダント１０に固有のアドレスがＲＯＭ１２に格納され、このアドレスが送信元のＴＰＩＤ１４１として使用されるようにしてもよい。このようにティーチペンダント１０に固有のアドレスにより、ティーチペンダント１０を一意的に特定することができる。
【０１７３】
２）  コントローラ２０による接続要求元のティーチペンダント１０の認証
コントローラ２０のＣＰＵ２１は、ティーチペンダント１０から接続認証要求メッセージを無線ＬＡＮを介して受信すると、ＲＯＭ２２に格納されたＴＰＩＤ認証処理プログラム２２６を起動し（図２８参照）、ハードディスク２４内にある操作許可ＴＰＩＤ２４８に格納されている情報を取得する（Ｓ８０）。初期状態、すなわち、当該コントローラ２０を操作することができる権限を付与されたティーチペンダントが存在しない状態においては、操作許可ＴＰＩＤ２４８には、初期値（例：０）が格納されている。すなわち、ＣＰＵ２１によるＴＰＩＤ認証処理は、操作許可ＴＰＩＤ２４８に格納されている情報から、自身を操作する権限を付与されたティーチペンダントの有無を認識することができる（Ｓ８１）。
【０１７４】
ＣＰＵ２１は自身を操作することができる権限が付与されたティーチペンダントが存在しないことを認識すると（Ｓ８１の判定が「ＹＥＳ」）、前記接続認証要求メッセージの送信元のＴＰＩＤ１４１に格納されているＭＡＣアドレス１３０をハードディスク２４に操作許可ＴＰＩＤ２４８として格納する。次に、ＣＰＵ２１は、接続認証要求メッセージのユーザＩＤ１９０、及びパスワード１９１を、ハードディスク２４に認証ユーザＩＤ２５２及び認証パスワード２５３として格納する（Ｓ８３）。
【０１７５】
３）  コントローラ２０による接続元のティーチペンダント１０への接続認証承認メッセージの通知
次に、ＣＰＵ２１は、Ｓ８４又はＳ８６において、図３０（ｂ）に示すように接続認証承認メッセージの作成を行う。接続認証承認メッセージには、接続認証承認メッセージを識別するためのメッセージＩＤ１８５と、送信元のコントローラＩＤが含まれている。この場合、コントローラ接続認証済みのティーチペンダントが存在しない場合（Ｓ８１の判定が「ＹＥＳ」）、Ｓ８４においては、ＣＰＵ２１は、接続認証承認メッセージの送信元コントローラＩＤ１８６として当該コントローラのＭＡＣアドレス２２８を格納する。
【０１７６】
これに対し、Ｓ８１において、既にコントローラ接続認証済みのＴＰが存在した場合（Ｓ８１の判定が「ＮＯ」）、Ｓ８６においては、ＣＰＵ２１は、接続認証承認メッセージの送信元コントローラＩＤ１８６として初期値（例：０）を格納する。そして、ＣＰＵ２１は、接続要求元のティーチペンダント１０の認証結果を、接続認証承認メッセージとして、接続要求元のティーチペンダント１０に通知する（Ｓ８５）。
【０１７７】
４）  ティーチペンダント１０によるコントローラ２０からの認証結果の格納
ティーチペンダント１０のＣＰＵ１１は、ＲＯＭ１２に格納された送受信処理プログラムをその時々に実行処理するとともに、コントローラ２０から接続認証承認メッセージを受信すると、ＲＯＭ１２に格納されたコントローラ接続処理プログラム１２８を起動する（図３１参照）。ＣＰＵ１１は、接続認証承認メッセージの送信元コントローラＩＤ１８６に格納されている内容を、ハードディスク１４に接続先コントローラＩＤ１４８として格納する（Ｓ９０）。次に、ＣＰＵ１１は、接続先コントローラＩＤ１４８に格納した内容を読み込み、接続認証の結果を検査する（Ｓ９１）。
【０１７８】
さて、本実施形態では、ティーチペンダント１０とコントローラ２０のそれぞれのＲＯＭ１２，２２には送受信処理プログラム１２９，２２７が格納されている。そして、該プログラムが実行されることにより、無線ＬＡＮを経由してティーチペンダンが発行する各種通信メッセージ（接続認証要求メッセージも含む）や、コントローラ２０が発行する各種通信メッセージが送受信される。そして、これらのメッセージ中の送信元のＴＰＩＤ１４１や送信元コントローラＩＤ１８６に自身のＭＡＣアドレスがそれぞれ格納される。
【０１７９】
そして、コントローラ２０のＣＰＵ２１は、送受信処理プログラム２２７を実行することにより、接続認証要求メッセージ以外の通信メッセージに対し該通信メッセージに含まれる送信元のＴＰＩＤ１４１（ＭＡＣアドレス）と前記操作許可ＴＰＩＤ２４８（ＭＡＣアドレス）とが一致しているか否かの判断を行う。ここで、操作許可ＴＰＩＤ２４８（ＭＡＣアドレス）は、認証基礎データに相当する。又、通信メッセージに含まれる送信元のＴＰＩＤ１４１（ＭＡＣアドレス）は認証対象データに相当する。この場合、ＣＰＵ２１は、ＭＡＣアドレス同士が一致している場合にのみ、すなわち、ハードディスク２４に操作許可ＴＰＩＤ２４８として格納されているＭＡＣアドレス１３０を持つティーチペンダント１０からの通信についてのみ応答を行う。受信した通信メッセージがロボットを操作するためのものである場合には、この通信メッセージによって、コントローラ２０がロボットＲを駆動制御することになる。
【０１８０】
なお、例外的に接続認証要求メッセージをコントローラ２０が受信したときには、ＣＰＵ２１は、前述したようにＴＰＩＤ認証処理プログラム２２６を実行処理することにより、該接続認証要求メッセージを送信したティーチペンダントに対して交信を行う。
【０１８１】
そして、ティーチペンダント１０のＣＰＵ１１は、送受信処理プログラム１２９を実行することによりコントローラ２０との接続関係が確立している場合に限って、操作者Ｈの操作を、接続先のコントローラ２０に通知するようにしている。又、ＣＰＵ１１は送受信処理プログラム１２９により、同様に、接続先のコントローラ２０から受信した通信だけを受信し、ネットワーク上に存在する別コントローラからの通信に対しては、応答しないように、送受信データに対して、フィルタリングを行う。
【０１８２】
又、ＣＰＵ１１は、コントローラ接続処理プログラム１２８を実行することにより、接続先コントローラＩＤ１４８に格納されている内容を参照して、液晶ディスプレイ１７に接続認証の結果を出力し、接続要求を行った操作者Ｈに、接続要求の結果を知らしめる。
【０１８３】
さて、第１０実施形態によれば、以下のような特徴がある。
（１）  ティーチペンダント１０からの接続認証が承認されている場合、接続認証承認メッセージの送信元コントローラＩＤ１８６には、接続先コントローラのＭＡＣアドレス２２８が格納され、接続認証が却下されている場合、接続認証承認メッセージの送信元コントローラＩＤ１８６には、初期値（例：０）が格納される。すなわち、ティーチペンダント１０は、ハードディスク１４にある接続先コントローラＩＤ１４８の内容から、接続認証の結果を知ることができる。
【０１８４】
（２）  以上のように、ティーチペンダント１０とコントローラが接続されているネットワーク内に、該コントローラとの通信が可能なティーチペンダントが複数ある環境においても、ティーチペンダントとコントローラとの間で、一対一の接続関係を確立することが可能となる。又、任意のティーチペンダントと接続関係を確立したコントローラに対して、新たに別のティーチペンダントから接続関係を確立することができないため、ネットワークに接続されているティーチペンダントからの指示によって、ロボットが意図しない動作を行うことが回避できる。
【０１８５】
（３）  又、第１０実施形態では操作者Ｈのキーボード入力によってユーザＩＤとパスワードが入力され、接続先のコントローラに対して接続認証要求メッセージ以外のメッセージを発行した際、該メッセージには、ＴＰＩＤ１４１、ユーザＩＤ１９０、パスワード１９１が含まれる。そして、該コントローラ２０のＣＰＵ２１は認証手段として該メッセージに含まれるＴＰＩＤ１４１（ＭＡＣアドレス）に基づいてティーチペンダント１０（可搬式操作部）の認証を行うようにしている。
【０１８６】
この結果、該ティーチペンダント１０のＴＰＩＤ１４１を格納して接続先コントローラが認証した唯一のティーチペンダント１０に対して、同コントローラ２０を操作する権限を与えることが可能となる。
【０１８７】
そして、コントローラ２０が接続されたネットワーク上に同コントローラ２０と通信可能なティーチペンダントが複数存在する環境においても、コントローラを操作することができるティーチペンダントを一台に限定することができる。この結果、操作者Ｈが操作対象として認識しているロボットが、別の操作者の操作によって動作してしまうことを、事前に回避することが可能となる。
【０１８８】
具体例を示すと、図２５に示すように操作者ＡがティーチペンダントＴＰＡを操作して、コントローラＣＡで制御されるロボットＲＡを動作させている環境を考える。コントローラＣＡ及びティーチペンダントＴＰＡと同じネットワークに接続されているティーチペンダントＴＰＢ，ＴＰＣを持つ操作者Ｂ，Ｃからの指示によって、ロボットＲＡが動作してしまうと、ロボットＲＡは、操作者Ａの意図とは異なる動作を行うことになり、大変、危険な状態となってしまう。第１０実施形態によれば、このような状態となることが回避できる。
【０１８９】
（第１１実施形態）
次に第１１実施形態を図２４、図２６、図３０（ｃ），（ｄ）、図３２〜３４を参照して説明する。第１１実施形態のロボット制御システム３０のハード構成は第１０実施形態と同一であるため、第１１実施形態のハード構成については第１０実施形態と同一符号を付して構成の重複説明は省略する。本実施形態では、ハードディスク２４は記憶手段に相当する。
【０１９０】
（第１１実施形態の作用）
第１１実施形態では、以下の処理が実行されることによって、ティーチペンダント１０とコントローラ２０との間に確立した接続関係を、安全に破棄することができる。以下で、コントローラ２０を代表してコントローラ２０Ａとティーチペンダント１０との接続関係を破棄する場合について説明する。
【０１９１】
第１１実施形態では、第１０実施形態によって、既にティーチペンダント１０とコントローラ２０Ａとの間に、一対一の接続関係が確立した状態から説明を行う。より具体的には、ティーチペンダント１０およびコントローラ２０Ａは、次の状態にある。
【０１９２】
まず、ティーチペンダント１０のハードディスク１４に格納された接続先コントローラＩＤ１４８は、接続先のコントローラ２０ＡのＭＡＣアドレス２２８にされている。又、コントローラ２０Ａのハードディスク２４に格納された操作許可ＴＰＩＤ２４８は、該コントローラ２０Ａを操作する権限が付与されたティーチペンダント１０のＭＡＣアドレス１３０にされている。さらに、コントローラ２０Ａのハードディスク２４に格納された認証ユーザＩＤ２５２及び認証パスワード２５３には、当該接続関係を確立した際に、操作者Ｈが入力した認証ユーザＩＤ及びパスワードが入力されている。
【０１９３】
１）  ティーチペンダント１０によるコントローラ２０Ａへの切断要求メッセージの通知
操作者Ｈがティーチペンダント１０のキーボード操作にて、現在、操作しているコントローラとの接続関係の破棄を要求すると、ＣＰＵ１１はコントローラ接続処理プログラム１２８を起動し（図３２参照）、液晶ディスプレイ１７にユーザＩＤとパスワードを入力する画面を表示して操作者ＨにユーザＩＤとパスワードを入力するように促す（Ｓ１００）。
【０１９４】
操作者Ｈの入力操作が完了すると（Ｓ１０１）、ＣＰＵ１１は、切断要求メッセージを作成し、コントローラ２０Ａに対して該切断要求メッセージを無線ＬＡＮを介してコントローラ２０Ａに通知する（Ｓ１０２）。
【０１９５】
この切断要求メッセージには、図３０（ｃ）に示すように該切断要求メッセージを識別するためのメッセージＩＤ１８７、送信元のＴＰＩＤ１４１、ユーザＩＤ１９０、及び、パスワード１９１が含まれている。切断要求メッセージの送信元のＴＰＩＤ１４１は、操作者Ｈがキーボード操作を行ったティーチペンダント１０のＭＡＣアドレス１３０が、又、ユーザＩＤ１９０、及びパスワード１９１には、操作者Ｈがキーボード操作によって入力した文字列情報をＡＳＣＩＩコードに変換したものが、それぞれ格納されている。
【０１９６】
２）  コントローラ２０Ａによる切断要求元のティーチペンダント１０の認証
コントローラ２０ＡのＣＰＵ２１は、ＲＯＭ２２に格納された送受信処理プログラム２２７をその時々に実行し、ティーチペンダント１０から前記切断要求メッセージを受信すると、ＴＰＩＤ認証処理プログラム２２６を起動する（図３３参照）。そして、ＣＰＵ２１は、ハードディスク２４に格納されている認証ユーザＩＤ２５２、及び認証パスワード２５３と、前記切断要求メッセージのユーザＩＤ１９０、及び、パスワード１９１とをそれぞれ検査照合する（Ｓ１１０、Ｓ１１１）。
【０１９７】
そして、ＣＰＵ２１は、全てが一致していることが確認できた場合（Ｓ１１１の判定が「ＹＥＳ」）は、ティーチペンダント１０からの切断要求を承認（Ｓ１１２）する。この場合は、ＣＰＵ２１は、ハードディスク２４内にある認証ユーザＩＤ２５２、認証パスワード２５３、及び操作許可ＴＰＩＤ２４８を、それぞれ、初期値（例：０）に更新する。
【０１９８】
一方、ＣＰＵ２１は、認証ユーザＩＤ２５２、及び認証パスワード２５３と、前記切断要求メッセージのユーザＩＤ１９０、及びパスワード１９１のいずれかのデータが不一致であることが確認できた場合（Ｓ１１１の判定が「ＮＯ」）は、ティーチペンダント１０からの切断要求を却下する（Ｓ１１５）。
【０１９９】
３）  コントローラ２０Ａによるティーチペンダント１０への切断承認メッセージの通知
次に、ＣＰＵ２１は、Ｓ１１２において、切断要求を承認した場合や、Ｓ１１５において、切断要求を却下した場合、それぞれ、切断承認メッセージの作成を行う。すなわち、Ｓ１１２において、ＣＰＵ２１が切断要求を承認した場合には、Ｓ１１３において、ＣＰＵ２１は、切断承認メッセージを識別するためのメッセージＩＤ１８８と、当該コントローラ２０ＡのＭＡＣアドレス２２８を格納した送信元コントローラＩＤ１８６を含む切断承認メッセージを作成する。
【０２００】
一方、Ｓ１１５において、ＣＰＵ２１が切断要求を却下した場合、Ｓ１１６において、ＣＰＵ２１は、切断承認メッセージを識別するためのメッセージＩＤ１８８と、初期値（例：０）を格納した送信元コントローラＩＤ１８６を含む切断承認メッセージを作成する。
【０２０１】
上記のように切断承認メッセージに含まれる送信元コントローラＩＤ１８６には、切断要求の承認結果が含まれている。
この後、Ｓ１１４において、ＣＰＵ２１は、切断要求の承認結果を含む切断承認メッセージとして、切断要求元のティーチペンダント１０に無線ＬＡＮを介して通知する。
【０２０２】
４）  ティーチペンダント１０によるコントローラ２０Ａからの切断承認結果の格納
ティーチペンダント１０のＣＰＵ１１は、ＲＯＭ１２に格納された送受信処理プログラム１２９をその時々に実行し、コントローラ２０Ａから切断承認メッセージを受信すると、コントローラ接続処理プログラム１２８を起動する（図３４参照）。ＣＰＵ１１は、切断承認メッセージの送信元コントローラＩＤ１８６に格納されている内容を検査する（Ｓ１２０，Ｓ１２１）。ここで、ティーチペンダント１０からの切断接要求が承認されている場合、切断承認メッセージの送信元コントローラＩＤ１８６には、接続先のコントローラ２０ＡのＭＡＣアドレス２２８が格納され、切断要求が却下されている場合、切断承認メッセージの送信元コントローラＩＤには、初期値（例：０）が格納されている。従って、ティーチペンダント１０のＣＰＵ１１は、切断承認メッセージの送信元コントローラＩＤ１８６の内容から、切断要求の承認結果を知ることができる。
【０２０３】
ティーチペンダント１０からの切断要求が承認された場合（Ｓ１２１で「ＹＥＳ」）、ＣＰＵ１１はハードディスク１４に格納されている接続先コントローラＩＤ１４８を初期値（例：０）に更新する（Ｓ１２２）。これに対して、ティーチペンダント１０からの切断要求が却下されている場合、ＣＰＵ１１は、ハードディスク１４に格納されている接続先コントローラＩＤ１４８に対して、何も行わない。そして、ＣＰＵ１１は、Ｓ１２３において、接続先コントローラＩＤ１４８に格納されている内容を参照して、液晶ディスプレイ１７に切断要求の結果を出力表示し（Ｓ１２４）、切断要求を行った操作者Ｈに、切断要求の結果を知らしめる。
【０２０４】
そして、この後、ＣＰＵ１１は、コントローラ２０Ａから切断要求が承認されると、再度、操作者Ｈからの接続要求待ちの状態に戻る。
さて、第１１実施形態によれば、以下のような特徴がある。
【０２０５】
第１１実施形態では、コントローラ２０は、該コントローラ２０Ａと既に接続関係にあるティーチペンダント１０（可搬式操作部）に関するユーザＩＤ（ユーザ識別情報）と、パスワードを記憶するハードディスク２４（記憶手段）を備える。
【０２０６】
そして、コントローラ２０Ａは、ティーチペンダント１０から受信した切断要求が、該切断要求とともに受信したユーザＩＤ（ユーザ識別情報）、及びパスワードが、ハードディスク２４に記憶されているユーザＩＤと、パスワードと一致する場合のみ、該切断要求に応ずるようにした。
【０２０７】
この結果、第１１実施形態では、ティーチペンダント１０とコントローラ２０間の現在の接続関係を切断する際、接続関係を確立した際に操作者Ｈが入力したユーザＩＤ、パスワードと同一のユーザＩＤ、パスワードが入力された場合のみ、接続関係を切断することが可能となる。
【０２０８】
この結果、接続関係を確立した操作者Ｈ以外の操作者によって、接続関係を切断することができなくなり、接続関係を確立した操作者が、意識的に接続関係を破棄しない限りは、別のティーチペンダントを操作する操作者によって、同コントローラを操作することが回避できるため、操作者Ｈの安全性を確保することが可能となる。
【０２０９】
具体例を図２６に示すと、操作者Ａが操作していたティーチペンダントＴＰＡに何らかの障害が発生し、接続関係が確立していたコントローラＣＡとの通信が中断した場合を考える。この場合、操作者Ｂ，Ｃが、正常に動作するティーチペンダントＴＰＢ，ＴＰＣを使用して、新たな接続関係を確立することが可能であれば、ティーチペンダントＴＰＡの修復作業中の操作者Ａの傍らで、操作者Ｂ，Ｃが操作するロボットＲＡが動作してしまう危険性がある。第１１実施形態ではこのような事態を防止することができる。
【０２１０】
（第１２実施形態）
次に第１２実施形態を図３５〜図３８を参照して説明する。
第１２実施形態のロボット制御システムは、複数のロボットＲ１〜Ｒ３のそれぞれを制御する複数のコントローラ２０Ａ〜２０Ｃと、可搬式操作部であるティーチペンダント１０とから構成されている。なお、図３５では説明の便宜上、ティーチペンダント１０と１つのコントローラ２０Ａのみを図示している。
【０２１１】
（１．  ティーチペンダント１０）
図３５に示すように可搬式操作部としてのティーチペンダント１０はＣＰＵ１１、ＲＯＭ１２、ＲＡＭ１３、ハードディスク１４、ＬＡＮＩ／Ｆ１５、キーボード１６（図３６参照）、液晶ディスプレイ１７（図３６参照）及び有線・無線変換器１８の各部を備えているとともに各部はバス１９を介して接続されている。
【０２１２】
又、ティーチペンダント１０には、タイマ５０及び各種の信号の入出力を行うための入出力ポート５１を備えている。タイマ５０は定期時刻ごとに同期信号を発生する。そして、該同期信号はティーチペンダント１０で実施される定期的な演算のタイミングとして使用される。
【０２１３】
ティーチペンダント１０のＲＯＭ１２には、ティーチペンダント１０からのロボットＲ１の操作やティーチペンダント１０との通信を実行するために、コントローラ接続処理プログラム１２８等の各種制御プログラムとその制御定数が格納される。ＲＡＭ１３は、ＣＰＵ１１のワーキングエリアとして用いられ、計算途中のデータが一時的に格納される。ハードディスク１４には、各種制御プログラムの実行変数等が格納される。ＬＡＮＩ／Ｆ１５はコントローラ２０との接続に使用される通信機である。有線・無線変換器１８は、ＬＡＮＩ／Ｆ１５を介して出力されたデータを無線で送信したり、コントローラ２０から無線送信されたデータを受信してＬＡＮＩ／Ｆ１５に該データを出力する。
【０２１４】
（２．  コントローラ２０Ａ）
コントローラ２０Ａ〜２０Ｃは同一構成のため、コントローラ２０Ａについて説明する。コントローラ２０Ａは、ＣＰＵ２１、ＲＯＭ２２、ＲＡＭ２３、ハードディスク２４、ＬＡＮＩ／Ｆ２５、タイマ２６、サーボドライバ２７及び有線・無線変換器２８の各部を備えているとともに各部はバス２９を介して接続されている。
【０２１５】
前記ＲＯＭ２２には、ＴＰ接続確認処理プログラム１３１、運転準備信号「開」処理プログラム１３２、運転準備信号「閉」処理プログラム１３３や、コントローラ２０Ａが制御対象とするロボットＲ１の動作制御を実行するための制御プログラム等の各種制御プログラムとその制御定数が格納される。
【０２１６】
ＲＡＭ２３は、ＣＰＵ２１のワーキングエリアとして用いられ、計算途中のデータが一時的に格納される。ハードディスク２４には、ロボットＲ１の作業が教示されたデータや、制御プログラムの実行条件、ならびに各種の制御変数が格納される。なお、ハードディスク２４に代えて、他の書換可能な記憶装置であってもよい。ＬＡＮＩ／Ｆ２５は、ティーチペンダント１０との接続に使用される通信機である。
【０２１７】
サーボドライバ２７は、ロボットＲ１の各関節を駆動する図示しないロボットモータに接続されるとともにマグネットスイッチＭＳを介して交流電源ＡＣからの電力供給を受け、該モータに通電させる電流を制御する。タイマ２６は、定期時刻ごとに同期信号を発生する。該同期信号は、サーボドライバ２７への指令値の更新タイミングに使用される。
【０２１８】
又、コントローラ２０Ａは、常開スイッチである運転準備ボタン５８ａにてオンオフされるスイッチ回路５８を有し、同スイッチ回路５８は、入出力ポート５３に接続されている。入出力ポート５３には、前記スイッチ回路５８が接続された運転準備信号制御ラダー部５９が設けられている。運転準備信号制御ラダー部５９は、運転準備ボタン５８ａのオンオフにより、運転準備信号制御を行うためのものである。
【０２１９】
又、コントローラ２０Ａは、常閉の非常停止スイッチ６１ａにてオンオフされるスイッチ回路６１を有し、同スイッチ回路６１は、入出力ポート５３に接続されている。入出力ポート５３には、スイッチ回路６１が接続されたマグネットスイッチ制御ラダー部６０が設けられている。マグネットスイッチ制御ラダー部６０（なお、図３５では、ＭＳ制御ラダー部と記載）は、非常停止スイッチ６１ａのオンオフに応じてマグネットスイッチ制御を行うためのものである。
【０２２０】
前記運転準備ボタン５８ａは、運転準備操作手段に相当し、マグネットスイッチ制御ラダー部６０は、指令手段に相当する。マグネットスイッチＭＳは、電力供給遮断手段に相当する。
【０２２１】
（第１２実施形態の作用）
さて、上記のように構成されたロボット制御システム３０において、ティーチペンダント１０がコントローラ２０のいずれかに接続する際の作用を説明する。第１２実施形態では、ティーチペンダント１０から接続先をサーチする際、下記の順序で行われる。
【０２２２】
１）  操作者によるティーチペンダントＴＰとコントローラの接続処理開始
ティーチペンダントＴＰの操作者が、ティーチペンダントＴＰの操作として、ティーチペンダントＴＰとコントローラとの接続処理を開始する。
【０２２３】
この接続処理としては、図３６に図示するように、１つのティーチペンダントＴＰが、複数のコントローラ２０Ａ〜２０Ｃから任意の１つを選択するケースがある。操作者は、ティーチペンダントＴＰの操作として、接続可能な複数のコントローラ２０Ａ〜２０Ｃの中から所望の接続先を１つ選択し、選択したコントローラに対して接続要求コマンドを通知する。接続要求コマンドは、ＬＡＮＩ／Ｆ１５を介してティーチペンダントＴＰからコントローラに通知される。
【０２２４】
以下では、説明の便宜上、所望の接続先をコントローラ２０Ａとする。
２）  コントローラ２０ＡのティーチペンダントＴＰ接続確認処理
コントローラ２０ＡのＣＰＵ２１は、ＬＡＮ Ｉ／Ｆ２８を介してティーチペンダントＴＰから接続要求コマンドを受信すると、ＲＯＭ２２のＴＰ接続確認処理プログラム１３１が実行される。そして、ＣＰＵ２１は、このプログラムに従ってコントローラ自身が現在、接続可能な状況かどうかを判断する。接続可能な状況の判断条件には以下のものがある。
【０２２５】
・現在、他のティーチペンダントＴＰと接続状態に無い。
・ティーチペンダントＴＰのモード(教示／再生)と、コントローラのモード(教示／再生)が一致している。このモードの一致は、ティーチペンダントＴＰから送信されるティーチペンダントＴＰのモード情報に基づいて判断される。
【０２２６】
３）  コントローラによる運転準備信号の「開」処理
ＣＰＵ２１は、現在、他のティーチペンダントＴＰと接続状態に無く、接続要求コマンドを発信したティーチペンダントＴＰと接続状態を確立可能と判断し、かつコントローラ２０Ａが教示モードである時には、運転準備信号「開」処理プログラム１３２に従って運転準備制御信号を「開」にする（図３７参照）。なお、図３７は、運転準備信号制御ラダー部５９及びマグネットスイッチ制御ラダー部６０が実行する制御ラダーを示すラダー図である。
【０２２７】
ＣＰＵ２１が、図３７において運転準備制御信号を「開」にすると、入出力ポート５３の運転準備信号制御ラダー部５９では、予めプログラミングされた運転準備信号制御ラダープログラムにより、運転準備信号も「開」となる。
【０２２８】
さらに、運転準備信号が「開」になると、予めプログラミングされたＭＳ制御ラダープログラムにより、マグネットスイッチＭＳが「開」となる。具体的には、マグネットスイッチ制御ラダー部６０から、マグネットスイッチＭＳに電力遮断指令が出力され、サーボドライバ２７への電力が遮断されることにより、ロボットＲ１のアームを駆動するロボットモータへの電力供給が断たれる。この結果、ロボットＲ１は動作できない安全な状態となる。
【０２２９】
４）  操作者による運転準備ボタン操作
次に、ティーチペンダントＴＰの操作者が、ロボットＲ１のアームを駆動するロボットモータへの電力供給させたいときには、操作者が、コントローラ２０Ａに有線で接続されている運転準備ボタン５８ａを押す。
【０２３０】
５）  コントローラによる運転準備信号の「閉」処理
ＣＰＵ２１は、操作者による運転準備ボタン５８ａの「閉」を検知すると、運転準備信号「閉」処理プログラム１３３に従って運転準備信号制御ラダー部５９における上記の３）で「開」とした運転準備制御信号を即座に「閉」にする。
【０２３１】
通常、ラダープログラムの実行周期は３０msec程度なので、操作者が運転準備ボタン５８ａの「閉」状態を０．１秒以上保持しておけば、運転準備信号制御ラダー部５９では、運転準備信号制御ラダープログラムにより図３７に示す運転準備信号が「閉」となる。
【０２３２】
さらに、ＭＳ制御ラダープログラムにより、マグネットスイッチ制御ラダー部６０ではマグネットスイッチＭＳも「閉」になり、マグネットスイッチ制御ラダー部６０から、マグネットスイッチＭＳに対して電力付与指令が付与される。このため、サーボドライバ２７へ電力が供給されることにより、ロボットＲ１のアームを駆動するロボットモータへの電力供給が行われる。
【０２３３】
このようにロボットモータが通電されることで、操作者はティーチペンダントＴＰの操作としてロボットを所望の位置に動作させて、ティーチング作業を行うことが可能となる。
【０２３４】
なお、通常、教示モードでのロボットモータへの電力通電は、ティーチペンダントＴＰの背面に配置されているイネーブルスイッチ（図示しない）を操作者の操作により同時に「閉」にする必要があるが、これはロボット制御上、一般的に行われていることなので詳細は説明しない。
【０２３５】
さて、上記のように構成された第１２実施形態の効果を以下に述べる。
（１）  上記のように以上の５つのステップを経て、ティーチペンダントＴＰとコントローラ２０Ａの接続、ロボットモータへの電力遮断、ならびにロボットモータへの電力通電の再開を行うことで、万が一、意図せぬコントローラ２０Ａへ接続した場合でも、上記の４）と５）の段階で運転準備信号が「閉」にならない。このため、誤ったロボットを動作させることが無く安全にすることができる。
【０２３６】
又、ロボットが複数存在する場合でも、運転準備ボタン５８ａをロボットの近傍に配置し、運転準備ボタン５８ａとロボットの関連を明確にすることで、より強固なロボットの誤操作防止が可能となる。
【０２３７】
（第１２実施形態の変形）
次に、図３８を参照して、第１２実施形態の変形例を説明する。
本実施形態では、運転準備信号が「閉」になった時点から起動する電力遮断プログラムがＲＯＭ２２に格納されているところが、第１２実施形態と異なっている。
【０２３８】
説明を簡略化するために、第１２実施形態の変形例での制御は、上記のステップで説明した方法により運転準備信号が「閉」になった時点から開始される。具体的な処理手順を以下に説明する。
【０２３９】
（Ｓ１３０：  運転準備信号「閉」状態への切り替わり時間の保存）
コントローラ２０ＡのＣＰＵ２１は、運転準備信号が「閉」になったことを検知すると、ティーチペンダントＴＰの無操作状態の経過時間（以後、経過時間と呼ぶ）を０[sec]として初期化する。経過時間は、コントローラ２０Ａ内のＲＡＭ２３に格納される変数で、ＣＰＵ２１により書き換え可能である。
【０２４０】
（Ｓ１３１：  ＴＰ無操作時間の初期化）
ＣＰＵ２１は、ＬＡＮＩ／Ｆ２５を介して、ティーチペンダントＴＰからの操作コマンドを受信したか否か判定する。ティーチペンダントＴＰからの操作コマンドを受信した履歴があった場合には、ＣＰＵ２１は、操作コマンド受信履歴を「無し」にし、上記のＳ１３０に戻る。ティーチペンダントＴＰからの操作コマンドを受信した履歴が無かった場合には、Ｓ１３２に進む。
【０２４１】
（Ｓ１３２：  ＴＰ無操作時間のカウントと監視）
ＣＰＵ２１は、入出力ポート５３を介して、運転準備信号が「開」に変更されたか否かを判定する。すなわち、ここでは、運転準備ボタン５８ａがオン操作されたか否かを判定している。運転準備信号が「開」となっている場合には、ＣＰＵ２１は本処理を終了する。「開」となって無い場合には、ＣＰＵ２１はＳ１３３に進む。
【０２４２】
（Ｓ１３３：  コントローラによる運転準備信号の「開」処理）
ＣＰＵ２１は、経過時間が予め設定されたＴＰ無操作監視時間（すなわち、予め決められた時間）を超えたか否かを判定する。この経過時間が予め設定されたＴＰ無操作監視時間を越えていない場合には、Ｓ１３５において、経過時間をサイクルタイム分だけ増加させ、Ｓ１３１に戻る。越えた場合には、Ｓ１３４に進む。
【０２４３】
なお、ＴＰ無操作監視時間とは、コントローラ２０Ａのハードディスク２４に記録された変数で、運転準備信号が「閉」状態であるにも関わらず、ティーチペンダントＴＰが操作されていない状態を容認する時間である。又、サイクルタイムとは、本処理全体（すなわち、この制御プログラムを含むとともに、ロボット自体を制御するための処理プログラム全体）を繰り返し実行する間隔である。
【０２４４】
通常のロボットを制御するコントローラ２０Ａの処理は、サイクリックに実行される。本変形例による処理も、このサイクリック処理に含まれるもので、経過時間のインクリメントもこのサイクルタイムに併せて実行される。
【０２４５】
（Ｓ１３４）
ＣＰＵ２１は、入出力ポート５３を介して、図３７に示す運転準備信号を強制的に「開」にする。この結果、予めプログラミングされたＭＳ制御ラダープログラムにより、マグネットスイッチＭＳが「開」となり、マグネットスイッチ制御ラダー部６０から、マグネットスイッチＭＳに電力遮断指令が出力される。このため、サーボドライバ２７への電力が遮断されることにより、ロボットＲ１のアームを駆動するロボットモータへの電力供給が断たれる。この結果、ロボットＲ１は動作できない安全な状態となる。
【０２４６】
なお、運転準備信号が「閉」ということは、ロボットＲ１のアームを駆動するロボットモータは通電可能な状況であり、ロボットＲ１との接続関係の識別が難しいワイヤレスのティーチペンダントＴＰにおいて、この状態を長時間放置することは、作業者の誤操作を誘発する可能性がある。
【０２４７】
第１２実施形態の変形例では下記の効果がある。
（１）  本実施形態の変形例によれば、運転準備信号が「閉」になっているにも関わらずティーチペンダントＴＰが操作されないという状況を、予め設定されるＴＰ無操作監視時間以下に制約することができ、ワイヤレスのティーチペンダントＴＰの安全を高めることが可能となる。
【０２４８】
なお、第１２実施形態の他の変形例として、下記のように構成してもよい。
すなわち、運転準備ボタン５８ａの押下操作と同時に、決められたティーチペンダントＴＰの操作を行うことにより、運転準備ボタン５８ａの操作の検出と、ティーチペンダントＴＰの操作の同時に行われたか否かをＣＰＵ２１が判定することにより、図３７の運転準備信号を「開」にする。ここで、決められたティーチペンダントＴＰの操作とは、特定のボタン入力やキー入力、或いは、任意のボタン入力やキー入力を含む操作である。
【０２４９】
このようにすることにより、接続関係に在るティーチペンダントＴＰを持つ操作者が運転準備を「閉」にしていることを、コントローラ２０Ａ側で、ティーチペンダントＴＰの操作による入力が行われたことにより確認することができ、運転準備信号を「開」にすることをより確実に実施できる。
【０２５０】
すなわち、ティーチペンダントＴＰを持つ操作者がロボットの運転準備を意図的に行ったことをコントローラ側で確実に確認できる。
なお、本発明の実施形態は以下のように変更してもよい。
【０２５１】
○  前記各実施形態では、ティーチペンダント１０・コントローラ２０間を、無線ＬＡＮによるネットワーク手段にて構築したが、有線ＬＡＮによって構築してもよい。
○  前記各実施形態では、ティーチペンダント１０・コントローラ２０間の通信を無線通信で行うようにしたが、無線方式に限らず、赤外線通信、光通信、或いは磁気通信で行うようにしてもよい。
【０２５２】
○  前記各実施形態では、ティーチペンダント１０と複数のコントローラ２０間を無線ＬＡＮによりネットワーク手段を構築したが、単に無線でティーチペンダント１０と複数のコントローラ２０間を交信可能としてもよい。又、無線に換えて、赤外線通信、光通信、或いは磁気通信で行うようにしても良い。
【０２５３】
○  第１実施形態では、表示手段を液晶ディスプレイ１７にて構成したが、液晶ディスプレイ１７に限定されるものではない。プラズマディスプレイや、有機ＥＬディスプレイや、ＣＲＴディスプレイとしてもよい。
【０２５４】
○  第１実施形態では、選択操作手段をキーボード１６としたが、キーボード１６に限定されるものではなく、マウス等のポインタや、液晶ディスプレイ１７上の画面に設けられたタッチパネルであってもよい。
【０２５５】
○  第４実施形態の接続先確認表示灯５５や、第７実施形態の表示灯５５Ａは、ロボットＲに付設するように設けているが、各ロボットを制御対象とするコントローラ２０に付設するように設けても良い。
【０２５６】
○  第９実施形態は、第７実施形態の変形例として構成したが、第８実施形態において、１つ又は複数のコントローラがそれぞれ複数のロボットを制御することを可能とし、該コントローラのハードディスク２４に認証ＩＤリスト２４９を設けるようにしてもよい。
【０２５７】
○  第１１実施形態では、ハードディスク２４を記憶手段としたが、ハードディスク２４に限定されるものではなく、読み出し書き込み可能な記憶媒体であればよい。例えば半導体記憶装置や、読み出し書き込み可能な光磁気ディスクであってももよい。
【０２５８】
○  第１１実施形態では、ティーチペンダント１０からユーザＩＤ、パスワードを入力するようにしたが、これらを省略しても良い。これらを省略しても、第１１実施形態の（３）の作用効果を奏することができる。
【図面の簡単な説明】
【０２５９】
【図１】本発明の第１実施形態のロボット制御システムのコントローラとティーチペンダントのブロック回路図。
【図２】同じくＣＰＵ１１が実行する接続先検索処理のフローチャート。
【図３】同じくコントローラＩＤをコントローラ２０Ａ〜２０Ｃに記名した状態を表す説明図。
【図４】第３実施形態のロボット制御システムのコントローラとティーチペンダントのブロック回路図。
【図５】第４実施形態のロボット制御システムのコントローラとティーチペンダントのブロック回路図。
【図６】（ａ）はＣＰＵ１１が実行するＳＷの状態変化監視処理プログラムのフローチャート、（ｂ）はＣＰＵ１１が実行する表示状態切替通知処理プログラムのフローチャート。
【図７】同じく該ＣＰＵ２１が実行する確認表示灯Ｏｎ／Ｏｆｆ処理プログラムのフローチャート。
【図８】第５実施形態のロボット制御システムのコントローラのブロック回路図。
【図９】同じくＣＰＵ２１が実行する確認表示灯Ｏｎ／Ｏｆｆ処理プログラムのフローチャート。
【図１０】第７実施形態のロボット制御システムのコントローラのブロック回路図。
【図１１】同じくＣＰＵ１１が実行する第１モータ運転許可管理処理プログラムのフローチャート。
【図１２】同じくＣＰＵ２１が実行するＩＤ認証処理プログラムのフローチャート。
【図１３】同じくモータ運転許可要求メッセージの説明図。
【図１４】同じくモータ運転許可承認メッセージの説明図。
【図１５】同じくＣＰＵ１１が実行する第２モータ運転許可管理処理プログラムのフローチャート。
【図１６】第８実施形態のロボット制御システムのコントローラのブロック回路図。
【図１７】同じくＣＰＵ１１が実行する第２モータ運転許可管理処理プログラムのフローチャート。
【図１８】同じくＣＰＵ２１が実行するＩＤ認証処理プログラムのフローチャート。
【図１９】（ａ）〜（ｃ）は認証用点滅パターンと入力パターンの例を示す説明図。
【図２０】同じくモータ運転許可要求メッセージの説明図。
【図２１】同じくモータ運転許可承認メッセージの説明図。
【図２２】第９実施形態のロボット制御システムのコントローラのブロック回路図。
【図２３】同じく認証ＩＤリスト２４９の説明図。
【図２４】第１０実施形態のロボット制御システムのコントローラのブロック回路図。
【図２５】複数のティーチペンダントからコントローラが操作されていまう例の説明図。
【図２６】ティーチペンダントに障害があった際、他のティーチペンダントからコントローラが操作されてしまう例の説明図。
【図２７】ＣＰＵ１１が実行するスイッチ監視処理プログラムのフローチャート
【図２８】ＣＰＵ２１が実行するＴＰＩＤ認証処理プログラム２２６のフローチャート。
【図２９】接続要求時のティーチペンダントとコントローラの説明図。
【図３０】（ａ）は接続認証要求メッセージの説明図、（ｂ）は、接続認証要求メッセージの説明図、（ｃ）は、切断要求メッセージの説明図、（ｄ）は切断要求メッセージの説明図。
【図３１】第１０実施形態のＣＰＵ１１が実行するコントローラ接続処理プログラムのフローチャート。
【図３２】第１１実施形態のＣＰＵ１１が実行するコントローラ接続処理プログラムのフローチャート。
【図３３】同じくＣＰＵ２１が実行するＴＰＩＤ認証処理プログラムのフローチャート。
【図３４】同じくＣＰＵ１１が実行するコントローラ接続処理プログラムのフローチャート。
【図３５】第１２実施形態のロボット制御システムのコントローラのブロック回路図。
【図３６】同じティーチペンダントＴＰをコントローラ２０Ａ〜２０Ｃのいずれかに接続する場合の説明図。
【図３７】同じく運転準備信号制御ラダー部及びマグネットスイッチ制御ラダー部が実行する制御ラダーを示すラダー図。
【図３８】同じくコントローラが実行するフローチャート。
【図３９】（ａ）は無線ＬＡＮにティーチペンダントとコントローラが接続される接続形態を表す説明図、（ｂ）は有線ＬＡＮにティーチペンダントとコントローラが接続される接続形態を表す説明図。
【符号の説明】
【０２６０】
１０…ティーチペンダント（可搬式操作部）、
１１…ＣＰＵ（返信要求手段、接続構築手段、確認操作検出手段、出力手段、認証手段）、１６…キーボード（選択操作手段、入力手段）、
１７…液晶ディスプレイ（表示手段、判別結果表示手段）、
２４…ハードディスク（記憶手段）、
４２…接続許可ＴＰＩＤ（接続許可操作部情報）、
５２…接続先確認ＳＷ（接続先確認操作手段）、
１４６…ＳＷ状態データ（確認操作情報）。
【図１】
2008080474.tif 000003
【図２】
2008080474.tif 000004
【図３】
2008080474.tif 000005
【図４】
2008080474.tif 000006
【図５】
2008080474.tif 000007
【図６】
2008080474.tif 000008
【図７】
2008080474.tif 000009
【図８】
2008080474.tif 000010
【図９】
2008080474.tif 000011
【図１０】
2008080474.tif 000012
【図１１】
2008080474.tif 000013
【図１２】
2008080474.tif 000014
【図１３】
2008080474.tif 000015
【図１４】
2008080474.tif 000016
【図１５】
2008080474.tif 000017
【図１６】
2008080474.tif 000018
【図１７】
2008080474.tif 000019
【図１８】
2008080474.tif 000020
【図１９】
2008080474.tif 000021
【図２０】
2008080474.tif 000022
【図２１】
2008080474.tif 000023
【図２２】
2008080474.tif 000024
【図２３】
2008080474.tif 000025
【図２４】
2008080474.tif 000026
【図２５】
2008080474.tif 000027
【図２６】
2008080474.tif 000028
【図２７】
2008080474.tif 000029
【図２８】
2008080474.tif 000030
【図２９】
2008080474.tif 000031
【図３０】
2008080474.tif 000032
【図３１】
2008080474.tif 000033
【図３２】
2008080474.tif 000034
【図３３】
2008080474.tif 000035
【図３４】
2008080474.tif 000036
【図３５】
2008080474.tif 000037
【図３６】
2008080474.tif 000038
【図３７】
2008080474.tif 000039
【図３８】
2008080474.tif 000040
【図３９】
2008080474.tif 000041