(57)【特許請求の範囲】
【請求項１】
ワークに対して加工を行うロボットと、
前記ロボットを制御するコントローラと、を備え、
前記ロボットは、
互いに直列に接続された旋回部、第１腕部、第２腕部、手首部及び先端部と、
前記旋回部を第１軸線まわりに旋回させる第１アクチュエータと、
前記第１腕部を第２軸線まわりに揺動させる第２アクチュエータと、
前記第２腕部を第３軸線まわりに揺動させる第３アクチュエータと、
前記先端部の姿勢を調節する複数の姿勢調節アクチュエータと、
前記第２軸線及び前記第３軸線の間の距離を調節する距離調節アクチュエータと、を有し、
前記コントローラは、
前記先端部の位置・姿勢の目標値を取得する目標取得部と、
前記距離調節アクチュエータの動作目標値を固定した条件にて、前記位置・姿勢の目標値に対応する前記第１〜第３アクチュエータ及び前記複数の姿勢調節アクチュエータの動作目標値を算出する第１算出部と、
前記第１〜第３アクチュエータ及び前記複数の姿勢調節アクチュエータの少なくともいずれかを判定対象とし、前記判定対象のアクチュエータについて、当該アクチュエータにより駆動される部分の動作量が可動範囲内であるか否かを判定する判定部と、
少なくとも一つの前記判定対象のアクチュエータについて前記動作量が前記可動範囲外となった場合に、当該動作量が前記可動範囲内に収まるように、前記距離調節アクチュエータの動作目標値を算出し、当該動作目標値を固定した条件にて、前記位置・姿勢の目標値に対応する前記第１〜第３アクチュエータ及び前記複数の姿勢調節アクチュエータの動作目標値を算出する第２算出部と、
前記動作目標値に応じて前記第１〜第３アクチュエータ、前記複数の姿勢調節アクチュエータ及び前記距離調節アクチュエータを制御する出力部と、を有する加工装置。
【請求項２】
前記距離調節アクチュエータは、前記第１腕部を距離調節用の軸線まわりに屈曲させることで、前記第２軸線及び前記第３軸線の間の距離を調節する、請求項１記載の加工装置。
【請求項３】
前記距離調節用の軸線は、前記第２軸線に対して平行である、請求項２記載の加工装置。
【請求項４】
前記距離調節用の軸線は、前記第３軸線に対して平行である、請求項３記載の加工装置。
【請求項５】
前記第２算出部は、前記距離調節用の軸線が前記ワークから遠ざかる方向に前記第１腕部を屈曲させるように、前記第１〜第３アクチュエータ、前記複数の姿勢調節アクチュエータ及び前記距離調節アクチュエータの動作目標値を算出する、請求項２〜４のいずれか一項記載の加工装置。
【請求項６】
前記複数の姿勢調節アクチュエータは、前記手首部を第４軸線まわりに旋回させる第４アクチュエータ、前記手首部を第５軸線まわりに揺動させる第５アクチュエータ、及び前記先端部を第６軸線まわりに旋回させる第６アクチュエータである、請求項１〜５のいずれか一項記載の加工装置。
【請求項７】
前記判定部は、前記第２アクチュエータ、前記第３アクチュエータ及び前記第５アクチュエータの少なくともいずれかを前記判定対象とする、請求項６記載の加工装置。
【請求項８】
前記判定部は、前記第３アクチュエータ及び前記第５アクチュエータの少なくともいずれかを前記判定対象とする、請求項７記載の加工装置。
【請求項９】
前記先端部に設けられた溶接装置を更に備える、請求項１〜８のいずれか一項記載の加工装置。
【請求項１０】
ワークに対して加工を行うロボットと、
前記ロボットを制御するコントローラと、を備え、
前記ロボットは、
互いに直列に接続された旋回部、第１腕部、第２腕部、手首部及び先端部と、
前記旋回部を第１軸線まわりに旋回させる第１アクチュエータと、
前記第１腕部を第２軸線まわりに揺動させる第２アクチュエータと、
前記第２腕部を第３軸線まわりに揺動させる第３アクチュエータと、
前記先端部の姿勢を調節する複数の姿勢調節アクチュエータと、
前記第２軸線及び前記第３軸線の間の距離を調節する距離調節アクチュエータと、を有し、
前記コントローラは、
前記先端部の位置・姿勢の目標値を取得すること、
前記距離調節アクチュエータの動作目標値を固定した条件にて、前記位置・姿勢の目標値に対応する前記第１〜第３アクチュエータ及び前記複数の姿勢調節アクチュエータの動作目標値を算出すること、
前記第１〜第３アクチュエータ及び前記複数の姿勢調節アクチュエータの少なくともいずれかを判定対象とし、前記判定対象のアクチュエータについて、当該アクチュエータにより駆動される部分の動作量が可動範囲内であるか否かを判定すること、
少なくとも一つの前記判定対象のアクチュエータについて前記動作量が前記可動範囲外となった場合に、当該動作量が前記可動範囲内に収まるように、前記距離調節アクチュエータの動作目標値を算出し、当該動作目標値を固定した条件にて、前記位置・姿勢の目標値に対応する前記第１〜第３アクチュエータ及び前記複数の姿勢調節アクチュエータの動作目標値を算出すること、
前記動作目標値に応じて前記第１〜第３アクチュエータ、前記複数の姿勢調節アクチュエータ及び前記距離調節アクチュエータを制御すること、を実行するように構成されている、加工装置。
【請求項１１】
請求項１〜１０のいずれか一項記載の加工装置を用い、
前記コントローラに前記位置・姿勢の目標値を入力すること、
前記位置・姿勢の目標値に対応するように前記コントローラにより算出された前記第１〜第３アクチュエータ、前記複数の姿勢調節アクチュエータ及び前記距離調節アクチュエータの動作目標値を前記コントローラに記憶させること、を含む教示方法。
【請求項１２】
互いに直列に接続された旋回部、第１腕部、第２腕部、手首部及び先端部と、
前記旋回部を第１軸線まわりに旋回させる第１アクチュエータと、
前記第１腕部を第２軸線まわりに揺動させる第２アクチュエータと、
前記第２腕部を第３軸線まわりに揺動させる第３アクチュエータと、
前記先端部の姿勢を調節する複数の姿勢調節アクチュエータと、
前記第２軸線及び前記第３軸線の間の距離を調節する距離調節アクチュエータと、を有するロボットを用い、
前記先端部の位置・姿勢の目標値を取得すること、
前記距離調節アクチュエータの動作目標値を固定した条件にて、前記位置・姿勢の目標値に対応する前記第１〜第３アクチュエータ及び前記複数の姿勢調節アクチュエータの動作目標値を算出すること、
前記第１〜第３アクチュエータ及び前記複数の姿勢調節アクチュエータの少なくともいずれかを判定対象とし、前記判定対象のアクチュエータについて、当該アクチュエータにより駆動される部分の動作量が可動範囲内であるか否かを判定すること、
少なくとも一つの前記判定対象のアクチュエータについて前記動作量が前記可動範囲外となった場合に、当該動作量が前記可動範囲内に収まるように、前記距離調節アクチュエータの動作目標値を算出し、当該動作目標値を固定した条件にて、前記位置・姿勢の目標値に対応する前記第１〜第３アクチュエータ及び前記複数の姿勢調節アクチュエータの動作目標値を算出すること、
前記動作目標値に応じて前記第１〜第３アクチュエータ、前記複数の姿勢調節アクチュエータ及び前記距離調節アクチュエータを制御すること、を含むワークの生産方法。
【請求項１３】
互いに直列に接続された旋回部、第１腕部、第２腕部、手首部及び先端部と、前記旋回部を第１軸線まわりに旋回させる第１アクチュエータと、前記第１腕部を第２軸線まわりに揺動させる第２アクチュエータと、前記第２腕部を第３軸線まわりに揺動させる第３アクチュエータと、前記先端部の姿勢を調節する複数の姿勢調節アクチュエータと、前記第２軸線及び前記第３軸線の間の距離を調節する距離調節アクチュエータと、を有するロボットの前記先端部の位置・姿勢の目標値を取得する目標取得部と、
前記距離調節アクチュエータの動作目標値を固定した条件にて、前記位置・姿勢の目標値に対応する前記第１〜第３アクチュエータ及び前記複数の姿勢調節アクチュエータの動作目標値を算出する第１算出部と、
前記第１〜第３アクチュエータ及び前記複数の姿勢調節アクチュエータの少なくともいずれかを判定対象とし、前記判定対象のアクチュエータについて、当該アクチュエータにより駆動される部分の動作量が可動範囲内であるか否かを判定する判定部と、
少なくとも一つの前記判定対象のアクチュエータについて前記動作量が前記可動範囲外となった場合に、当該動作量が前記可動範囲内に収まるように、前記距離調節アクチュエータの動作目標値を算出し、当該動作目標値を固定した条件にて、前記位置・姿勢の目標値に対応する前記第１〜第３アクチュエータ及び前記複数の姿勢調節アクチュエータの動作目標値を算出する第２算出部と、
前記動作目標値に応じて前記第１〜第３アクチュエータ、前記複数の姿勢調節アクチュエータ及び前記距離調節アクチュエータを制御する出力部と、を備えるコントローラ。
【請求項１４】
互いに直列に接続された旋回部、第１腕部、第２腕部、手首部及び先端部と、前記旋回部を第１軸線まわりに旋回させる第１アクチュエータと、前記第１腕部を第２軸線まわりに揺動させる第２アクチュエータと、前記第２腕部を第３軸線まわりに揺動させる第３アクチュエータと、前記先端部の姿勢を調節する複数の姿勢調節アクチュエータと、前記第２軸線及び前記第３軸線の間の距離を調節する距離調節アクチュエータと、を有するロボットの前記先端部の位置・姿勢の目標値を取得すること、
前記距離調節アクチュエータの動作目標値を固定した条件にて、前記位置・姿勢の目標値に対応する前記第１〜第３アクチュエータ及び前記複数の姿勢調節アクチュエータの動作目標値を算出すること、
前記第１〜第３アクチュエータ及び前記複数の姿勢調節アクチュエータの少なくともいずれかを判定対象とし、前記判定対象のアクチュエータについて、当該アクチュエータにより駆動される部分の動作量が可動範囲内であるか否かを判定すること、
少なくとも一つの前記判定対象のアクチュエータについて前記動作量が前記可動範囲外となった場合に、当該動作量が前記可動範囲内に収まるように、前記距離調節アクチュエータの動作目標値を算出し、当該動作目標値を固定した条件にて、前記位置・姿勢の目標値に対応する前記第１〜第３アクチュエータ及び前記複数の姿勢調節アクチュエータの動作目標値を算出すること、
前記動作目標値に応じて前記第１〜第３アクチュエータ、前記複数の姿勢調節アクチュエータ及び前記距離調節アクチュエータを制御すること、を含む制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、加工装置、教示方法、ワークの生産方法、コントローラ及び制御方法に関する。
【背景技術】
【０００２】
特許文献１には、乗用車の車体パネル等をワークとして保持するワーク固定台と、ワークにスポット溶接を施すロボットとを備えるスポット溶接装置が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−２７９４９６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ロボットを用いた加工装置を含む生産設備においては、ロボットを限られたスペースに配置しつつ、ロボットとワーク又は周辺機器等との干渉を防止する必要がある。これを実現するには、ロボットの配置・動作教示を含む生産設備構築に高度の経験・技量を必要とする場合があった。そこで本開示は、容易な生産設備構築を可能とする加工装置、教示方法、ワークの生産方法、コントローラ及び制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００５】
本開示に係る加工装置は、ワークに対して加工を行うロボットと、ロボットを制御するコントローラと、を備え、ロボットは、互いに直列に接続された旋回部、第１腕部、第２腕部、手首部及び先端部と、旋回部を第１軸線まわりに旋回させる第１アクチュエータと、第１腕部を第２軸線まわりに揺動させる第２アクチュエータと、第２腕部を第３軸線まわりに揺動させる第３アクチュエータと、先端部の姿勢を調節する複数の姿勢調節アクチュエータと、第２軸線及び第３軸線の間の距離を調節する距離調節アクチュエータと、を有し、コントローラは、先端部の位置・姿勢の目標値を取得する目標取得部と、距離調節アクチュエータの動作目標値を固定した条件にて、位置・姿勢の目標値に対応する第１〜第３アクチュエータ及び複数の姿勢調節アクチュエータの動作目標値を算出する第１算出部と、第１〜第３アクチュエータ及び複数の姿勢調節アクチュエータの少なくともいずれかを判定対象とし、判定対象のアクチュエータについて動作目標値が許容範囲内であるか否かを判定する判定部と、少なくとも一つの判定対象のアクチュエータについて動作目標値が許容範囲外となった場合に、当該動作目標値が許容範囲内に収まるように、位置・姿勢の目標値に対応する第１〜第３アクチュエータ、複数の姿勢調節アクチュエータ及び距離調節アクチュエータの動作目標値を算出する第２算出部と、動作目標値に応じて第１〜第３アクチュエータ、複数の姿勢調節アクチュエータ及び距離調節アクチュエータを制御する出力部と、を有する。
【０００６】
本開示に係る加工装置は、ワークに対して加工を行うロボットと、ロボットを制御するコントローラと、を備え、ロボットは、互いに直列に接続された旋回部、第１腕部、第２腕部、手首部及び先端部と、旋回部を第１軸線まわりに旋回させる第１アクチュエータと、第１腕部を第２軸線まわりに揺動させる第２アクチュエータと、第２腕部を第３軸線まわりに揺動させる第３アクチュエータと、先端部の姿勢を調節する複数の姿勢調節アクチュエータと、第２軸線及び第３軸線の間の距離を調節する距離調節アクチュエータと、を有し、コントローラは、先端部の位置・姿勢の目標値を取得すること、距離調節アクチュエータの動作目標値を固定した条件にて、位置・姿勢の目標値に対応する第１〜第３アクチュエータ及び複数の姿勢調節アクチュエータの動作目標値を算出すること、第１〜第３アクチュエータ及び複数の姿勢調節アクチュエータの少なくともいずれかを判定対象とし、判定対象のアクチュエータについて動作目標値が許容範囲内であるか否かを判定すること、少なくとも一つの判定対象のアクチュエータについて動作目標値が許容範囲外となった場合に、当該動作目標値が許容範囲内に収まるように、位置・姿勢の目標値に対応する第１〜第３アクチュエータ、複数の姿勢調節アクチュエータ及び距離調節アクチュエータの動作目標値を算出すること、動作目標値に応じて第１〜第３アクチュエータ、複数の姿勢調節アクチュエータ及び距離調節アクチュエータを制御すること、を実行するように構成されている。
【０００７】
本開示に係る教示方法は、上記加工装置を用い、コントローラに位置・姿勢の目標値を入力すること、位置・姿勢の目標値に対応するようにコントローラにより算出された第１〜第３アクチュエータ、複数の姿勢調節アクチュエータ及び距離調節アクチュエータの動作目標値をコントローラに記憶させること、を含む。
【０００８】
本開示に係るワークの生産方法は、互いに直列に接続された旋回部、第１腕部、第２腕部、手首部及び先端部と、旋回部を第１軸線まわりに旋回させる第１アクチュエータと、第１腕部を第２軸線まわりに揺動させる第２アクチュエータと、第２腕部を第３軸線まわりに揺動させる第３アクチュエータと、先端部の姿勢を調節する複数の姿勢調節アクチュエータと、第２軸線及び第３軸線の間の距離を調節する距離調節アクチュエータと、を有するロボットを用い、先端部の位置・姿勢の目標値を取得すること、距離調節アクチュエータの動作目標値を固定した条件にて、位置・姿勢の目標値に対応する第１〜第３アクチュエータ及び複数の姿勢調節アクチュエータの動作目標値を算出すること、第１〜第３アクチュエータ及び複数の姿勢調節アクチュエータの少なくともいずれかを判定対象とし、判定対象のアクチュエータについて動作目標値が許容範囲内であるか否かを判定すること、少なくとも一つの判定対象のアクチュエータについて動作目標値が許容範囲外となった場合に、当該動作目標値が許容範囲内に収まるように、位置・姿勢の目標値に対応する第１〜第３アクチュエータ、複数の姿勢調節アクチュエータ及び距離調節アクチュエータの動作目標値を算出すること、動作目標値に応じて第１〜第３アクチュエータ、複数の姿勢調節アクチュエータ及び距離調節アクチュエータを制御すること、を含む。
【０００９】
本開示に係るコントローラは、互いに直列に接続された旋回部、第１腕部、第２腕部、手首部及び先端部と、旋回部を第１軸線まわりに旋回させる第１アクチュエータと、第１腕部を第２軸線まわりに揺動させる第２アクチュエータと、第２腕部を第３軸線まわりに揺動させる第３アクチュエータと、先端部の姿勢を調節する複数の姿勢調節アクチュエータと、第２軸線及び第３軸線の間の距離を調節する距離調節アクチュエータと、を有するロボットの先端部の位置・姿勢の目標値を取得する目標取得部と、距離調節アクチュエータの動作目標値を固定した条件にて、位置・姿勢の目標値に対応する第１〜第３アクチュエータ及び複数の姿勢調節アクチュエータの動作目標値を算出する第１算出部と、第１〜第３アクチュエータ及び複数の姿勢調節アクチュエータの少なくともいずれかを判定対象とし、判定対象のアクチュエータについて動作目標値が許容範囲内であるか否かを判定する判定部と、少なくとも一つの判定対象のアクチュエータについて動作目標値が許容範囲外となった場合に、当該動作目標値が許容範囲内に収まるように、位置・姿勢の目標値に対応する第１〜第３アクチュエータ、複数の姿勢調節アクチュエータ及び距離調節アクチュエータの動作目標値を算出する第２算出部と、動作目標値に応じて第１〜第３アクチュエータ、複数の姿勢調節アクチュエータ及び距離調節アクチュエータを制御する出力部と、を備える。
【００１０】
本開示に係る制御方法は、互いに直列に接続された旋回部、第１腕部、第２腕部、手首部及び先端部と、旋回部を第１軸線まわりに旋回させる第１アクチュエータと、第１腕部を第２軸線まわりに揺動させる第２アクチュエータと、第２腕部を第３軸線まわりに揺動させる第３アクチュエータと、先端部の姿勢を調節する複数の姿勢調節アクチュエータと、第２軸線及び第３軸線の間の距離を調節する距離調節アクチュエータと、を有するロボットの先端部の位置・姿勢の目標値を取得すること、距離調節アクチュエータの動作目標値を固定した条件にて、位置・姿勢の目標値に対応する第１〜第３アクチュエータ及び複数の姿勢調節アクチュエータの動作目標値を算出すること、第１〜第３アクチュエータ及び複数の姿勢調節アクチュエータの少なくともいずれかを判定対象とし、判定対象のアクチュエータについて動作目標値が許容範囲内であるか否かを判定すること、少なくとも一つの判定対象のアクチュエータについて動作目標値が許容範囲外となった場合に、当該動作目標値が許容範囲内に収まるように、位置・姿勢の目標値に対応する第１〜第３アクチュエータ、複数の姿勢調節アクチュエータ及び距離調節アクチュエータの動作目標値を算出すること、動作目標値に応じて第１〜第３アクチュエータ、複数の姿勢調節アクチュエータ及び距離調節アクチュエータを制御すること、を含む。
【発明の効果】
【００１１】
本開示によれば、容易な生産設備構築が可能となる。
【図面の簡単な説明】
【００１２】
【図１】加工装置の概略構成を示す模式図である。
【図２】コントローラのハードウェア構成図である。
【図３】ロボットを用いた加工手順を示すフローチャートである。
【図４】動作パターンの生成手順を示すフローチャートである。
【図５】距離調節アクチュエータの作用を例示する図である。
【図６】ロボットの他の配置例を示す平面図である。
【図７】ロボットの更に他の配置例を示す平面図である。
【発明を実施するための形態】
【００１３】
以下、実施形態について図面を参照しつつ詳細に説明する。説明において、同一要素又は同一機能を有する要素には同一の符号を付し、重複する説明を省略する。
【００１４】
〔加工装置〕
図１に示すように、加工装置１は、２台のロボット１０と、搬送装置３０と、コントローラ１００と、プログラミングペンダント１２０とを備える。
【００１５】
（ロボット及び搬送装置）
ロボット１０は、例えば自動車ボディ等のワークＷに対して加工を行うものである。一例として、ロボット１０は、基台１１と、旋回部１２と、第１腕部１３と、第２腕部１４と、手首部１５と、先端部１６と、エンドエフェクタ１７と、第１アクチュエータ２１と、第２アクチュエータ２２と、第３アクチュエータ２３と、第４アクチュエータ２４と、第５アクチュエータ２５と、第６アクチュエータ２６と、第７アクチュエータ２７とを備える。
【００１６】
基台１１は、床面（設置面）に固定されており、ロボット１０全体を支持する。
【００１７】
旋回部１２、第１腕部１３、第２腕部１４、手首部１５及び先端部１６は互いに直列に接続されている。旋回部１２は、基台１１上に設けられており、鉛直な（図示ｚ軸に沿った）第１軸線Ａｘ１まわりに旋回可能である。
【００１８】
第１腕部１３は、旋回部１２及び第１腕部１３の接続部分を通る水平な第２軸線Ａｘ２まわりに揺動可能である。
【００１９】
第２腕部１４は、第１腕部１３及び第２腕部１４の接続部分を通る水平な第３軸線Ａｘ３まわりに揺動可能である。第３軸線Ａｘ３は、第２軸線Ａｘ２に対して平行である。第２腕部１４は、その中心軸線に沿う第４軸線Ａｘ４まわりに旋回可能である。
【００２０】
手首部１５は、第２腕部１４及び手首部１５の接続部分を通る第５軸線Ａｘ５まわりに揺動可能である。
【００２１】
先端部１６は、手首部１５の中心軸線に沿う第６軸線Ａｘ６まわりに旋回可能である。
【００２２】
エンドエフェクタ１７は、例えばスポット溶接装置であり、先端部１６に設けられている。一例として、エンドエフェクタ１７は、先端部１６に対して着脱自在に取り付けられており、他のエンドエフェクタ―と交換可能となっている。エンドエフェクタ１７は先端部１６に一体化されていてもよい。エンドエフェクタ１７は加工用のツールであればどのようなものであってもよく、スポット溶接装置に限られない。例えばエンドエフェクタ１７は、アーク溶接装置であってもよいし、溶接以外の作業を行うカッター、ネジ締め装置等であってもよい。
【００２３】
ここで、第１腕部１３は、互いに直列に接続されたリンク１３Ａ，１３Ｂにより構成されており、リンク１３Ａが旋回部１２に接続され、リンク１３Ｂが第２腕部１４に接続されている。第１腕部１３は、リンク１３Ａ，１３Ｂの接続部を通る第７軸線Ａｘ７まわりに屈曲可能である。換言すると、リンク１３Ｂは、リンク１３Ａ，１３Ｂの接続部を通る第７軸線Ａｘ７まわりに揺動可能である。第７軸線Ａｘ７は、第２軸線Ａｘ２及び第３軸線Ａｘ３に対して平行である。
【００２４】
第１アクチュエータ２１は、例えば基台１１に設けられており、旋回部１２を第１軸線Ａｘ１まわりに旋回させる。
【００２５】
第２アクチュエータ２２は、例えば旋回部１２及び第１腕部１３の間に設けられており、第１腕部１３を第２軸線Ａｘ２まわりに揺動させる。
【００２６】
第３アクチュエータ２３は、例えば第１腕部１３及び第２腕部１４の間に設けられており、第２腕部１４を第３軸線Ａｘ３まわりに揺動させる。
【００２７】
第４アクチュエータ２４は、例えば第２腕部１４の基部に設けられており、第２腕部１４を第４軸線Ａｘ４まわりに旋回させる。第２腕部１４には手首部１５が接続されているので、第２腕部１４を旋回させることは手首部１５を旋回させることに相当する。即ち第４アクチュエータ２４は、手首部１５を第４軸線Ａｘ４まわりに旋回させる。
【００２８】
第５アクチュエータ２５は、例えば第２腕部１４及び手首部１５の間に設けられており、手首部１５を第５軸線Ａｘ５まわりに揺動させる。
【００２９】
第６アクチュエータ２６は、例えば手首部１５に設けられており、先端部１６を第６軸線Ａｘ６まわりに旋回させる。
【００３０】
第４アクチュエータ２４、第５アクチュエータ２５及び第６アクチュエータ２６は、先端部１６の姿勢を調節する複数の姿勢調節アクチュエータの一例である。
【００３１】
第７アクチュエータ２７は、例えばリンク１３Ａ，１３Ｂの接続部に設けられており、第１腕部１３を第７軸線Ａｘ７まわりに屈曲させる。換言すると、第７アクチュエータ２７は、リンク１３Ｂを第７軸線Ａｘ７まわりに揺動させる。第７アクチュエータ２７は距離調節アクチュエータの一例であり、第１腕部１３を距離調節用の第７軸線Ａｘ７まわりに屈曲させることで、第２軸線Ａｘ２及び第３軸線Ａｘ３の間の距離Ｌ１を調節する。
【００３２】
このように、ロボット１０は、先端部１６の位置及び姿勢を自在に変更可能な所謂６軸ロボットに対し、第２軸線Ａｘ２及び第３軸線Ａｘ３の間の距離Ｌ１を調節する冗長自由度を追加したものである。アクチュエータ２１〜２６は、例えば電動のサーボモータ、ギアヘッド及びブレーキ等により構成されている。サーボモータ、ギアヘッド及びブレーキ等は、必ずしも軸線Ａｘ１〜Ａｘ７上に配置されていなくてもよく、これらの軸線から離れた位置に配置されていてもよい。
【００３３】
搬送装置３０は、ワークＷ及びロボット１０の相対位置を変更するようにワークＷを搬送するものである。一例として、搬送装置３０はパレット３１と搬送アクチュエータ３２とを有する。パレット３１はワークＷを支持する。搬送アクチュエータ３２は、例えば電動モータ又は油圧モータ等を動力源として、パレット３１を水平な一直線に沿って（図示ｘ軸に沿って）搬送する。
【００３４】
２台のロボット１０は、搬送装置３０による搬送方向（図示ｘ軸に沿う方向）に直交する方向（図示ｙ軸に沿う方向）でワークＷを挟むように配置されている。以下、図示ｙ軸の正の方向を「左方向」とし、図示ｙ軸の負の方向を「右方向」とする。左側のロボット１０は、ワークＷの左側の加工部位Ｐ１に対して加工を行い、右側のロボット１０は、ワークＷの右側の加工部位Ｐ２に対して加工を行う。
【００３５】
左側のロボット１０は、当該ロボット１０側（左側）からの全加工部位Ｐ１に対し、ワークＷに干渉することなく加工を行うことが可能となるように配置されている。一例として、左側のロボット１０は、最上部の加工部位Ｐ１及び最下部の加工部位Ｐ１の両方に対し、ワークＷに干渉することなくエンドエフェクタ１７を到達させられるように配置されている。
【００３６】
右側のロボット１０は、当該ロボット１０側（右側）からの全加工部位Ｐ２に対し、ワークＷに干渉することなく加工を行うことが可能となるように配置されている。
一例として、右側のロボット１０は、最上部の加工部位Ｐ２及び最下部の加工部位Ｐ２の両方に対し、ワークＷに干渉することなくエンドエフェクタ１７を到達させられるように配置されている。
【００３７】
（コントローラ及びプログラミングペンダント）
コントローラ１００は、２台のロボット１０及び搬送装置３０を制御する装置である。プログラミングペンダント１２０は、有線又は無線により、コントローラ１００に対するデータの入出力を行う装置である。
【００３８】
コントローラ１００は、機能的な構成として、目標取得部１１１と、第１算出部１１２と、判定部１１３と、第２算出部１１４と、出力部１１５と、蓄積部１１６とを有する。
【００３９】
蓄積部１１６は、ロボット１０の動作パターンを蓄積する。動作パターンは、例えばアクチュエータ２１〜２７の動作目標値の時系列データである。
【００４０】
目標取得部１１１は、先端部１６の位置・姿勢の目標値をプログラミングペンダント１２０から取得する。目標取得部１１１が取得する位置・姿勢の目標値は、ユーザによりプログラミングペンダント１２０に入力されたものであってもよいし、プログラミングペンダント１２０を介して記録媒体から読み込まれたものであってもよい。
【００４１】
第１算出部１１２は、距離調節用の第７アクチュエータ２７の動作目標値を初期値に固定した条件にて、位置・姿勢の目標値に対応するアクチュエータ２１〜２６の動作目標値を算出し、アクチュエータ２１〜２７の動作目標値を蓄積部１１６に記憶させる。
【００４２】
第７アクチュエータ２７の動作目標値は、第２軸線Ａｘ２及び第３軸線Ａｘ３の間の距離Ｌ１を調節する動作量の目標値であり、例えば第１腕部１３の屈曲角の目標値である。第１腕部１３の屈曲角の初期値は例えば０°である。
【００４３】
第１アクチュエータ２１の動作目標値は例えば旋回部１２の旋回角の目標値である。第２アクチュエータ２２の動作目標値は例えば第１腕部１３の揺動角の目標値である。第３アクチュエータ２３の動作目標値は例えば第２腕部１４の揺動角の目標値である。第４アクチュエータ２４の動作目標値は例えば手首部１５の旋回角の目標値である。第５アクチュエータ２５の動作目標値は例えば手首部１５の揺動角の目標値である。第６アクチュエータ２６の動作目標値は先端部１６の旋回角の目標値である。
【００４４】
アクチュエータ２１〜２６の動作目標値は、例えば逆運動学演算により算出される。第１算出部１１２は、アクチュエータ２１〜２７の動作目標値の算出結果を蓄積部１１６に記憶させる。
【００４５】
判定部１１３は、アクチュエータ２１〜２６の少なくともいずれかを判定対象とし、判定対象のアクチュエータについて、第１算出部１１２により算出された動作目標値が許容範囲内であるか否かを判定する。判定部１１３は、アクチュエータ２１〜２６の全てを判定対象としてもよいし、アクチュエータ２１〜２６の一部（例えば第２アクチュエータ２２、第３アクチュエータ２３及び第５アクチュエータ２５）のみを判定対象としてもよい。判定部１１３は、第３アクチュエータ２３及び第５アクチュエータ２５のみを判定対象としてもよいし、第３アクチュエータ２３及び第５アクチュエータ２５のいずれか一方のみを判定対象としてもよい。許容範囲は、判定対象のアクチュエータにより駆動される部分の動作量が可動範囲内となるように設定される。例えば第３アクチュエータ２３が判定対象である場合に、第３アクチュエータ２３の動作目標値の許容範囲は、第２腕部１４の揺動角が可動範囲内となるように設定される。
【００４６】
第２算出部１１４は、少なくとも一つの判定対象のアクチュエータについて動作目標値が許容範囲外となった場合に、当該動作目標値が許容範囲内に収まるように、位置・姿勢の目標値に対応するアクチュエータ２１〜２６及び距離調節用の第７アクチュエータ２７の動作目標値を算出する。具体的に、第２算出部１１４は、動作目標値が許容範囲外となっているアクチュエータについて、当該動作目標値が許容範囲内に収まるように拘束条件を設定した上で、その拘束条件を適用した逆運動学演算によりアクチュエータ２１〜２７の動作目標値を算出する。
【００４７】
第２算出部１１４は、距離調節用の第７軸線Ａｘ７がワークＷから遠ざかる方向に第１腕部１３を屈曲させるように上記拘束条件を設定し、アクチュエータ２１〜２７の動作目標値を算出してもよい。
【００４８】
第２算出部１１４は、アクチュエータ２１〜２７の動作目標値の算出結果を蓄積部１１６に記憶させ、直前の算出結果を上書きする。
【００４９】
出力部１１５は、動作目標値に応じてアクチュエータ２１〜２７を制御する。具体的に、出力部１１５は、アクチュエータ２１〜２７による各部の動作量が設定された動作目標値に略一致するように、アクチュエータ２１〜２７を制御する。出力部１１５は、アクチュエータ２１〜２７に加えて搬送アクチュエータ３２も制御する。
【００５０】
コントローラ１００は、先端部１６の位置・姿勢の目標値を取得すること、距離調節用の第７アクチュエータ２７の動作目標値を固定した条件にて、位置・姿勢の目標値に対応するアクチュエータ２１〜２６の動作目標値を算出すること、アクチュエータ２１〜２６の少なくともいずれかを判定対象とし、判定対象のアクチュエータについて動作目標値が許容範囲内であるか否かを判定すること、少なくとも一つの判定対象のアクチュエータについて動作目標値が許容範囲外となった場合に、当該動作目標値が許容範囲内に収まるように、位置・姿勢の目標値に対応するアクチュエータ２１〜２６及び距離調節用の第７アクチュエータ２７の動作目標値を算出すること、動作目標値に応じてアクチュエータ２１〜２７を制御すること、を実行するように構成されていればよいので、そのハードウェア構成は必ずしも目標取得部１１１、第１算出部１１２、判定部１１３、第２算出部１１４及び出力部１１５及び蓄積部１１６に分離していなくてもよい。
【００５１】
図２は、コントローラ１００のハードウェア構成の一例を示す図である。図２に例示されるコントローラ１００は、プロセッサ１３１と、メモリ１３２と、ストレージ１３３と、入出力ポート１３４と、複数のモータドライバ１３６とを有する。入出力ポート１３４は、プログラミングペンダント１２０及び複数のモータドライバ１３６に対するデータの入出力を行う。複数のモータドライバ１３６は、２台のロボット１０のアクチュエータ２１〜２７及び搬送アクチュエータ３２をそれぞれ制御する。プロセッサ１３１は、メモリ１３２及びストレージ１３３の少なくとも一方と協働してプログラムを実行し、入出力ポート１３４を介したデータの入出力を行うことで、コントローラ１００を目標取得部１１１、第１算出部１１２、判定部１１３、第２算出部１１４、出力部１１５及び蓄積部１１６として機能させる。
【００５２】
コントローラ１００のハードウェア構成は、必ずしもプログラムの実行により各機能をなすものに限られない。例えば目標取得部１１１、第１算出部１１２、判定部１１３、第２算出部１１４、出力部１１５及び蓄積部１１６の少なくとも一部はその機能に特化した論理回路により構成されていてもよいし、当該論理回路を集積したＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  ｉｎｔｅｇｒａｔｅｄ  ｃｉｒｃｕｉｔ）により構成されていてもよい。
【００５３】
〔制御方法〕
続いて、本開示に係る制御方法の一例として、コントローラ１００によるロボット１０及び搬送装置３０の制御手順を説明する。
【００５４】
（制御手順の概要）
図３に示すように、まずコントローラ１００はステップＳ０１を実行する。ステップＳ０１では、第１算出部１１２及び第２算出部１１４の少なくとも一方がアクチュエータ２１〜２７の動作目標値の算出結果を蓄積部１１６に記憶させ、２台のロボット１０の動作パターンを構築する。２台のロボット１０の動作パターンは、ワークＷに対する加工を行うように構築される。
【００５５】
次に、コントローラ１００はステップＳ０２〜Ｓ０４を実行する。ステップＳ０２では、ワークＷの搬送を開始するように出力部１１５が搬送アクチュエータ３２を制御する。ステップＳ０３では、ワークＷに対する加工を実行するように、出力部１１５が２台のロボット１０を制御する。即ち出力部１１５は、蓄積部１１６に記憶された動作目標値に応じて２台のロボット１０のアクチュエータ２１〜２７を制御する。ステップＳ０４では、ワークＷの搬送を終了するように出力部１１５が搬送アクチュエータ３２を制御する。
【００５６】
次に、コントローラ１００はステップＳ０５を実行する。ステップＳ０５では、加工終了の指令が入力されているか否かを出力部１１５が判定する。加工終了の指令は、例えばプログラミングペンダント１２０を介して入力される。加工終了の指令が入力されていない場合、コントローラ１００は処理をステップＳ０２に戻す。これにより、同一の加工手順が繰り返される。加工終了の指令が入力されている場合、コントローラ１００は処理を終了する。
【００５７】
（動作パターンの生成手順）
続いて上記ステップＳ０１における動作パターンの生成手順について、より詳細に説明する。図４に示すように、まずコントローラ１００はステップＳ１１を実行する。ステップＳ１１では、目標取得部１１１が、先端部１６の位置・姿勢の目標値をプログラミングペンダント１２０から取得する。
【００５８】
次に、コントローラ１００はステップＳ１２，Ｓ１３を実行する。ステップＳ１２では、第１算出部１１２が、距離調節用の第７アクチュエータ２７の動作目標値を初期値に設定する。例えば第１算出部１１２は、第１腕部１３の屈曲角を０°に設定する。ステップＳ１３では、第１算出部１１２が、第７アクチュエータ２７の動作目標値を初期値に固定した条件にて、位置・姿勢の目標値に対応するアクチュエータ２１〜２６の動作目標値を算出し、アクチュエータ２１〜２７の算出結果を蓄積部１１６に記憶させる。
【００５９】
次に、コントローラ１００はステップＳ１４を実行する。ステップＳ１４では、判定部１１３が、アクチュエータ２１〜２６の少なくともいずれかを判定対象とし、判定対象のアクチュエータについて動作目標値が許容範囲内であるか否かを判定する。
【００６０】
ステップＳ１４において、少なくとも一つの判定対象のアクチュエータについて動作目標値が許容範囲外であると判定された場合に、コントローラ１００はステップＳ１５，Ｓ１６を実行する。
【００６１】
ステップＳ１５では、動作目標値が許容範囲外となっているアクチュエータについて、当該動作目標値が許容範囲内に収まり易くなるように、第２算出部１１４が第７アクチュエータ２７の動作目標値を設定する。例えば第２算出部１１４は、許容範囲外となっている動作目標値の一部を分担するように、第７アクチュエータ２７の動作目標値を設定する。
【００６２】
ステップＳ１６では、第２算出部１１４が、第７アクチュエータ２７の動作目標値をステップＳ１５における設定値に固定した条件にて、位置・姿勢の目標値に対応するアクチュエータ２１〜２６の動作目標値を算出する。第２算出部１１４は、アクチュエータ２１〜２７の動作目標値の算出結果を蓄積部１１６に記憶させ、直前の算出結果を上書きする。
【００６３】
その後、コントローラ１００は処理をステップＳ１４に戻す。これにより、判定対象のアクチュエータの全ての動作目標値が許容範囲内に収まるまでステップＳ１４〜Ｓ１５が繰り返される。これにより、動作目標値が許容範囲外となっているアクチュエータについて、当該動作目標値が許容範囲内に収まるように、アクチュエータ２１〜２７の動作目標値が算出される。
【００６４】
ステップＳ１５，Ｓ１６において、第２算出部１１４は、距離調節用の第７軸線Ａｘ７がワークＷから遠ざかる方向に第１腕部１３を屈曲させるように、アクチュエータ２１〜２７の動作目標値を算出してもよい。即ちコントローラ１００は、第７軸線Ａｘ７がワークＷから遠ざかる方向に第１腕部１３を屈曲させるようにアクチュエータ２１〜２７を制御するものであってもよい。
【００６５】
第２算出部１１４によるアクチュエータ２１〜２７の動作目標値の算出手順は上述したものに限られない。例えば、ステップＳ１５において、第７アクチュエータ２７の動作目標値を設定するのに代えて、動作目標値が許容範囲外となっているアクチュエータ自体の動作目標値を許容範囲内の値に設定してもよい。これに対応し、ステップＳ１６においては、アクチュエータ２１〜２６のうちステップＳ１５において動作目標値を設定したアクチュエータを除いたもの、及び第７アクチュエータ２７の動作目標値を算出してもよい。
【００６６】
ステップＳ１４において、判定対象のアクチュエータの全てについて動作目標値が許容範囲内であると判定された場合に、コントローラ１００はステップＳ１７を実行する。ステップＳ１７では、動作パターンの構築が完了したか否かをコントローラ１００が判定する。具体的には、例えば目標取得部１１１が、動作パターンの構築に必要な位置・姿勢の目標値を全て取得したか否かを判定する。位置・姿勢の目標値を全て取得したか否かは、例えばユーザがプログラミングペンダント１２０に入力した完了指令又はプログラミングペンダント１２０が記録媒体から読み込んだ完了指令に基づいて判定される。
【００６７】
ステップＳ１７において、動作パターンの構築が完了していないと判定した場合、コントローラ１００は処理をステップＳ１１に戻す。これにより、動作パターンの構築が完了するまでステップＳ１１〜Ｓ１７が繰り返され、アクチュエータ２１〜２７の動作目標値の時系列データが構築される。
【００６８】
ステップＳ１７において、動作パターンの構築が完了していると判定した場合、コントローラ１００は処理を終了する。
【００６９】
〔加工装置による効果〕
以上に説明したように、加工装置１は、ワークＷに対して加工を行うロボット１０と、ロボット１０を制御するコントローラ１００とを備える。
【００７０】
ロボット１０は、互いに直列に接続された旋回部１２、第１腕部１３、第２腕部１４、手首部１５及び先端部１６と、旋回部１２を第１軸線Ａｘ１まわりに旋回させる第１アクチュエータ２１と、第１腕部１３を第２軸線Ａｘ２まわりに揺動させる第２アクチュエータ２２と、第２腕部１４を第３軸線Ａｘ３まわりに揺動させる第３アクチュエータ２３と、先端部１６の姿勢を調節する複数の姿勢調節アクチュエータ２４〜２６と、第２軸線Ａｘ２及び第３軸線Ａｘ３の間の距離Ｌ１を調節する距離調節アクチュエータ２７と、を有する。
【００７１】
コントローラ１００は、先端部１６の位置・姿勢の目標値を取得する目標取得部１１１と、距離調節用の第７アクチュエータ２７の動作目標値を固定した条件にて、位置・姿勢の目標値に対応するアクチュエータ２１〜２６の動作目標値を算出する第１算出部１１２と、アクチュエータ２１〜２６の少なくともいずれかを判定対象とし、判定対象のアクチュエータについて動作目標値が許容範囲内であるか否かを判定する判定部１１３と、少なくとも一つの判定対象のアクチュエータについて動作目標値が許容範囲外となった場合に、当該動作目標値が許容範囲内に収まるように、位置・姿勢の目標値に対応するアクチュエータ２１〜２６及び距離調節用の第７アクチュエータ２７の動作目標値を算出する第２算出部１１４と、動作目標値に応じてアクチュエータ２１〜２７を制御する出力部１１５と、を有する。
【００７２】
ロボット１０は、先端部１６の位置・姿勢を調整するアクチュエータ２１〜２６に加え、距離調節用の第７アクチュエータ２７を更に有する。このため、先端部１６の位置・姿勢を維持した状態で、基台１１及び先端部１６の間におけるロボット１０の姿勢を自在に変更可能である。
【００７３】
図５は、第７アクチュエータ２７の作用を例示する図である。図５中の二点鎖線で示されるロボット１０は、第１腕部１３を屈曲させることなくエンドエフェクタ１７を加工部位に配置した場合を示している。二点鎖線で示されるロボット１０は、ワークＷに干渉している。これに対し、実線で示されるロボット１０は、第１腕部１３を屈曲させて第２軸線Ａｘ２及び第３軸線Ａｘ３の間の距離を短縮するように第７アクチュエータ２７を動作させた場合を示している。実線で示されるロボット１０では、先端部１６の位置・姿勢を維持した状態で、第５軸線Ａｘ５及び第２軸線Ａｘ２の間の部分がワークＷから遠ざかり、ワークＷに対するロボット１０の干渉が防止されている。
【００７４】
このように、ロボット１０の姿勢を自在に変更することで、ワークＷ及び周辺機器に対するロボット１０の干渉を抑制できる。干渉を抑制可能な特性により、ロボット１０の配置の選択肢も多くなる。従って、容易な生産設備構築が可能となる。ロボット１０を高密度に配置することで作業時間を短縮することも可能となる。
【００７５】
ロボット１０によれば干渉を抑制できる一方で、先端部１６の位置・姿勢の目標値に対応するアクチュエータ２１〜２７の動作目標値は一通りに定まらない。このため、ロボット１０の動作教示においては何らかの拘束条件を適宜設定する必要がある。
【００７６】
これに対し、コントローラ１００は、まず第７アクチュエータ２７の動作目標値を固定した条件にて、アクチュエータ２１〜２６の動作目標値を算出する。次に、判定対象のアクチュエータの動作目標値が許容範囲外となった場合には、当該動作目標値が許容範囲内に収まるように、アクチュエータ２１〜２６及び距離調節用の第７アクチュエータ２７の動作目標値を自動的に再計算する。ロボット１０のアクチュエータの動作量を許容範囲内に抑えると、ロボット１０全体の動作量も抑制されるので、ワークＷ又は周辺機器との干渉が生じ難くなる傾向がある。
【００７７】
例えば図５において二点鎖線で示されるロボット１０では、第３アクチュエータ２３の動作目標値が許容範囲外となっている。すなわち、第１腕部１３に対する第２腕部１４の揺動角の目標値θ３が過大になっている。これに対し、図５において実線で示されるロボット１０では、第１腕部１３に対する第２腕部１４の揺動角の目標値θ３を緩和するようにアクチュエータ２１〜２６及び距離調節用の第７アクチュエータ２７の動作目標値が再計算されている。これに伴って第５軸線Ａｘ５及び第２軸線Ａｘ２の間の部分がワークＷから遠ざかり、ワークＷに対するロボット１０の干渉が防止されている。
【００７８】
このように、判定対象のアクチュエータの動作目標値を許容範囲内に抑えるという条件を採用することにより、ワークＷ又は周辺機器との干渉の発生確率を下げることができる。これにより、ワークＷ又は周辺機器との干渉を回避しつつ、先端部１６を各加工部位の近傍に適正配置する動作パターンの大部分を自動的に構築できる。従って、ロボット１０に対する動作教示の負担が軽減されるので、更に容易な生産設備構築が可能となる。
【００７９】
加工装置１は、ワークＷ及びロボット１０の相対位置を変更するようにワークＷ及びロボット１０の少なくとも一方を搬送する搬送装置３０を更に備える。このため、搬送装置３０及びロボット１０を協調させることにより、広範囲の加工部位に対して先端部１６を適正配置することが可能となる。一方、ワークＷ及びロボット１０の相対的な配置が変わるので、ワークＷに対するロボット１０の干渉の生じ易さも変化する。これに対し、ロボット１０は第７アクチュエータ２７を更に有するので、上述したようにロボット１０の姿勢を自在に変更可能である。これにより、ワークＷ及びロボット１０の相対的な配置の変化に柔軟に対応して相互の干渉を抑制できる。従って、更に容易な生産設備構築が可能となる。
【００８０】
但し、加工装置１は、少なくともロボット１０及びコントローラ１００を備えていればよいので、搬送装置３０を備えることは必須ではない。
【００８１】
距離調節用の第７アクチュエータ２７は、第１腕部１３を距離調節用の第７軸線Ａｘ７まわりに屈曲させることで、第２軸線Ａｘ２及び第３軸線Ａｘ３の間の距離Ｌ１を調節する。この場合、第１腕部１３を単純に伸縮させて第２軸線Ａｘ２及び第３軸線Ａｘ３の間の距離Ｌ１を調節するのに比べ、アクチュエータ２１〜２６の動作量を抑制し易い傾向がある。また、ロボット１０の姿勢をより多様に調節し、ワークＷ又は周辺機器を回避し易くなる傾向がある。従って、更に容易な生産設備構築が可能である。但し、第７アクチュエータ２７は、第２軸線Ａｘ２及び第３軸線Ａｘ３の間の距離Ｌ１を調節できればどのようなものであってもよいので、例えば第１腕部１３を伸縮させる直動アクチュエータであってもよい。
【００８２】
距離調節用の第７軸線Ａｘ７は、第２軸線Ａｘ２に対して平行である。仮に、第７軸線Ａｘ７が第２軸線Ａｘ２に対して垂直であるロボットを用いる場合、ワークＷに対するロボットの干渉を避けながら先端部１６を所望の位置・姿勢に配置するためには、第１腕部１３及び第２腕部１４に相当する部分を大きく側方（ワークＷ側を正面とした場合の側方）に傾ける必要が生じ得る。これにより周辺機器（例えば隣接する他のロボット）との干渉が生じ得るため、ロボット及び周辺機器の配置間隔を大きくする必要がある。このことは、例えば複数のロボットの高密度配置を妨げる一因となる。これに対し、ロボット１０においては第７軸線Ａｘ７が第２軸線Ａｘ２に対して平行であるので、少なくとも第７軸線Ａｘ７まわりの回転動作に起因して第１腕部１３及び第２腕部１４を側方に傾ける必要が生じ難く、隣接する周辺機器との干渉が生じ難い。従って、ロボット１０の配置の選択肢がより多くなるので、更に容易な生産設備構築が可能となる。複数のロボットをより高密度に配置し、作業時間を更に短縮することも可能となる。但し、第７軸線Ａｘ７が第２軸線Ａｘ２に対して平行であることは必須ではない。
【００８３】
距離調節用の第７軸線Ａｘ７は、第３軸線に対しても平行である。この場合、先端部１６を所望の位置・姿勢に配置する際に、第１腕部１３及び第２腕部１４を側方に傾ける必要が更に生じ難くなるので、更に容易な生産設備構築が可能となる。複数のロボットをより高密度に配置し、作業時間を更に短縮することも可能となる。但し、第７軸線Ａｘ７が第３軸線Ａｘ３に対して平行であることも必須ではない。
【００８４】
第２算出部１１４は、距離調節用の第７軸線Ａｘ７がワークＷから遠ざかる方向に第１腕部１３を屈曲させるように、アクチュエータ２１〜２７の動作目標値を算出してもよい。即ちコントローラ１００は、第７軸線Ａｘ７がワークＷから遠ざかる方向に第１腕部１３を屈曲させるように、アクチュエータ２１〜２７を制御するものであってもよい。この場合、ワークＷに対するロボット１０の干渉がより確実に抑制されるので、更に容易な生産設備構築が可能となる。
【００８５】
ロボット１０は、当該ロボット側からの全加工部位に対し、ワークＷに干渉することなく加工を行うことが可能となるように配置されている。このため、一台のロボット１０にて当該ロボット１０側からの全加工部位に加工を施すこともできるし、同一側に複数のロボット１０を配置し、全加工部位をこれらのロボット１０に分担させることもできる。これにより、生産量に応じた柔軟な生産設備構築が可能となる。但し、全加工部位に対する加工を可能とするようにロボット１０を配置することは必須ではない。
【００８６】
先端部１６の姿勢を調節する複数の姿勢調節アクチュエータは、手首部１５を第４軸線Ａｘ４まわりに旋回させる第４アクチュエータ２４、手首部１５を第５軸線Ａｘ５まわりに揺動させる第５アクチュエータ２５、及び先端部１６を第６軸線Ａｘ６まわりに旋回させる第６アクチュエータ２６である。この場合、アクチュエータ２４〜２６の協働により先端部１６の姿勢を自在に調節できる。但し、複数の姿勢調節アクチュエータは、アクチュエータ２４〜２６に限定されず、先端部１６の姿勢を調節可能であればどのようなものであってもよい。例えば、必要とされる姿勢調節の程度に応じて、第４アクチュエータ２４、第５アクチュエータ２５及び第６アクチュエータ２６のいずれかが省略されていてもよい。
【００８７】
搬送装置３０はワークＷを搬送するので、多数の動力源を含むロボット１０を搬送するのに比べ、搬送装置３０の構成を単純化し易い。従って、更に容易な生産設備構築が可能となる。但し、搬送装置３０は、ワークＷ及びロボット１０の相対位置を変更するものであればよいので、ロボット１０を搬送するものであってもよいし、ワークＷ及びロボット１０の双方を搬送するものであってもよい。
【００８８】
判定部１１３は、第２アクチュエータ２２、第３アクチュエータ２３及び第５アクチュエータ２５の少なくともいずれかを判定対象としてもよい。これらのアクチュエータの動作量は、ロボット全体の動作量に相関し易い傾向がある。このため、これらのアクチュエータを判定対象にして、その動作範囲を許容範囲内に抑えることで、ロボット１０全体の動作量をより確実に抑制し、干渉を更に抑制できる。
【００８９】
判定部１１３は、第３アクチュエータ２３及び第５アクチュエータ２５の少なくともいずれかを判定対象としてもよい。これらのアクチュエータの動作量は、ロボット全体の動作量に特に相関し易い傾向がある。このため、これらのアクチュエータを判定対象にして、その動作範囲を許容範囲内に抑えることで、ロボット１０全体の動作量をより確実に抑制し、干渉を更に抑制できる。
【００９０】
ロボット１０は、エンドエフェクタ１７として、先端部１６に設けられた溶接装置を更に備えていてもよい。この場合、ワークＷ又は周辺機器に対するロボット１０の干渉を抑制しつつ、広範囲の加工部位に対して溶接を行うことができる。
【００９１】
加工装置１は、搬送装置３０による搬送方向に直交する方向でワークＷを挟むように配置された複数のロボット１０を備えている。このため、全加工部位を複数のロボット１０に分担させることで、それぞれのロボット１０の動作量を抑制できる。これにより、ワークＷに対するロボット１０の干渉が更に抑制される。また、搬送装置３０による搬送方向に直交する方向でワークＷを挟む配置により、ロボット１０同士の干渉も抑制される。従って、更に容易な生産設備構築が可能となる。
【００９２】
加工装置１は、図６に示すように、搬送装置３０による搬送方向に沿って並ぶように配置された複数のロボット１０を備えていてもよい。搬送方向に沿って並ぶロボット１０のそれぞれが、上述したように広範囲の加工部位に加工を行うことが可能である。このため、搬送方向に沿って並ぶ複数のロボット１０に対し、様々なパターンで加工部位を割り当て、より効率的な生産設備を構築できる。
【００９３】
図６には、搬送装置３０による搬送方向に沿って並ぶ２台のロボット１０が示されているが、これに限られず、加工装置１は搬送装置３０の搬送方向に沿って並ぶように配置された３台以上のロボット１０を備えるものであってもよい。
【００９４】
複数のロボット１０が、搬送装置３０による搬送方向に直交する方向でワークＷを挟むように配置されることは必須ではない。例えば、図７に示すように、ロボット１０はワークＷの左側のみに配置されていてもよい。この場合においても、ロボット１０は、当該ロボット１０側からの全加工部位に対し、ワークＷに干渉することなく加工を行うことが可能となるように配置されていてもよい。例えば図７において、それぞれのロボット１０は、左側の全加工部位Ｐ１及び右側の全加工部位Ｐ１の両方に加工を行うことが可能となるように配置されていてもよい。
【００９５】
図７には、搬送装置３０による搬送方向に沿って並ぶ２台のロボット１０が示されているが、これに限られず、加工装置１は一台のロボット１０のみを備えるものであってもよい。
【００９６】
加工装置１によれば、ロボット１０により加工可能となるようにパレット３１上にワークＷを配置すること、ワークＷとロボット１０との相対位置を変更するように、搬送アクチュエータ３２によりパレット３１を搬送すること、ロボット１０によりワークＷに対し加工を行うこと、を含むワークＷの生産方法が実行可能である。
【００９７】
また、先端部１６の位置・姿勢の目標値を取得すること、第７アクチュエータ２７の動作目標値を固定した条件にて、位置・姿勢の目標値に対応するアクチュエータ２１〜２６の動作目標値を算出すること、アクチュエータ２１〜２６の少なくともいずれかを判定対象とし、判定対象のアクチュエータについて動作目標値が許容範囲内であるか否かを判定すること、少なくとも一つの判定対象のアクチュエータについて動作目標値が許容範囲外となった場合に、当該動作目標値が許容範囲内に収まるように、位置・姿勢の目標値に対応するアクチュエータ２１〜２７の動作目標値を算出すること、動作目標値に応じてアクチュエータ２１〜２７を制御すること、を含むワークＷの生産方法も実行可能である。
【００９８】
コントローラ１００に位置・姿勢の目標値を入力すること、位置・姿勢の目標値に対応するようにコントローラ１００により算出されたアクチュエータ２１〜２７の動作目標値をコントローラに記憶させること、を含む教示方法も実行可能である。
【００９９】
以上、実施形態について説明したが、本発明は必ずしも上述した実施形態に限定されるものではなく、その要旨を逸脱しない範囲で様々な変更が可能である。例えば、加工装置１のワークＷは自動車ボディに限られない。加工装置１は、自動車のドアパネルの加工等にも適用可能であるし、自動車以外の技術分野における様々な部品又は製品の加工・組立にも適用可能である。
【符号の説明】
【０１００】
１…加工装置、１０…ロボット、１２…旋回部、１３…第１腕部、１４…第２腕部、１５…手首部、１６…先端部、１７…エンドエフェクタ（溶接装置）、２１…第１アクチュエータ、２２…第２アクチュエータ、２３…第３アクチュエータ、２４…第４アクチュエータ（姿勢調節アクチュエータ）、２５…第５アクチュエータ（姿勢調節アクチュエータ）、２６…第６アクチュエータ（姿勢調節アクチュエータ）、２７…第７アクチュエータ（距離調節アクチュエータ）、１００…コントローラ、１１１…目標取得部、１１２…第１算出部、１１３…判定部、１１４…第２算出部、１１５…出力部、Ａｘ１…第１軸線、Ａｘ２…第２軸線、Ａｘ３…第３軸線、Ａｘ４…第４軸線、Ａｘ５…第５軸線、Ａｘ６…第６軸線、Ａｘ７…第７軸線（距離調節用の軸線）、Ｌ１…第２軸線及び第３軸線の間の距離、Ｗ…ワーク。
【要約】
【課題】容易な生産設備構築を可能とする加工装置を提供する。
【解決手段】加工装置１は、ロボット１０とコントローラ１００とを備える。ロボット１０は、旋回部１２を旋回させるアクチュエータ２１と、第１腕部１３を第２軸線Ａｘ２まわりに揺動させるアクチュエータ２２と、第２腕部１４を第３軸線Ａｘ３まわりに揺動させるアクチュエータ２３と、先端部１６の姿勢を調節する複数のアクチュエータ２４〜２６と、軸線Ａｘ２，Ａｘ３の間の距離を調節するアクチュエータ２７とを有する。コントローラ１００は、アクチュエータ２１〜２６の動作目標値を算出すること、少なくとも一つの判定対象のアクチュエータについて動作目標値が許容範囲外となった場合に、当該動作目標値が許容範囲内に収まるように、アクチュエータ２１〜２７の動作目標値を算出すること、を実行するように構成されている。
【選択図】図１【図１】
0005896003.tif 000002
【図２】
0005896003.tif 000003
【図３】
0005896003.tif 000004
【図４】
0005896003.tif 000005
【図５】
0005896003.tif 000006
【図６】
0005896003.tif 000007
【図７】
0005896003.tif 000008