(57)【要約】【課題】ロボットの動作に支障がないようにネットワークで接続されたロボット制御システムを提供することを目的とする。【解決手段】ロボットを制御する１台以上のロボット制御装置１０、１１、１２と、ロボット通信回線２を介して接続され、かつ、外部通信回線３と接続される管理サーバ１とを備えるロボット制御システムにおいて、管理サーバ１は、ロボット制御装置１０、１１、１２が外部通信回線３を介して通信を行うためのアドレスとロボット通信回線２のアドレスを変換するアドレス変換部４とを備え、外部通信回線３の通信プロトコルとロボット通信回線２の通信プロトコルは同一である。【選択図】図１
2004306200.tif 000002
【特許請求の範囲】
【請求項１】
ロボットを制御する１台以上のロボット制御装置と、前記ロボット制御装置とロボット通信回線を介して接続され、かつ、外部通信回線と接続される管理サーバとを備えるロボット制御システムにおいて、
前記管理サーバは、前記ロボット制御装置が前記外部通信回線を介して通信を行うためのアドレスと前記ロボット通信回線のアドレスを変換するアドレス変換部とを備え、
前記外部通信回線の通信プロトコルと前記ロボット通信回線の通信プロトコルは同一であることを特徴とするロボット制御システム。
【請求項２】
前記ロボット制御装置は、前記ロボット制御装置の稼動状態を前記外部通信回線を介して通知する通知アドレスを格納する通知アドレス格納部と、
前記ロボット制御装置の稼動状態に応じて前記通知アドレスに前記稼動状態を通知する通知処理部とを備えることを特徴とする請求項１記載のロボット制御システム。
【請求項３】
前記ロボット制御装置は、外部の計算機から前記外部通信回線、前記管理サーバ及び前記ロボット通信回線を経由して作業指令を受信する受信処理部と、
前記受信処理部にて受信した作業指令を解析する解析処理部と、
前記解析処理部にて解析した作業指令に従って作業を実行する実行部とを備えることを特徴とする請求項１乃至２記載のロボット制御システム。
【請求項４】
ロボットを制御する１台以上のロボット制御装置と、前記ロボット制御装置とロボット通信回線を介して接続され、かつ、外部通信回線と接続される管理サーバとを備えるロボット制御システムにおいて、
前記ロボット制御装置は、システムの異常の内容に対応する通知先を記憶している通知アドレス格納部とを備え、
システムの異常が発生した場合には、前記管理サーバを介して前記異常に応じた前記通知アドレス部に格納された通知先に通知することを特徴とするロボット制御システム。
【請求項５】
前記通知アドレス格納部は、通知先のアドレスと伝送プロトコルとを含むことを特徴とする請求項４記載のロボット制御システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、産業用ロボットの故障診断、自動メンテナンス、生産管理を通信回線を介して行うロボット制御システムに関する。
【０００２】
【従来の技術】
従来の技術としては、ロボット制御装置本体に外部ネットワークインフラとの接続インターフェースを備えるものがある。従来技術を図５に基づいて説明する。ロボットの制御プログラムを記憶するための記憶装置２０１、記憶装置によって記憶された制御プログラムを解析、実行する主演算装置２０２と、外部ネットワークインフラとの接続を行うインターフェース装置２０３とをクライアント側に備え、インターフェース装置２０３がホスト側と電子メールを送受信することによりロボット２２０を制御する（特許文献１参照）。
【０００３】
【特許文献１】
特開２００２−１３２３２２号公報（第３頁右列第２行〜第１２行、第１図）
【０００４】
【発明が解決しようとする課題】
ところが、従来技術では、ロボット制御装置の全台数を外部ネットワークインフラに接続する必要があった。これはロボット制御装置１台に１つずつグローバルアドレスを取得する必要があることを示している。しかしながら、このグローバルアドレスは、世界的規模での枯渇が迫っており、限られた数のアドレスしか取得できなくなっている。一方、企業内ではネットワーク接続を必要とする機器が増え続けているため、開発用、生産管理用、または事務用といった機器やコンピュータから優先的にグローバルアドレスが割り付けられているのが現状である。このため生産設備であるロボットなどに設定するためのグローバルアドレスが絶対的に不足しているという問題があった。また、グローバルアドレスを割り付けることができたとしても、今度は外部ネットワークインフラへ直接接続していることにより、悪意のあるデータを直接受信してしまい、ロボットの動作異常を引き起こす危険性があるという問題もあった。悪意のないデータであっても、ロボットの動作実行中に多数のデータ受信を行うことにより、ロボット制御装置の処理時間が不足し、ロボットの動作に影響を与えるという問題もあった。
そこで、本発明はこのような問題点に鑑みてなされたものであり、外部ネットワークインフラへの直接接続により想定されるグローバルアドレスの不足やロボットの動作異常を引き起こすという問題を回避でき、ロボットの動作に支障がないようにネットワークで接続されたロボット制御システムを提供することを目的とする。
【０００５】
【課題を解決するための手段】
上記問題を解決するため、本発明は、次のように構成したのである。
本発明の請求項１記載のロボット制御システムは、ロボットを制御する１台以上のロボット制御装置と、前記ロボット制御装置とロボット通信回線を介して接続され、かつ、外部通信回線と接続される管理サーバとを備えるロボット制御システムにおいて、前記管理サーバは、前記ロボット制御装置が前記外部通信回線を介して通信を行うためのアドレスと前記ロボット通信回線のアドレスを変換するアドレス変換部とを備え、前記外部通信回線の通信プロトコルと前記ロボット通信回線の通信プロトコルは同一であることを特徴とするものである。
本発明の請求項２記載のロボット制御システムは、前記ロボット制御装置は、前記ロボット制御装置の稼動状態を前記外部通信回線を介して通知する通知アドレスを格納する通知アドレス格納部と、前記ロボット制御装置の稼動状態に応じて前記通知アドレスに前記稼動状態を通知する通知処理部とを備えることを特徴とするものである。
本発明の請求項３記載のロボット制御システムは、前記ロボット制御装置は、外部の計算機から前記外部通信回線、前記管理サーバ及び前記ロボット通信回線を経由して作業指令を受信する受信処理部と、前記受信処理部にて受信した作業指令を解析する解析処理部と、前記解析処理部にて解析した作業指令に従って作業を実行する実行部とを備えることを特徴とするものである。
本発明の請求項４記載のロボット制御システムは、ロボットを制御する１台以上のロボット制御装置と、前記ロボット制御装置とロボット通信回線を介して接続され、かつ、外部通信回線と接続される管理サーバとを備えるロボット制御システムにおいて、前記ロボット制御装置は、システムの異常の内容に対応する通知先を記憶している通知アドレス格納部とを備え、システムの異常が発生した場合には、前記管理サーバを介して前記異常に応じた前記通知アドレス部に格納された通知先に通知することを特徴とするものである。
本発明の請求項５記載のロボット制御システムは、前記通知アドレス格納部は、通知先のアドレスと伝送プロトコルとを含むことを特徴とするものである。
【０００６】
【発明の実施の形態】
以下本発明の実施例を図に基づいて説明する。
（実施例１）
図１は本発明のネットワーク構成例を示す図である。ロボット制御装置１０は、ロボット通信回線２を介して、他のロボット制御装置１１、１２と接続されている。各ロボット制御装置には、各々ロボット通信回線２を介して、管理サーバ１とのデータを送受信するロボット通信制御部１００、１０１、１０２が内蔵されている。また管理サーバ１は、外部通信回線３を介して外部コンピュータ７とデータの送受信ができるように外部通信制御部５を備えている。外部通信制御部５は、インターネットプロトコルスイートを使用して、外部コンピュータとのデータ送受信を行う。インターネットプロトコルスイートとはインターネットで使用されているプロトコル群のことであり、遠隔操作、ファイル転送、ＷＥＢ、電子メール、ネットワークファイルシステム、ネームサービス、ルーティングサービスなどを含んでいる。外部通信制御部５には、これらプロトコルの全部、または一部を実装しておく。インターネットプロトコルスイートを使用するためのネットワークインターフェースにはＥｔｈｅｒｎｅｔ（登録商標）、シリアル回線、専用通信回線、公衆回線、有線ＬＡＮ、無線ＬＡＮ、フィールドバスなど、インターネットプロトコルスイートを適用できるものであれば何れでもよい。
【０００７】
管理サーバ１のロボット通信制御部６は、各ロボット制御装置のロボット通信制御部１００、１０１、１０２と通信を行う。ロボット通信制御部６及びロボット通信制御部１００、１０１、１０２は、インターネットプロトコルスイートにより、ロボット制御装置１０、１１、１２と管理サーバ１とのデータ送受信を行う。インターネットプロトコルスイートを使用するためのネットワークインターフェースは、インターネットプロトコルスイートを適用できるものであれば何れでもよい。また、外部通信回線とロボット通信回線のネットワークインターフェースは同じでもよいし、同じでなくてもよい。
【０００８】
外部通信制御部５、ロボット通信制御部６及びロボット通信制御部１００、１０１、１０２の構成を図２に模式的に示す。各通信制御部は、複数の層から構成される。
第１層：物理層では、コンピュータで使用されるデジタルデータ（０と１で構成される値）と実際の物理媒体を流れる電気信号との変換機能を提供する。
第２層：データリンク層では、１つのネットワークに接続された複数の端末の中で、特定の端末間での通信を行う機能を提供する。これにより、ある特定の通信端末から、ある特定の通信端末へ、データを送ることができ、さらにその際、送られたデータが正当な（破損していない）ものであるかを判断できる。
これら第１層、第２層がネットワークインターフェースであり、使用するネットワークの物理的な特性の違いなどによって、様々な種類が存在する。
【０００９】
第３層：ネットワーク層では、データリンク層のネットワークごとの仕様の違いを吸収し、複数のネットワークを接続できるようにするものである。このため、ネットワーク層ではデータリンク層で接続されているネットワーク同士を相互に接続し、そこに接続されている任意の端末間で通信を行う機能を提供する。これを実現するために、ネットワーク層では相互に接続されたネットワーク上のすべてのコンピュータに対して、一意に特定できるようにするための方法（アドレス付け）を定義し、データの送信元や送信先には、このアドレスを使って通信を行わせる。そして、通信相手までの間に複数のネットワークが存在する場合、各ネットワークの間にある端末（ルータ）がルート（経路）の選択をして、バケツリレーのようにデータの転送をするパケット交換機能を提供する。
【００１０】
第４層：トランスポート層では、データ伝送の信頼性を保証するための機能を提供する。また通信を行うプログラム間で使用するための「仮想的な回線」の機能も提供する。プログラム間でこの仮想的な回線を「確立」しておくことにより、それらのプログラム間でデータを交換することができる。仮想的な回線は、１つのコンピュータで複数利用することもできので、コンピュータ上の複数のプログラムでそれぞれ独立した通信を行ったり、１つのコンピュータ（プログラム）で複数のコンピュータ（プログラム）を相手に同時に独立した通信を行ったりすることができる。
第５層：セッション層では、トランスポート層で実現している仮想的な回線の使用開始から使用の終了までの一連の通信（これを「セッション」と呼ぶ）の管理を行う機能を提供する。
第６層：プレゼンテーション層では、ネットワークを流れるデータの意味を統一する機能を提供する。数値や文字などはコンピュータのハードウェアやＯＳによっては異なるコード（符号）で表わされることがあるので、それらを統一したコードに変換し、ネットワーク上のアプリケーション間で意味を統一する。
【００１１】
第７層：アプリケーション層とは、プレゼンテーション層以下のプロトコルによって提供される機能を利用した、ネットワーク  アプリケーションのプロトコルが位置する層である。
インターネットプロトコルスイートでは、この３層から７層の間の各層を利用して機能実現を行っている。なお機能実現にあたって、これら各層を忠実に分離して実現してもよいし、複数の層をまとめて実現してもよい。
【００１２】
次に、ロボット制御装置１０からインターネットに接続されている外部コンピュータ７内のＷｅｂサーバへアクセスする場合を説明する。インターネットに接続されている外部コンピュータ７、および管理サーバ１の外部通信制御部５は、３２ビットまたは１２８ビットのグローバルアドレスを持っている。ロボット制御装置１０のロボット通信制御部１００、および管理サーバ１のロボット通信制御部６は、３２ビットまたは１２８ビットのローカルアドレスを持っている。ロボット制御装置１０はロボット通信制御部１００からロボット通信回線２を介して、送信元アドレスがロボット制御装置１０のロボット通信制御部１００、送信先アドレスが外部コンピュータ７、内容は外部コンピュータ７のＷＥＢサーバへの接続要求というパケットを管理サーバ１へ送出する。管理サーバ１は、このパケットをロボット通信制御部６にて受信し、その内容が外部コンピュータ７のＷｅｂサーバへの要求であることを確認すると、パケットの送信先アドレスはそのままとし、送信元アドレスを管理サーバ１の外部通信制御部５へ書き換えて送出する。また、管理サーバ１はこのパケットを送出すると同時に、外部コンピュータ７への接続要求を行ったのはロボット制御装置１０であることを記憶しておく。
【００１３】
外部コンピュータ７はＷｅｂサーバへの接続要求のパケットを受信し、解析し、その応答を送る。その時に生成されるパケットは、送信元アドレスが外部コンピュータ７、送信先アドレスが管理サーバ１、内容が外部コンピュータのＷｅｂサーバへの接続要求応答である。管理サーバ１は、このパケットを受信し解析すると、過去の送受信内容を記憶しておいたものとの内容比較から、本当の送信先がロボット制御装置１０のロボット通信制御部１００であると判断することができる。そこで、管理サーバ１は、受信したパケットの送信元アドレスはそのままとし、送信先アドレスをロボット制御装置１０のロボット通信制御部１００へ書き換えて送出する。これら一連の手続きにより、ロボット制御装置１０が外部通信回線から完全に隠蔽された状態で外部コンピュータ７のＷｅｂサーバと通信を行うことができる。
【００１４】
上記の例では、ロボット制御装置１０のロボット通信制御部１００と管理サーバ１のロボット通信制御部６にはローカルアドレスを使用したが、グローバルアドレスを使用してもよい。同様に、外部コンピュータ７および管理サーバ１の外部通信制御部５にはグローバルアドレスを使用したが、外部コンピュータ７がインターネットに接続されていないものであれば、ローカルアドレスを使用してもよい。また、書き換えるデータは送信先アドレスのみ、または送信元アドレスのみとしているが、これらの書き換えがパケットデータの正当性を示すデータ（例えばサム値やＣＲＣ値）を変化させるものであれば、当然これらの正当性を示すデータも書き換えなければならない。また、必要に応じてアドレスや正当性を示すデータ以外のデータを書き換えてもよい。これは、例えばロボット制御装置１１やロボット制御装置１２がロボット制御装置１０と同時に外部コンピュータ７のＷｅｂサーバへアクセスする場合に、外部コンピュータ７から送出されたパケットを、管理サーバ１が各ロボット制御装置１０、１１、１２のいずれに転送すればよいかを示す判断材料とするためのものが考えられる。
【００１５】
なお、インターネットプロトコルスイートでは、各端末が、外見上、名前でアクセスできるように見せているが、その実体はネームサービスにより端末の名前とアドレスの変換を内部またはネットワーク上にある対応表に従って自動的に行っているだけであり、実際のアクセスは３２ビットまたは１２８ビットのアドレスを使用して行われている。しかし、パケット内のデータに端末の名前が含まれていることもある。この場合、管理サーバ１は、必要に応じて端末名も書き換えなければならない。
上記の例では外部コンピュータ７のＷｅｂサーバへアクセスする場合を想定したが、インターネットプロトコルスイートに含まれる他のプロトコルでも、同様のアクセスを行うことができる。
【００１６】
さらに、上記の例ではロボット制御装置１０から外部コンピュータ７へアクセスする場合を想定したが、管理サーバ１内に、外部コンピュータ７からの要求パケットを解析する解析部と、要求内容とロボット制御装置１０、１１，１２のいずれへアクセスすればよいかの対応表を設置しておくことにより、外部コンピュータ７からロボット制御装置１０、１１、１２のいずれにもアクセスできるようになる。
【００１７】
（実施例２）
本発明の第２の実施例を示す。図３は実施例２の構成図である。ロボット制御装置１０内で、外部コンピュータ７へ稼動状態を通知する要求が発生した場合を想定する。この要求には、異常が発生した場合の異常通知要求、規定された一連の作業が完了した場合の作業完了通知要求、一定時間ごと定期的に報告する作業状態通知要求などがある。この要求が通知処理部３０へ伝達されると、通知処理部３０は、通知要求の内容に関連付けられている通知アドレスを通知アドレス格納部３１から取り出す。通知処理部３０はこの通知アドレスに、規定のフォーマットに従ってデータを生成し、ロボット通信制御部１００から送信させる。このデータは、ロボット通信回線２、管理サーバ１、外部通信回線３を経由して外部コンピュータ７まで伝送される。なお、この伝送に使用されるプロトコルには主にメールが考えられるが、ファイル転送やＷｅｂなどインターネットプロトコルスイートの中の何れでも使用することができる。ただし、メール以外のプロトコルを使用する場合には、通知アドレス格納部にはアドレスとプロトコルを合わせて格納しておく必要がある。
【００１８】
（実施例３）
本発明の第３の実施例を示す。図４は実施例３の構成図である。外部コンピュータ７で、ロボット制御装置１０へ何らかの作業指令を送信することを想定する。この場合の作業指令には、システムプログラムの変更、ユーザプログラムの生成／編集／切り替え／削除、システム設定変更、動作条件変更、ファイル送受信、入出力信号変更、起動／停止、これらの作業結果の返信、稼動状況の返信などが考えられる。この作業指令が外部コンピュータ７から外部通信回線を経由して管理サーバ１へ伝送される。管理サーバ１は、受信した作業指令を解析し、あらかじめ定義されている転送先のロボット制御装置情報との比較を行い、転送すべきロボット制御装置を決定し、作業指令を転送する。ロボット通信回線を介してロボット通信制御部１００へ伝送された作業指令は、受信処理部４０で受信される。受信された作業指令は引き続き解析処理部４１で解析され、その解析結果が実行部４２へ通知される。実行部４２では、作業指令に従ってシステムを変更したり、ロボットを動作させたり、作業指令に対する応答を送信したりする。
【００１９】
上記に示した全ての例において、外部コンピュータ７はインターネットプロトコルスイートの全て、または一部を実行できるものであればよい。これには、パソコン、ワークステーション、汎用コンピュータ、大型計算機、携帯電話、携帯端末、ネットワーク家電などがある。
【００２０】
また、上記に示した全ての例において、管理サーバ１は、パケットの送信元アドレス、送信先アドレスの管理だけでなく、パケット送受信自体の管理を行ってもよい。これは、アクセスを許可する送信元、送信先アドレスをあらかじめ定義し、内部に表として保存しておく。定義されているアドレスがパケット内に指定されている場合には、アドレス変換の処理を行うので、通信を行うことができる。一方、定義されていないアドレスがパケット内に指定されている場合には、アドレスの変換を行わないので、通信を行うことができない。これによりパケット送受信自体の管理を行うこともできる。この表は、アクセスを許可するアドレスの表であるが、逆にアクセスを許可しないアドレスの表を作成し，表中に記載のないアドレスであれば、アドレス変換を行い、通信を許可するようにしてもよい。
【発明の効果】
以上述べたように、本発明によれば、外部通信回線とロボット通信回線を独立させ、ロボット通信回線を外部から隠蔽化するようにしたので、外部通信回線へのアクセスを維持したままでありながら、ロボット通信回線で使用するアドレスはグローバルなアドレスである必要がなくなり、かつ、外部からの悪意のあるデータから保護することができる。
【図面の簡単な説明】
【図１】本発明の構成図
【図２】本発明の通信部の構成部
【図３】請求項２の実施例の構成図
【図４】請求項３の実施例の構成図
【図５】従来例の図
【符号の説明】
１：管理サーバ
２：ロボット通信回線
３：外部通信回線
４：アドレス変換部
５：外部通信制御部
６：ロボット通信制御部
１０、１１、１２：ロボット制御装置
１０１、１０２、１０３：ロボット通信制御部
３０：通知処理部
３１：通知アドレス格納部
４０：受信処理部
４１：解析処理部
４２：実行部
【図１】
2004306200.tif 000003
【図２】
2004306200.tif 000004
【図３】
2004306200.tif 000005
【図４】
2004306200.tif 000006
【図５】
2004306200.tif 000007