(57)【要約】【課題】教示データの編集に要する手間を削減すると共に、呼び出し命令の書き換えの漏れの発生を防止する。【解決手段】教示データに含まれるファイルの識別情報のリストを作成するリスト作成部４２と、このリスト作成部４２により作成されたリストに含まれるファイルの識別情報を変更する変更命令を受け付ける命令受け付け部４３と、この変更命令にしたがって、識別情報を変更する対象である対象ファイルを特定し、特定した対象ファイルの識別情報を変更する識別情報変更部４４と、教示データに含まれるファイルのうち対象ファイルを呼び出す呼び出し命令を有するファイルとしての、呼び出しの元となる呼び出し元ファイルを検索する検索部４５と、検索された呼び出し元ファイルに記述されている対象ファイルの呼び出し命令における対象ファイルの識別情報を書き換える命令書き換え部４６と、を備える。【選択図】図３
2014010501.tif 000002
【特許請求の範囲】
【請求項１】
ロボットの教示データを編集する編集システムであって、
複数のファイルを含む前記教示データを取得して保持する教示データ保持手段と、
前記教示データ保持手段に保持された前記教示データに含まれる前記ファイルの識別情報のリストを作成するリスト作成手段と、
前記リスト作成手段により作成された前記リストに含まれる前記ファイルの前記識別情報を変更する変更命令を受け付ける命令受け付け手段と、
前記命令受け付け手段により受け付けた前記変更命令にしたがって、前記識別情報を変更する対象である対象ファイルを特定し、特定した当該対象ファイルの識別情報を変更する識別情報変更手段と、
前記教示データに含まれる前記ファイルのうち前記対象ファイルを呼び出す呼び出し命令を有するファイルとしての、呼び出しの元となる呼び出し元ファイルを検索する検索手段と、
前記検索手段により検索された前記呼び出し元ファイルに記述されている前記対象ファイルの呼び出し命令における当該対象ファイルの識別情報を前記変更命令による変更後の識別情報に書き換える命令書き換え手段と、
を備えることを特徴とする、教示データの編集システム。
【請求項２】
前記命令書き換え手段は、前記対象ファイルがテーブルファイルである場合に、前記呼び出し元ファイルに記述されている当該対象ファイルの呼び出し命令における当該対象ファイルの識別情報を書き換える前に当該呼び出し命令の引数を保存し、当該対象ファイルの識別情報を書き換えた後に当該呼び出し命令の引数を保存した値に戻すことを特徴とする、請求項１に記載の教示データの編集システム。
【請求項３】
ロボットの教示データを編集する編集システムとしてコンピュータを機能させるプログラムであって、
記憶装置に記憶された複数のファイルを含む前記教示データに含まれる当該ファイルの識別情報を読み出し、当該識別情報のリストを作成する機能と、
作成された前記リストに含まれる前記ファイルの前記識別情報を変更する変更命令を受け付ける機能と、
受け付けた前記変更命令にしたがって、前記識別情報を変更する対象である対象ファイルを特定し、特定した当該対象ファイルの識別情報を変更する機能と、
前記教示データに含まれる前記ファイルのうち前記対象ファイルを呼び出す呼び出し命令を有するファイルである呼び出し元ファイルを検索する機能と、
検索された前記呼び出し元ファイルに記述されている前記対象ファイルの呼び出し命令における当該対象ファイルの識別情報を前記変更命令による変更後の識別情報に書き換える機能と、
を前記コンピュータに実現させることを特徴とする、プログラム。
【請求項４】
前記呼び出し元ファイルに記述されている前記呼び出し命令を書き換える機能において、前記対象ファイルがテーブルファイルである場合に、前記呼び出し元ファイルに記述されている当該対象ファイルの呼び出し命令における当該対象ファイルの識別情報を書き換える前に当該呼び出し命令の引数を保存し、当該対象ファイルの識別情報を書き換えた後に当該呼び出し命令の引数を保存した値に戻すことを特徴とする、請求項４に記載のプログラム。
【請求項５】
溶接ロボットの教示データを編集する編集システムであって、
少なくとも、ロボットの作業手順を記述したプログラムファイルと、ロボットの作業の条件に関する情報を記述したデータバンクファイルとが含まれると共に、ロボットの作業に関して設定されるパラメータを切り替えるために参照されるパラメータ切り替えテーブルファイルと、溶接作業におけるロボットの動作のパターンを記述した矢じりバンクファイルとが含まれ得る、前記教示データを取得して保持する教示データ保持手段と、
前記教示データ保持手段に保持された前記教示データに含まれる前記ファイルの識別情報を変更する変更命令を受け付ける命令受け付け手段と、
前記命令受け付け手段により受け付けた前記変更命令にしたがって、前記識別情報を変更する対象である対象ファイルを特定し、特定した当該対象ファイルの識別情報を変更する識別情報変更手段と、
前記教示データに含まれる前記ファイルのうち前記対象ファイルを呼び出す呼び出し命令を有するファイルとしての、呼び出しの元となる呼び出し元ファイルを検索する検索手段と、
前記検索手段により検索された前記呼び出し元ファイルに記述されている前記対象ファイルの呼び出し命令を書き換える命令書き換え手段とを備え、
前記命令書き換え手段は、
前記対象ファイルがプログラムファイル、パラメータ切り替えテーブルファイルまたは矢じりバンクファイルである場合に、前記呼び出し元ファイルに記述された前記呼び出し命令における当該対象ファイルの識別情報を前記変更命令による変更後の識別情報に書き換え、
前記対象ファイルがデータバンクファイルである場合に、前記呼び出し元ファイルに記述された前記呼び出し命令の引数を保存し、当該呼び出し命令における識別情報を前記変更命令による変更後の識別情報に書き換え、当該識別情報を書き換えた呼び出し命令の引数を保存した値に戻すことを特徴とする、教示データの編集システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、産業用ロボットの教示データを編集する編集システムおよびプログラムに関する。
【背景技術】
【０００２】
溶接を行う溶接ロボット等の産業用ロボットは、教示データを与えることにより、その教示データにより設定される作業を実行するように動作する（例えば、特許文献１、２参照）。教示データは、例えば、ロボットに実行させる動作を記述したプログラムファイルと各種の条件等のデータを記述したデータファイルの集合として構成される。そして、これらのファイルを組み合わせることにより、ロボットに所望の作業を実行させる。ここで、プログラムファイルやデータファイル（以下、プログラム等）は、相互に呼び出して利用することが可能となっている。
【０００３】
ロボットによる作業を追加する場合、教示データを編集して、新たなプログラム等の組み合わせ（セット）が教示データに登録される。このとき、新たなプログラム等が教示データに追加される場合もある。また、既に存在する教示データに基づく作業を変更したり修正したりする場合、個々のプログラム等の内容が変更されたり、新たなプログラム等が教示データに追加されたりする。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−１３５０９５号公報
【特許文献２】特開２００８−２５０７０６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
教示データを編集した際、プログラム等の識別情報（ファイル番号やファイル名など）が変更される場合がある。ここで、識別情報が変更されたプログラム等を呼び出す他のプログラム等が存在する場合、この呼び出し元のプログラム等における呼び出し命令を書き換え、その呼び出し命令に記述された呼び出し先のプログラム等の識別情報を変更する必要がある。
【０００６】
本発明は、教示データの編集においてプログラム等の識別情報が変更された際に、そのプログラム等を呼び出す呼び出し元における呼び出し命令を書き換える手間を削減し、呼び出し命令の書き換えの漏れの発生を防止することを目的とする。
【課題を解決するための手段】
【０００７】
上記の目的を達成する本発明は、次のような編集システムとして実現される。この編集システムは、ロボットの教示データを編集する編集システムであって、複数のファイルを含む教示データを取得して保持する教示データ保持手段と、この教示データ保持手段に保持された教示データに含まれるファイルの識別情報のリストを作成するリスト作成手段と、このリスト作成手段により作成されたリストに含まれるファイルの識別情報を変更する変更命令を受け付ける命令受け付け手段と、この命令受け付け手段により受け付けた変更命令にしたがって、識別情報を変更する対象である対象ファイルを特定し、特定した対象ファイルの識別情報を変更する識別情報変更手段と、教示データに含まれるファイルのうち対象ファイルを呼び出す呼び出し命令を有するファイルとしての、呼び出しの元となる呼び出し元ファイルを検索する検索手段と、検索手段により検索された呼び出し元ファイルに記述されている対象ファイルの呼び出し命令における対象ファイルの識別情報を変更命令による変更後の識別情報に書き換える命令書き換え手段と、を備えることを特徴とする。
このような構成とすることにより、特定のファイルを指定して識別情報の変更を指示することにより、指定されたファイルの識別情報を変更すると共に、指定されたファイルを呼び出す他のファイルにおける呼び出し命令を自動的に書き換えることができる。
【０００８】
ここで、命令書き換え手段は、対象ファイルがテーブルファイルである場合に、呼び出し元ファイルに記述されている対象ファイルの呼び出し命令における対象ファイルの識別情報を書き換える前に呼び出し命令の引数を保存し、対象ファイルの識別情報を書き換えた後に呼び出し命令の引数を保存した値に戻す。
このような構成とすることにより、テーブルファイルを呼び出す呼び出し元ファイルにおいて、テーブルファイルを呼び出す際の条件を変えることなく、呼び出し命令におけるファイルの識別情報を書き換えることができる。
【０００９】
また、本発明は、次のような編集システムとしても実現される。この編集システムは、溶接ロボットの教示データを編集する編集システムであって、少なくとも、ロボットの作業手順を記述したプログラムファイルと、ロボットの作業の条件に関する情報を記述したデータバンクファイルとが含まれると共に、ロボットの作業に関して設定されるパラメータを切り替えるために参照されるパラメータ切り替えテーブルファイルと、溶接作業におけるロボットの動作のパターンを記述した矢じりバンクファイルとが含まれ得る、教示データを取得して保持する教示データ保持手段と、教示データ保持手段に保持された教示データに含まれるファイルの識別情報を変更する変更命令を受け付ける命令受け付け手段と、命令受け付け手段により受け付けた変更命令にしたがって、識別情報を変更する対象である対象ファイルを特定し、特定した対象ファイルの識別情報を変更する識別情報変更手段と、教示データに含まれるファイルのうち対象ファイルを呼び出す呼び出し命令を有するファイルとしての、呼び出しの元となる呼び出し元ファイルを検索する検索手段と、この検索手段により検索された呼び出し元ファイルに記述されている対象ファイルの呼び出し命令を書き換える命令書き換え手段とを備える。そして、命令書き換え手段は、対象ファイルがプログラムファイル、パラメータ切り替えテーブルファイルまたは矢じりバンクファイルである場合に、呼び出し元ファイルに記述された呼び出し命令における対象ファイルの識別情報を変更命令による変更後の識別情報に書き換え、対象ファイルがデータバンクファイルである場合に、呼び出し元ファイルに記述された呼び出し命令の引数を保存し、呼び出し命令における識別情報を変更命令による変更後の識別情報に書き換え、識別情報を書き換えた呼び出し命令の引数を保存した値に戻すことを特徴とする。
このような構成とすることにより、溶接ロボットの教示データの編集作業において、特定のファイルを指定して識別情報の変更を指示することにより、指定されたファイルの識別情報を変更すると共に、指定されたファイルを呼び出す他のファイルにおける呼び出し命令を自動的に書き換えることができる。
【００１０】
さらにまた、本発明は、コンピュータを制御して上述した編集システムの各機能を実現するプログラムとしても実現される。このプログラムは、磁気ディスクや光ディスク、半導体メモリ、その他の記録媒体に格納して配布したり、ネットワークを介して配信したりすることにより、提供することができる。
【発明の効果】
【００１１】
本発明によれば、特定のファイルを指定して識別情報の変更を指示することにより、指定されたファイルの識別情報を変更すると共に、指定されたファイルを呼び出す他のファイルにおける呼び出し命令を自動的に書き換えることができるため、教示データの編集に要する手間を削減すると共に、呼び出し命令の書き換えの漏れの発生を防止することができる。
【図面の簡単な説明】
【００１２】
【図１】本実施の形態に係る編集システムおよび溶接ロボットシステムの概略構成を示す図である。
【図２】本実施の形態の教示データ編集装置のハードウェア構成例を示す図である。
【図３】本実施の形態の教示データ編集装置の機能構成例を示す図である。
【図４】本実施の形態によるファイルの識別情報の変更処理の流れを示すフローチャートである。
【図５】本実施の形態によるファイルの識別情報の変更処理の流れを示すフローチャートである。
【図６】本実施の形態によるファイルの識別情報の変更処理の流れを示すフローチャートである。
【図７】本実施の形態によるファイルの識別情報の変更処理の流れを示すフローチャートである。
【図８】本実施の形態によるファイルの識別情報の変更処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００１３】
以下、添付図面を参照して、本発明の実施の形態について詳細に説明する。
本実施の形態では、溶接ロボットシステムにおける教示データの編集システムを例として説明する。
〔システム構成〕
図１は、本実施の形態に係る編集システムおよび溶接ロボットシステムの概略構成を示す図である。
図１に示すように、溶接ロボットシステムは、ロボット（マニピュレータ）１０と、ロボットを制御する制御装置（コントローラ）２０と、教示データを入力する教示装置３０とを備える。また、編集システムは、例えばコンピュータシステムにより実現される教示データ編集装置４０にて構成される。
【００１４】
ロボット１０は、複数の関節を有する腕（アーム）を備え、教示データに基づく各種の作業を行う。溶接ロボットシステムの場合、腕の先端には、対象物の溶接作業を行うための溶接トーチ１１が設けられる。制御装置２０は、教示データを記憶する記憶装置（メモリ）と、教示データを読み込んでロボット１０の動作を制御する処理装置（ＣＰＵ）とを備える。教示装置３０は、ロボット１０の教示作業の際に、操作者が溶接経路や溶接作業条件等を入力するために使用される。教示装置３０は、液晶ディスプレイなどにより構成された表示画面３１と、入力ボタン３２とを備えている。
【００１５】
制御装置２０は、ロボット１０に対するインターフェイスおよび教示装置３０に対するインターフェイスを有し、これらを介してロボット１０および教示装置３０と接続される。また、制御装置２０は、例えばメモリカード等のリムーバブルな記憶媒体５０に対してデータの読み書きを行うインターフェイスを備えており、教示データを記憶媒体５０に書き出したり、記憶媒体５０に書き込まれた教示データを読み込んで記憶装置に格納したりすることができる。
【００１６】
〔教示データ編集装置のハードウェア構成〕
図２は、教示データ編集装置４０のハードウェア構成例を示す図である。
図２に示すように、教示データ編集装置４０は、演算手段であるＣＰＵ（Central Processing Unit）１０１と、主記憶手段であるメモリ１０２を備える。また、外部デバイスとして、画像表示機構（ビデオカード等）１０３および表示装置１０４と、磁気ディスク装置（ＨＤＤ：Hard Disk Drive）１０５と、キーボードやマウス等の入力デバイス１０６等を備える。また、記憶媒体５０に対してデータの読み書きを行うためのドライバ１０７を備える。これにより、教示データ編集装置４０は、記憶媒体５０から教示データを読み込むことができる。なお、図２は、教示データ編集装置４０をコンピュータシステムにて実現した場合のハードウェア構成を例示するに過ぎず、教示データ編集装置４０は図示の構成に限定されない。
【００１７】
〔教示データ編集装置の機能構成〕
図３は、教示データ編集装置４０の機能構成例を示す図である。
図３に示すように、教示データ編集装置４０は、教示データ保持部４１と、リスト作成部４２と、命令受け付け部４３と、識別情報変更部４４と、検索部４５と、呼び出し命令書き換え部４６とを備える。教示データ保持部４１は、例えば、図２に示したハードウェア構成におけるメモリ１０２や磁気ディスク装置１０５等の記憶手段により実現される。教示データ保持部４１、リスト作成部４２、命令受け付け部４３、識別情報変更部４４、検索部４５、呼び出し命令書き換え部４６は、例えば、図２に示したハードウェア構成におけるＣＰＵ１０１により実現される。より具体的には、コンピュータにて本実施の形態による教示データ編集装置４０の機能を実現するプログラムが磁気ディスク装置１０５に格納され、このプログラムをメモリ１０２に展開し、ＣＰＵ１０１が実行することにより、上記の教示データ保持部４１、リスト作成部４２、命令受け付け部４３、識別情報変更部４４、検索部４５、呼び出し命令書き換え部４６の各機能が実現される。
【００１８】
教示データ保持部４１は、ドライバ１０７を介して記憶媒体５０から読み込んだ教示データを保持する。教示データ保持部４１に保持された教示データは、教示データ編集装置４０による編集処理の対象となる。したがって、編集処理が行われたのちは、編集後の教示データが教示データ保持部４１に保持される。ここで、教示データは、プログラムファイルやデータファイルの集合として構成される。本実施の形態では、溶接ロボットシステムを例としているので、プログラムファイル、データバンクファイル、パラメータ切り替えテーブルファイル、矢じりバンクファイルの４種類のファイルによって構成されているものとする。各ファイルの詳細については後述する。
【００１９】
リスト作成部４２は、教示データ保持部４１に保持されている教示データに基づき、その教示データに含まれるファイルの識別情報のリストを作成する。この識別情報は、あるファイルから他のファイルを呼び出す場合に、呼び出し先のファイル（呼び出されるファイル）を特定するために用いられる。ファイルの識別情報としては、ファイル番号やファイル名を用いることができる。以下、本実施の形態では、ファイル番号をリストに記録する識別情報として用いる場合を例として説明する。リスト作成部４２により作成された識別情報のリスト（ファイル番号リスト）は、例えば、図２に示した画像表示機構１０３の制御により、表示装置１０４に表示される。
【００２０】
本実施の形態では、ファイル番号リストを作成する際に、教示データに含まれるプログラムのツリー構造やデータバンクのテーブル構造に係る情報が抽出され、作業メモリ上に展開されるものとする。また、ファイル番号リストのデータ構成として、プログラムファイル間のツリー構造やデータバンクファイルのテーブル構造が反映された構成を採用しても良い。この場合、作業メモリ上に展開された情報やファイル番号リストを参照することにより、あるプログラムファイルやデータバンクファイルが他のファイルを呼び出すか否かを判断することができる。
【００２１】
命令受け付け部４３は、ファイルの識別情報であるファイル番号を変更する命令（変更命令）を受け付ける。ファイル番号の変更を行う場合、リスト作成部４２により作成されたファイル番号リストが表示装置１０４に表示されると、操作者は、表示装置１０４に表示されたファイル番号リストを参照して所望のファイル番号を指定し、変更命令を入力する。ファイル番号の変更命令の入力は、例えば、操作者が図２に示した入力デバイス１０６を操作することによって行われる。
【００２２】
識別情報変更部４４は、命令受け付け部４３により受け付けた変更命令に基づき、教示データ保持部４１に保持されている教示データのファイルのうち、指定されたファイル番号のファイルを読み込み、変更命令に従ってファイル番号を変更する。そして、ファイル番号が変更されたファイルを、教示データ保持部４１に格納する。教示データのいずれかのファイルのファイル番号が変更されると、リスト作成部４２は、そのファイル番号の変更を反映させてファイル番号リストを更新する。
【００２３】
検索部４５は、識別情報変更部４４によりファイル番号が変更されるファイルを呼び出す呼び出し元のファイル（以下、呼び出し元ファイル）を検索する。言い換えると、検索対象のファイルは、他のファイルを呼び出す呼び出し命令を有するファイルであって、その呼び出し対象のファイル（以下、呼び出し先ファイル）が識別情報変更部４４によりファイル番号を変更されるファイルであるようなファイルである。他のファイルを呼び出す呼び出し命令を有する呼び出し元ファイルとなり得るファイルは、上記の４種類のファイルのうち、プログラムファイルとデータバンクファイルのみである。検索方法の詳細については後述する。
【００２４】
呼び出し命令書き換え部４６は、検索部４５により検索された呼び出し元ファイルの呼び出し命令に記述されている呼び出し先ファイルのファイル番号を、命令受け付け部４３により受け付けた変更命令に基づいて書き換える。すなわち、識別情報変更部４４による呼び出し先ファイル自身のファイル番号の変更に合わせて、呼び出し命令中の呼び出し先のファイル番号が書き換わる。
【００２５】
なお、本実施の形態では、記憶媒体５０を介して、教示データ編集装置４０が溶接ロボットシステムの制御装置２０から教示データを取得する構成としたが、ネットワーク等を介して制御装置２０と教示データ編集装置４０とを接続しデータ交換することにより、教示データ編集装置４０が教示データを取得する構成としても良い。
【００２６】
〔処理対象となるファイルの種類および内容〕
ここで、本実施の形態の処理対象である教示データを構成するファイルの種類とその内容について説明する。上述したように、本実施の形態による溶接ロボットシステムの教示データは、プログラムファイル、データバンクファイル、パラメータ切り替えテーブルファイル、矢じりバンクファイルの４種類のファイルによって構成される。なお、プログラムファイルは必須のファイルであるが、その他のファイルは教示データによっては、存在しない場合もある。
【００２７】
プログラムファイルは、ロボット１０の作業位置や姿勢、作業手順等を記述したファイルである。
データバンクファイルは、プログラムファイルにより参照される、各種の作業条件を登録したテーブルである。溶接ロボットシステムにおいては、主に溶接条件（溶接作業に関連するパラメータ）が登録される。
【００２８】
パラメータ切り替えテーブルファイルは、ロボット１０の作業における仕様（例えば、溶接作業の場合、溶接ワイヤの種類やワイヤの突出し長さ等）を複数の設定で実現したい場合等に、これらの仕様ごとに設定されるパラメータを切り替えるために用いられるテーブルである。
矢じりバンクファイルは、溶接作業におけるロボット１０のウィービング動作のパターンを登録したテーブルである。
【００２９】
上述したように、これら４種類のファイルのうち、プログラムファイルおよびデータバンクファイルは、他のファイルを呼び出す呼び出し命令を有する場合がある。すなわち、他のファイルの呼び出し元ファイルとなる場合がある。一方、パラメータ切り替えテーブルファイルおよび矢じりバンクファイルは、他のファイルを呼び出す呼び出し元ファイルとはならない。
【００３０】
〔識別情報変更処理の内容〕
図４〜図８は、本実施の形態によるファイルの識別情報の変更処理の流れを示すフローチャートである。
初期状態として、事前に処理対象の教示データが取得されて教示データ保持部４１に保持され、リスト作成部４２によりファイル番号リストが作成されて表示装置１０４に表示されているものとする。そして、操作者が、入力デバイス１０６を操作し、ファイル番号を指定して変更命令を入力したものとする。
【００３１】
まず、命令受け付け部４３が、ファイル番号リストに基づいて、教示データに含まれる、変更命令により指定されたファイルを特定する（図４、ステップ４０１）。そして、ファイル番号の変更が可能なファイルか否か（ステップ４０２）、変更後の番号がファイル番号として使用可能な番号か否か（ステップ４０３）を判定する。変更命令により指定されたファイルが、プログラムファイル、データバンクファイル、パラメータ切り替えテーブルファイル、矢じりバンクファイルのいずれかであるならば、ステップ４０２でＹｅｓである。そして、変更命令により付与される変更後のファイル番号が、教示データの仕様として使用可能な番号であれば、ステップ４０３でＹｅｓである。また、例えば、ファイル番号として使用可能な番号が１〜９９９であるのに、変更後の番号として１０００が指示された場合は、使用不可能な番号なので、ステップ４０３でＮｏとなる。ステップ４０２またはステップ４０３でＮｏであった場合、その変更命令は実行できないため、処理を終了する。
【００３２】
ステップ４０２、４０３でいずれもＹｅｓであった場合、次に、検索部４５が、教示データ保持部４１に保持されている教示データからファイル（以下、第１対象ファイル）を一つ取り出す（ステップ４０４）。そして、取り出した第１対象ファイルがプログラムファイルか否かを判断する（ステップ４０５）。
第１対象ファイルがプログラムファイルであった場合、次に検索部４５は、そのプログラムファイルが、プログラムファイル、データバンクファイル、パラメータ切り替えテーブルファイル、矢じりバンクファイルのいずれかを呼び出すファイル（呼び出し元ファイル）か否かを判断する（ステップ４０６）。
【００３３】
第１対象ファイルがこれらのファイルのいずれかを呼び出すファイルである場合、次に検索部４５は、呼び出し先のファイル（以下、第２対象ファイル）が変更命令により指定された（すなわち番号を変更しようとする）ファイルか否かを判断する（ステップ４０７）。
第２対象ファイルが変更命令で指定されたファイルである場合、次に、検索部４５は、呼び出し先の第２対象ファイルが教示データに存在するか否かを判断する（ステップ４０８）。ここで、例えば、変更命令で指定されたファイル番号が間違っている場合や、誤って呼び出し先ファイルを削除してしまった場合等は、ステップ４０８でＮｏとなる。
【００３４】
第２対象ファイルが教示データに存在する場合、次に検索部４５は、第１対象ファイルをプログラム呼び出し番号変更リストに登録する（ステップ４０９）。このプログラム呼び出し番号変更リストは、例えば、図２に示したハードウェア構成におけるメモリ１０２や磁気ディスク装置１０５等の記憶手段に格納される。
上記ステップ４０５乃至ステップ４０８のいずれかでＮｏであったならば、第１対象ファイルはプログラム呼び出し番号変更リストに登録されない。
【００３５】
次に、検索部４５は、ステップ４０４で教示データから取り出した第１対象ファイルがデータバンクファイルか否かを判断する（図５、ステップ４１０）。第１対象ファイルがプログラムファイルであった場合は（ステップ４０５でＹｅｓ）、ステップ４１０ではＮｏとなる。また、第１対象ファイルがパラメータ切り替えテーブルファイルまたは矢じりバンクファイルであった場合も、ステップ４１０でＮｏとなる。
第１対象ファイルがデータバンクファイルであった場合、次に検索部４５は、そのデータバンクが、パラメータ切り替えテーブルファイルまたは矢じりバンクファイルを呼び出すファイル（呼び出し元ファイル）か否かを判断する（ステップ４１１）。
【００３６】
第１対象ファイルがこれらのファイルのいずれかを呼び出すファイルである場合、次に検索部４５は、呼び出し先の第２対象ファイルが変更命令により指定された（すなわち番号を変更しようとする）ファイルか否かを判断する（ステップ４１２）。
第２対象ファイルが変更命令で指定されたファイルである場合、次に、検索部４５は、呼び出し先の第２対象ファイルが教示データに存在するか否かを判断する（ステップ４１３）。
【００３７】
第２対象ファイルが教示データに存在する場合、次に検索部４５は、第１対象ファイルをデータバンク呼び出し番号変更リストに登録する（ステップ４１４）。このデータバンク呼び出し番号変更リストは、例えば、図２に示したハードウェア構成におけるメモリ１０２や磁気ディスク装置１０５等の記憶手段に格納される。
上記ステップ４１０乃至ステップ４１３のいずれかでＮｏであったならば、第１対象ファイルはデータバンク呼び出し番号変更リストに登録されない。
以下、教示データに含まれる全てのファイルを処理対象（第１対象ファイル）として順次取得し、ステップ４０４乃至ステップ４１４の各処理を実行する（ステップ４１５）。
なお、上記の動作において、ステップ４０５乃至ステップ４０９の一連の処理と、ステップ４１０乃至ステップ４１４の一連の処理とは、いずれを先に行っても構わない。
【００３８】
次に、検索部４５は、ステップ４０９で作成したプログラム呼び出し番号変更リストから、プログラムファイル（第１対象ファイル）を一つ取り出す（図６、ステップ４１６）。そして、取り出した第１対象ファイルに記述されているファイルの呼び出し命令を抽出し、命令リストに登録する（ステップ４１７）。ここで、命令リストは、例えば、図２に示したハードウェア構成におけるメモリ１０２や磁気ディスク装置１０５等の記憶手段に格納される。
【００３９】
次に、検索部４５は、命令リストから命令を一つ取り出す（ステップ４１８）。そして、取り出した命令がプログラムファイルを呼び出すプログラム呼び出し命令か否かを判定する（ステップ４１９）。プログラム呼び出し命令であった場合、次に検索部４５は、そのプログラム呼び出し命令の呼び出し対象である呼び出し先ファイルが、変更命令により指定された（すなわち番号を変更しようとする）ファイルか否かを判断する（ステップ４２０）。
【００４０】
プログラム呼び出し命令の呼び出し先ファイルが変更命令で指定されたファイルである場合、呼び出し命令書き換え部４６が、そのプログラム呼び出し命令に記述されている呼び出し先ファイルのファイル番号を変更命令に基づいて書き換える（ステップ４２１）。
ステップ４１９またはステップ４２０のいずれかでＮｏであった場合、プログラム呼び出し命令の書き換えは行われない。
【００４１】
次に、検索部４５は、ステップ４１８で取り出した命令がデータバンクファイルを呼び出すデータバンク呼び出し命令か否かを判定する（ステップ４２２）。データバンク呼び出し命令であった場合、次に検索部４５は、そのデータバンク呼び出し命令の呼び出し対象である呼び出し先ファイルが、変更命令により指定されたファイルか否かを判断する（ステップ４２３）。
【００４２】
データバンク呼び出し命令の呼び出し先ファイルが変更命令で指定されたファイルである場合、呼び出し命令書き換え部４６が、データバンク呼び出し命令の引数を一時的にバッファメモリに保存し（ステップ４２４）、そのデータバンク呼び出し命令に記述されている呼び出し先ファイルのファイル番号を変更命令に基づいて書き換える（ステップ４２５）。そして、書き換えたファイル番号を除き、他の引数を、ステップ４２４で保存した値に戻す（ステップ４２６）。
ステップ４２２またはステップ４２３のいずれかでＮｏであった場合、データバンク呼び出し命令の書き換えは行われない。
【００４３】
次に、検索部４５は、ステップ４１８で取り出した命令がパラメータ切り替えテーブルファイルを呼び出すパラメータ切り替えテーブル呼び出し命令か否かを判定する（図７、ステップ４２７）。パラメータ切り替えテーブル呼び出し命令であった場合、次に検索部４５は、そのパラメータ切り替えテーブル呼び出し命令の呼び出し対象である呼び出し先ファイルが、変更命令により指定されたファイルか否かを判断する（ステップ４２８）。
【００４４】
パラメータ切り替えテーブル呼び出し命令の呼び出し先ファイルが変更命令で指定されたファイルである場合、呼び出し命令書き換え部４６が、そのパラメータ切り替えテーブル呼び出し命令に記述されている呼び出し先ファイルのファイル番号を変更命令に基づいて書き換える（ステップ４２９）。
ステップ４２７またはステップ４２８のいずれかでＮｏであった場合、パラメータ切り替えテーブル呼び出し命令の書き換えは行われない。
【００４５】
次に、検索部４５は、ステップ４１８で取り出した命令が矢じりバンクファイルを呼び出す矢じりバンク呼び出し命令か否かを判定する（ステップ４３０）。矢じりバンク呼び出し命令であった場合、次に検索部４５は、その矢じりバンク呼び出し命令の呼び出し対象である呼び出し先ファイルが、変更命令により指定されたファイルか否かを判断する（ステップ４３１）。
【００４６】
矢じりバンク呼び出し命令の呼び出し先ファイルが変更命令で指定されたファイルである場合、呼び出し命令書き換え部４６が、その矢じりバンク呼び出し命令に記述されている呼び出し先ファイルのファイル番号を変更命令に基づいて書き換える（ステップ４３２）。
ステップ４３０またはステップ４３１のいずれかでＮｏであった場合、矢じりバンク呼び出し命令の書き換えは行われない。
【００４７】
以下、ステップ４１７で命令リストに登録された全ての命令を順次取得し、ステップ４１８乃至ステップ４３２の各処理を実行する（ステップ４３３）。
そして、プログラム呼び出し番号変更リストに登録されている全ての第１対象ファイルを順次取得し、上記の呼び出し命令の書き換えに係る処理を行う（ステップ４３４）。
なお、上記の動作において、ステップ４１９乃至ステップ４２１の一連の処理と、ステップ４２２乃至ステップ４２６の一連の処理と、ステップ４２７乃至ステップ４２９の一連の処理と、ステップ４３０乃至ステップ４３２の一連の処理とは、どのような順番で実行しても構わない。
【００４８】
次に、検索部４５は、ステップ４１４で作成したデータバンク呼び出し番号変更リストから、データバンクファイル（第１対象ファイル）を一つ取り出す（図８、ステップ４３５）。そして、取り出した第１対象ファイルの内容を読み込む（ステップ４３６）。
【００４９】
次に、検索部４５は、読み込んだ第１対象ファイルに、パラメータ切り替えテーブルファイルを呼び出すパラメータ切り替えテーブル呼び出し命令が存在するか否かを判定する（ステップ４３７）。パラメータ切り替えテーブル呼び出し命令が存在する場合、次に検索部４５は、そのパラメータ切り替えテーブル呼び出し命令の呼び出し対象である呼び出し先ファイルが、変更命令により指定された（すなわち番号を変更しようとする）ファイルか否かを判断する（ステップ４３８）。
【００５０】
パラメータ切り替えテーブル呼び出し命令の呼び出し先ファイルが変更命令で指定されたファイルである場合、呼び出し命令書き換え部４６が、そのパラメータ切り替えテーブル呼び出し命令に記述されている呼び出し先ファイルのファイル番号を変更命令に基づいて書き換える（ステップ４３９）。
ステップ４３７またはステップ４３８のいずれかでＮｏであった場合、パラメータ切り替えテーブル呼び出し命令の書き換えは行われない。
【００５１】
次に、検索部４５は、読み込んだ第１対象ファイルに、矢じりバンクファイルを呼び出す矢じりバンク呼び出し命令が存在するか否かを判定する（ステップ４４０）。矢じりバンク呼び出し命令が存在する場合、次に検索部４５は、その矢じりバンク呼び出し命令の呼び出し対象である呼び出し先ファイルが、変更命令により指定された（すなわち番号を変更しようとする）ファイルか否かを判断する（ステップ４４１）。
【００５２】
矢じりバンク呼び出し命令の呼び出し先ファイルが変更命令で指定されたファイルである場合、呼び出し命令書き換え部４６が、その矢じりバンク呼び出し命令に記述されている呼び出し先ファイルのファイル番号を変更命令に基づいて書き換える（ステップ４４２）。
ステップ４４０またはステップ４４１のいずれかでＮｏであった場合、パラメータ切り替えテーブル呼び出し命令の書き換えは行われない。
【００５３】
以上、ステップ４３５乃至ステップ４４２の各処理を、データバンク呼び出し番号変更リストに登録されている全ての第１対象ファイルに対して行う（ステップ４４３）。
なお、上記の動作において、ステップ４３７乃至ステップ４３９の一連の処理と、ステップ４４０乃至ステップ４４２の一連の処理とは、いずれを先に行っても構わない。
【００５４】
以上のようにして、変更命令で指定されたファイルを呼び出す呼び出し命令を持つファイル（呼び出し元ファイル）に関して、その呼び出し命令における呼び出し先ファイルのファイル番号（変更命令により変更されるファイル番号）が書き換えられた後、識別情報変更部４４が、変更命令で指定されたファイル自体のファイル番号を、変更命令に従って変更する（ステップ４４４）。
【００５５】
本実施の形態では、上記のように、まず、ファイル番号リストの作成時に得られた情報に基づき、教示データに含まれるファイル間の呼び出し関係を検査し、ファイル番号の変更対象であるファイルを呼び出す呼び出し元ファイルを特定し（ステップ４０４〜ステップ４１４参照）、その後に、特定されたファイルを解析して、ファイルに含まれる命令を書き換える。このような手順を取ることにより、教示データに含まれる全てのファイルを逐次解析してファイル番号の変更対象であるファイルの呼び出し命令を検出する場合と比較して、解析対象のファイルを予め絞り込むことにより削減することができ、処理効率の向上を図ることができる。
【００５６】
〔本実施の形態の他の構成例〕
上記の説明では、コンピュータにより実現された教示データ編集装置４０が、溶接ロボットシステムの教示データを取得し、所望のファイルの識別情報（ここでは、ファイル番号）を変更する編集処理を行った。これに対し、本実施の形態による教示データ編集装置４０の機能を、例えば、図１に示した溶接ロボットシステムの制御装置２０および教示装置３０により実現することもできる。
【００５７】
この場合、制御装置２０は、図２に示したハードウェア構成例におけるＣＰＵ１０１、メモリ１０２、磁気ディスク装置１０５を備える。また、教示装置３０の表示画面３１およびその駆動機構により画像表示機構１０３および表示装置１０４が実現され、教示装置３０の入力ボタン３２により入力デバイス１０６が実現される。この場合、リスト作成部４２により作成されたファイル番号リストは、教示装置３０の表示画面３１に表示される。そして、操作者は、教示装置３０の入力ボタン３２を操作して、所望のファイルのファイル番号の変更命令を入力する。制御装置２０は、この教示装置３０による入力操作を受け付け、変更命令により指定されたファイルを呼び出す呼び出し元ファイルの呼び出し命令を書き換えると共に、変更命令により指定されたファイル自体のファイル番号を変更する。
【符号の説明】
【００５８】
４０…教示データ編集装置、４１…教示データ保持部、４２…リスト作成部、４３…命令受け付け部、４４…識別情報変更部、４５…検索部、４６…呼び出し命令書き換え部
【図１】
2014010501.tif 000003
【図２】
2014010501.tif 000004
【図３】
2014010501.tif 000005
【図４】
2014010501.tif 000006
【図５】
2014010501.tif 000007
【図６】
2014010501.tif 000008
【図７】
2014010501.tif 000009
【図８】
2014010501.tif 000010