(57)【要約】【課題】コントローラが制御プログラムの実行時に使用するパラメータ群を修正する時の手間を軽減できる情報処理装置を提供する。【解決手段】情報処理装置１０は、機械を制御するコントローラ３０で実行される制御プログラムをシミュレーションするシミュレータ５１と、シミュレータ５１が制御プログラムのシミュレーション時に使用するパラメータ群に基づいて生成された第１形式ファイル１６を読み込む読込部と、読み込まれた第１形式ファイル１６に基づいて、コントローラ３０に与えるパラメータ群を生成して出力する生成部と、を備える。【選択図】図４
2018055654.tif 000002
【特許請求の範囲】
【請求項１】
機械を制御するコントローラで実行される制御プログラムをシミュレーションするシミュレータと、
前記シミュレータが前記制御プログラムのシミュレーション時に使用するパラメータ群に基づいて生成された第１ファイルを読み込む読込部と、
読み込まれた前記第１ファイルに基づいて、前記コントローラに与えるパラメータ群を生成して出力する生成部と、を備える、情報処理装置。
【請求項２】
前記読込部は、前記コントローラが前記制御プログラムの実行時に使用するパラメータ群に基づいて生成された第２ファイルを読み込み、
前記生成部は、読み込まれた前記第２ファイルに基づいて、前記シミュレータに与えるパラメータ群を生成して出力する、請求項１に記載の情報処理装置。
【請求項３】
前記第１ファイルは前記制御プログラムの保持属性の変数の値を含み、
前記生成部は、前記第１ファイルから前記保持属性の変数の値を抽出する、請求項１または２に記載の情報処理装置。
【請求項４】
機械を制御するコントローラで実行される制御プログラムをシミュレーションするシミュレータと、
前記コントローラが前記制御プログラムの実行時に使用するパラメータ群に基づいて生成されたファイルを読み込む読込部と、
前記ファイルに基づいて、前記シミュレータに与えるパラメータ群を生成して出力する生成部と、を備える、情報処理装置。
【請求項５】
機械を制御するコントローラで実行される制御プログラムをシミュレーションするコンピュータが実行する情報処理方法であって、
前記コンピュータが前記制御プログラムのシミュレーション時に使用するパラメータ群に基づいて生成された第１ファイルを読み込むステップと、
読み込まれた前記第１ファイルに基づいて、前記コントローラに与えるパラメータ群を生成して出力するステップと、を前記コンピュータが実行する、情報処理方法。
【請求項６】
機械を制御するコントローラで実行される制御プログラムをシミュレーションするコンピュータに実行させるプログラムであって、
前記コンピュータが前記制御プログラムのシミュレーション時に使用するパラメータ群に基づいて生成された第１ファイルを読み込むステップと、
読み込まれた前記第１ファイルに基づいて、前記コントローラに与えるパラメータ群を生成して出力するステップと、を前記コンピュータに実行させる、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、機械を制御するコントローラのメモリ内の情報を処理する技術に関する。
【背景技術】
【０００２】
従来、機械を制御するコントローラのメモリ内の情報を処理する情報処理装置が考えられている。例えば、特許文献１には、コントローラのメモリ内の情報を所定の形式で表示する情報処理装置が記載されている。
【０００３】
この情報処理装置は、第１の制御プログラムを実行して機械の動きを制御するコントローラに接続される。情報処理装置は、コントローラインターフェース部、シミュレータおよび表示データ作成部を備える。コントローラインターフェース部は、第１の制御プログラムの変数の情報をコントローラから取得する。シミュレータは、第１の制御プログラムと同じ処理を実行する第２の制御プログラムを使用して、コントローラの動作をシミュレーションする。シミュレータは、第２の制御プログラムの実行を停止させた状態で、コントローラインターフェース部が取得した１の制御プログラムの変数の情報を第２の制御プログラムに入力する。表示データ作成部は、上記の入力により得られた入力結果を表示する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１３−２０５８６６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１の情報処理装置では、シミュレーションで得られた適正な変数の情報をコントローラの実際の動作に反映させることができない。このため、コントローラで使用される変数の情報を修正するために手間がかかる。
【０００６】
本発明の目的は、コントローラが制御プログラムの実行時に使用するパラメータ群を修正する時の手間を軽減できる技術を提供することにある。
【課題を解決するための手段】
【０００７】
本発明の情報処理装置は、機械を制御するコントローラで実行される制御プログラムをシミュレーションするシミュレータと、前記シミュレータが前記制御プログラムのシミュレーション時に使用するパラメータ群に基づいて生成された第１ファイルを読み込む読込部と、読み込まれた前記第１ファイルに基づいて、前記コントローラに与えるパラメータ群を生成して出力する生成部と、を備える。パラメータ群は、各種パラメータの値および各種パラメータに関する情報から構成される。パラメータに関する情報は、パラメータを識別するための識別情報、パラメータの属性情報等を含んでもよい。パラメータ群は、例えば、システムバスやフィールドバス上のユニットの動作を規定する設定情報、コントローラの動作を規定する設定情報、モーション制御の動作を規定する設定情報である。
【０００８】
この構成では、シミュレータで制御プログラムをデバッグした時に使用したパラメータの値を、コントローラに書き込むことができる。これにより、デバッグで得られた適正なパラメータの値を、コントローラの実際の動作に反映させることができる。
【０００９】
前記読込部は、前記コントローラが前記制御プログラムの実行時に使用するパラメータ群に基づいて生成された第２ファイルを読み込み、前記生成部は、読み込まれた前記第２ファイルに基づいて、前記シミュレータに与えるパラメータ群を生成して出力することが好ましい。この構成では、コントローラで異常が発生した時に、コントローラから取得したパラメータの値を使用して、シミュレータで制御プログラムをデバッグすることができる。これにより、コントローラで異常が発生した原因の調査が容易となる。
【００１０】
前記第１ファイルは前記制御プログラムの保持属性の変数の値を含み、前記生成部は、読み込まれた前記第１ファイルから前記保持属性の変数の値を抽出することが好ましい。制御プログラムの保持属性の変数は、その制御プログラムがコントローラで使用される場合、コントローラの電源がオフしている時でも、値が保持される変数である。この構成では、デバッグで得られた適正な制御プログラムの保持変数の値を、コントローラの実際の動作に反映させることができる。
【００１１】
本発明の情報処理装置は、機械を制御するコントローラで実行される制御プログラムをシミュレーションするシミュレータと、前記コントローラから取得された前記制御プログラムの変数の情報に基づいて生成されたファイルを記憶する記憶部と、前記ファイルに基づいて、前記シミュレータに与える前記制御プログラムの変数の情報を生成して出力する生成部と、を備える。この構成では、上記と同様に、コントローラで異常が発生した原因の調査が容易となる。
【発明の効果】
【００１２】
本発明によれば、コントローラが制御プログラムの実行時に使用するパラメータ群を修正する時の手間を軽減できる。
【図面の簡単な説明】
【００１３】
【図１】図１は本実施形態に係る制御システムの構成を示すブロック図である。
【図２】図２は情報処理装置１０の構成を示すブロック図である。
【図３】図３はコントローラ３０の構成を示すブロック図である。
【図４】図４は、情報処理装置１０が実行する処理を説明するための機能ブロック図である。
【図５】図５（Ａ）は、第１形式ファイル１６の構成を説明するための図である。図５（Ｂ）は、第２形式ファイル１７の構成を説明するための図である。
【図６】図６は、シミュレータ５１に関するバックアップ処理を示すフローチャートである。
【図７】図７は、コントローラ３０に関するバックアップ処理を示すフローチャートである。
【図８】図８は、シミュレータ５１に関するリストア処理を示すフローチャートである。
【図９】図９は、コントローラ３０に関するリストア処理を示すフローチャートである。
【図１０】図１０（Ａ）は、バックアップおよびリストア時に従来の情報処理装置が使用可能なファイルフォーマットを示す図である。図１０（Ｂ）は、バックアップおよびリストア時に情報処理装置１０が使用可能なファイルフォーマットを示す図である。
【発明を実施するための形態】
【００１４】
本発明の実施形態に係る制御システムについて説明する。図１は本実施形態に係る制御システムの構成を示すブロック図である。本実施形態に係る制御システムは、情報処理装置１０、コントローラ３０および制御対象装置４０を備える。制御対象装置４０は本発明の「機械」の一例である。情報処理装置１０はコントローラ３０に通信可能に接続されている。コントローラ３０は制御対象装置４０に通信可能に接続されている。さらに、コントローラ３０はセンサ等に接続されている（図示せず）。情報処理装置１０は、例えば、ＰＣ（Personal Computer）である。コントローラ３０は、例えば、ＰＬＣ（Programmable Logic Controller）である。制御対象装置４０は、例えば、モータ、および、モータを駆動するモータドライバを有する。
【００１５】
コントローラ３０には制御プログラム２２が記憶されている。制御プログラム２２は制御対象装置４０に対する制御内容を規定している。コントローラ３０は制御プログラム２２を実行して制御対象装置４０を制御する。情報処理装置１０には、コントローラサポートプログラム２０および制御プログラム２１が記憶されている。コントローラサポートプログラム２０は、コントローラ３０が制御対象装置を制御するための制御プログラムの開発環境を規定している。制御プログラム２１は制御プログラム２２と同じ制御内容を規定している。制御プログラム２１は、後述のように、制御プログラム２２のシミュレーションに使用される。
【００１６】
図２は情報処理装置１０の構成を示すブロック図である。情報処理装置１０は、制御部１１、操作部１２、表示部１３、記憶部１４および入出力インターフェース１５を備える。制御部１１は、ＣＰＵ等で構成され、情報処理装置１０の全体の動作を制御する。操作部１２は、例えば、キーボードおよびマウスで構成される。表示部１３は、例えば、液晶ディスプレイであり、ＣＲＴ（Cathode Ray Tube）ディスプレイまたはプラズマディスプレイでもよい。記憶部１４は、例えば、ＲＯＭ、ＲＡＭおよびハードディスクドライブで構成される。記憶部１４はコントローラサポートプログラム２０および制御プログラム２１（図１参照）を記憶している。記憶部１４は後述の変数メモリ５３（図４参照）を含む。入出力インターフェース１５は制御部１１とコントローラ３０との間の通信を提供する。
【００１７】
図３はコントローラ３０の構成を示すブロック図である。コントローラ３０は、制御部３１、記憶部３２および入出力インターフェース３３，３４を備える。制御部３１は、ＣＰＵ等で構成され、コントローラ３０の全体の動作を制御する。記憶部３２は、例えば、ＲＯＭ、ＲＡＭ、および、バッテリバックアップされたメモリから構成される。記憶部３２は制御プログラム２２（図１参照）を記憶している。記憶部３２は後述の保持変数メモリ３６および変数メモリ３７を含む。入出力インターフェース３３は制御部３１と情報処理装置１０との通信を提供する。入出力インターフェース３４は制御部３１と制御対象装置４０との通信を提供する。
【００１８】
図４は、情報処理装置１０が実行する処理を説明するための機能ブロック図である。図５（Ａ）は、第１形式ファイル１６の構成を説明するための図である。図５（Ｂ）は、第２形式ファイル１７の構成を説明するための図である。第１形式ファイル１６は、シミュレータ５１が制御プログラム２２（図１参照）のシミュレーション時に使用する制御プログラム２１の変数の情報に基づいて生成される。特に、第１形式ファイル１６は制御プログラム２１の保持変数の値を含む。第２形式ファイル１７は、コントローラ３０が制御プログラム２２の実行時に使用する制御プログラム２２の保持変数の情報に基づいて生成される。第１形式ファイル１６は本発明の「第１ファイル」の一例である。第２形式ファイル１７は本発明の「第２ファイル」の一例である。変数の情報および保持変数の情報は本発明の「パラメータ群」の一例である。例えば、本発明の「パラメータ群」は、システムバスやフィールドバス上のユニットの動作を規定する設定情報、コントローラの動作を規定する設定情報、モーション制御の動作を規定する設定情報である。保持変数は本発明の「保持属性の変数」の一例である。
【００１９】
制御プログラムの変数は、制御プログラムで使用される変数であり、保持変数および非保持変数を含む。制御プログラムの保持変数は、その制御プログラムがコントローラで使用される場合、コントローラの電源がオフしている時でも、値が保持される変数である。制御プログラムの非保持変数は、その制御プログラムがコントローラで使用される場合、コントローラの電源がオフされた時、値が失われる変数である。変数の情報は、変数名、変数の型および変数の値を含む。変数の型は、Ｂｏｏｌ、Ｉｎｔ等である。
【００２０】
処理部５２は、第１形式ファイル１６を読み込んだ後（ロードした後）、読み込まれた第１形式ファイル１６に基づいて、コントローラ３０に与える制御プログラム２２の保持変数の情報を生成して出力する。即ち、処理部５２は、第１形式ファイル１６から保持変数の値を抽出することで、コントローラ３０に与える保持変数の情報を生成する。処理部５２は、第２形式ファイル１７を読み込んだ後、読み込まれた第２形式ファイル１７に基づいて、シミュレータ５１に与える制御プログラム２１の保持変数の情報を生成して出力する。処理部５２は本発明の「読込部」および「生成部」を含む。
【００２１】
コントローラ３０は、上記のように、制御プログラム２２を実行して制御対象装置４０を制御する。制御プログラム２２の実行中、制御プログラム２２の変数の現在値は変数メモリ３７に記憶される。変数メモリ３７は揮発性メモリで構成される。コントローラ３０の電源がオフされる時、コントローラ３０で異常が発生した時などには、その時に変数メモリ３７に記憶されている制御プログラム２２の保持変数の値が、保持変数メモリ３６に記憶される（バックアップされる）。保持変数メモリ３６は、例えば、バッテリバックアップされたメモリでもよいし、フラッシュメモリ等の不揮発性メモリでもよい。
【００２２】
第１形式ファイル１６および第２形式ファイル１７は、記憶部１４（図２参照）の不揮発性メモリ上に保存されている。第１形式ファイル１６は、シミュレータ５１から取得された制御プログラム２１の変数の情報を格納している。第１形式ファイル１６は、後述の変数メモリ５３から取得された制御プログラム２１の変数の値を格納している。第２形式ファイル１７は、コントローラ３０から取得された制御プログラム２２の保持変数の情報を格納している。第２形式ファイル１７は、保持変数メモリ３６から取得された制御プログラム２２の保持変数の値を格納している。第１形式ファイル１６は第１保存形式で保存されている。第２形式ファイル１７は第２保存形式で保存されている。即ち、第１形式ファイル１６と第２形式ファイル１７とは、互いに異なるファイルフォーマット（保存形式）で保存されている。
【００２３】
なお、第１形式ファイル１６は、シミュレータ５１と同様に機能する別のシミュレータから取得された制御プログラムの変数の情報を格納してもよい。第２形式ファイル１７は、コントローラ３０と同様に機能する別のコントローラから取得された制御プログラムの保持変数の情報を格納してもよい。また、第１形式ファイル１６および第２形式ファイル１７は、リムーバブルメディアのような、情報処理装置１０に接続される外部記憶装置に保存されてもよい。
【００２４】
情報処理装置１０はコントローラサポート部５０を備える。コントローラサポート部５０は、コントローラサポートプログラム２０に規定された制御プログラムの開発環境を提供する。コントローラサポート部５０はシミュレータ５１および処理部５２を有する。
【００２５】
シミュレータ５１は、制御プログラム２１を使用して、制御プログラム２２をシミュレーションする。即ち、シミュレータ５１は、制御プログラム２１を使用して、コントローラ３０が制御プログラム２２を実行する動作をシミュレーションする。これにより、情報処理装置１０をコントローラ３０にオンライン接続せずに、制御プログラム２１をデバッグして、制御プログラム２２の動作ロジック、各設定パラメータ等を確認できる。シミュレータ５１によるシミュレーション中、制御プログラム２１の変数の現在値は変数メモリ５３に記憶される。変数メモリ５３は揮発性メモリで構成される。
【００２６】
処理部５２は、シミュレータ５１によるシミュレーション中において、第１バックアップ指令を受け取ると、制御プログラム２１の変数の情報を第１保存形式で保存する（バックアップする）。この時に保存される変数の値は、処理部５２が第１バックアップ指令を受け取った時に変数メモリ５３から取得したものである。この時に作成される第１形式ファイル１６の保存先は、予め定められた保存先でもよいし、バックアップの実行時にユーザが指定した保存先でもよい。第１バックアップ指令は、例えば、ユーザが所定の操作を行った時に生成される。処理部５２は、ユーザから所定の指令を受け取ると、第１形式ファイル１６に格納された制御プログラム２１の変数の値を、変数メモリ５３に書き込む（リストアする）。
【００２７】
ユーザは、例えば、次のように、当該バックアップおよびリストア機能を使用する。ユーザは、シミュレーション中において不具合が生じた時に、その時の制御プログラム２１の変数の値を保存する。そして、ユーザは、制御プログラム２１を修正した後、保存された制御プログラム２１の変数の値を使用して再度シミュレーションを実行する。これにより、ユーザは、不具合が解消されたかどうか確認できる。
【００２８】
処理部５２は、コントローラ３０による制御プログラム２２の実行中において、第２バックアップ指令を受け取ると、制御プログラム２２の保持変数の情報を第２保存形式で保存する（バックアップする）。この時に保存される保持変数の値は、処理部５２が第２バックアップ指令を受け取った時に保持変数メモリ３６から取得したものである。この時に作成される第２形式ファイル１７の保存先は、予め定められた保存先でもよいし、バックアップの実行時にユーザが指定した保存先でもよい。第２バックアップ指令は、ユーザが所定の操作を行った時、コントローラで異常が発生した時などに生成される。処理部５２は、ユーザから所定の指令を受け取ると、第２形式ファイル１７に格納された制御プログラム２１の保持変数の値を、保持変数メモリ３６に書き込む（リストアする）。
【００２９】
ユーザは、例えば、次のように、当該バックアップおよびリストア機能を使用する。ユーザは、コントローラ３０を交換する場合、交換前のコントローラ３０の保持変数メモリ内の内容を保存し、その内容を交換後のコントローラ３０の保持変数メモリに書き込む。これにより、交換後のコントローラ３０でも、交換前のコントローラ３０で使用されていた制御プログラム２２の保持変数の値を使用できる。また、ユーザは、制御プログラム２２の保持変数の値を一時的に変更する場合、保持変数の値を保存した後、保持変数の値を変更する。そして、ユーザは、保存された保持変数の値を保持変数メモリ３６に書き込むことで、保持変数の値を元に戻す。また、ユーザは、レシピ管理を目的として、第２形式ファイル１７を管理し、必要に応じて第２形式ファイル１７内の保持変数の値を保持変数メモリ３６に書き込む。
【００３０】
さらに、処理部５２は、ユーザから所定の指令を受け取ると、第１形式ファイル１６に格納された制御プログラム２１の保持変数の値を、コントローラ３０の保持変数メモリ３６に書き込む（リストアする）。処理部５２は、ユーザから所定の指令を受け取ると、第２形式ファイル１７に格納された制御プログラム２１の保持変数の値を、シミュレータ５１が使用する変数メモリ５３に書き込む（リストアする）。なお、当該リストア機能の使用例については後述する。
【００３１】
図６は、シミュレータ５１に関するバックアップ処理を示すフローチャートである。処理部５２は、シミュレータ５１によるシミュレーション中において、第１バックアップ指令を受け取ると、バックアップの実行をシミュレータ５１に通知する（Ｓ１１）。シミュレータ５１は、バックアップの実行の通知を受け取ると、制御プログラム２１の変数の情報を処理部５２に送る（Ｓ１２）。処理部５２は、シミュレータ５１から送られた制御プログラム２１の変数の情報を受け取る（Ｓ１３）。処理部５２は、受け取った制御プログラム２１の変数の情報を第１保存形式で保存する（Ｓ１４）。
【００３２】
図７は、コントローラ３０に関するバックアップ処理を示すフローチャートである。処理部５２は、コントローラ３０による制御プログラム２２の実行中において、第２バックアップ指令を受け取ると、バックアップの実行をコントローラ３０に通知する（Ｓ２１）。コントローラ３０は、バックアップの実行の通知を受け取ると、制御プログラム２２の保持変数の情報を処理部５２に送る（Ｓ２２）。処理部５２は、コントローラ３０から送られた保持変数の情報を受け取る（Ｓ２３）。処理部５２は、受け取った保持変数の情報を第２保存形式で保存する（Ｓ２４）。
【００３３】
図８は、シミュレータ５１に関するリストア処理を示すフローチャートである。処理部５２は、ユーザから第１リストア指令を受け取ると、ユーザが指定したファイルのヘッダを読み込むことで、ファイルフォーマットを確認する（Ｓ３１）。ファイルが第１形式ファイル１６でも第２形式ファイル１７でもない場合（Ｓ３２：Ｎｏ，Ｓ３６：Ｎｏ）、処理部５２はリストア処理を終了する。
【００３４】
指定されたファイルが第１形式ファイル１６である場合（Ｓ３２：Ｙｅｓ）、処理部５２はファイルをロードする（Ｓ３３）。次に、処理部５２は、ファイルに格納された変数の情報を、変数メモリ５３への書き込みで使用される書込用データに変換する（Ｓ３４）。次に、処理部５２は、当該書込用データを使用して、当該書込用データに含まれる変数の値を変数メモリ５３に書き込む（Ｓ３５）。この時、変数の値は、その変数と同じ変数名を有する制御プログラム２１の変数に割り当てられた、変数メモリ５３上の記憶領域に書き込まれる。そして、処理部５２はリストア処理を終了する。
【００３５】
指定されたファイルが第２形式ファイル１７である場合（Ｓ３２：Ｎｏ，Ｓ３６：Ｙｅｓ）、処理部５２はファイルをロードする（Ｓ３７）。次に、処理部５２は、ファイルに格納された保持変数の情報を、変数メモリ５３への書き込みで使用される書込用データに変換する（Ｓ３８）。次に、処理部５２は、当該書込用データを使用して、当該データに含まれる保持変数の値を変数メモリ５３に書き込む（Ｓ３９）。この時、保持変数の値は、その保持変数と同じ変数名を有する制御プログラム２１の保持変数に割り当てられた、変数メモリ５３上の記憶領域に書き込まれる。そして、処理部５２はリストア処理を終了する。
【００３６】
図９は、コントローラ３０に関するリストア処理を示すフローチャートである。処理部５２は、ユーザから第２リストア指令を受け取ると、ユーザが指定したファイルのヘッダを読み込むことで、ファイルフォーマットを確認する（Ｓ４１）。ファイルが第１形式ファイル１６でも第２形式ファイル１７でもない場合（Ｓ４２：Ｎｏ，Ｓ４６：Ｎｏ）、処理部５２はリストア処理を終了する。
【００３７】
指定されたファイルが第１形式ファイル１６である場合（Ｓ４２：Ｙｅｓ）、処理部５２はファイルをロードする（Ｓ４３）。次に、処理部５２は、ファイルに格納された変数の情報から保持変数の情報を抽出する（Ｓ４４）。次に、処理部５２は、抽出された保持変数の情報を、保持変数メモリ３６への書き込みで使用される書込用データに変換する（Ｓ４５）。指定されたファイルが第２形式ファイル１７である場合（Ｓ４２：Ｎｏ，Ｓ４６：Ｙｅｓ）、処理部５２はファイルをロードする（Ｓ４７）。次に、処理部５２は、ファイルに格納された保持変数の情報を、保持変数メモリ３６への書き込みで使用される書込用データに変換する（Ｓ４８）。
【００３８】
ステップＳ４５，Ｓ４８の次に、処理部５２は、書込用データを使用して、当該書込用データに含まれる保持変数の値を保持変数メモリ３６に書き込む（Ｓ４９）。具体的には、処理部５２は、コントローラ３０に書込用データを送るとともに、当該書込用データに含まれる保持変数の値を保持変数メモリ３６に書き込むように、コントローラ３０に指示する。この時、保持変数の値は、その保持変数と同じ変数名を有する制御プログラム２２の保持変数に割り当てられた、保持変数メモリ３６上の記憶領域に書き込まれる。そして、処理部５２はリストア処理を終了する。
【００３９】
図１０（Ａ）は、バックアップおよびリストア時に従来の情報処理装置が使用可能なファイルフォーマットを示す図である。従来の情報処理装置は、シミュレータ５１から取得された変数の情報を第１保存形式で保存し、コントローラ３０から取得された保持変数の情報を第２保存形式で保存する。従来の情報処理装置は、第１形式ファイル内の変数の値をシミュレータ５１に書き込むことができるが、第２形式ファイル内の保持変数の値をシミュレータ５１に書き込むことができない。従来の情報処理装置は、第２形式ファイル内の保持変数の値をコントローラ３０に書き込むことができるが、第１形式ファイル内の保持変数の値をコントローラ３０に書き込むことができない。
【００４０】
図１０（Ｂ）は、バックアップおよびリストア時に情報処理装置１０が使用可能なファイルフォーマットを示す図である。情報処理装置１０は、シミュレータ５１から取得された変数の情報を第１保存形式で保存し、コントローラ３０から取得された保持変数の情報を第２保存形式で保存する。情報処理装置１０は、第１形式ファイル１６内の変数の値および第２形式ファイル１７内の保持変数の値を、シミュレータ５１に書き込むことができる。情報処理装置１０は、第１形式ファイル１６および第２形式ファイル１７に格納された保持変数の値を、コントローラ３０に書き込むことができる。即ち、情報処理装置１０がバックアップおよびリストア処理を実行することで、コントローラ３０とシミュレータ５１とはバックアップファイルを共用できる。
【００４１】
情報処理装置１０では、第１形式ファイル１６を使用して、シミュレータ５１から取得された制御プログラム２１の保持変数の値を、コントローラ３０の保持変数メモリ３６に書き込むことができる。このため、シミュレータ５１で制御プログラム２１をデバッグした時に使用した制御プログラム２１の保持変数の値を、コントローラ３０の保持変数メモリ３６に書き込むことができる。これにより、デバッグで得られた適正な制御プログラム２２の保持変数の値を、コントローラ３０の実際の動作に反映させることができる。
【００４２】
また、情報処理装置１０では、第２形式ファイル１７を使用して、コントローラ３０から取得された制御プログラム２２の保持変数の値を、シミュレータ５１が使用する変数メモリ５３に書き込むことができる。このため、コントローラ３０で異常が発生した時に、コントローラ３０から取得された制御プログラム２２の保持変数の値を使用して、シミュレータ５１で制御プログラム２１をデバッグすることができる。これにより、コントローラ３０で異常が発生した原因の調査が容易となる。
【００４３】
また、情報処理装置１０は、従来の情報処理装置で作成された第１形式ファイル１６および第２形式ファイル１７を使用して、リストア処理を実行できる。また、従来の情報処理装置は、情報処理装置１０で作成された第１形式ファイルを使用して、シミュレータ５１に対してリストア処理を実行できる。従来の情報処理装置は、情報処理装置１０で作成された第２形式ファイルを使用して、コントローラ３０に対してリストア処理を実行できる。
【００４４】
なお、本実施形態では、バックアップおよびリストアの対象となる情報が制御プログラムの変数の情報である例を示したが、バックアップおよびリストアの対象となる情報は、コントローラの任意のメモリ情報を含んでもよく、例えば、スレーブのパラメータ、コントローラ用メモリの現在値、軸のパラメータ等を含んでもよい。
【符号の説明】
【００４５】
１０…情報処理装置
１１，３１…制御部
１２…操作部
１３…表示部
１４，３２…記憶部
１５，３３，３４…入出力インターフェース
１６…第１形式ファイル
１７…第２形式ファイル
２０…コントローラサポートプログラム
２１，２２…制御プログラム
３０…コントローラ
４０…制御対象装置
３６…保持変数メモリ
３７…変数メモリ
５０…コントローラサポート部
５１…シミュレータ
５２…処理部
５３…変数メモリ
【図１】
2018055654.tif 000003
【図２】
2018055654.tif 000004
【図３】
2018055654.tif 000005
【図４】
2018055654.tif 000006
【図５】
2018055654.tif 000007
【図６】
2018055654.tif 000008
【図７】
2018055654.tif 000009
【図８】
2018055654.tif 000010
【図９】
2018055654.tif 000011
【図１０】
2018055654.tif 000012