(57)【要約】【課題】呼出し元プログラムから呼出し先プログラムの一部の命令を利用したい場合、呼出し先プログラムでジャンプ処理や復帰処理を行う必要があり、処理の複雑化や開発負荷が増大する。【解決手段】第１プログラムと第２プログラムを記憶する記憶部と、記憶部のプログラムから別プログラムを作成するプログラム作成部と、記憶部のプログラムを実行する制御部を備え、第１プログラムは、第２プログラムの名称と第１の行番号と第２の行番号を含む特定命令を有し、第１プログラムが実行され、特定命令が実行されると、プログラム作成部は、第２プログラムの第１の行番号から第２の行番号までの命令からなら第３プログラムを作成して記憶部に記憶し、制御部は、第１プログラムの特定命令を実行した後に第３プログラムを実行し、第３プログラムを実行した後に第１プログラムの特定命令の次の命令以降の命令を実行する。【選択図】図１
2013151032.tif 000002
【特許請求の範囲】
【請求項１】
第１の動作プログラムと第２の動作プログラムを記憶している記憶部と、
前記記憶部に記憶されている動作プログラムから別の動作プログラムを作成する部分プログラム作成部と、
前記記憶部に記憶されている動作プログラムを実行する制御部を備え、
前記第１の動作プログラムは、前記第２の動作プログラムのプログラム名と前記第２の動作プログラムの第１の行番号と前記第２の動作プログラムの第２の行番号と新たに作成する第３の動作プログラムのプログラム名を含む特定命令を有し、
前記制御部により前記第１の動作プログラムが実行され、前記特定命令が実行されると、前記部分プログラム作成部は、前記記憶部に記憶されている前記第２の動作プログラムから前記第２の動作プログラムの第１の行番号から第２の行番号までの命令からなら前記第３の動作プログラムを作成して前記記憶部に記憶し、
前記制御部は、前記第１の動作プログラムの前記特定命令を実行した後に前記第３の動作プログラムを実行し、前記第３の動作プログラムを実行した後に前記第１の動作プログラムの前記特定命令の次の命令以降の命令を実行するプログラム作成支援システム。
【請求項２】
プログラム作成支援システムは、ロボットと前記ロボットの動作を制御するロボット制御装置とを備えたロボットシステムであり、前記ロボット制御装置は、記憶部と部分プログラム作成部と制御部を有する請求項１記載のプログラム作成支援システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットの教示プログラムを効率良く作成することを支援するロボット制御装置等のプログラム作成支援システムに関するものである。
【背景技術】
【０００２】
従来、例えば、ロボットやロボットの動作を制御するロボット制御装置等を備えるロボットシステムにおいて、ある教示プログラムから他の教示プログラムを実行する場合、呼び出し元プログラムからのコール処理が行われている。これによりプログラムを個別に作成し共用する事ができる（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０００−１８１５１９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来のものは、呼び出し先プログラムの一部分の命令（コード）のみを利用実行したい場合、呼び出し先プログラムでジャンプ処理や復帰処理などを行う必要があり、処理の複雑化やプログラムの開発負荷の増大に繋がる。
【０００５】
そこで、本発明は、上記従来の課題に鑑み、呼び出し先プログラムでジャンプ処理や復帰処理を行うことなく、呼び出し先プログラムの一部分の命令から成るプログラムを自動作成して利用実行できる機能を有するプログラム作成支援システムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明のプログラム作成支援システムは、第１の動作プログラムと第２の動作プログラムを記憶している記憶部と、前記記憶部に記憶されている動作プログラムから別の動作プログラムを作成する部分プログラム作成部と、前記記憶部に記憶されている動作プログラムを実行する制御部を備え、前記第１の動作プログラムは、前記第２の動作プログラムのプログラム名と前記第２の動作プログラムの第１の行番号と前記第２の動作プログラムの第２の行番号と新たに作成する第３の動作プログラムのプログラム名を含む特定命令を有し、前記制御部により前記第１の動作プログラムが実行され、前記特定命令が実行されると、前記部分プログラム作成部は、前記記憶部に記憶されている前記第２の動作プログラムから前記第２の動作プログラムの第１の行番号から第２の行番号までの命令からなら前記第３の動作プログラムを作成して前記記憶部に記憶し、前記制御部は、前記第１の動作プログラムの前記特定命令を実行した後に前記第３の動作プログラムを実行し、前記第３の動作プログラムを実行した後に前記第１の動作プログラムの前記特定命令の次の命令以降の命令を実行するものである。
【０００７】
また、本発明のプログラム作成支援システムは、上記に加えて、プログラム作成支援システムは、ロボットと前記ロボットの動作を制御するロボット制御装置とを備えたロボットシステムであり、前記ロボット制御装置は、記憶部と部分プログラム作成部と制御部を有するものである。
【発明の効果】
【０００８】
本発明によれば、呼び出し元プログラムで特定の命令を実行し、呼び出し先プログラムから指定範囲の内容の部分プログラムを自動作成できる。これにより、呼び出し先プログラムの変更なしに、呼び出し先プログラムの範囲指定の内容を実行できるので、部分プログラムを作成する際の処理の複雑化や開発負荷の増大を抑えることができる。
【０００９】
また、特定の命令の実行により、他のプログラムの使用したい部分命令を容易に利用できるので、別途、開発者が追加プログラムを作成するといったような手間を削減することができる。そして、開発者の追加プログラムの作成の手間を削減できるので、開発に要する時間を短縮することができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の実施の形態１におけるプログラム作成支援システムの概略構成を示す図
【図２】本発明の実施の形態１におけるプログラム作成支援システムの動作プログラムの一例を示す図
【図３】本発明の実施の形態１におけるプログラム作成支援システムの動作プログラムの一例を示す図
【図４】本発明の実施の形態１におけるプログラム作成支援システムの動作の流れを示す図
【発明を実施するための形態】
【００１１】
以下、本発明の実施の形態について、図１から図４を用いて説明する。
【００１２】
（実施の形態１）
図１は、本実施の形態１におけるロボットシステムの概略構成を示す図である。なお、ロボットシステムは、プログラム作成支援システムの一例である。また、図１に示すロボットシステムは、ロボット制御装置１０１と教示装置１０５を構成要素としている。なお、ロボットシステムとしては、これらの構成要素以外にロボット等の構成要素が必要であるが、図１では省略している。
【００１３】
図１において、図示しないロボットの動作の制御等を行うロボット制御装置１０１は、動作プログラムを記憶するプログラム記憶部１０２と、プログラム記憶部１０２に記憶されている動作プログラムから別のプログラムを作成する部分プログラム作成部１０３と、プログラム記憶部１０２に記憶されている動作プログラムを実行する制御部１０４を備えている。
【００１４】
また、ロボット制御装置１０１と通信を行う教示装置１０５は、表示部１０６と、情報選択部１０７と、操作部１０８を備えている。なお、教示装置１０５は、ロボット制御装置１０１および／または教示装置１０５に記憶された情報を表示する機能や、表示された情報を選択する機能や、ロボットを動作させるための操作機能を有している。
【００１５】
以上のように構成されたロボットシステムについて、その動作を説明する。
【００１６】
なお、図２に、教示装置１０５を用いて作成され、ロボット制御装置１０１内のプログラム記憶部１０２に保存されている動作プログラムの一例を示す。図２は、アーク溶接を行う際の動作プログラムの一例である。
【００１７】
次に、図２に示す動作プログラムについて説明する。
【００１８】
図２に示すように、動作プログラムは、動作プログラムの行番号２０１と、動作プログラム名２０２が設けられている。
【００１９】
移動指令命令２０６は、移動命令２０３と、教示点名２０４と、移動速度２０５から構成される。なお、行番号２０１は、１番である。また、図２に示す他の移動指令命令２０８と、移動指令命令２１２と、移動指令命令２１４と、移動指令命令２１８についても、移動指令命令２０６と同様の構成である。
【００２０】
溶接条件指令命令２０９は、溶接開始前の溶接条件を指定する命令であり、溶接条件であることを示す命令（ＷＥＬＤ）と、溶接電流（１２０Ａ）と、溶接電圧（１８．０Ｖ）から構成される。なお、行番号２０１は、４番である。また、図２に示す他の溶接条件指令命令２１３と、溶接条件指令命令２１５についても、溶接条件指令命令２０９と同様の構成である。そして、溶接条件指令命令２１３は、溶接中の溶接条件を指定する命令であり、溶接条件指令命令２１５は、溶接終了の終端処理の溶接条件を指定する命令である。
【００２１】
溶接ガスＯＮ／ＯＦＦ指令命令２１０は、溶接ガスをＯＮ／ＯＦＦするための命令である。なお、行番号２０１は、５番である。そして、「ＧＡＳ  ＯＮ」の場合、ガスバルブ（図示せず）が開状態となり溶接ガスが供給される。「ＧＡＳ  ＯＦＦ」の場合、ガスバルブが閉状態となり溶接ガスの供給が停止される。なお、図２に示す他の溶接ガスＯＮ／ＯＦＦ指令命令２１６についても、溶接ガスＯＮ／ＯＦＦ指令命令２１０と同様の構成である。
【００２２】
アークＯＮ／ＯＦＦ指令命令２１１は、アークをＯＮ／ＯＦＦするための命令である。なお、行番号２０１は、６番である。そして、「ＡＲＣ  ＯＮ」の場合、ロボット（図示せず）に備え付けられたトーチ（図示せず）の電極（図示せず）に電力が供給され、電極と溶接対象物との間でアークが発生し、アーク溶接を開始する。「ＡＲＣ  ＯＦＦ」の場合、電力の供給が停止されてアークが消え、アーク溶接を終了する。なお、図２に示す他のアークＯＮ／ＯＦＦ指令命令２１６についても、アークＯＮ／ＯＦＦ指令命令２１１と同様の構成である。
【００２３】
次に、本実施の形態１の特徴である、図２に示す第１の動作プログラム（Ｐｒｏｇ０００１．ｐｒｇ）を構成する範囲指定機能付きコール指令命令２０７が実行されることで、第２の動作プログラム（Ｐｒｏｇ０００２．ｐｒｇ）から指定範囲の内容のみを抽出し、別プログラムである第３の動作プログラム（Ｐｒｏｇ０００３．ｐｒｇ）を作成して実行する点について説明する。なお、第１の動作プログラム（Ｐｒｏｇ０００１．ｐｒｇ）と第２の動作プログラム（Ｐｒｏｇ０００２．ｐｒｇ）は、プログラム記憶部１０２に記憶されている。また、作成された第３の動作プログラム（Ｐｒｏｇ０００３．ｐｒｇ）は、プログラム記憶部１０２に記憶される。
【００２４】
ロボット制御装置１０１の部分プログラム作成部１０３は、或るプログラムである第２の動作プログラム（Ｐｒｏｇ０００２．ｐｒｇ）から指定範囲の内容のみを抽出し、別プログラムである第３の動作プログラム（Ｐｒｏｇ０００３．ｐｒｇ）を作成する機能を有している。なお、第３の動作プログラムは、第２の動作プログラムの一部から構成される。
【００２５】
図２に示す第１の動作プログラム（Ｐｒｏｇ０００１．ｐｒｇ）の行番号２０１が２番である範囲指定機能付きコール指令命令２０７において、引数として「第２の動作プログラムのプログラム名」と、「第２の動作プログラム内の実行開始行番号」と、「第２の動作プログラム内の実行終了行番号」と、「第３の動作プログラム名」を設定する。これにより、本実施の形態１の機能を行うことができる。すなわち、設定されたプログラム名のプログラムの、設定された実行開始行番号から設定された実行終了行番号までのプログラムが作成される。
【００２６】
範囲指定機能付きコール指令命令２０７は、『範囲指定機能付きコール命令「ＮＥＷＣＡＬＬ」』と、『プログラム名であるＰｒｏｇ０００２．ｐｒｇ』と、『第２の動作プログラム内の実行開始行番号「１２」』と、『第２の動作プログラム内の実行終了行番号「２２」』と『新たに作成される第３の動作プログラムのプログラム名であるＰｒｏｇ０００３．ｐｒｇ』で構成される。そして、範囲指定機能付きコール指令命令２０７は、設定されたプログラム名（Ｐｒｏｇ０００２．ｐｒｇ）のプログラムの、設定された実行開始行番号（１２番）から設定された実行終了行番号（２２番）までの動作プログラムである第３のプログラム（Ｐｒｏｇ０００３．ｐｒｇ）の作成と、この作成したプログラムの実行と、このプログラムの実行後にＰｒｏｇ０００１．ｐｒｇに復帰することを指定する命令である。
【００２７】
第１の動作プログラム（Ｐｒｏｇ０００１．ｐｒｇ）を構成する範囲指定機能付きコール指令命令２０７により、指定範囲の命令が実行される第２の動作プログラム（Ｐｒｏｇ０００２．ｐｒｇ）を図３に示す。範囲指定機能付きコール指令命令２０７により、図３のＰｒｏｇ０００２．ｐｒｇの１２行目から２２行目が実行される一連の流れについて、図４を用いて説明する。
【００２８】
ＳＴ１：Ｐｒｏｇ０００１．ｐｒｇにおいて、行番号１番の命令が実行される。
【００２９】
ＳＴ２：Ｐｒｏｇ０００１．ｐｒｇにおいて、行番号２番の命令「ＮＥＷＣＡＬＬ  Ｐｒｏｇ０００２．ｐｒｇ  １２  ２２  Ｐｒｏｇ０００３．ｐｒｇ」が実行される。
【００３０】
なお、各動作プログラムは、行毎に区切りデータを有している。部分プログラム作成部１０３は、指定されたプログラムにおいて、前記区切りデータを用いて行数をカウントする。部分プログラム作成部１０３は、Ｐｒｏｇ０００２．ｐｒｇにおいて、前記区切りデータを用いて１２行目を検索し、１２行目に到達すると、前記区切りデータを用いて１２行目から２２行目までを読み出し、読み出したデータ（１２行目から２２行目まで）を内容とする別プログラム「Ｐｒｏｇ０００３．ｐｒｇ（第３の動作プログラム）」を作成し、プログラム記憶部１０２に記憶する。
【００３１】
ＳＴ３：Ｐｒｏｇ０００３．ｐｒｇがコールされる。
【００３２】
ＳＴ４：Ｐｒｏｇ０００３．ｐｒｇが実行される。
【００３３】
ＳＴ５：Ｐｒｏｇ０００１．ｐｒｇに実行の制御が復帰される。
【００３４】
ＳＴ６：Ｐｒｏｇ０００１．ｐｒｇにおいて、行番号３番以降の命令が実行される。
【００３５】
なお、Ｐｒｏｇ０００１．ｐｒｇにおいて、行番号３番以降に、上記ＳＴ２で作成したＰｒｏｇ０００３．ｐｒｇを実行する命令を設けておくことで、プログラム記憶部１０２に記憶されたＰｒｏｇ０００３．ｐｒｇを再度利用することもできる。
【００３６】
また、上記ＳＴ２で生成されて記憶されたＰｒｏｇ０００３．ｐｒｇは、実行後は必要に応じて自動的に削除するようにしても良い。
【００３７】
以上のように、本実施の形態１によれば、第１の動作プログラム（Ｐｒｏｇ０００１．ｐｒｇ）内の特定の命令である範囲指定機能付きコール指令命令２０７を実行することにより、第２の動作プログラム（Ｐｒｏｇ０００２．ｐｒｇ）から指定範囲の内容の部分プログラムである第３の動作プログラム（Ｐｒｏｇ０００３．ｐｒｇ）を自動作成できる。これにより、第２の動作プログラム（Ｐｒｏｇ０００２．ｐｒｇ）の変更なしに、第２の動作プログラム（Ｐｒｏｇ０００２．ｐｒｇ）の範囲指定の内容を実行できるので、部分プログラムを作成する際の処理の複雑化や開発負荷の増大を抑えることができる。
【００３８】
また、特定の命令である範囲指定機能付きコール指令命令２０７を実行することにより、他のプログラムの使用したい部分命令を容易に利用できるため、別途、開発者が追加プログラムを作成するという手間を削減することができる。そして、開発者の追加プログラムの作成の手間を削減できるため、開発に要する時間を短縮することができる。
【００３９】
なお、本実施の形態１は、ロボットシステムに限らず、その他のシステム等にも適用することができる。
【産業上の利用可能性】
【００４０】
本発明によれば、呼び出し元プログラムで特定の命令を実行し、呼び出し先プログラムから指定範囲の内容の部分プログラムを自動作成することにより、呼び出し先プログラムの変更なしに、呼び出し先プログラムの範囲指定の内容を実行でき、処理の複雑化や開発負荷の増大を抑えることができるので、或るプログラムから別のプログラムを作成するプログラム作成支援システムとして産業上有用である。
【符号の説明】
【００４１】
１０１  ロボット制御装置
１０２  プログラム記憶部
１０３  部分プログラム作成部
１０４  制御部
１０５  教示装置
１０６  表示部
１０７  情報選択部
１０８  操作部
【図１】
2013151032.tif 000003
【図２】
2013151032.tif 000004
【図３】
2013151032.tif 000005
【図４】
2013151032.tif 000006