(57)【特許請求の範囲】
【請求項１】
ロボットまたは該ロボットの周りの対象物を撮像する画像処理装置の処理結果に基づいて該ロボットの動きを制御するロボット制御装置であって、
外部コンピューターと接続される第１通信部と、
ネットワークを介して前記画像処理装置に接続される第２通信部と、
前記第１通信部の受信するコマンドを処理するコマンド処理部と
を備え、
前記第１通信部が前記コマンドを受信すると、
前記コマンド処理部が前記コマンドを処理し、
前記第２通信部が、前記コマンドを受け取り通信ポートをオープンし前記ロボット制御装置のソケットを生成し、前記ソケットを用いて前記ネットワーク上のサーバーと接続して前記画像処理装置との通信を行う
ことを特徴とするロボット制御装置。
【請求項２】
前記第２通信部が前記画像処理装置の送信する画像処理データを受信するごとに該第２通信部から該画像処理データを格納して複数回の受信分の画像処理データ群を蓄えるデータバッファーを有し、
前記第１通信部が受信要求コマンドを受信すると、
前記コマンド処理部が前記受信要求コマンドを処理し、
前記ロボット制御装置は、前記データバッファーの蓄えた前記画像処理データ群の容量が前記外部コンピューターの指定した容量に足りないとき、前記データバッファーの蓄える前記画像処理データ群の容量が前記外部コンピューターの指定した容量に足りるように、画像処理データの送信を前記サーバーに要求する
請求項１に記載のロボット制御装置。
【請求項３】
前記第１通信部が、前記外部コンピューターをホストとするスレーブデバイスを有する
請求項１又は２に記載のロボット制御装置。
【請求項４】
前記第１通信部が、ＵＳＢデバイスを有し、
前記第２通信部が、ＬＡＮデバイスを有する
請求項１〜３のいずれか一項に記載のロボット制御装置。
【請求項５】
ロボットまたは該ロボットの周りの対象物を撮像する画像処理装置と、
前記画像処理装置の処理結果に基づいてロボットの動きを制御するロボット制御装置とを有するロボットシステムであって、
前記ロボット制御装置が、
外部コンピューターと接続される第１通信部と、
ネットワークを介して前記画像処理装置に接続される第２通信部と、
前記第１通信部が受信するコマンドを処理するコマンド処理部とを備え、
前記第１通信部が前記コマンドを受信すると、
前記コマンド処理部が前記コマンドを処理し、
前記第２通信部が、前記コマンドを受け取って通信ポートをオープンし前記ロボット制御装置のソケットを生成し、前記ソケットを用いて前記ネットワーク上のサーバーと接続して前記画像処理装置との通信を行う
ことを特徴とするロボットシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、産業用ロボットの動きを制御するロボット制御装置、特に複数の周辺機器の各々と通信を行う複数の通信部を有するロボット制御装置、及び該ロボット制御装置と周辺機器の一例である画像処理装置とを有するロボットシステムに関する。
【背景技術】
【０００２】
上述のようなロボットシステムでは、例えば特許文献１に記載のように、産業用ロボットの位置やワークの位置等の位置情報が、産業用ロボットまたは該産業用ロボットの周辺画像に基づき画像処理装置で生成され、該位置情報を受信するロボット制御装置によって、産業用ロボットの動きが制御されている。例えば、画像処理装置は、該画像処理装置に入力される撮像コマンドに従って産業用ロボットの周辺画像を撮像部により撮像し、該撮像部の撮像した画像のデータを画像メモリに保存する。また、画像処理装置は、該画像処理装置に入力される処理コマンドに従って所定の画像処理を実行する。例えば、画像処理結果の一例として、ワークの位置、ワークの形状、エンドエフェクターの位置等が算出される。そして、画像処理装置は、該画像処理装置に入力される受信要求コマンドに従って位置情報をロボット制御装置に送信し、該位置情報に基づいて、ロボット制御装置が産業用ロボットの動きを制御する。
【０００３】
一方、このような産業用ロボットの動きの制御に先立ち、ロボット制御装置や画像処理装置が実行する各種の制御プログラムは、通常、ロボットシステムの動作する環境に応じて、予め外部の開発用コンピューターにより開発される。図４は、ロボット制御装置における制御プログラム、及び画像処理装置における制御プログラムの各々が開発される際の各装置と開発用コンピューターとの接続の態様を示すブロック図である。
【０００４】
図４に示されるように、ロボットシステムを構成する産業用ロボット５１は、例えば複数のアーム５１ａが関節部で連結された多関節型のロボットであって、該産業用ロボット５１には、産業用ロボット５１に搭載されたモーターの駆動を制御するロボット制御装置５２が接続されている。ロボット制御装置５２には、イーサネット（登録商標）等のネットワークに接続された開発用コンピューター５３が、ＵＳＢ（Universal Serial Bus）ケーブル等の通信路を介して接続されている。そして、例えば、上記モーターの駆動を制御する制御プラグラムが作成される際には、上記モーターの回転位置がロボット制御装置５２から開発用コンピューター５３に送信されロボットの姿勢が開発用コンピューター５３上に表示される。次いで、ロボットの位置やロボット姿勢を決定するための制御プログラムの作成が、開発用コンピューター５３により行われ、ロボット制御装置５２に格納される。
【０００５】
他方、ロボットシステムを構成する画像処理装置５４は、例えばスマートカメラ等の撮像部と該撮像部の撮像した画像に所定の画像処理を施す画像処理デバイスとから構成されている。こうした画像処理装置５４には、これもまたイーサネット等のネットワークに接続された他の開発用コンピューター５５が、該サーバー５６を介して接続されている。一般的には画像処理装置５４とサーバー５６は単一筐体として構成されていることが多い。そして、例えば、画像の処理態様を制御する制御プログラムが作成される際には、エンドエフェクター５１ｂの画像やワークＷの画像の処理結果が、画像処理装置５４から開発用コンピューター５５に送信される。次いで、画像の処理結果に基づく制御プログラムの作成が、開発用コンピューター５５により行われ、該制御プログラムが画像処理装置５４に格納される。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００９−１７８８１３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ところで、開発用コンピューター５３，５５が上位のコントローラーとなる上記接続の態様では、モーターの駆動を制御する制御プログラムが開発用コンピューター５３により作成される一方、画像の処理態様を制御する制御プログラムが他の開発用コンピューター５５により作成される。そのため、ロボットシステムの駆動を制御する各種の制御プログラムが開発される際には、互いに異なる複数の開発用コンピューターが必要とされ、そのうえ、各々の制御プログラムを開発するための通信路を各別に確保する必要がある。そのため、開発用コンピューターの通信設定を含め、こうした各種の制御プログラムの開発が煩雑なものとなっている。
【０００８】
本発明の目的は、上記問題点に鑑みてなされたものであり、ロボットシステムの駆動を制御する制御プログラムの開発に際して各種装置の接続の態様や各種装置の設定の簡素化を図ることの可能なロボット制御装置、及び該ロボット制御装置を備えるロボットシステムを提供することである。
【課題を解決するための手段】
【０００９】
上記問題点を解決するために、本発明におけるロボット制御装置の一態様は、ロボットまたは該ロボットの周りの対象物を撮像する画像処理装置の処理結果に基づいて該ロボットの動きを制御するロボット制御装置であって、外部コンピューターと通信を行う第１通信部と、ネットワークを介して前記画像処理装置に接続される第２通信部と、前記第１通信部の受信するオープンコマンドにより前記第２通信部の通信ポートをオープンし、前記ネットワーク上のサーバーを介して前記画像処理装置との通信を前記第２通信部に開始させるコマンド処理部とを有することを要旨とする。
【００１０】
本発明におけるロボット制御装置の一態様によれば、外部コンピューターが送信するオープンコマンドによって、ロボット制御装置における第２通信部の通信ポートがオープンされてロボット制御装置と画像処理装置との通信が可能になる。そのため、外部コンピューターと画像処理装置との通信がロボット制御装置を介して可能になる。このような接続の態様であれば、ロボット制御装置を用いた制御プログラムの作成と画像処理装置を用いた制御プログラムの作成とを、１つの外部コンピューターによって実現することが可能となる。そのため、これらの制御プログラムを作成するための通信路を１つの外部コンピューターに対して確保するだけで足りることになる。それゆえに、ロボットの動きを制御する制御プログラムの開発に際して各種装置の接続の態様や各種装置の設定の簡素化を図ることが可能となる。
【００１１】
本発明におけるロボット制御装置の一態様は、前記第２通信部が前記画像処理装置の送信する画像処理データを受信するごとに該第２通信部から画像処理データを格納して複数回の受信分の画像処理データ群を蓄えるデータバッファーを有し、前記コマンド処理部が、前記第１通信部の受信する受信要求コマンドを受けて前記データバッファーの蓄えた前記画像処理データ群を前記第１通信部に送信させることを要旨とする。
【００１２】
第１通信部と外部コンピューターとの間の通信速度が、第２通信部と画像処理装置との間の通信速度よりも小さくなることは少なくない。また、第１通信部と外部コンピューターとの間の通信サイクルが、第２通信部と画像処理装置との間の通信サイクルよりも大きくなることも少なくない。第２通信部の受信した画像処理データが受信サイクルごとに第１通信部から送信されるデータ転送の態様では、このように通信速度や通信サイクルが互いに異なると、第２通信部の複数回受信する画像処理データの一部が第１通信部から送信され難くなる。
【００１３】
この点、本発明におけるロボット制御装置の一態様によれば、データバッファーが複数回の受信分の画像処理データ群を蓄え、該データバッファーに蓄えられた画像処理データ群を第１通信部が外部コンピューターに送信することになる。そのため、上述のように通信速度や通信サイクルが互いに異なる場合に、所定の受信サイクルで第２通信部の受信した画像処理データが第１通信部から送信され難くなることを抑えることが可能である。
本発明におけるロボット制御装置の一態様は、前記第１通信部が、前記外部コンピューターをホストとするスレーブデバイスを有することを要旨とする。
【００１４】
本発明におけるロボット制御装置の一態様によれば、外部コンピューターをホストとするスレーブデバイスにより外部コンピューターとロボット制御装置とが通信するため、外部コンピューターとロボット制御装置との通信に関わる設定がより簡便なものとなる。
本発明におけるロボット制御装置の一態様は、前記第１通信部が、ＵＳＢデバイスを有し、前記第２通信部が、ＬＡＮデバイスを有することを要旨とする。
【００１５】
本発明におけるロボット制御装置の一態様によれば、ロボット制御装置が互いに異なる通信方式の通信デバイスを有するため、ロボット制御装置の制御プログラムを作成する際の利便性の向上の他、ロボット制御装置そのものの通信方式の多様性を広げることが可能にもなる。
【００１６】
本発明におけるロボットシステムの一態様は、ロボットまたは該ロボットの周りの対象物を撮像する画像処理装置と、前記画像処理装置の処理結果に基づいてロボットの動きを制御するロボット制御装置とを有するロボットシステムであって、前記ロボット制御装置が、外部コンピューターと通信を行う第１通信部と、ネットワークを介して前記画像処理装置に接続される第２通信部と、前記第１通信部が受信するオープンコマンドにより前記第２通信部の通信ポートをオープンし、前記ネットワーク上のサーバーを介して前記画像処理装置との通信を前記第２通信部に開始させるコマンド処理部とを有することを要旨とする。
【００１７】
本発明におけるロボットシステムの一態様によれば、外部コンピューターが送信するオープンコマンドによって、ロボット制御装置における第２通信部の通信ポートがオープンされてロボット制御装置と画像処理装置との通信が開始される。そのため、１つの外部コンピューターと画像処理装置との通信がロボット制御装置を介して可能になる。このような接続の態様であれば、ロボット制御装置を用いた制御プログラムの作成と画像処理装置を用いた制御プログラムの作成とを、１つの外部コンピューターによって実現することが可能となる。そのため、これらの制御プログラムを作成するための通信路を１つの外部コンピューターについて確保するだけで足りることになる。それゆえに、ロボットの動きを制御する制御プログラムの開発に際して各種装置の接続の態様や各種装置の設定の簡素化を図ることが可能となる。
【図面の簡単な説明】
【００１８】
【図１】本発明におけるロボットシステムを具体化した一実施形態の各構成要素間の接続の態様と構成要素の一つであるロボット制御装置の機能的な構成とを示す機能ブロック図。
【図２】同実施形態にてロボット制御装置が行うソケット送信処理の処理手順を示すフローチャート。
【図３】同実施形態にてロボット制御装置が行うソケット受信処理の処理手順を示すフローチャート。
【図４】従来例におけるロボットシステムを構成する構成要素間の接続の態様を示すブロック図。
【発明を実施するための形態】
【００１９】
本発明におけるロボット制御装置及びロボットシステムの一実施形態を図１〜３を参照して以下に説明する。まず、ロボット制御装置が実行する制御プログラム、及び画像処理装置が実行する制御プログラムの各々が開発される際の外部コンピューターとしての開発用コンピューターと各装置との接続の態様をロボット制御装置の構成とともに図１を参照して説明する。
［ロボットシステムの構成］
【００２０】
ロボットシステムを構成するロボット制御装置１０には、先の図４で説明した産業用ロボット５１と開発用コンピューター５３と画像処理装置５４とが各別に接続されている。
【００２１】
ロボット制御装置１０を構成するコントローラー統括部１１のコマンド処理部１１ａには、ロボット制御装置１０が周辺機器と通信するための各種の通信コマンドやロボット制御装置１０が産業用ロボット５１を動かすための各種のコマンドが規定されている。コントローラー統括部１１は、該コントローラー統括部１１に入力されるコマンドをコマンド処理部１１ａで解釈し、該コマンドに対応付けられた処理を実行する。
【００２２】
シーケンス制御部１３は、産業用ロボット５１によるワークの保持、搬送、載置、受け渡し、これら動作の切替え等、産業用ロボット５１が実行する動作の順序を制御する。そして、シーケンス制御部１３は、コントローラー統括部１１からの指令に応じた順序で産業用ロボット５１を動作させるべく、順次、動作指示を生成して該動作指示をロボット制御部１４に出力する。
【００２３】
ロボット制御部１４は、産業用ロボット５１に搭載されたモーターの回転位置や該モーターの目標位置に基づいて、シーケンス制御部１３が出力する動作指示に応じた位置指令を生成する。そして、ロボット制御部１４は、位置指令に応じた駆動電流を生成して産業用ロボット５１に搭載されたモーターに該駆動電流を供給する。
【００２４】
第１通信デバイス１６は、スレーブデバイスの１つであるＵＳＢデバイスであって、開発用コンピューター５３のＵＳＢバスとの電気的なインターフェースとして機能する。通信デバイス制御部１５は、コントローラー統括部１１とのインターフェースであるＵＳＢコントローラーであって、送信単位のデータの形式や受信単位のデータの形式、誤り検出の方法等を規定する。なお、これら第１通信デバイス１６及び通信デバイス制御部１５によって第１通信部が構成されている。
【００２５】
そして、開発用コンピューター５３のＵＳＢバスに第１通信デバイス１６が接続されると、通信デバイス制御部１５は、第１通信デバイス１６の状態遷移を初期化する。次いで、通信デバイス制御部１５は、開発用コンピューター５３に第１通信デバイス１６の機能を通知して、開発用コンピューター５３に第１通信デバイス１６を正しく認識させる。例えば、通信デバイス制御部１５は、該通信デバイス制御部１５に規定された転送モードを開発用コンピューター５３に通知する。これにより、開発用コンピューター５３が該転送モードを認識することによって、これら開発用コンピューター５３とロボット制御装置１０との間の転送モードが確定する。また、通信デバイス制御部１５は、開発用コンピューター５３が行う処理要求の問い合せに応答して一定の条件が満たされた場合にデータの送信を実行する。
【００２６】
第２通信デバイス１８は、イーサネットネットワークを介してサーバー５６に接続されるイーサネットデバイスであって、イーサネットネットワークとのネットワークインターフェースとして機能する。ソケット管理部１７は、コントローラー統括部１１とのインターフェースであって、各種のコマンドを解釈する上記コマンド処理部１１ａからの指令に従ってソケットを管理する。データバッファー１９には、第２通信デバイス１８で受信された画像処理データがソケット管理部１７の判断に基づいて格納され、複数回の受信分の画像処理データ群が蓄えられる。なお、これら第２通信デバイス１８及びソケット管理部１７によって第２通信部が構成されている。
【００２７】
そして、開発用コンピューター５３からロボット制御装置１０にデータ送信要求が送信されると、ソケット管理部１７は、データ送信要求に含まれるオープンコマンドをコマンド処理部１１ａが処理することにより、該コマンド処理部１１ａの指示に従って第２通信デバイス１８の通信ポートをオープンする。すなわち、第２通信デバイス１８と画像処理装置５４とが通信を開始できる状態にする。なお、コマンド処理部１１ａの指示が第２通信デバイス１８に出力される以前は、通常、通信ポートがクローズされており、この状態から通信ポートがオープンされただけでは、第２通信デバイス１８と画像処理装置５４との通信は行われない。第２通信デバイス１８と画像処理装置５４とが通信する際は、まず、第２通信デバイス１８の通信ポートがオープンされ、次いでロボット制御装置１０が第２通信デバイス１８を介してサーバー５６の指定ポートを指定することで、ロボット制御装置１０と画像処理装置５４とが接続され、これらの通信が開始される。すなわち、ロボット制御装置１０のＩＰアドレスと通信ポートのポート番号とからなるソケットがソケット管理部１７で生成される。次いで、ソケット管理部１７は、生成されたソケットを用いてサーバーに接続を要求してサーバーとの接続を確立する。そして、ソケット管理部１７は、このようにして接続が確立されたソケットを通じてサーバー５６との間でデータの送信及び受信を実行する。
［ロボットシステムの作用］
【００２８】
次に、上述したロボット制御装置１０の実行する制御プログラム、及び画像処理装置５４の実行する制御プログラムの各々が開発される際に行われるロボット制御装置１０でのソケット送信処理及びソケット受信処理について図２及び図３を参照して説明する。なお、上述した制御プログラムの作成は、該作成を行うためのアプリケーションプログラムが開発用コンピューター５３で読み出され、該アプリケーションプログラムが開発用コンピューター５３で実行されることにより開始される。
【００２９】
まず、ロボット制御装置１０で行われるソケット送信処理について図２を参照して説明する。図２に示されるように、サーバー５６に対しロボット制御装置１０へ画像処理データを送信するためのデータ送信要求が、開発用コンピューター５３からＵＳＢを介して第１通信デバイス１６に送信される。この際、通信デバイス制御部１５は、第１通信デバイス１６の受信したデータ受信要求を処理し、データ受信要求に含まれるオープンコマンド及び動作コマンドをコマンド処理部１１ａに出力する。
【００３０】
コマンド処理部１１ａは、通信デバイス制御部１５の出力したオープンコマンドを解釈し、第２通信デバイス１８の通信ポートをソケット管理部１７にオープンさせる。さらに、ソケット管理部１７は、オープンした通信ポートのポート番号とロボット制御装置１０に付与されているＩＰアドレスとを用いてソケットを生成し、ロボット制御装置１０とサーバー５６とを接続する（ステップＳ１１）。そして、ロボット制御装置１０とサーバー５６との接続が確立すると、コマンド処理部１１ａは、通信デバイス制御部１５の出力した動作コマンドを解釈し、シーケンス制御部１３及びロボット制御部１４を通じて産業用ロボット５１を駆動し、第２通信デバイス１８を通じて画像処理装置５４を駆動する。
【００３１】
このような態様によれば、開発用コンピューター５３の送信するオープンコマンドによって、ロボット制御装置１０における第２通信デバイスの通信ポートがオープンされてロボット制御装置１０と画像処理装置５４との通信が可能になる。そのため、開発用コンピューター５３と画像処理装置５４との通信がロボット制御装置１０を介して可能になる。すなわち、ロボット制御装置１０を用いた制御プログラムの作成と画像処理装置５４を用いた制御プログラムの作成とを、１つの開発用コンピューター５３によって実現することが可能となる。そのため、これらの制御プログラムを作成するための通信路を１つの開発用コンピューター５３に対して確保するだけで足りることになる。
【００３２】
次いで、通信デバイス制御部１５は、第１通信デバイス１６の受信したデータ送信要求を処理して送信コマンドをコマンド処理部１１ａに転送し、コマンド処理部１１ａは、送信コマンドを解釈してソケット管理部１７に以下の処理を実行させる。
【００３３】
すなわち、ソケット管理部１７は、データバッファー１９に格納された画像処理データまたは画像処理データ群の容量をデータバッファー１９から取得し、開発用コンピューター５３の指定した容量で画像処理データが送信されたか否かを判断する（ステップＳ１２）。そして、データバッファー１９に格納された画像処理データが予め指定された容量で送信された場合、コントローラー統括部１１及び通信デバイス制御部１５を通じて、画像処理データの送信が成功している旨の応答を第１通信デバイス１６から送信する（ステップＳ１６）。
【００３４】
一方、データバッファー１９に格納された画像処理データが予め指定された容量まで送信されていない場合、ソケット管理部１７は、画像処理データの送信要求を示すパケットをサーバー５６へ送信する（ステップＳ１３）。次いで、ソケット管理部１７は、パケットの送信が成功したか否かを判断し、該パケットの送信が失敗している場合には、コントローラー統括部１１及び通信デバイス制御部１５を通じて、今回のデータ送信要求が失敗したことを示すパケットを第１通信デバイス１６へ送信する。これに対して、サーバー５６へのパケットの送信が成功している場合には、ソケット管理部１７は、再びデータバッファー１９に格納された画像処理データ群の容量を取得し、その後、該画像処理データ群の容量が指定された容量に足りるまで、サーバー５６へのパケットの送信（ステップＳ１３）、該送信が成功したか否かの判断（ステップＳ１４）を繰り返す。
【００３５】
次に、ロボット制御装置１０で行われるソケット受信処理について図３を参照して説明する。図３に示されるように、まず、データ受信要求が、開発用コンピューター５３から第１通信デバイス１６に送信される（ステップＳ２１）。次いで、ソケット管理部１７は、データバッファー１９に格納された画像処理データ群の容量をデータバッファー１９から取得し、該格納された画像処理データ群が開発用コンピューター５３の指定した容量よりも小さいか否かを判断する（ステップＳ２２）。すなわち、データバッファー１９に格納された画像処理データ群が開発用コンピューター５３に送信するべき容量か否かを判断する。そして、データバッファー１９に格納された画像処理データ群の容量が予め指定された容量に足る場合には、該格納された画像処理データ群の受信が成功している旨を、コントローラー統括部１１及び通信デバイス制御部１５を通じて第１通信デバイス１６に送信させる（ステップＳ２８）。
【００３６】
一方、データバッファー１９に格納された画像処理データまたは画像処理データ群の容量が予め指定された容量に満たない場合には、ソケット管理部１７は、画像処理データが含まれるパケットをサーバー５６に要求して受信する（ステップＳ２３）。次いで、ソケット管理部１７は、パケットの受信が成功したか否かを判断し、該パケットの受信が失敗している場合には、データバッファー１９に画像処理データが格納されているか否かを判断する（ステップＳ２６）。そして、データバッファー１９に画像処理データが格納されていない場合には、今回のデータ受信要求に対する処理が失敗したことを示すパケットを、コントローラー統括部１１及び通信デバイス制御部１５を通じて第１通信デバイス１６に送信させる。これに対し、データバッファー１９に画像処理データが格納されている場合には、データバッファー１９に格納されている画像処理データまたは画像処理データ群を、コントローラー統括部１１及び通信デバイス制御部１５を通じて第１通信デバイス１６に送信させる。
【００３７】
一方、サーバー５６からのパケットの受信が成功している場合には、受信したパケットを処理して該パケットに含まれる画像処理データをデータバッファー１９に格納する（ステップＳ２４，Ｓ２５）。そして、ソケット管理部１７は、再びデータバッファー１９に格納された画像処理データ群の容量を取得し、その後、該画像処理データの容量が指定された容量に足りるまで、サーバー５６からのパケットの受信（ステップＳ２３）、該受信が成功したか否かの判断（ステップＳ２４）、受信した画像処理データの格納（ステップＳ２５）を繰り返す。
【００３８】
この際、第１通信デバイス１６と開発用コンピューター５３との間の通信速度が、第２通信デバイス１８と画像処理装置５４との間の通信速度よりも小さくなることは少なくない。また、第１通信デバイス１６と開発用コンピューター５３との間の通信サイクルが、第２通信デバイス１８と画像処理装置５４との間の通信サイクルよりも大きくなることも少なくない。第２通信デバイス１８の受信した画像処理データが受信サイクルごとに第１通信デバイス１６から送信されるデータ転送の態様では、このように通信速度や通信サイクルが互いに異なると、第２通信デバイス１８の複数回受信する画像処理データの一部が第１通信デバイス１６から送信され難くなる。
【００３９】
この点、上述のような通信の態様によれば、データバッファー１９が複数回の受信分の画像処理データを蓄え、該データバッファー１９の蓄えられた画像処理データを第１通信デバイス１６が開発用コンピューター５３に送信することになる。そのため、上述のように通信速度や通信サイクルが互いに異なる場合に、所定の受信サイクルで第２通信デバイス１８の受信した画像処理データが第１通信デバイス１６から送信され難くなることを抑えることが可能である。
上記実施形態によれば、以下のような効果を得ることができる。
【００４０】
（１）１つの開発用コンピューター５３と画像処理装置５４との通信がロボット制御装置１０を介して可能になる。このような接続の態様であれば、ロボット制御装置１０に対する制御プログラムの作成と画像処理装置５４に対する制御プログラムの作成とを、１つの開発用コンピューター５３によって実現することが可能となる。そのため、これらのプログラムを作成するための通信路を１つの開発用コンピューター５３について確保するだけで足りることになる。それゆえに、産業用ロボット５１の動きを制御するプログラムの開発に際して各種装置の接続の態様や各種装置の設定の簡素化を図ることの可能となる。
【００４１】
（２）データバッファー１９が複数回の受信分の画像処理データを蓄え、該データバッファー１９に蓄えられた画像処理データを第１通信デバイス１６が開発用コンピューター５３に送信することになる。そのため、ロボット制御装置１０と開発用コンピューター５３との間の通信速度と、ロボット制御装置１０と画像処理装置５４との間の通信速度とが互いに異なる場合に、第２通信デバイス１８の受信した画像処理データが第１通信デバイス１６から送信され難くなることを抑えることが可能である。また、ロボット制御装置１０と開発用コンピューター５３との間の通信サイクルと、ロボット制御装置１０と画像処理装置５４との間の通信サイクルとが互いに異なる場合であっても、同様の効果を得ることが可能である。
【００４２】
（３）開発用コンピューター５３をホストとする第１通信デバイス１６により開発用コンピューター５３とロボット制御装置１０とが通信するため、開発用コンピューター５３とロボット制御装置１０との通信に関わる各機器の設定がより簡便なものとなる。
【００４３】
（４）ロボット制御装置１０が通信方式の互いに異なる２つの通信デバイス１６，１８を有するため、ロボット制御装置１０で制御プログラムを作成する際の利便性の向上、画像処理装置５４で制御プログラムを作成する際の利便性の向上、これらの他、ロボット制御装置１０そのものの通信方式の多様性を広げることが可能となる。
なお、上記実施形態は、以下のように変更して実施することもできる。
【００４４】
・ロボット制御装置１０と画像処理装置５４との通信には、各種産業用のイーサネットの他、サーバーを介してロボット制御装置１０と画像処理装置５４との通信を可能にする通信方式であれば、例えば１０Ｂａｓｅ−Ｔや１００Ｂａｓｅ−Ｔ等の無線ＬＡＮを用いることも可能である。このような構成であっても、上記（１）〜（４）に準じた効果を得ることは可能である。
【００４５】
・開発用コンピューター５３とロボット制御装置１０との通信には、ＳＡＴＡ（Serial Advanced Technology Attachment）、ＳＡＳ（Serial Attached Small computer system interface）、ＲＳ−２３２Ｃ、ＩＥＥＥ１３９４等を用いることも可能である。このような構成であっても、上記（１）〜（４）に準じた効果を得ることは可能である。
【００４６】
・開発用コンピューター５３とロボット制御装置１０との通信には、上述した各種のイーサネットを用いることも可能であり、要は、ロボット制御装置におけるコマンド処理部が、第１通信部の受信するオープンコマンドを解釈して第２通信部の通信ポートをオープンし、ネットワーク上のサーバーを介して画像処理装置との通信を第２通信部に開始させる構成であればよい。このような構成であれば、上記（１）〜（３）に準じた効果の他、開発用コンピューター５３とロボット制御装置１０との間の通信サイクルを短くすることが可能でもある。
【００４７】
・データバッファー１９が割愛され、第２通信部の受信ごとに該画像処理データが第１通信部から開発用コンピューター５３に送信される構成であってもよい。このような構成であっても、上記（１）、（３）、（４）に準じた効果を得ることは可能である。
【符号の説明】
【００４８】
１０，５２…ロボット制御装置、１１…コントローラー統括部、１１ａ…コマンド処理部、１３…シーケンス制御部、１４…ロボット制御部、１５…通信デバイス制御部、１６…第１通信デバイス、１７…ソケット管理部、１８…第２通信デバイス、１９…データバッファー、５１…産業用ロボット、５３，５５…開発用コンピューター、５４…画像処理装置、５６…サーバー。
【図１】
0005895420.tif 000002
【図２】
0005895420.tif 000003
【図３】
0005895420.tif 000004
【図４】
0005895420.tif 000005