ワーク検出手段が検出したワークをハンドで把持して移動させる取り出し動作を、アームの先端に前記ハンドが設置されたロボットに行わせるロボット制御装置であって、前記ハンドと周囲環境との干渉が生じない非干渉領域と、前記ワークを把持する際に前記ハンドが通過する可能性のあるワーク領域とを、それぞれパラメータとして記憶するパラメータ記憶手段と、前記取り出し動作の手順に従って記述された命令列を含む動作記述プログラムを実行し、前記ロボットに前記アームを駆動させて前記ハンドを移動させるプログラム実行手段と、前記パラメータ記憶手段から前記ワーク領域のパラメータを読み出し、前記ワーク検出手段から取得した前記ワークの位置及び姿勢に基づいて、前記ワーク領域の位置及び向きを演算するワーク領域演算手段と、前記パラメータ記憶手段から前記非干渉領域のパラメータを読み出して、前記非干渉領域を除いた周囲環境領域と前記ワーク領域演算手段によって位置及び向きが演算された前記ワーク領域との重複部分を演算する重複部分演算手段と、前記周囲環境領域と前記ワーク領域演算手段によって位置及び向きが演算された前記ワーク領域とに重複部分が存在している場合、前記ワーク領域内に前記ハンドが進入した際に、干渉時動作として予め規定された動作を実行する干渉時動作実行手段とを有することを特徴とするロボット制御装置。前記動作記述プログラムは、領域干渉確認動作実行命令を含み、前記ワーク領域演算手段、前記重複部分演算手段及び前記干渉時動作実行手段は、前記領域干渉確認動作実行命令が前記プログラム実行手段によって実行された際に作動することを特徴とする請求項1記載のロボット制御装置。前記ワーク領域演算手段、前記重複部分演算手段及び前記干渉時動作実行手段を、前記プログラム実行手段が前記動作記述プログラムを実行する間作動させるように動作モードを指定する手段を有することを特徴とする請求項1記載のロボット制御装置。前記干渉時動作は、前記ハンドの移動の中止であることを特徴とする請求項1記載のロボット制御装置。ティーチングボックスから入力される指令に基づいて前記ロボットに前記アームを駆動させ、前記ハンドを移動させる手段を有することを特徴とする請求項1記載のロボット制御装置。前記パラメータ記憶手段は、前記非干渉領域のパラメータを複数記憶可能であり、前記干渉時動作実行手段は、前記パラメータ記憶手段にパラメータが記憶された複数の前記非干渉領域のいずれにも含まれない領域を周囲干渉領域として作動することを特徴とする請求項1から5のいずれか1項記載のロボット制御装置。しかしながら、上空位置から把持位置へ移動する際には、アームの姿勢及び移動方向は決まっている。したがって、上空位置から把持位置へ移動の際の周囲環境との干渉を検討するにあたっては、上記特許文献のように、複数の空間錘による把持位置を中心とした多面体で、全方位について周囲環境との干渉を検討すると、ロボット処理装置の処理負荷が増大し、処理が遅くなってしまうという問題があった。本発明は、上記に鑑みてなされたものであって、周囲環境に合わせて動作記述プログラムを変更する必要のないロボット制御装置を得ることを目的とする。上述した課題を解決し、目的を達成するために、本発明は、ワーク検出手段が検出したワークをハンドで把持して移動させる取り出し動作を、アームの先端に前記ハンドが設置されたロボットに行わせるロボット制御装置であって、ハンドと周囲環境との干渉が生じない非干渉領域と、ワークを把持する際にハンドが通過する可能性のあるワーク領域とを、それぞれパラメータとして記憶するパラメータ記憶手段と、取り出し動作の手順に従って記述された命令列を含む動作記述プログラムを実行し、ロボットにアームを駆動させてハンドを移動させるプログラム実行手段と、パラメータ記憶手段からワーク領域のパラメータを読み出し、ワーク検出手段から取得したワークの位置及び姿勢に基づいて、ワーク領域の位置及び向きを演算するワーク領域演算手段と、パラメータ記憶手段から非干渉領域のパラメータを読み出して、非干渉領域を除いた周囲環境領域とワーク領域演算手段によって位置及び向きが演算されたワーク領域との重複部分を演算する重複部分演算手段と、周囲環境領域とワーク領域演算手段によって位置及び向きが演算されたワーク領域とに重複部分が存在している場合、ワーク領域内にハンドが進入した際に、干渉時動作として予め規定された動作を実行する干渉時動作実行手段とを有することを特徴とする。本発明にかかるロボット制御装置は、ハンドが進入すると周囲環境との干渉が生じる干渉領域と、ワークを把持する際にハンドが通過しうるワーク領域の形状とをパラメータとして動作記述プログラムとは別個に設定できるため、周囲環境に合わせて動作記述プログラムを変更する必要がないという効果を奏する。以下に、本発明にかかるロボット制御システムの実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。実施の形態.図1は、本発明にかかるロボット制御装置の実施の形態を用いたロボット制御システムの構成を示す図である。ロボット制御システムは、三次元ビジョンセンサ1、ティーチングボックスT/B2、コンピュータ3、ロボット制御装置4及びロボット5を備え、ロボット5でワーク6を把持して移動させる動作を行う。ワーク検出手段としての三次元ビジョンセンサ1は、撮像により画像データを生成する撮像部11と、撮像部11が生成した画像データを処理してロボットの座標データを生成するロボット座標生成部12とを有する。ロボット制御装置4は、三次元ビジョンセンサ1やT/B2、コンピュータ3とのデータの送受信のためのインタフェースI/F41と、各種のパラメータ421、動作記述プログラム422及び制御プログラム423を格納する記憶部42と、動作記述プログラム422や制御プログラム423を実行する制御部43と、ロボット5が備えるサーボモータへ制御信号を出力するサーボアンプ44とを有する。パラメータ421は、後段で説明する初期設定によってパラメータ記憶手段としての記憶部42に記憶される。動作記述プログラム422は、三次元ビジョンセンサ1が検出したワーク6をハンド51で把持して移動させる取り出し動作をロボット5に行わせる自動運転ための動作を記述したプログラムリストであり、取り出し動作の手順に従って記述された命令列コマンド列を含んでいる。制御プログラム423は、動作記述プログラム422中で実行されるコマンド又はT/B2による操作に応じてロボット5に動作をさせるためにサーボアンプ44へ送る命令を示す。サーボアンプ44は、ロボット5に搭載された不図示のサーボモータを駆動して、ロボット5に所定の動作を実行させる。コンピュータ3は、パラメータ421などのデータの入力や、動作記述プログラム423の作成、後段で説明する警告表示などを行うユーザインタフェースとして用いられる。T/B2は、手動操作でロボット5を制御するための入力インタフェースである。ロボット5は、ワーク6を把持するためのハンド51と、ハンド51を非干渉領域内の任意の位置へ移動させるためのアーム52と、ハンド51やアーム52を動作させるサーボモータ53とを有する。ハンド51及びアーム52は、サーボモータ53がサーボアンプ44からの制御信号で駆動されることによって動作する。上記構成において、動作記述プログラム422中のハンド51を所定位置へ動かすコマンドを実行する場合には、制御部43は制御プログラム423として記憶されている命令によって、サーボアンプ44に指令を送って制御信号を出力させ、ロボット5のサーボモータ53を駆動させてアーム52を動かすことによりハンド51を移動させる。初期設定では、非干渉領域、ワーク領域、干渉時動作及び領域干渉確認の実行の有無が設定される。周囲環境と干渉を生じることなくハンドを移動させることが可能な領域である非干渉領域は初期設定によってパラメータ421として記憶部42に設定される。非干渉領域は、座標位置や寸法を数値として指定することで設定される。図2は、非干渉領域の設定の一例を示す図である。ロボット5の座標系がXYZABCの6軸座標系であるならば、座標空間内に2点を指定する図2では、PA及びPBことで、指定した2点を頂点として含む直方体を非干渉領域として設定できる。ここで、X、Y、Zは、座標基準位置例えばアーム52の付け根からのX方向、Y方向、Z方向の距離であり、A、B、Cは、X座標軸、Y座標軸、Z座標軸の回転角度である。これにより、非干渉領域を除いた空間が周囲環境領域干渉領域として間接的に設定される。なお、非干渉領域を複数設定することにより、複雑な形状の周囲環境領域を設定することも可能である。ワーク領域は、三次元ビジョンセンサ1で検出したワーク6を把持する際にハンド51が通過する可能性があると見なす領域であり、三次元ビジョンセンサ1で検出したワークの位置を基準としてどのような形状立方体、円柱、円錐など及び大きさとするかが設定される。空間内での幾何学図形状の領域の定義には公知の方法を適用可能である。例えば、円錐状の領域を定義する場合には、高さ及び底面半径と、軸方向とを指定すれば良い。図3Aは、ワーク領域を立方体形状に設定する一例を示す図である。図3Bは、ワーク領域を円柱形状に設定する一例を示す図である。図3Cは、ワーク領域を円錐形状に設定する一例を示す図である。図3Dは、ワーク領域を頂点側が除かれた部分円錐形状テーパ柱形状に設定する一例を示す図である。図4は、傾いていないワーク6をハンド51が取り出す状態の一例を示す図である。ワーク6が傾いていない場合には、ハンド51はワーク6の鉛直上方の所定の距離離れた取り出し上空位置に配置された後に、把持位置まで移動してワーク6を把持する。したがって、この場合には、ワーク領域はワーク6の鉛直上方に設けられる。図5は、傾いているワーク6をハンド51が取り出す状態の一例を示す図である。ワーク6が傾いている場合には、ハンド51はワーク6の傾きに合わせて傾けられた状態でワーク6の垂線方向の所定距離離れた取り出し上空位置に配置された後に、把持位置まで移動してワーク6を把持する。したがって、この場合には、ワーク領域はワーク6の斜め上方に設けられる。図6は、ワーク6を取り出す際にハンドが周囲環境と干渉する状態の一例を示す図である。ワーク6が傾いている場合、把持位置や取り出し上空位置において周囲環境と干渉しなくても、取り出し上空位置やそこから把持位置へ移動する際にハンド51が周囲環境と干渉する可能性がある。周囲環境領域とワーク領域とが重複する部分が存在する場合、すなわち、ワーク領域が非干渉領域からはみ出る場合には、ハンド51が周囲環境と干渉する可能性があると判断できる。図7は、周囲環境領域とワーク領域とが重複する部分が存在する場合の一例を示す図であり、ワーク6の斜め上方に設けられたワーク領域30は、非干渉領域20からはみ出しており、ハンド51は周囲環境と干渉している。図8は、周囲環境領域とワーク領域とが重複する部分が存在しない場合の一例を示す図であり、ワーク6の斜め上方に設けられたワーク領域30は、非干渉領域20からはみ出しておらず、ハンド51が周囲環境と干渉する可能性がないと判断できる。干渉時動作は、ハンド51を移動させると周囲環境との干渉が生じる可能性がある場合に干渉時動作としてどのような処理を行うかの設定であり、例えば、エラー停止によりハンド51の移動を停止させる処理や、警告表示を行った上でハンド51の移動を継続させる処理などを設定する。領域干渉確認有りとする領域干渉確認動作モードとする設定がなされた場合、自動運転時は動作記述プログラム422の記述によらず、ハンド51を移動させる際に常に領域干渉確認動作を行う。領域干渉確認無しとの設定がなされた場合、領域干渉確認動作は行わない。ただし、動作記述プログラム422に領域干渉確認開始命令が含まれている場合には、その命令の実行後は動作記述プログラム422中の領域干渉確認終了命令が実行されるまで、領域干渉確認動作を実行する。このように動作記述プログラム422中の領域干渉確認命令にしたがって領域干渉確認動作を行う場合には、非干渉領域及び周辺環境の領域設定は、動作記述プログラム422中で行うことも可能である。なお、パラメータ421と動作記述プログラム422との両方で非干渉領域及び周辺環境の領域を設定することも可能である。また、ワーク領域の設定に関しても、動作記述プログラム422による設定も可能である。図9は、初期設定の流れを示す図である。まず、コンピュータ3を介して領域パラメータや干渉時動作などを入力し、記憶部42にパラメータ421を記憶させるステップS101。また、領域干渉確認実行の有無の設定についてもパラメータ421として記憶部42に記憶させるステップS102。これらの設定が完了した後、制御部43は、領域干渉確認動作の実行をする設定がなされたか否かを確認するステップS103。領域干渉確認動作を行わない設定の場合はステップS103/No、初期設定は終了する。領域干渉確認動作を実行する設定がされた場合にはステップS103/Yes、外部環境とワーク領域との両方がパラメータ421として設定されているか否かを確認しステップS104、これらの少なくとも一方が設定されていない場合にはステップS104/No、領域干渉確認動作を実行できない旨をエラー表示した上で領域干渉確認動作の実行の設定を無効に変更してステップS105、初期設定を終了する。両方が設定されている場合はステップS104/Yes、領域干渉確認動作が可能であるため、エラー表示は行わずに初期設定を終了する。次に、ロボット5の自動運転時の動作について説明する。制御部43がプログラム実行手段として機能し、動作記述プログラム422を実行することにより、ロボット5は、動作記述プログラム422に従った手順で、三次元ビジョンセンサ1が位置及び姿勢傾きを検出したワーク6に対して取り出し作業を行うべく動作する。パラメータ421や動作記述プログラム422によって設定された領域に基づく領域干渉確認動作を有効にすることで、制御部43はワーク領域演算手段として機能し、ワーク領域を演算する。また、制御部43は、重複部分演算手段としても機能し、周囲環境領域とワーク領域との重複部分を演算する。制御部43は、ハンド51を上空位置へ移動させる際に、領域演算結果に基づいてハンド51が周囲環境と干渉することなく動作可能であるか否かを判断し、移動可能な場合はエラー出力することなく継続して作業を進める。ハンド51が周囲環境と干渉する可能性がある場合には、制御部43は干渉時動作実行手段として機能し、ハンド51がワーク領域に入った時点で干渉時動作として指定された動作ロボット5のエラー停止、警告表示などを行う。図10は、動作記述プログラム422の一例を示す図である。図10において動作記述プログラム422には、非干渉領域内の所定の位置P0にハンド51を移動させたのち、上空位置P1にハンドを移動させ、さらに把持位置P2にハンド51を移動させてからハンド51でワーク6を把持し、上空位置P1にハンド51を移動させる動作が記述されている。この例においては動作記述プログラム422中に領域干渉確認動作の開始及び終了の命令領域干渉確認動作実行命令が含まれているため、パラメータ421による設定に関わらず、P0から上空位置P1へハンド51を移動させる際と、上空位置P1から把持位置P2へハンド51を移動させる際には領域干渉確認動作を実行する。図11は、領域干渉確認動作時のロボット制御装置4の動作の流れを示す図である。領域干渉確認動作中でない場合、処理を行うことなく終了するステップS201/No。領域干渉確認動作を開始するとステップS201/Yes、制御部43は、ワーク領域演算手段として機能し、三次元ビジョンセンサ1から入力されたワークの座標位置と、パラメータ421又は動作記述プログラム422に設定されている形状に基づいてワーク領域を算出する。また、制御部43は、重複部分演算手段としても機能し、周囲環境領域を間接的に設定する非干渉領域のパラメータ421を記憶部42から読み出し、周囲環境領域とワーク領域との重複部分を演算するステップS202。次に、制御部43は、状態変数の値を確認するステップS203。状態変数は、ワーク領域と周囲環境領域とに重複する部分があり、かつ、ハンド51の現在位置がワーク領域内である場合に1となり、それ以外の場合に0となる変数である。状態変数の初期値は0であるとする。状態変数が0である場合にはステップS203/0、ハンド51が移動しても周囲環境と干渉する可能性はないため、制御部43はサーボアンプ44を用いてロボット5のサーボモータを駆動し、アーム52を動かしてハンド51を移動させるステップS204。ハンド51を移動させた後、制御部43は動作記述プログラム422で指定された位置にハンド51が到達したか否かを判断するステップS205。動作記述プログラム422で指定された位置にハンド51が到達したならばステップS205/Yes、処理を終了する。動作記述プログラム422中の命令で指定された位置にハンド51が到達していない場合ステップS205/No、ワーク領域と周囲環境領域とに重複する部分があり、かつ、ハンド51の現在位置がワーク領域内であるか否かを確認するステップS206。ワーク領域と周囲環境領域とに重複する部分があり、かつ、ハンド51の現在位置がワーク領域内である場合にはステップS206/Yes、状態変数に1を設定しステップS207、そうでなければステップS206/No、状態変数に0を設定するステップS208。その後、ステップS203に戻る。状態変数を確認した際に、値が1であった場合はステップS203/1、パラメータ421として設定されている干渉時動作を確認するステップS209。干渉時動作がエラーである場合にはステップS209/エラー、ハンド51を動かさずに処理を終了する。干渉時動作をこのように設定した場合には、周囲環境と干渉する可能性がある領域内でハンド51を移動させないようにすることができる。よって、ハンド51が周囲環境と干渉して破損することを防止し、ロボット5の長期使用が可能となる。また、ハンド51の交換の必要が少なくなるため、生産設備としての環境負荷を低減できる。また、干渉時動作が信号出力である場合にはステップS209/信号出力、周囲環境と干渉する可能性がある領域内でハンド51が移動していることを警告表示しステップS210、その上でアームを動かしてハンド51を移動させるステップS204。周囲環境領域とワーク領域とに重複する部分がある場合でも、ハンド51が実際に周囲環境と干渉するとは限らないため、干渉時動作をこのように設定して警告表示を行った上でハンド51の移動を継続することで、作業能率を高めることができる。ハンド51が周囲環境と干渉するとしても、事前に警告表示がなされているため、実際に干渉を生じる前にT/B2からの操作でハンド51の移動を停止させたり、干渉発生後速やかにハンド51の移動を停止させることが可能となる。なお、干渉時動作として無効を設定することも可能であり、この場合には、状態変数の値に関わらずアーム52を動かしてハンド51を移動させる。ここでは、動作記述プログラム422を実行して自動運転する場合を例として説明したが、T/B2の操作によって制御プログラム43を動作させてサーボアンプ44へ制御信号を送る手動運転時も、初期設定において領域干渉確認動作を実行可能な設定がなされているならば、状態変数に応じてハンド51の移動を停止させたり、警告表示を行うことが可能である。このため、T/B2での操作によって干渉しない領域へロボット5を移動させた上で、プログラムの変更や修正を行うことが容易である。このように、本実施の形態においては、プログラム作成者は、ロボットの干渉状態を配置された周囲環境に応じて個別に干渉条件を毎回演算して求める必要はなく、ロボットの状態変数を確認することで容易に作成することが可能となる。さらに、状態変数は、プログラム作成用のコンピュータにおいて容易に確認可能であり、三次元立体図として可視化して確認できる。