(57)【要約】  工作機械装置は、ワーク加工に関する第１作業を行う作業機モジュールと、作業機モジュールへのワーク搬送に関する第２作業を行うロボットと、第１作業又は第２作業の動作を実行する命令と、パラメータとが設定された制御プログラムを記憶する記憶装置と、制御プログラムに基づいて、第１作業又は第２作業に関する命令による先行動作の開始後、制御プログラムのパラメータで特定される条件で、先行動作の実行中に、第１作業又は第２作業に関する命令による後行動作の実行を開始することによって、先行動作と後行動作をオーバーラップさせる制御装置とを備える。
2019077668.tif 000002
【特許請求の範囲】
【請求項１】
ワーク加工に関する第１作業を行う作業機モジュールと、
前記作業機モジュールへのワーク搬送に関する第２作業を行うロボットと、
前記第１作業又は前記第２作業の動作を実行する命令と、パラメータとが設定された制御プログラムを記憶する記憶装置と、
前記制御プログラムに基づいて、前記第１作業又は前記第２作業に関する命令による先行動作の開始後、該制御プログラムの前記パラメータで特定される条件で、該先行動作の実行中に、該第１作業又は該第２作業に関する命令による後行動作の実行を開始することによって、該先行動作と該後行動作をオーバーラップさせる制御装置とを備える工作機械装置。
【請求項２】
前記パラメータは、前記先行動作が実行中の前記ロボットの位置である請求項１に記載の工作機械装置。
【請求項３】
前記パラメータは、前記先行動作の開始から経過した時間である請求項１に記載の工作機械装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、ロボットの動作がオーバーラップする工作機械装置に関するものである。
【背景技術】
【０００２】
従来より、ロボットの動作がオーバーラップする工作機械装置に関し、種々の技術が提案されている。【０００３】
例えば、下記特許文献１に記載の技術は、ロボットの軌跡制御方式であって、ロボット先端動作の始点、終点及び動作中に通過する１点以上の通過点により定められ、始点と終点の近傍は直線で動作し、全行程において円滑且つ高速に移動することの出来る軌跡制御を行うために、各点を折線で結び、直線の交点部分を放物線で補間するように構成することにより、ロボットによる実作業と回避動作等の直線動作と曲線動作の組合わさった動作を一連の動作として、全作業時間を短縮することが可能となる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開昭６３−１４２４０５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
従って、上記特許文献１に記載のロボットの軌跡制御方式は、直線動作と曲線動作とをオーバーラップさせることが可能であるが、オーバーラップの開始条件を動作毎に設定することが困難であった。【０００６】
そこで、本開示は、上述した点を鑑みてなされたものであり、オーバーラップさせる条件を動作毎に設定することが可能な工作機械装置を提供することを課題とする。
【課題を解決するための手段】
【０００７】
本明細書は、ワーク加工に関する第１作業を行う作業機モジュールと、作業機モジュールへのワーク搬送に関する第２作業を行うロボットと、第１作業又は第２作業の動作を実行する命令と、パラメータとが設定された制御プログラムを記憶する記憶装置と、制御プログラムに基づいて、第１作業又は第２作業に関する命令による先行動作の開始後、制御プログラムのパラメータで特定される条件で、先行動作の実行中に、第１作業又は第２作業に関する命令による後行動作の実行を開始することによって、先行動作と後行動作をオーバーラップさせる制御装置とを備える工作機械装置を開示する。
【発明の効果】
【０００８】
本開示によれば、工作機械装置は、オーバーラップさせる条件を動作毎に設定することが可能である。
【図面の簡単な説明】
【０００９】
【図１】図１は、本実施形態に係る工作機械装置１の外観正面図である。
【図２】図２は、ベースユニット２Ｂの内部構造を示した図である。
【図３】図３は、アーム２１の動作態様の一例を示した図である。
【図４】図４は、本実施形態に係る工作機械装置１を示したブロック図である。
【図５】図５は、アーム２１のオーバーラップ動作を説明するための図である。
【図６】図６は、図５のオーバーラップ動作が行われる制御プログラムの一例を示した図である。
【図７】図７は、本実施形態に係る工作機械装置１において、オーバーラップ可能な動作の組合せの一例を示した図である。
【発明を実施するための形態】
【００１０】
以下、本開示の好適な実施形態を、図面を参照しつつ詳細に説明する。先ず、本実施形態に係る工作機械装置１の全体構成について、図１を用いて説明する。図１は、本実施形態に係る工作機械装置１の外観正面図である。
【００１１】
（工作機械装置の全体構成）
本実施形態に係る工作機械装置１は、図１に示すように、複数（図１では５つ）のベースユニット２Ａ〜２Ｅからなるベース３と、ベース３に対して配列された複数（図１では９つ）の作業機モジュール４Ａ〜４Ｉとを備えている。基本的には、１つのベースユニットに対して２つの作業機モジュールが配置されるが、１つのベースユニットに対して１つの作業機モジュールのみ或いは３以上の作業機モジュールが配置されても良い。更に、ベース３と独立して作業機モジュールが配置されても良い。例えば、図１に示す例では、最も左側に配置されたベースユニット２Ａには１つの作業機モジュール４Ａが配置され、他のベースユニット２Ｂ〜２Ｅには各２つの作業機モジュール４Ｂ〜４Ｉが配置されている。尚、以下の説明において、前後、左右、上下は、図１の工作機械装置１の正面側から見た場合における前後、左右、上下として説明する。即ち、作業機モジュール４Ａ〜４Ｉが配列されている方向は左右方向であり、作業機モジュール４Ａ〜４Ｉの配列方向と交差する工作機械装置１の奥行き方向が前後方向である。
【００１２】
また、複数の作業機モジュール４Ａ〜４Ｉは、１つのラインとなるように左右方向に一列に配列されている。更に、各作業機モジュール４Ａ〜４Ｉは、等間隔で且つ互いの側壁が近接するように配列されている。尚、作業機モジュール４Ａ〜４Ｉには、後述するようにワークに対する作業内容が異なる複数種類のモジュールが存在する。但し、作業機モジュール４Ａ〜４Ｉは、種類に関わらず基本的に同一寸法で同一外観を有している。その結果、本実施形態に係る工作機械装置１は、見た目に統一感のあるものとなっている。
【００１３】
また、作業機モジュール４Ａ〜４Ｉでは、左右方向の寸法が、前後方向の寸法に対して相当に小さくされている。これに対して、ベースユニット２Ａ〜２Ｅは、上方に載置される作業機モジュール４Ａ〜４Ｉに対応した寸法を有している。例えば、ベースユニット２Ａでは、左右方向の寸法が、１つの作業機モジュールが載置された状態における作業機モジュールの左右方向の寸法とほぼ等しくされている。ベースユニット２Ｂ〜２Ｅでは、左右方向の寸法が、２つの作業機モジュールが載置された状態における作業機モジュールの左右方向の寸法とほぼ等しくされている。即ち、ベース３は、左右方向において、９つの作業機モジュール４Ａ〜４Ｉが丁度載置される大きさのものとされている。以上のような構成から、本実施形態に係る工作機械装置１は、９つの作業機モジュール４Ａ〜４Ｉが配列されているにも拘わらず、配列方向における当該装置全体の長さが比較的短いものとすることができる。
【００１４】
また、ベース３を構成する各ベースユニット２Ａ〜２Ｅは、それぞれ互いに固定されて１つのベースを構成している。上述したように、ベース３において、ベースユニット２Ａを除くベースユニット２Ｂ〜２Ｅの各々は、２つの作業機モジュール４Ｂ〜４Ｉを載置させることが可能となっている。それら４つのベースユニット２Ｂ〜２Ｅでは、各々が規格化されており、互いに同じ形状、寸法、構造のものとされている。従って、ベース３を構成するベースユニットの数は、適宜増減することが可能である。それに伴って、配列する作業機モジュールの数についても、自由に変更することが可能となる。尚、本実施形態では、ベース３は、複数のベースユニット２Ａ〜２Ｅから構成されているが、ベース３をベースユニット２Ａ〜２Ｅに分割せずに単体で構成されても良い。
【００１５】
次に、ベースユニット２Ａ〜２Ｅの内部構造について説明する。図２は、ベースユニット２Ｂの内部構造を示した図である。尚、ベースユニット２Ａ〜２Ｅは、載置される作業機モジュールの数が異なるのみで、基本的に同一の構成を有している。そこで、以下は、ベースユニット２Ｂについて説明し、他のベースユニット２Ａ、２Ｃ〜２Ｅの説明は省略する。
【００１６】
図２に示すように、ベースユニット２Ｂには、上部に載置される作業機モジュールの数に応じた数のレール１１が設けられている。本実施形態では、ベースユニット２Ｂにおいて、２つの作業機モジュール４Ｂ、４Ｃが載置されるので、２対のレール１１が、前後方向に並んで設けられている。レール１１は、作業機モジュールの引き出しの際の作業機モジュールが移動する軌道を画定するものとなっている。これに対して、作業機モジュール４Ｂ、４Ｃのベース３に接する面には、レール１１と対応する車輪が設けられている。そして、ユーザは、レール１１上で車輪を移動させることによって、作業機モジュール４Ｂ、４Ｃをベースユニット２Ｂに対して容易に前後方向に移動させることが可能である。
【００１７】
更に、ユーザは、作業機モジュール４Ｂ、４Ｃを、ベースユニット２Ｂから離脱可能な位置まで移動させることが可能である。その結果、ユーザは、ベース３上に配列された各作業機モジュール４Ａ〜４Ｉの一部の入れ替えや並べ替えを容易に行うことが可能となる。
【００１８】
また、作業機モジュール４Ａ〜４Ｉの正面側の側壁には、コントローラ５が配置されている。コントローラ５は、情報の表示装置としての液晶ディスプレイや、ユーザの操作を受け付ける操作受付装置としての各種操作ボタンを備えている。これによって、コントローラ５は、工作機械装置１に関する各種操作を受け付けたり、工作機械装置１の現在の作動状況や設定状況等を表示する。また、液晶ディスプレイの前面には、タッチパネルが配置されている。これによって、コントローラ５は、タッチパネルを用いた操作についても可能に構成されている。また、コントローラ５は、工作機械装置１のアームの姿勢を教示する為の各種パラメータを入力する場合においても用いられる。図１に示す例では、コントローラ５は、一部の作業機モジュール４Ｂ〜４Ｈのみに配置されているが、全ての作業機モジュール４Ａ〜４Ｉに配置されても良い。
【００１９】
（作業機モジュールの構成）
上述した工作機械装置１は、製造物であるワークに対して、各種のツールによる穴あけ、旋盤、研磨、検査等を行って、最終的な製品を製造するものである。具体的には、ラインに対して配列された各作業機モジュール４Ａ〜４Ｉが、１つのワークに対して順次作業を行う。
【００２０】
ここで、作業機モジュール４Ａ〜４Ｉは、複数種類あって、種類毎に作業内容が決められている。例えば、本実施形態では、工作機械装置１内にワークが投入される搬入モジュール、旋削加工が行われる旋盤モジュール、ドリルによる穴あけやミーリング加工等が行われるドリルモジュール、ワークに対して検査が行われる検査モジュール、ワークの仮置きが行われる仮置きモジュール、工作機械装置１内からワークが排出される搬出モジュールがある。
【００２１】
尚、ベース３に対してどの種類の作業機モジュールが配置されるかは、ワークに対する作業内容によって異なる。また、ベース３に対して配置される作業機モジュールの数も、ワークに対する作業内容によって異なる。また、作業機モジュールの並び順については、一部の作業機モジュールを除いて、作業内容に応じてユーザ側で任意に変更可能である。
【００２２】
例えば、作業機モジュールの配置の一例として、図１に示す例では、ベース３の最も左側の作業機モジュール４Ａとしてワークを投入する搬入モジュールが配置され、最も右側の作業機モジュール４Ｉとして工作機械装置１内からワークを排出する搬出モジュールが配置されている。そして、搬入モジュールと搬出モジュールの間には、作業機モジュール４Ｂ〜４Ｈとして、左側から順に、旋盤モジュール、仮置きモジュール、ドリルモジュール、検査モジュールが、それぞれ作業順に所定数配置されている。そして、工作機械装置１では、最も左側に配置された搬入モジュールによって投入されたワークが、左側にある各作業機モジュールから順に、各作業機モジュールによる作業が行われ、最終的に搬出モジュールから排出されるようになっている。
【００２３】
また、工作機械装置１は、ワークを作業機モジュール４Ａ〜４Ｉの配列方向に移送するワークの搬送装置、ワークの反転装置、作業位置へのワークの装着装置、作業位置からのワークの離脱装置として、アーム２１を備えている。尚、工作機械装置１が備えているアーム２１の数は、ベースユニット２Ａ〜２Ｅの数に比例する。基本的には、２台の作業機モジュールが配置された２つのベースユニット（即ち４台の作業機モジュール）に対して、１つのアーム２１が配置される。例えば、本実施形態では、ベース３は、搬入モジュールが載置されたベースユニット２Ａを除くと、４つのベースユニット２Ｂ〜２Ｅからなる。従って、アーム２１は、ベース３に２本配置されることとなる。
【００２４】
ここで、アーム２１は、ベース３と略同じ高さのテーブル２４上に配置されており、ベース３の側面に設けられたレールに沿って、テーブル２４とともに作業機モジュール４Ａ〜４Ｉの配列方向である左右方向に移動可能に構成されている。即ち、アーム２１は、ベース３と作業機モジュール４Ａ〜４Ｉの外壁とによって形成された作業空間前を、左右方向に移動することが可能とされている。また、アーム２１の先端部には、ワークを保持する保持具として、チャック２５が設けられている。そして、アーム２１は、作業機モジュール４Ａ〜４Ｉの作業空間内において、ワークを保持した状態のチャック２５を移動させることが可能とされている。これらによって、複数の作業機モジュール４Ａ〜４Ｉ間において、ワークの搬送が可能である。
【００２５】
また、アーム２１は、図２に示すように多関節型のアームであり、アーム２１の姿勢を制御可能とする複数の関節部を有している。具体的には、アーム２１は、テーブル２４と第１アーム２６との接続部分にある第１関節部２７と、第１アーム２６と第２アーム２８との接続部分にある第２関節部２９と、第２アーム２８とチャック２５との接続部分にある第３関節部３０を備えている。また、アーム２１は、各関節部において、アーム２１の角度を変位させる駆動軸を有している。従って、ユーザは、第１関節部２７の駆動軸（以下、第１駆動軸３１という）を駆動させることによって、テーブル２４に対する第１アーム２６の角度を変位させることが可能である。また、ユーザは、第２関節部２９の駆動軸（以下、第２駆動軸３２という）を駆動させることによって、第１アーム２６に対する第２アーム２８の角度を変位させることが可能である。また、ユーザは、第３関節部３０の駆動軸（以下、第３駆動軸３３という）を駆動させることによって、第２アーム２８に対するチャック２５の角度を変位させることが可能である。尚、各駆動軸３１〜３３の駆動源には、例えば、サーボモータ等が使用される。
【００２６】
従って、アーム２１は、各駆動軸３１〜３３の駆動によって、アーム２１の姿勢を自由に制御することが可能となっている。例えば、アーム２１は、図３に示すように、アーム２１を折り畳んだり、アーム２１を伸ばすことによって、チャック２５で保持したワーク４０を空間内で自由に移動させることが可能となる。更に、アーム２１は、第３駆動軸３３の回転駆動によって、ワーク４０を１８０度反転させることも可能である。また、上下方向をＲＹ軸、前後方向をＲＺ軸とすると、アーム２１は、各駆動軸３１〜３３の駆動によって、ワーク４０のＲＹ値を維持した状態でＲＺ値を変位させる（即ち、ワーク４０を水平方向に移動させる）ことも可能である。同じく、アーム２１は、ワーク４０のＲＺ値を維持した状態でＲＹ値を変位させる（即ち、ワーク４０を鉛直方向に移動させる）ことも可能である。その結果、アーム２１は、そのアーム２１を作業機モジュール４Ａ〜４Ｉの作業位置まで伸ばし、チャック２５によって、作業位置にワーク４０を装着させることや、作業位置からワーク４０を離脱させること等も可能である。
【００２７】
また、テーブル２４の下方には、アーム回転装置４１が設けられている。アーム回転装置４１は、テーブル２４を水平方向に回転させることで、テーブル２４上にあるアーム２１についても回転させ、アーム２１全体の向きを制御することが可能である。
【００２８】
（工作機械装置の制御構成）
次に、本実施形態に係る工作機械装置１の制御構成について、図４を用いて説明する。図４は、本実施形態に係る工作機械装置１を示したブロック図である。
【００２９】
図４に示すように、本実施形態に係る工作機械装置１は、工作機械装置１の全体の制御を行う電子制御ユニットである制御回路部５１と、ユーザの操作を受け付けるとともに情報の表示を行うコントローラ５と、ＬＡＮ（Local Area Network）等を介して接続された上述した作業機モジュール４Ａ〜４Ｉと、アーム２１と、圧縮空気装置７０等を基本的に有している。尚、作業機モジュール４Ａ〜４Ｉやアーム２１の数は、上述したように、ベースユニットの数に応じた数となる。
【００３０】
ここで、コントローラ５は、工作機械装置１の現在の作動状況や設定状況等を表示する液晶ディスプレイ５２と、ユーザの操作を受け付ける操作受付装置として操作部５３とを備えている。尚、操作部５３は、ハードボタンであっても良いし、液晶ディスプレイ５２の前面に配置されたタッチパネルであっても良い。そして、ユーザは、液晶ディスプレイ５２の表示内容を確認するとともに、操作部５３を操作することによって、工作機械装置１に対する各種操作を行う。
【００３１】
制御回路部５１は、演算装置及び制御装置としてのＣＰＵ６１を備えており、更にＣＰＵ６１が各種の演算処理を行うにあたってワーキングメモリとして使用されるＲＡＭ６２、ＲＯＭ６３、ＲＯＭ６３から読み出したプログラムを記憶するフラッシュメモリ６４等の内部記憶装置を備えている。
【００３２】
また、フラッシュメモリ６４は、ＣＰＵ６１が行う処理に必要な情報、例えば、制御プログラム等が記憶されている。尚、制御プログラムには、工作機械装置１の加工制御プログラム、後述するオーバーラップ動作を実行するための制御プログラム等がある。
【００３３】
そして、制御回路部５１は、フラッシュメモリ６４から制御プログラムを読み出し、読み出した制御プログラムに従って、作業機モジュール４Ａ〜４Ｉやアーム２１や圧縮空気装置７０等に対して信号を出力することによって、工作機械装置１の制御を行う。そして、信号を受け取った作業機モジュール４Ａ〜４Ｉやアーム２１や圧縮空気装置７０は、受け取った信号に従って、各駆動源の駆動等を行う。
【００３４】
例えば、アーム２１は、第１関節部２７の第１駆動軸３１を回転駆動する為の第１関節モータ６５と、第２関節部２９の第２駆動軸３２を回転駆動する為の第２関節モータ６６と、第３関節部３０の第３駆動軸３３を回転駆動する為の第３関節モータ６７と、アーム回転装置４１を回転駆動させる為の回転駆動モータ６８とを備えている。更に、アーム２１は、アーム２１を作業機モジュール４Ａ〜４Ｉの配列方向である左右方向に移動する為の搬送駆動モータ６９を備えている。各モータ６５〜６９は、例えば、サーボモータ等からなる。そして、工作機械装置１では、制御回路部５１から出力された信号に従って、各モータ６５〜６９が駆動することによって、アーム２１を任意の位置で任意の姿勢に制御することが可能となる。
【００３５】
尚、以下では、第１関節モータ６５で回転駆動される第１関節部２７の第１駆動軸３１がＡ軸と記載され、第２関節モータ６６で回転駆動される第２関節部２９の第２駆動軸３２がＢ軸と記載され、第３関節モータ６７で回転駆動される第３関節部３０の第３駆動軸３３がＣ軸と記載されることがある。また、回転駆動モータ６８で回転駆動されるアーム回転装置４１の駆動軸がＤ軸と記載され、搬送駆動モータ６９で直線駆動されるアーム２１の移動方向（つまり、左右方向）がＸ軸と記載されることがある。
【００３６】
また、フラッシュメモリ６４に記憶された加工制御プログラムは、工作機械装置１で実施される加工工程に応じたものである。つまり、複数の作業機モジュール４Ａ〜４Ｉで実施される一連の加工工程に従った加工制御プログラムが、フラッシュメモリ６４に格納されている。尚、工作機械装置１が一連の加工工程を複数種類実施可能である場合には、実施可能な一連の加工工程毎に対応する加工制御プログラムが、フラッシュメモリ６４に格納されている。そして、工作機械装置１では、加工制御プログラムに従った順序で、各作業機モジュール４Ａ〜４Ｉにおいて、ワークに対する加工が行われる。
【００３７】
圧縮空気装置７０は、各作業機モジュール４Ａ〜４Ｉで使用される圧縮空気を供給するものである。圧縮空気は、各作業機モジュール４Ａ〜４Ｉにおいて、例えば、作業空間を外部から遮断するためのシャッターの駆動源、又は加工屑の除去等に使用される。
【００３８】
（工作機械装置のオーバーラップ動作）
続いて、本実施形態に係る工作機械装置１が実行可能なオーバーラップ動作について、図５を用いて説明する。図５では、アーム２１のチャック２５（以下、アーム２１の先端という）の移動軌跡がＲＹ軸とＲＺ軸で特定される実線で示されることによって、アーム２１のオーバーラップ動作の一例が示されている。尚、以下の説明では、図５に示されたアーム２１のオーバーラップ動作が、作業機モジュール４Ｂ内で行われているが、他の作業機モジュール４Ａ、４Ｃ〜４Ｉ内で行われても、同様である。
【００３９】
図５に示されたアーム２１のオーバーラップ動作を具体的に説明すると、先ず、アーム２１の先端が、位置Ｐ１を経由して、位置Ｐ２へ向かって移動する第１動作が実行される。但し、第１動作は、第２関節モータ６６のみが回転駆動することによって行われる。そして、第１動作の実行中において、アーム２１の先端が位置Ｐ１を通過すると、アーム２１の先端がＲＺ軸に沿って位置Ｐ３へ向かって移動する第２動作が、第１動作とオーバーラップして実行される。そのため、位置Ｐ２へ向かっているアーム２１の先端は、位置Ｐ１を通過すると、位置Ｐ３へ向かって移動し始めるので、位置Ｐ３に到達するまで、図５の実線で示されたようにして、曲線及び直線を描きながら移動する。この移動は、第１動作時の第２関節モータ６６に加えて、第１関節モータ６５及び第３関節モータ６７によって行われる。その際、各モータ６５〜６７は、同期しながら回転駆動する。尚、このようなオーバーラップ動作では、第１動作が先行動作に相当し、第２動作が後行動作に相当する。
【００４０】
そして、このようなアーム２１のオーバーラップ動作が行われた結果、アーム２１の先端は、図５の実線で示されたように、干渉領域７１を避けつつも、干渉領域７１に沿って移動する。尚、干渉領域７１は、作業機モジュール４Ｂにアーム２１が衝突する領域である。
【００４１】
これに対して、図５に示されたアーム２１のオーバーラップ動作とは異なり、アーム２１の先端が位置Ｐ２へ向かって移動する第１動作の実行中において、第２関節モータ６６の減速をトリガーにして、アーム２１の先端がＲＺ軸に沿って位置Ｐ３へ向かって移動する第２動作が実行開始されることによって、第１動作と第２動作がオーバーラップする場合を想定してみる。そのような場合には、アーム２１の先端は、図５の二点鎖線で示されるようにして移動するので、図５の実線で示された場合と比べ、干渉領域７１から離れて移動する。
【００４２】
尚、図５には示されていないが、アーム２１の先端がＲＺ軸に沿って位置Ｐ３へ向かって移動する第２動作が実行されると、その実行開始から０．２秒経過したときに、圧縮空気装置７０が駆動することによって、作業機モジュール４Ｂのシャッターが開けられる第３動作が、第２動作とオーバーラップして実行される。尚、このようなオーバーラップ動作では、第２動作が先行動作に相当し、第３動作が後行動作に相当する。
【００４３】
次に、上述した２つのオーバーラップ動作を実現するための制御プログラムについて、図６を用いて説明する。図６に示された制御プログラムは、制御回路部５１が備えているフラッシュメモリ６４に記憶されており、ＣＰＵ６１により実行される。
【００４４】
図６に示された制御プログラムにおいて、１行目のＯＶＬＰ；は、オーバーラップ動作の実行開始を示すコードである。２行目のＧ０Ｂ＃Ｐ２；は、Ｂ軸のみの回転駆動によって、アーム２１の先端が位置Ｐ２へ向けて移動することを示している。尚、本実施形態では、アーム２１の先端は、Ｂ軸のみの回転駆動によって、位置Ｐ２へ向けて移動すると、位置Ｐ１を必ず通過するものとする。
【００４５】
ここで、Ｇ０とは、第１関節モータ６５、第２関節モータ６６、第３関節モータ６７、回転駆動モータ６８、及び搬送駆動モータ６９のうち、いずれか一つのモータが駆動することによって行われる、アーム２１の動作命令を示すコード（以下、Ｇ０コードという）である。つまり、本実施形態のＧ０コードは、単軸で行われるアーム２１の動作命令を意味し、第２作業の動作を実行する命令に相当する。
【００４６】
また、Ｇ０の右横には、Ａ、Ｂ、Ｃ、Ｄ、及びＸのいずれか一つの軸名称が、パラメータとして設定される。Ａのパラメータは、Ａ軸、つまり、第１関節モータ６５で回転駆動される第１関節部２７の第１駆動軸３１を示している。Ｂのパラメータは、Ｂ軸、つまり、第２関節モータ６６で回転駆動される第２関節部２９の第２駆動軸３２を示している。Ｃのパラメータは、Ｃ軸、つまり、第３関節モータ６７で回転駆動される第３関節部３０の第３駆動軸３３を示している。Ｄのパラメータは、Ｄ軸、つまり、回転駆動モータ６８で回転駆動されるアーム回転装置４１の駆動軸を示している。Ｘのパラメータは、Ｘ軸、つまり、搬送駆動モータ６９で直線駆動されるアーム２１の移動方向（つまり、左右方向）を示している。尚、上述した軸名称のパラメータは、後述するコードでも、同様である。
【００４７】
従って、Ｇ０Ｂとは、Ｂ軸（つまり、第２関節モータ６６で回転駆動される第２関節部２９の第２駆動軸３２）のみによって行われるアーム２１の動作を示している。また、Ｇ０Ｂの右横には、アーム２１の先端位置を示すパラメータが、その先頭に♯の記号を付して設定される。尚、アーム２１の先端位置は、マクロで呼び出された数値が代入される変数、ポイント（例えば、上述した位置Ｐ１、位置Ｐ２、位置Ｐ３等）、及び距離（単位は、ｍｍ、ｉｎｃｈ等）等が、単独で又は組み合わされて表される。この点は、後述するコードでも、同様である。以上より、２行目のＧ０Ｂ＃Ｐ２；は、アーム２１の先端が位置Ｐ２に到達するまで、Ｂ軸（の第２駆動軸３２）が第２関節モータ６６で回転駆動されることを示している。
【００４８】
３行目には、ＷＡＩＴ［Ｂ  ＧＴ  Ｂ＃Ｐ１］；が記載されている。ＷＡＩＴ［］；の命令文は、［］内で特定される条件が満たされたタイミングで、次行目のコードの動作が実行開始されることを示している。ここでは、［］内において、軸名称のパラメータ、比較演算子、及びアーム２１の先端位置のパラメータが、それらの表記順で設定される。比較演算子は、例えば、上記のＧＴ（左辺が右辺より大きい）、又はＬＴ（左辺が右辺より小さい）等が使用される。以上より、３行目のＷＡＩＴ［Ｂ  ＧＴ  Ｂ＃Ｐ１］；は、Ｂ軸の回転駆動によって移動中のアーム２１の先端が位置Ｐ１を通過したタイミングで、次行目のコードの動作が実行開始されることを示している。
【００４９】
４行目のＧ１０１ＲＺ＃Ｐ３；は、Ａ軸、Ｂ軸、及びＣ軸が同期しながら回転駆動することによって、アーム２１の先端がＲＺ軸に沿って位置Ｐ３へ向けて移動することを示している。
【００５０】
ここで、Ｇ１０１とは、第１関節モータ６５、第２関節モータ６６、及び第３関節モータ６７が同期しながら回転駆動することによって行われる、アーム２１の動作命令を示すコード（以下、Ｇ１０１コードという）である。つまり、本実施形態のＧ１０１コードは、複合軸で行われるアーム２１の動作命令を意味し、第２作業の動作を実行する命令に相当する。また、Ｇ１０１の右横には、ＲＹ又はＲＺのパラメータが設定される。ここで、Ｇ１０１ＲＺとは、各モータ６５〜６７が同期しながら回転駆動することによって、アーム２１の先端がＲＺ軸に沿って移動することを示している。
【００５１】
尚、図６とは異なり、Ｇ１０１の右横にＲＹのパラメータが設定された場合には、アーム２１の先端がＲＹ軸に沿って移動することを示している。また、Ｇ１０１の右横において、ＲＹ及びＲＺのいずれのパラメータも設定されていない場合には、アーム２１の先端は、Ａ軸、Ｂ軸、及びＣ軸が同期しながら回転駆動することによって移動するが、ＲＹ軸又はＲＺ軸に沿って移動するとは限らない。
【００５２】
５行目には、ＷＡＩＴ［ＴＩＭＥ２．０］；が記載されている。ＷＡＩＴ［］；の命令文は、上述したように、［］内で特定される条件が満たされたタイミングで、次行目のコードの動作が実行開始されることを示している。ここでは、［］内において、時間のパラメータがその先頭にＴＩＭＥの記号を付して設定される。尚、時間は、各制御プログラムで共通して使用する単位（本実施形態では、秒）で表される。以上より、５行目のＷＡＩＴ［ＴＩＭＥ０．２］；は、前行目のコードの実行開始がされてから０．２秒後のタイミングで、次行目のコードの動作が実行開始されることを示しており、ドゥエルの機能を果たしている。
【００５３】
６行目のＭ１２；は、作業機モジュール４Ｂのシャッターが開くまで、圧縮空気装置７０が駆動されることを示している。ここで、Ｍとは、アーム２１の各モータ６５〜６９以外の駆動源を駆動させることによって行われる動作命令を示すコード（以下、Ｍコードという）である。つまり、本実施形態のＭコードとは、作業機モジュール４Ｂ内で行われるアーム２１以外の動作命令を意味し、第１作業の動作を実行する命令に相当する。また、Ｍの右横には、動作命令の内容を示す数字がパラメータとして設定される。つまり、６行目は、Ｍの右横に数字の１２が設定されることによって、作業機モジュール４Ｂのシャッターが圧縮空気装置７０を駆動源として開けられることを示している。
【００５４】
最終行目のＯＶＬＰＥＮＤ；は、オーバーラップ動作の終了を示すコードである。以上より、オーバーラップ動作を実現するための制御プログラムでは、ＷＡＩＴ［］；の命令文を使用することにより、前行のコードの動作が実行中において、［］内で特定される条件が満たされたタイミングで、次行のコードの動作が実行開始される。これによって、次行のコードの動作が、前行のコードの動作とオーバーラップして実行される。［］内で特定される条件には、アーム２１の先端位置、又は前行のコードの動作が実行開始されてから経過した時間がある。このようにして、本実施形態の工作機械装置１は、オーバーラップさせる条件を動作毎に設定することが可能である。
【００５５】
尚、本実施形態の工作機械装置１では、オーバーラップ可能な２つの動作の組合せとして、図７に示された９つのパターンがある。各パターンとも、制御プログラムにおいて、ＷＡＩＴ［］；の命令文が２つのコードの間に記載されることによって実現される。
【００５６】
先ず、図７の上段に示された３つのパターンについて説明する。最初のパターンでは、単軸で行われるアーム２１の先行動作（Ｇ０コードの動作）が実行中に、単軸で行われるアーム２１の後行動作（Ｇ０コードの動作）が実行開始されることによって、２つの動作がオーバーラップする。この場合、先行動作及び後行動作は、第２作業の動作である。中央のパターンでは、単軸で行われるアーム２１の先行動作（Ｇ０コードの動作）が実行中に、複合軸で行われるアーム２１の後行動作（Ｇ１０１コードの動作）が実行開始されることによって、２つの動作がオーバーラップする。この場合も、先行動作及び後行動作は、第２作業の動作である。最後のパターンでは、単軸で行われるアーム２１の先行動作（Ｇ０コードの動作）が実行中に、アーム２１以外の後行動作（Ｍコードの動作）が実行開始されることによって、２つの動作がオーバーラップする。この場合、先行動作が第２作業の動作であり、後行動作が第１作業の動作である。
【００５７】
次に、図７の中段に示された３つのパターンについて説明する。最初のパターンでは、複合軸で行われるアーム２１の先行動作（Ｇ１０１コードの動作）が実行中に、単軸で行われるアーム２１の後行動作（Ｇ０コードの動作）が実行開始されることによって、２つの動作がオーバーラップする。この場合、先行動作及び後行動作は、第２作業の動作である。中央のパターンでは、複合軸で行われるアーム２１の先行動作（Ｇ１０１コードの動作）が実行中に、複合軸で行われるアーム２１の後行動作（Ｇ１０１コードの動作）が実行開始されることによって、２つの動作がオーバーラップする。この場合も、先行動作及び後行動作は、第２作業の動作である。最後のパターンでは、複合軸で行われるアーム２１の先行動作（Ｇ１０１コードの動作）が実行中に、アーム２１以外の後行動作（Ｍコードの動作）が実行開始されることによって、２つの動作がオーバーラップする。この場合、先行動作が第２作業の動作であり、後行動作が第１作業の動作である。
【００５８】
次に、図７の下段に示された３つのパターンについて説明する。最初のパターンでは、アーム２１以外の先行動作（Ｍコードの動作）が実行中に、単軸で行われるアーム２１の後行動作（Ｇ０コードの動作）が実行開始されることによって、２つの動作がオーバーラップする。この場合、先行動作が第１作業の動作であり、後行動作が第２作業の動作である。中央のパターンでは、アーム２１以外の先行動作（Ｍコードの動作）が実行中に、複合軸で行われるアーム２１の後行動作（Ｇ１０１コードの動作）が実行開始されることによって、２つの動作がオーバーラップする。この場合も、先行動作が第１作業の動作であり、後行動作が第２作業の動作である。最後のパターンでは、アーム２１以外の先行動作（Ｍコードの動作）が実行中に、アーム２１以外の後行動作（Ｍコードの動作）が実行開始されることによって、２つの動作がオーバーラップする。この場合、先行動作及び後行動作は、第１作業の動作である。
【００５９】
ちなみに、本実施形態と特許請求の範囲の対応関係は、以下の通りである。アーム２１は、ロボットの一例である。ＣＰＵ６１は、制御装置の一例である。フラッシュメモリ６４は、記憶装置の一例である。
【００６０】
（変更例）
尚、本開示は上記実施形態に限定されるものでなく、その趣旨を逸脱しない範囲で様々な変更が可能である。
例えば、図６の制御プログラムにおいて、アーム２１の先端位置を示すパラメータに代えて、各モータ６５〜６９（つまり、Ａ軸、Ｂ軸、Ｃ軸、Ｄ軸、又はＸ軸）の位置（座標）、角度値、又は速度値を示すパラメータが使用されても良い。
【００６１】
また、Ｇ０コードについては、Ｇ０という英数字に代えて、例えば、単軸という漢字等で表記されても良い。同様にして、Ｇ１０１コードについては、Ｇ１０１という英数字に代えて、例えば、複合軸という漢字等で表記されても良い。同様にして、Ｍコードについては、Ｍという英数字に代えて、例えば、補助という漢字等で表記されても良い。
【００６２】
また、作業機モジュール４Ａ〜４Ｉ及びアーム２１は、制御回路部５１によって制御されているが、それぞれが個別に備える制御回路部によって制御されても良い。
【００６３】
また、本実施形態では、作業機モジュール４Ａ〜４Ｉは、基本的に１つのベースユニットに対して２台ずつ設置されているが、１つのベースユニットに対して１台又は３台以上設置されても良い。
【００６４】
また、本実施形態では、作業機モジュールの種類として、工作機械装置１内にワークが投入される搬入モジュール、旋削加工が行われる旋盤モジュール、ドリルによる穴あけやミーリング加工等が行われるドリルモジュールを例に挙げて説明している。更に、ワーク４０に対して検査が行われる検査モジュール、ワークの仮置きが行われる仮置きモジュール、工作機械装置１内からワークが排出される搬出モジュールを例に挙げて説明しているが、上記以外の種類の作業機モジュールでも良い。
【００６５】
また、本実施形態では、アーム２１は、その駆動軸として、第１駆動軸３１、第２駆動軸３２、第３駆動軸３３を有しているが、アーム２１の駆動軸の数は、いくつであっても良い。
【符号の説明】
【００６６】
１          工作機械装置
４Ａ〜４Ｉ  作業機モジュール
２１          アーム
６１          ＣＰＵ
６４          フラッシュメモリ
【図１】
2019077668.tif 000003
【図２】
2019077668.tif 000004
【図３】
2019077668.tif 000005
【図４】
2019077668.tif 000006
【図５】
2019077668.tif 000007
【図６】
2019077668.tif 000008
【図７】
2019077668.tif 000009
【国際調査報告】
2019077668.tif 000010
2019077668.tif 000011
2019077668.tif 000012