(57)【要約】【課題】本発明は、記憶した複数の作業命令を、所定の位置で動作させるロボットの動作設定方法、その動作方法を利用したロボット、及びそのロボットの動作を設定するための動作設定プログラム関する。【解決手段】本実施形態のロボットは、作業ツールを複数のワークが設置されたポイントに移動させ、各ワークが設置されたポイントで指定された処理を行う。ポイント座標記憶部１６ｂは、ワークが設置されたポイントの位置を記憶する。第１の作業命令列記憶部１６ｃは、ワークが設置されたポイントで実行させる第１の作業命令を記憶する。第２の作業命令列記憶部１６ｄは、ワークが設置されたポイントで実行させる第２の作業命令を記憶する。制御部１１は、ポイント列記憶部１６に記憶した位置に作業ツールを移動させ、第１の作業命令と第２の作業命令を実行させる。【選択図】図２
2015134395.tif 000002
【特許請求の範囲】
【請求項１】
作業ツールを所定のポイントに移動させ、そのポイントで指定された処理を行うロボットにおいて、
前記ポイントの位置を記憶するポイント位置記憶部と、
前記ポイントで実行させる第１の作業命令を記憶する第１の作業命令列記憶部と、
前記ポイントで実行させる第２の作業命令を記憶する第２の作業命令列記憶部と、
前記ポイント位置記憶部に記憶した位置に作業ツールを移動させ、前記第１の作業命令と前記第２の作業命令を実行させる制御部と、
を備えることを特徴とするロボット。
【請求項２】
前記第１の作業命令の実行で得られた変数を記憶する変数記憶部と、を更に備え、
前記第２の作業命令の実行時は、前記変数を反映させた命令を実行させることを特徴とする請求項１に記載のロボット。
【請求項３】
前記変数は、位置の補正量を示すデータ値であり、
前記制御部は、前記第２の作業命令を実行させるときに、この位置の補正量を参照し、前記作業ツールを移動させることを特徴とする請求項２に記載のロボット。
【請求項４】
作業ツールを所定のポイントに移動させ、そのポイントで指定された処理を行うロボットの制御方法において、
前記ポイントを記憶するポイント位置記憶処理と、
前記ポイントで実行させる第１の作業命令を記憶する第１の作業命令列記憶処理と、
前記ワークが設置されたポイントで実行させる第２の作業命令を記憶する第２の作業命令列記憶処理と、
前記ポイント記憶処理で記憶した位置に作業ツールを移動させ、前記第１の作業命令と前記第２の作業命令を実行させる処理と、
前記第１の作業命令の実行で得られた変数を記憶する変数記憶処理と、を含み、
前記第２の作業命令の実行時は、前記変数を反映させた命令を実行させることを特徴とするロボットの制御方法。
【請求項５】
作業ツールを複数のワークが設置されたポイントに移動させ、各ワークが設置されたポイントで指定された処理を行うロボットの制御プログラムにおいて、
前記プログラムは、前記ロボットを制御するコンピュータに対して、
前記ワークが設置されたポイントを記憶するポイント位置記憶処理と、
前記ワークが設置されたポイントで実行させる第１の作業命令を記憶する第１の作業命令列記憶処理と、
前記ワークが設置されたポイントで実行させる第２の作業命令を記憶する第２の作業命令列記憶処理と、
前記ポイント記憶処理で記憶した位置に作業ツールを移動させ、前記第１の作業命令と前記第２の作業命令を実行させる処理と、
前記第１の作業命令の実行で得られた変数を記憶する変数記憶処理と、を実行させ、
前記第２の作業命令の実行時は、前記変数を反映させた命令を実行させることを特徴とするロボットの制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、記憶した複数の作業命令を、一般にポイントと呼ばれる所定の位置で動作させるロボットの制御方法、その制御方法を利用したロボット、及びそのロボットの動作を制御するための動作設定プログラムに関する。
【背景技術】
【０００２】
一般に、ロボットの動作を制御するプログラムでは、ロボットに対する命令を主体とし任意の処理を実行させる方法と、ロボットを動作させるポイントにおける処理を主体とする方法が知られている。ポイントにおける処理を主体とするロボットでは、ポイントと呼ばれる所定の位置でロボットに任意の処理を実行させる。
【０００３】
ポイントにおける処理を主体とするロボットおいて、あるポイントにおいて仮入れ作業と本締め作業などの２種類の作業を実行させる場合には、そのポイントにおける作業として仮入れを設定し、その後、同じポイントにおいて本締め作業の設定を行う。すなわち、同じ座標を異なるポイントと認識して、それぞれに仮入れ作業と本締め作業を設定する必要がある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−１９３８４６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
このようなロボットにおいて、図１２に示すように、ポイント１〜８の位置で仮入れ作業と本締め作業を行う場合には、次の(a)〜(d)の項目を設定する必要がある。
(a)仮入れ作業を行うポイント１〜８のＸ，Ｙ，Ｚ座標を設定する。
(b)ポイント１〜８で行う「ポイント作業」として、「仮入れ作業」を設定する。
(c)本締め作業を行うポイントとして、仮入れ作業を行ったポイント１〜８をポイント９〜１６としてＸ，Ｙ，Ｚ座標を設定する。
(d)ポイント９〜１６で行う「ポイント作業」として、「本締め作業」を設定する。
以上の(a)〜(d)を設定することで、ポイント１〜８において、対象物であるワークに対して「仮入れ作業」と「本締め作業」を行うことができる。
【０００６】
この場合のポイント列の設定の例としては、初めに、各ポイントにおいて、「仮入れ作業」を設定し、その後各ポイントにおいて「本締め作業」の設定を行う。図１３に示すように、「仮入れ作業」の設定としては、ポイント１〜８における「ポイント作業番号」として「１」を設定する。「ポイント作業番号」とは、そのポイントにおいて実行させる作業命令列を番号で示したものであり、ここで設定した番号を参照し、その番号が示す作業命令列を実行させるものである。同様に、ポイント２〜８においても、「ポイント作業番号」として「１」を設定する。
【０００７】
そして、ポイント１〜８と同じＸ，Ｙ，Ｚ座標のポイントをポイント９〜１６として「本締め作業」の設定をする。ポイント９〜１６で行う「ポイント作業番号」として「２」を設定する。
【０００８】
このように、従来のポイント主体のロボットのティーチングにおいては、同じポイントにおいて、２つのポイント作業の設定ができなかった。そのため、同じポイントにおいて仮入れ作業と本締め作業の２種類の作業を行う場合には、上記の様に、同じ座標で示される１つのポイントを異なるポイントと認識し、それぞれのポイントで仮入れ作業と本締め作業を設定する必要がある。このように、同一の座標で示される１つのポイントでの作業にも関わらず、異なったポイントとして扱うため、ティーチングの際に、両ポイントにおいて同じ様に設定をする必要があり、煩雑で、間違いを起こしやすかった。
【０００９】
また、２つの作業が関連している場合、例えば、第１の作業（ポイント１〜８での作業）の結果として得られるデータを参照して、第２の作業（ポイント９〜１６での作業）を実行する場合に、このデータを関連させる為に、何らかの明示的な指示をする必要があった。例えば、図１４に示すように、あるポイントの第１の作業として「仮入れ動作を行い、停止した時のドライバー回転角度を変数rot[tagNumber]に入れる」を実行させる。そして、第２の作業として「rot[tagNumber]から回転角度を読み出し、本締めを開始する前に、この角度にドライバーをセットする」を実行させる。この場合には、第１の作業の結果ドライバー回転角度を変数配列rot[tagNumber]のどこに記憶させたのかを、変数配列rot[tagNumber]を参照する第２の作業側に知らせ、示すといったことが必要であった。しかしながらこれは煩雑で間違いを起こしやすかった。
【００１０】
本発明は、上記のような従来技術の問題点を解決するために提案されたもので、１つのポイントにおける作業として、第１の作業と第２の作業といった２つの作業を設定することができる。これにより、ティーチングの際の簡略化を図ると共に、ヒューマンエラーの防止を図ることができるロボット、ロボットの制御方法、及びロボットの制御プログラムを提供する。
【課題を解決するための手段】
【００１１】
上記の目的を達成するために、本発明は、作業ツールを所定のポイントに移動させ、そのポイントで指定された処理を行うロボットにおいて、前記ポイントの位置を記憶するポイント位置記憶部と、前記ポイントで実行させる第１の作業命令を記憶する第１の作業命令列記憶部と、前記ポイントで実行させる第２の作業命令を記憶する第２の作業命令列記憶部と、前記ポイント位置記憶部に記憶した位置に作業ツールを移動させ、前記第１の作業命令と前記第２の作業命令を実行させる制御部と、を備える。
【００１２】
また、作業ツールを複数のワークが設置されたポイントに移動させ、各ワークが設置されたポイントで指定された処理を行うロボットの制御方法、及びロボットの制御プログラムも本発明の一態様である。
【図面の簡単な説明】
【００１３】
【図１】本発明の第１の実施形態に係るロボットの全体構成を示す斜視図である。
【図２】本発明の第１の実施形態の制御装置の機能ブロック図である。
【図３】本発明の第１の実施形態のポイント列記憶部の構成を示すブロック図である。
【図４】本発明の第１の実施形態の作業命令列記憶部で記憶する作業内容を示す図である。
【図５】本発明の第１の実施形態の作業命令列記憶部に記憶するポイント番号を示す図である。
【図６】本発明の第１の実施形態におけるポイント列記憶部に記憶する一例を示す図である。
【図７】本発明の第１の実施形態において複数のワークに対するロボットの動作を示すフローチャートである。
【図８】本発明の第１の実施形態において位置の補正量を参照し、作業ツールを移動させる場合の作業命令列記憶部で記憶する作業内容を示す図である。
【図９】本発明の他の実施形態において、第１の作業を終了後、第２の作業を行うために戻るポイントを設定する場合の作業命令列記憶部で記憶する作業内容を示す図である。
【図１０】本発明の他の実施形態において、第１の作業を終了後、第２の作業を行うために戻るポイントを設定した場合のロボットの動作を示すフローチャートである。
【図１１】本発明の他の実施形態において、作業命令列記憶部でポイント種別定義する場合の設定内容を示す図である
【図１２】従来のロボットにおけるねじ締め作業を示す図である。
【図１３】従来のロボットにおける作業命令列を示す図である。
【図１４】従来のロボットにおけるポイント作業命令と配列変数を示す図である。
【発明を実施するための形態】
【００１４】
以下、本発明に係るロボットの実施形態について図面を参照しつつ詳細に説明する。実施形態において、重複する図面の説明は省略する。
【００１５】
［１．第１の実施形態］
図１は、本実施形態のロボットの全体構成を示す図である。本実施形態のロボットは、図１に示す様に大きく２つの部分から構成される。１つはコントローラ１であり、１つは本体２である。本体２は、Ｘ方向に稼働するＸスライダー３、Ｙ方向に稼働する部分に載っているＹスライダー４、Ｚ方向に稼働する部分に取り付けられているＺスライダー５からなる。Ｚスライダー５のＺ方向に稼働する部分に、作業ツール（図示せず）が取り付けられる。各スライダーはモータで駆動され、コントローラ１の指令でモータを可動させることで、作業ツールをＸ，Ｙ，Ｚ方向に移動させる。
【００１６】
本実施形態のロボットにおいて、ポイント１〜８の位置で仮入れ作業と本締め作業を行う場合には、次の(a)(b)の項目を設定する必要がある。
(a)仮入れ作業を行うポイント１〜８のＸ，Ｙ，Ｚ座標を設定する。
(b)ポイント１〜８における、第１の作業として「仮入れ作業」を、第２の作業として「本締め作業」を設定する。
以上の(a)(b)を設定することで、ポイント１〜８において、対象物であるワークが設置されたポイント１〜８で「仮入れ作業」と「本締め作業」を行うことができる。
【００１７】
このようなロボットの制御では、ティーチングで設定したポイントの順に作業ツールを移動させ、各ポイントにおけるポイント種別で定義した第１の作業と第２の作業とを実行させる。また、第２の作業の実行時に、第１の作業の結果を反映させることができる。
【００１８】
［１−１．構成］
コントローラ１の内部には制御装置１０がある。図２は、制御装置１０の機能ブロック図である。図２において、マイクロコンピュータを主体に構成される制御部（ＣＰＵ）１１は、ロボット全体の制御を行う。制御部１１は、ロボット制御プログラム記憶部１２に記憶されている制御プログラムに従って、入力操作、表示、記憶、モータ駆動、信号入出力を行う。ロボットは、操作部１３、表示部１４、一時記憶部１５、ポイント列記憶部１６、作業命令列記憶部１７を備える。この制御動作の為に一時記憶部１５を使用する。
【００１９】
制御部１１は、モータ駆動制御部２１に指令を出力し、モータ２２を駆動して各種の動作を実行させる。モータ駆動制御部２１とモータ２２は必要とする任意の数だけ設けられ、モータ２２には、モータ２２の動力により、作業及び動作を実行する作業ツールが接続される。
【００２０】
例えば、ねじ締め作業ツールの場合においては、ねじ締め作業ツールを所定のポイントに移動させるためのＸ軸方向移動用モータ、Ｙ軸方向移動用モータ、Ｚ軸方向移動用モータに加えて、ねじ締め器具を回転させるためのねじ締め用のモータの４つのモータで制御を行う。また、制御部１１は信号入出力部２３に指令を出し、外部からの信号入力及び外部への信号出力を実行させる。外部から入力した信号を、ロボットの制御に反映させ、外部への信号に基づいて外部機器の制御を行う。
【００２１】
操作部１３はキーボード等の入力装置や、ティーチングのためのハード的、ソフト的機構などであって、ロボットのプログラムやデータの入力を行うものである。また表示部１４はＬＣＤ表示装置等で、設定値の表示や操作部１３による入力状態を表示するものである。
【００２２】
一時記憶部１５は、所謂メモリであり、制御部１１が制御指令を出力する際の必要な情報を一時的に記憶する記憶部である。
【００２３】
ポイント列記憶部１６は、作業ツールを移動させるポイントと、そのポイントにおいて実行する第１の作業と、第２の作業とを記憶する。また、そのポイントにおける第１の作業の結果を一時的に記憶する記憶領域を備える。ポイント列記憶部１６は、図３に示すように、ポイント番号記憶部１６ａ、ポイント座標記憶部１６ｂ、第１の作業命令列記憶部１６ｃ、第２の作業命令列記憶部１６ｄ、ポイント変数記憶部１６ｅを備える。
【００２４】
ポイント番号記憶部１６ａは、ロボットが作業を実行するポイントに付されたポイント番号を記憶する。ポイント主体のロボットでは、ポイント列記憶部１６で設定したティーチングの内容に応じて、作業ツールの制御を行う。ポイント番号は、作業ツールの制御を行うポイントに付され、ロボットはポイント番号が若いポイントから順に命令を実行する。ポイント座標記憶部１６ｂは、ロボットがポイント作業を実行するポイントをＸ，Ｙ，Ｚ座標として記憶する。ポイント座標記憶部１６ｂは、ポイント位置記憶部に相当する。
【００２５】
第１の作業命令列記憶部１６ｃは、ポイントにおける第１の作業を実行させる作業命令列を記憶する。第２の作業命令列記憶部１６ｄは、ポイントにおける第２の作業を実行させる作業命令列を記憶する。第１の作業命令列記憶部１６ｃ及び第２の作業命令列記憶部１６ｄに記憶する作業命令列は、作業命令列の内容を示す番号として記憶する。ポイント変数記憶部１６ｅは、第１の作業の実行で得られた変数をそのポイントにおける変数として記憶する。そのポイントにおいて第２の作業を実行する場合には、その変数を読み出して第２の作業に反映させる。
【００２６】
作業命令列記憶部１７は、作業ツールに作業を実行させるための作業命令列を記憶する。作業命令列は、その作業命令列を示す番号をポイント作業番号として記憶する。作業命令は、ロボットに作業動作を指示する命令であり、例えば、ねじ締め作業、塗布作業、はんだ付け作業などの各種作業の命令がある。作業命令は、作業ツールがポイントに移動する前、ポイントに移動する途中、ポイント到達時などの複数のタイミングで行う作業命令を設定し記憶する。図４は、作業命令列記憶部１７に記憶する作業命令列の一例を示す図である。図４の作業命令列は、ポイント作業番号と対応付けられた記憶される。
【００２７】
図４に示すように、「仮入れ動作を行い、停止した時のドライバー回転角度を変数  pointVar に入れる」という作業命令列が記憶される。この作業命令列に対するポイント作業番号として「１」が対応付けられる。すなわち、ティーチングの先に、第１の作業及び第２の作業を実行させるためのポイント番号として、「１」を設定すると、ロボットは、「仮入れ動作を行い、停止した時のドライバー回転角度を変数  pointVar に入れる」という動作を行う。
【００２８】
同様に、「pointVar から回転角度を読出し、本締めを開始する前に、この角度にドライバーをセットする。」という作業命令列が記憶される。この作業命令列に対するポイント作業番号として「２」が対応付けられる。
【００２９】
ポイント作業番号「３」としては、「カメラによるワーク補正量算出を行い、そのポイントのワーク補正量変数を workAdjVar に記憶する。」という作業命令列が対応付けて記憶される。ポイント作業番号「４」としては、「第２の作業を実施する位置へ移動する場合にworkAdjVar からワーク補正量変数を読出し、その補正量に応じて移動を行う。」という作業命令列が対応付けて記憶される。
【００３０】
作業命令列記憶部１７に記憶する作業命令列は、作業の内容をポイント番号と対応付けて記憶することもできるし、命令列を示すコマンドとして記憶しても良い。すなわち、図５に示すように、ポイント作業番号「３」に対応する作業命令列を「cameraWadj」というコマンドで記憶することもできる。
【００３１】
［１−２．作用］
本実施形態では、各ポイントにおけるティーチングとして、第１の作業と第２の作業といった２つの作業を設定する。これにより、ポイントの並びに従って、まず第１の作業を実行していき、その後、第２の作業を実行していく。又、第１の作業の結果データをそのポイン卜のデータとして記憶しておいて、第２の作業においては、そのポイントに記憶されたデータを参照して作業を行う。
【００３２】
本実施形態のロボットにおいて、ポイント１〜８の位置に設置された複数のワークに対して補正を行いつつ作業処理を行う場合には、図６に示すように、ポイント列記憶部１６で次の(a)(b)の項目を設定する必要がある。
(a)「仮入れ作業」及び「本締め作業」を行うポイント１〜８のＸ，Ｙ，Ｚ座標を設定する。
(b)ポイント１〜８において、第１の「ポイント作業」として「仮入れ作業」を、第２の「ポイント作業」として「本締め作業」を設定する。
以上の(a)(b)を設定することで、対象物であるワークが設置されたポイント１〜８で「仮入れ作業」と「本締め作業」を行うことができる。
【００３３】
図６に示すように、ポイント番号１〜８において、２つのポイント作業を行う場合には、初めに、ポイント番号１〜８のＸ，Ｙ，Ｚ座標を設定する。図６では、ポイント番号１に設置されたワークの場所を、（Ｘ，Ｙ，Ｚ）座標で（１００，１００，３０）と示し、ポイント番号２に設置されたワークの場所を、（Ｘ，Ｙ，Ｚ）座標で（１００，１１０，３０）と示し、ポイント番号８に設置されたワークの場所を、（Ｘ，Ｙ，Ｚ）座標で（１００，１３０，３０）と示す。これをポイント１〜８に設置されたワークの場所に対して行う。
【００３４】
次に、ポイント１〜８で行う第１の作業を実行させる作業命令列をポイント作業番号で設定する。図６では、ポイント１で行う第１の作業のポイント作業番号として「１」を設定する。ポイント作業番号「１」で示される作業命令列は、ロボットに対して「仮入れ動作を行い、停止した時のドライバー回転角度を変数 pointVer に入れる」という作業を実行させる。変数 pointVer は、ポイント毎の記憶部に記憶される変数である。そのため、ポイント作業番号で示される作業命令列を実行し得られた変数は、そのポイントにおけるデータ値として記憶される。同様に、ポイント２〜８の第１の作業のポイント作業番号として「１」を設定する。
【００３５】
次に、ポイント１〜８で行う第２の作業を実行させる作業命令列をポイント作業番号で設定する。図６では、ポイント１で行う第２の作業のポイント作業番号として「２」を設定する。ポイント作業番号「２」で示される作業命令列は、ロボットに対して「pointVerから回転角度を読み出し、本締めを開始する前に、この角度にドライバーをセットする」という作業を実行させる。上述のとおり変数pointVerは、ポイント毎の記憶部に記憶される変数であるため、ポイント作業番号「２」で指定される作業命令列において変数pointVerがどの位置に記憶されたかを指定する必要はない。
【００３６】
以下では、図６に示すポイント列記憶部に記憶された内容に従ったロボットの制御フローについて説明する。図７に示すように、初めに、ロボットは、ポイント番号１で設定された座標に作業ツールを移動させる（ＳＴＥＰ０１）。そして、ポイント１で設定したポイント作業番号が示す作業命令列に従って、作業ツールに対して第１の作業を実行させる（ＳＴＥＰ０２）。
【００３７】
ポイント１における第１の作業後、ポイント１が作業の最終ポイントであるかを判定する（ＳＴＥＰ０３）。ポイント１が作業の最終ポイントでない場合（ＳＴＥＰ０３のＮＯ）は、ポイントを１つ進める（ＳＴＥＰ０４）。そして、ポイント２で設定された座標に作業ツールを移動させ、ポイント２で設定したポイント作業番号が示す作業命令列に従って、作業ツールに対して第１の作業を実行させる。これは、作業ツールに対して第１の作業を実行させるポイントが最終ポイントとなるまで繰り返される。
【００３８】
そして、図６の場合のポイント８のように、第１の作業を実行させたポイントが最終ポイントである場合（ＳＴＥＰ０３のＹＥＳ）は、第２の作業を行うポイントを先頭のポイントとする。すなわち、ポイント８で第１の作業が終了後、第２の作業を行うポイントをポイント１とする（ＳＴＥＰ０５）。
【００３９】
そして、ポイント１で設定された座標に作業ツールを移動させ、ポイント１で設定したポイント作業番号が示す作業命令列に従って、作業ツールに対して第２の作業を実行させる。これは、作業ツールに対して第２の作業を実行させるポイントが最終ポイントとなるまで繰り返される（ＳＴＥＰ０６〜０９）。
【００４０】
次に、図６の場合のポイント８のように、第２の作業を実行させたポイントが最終ポイントである場合（ＳＴＥＰ０８のＹＥＳ）は、ロボットの制御を終了させる。
【００４１】
［１−３．効果］
以上の様な本実施形態のロボットのティーチングでは、あるポイントにおけるティーチングとして、第１の作業と第２の作業といった２つの作業を設定ことができる。これにより本実施形態のロボットでは、１か所のポイントに対するティーチングに基づいて、第１の作業を実行していき、その後第２の作業を実行していく。これにより、ティーチングの工数を減少することが出来ると共に、ティーチングの簡略化をすることができる。その結果、入力ミスなどのヒューマンエラーの防止を図ることができる。
【００４２】
又、本実施形態では、第１の作業の実行で得られた変数を記憶する変数記憶部を設け、第２の作業の実行時は、前記変数を反映させた命令を実行させることとした。これにより第１の作業の結果を基に第２の作業命令を実行させる場合に、第１の作業結果を読み出す保存領域を設定する必要がない。そのため、ティーチングを簡便にすることができる。
【００４３】
更に、本実施形態では、変数として位置の補正量を示すデータ値とし、第２の作業を実行させるときに、この位置の補正量を参照し、作業ツールを移動させることができる。図８に示すように、第１の作業を示すポイント作業番号として「３」を設定し、第２の作業を示すポイント作業番号とて「４」を設定する。
【００４４】
ポイント作業番号「３」で示される作業命令列は、ロボットに対して「カメラによるワーク補正量算出を行い、そのポイントのワーク補正量変数を workAdjVar に記憶する。」という作業を実行させる。変数workAdjVarは、ポイント毎の記憶部に記憶される変数であり、各ポイントでの補正量として記憶される。実際のワーク補正量は、１個の単なる数値ではなく、回転、並行移動（Ｘ方向）、並行移動（Ｙ方向）といった複数の数値の組み合わせからなる。この組み合わせを変数workAdjVarとして記憶する。
【００４５】
ポイント作業番号「４」で示される作業命令列は、ロボットに対して「第２の作業を実施する位置へ移動する場合にworkAdjVar からワーク補正量変数を読出し、その補正量に応じて移動を行う。」という作業を実行させる。この補正移動はポイント番号で設定される作業命令列によって行うのではなく、ロボット制御プログラム記憶部１２に記憶された制御プログラムにより行われても良い。第２の作業を実行する場合には、移動先の座標を補正量に応じて変換してから、作業ツールの移動を行っても良い。この場合でも、変数workAdjVarを各ポイント毎の記憶部に記憶する。よって、あるポイントで第２の作業を実行する場合には、そのポイントに記憶される変数workAdjVarを使用すればよく、明示的に指し示す必要はない。これにより、位置量に合わせて作業ツールを動作させるティーチングを容易に行うことが可能となる。
【００４６】
［２．他の実施形態］
以上のように本発明の実施形態を説明したが、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。そして、この実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【００４７】
（ａ）例えば、図示の実施形態では、第１の作業命令と第２の作業命令をポイント番号や命令列を示すコマンドとして定義したが、これらの命令を実行する命令文を直接入力することで命令を指定することも可能である。
【００４８】
（ｂ）ポイント列記憶部１６は、記憶する項目に合わせて揮発性のメモリと不揮発性のメモリを組み合わせることもできる。すなわち、ポイント番号、ポイント座標は、電源を切ってもデータが消去しない不揮発性のメモリに記憶し、変数pointVerやワーク補正量変数workAdjVarなどの変数は、電源を切るとデータが消去する揮発性のメモリに記憶する。このように、ポイント列記憶部は、２つの異なる種類のメモリを組み合わせても良い。これにより、データの書き込み速度や読み込み速度、電源を切った場合にデータを保存する必要があるかなどを考慮してポイント列記憶部の物理的な保存領域を設定することができる。
【００４９】
（ｃ）本実施形態では、第１と第２の作業命令を行うことを前提とするが、これらの作業命令は、２つに限らず、例えば、第３の作業命令を記憶する第３の作業命令列記憶部を設け、１つのポイントにおいて３つ以上の命令を設定することも可能である。
【００５０】
（ｄ）ロボットのティーチングとして図９に示すように、第１の作業を終了し、第２の作業を行うために戻るポイントを設定することもできる。これにより、複数のポイントにおいて、作業を行う際に、任意のポイントにおいて、２つの作業の設定をすることができる。この場合には、図１０に示すように、図７のフローチャートのＳＴＥＰ０３の代わりに、第１の作業が終了したか否かを判定し、その判定に従い、次のポイントに移動するか、もどりポイントに移動するかを判定する。
【００５１】
（ｅ）また、ロボットのティーチングとして、第１の作業と第２の作業とを切替える命令を設け、その命令により明示的に切り替え作業と、ポイント戻りを行うこともできる。これにより、任意のパターンに対応することができる。
【００５２】
（ｆ）ロボットのティーチングとして図１１に示すように、ポイント種別定義をする際にも応用することができる。すなわち、ポイント種別定義においても第１の作業と、第２の作業といった２つの作業を定義することができる。ポイント種別定義においては、ポイントでの作業に加えて、移動前の作業と、移動中の作業を設定することができる。ポイント種別定義では、この移動前の作業と、移動中の作業において、第１の作業と、第２の作業といった２つの作業を定義する。
【符号の説明】
【００５３】
１…コントローラ
２…本体
３…Ｘスライダー
４…Ｙスライダー
５…Ｚスライダー
１０…制御装置
１１…制御部（ＣＰＵ）
１２…ロボット制御プログラム記憶部
１３…操作部
１４…表示部
１５…一時記憶部
１６…ポイント列記憶部
１６ａ…ポイント番号記憶部
１６ｂ…ポイント座標記憶部
１６ｃ…第１の作業命令記憶部
１６ｄ…第２の作業命令記憶部
１６ｅ…ポイント変数記憶部
１７…作業命令列記憶部
２１…モータ駆動制御部
２２…モータ
２３…信号入出力部
【図２】
2015134395.tif 000003
【図３】
2015134395.tif 000004
【図４】
2015134395.tif 000005
【図５】
2015134395.tif 000006
【図６】
2015134395.tif 000007
【図７】
2015134395.tif 000008
【図８】
2015134395.tif 000009
【図９】
2015134395.tif 000010
【図１０】
2015134395.tif 000011
【図１１】
2015134395.tif 000012
【図１２】
2015134395.tif 000013
【図１３】
2015134395.tif 000014
【図１４】
2015134395.tif 000015
【図１】
2015134395.tif 000016