(57)【要約】  制御プログラム及び制御プログラムの実行時に参照される情報を含むソースプロジェクトデータと、ソースプロジェクトデータをコンパイルしたバイナリプロジェクトデータと、を記憶する記憶部と、制御プログラムの実行時にバイナリプロジェクトデータがロードされるメモリと、受信したデータに基づいて、記憶部に記憶されているバイナリプロジェクトデータ及びメモリにロードされているバイナリプロジェクトデータを書き換えるバイナリ書換部と、受信したデータに基づいて、記憶部に記憶されているソースプロジェクトデータを書き換えるソース書換部と、を備える。
2016135835.tif 000002
【特許請求の範囲】
【請求項１】
制御プログラム及び制御プログラムの実行時に参照される情報を含むソースプロジェクトデータと、ソースプロジェクトデータをコンパイルしたバイナリプロジェクトデータと、を記憶する記憶部と、
前記制御プログラムの実行時に前記バイナリプロジェクトデータがロードされるメモリと、
受信したデータに基づいて、前記記憶部に記憶されている前記バイナリプロジェクトデータ及び前記メモリにロードされている前記バイナリプロジェクトデータを書き換えるバイナリ書換部と、
前記受信したデータに基づいて、前記記憶部に記憶されている前記ソースプロジェクトデータを書き換えるソース書換部と、
を備えることを特徴とする制御装置。
【請求項２】
前記記憶部は、前記ソースプロジェクトデータの内の前記制御プログラムの実行時に参照される情報であって、前記バイナリプロジェクトデータが書き換えられた場合に、書き換えられるべき前記制御プログラムの実行時に参照される情報が記述される同値化要否リストを更に記憶し、
前記ソース書換部は、前記同値化要否リストに記述されている前記制御プログラムの実行時に参照される情報だけを書き換えることを特徴とする請求項１に記載の制御装置。
【請求項３】
前記同値化要否リストは、前記バイナリプロジェクトデータが書き換えられたら直ちに前記ソースプロジェクトデータを書き換えるか否かが記述された即時フラグの項目を含み、
前記ソース書換部は、前記即時フラグの項目に直ちに書き換えることが記述されている前記制御プログラムの実行時に参照される情報を直ちに書き換えることを特徴とする請求項２に記載の制御装置。
【請求項４】
前記メモリは、バッファを含み、
前記ソース書換部は、前記即時フラグの項目に直ちに書き換えないことが記述されている前記制御プログラムの実行時に参照される情報を前記バッファに書き込み、その後予め定められた条件が満たされたら、前記バッファ内のデータを前記ソースプロジェクトデータに書き込むことを特徴とする請求項３に記載の制御装置。
【請求項５】
請求項１から４までのいずれか１項に記載の制御装置と、
前記制御装置から受信した前記ソースプロジェクトデータを編集するソースプロジェクトデータ編集部と、前記ソースプロジェクトデータをコンパイルして前記バイナリプロジェクトデータを作成して前記制御装置に送信するコンパイル部と、を備える制御プログラム作成装置と、
を備えることを特徴とする制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、産業機械を制御する制御装置及び制御システムに関する。
【背景技術】
【０００２】
産業機械を制御するために、制御装置が用いられる。制御装置は、プログラマブルコントローラ（ＪＩＳ  Ｂ  ３５０２：２０１１、programmable  controllers（ＰＬＣ））、Ｃ言語コントローラ、モーションコントローラ又はインバータが例示される。【０００３】
制御装置で実行される制御プログラム及び制御プログラムの実行時に参照される情報を含むデータは、プロジェクトデータと呼ばれる。制御プログラムの実行時に参照される情報は、制御演算で使用される数値であるパラメータ、制御装置のメモリ内の作業領域を規定するデバイスメモリ又は制御装置と産業機械との接続状態を表す接続情報が例示される。【０００４】
プロジェクトデータは、パーソナルコンピュータ上でエンジニアリングツールプログラムを実行することによりソースが作成され、バイナリにコンパイルされ、制御装置に転送される。【０００５】
関連する技術として、特許文献１には、プログラミング装置上でアプリケーションのソース・コードを作成し、それをコンパイルすることにより接続情報テーブルを生成してインバータにダウンロードする技術が記載されている（要約書）。【０００６】
制御プログラムの実行時に参照される情報は、エンジニアリングツールプログラムを使用して作成される際に決定できない場合がある。例えば、比例積分微分（ＰＩＤ）制御演算で使用される比例（Ｐ）ゲイン、積分（Ｉ）時間又は微分（Ｄ）時間は、産業機械を動作させながら決定される。このようなパラメータは、プロジェクトデータのソース作成時には、暫定の初期値が記述される。【０００７】
このように、制御プログラムの実行時に参照される情報は、産業機械を動作させながら決定されるものがあるので、パーソナルコンピュータ内のプロジェクトデータのソースに記述された初期値と、制御装置内で書き換えられた決定値と、が異なってしまう。従って、後でエンジニアリングツールプログラムを使用してプロジェクトデータのソースの編集を行う際に、パーソナルコンピュータ内のプロジェクトデータのソースには初期値が記述されているので、制御装置内で書き換えられた決定値が失われてしまう。【０００８】
特許文献２には、ＰＬＣ１のパラメータを微調整するチューニング操作を実行するチューニング手段２０５（段落００２６から段落００３０）と、メモリ空間２０３にバッファされた制御データ量をバックアップするバックアップ手段２０６（段落００３３から段落００３７）と、を備えるＰＬＣ支援装置２０が記載されている。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】国際公開第２００６／１１２３２４号
【特許文献２】特開２００４−１７８１５７号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
特許文献２記載の技術では、制御データ量をバックアップすることは記載されているが、パラメータをバックアップすることは記載されていない。また、特許文献２記載の技術では、ＰＬＣ１を操作してパラメータをチューニングした場合及びＰＬＣ支援装置２０とは別の装置がＰＬＣ１のパラメータをチューニングした場合に、ＰＬＣ１内のパラメータとＰＬＣ支援装置２０内のパラメータとが異なってしまう。つまり、ＰＬＣ１内で書き換えられたパラメータが失われてしまう。【００１１】
本発明は、上記に鑑みてなされたものであって、書き換えられたデータが失われてしまうことを抑制することが可能な制御装置を得ることを目的とする。
【課題を解決するための手段】
【００１２】
本発明は、制御プログラム及び制御プログラムの実行時に参照される情報を含むソースプロジェクトデータと、ソースプロジェクトデータをコンパイルしたバイナリプロジェクトデータと、を記憶する記憶部を備える。本発明は、制御プログラムの実行時にバイナリプロジェクトデータがロードされるメモリと、受信したデータに基づいて、記憶部に記憶されているバイナリプロジェクトデータ及びメモリにロードされているバイナリプロジェクトデータを書き換えるバイナリ書換部と、受信したデータに基づいて、記憶部に記憶されているソースプロジェクトデータを書き換えるソース書換部と、を備える。
【発明の効果】
【００１３】
本発明にかかる制御装置は、書き換えられたデータが失われてしまうことを抑制することが可能になるという効果を奏する。
【図面の簡単な説明】
【００１４】
【図１】実施の形態１にかかる制御装置を用いた制御システムの構成を示す図
【図２】実施の形態１にかかる制御プログラム作成装置のハードウェア構成を示す図
【図３】実施の形態１にかかる制御プログラム作成装置の機能ブロック図
【図４】実施の形態１にかかるソース制御プログラムの例を示す図
【図５】実施の形態１にかかるソース制御パラメータの例を示す図
【図６】実施の形態１にかかるソースデバイスメモリの例を示す図
【図７】実施の形態１にかかる同値化要否リストの例を示す図
【図８】実施の形態１にかかるパラメータ設定画面の例を示す図
【図９】実施の形態１にかかる制御装置のハードウェア構成を示す図
【図１０】実施の形態１にかかる制御装置の機能ブロック図
【図１１】実施の形態１にかかるバイナリ書換処理を示すフローチャート
【図１２】実施の形態１にかかる制御装置のソース書込処理を示すフローチャート
【図１３】実施の形態１にかかるソース書換処理を示すフローチャート
【図１４】実施の形態１にかかる制御プログラム作成装置のプロジェクトデータ編集処理を示すフローチャート
【図１５】実施の形態２にかかる制御装置の機能ブロック図
【図１６】実施の形態２にかかる制御装置のソース書換処理を示すフローチャート
【発明を実施するための形態】
【００１５】
以下に、本発明の実施の形態にかかる制御装置及び制御システムを図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１６】
実施の形態１．
図１は、実施の形態１にかかる制御装置を用いた制御システムの構成を示す図である。制御システム１は、制御プログラム作成装置２と、プログラマブル表示器（ＪＩＳ  Ｂ  ３５５１：２０１２、programmable  display）３と、上位制御装置４と、制御装置５と、機械６及び７と、を含む。
【００１７】
制御プログラム作成装置２、プログラマブル表示器３、上位制御装置４及び制御装置５は、ネットワークＮを介して接続されている。ネットワークＮは、ＬＡＮ（Local  Area  Network）又はインターネットが例示される。
【００１８】
制御装置５は、機械６及び７を制御する。制御装置５は、プログラマブルコントローラ、Ｃ言語コントローラ、モーションコントローラ又はインバータが例示される。
【００１９】
制御プログラム作成装置２は、制御装置５で実行される制御プログラム及び制御プログラムの実行時に参照される情報を含むプロジェクトデータを作成する。制御プログラムの実行時に参照される情報は、制御演算で使用される数値であるパラメータ、制御装置のメモリ内の作業領域を規定するデバイスメモリ又は制御装置と産業機械との接続状態を表す接続情報が例示される。
【００２０】
プログラマブル表示器３は、制御装置５内のデータを監視するとともに、制御装置５内の制御プログラムの実行時に参照される情報を変更する。
【００２１】
上位制御装置４は、製造ライン全体又は工場全体を統括するコンピュータであり、制御装置５を制御する。
【００２２】
図２は、実施の形態１にかかる制御プログラム作成装置のハードウェア構成を示す図である。実施の形態１にかかる制御プログラム作成装置２は、コンピュータである。制御プログラム作成装置２は、ＣＰＵ（Central  Processing  Unit）２１と、ＲＡＭ（Random  Access  Memory）２２と、ＲＯＭ（Read  Only  Memory）２３と、記憶部２４と、入力部２５と、表示部２６と、通信インタフェース２７と、を含む。
【００２３】
ＣＰＵ２１は、ＲＡＭ２２を作業領域として使用しながら、ＲＯＭ２３及び記憶部２４に記憶されているプログラムを実行する。ＲＯＭ２３に記憶されているプログラムは、ＢＩＯＳ（Basic  Input/Output  System）又はＵＥＦＩ（Unified  Extensible  Firmware  Interface）が例示される。記憶部２４に記憶されているプログラムは、オペレーティングシステムプログラム及びエンジニアリングツールプログラムが例示される。記憶部２４は、ＳＳＤ（Solid  State  Drive）又はＨＤＤ（Hard  Disk  Drive）が例示される。
【００２４】
入力部２５は、作業者からの操作入力を受け付ける。入力部２５は、キーボード又はマウスが例示される。表示部２６は、文字及び画像を表示する。表示部２６は、液晶表示装置が例示される。通信インタフェース２７は、ネットワークＮを介して、制御装置５と通信を行う。
【００２５】
図３は、実施の形態１にかかる制御プログラム作成装置の機能ブロック図である。ＣＰＵ２１は、記憶部２４に記憶されたエンジニアリングツールプログラムを実行する。これにより、ユーザの操作入力に基づいて、ソースプロジェクトデータ２４ａを作成又は編集するソースプロジェクトデータ編集部２１ａ１と、ソースプロジェクトデータ２４ａをコンパイルしてバイナリプロジェクトデータ２４ｂを作成するコンパイル部２１ａ２と、を含むエンジニアリングツール部２１ａが実現される。
【００２６】
ソースプロジェクトデータ２４ａは、ソース制御プログラム２４ａ１と、ソース制御パラメータ２４ａ２と、ソースデバイスメモリ２４ａ３と、同値化要否リスト２４ａ４と、を含む。
【００２７】
なお、ソースプロジェクトデータ２４ａは、他のデータを含んでいても良い。他のデータは、制御装置５と機械６との接続及び制御装置５と機械７との接続を表す接続情報が例示される。
【００２８】
図４は、実施の形態１にかかるソース制御プログラムの例を示す図である。実施の形態１では、ソース制御プログラム２４ａ１は、ファンクションブロックダイアグラム言語（ＩＥＣ  ６１１３１−３、ＪＩＳ  Ｂ  ３５０３）で記述されている。
【００２９】
なお、ソース制御プログラム２４ａ１が記述される言語は、ファンクションブロックダイアグラム言語に限定されない。ソース制御プログラム２４ａ１が記述される他の言語は、ラダー言語、シーケンシャルファンクションチャート言語、ストラクチャードテキスト言語又はインストラクションリスト言語（ＩＥＣ  ６１１３１−３、ＪＩＳ  Ｂ  ３５０３）が例示される。
【００３０】
ソース制御プログラム２４ａ１は、ファンクションブロック２４ａ１ａ及び２４ａ１ｂを含む。ファンクションブロック２４ａ１ａは、エンジニアリングツールプログラムに予め用意されている比例積分微分（ＰＩＤ）制御ブロックであり、入力Ｘ１に比例（Ｐ）、積分（Ｉ）及び微分（Ｄ）制御を行って出力Ｙ１を出力する。
【００３１】
ファンクションブロック２４ａ１ｂは、ユーザによって作成された制御ブロックであり、入力Ｘ２及びＸ３に
Ｙ２＝Ａ・Ｘ２＋Ｂ・Ｘ３＋Ｃ
という演算を行って出力Ｙ２を出力する。
【００３２】
図５は、実施の形態１にかかるソース制御パラメータの例を示す図である。ソース制御パラメータ２４ａ２は、制御パラメータ名の項目と、初期値の項目と、を含む。
【００３３】
ソース制御パラメータ２４ａ２の複数の行２４ａ２ａは、ファンクションブロック２４ａ１ａの制御演算時に参照されるパラメータであり、複数の行２４ａ２ｂは、ファンクションブロック２４ａ１ｂの制御演算時に参照されるパラメータである。
【００３４】
複数の行２４ａ２ａでは、パラメータ名「逆動作・正動作」に初期値「逆動作」が設定されており、パラメータ名「制御周期」に初期値「１．０」が設定されており、パラメータ名「比例ゲイン」に初期値「１．２」が設定されており、パラメータ名「積分時間」に初期値「１２．３」が設定されており、パラメータ名「微分時間」に初期値「３．２」が設定されており、パラメータ名「ＳＶ上限値」に初期値「１００．０」が設定されており、パラメータ名「ＳＶ下限値」に初期値「０．０」が設定されている。
【００３５】
複数の行２４ａ２ｂでは、パラメータ名「Ａ」に初期値「０．９」が設定されており、パラメータ名「Ｂ」に初期値「１．１」が設定されており、パラメータ名「Ｃ」に初期値「１００」が設定されている。
【００３６】
図６は、実施の形態１にかかるソースデバイスメモリの例を示す図である。ソースデバイスメモリ２４ａ３は、デバイス名の項目と、初期値の項目と、を含む。
【００３７】
ソースデバイスメモリ２４ａ３では、デバイス名「Ｄ０００」に初期値「２００」が設定されており、デバイス名「Ｄ００１」に初期値「３００」が設定されている。
【００３８】
図７は、実施の形態１にかかる同値化要否リストの例を示す図である。同値化要否リスト２４ａ４は、制御パラメータ名又はデバイス名の項目と、即時フラグの項目と、を含む。
【００３９】
同値化要否リスト２４ａ４は、制御装置５においてバイナリ制御パラメータ又はバイナリデバイスメモリのデータが書き換えられた場合に、制御装置５においてソース制御パラメータ又はソースデバイスメモリも書き換えられるべき制御パラメータ又はデバイスが記述される。
【００４０】
制御システム１において、制御装置５においてバイナリ制御パラメータ又はバイナリデバイスメモリのデータが書き換えられた場合に、制御装置５においてソース制御パラメータ又はソースデバイスメモリも書き換えられることを「同値化」と称する。
【００４１】
同値化要否リスト２４ａ４の複数の行２４ａ４ａは、ファンクションブロック２４ａ１ａの制御演算時に参照されるパラメータの内で同値化が行われるパラメータが記述されている。
【００４２】
複数の行２４ａ４ａには、パラメータ名「比例ゲイン」、パラメータ名「積分時間」及びパラメータ名「微分時間」が記述されている。従って、制御装置５においてバイナリ制御パラメータの内のパラメータ名「比例ゲイン」、パラメータ名「積分時間」又はパラメータ名「微分時間」のデータが書き換えられたら、制御装置５においてソース制御パラメータの内のパラメータ名「比例ゲイン」、パラメータ名「積分時間」又はパラメータ名「微分時間」のデータが同値化される。
【００４３】
なお、ファンクションブロック２４ａ１ａの制御演算時に参照されるパラメータの内、パラメータ名「逆動作・正動作」、パラメータ名「制御周期」、パラメータ名「ＳＶ上限値」及びパラメータ名「ＳＶ下限値」は、同値化要否リスト２４ａ４に記述されていない。
【００４４】
従って、制御装置５においてバイナリ制御パラメータの内のパラメータ名「逆動作・正動作」、パラメータ名「制御周期」、パラメータ名「ＳＶ上限値」又はパラメータ名「ＳＶ下限値」のデータが書き換えられても、制御装置５においてソース制御パラメータの内のパラメータ名「逆動作・正動作」、パラメータ名「制御周期」、パラメータ名「ＳＶ上限値」又はパラメータ名「ＳＶ下限値」のデータは同値化されない。
【００４５】
制御パラメータの中には、ゲインのように、機械６及び７を動作させながらデータを徐々に詰めて行って、データが最終決定されるものがある。このような制御パラメータのデータは、同値化が行われてソース制御パラメータのデータも書き換えられることが好ましい。一方、制御パラメータの中には、カウンタのように、機械６及び７の動作検証のために一時的にデータが変更されるものがある。このような制御パラメータのデータは、同値化が行われないことが好ましい。
【００４６】
制御システム１は、同値化要否リスト２４ａ４を備えることにより、ソース制御パラメータの中で書き換えられることが好ましい制御パラメータだけを書き換えることができる。
【００４７】
同値化要否リスト２４ａ４の即時フラグの項目は、制御装置５においてバイナリ制御パラメータ又はバイナリデバイスメモリのデータが書き換えられた場合に、制御装置５においてソース制御パラメータ又はソースデバイスメモリのデータが直ちに同期化されるか否かを表すフラグが記述される。
【００４８】
即時フラグが「１」の場合には、制御装置５においてバイナリ制御パラメータ又はバイナリデバイスメモリのデータが書き換えられたら、制御装置５においてソース制御パラメータ又はソースデバイスメモリのデータが直ちに同期化される。
【００４９】
即時フラグが「０」の場合には、制御装置５においてバイナリ制御パラメータ又はバイナリデバイスメモリのデータが書き換えられたら、制御装置５において書き換えられたデータがバッファリングされ、予め定められた条件が満たされたときに、制御装置５においてソース制御パラメータ又はソースデバイスメモリのデータが同値化される。
【００５０】
複数の行２４ａ４ａでは、パラメータ名「比例ゲイン」、パラメータ名「積分時間」及びパラメータ名「微分時間」に即時フラグ「１」が設定されている。従って、制御装置５においてバイナリ制御パラメータ内のパラメータ名「比例ゲイン」、パラメータ名「積分時間」又はパラメータ名「微分時間」のデータが書き換えられたら、制御装置５においてソース制御パラメータ内のパラメータ名「比例ゲイン」、パラメータ名「積分時間」又はパラメータ名「微分時間」のデータが直ちに同値化される。
【００５１】
制御パラメータの中には、ゲインのように、書き換えられたデータを失う可能性を出来るだけ低減したいものがある。このような制御パラメータは、直ちに同値化が行われて、ソース制御パラメータのデータが直ちに書き換えられることが好ましい。一方、制御パラメータの中には、書き換えられたデータを失う可能性よりも制御装置５の負荷の分散を図ることを優先すべきと考えられるものがある。このような制御パラメータのデータは、条件を見計らって同値化が行われることが好ましい。
【００５２】
制御システム１は、即時フラグの項目を含む同値化要否リスト２４ａ４を備えることにより、ソース制御パラメータの中の、書き換えられたデータを失う可能性を出来るだけ低減したい制御パラメータだけを、直ちに書き換えることができる。これにより、制御装置５は、書き換えられたデータを失う可能性を低減することができるとともに、負荷の分散を図ることができる。
【００５３】
同値化要否リスト２４ａ４の複数の行２４ａ４ｂは、ファンクションブロック２４ａ１ｂの制御演算時に参照されるパラメータの内で同値化が行われるパラメータが記述されている。
【００５４】
複数の行２４ａ４ｂには、パラメータ名「Ａ」及びパラメータ名「Ｂ」が記述されている。従って、制御装置５においてバイナリ制御パラメータ内のパラメータ名「Ａ」又はパラメータ名「Ｂ」のデータが書き換えられたら、制御装置５においてソース制御パラメータ内のパラメータ名「Ａ」又はパラメータ名「Ｂ」のデータが同値化される。
【００５５】
複数の行２４ａ４ｂでは、パラメータ名「Ａ」及びパラメータ名「Ｂ」に即時フラグ「０」が設定されている。従って、制御装置５においてバイナリ制御パラメータ内のパラメータ名「Ａ」又はパラメータ名「Ｂ」のデータが書き換えられたら、制御装置５において書き換えられたデータがバッファリングされ、予め定められた条件が満たされたときに、制御装置５においてソース制御パラメータ内のパラメータ名「Ａ」又はパラメータ名「Ｂ」のデータが同値化される。
【００５６】
なお、ファンクションブロック２４ａ１ｂの制御演算時に参照されるパラメータの内、パラメータ名「Ｃ」は、同値化要否リスト２４ａ４に記述されていない。従って、制御装置５においてバイナリ制御パラメータの内のパラメータ名「Ｃ」のデータが書き換えられても、制御装置５においてソース制御パラメータの内のパラメータ名「Ｃ」のデータは同値化されない。
【００５７】
行２４ａ４ｃには、デバイス名「Ｄ０００」が記述されている。従って、制御装置５においてバイナリデバイスメモリ内のデバイス名「Ｄ０００」のデータが書き換えられたら、制御装置５においてソースデバイスメモリ内のデバイス名「Ｄ０００」のデータが同値化される。
【００５８】
行２４ａ４ｃでは、デバイス名「Ｄ０００」に即時フラグ「０」が設定されている。従って、制御装置５においてバイナリデバイスメモリ内のデバイス名「Ｄ０００」のデータが書き換えられたら、制御装置５において書き換えられたデータがバッファリングされ、予め定められた条件が満たされたときに、制御装置５においてソースデバイスメモリ内のデバイス名「Ｄ０００」のデータが同値化される。
【００５９】
なお、デバイスメモリの内、デバイス名「Ｄ００１」は、同値化要否リスト２４ａ４に記述されていない。従って、制御装置５においてバイナリデバイスメモリの内のデバイス名「Ｄ００１」のデータが書き換えられても、制御装置５においてソースデバイスメモリの内のデバイス名「Ｄ００１」のデータは同値化されない。
【００６０】
図８は、実施の形態１にかかるパラメータ設定画面の例を示す図である。パラメータ設定画面３１は、ソースプロジェクトデータ編集部２１ａ１によって表示部２６上に表示される。
【００６１】
入力欄３１ａは、パラメータ名「逆動作・正動作」の初期値が入力される欄である。入力欄３１ｂは、パラメータ名「制御周期」の初期値が入力される欄である。入力欄３１ｃは、パラメータ名「比例ゲイン」の初期値が入力される欄である。入力欄３１ｄは、パラメータ名「積分時間」の初期値が入力される欄である。
【００６２】
入力欄３１ｅは、パラメータ名「微分時間」の初期値が入力される欄である。入力欄３１ｆは、パラメータ名「ＳＶ上限値」の初期値が入力される欄である。入力欄３１ｇは、パラメータ名「ＳＶ下限値」の初期値が入力される欄である。
【００６３】
入力欄３１ｈは、パラメータ名「逆動作・正動作」の同値化の要否が入力される欄である。入力欄３１ｉは、パラメータ名「制御周期」の同値化の要否が入力される欄である。入力欄３１ｊは、パラメータ名「比例ゲイン」の同値化の要否が入力される欄である。入力欄３１ｋは、パラメータ名「積分時間」の同値化の要否が入力される欄である。
【００６４】
入力欄３１ｌは、パラメータ名「微分時間」の同値化の要否が入力される欄である。入力欄３１ｍは、パラメータ名「ＳＶ上限値」の同値化の要否が入力される欄である。入力欄３１ｎは、パラメータ名「ＳＶ下限値」の同値化の要否が入力される欄である。
【００６５】
ソースプロジェクトデータ編集部２１ａ１は、入力欄３１ｈから入力欄３１ｎまでの中で、チェックが入力された制御パラメータだけを、同値化要否リスト２４ａ４に記述する。
【００６６】
ファンクションブロック２４ａ１ａは、エンジニアリングツールプログラムに予め準備されている制御ブロックである。そして、パラメータ名「比例ゲイン」、パラメータ名「積分時間」及びパラメータ名「微分時間」は、同値化する必要性が高い制御パラメータであることが予め判っている。そこで、ソースプロジェクトデータ編集部２１ａ１は、入力欄３１ｊ、３１ｋ及び３１ｌの中にデフォルトでチェックをしておく。
【００６７】
これにより、ソースプロジェクトデータ編集部２１ａ１は、同値化する必要性が高いパラメータ名「比例ゲイン」、パラメータ名「積分時間」及びパラメータ名「微分時間」を同値化することをデフォルトにして、ユーザに提示することができる。
【００６８】
入力欄３１ｏは、パラメータ名「逆動作・正動作」の即時同値化の要否が入力される欄である。入力欄３１ｐは、パラメータ名「制御周期」の即時同値化の要否が入力される欄である。入力欄３１ｑは、パラメータ名「比例ゲイン」の即時同値化の要否が入力される欄である。
【００６９】
入力欄３１ｒは、パラメータ名「積分時間」の即時同値化の要否が入力される欄である。入力欄３１ｓは、パラメータ名「微分時間」の即時同値化の要否が入力される欄である。入力欄３１ｔは、パラメータ名「ＳＶ上限値」の即時同値化の要否が入力される欄である。入力欄３１ｕは、パラメータ名「ＳＶ下限値」の即時同値化の要否が入力される欄である。
【００７０】
ソースプロジェクトデータ編集部２１ａ１は、入力欄３１ｏから入力欄３１ｕまでの中で、チェックが入力された制御パラメータだけ、同値化要否リスト２４ａ４の即時フラグの項目に「１」を記述する。
【００７１】
ファンクションブロック２４ａ１ａは、エンジニアリングツールプログラムに予め準備されている制御ブロックである。そして、パラメータ名「比例ゲイン」、パラメータ名「積分時間」及びパラメータ名「微分時間」は、書き換えられた値を失う可能性を出来るだけ低減したい制御パラメータであることが予め判っている。そこで、ソースプロジェクトデータ編集部２１ａ１は、入力欄３１ｑ、３１ｒ及び３１ｓの中にデフォルトでチェックをしておく。
【００７２】
これにより、ソースプロジェクトデータ編集部２１ａ１は、書き換えられたデータを失う可能性を出来るだけ低減したいパラメータ名「比例ゲイン」、パラメータ名「積分時間」及びパラメータ名「微分時間」を即時同値化することをデフォルトにして、ユーザに提示することができる。
【００７３】
再び図３を参照すると、コンパイル部２１ａ２は、ソース制御プログラム２４ａ１をコンパイルすることにより、バイナリ制御プログラム２４ｂ１を作成し、ソース制御パラメータ２４ａ２をコンパイルすることにより、バイナリ制御パラメータ２４ｂ２を作成し、ソースデバイスメモリ２４ａ３をコンパイルすることにより、バイナリデバイスメモリ２４ｂ３を作成する。
【００７４】
バイナリ制御プログラム２４ｂ１、バイナリ制御パラメータ２４ｂ２及びバイナリデバイスメモリ２４ｂ３が、バイナリプロジェクトデータ２４ｂを構成する。ソースプロジェクトデータ２４ａ及びバイナリプロジェクトデータ２４ｂは、通信インタフェース２７によって、制御装置５に送信される。
【００７５】
図９は、実施の形態１にかかる制御装置のハードウェア構成を示す図である。制御装置５は、メイン基板５ａと、サブ基板５ｂ及び５ｃと、を含む。
【００７６】
メイン基板５ａは、ＣＰＵ５ａ１と、ＲＡＭであるメモリ５ａ２と、時間を計時するタイマ５ａ３と、外部記憶スロット５ａ４と、通信インタフェース５ａ５と、バスインタフェース５ａ６と、内部記憶部５ａ７と、を含む。ＣＰＵ５ａ１、メモリ５ａ２、タイマ５ａ３、外部記憶スロット５ａ４、通信インタフェース５ａ５、バスインタフェース５ａ６及び内部記憶部５ａ７は、内部バスＢ１を介して接続されている。
【００７７】
メイン基板５ａは、ＵＰＳ（Uninterruptible  Power  Supply）１０から電力供給を受けて動作する。ＵＰＳ１０は、系統電源９から供給される電力を蓄電して、蓄電した電力をメイン基板５ａに供給する。
【００７８】
外部記憶スロット５ａ４には、外部記憶部８が挿入される。外部記憶部８は、ＳＤカード（登録商標）が例示される。
【００７９】
通信インタフェース５ａ５は、ネットワークＮを介して、制御プログラム作成装置２、プログラマブル表示器３及び上位制御装置４と通信を行う。
【００８０】
バスインタフェース５ａ６は、内部バスＢ１と拡張バスＢ２とを連絡するバスブリッジ回路である。サブ基板５ｂ及び５ｃは、拡張バスＢ２を介して、メイン基板５ａに接続されている。サブ基板５ｂは、機械６に接続されている。サブ基板５ｃは、機械７に接続されている。
【００８１】
内部記憶部５ａ７は、ＳＳＤ又はＨＤＤが例示される。内部記憶部５ａ７及び外部記憶部８が、記憶部を構成する。
【００８２】
図１０は、実施の形態１にかかる制御装置の機能ブロック図である。内部記憶部５ａ７は、制御プログラム作成装置２から受信されたバイナリプロジェクトデータ５ａ７ａを記憶する。バイナリプロジェクトデータ５ａ７ａは、バイナリ制御プログラム５ａ７ａ１と、バイナリ制御パラメータ５ａ７ａ２と、バイナリデバイスメモリ５ａ７ａ３と、を含む。
【００８３】
外部記憶部８は、制御プログラム作成装置２から受信されたソースプロジェクトデータ８ａを記憶する。ソースプロジェクトデータ８ａは、ソース制御プログラム８ａ１と、ソース制御パラメータ８ａ２と、ソースデバイスメモリ８ａ３と、同値化要否リスト８ａ４と、を含む。
【００８４】
なお、ソースプロジェクトデータ８ａは、内部記憶部５ａ７に記憶されても良い。内部記憶部５ａ７のリード速度及びライト速度は、外部記憶部８のリード速度及びライト速度よりも速いので、ソースプロジェクトデータ８ａが内部記憶部５ａ７に記憶されると好ましい。
【００８５】
但し、現実には、コスト又は実装面積の抑制の要請から、内部記憶部５ａ７の記憶容量が小容量である場合があり、内部記憶部５ａ７がソースプロジェクトデータ８ａを記憶する空き容量を有さない場合がある。実施の形態１では、外部記憶部８がソースプロジェクトデータ８ａを記憶する場合について説明する。
【００８６】
制御装置５が制御動作を実行する場合には、バイナリ制御プログラム５ａ７ａ１、バイナリ制御パラメータ５ａ７ａ２及びバイナリデバイスメモリ５ａ７ａ３が、メモリ５ａ２にロードされて、バイナリ制御プログラム５ａ２ａ、バイナリ制御パラメータ５ａ２ｂ及びバイナリデバイスメモリ５ａ２ｃとなる。
【００８７】
ＣＰＵ５ａ１は、内部記憶部５ａ７に記憶されたバイナリ書換プログラム及びソース書換プログラムを実行する。これにより、受信したデータに基づいて、バイナリ制御パラメータ５ａ７ａ２及び５ａ２ｂ、又は、バイナリデバイスメモリ５ａ７ａ３及び５ａ２ｃを書き換えるバイナリ書換部５ａ１ａと、バイナリ制御パラメータ５ａ７ａ２及び５ａ２ｂ、又は、バイナリデバイスメモリ５ａ７ａ３及び５ａ２ｃが書き換えられたら、受信したデータに基づいて、ソース制御パラメータ８ａ２又はソースデバイスメモリ８ａ３を書き換えるソース書換部５ａ１ｂと、が実現される。
【００８８】
なお、バイナリ書換プログラム及びソース書換プログラムも、メモリ５ａ２にロードされるが、図示を省略する。
【００８９】
また、バッファ５ａ２ｄが、メモリ５ａ２内に設けられる。バッファ５ａ２ｄは、バイナリ制御パラメータ５ａ２ｂ及び５ａ７ａ２の中の制御パラメータであって、即時フラグが「０」に設定されている制御パラメータ、又は、バイナリデバイスメモリ５ａ２ｃ及び５ａ７ａ３の中のデバイスであって、即時フラグが「０」に設定されているデバイスが書き換えられた場合に、書き換えられたデータがバッファリングされる領域である。
【００９０】
バッファ５ａ２ｄのサイズは、他のプログラム及びデータの妨げにならない範囲内に設定される。
【００９１】
図１１は、実施の形態１にかかるバイナリ書換処理を示すフローチャートである。バイナリ書換部５ａ１ａは、プログラマブル表示器３から制御パラメータ又はデバイスの書き換え指示及び書き換えデータを受信したら、図１１に示す処理を実行する。
【００９２】
なお、制御装置５が、プログラマブル表示器３から制御パラメータ又はデバイスの書き換え指示及び書き換えデータを受信した場合について説明するが、これに限定されない。制御装置５が、制御プログラム作成装置２、上位制御装置４又は制御プログラム作成装置２とは別の制御プログラム作成装置から制御パラメータ又はデバイスの書き換え指示及び書き換えデータを受信しても良い。
【００９３】
バイナリ書換部５ａ１ａは、ステップＳ１００において、プログラマブル表示器３から受信した制御パラメータ又はデバイスのデータを、バイナリ制御パラメータ５ａ２ｂ及び５ａ７ａ２、又は、バイナリデバイスメモリ５ａ２ｃ及び５ａ７ａ３に書き込む。
【００９４】
これにより、制御装置５は、プログラマブル表示器３から受信したデータを制御動作に即時に反映させることができる。
【００９５】
図１２は、実施の形態１にかかる制御装置のソース書込処理を示すフローチャートである。ソース書換部５ａ１ｂは、バイナリ書換部５ａ１ａが図１１に示す処理を実行したら、つまりバイナリ制御パラメータ５ａ２ｂ及び５ａ７ａ２、又は、バイナリデバイスメモリ５ａ２ｃ及び５ａ７ａ３が書き換えられたら、図１２に示す処理を実行する。
【００９６】
同値化要否判定部５ａ１ｂ１は、ステップＳ１１０において、同値化要否リスト８ａ４を参照し、プログラマブル表示器３から受信した制御パラメータ又はデバイスが同値化要否リスト８ａ４に記述されているか、つまりプログラマブル表示器３から受信した制御パラメータ又はデバイスが同値化要の制御パラメータ又はデバイスであるか否かを判定する。
【００９７】
同値化要否判定部５ａ１ｂ１は、プログラマブル表示器３から受信した制御パラメータ又はデバイスが同値化要の制御パラメータ又はデバイスではないとステップＳ１１０で判定したら（Ｎｏ）、処理を終了する。
【００９８】
一方、同値化要否判定部５ａ１ｂ１は、プログラマブル表示器３から受信した制御パラメータ又はデバイスが同値化要の制御パラメータ又はデバイスであるとステップＳ１１０で判定したら（Ｙｅｓ）、処理をステップＳ１１２に進める。
【００９９】
バッファ書込部５ａ１ｂ２は、ステップＳ１１２において、同値化要否リスト８ａ４を参照し、プログラマブル表示器３から受信した制御パラメータ又はデバイスが同値化要否リスト８ａ４内で即時フラグが「１」に設定されているか、つまりプログラマブル表示器３から受信した制御パラメータ又はデバイスが即時同値化要の制御パラメータ又はデバイスであるか否かを判定する。
【０１００】
バッファ書込部５ａ１ｂ２は、プログラマブル表示器３から受信した制御パラメータ又はデバイスが即時同値化要の制御パラメータ又はデバイスであるとステップＳ１１２で判定したら（Ｙｅｓ）、処理をステップＳ１１４に進める。
【０１０１】
ソース書込部５ａ１ｂ３は、ステップＳ１１４において、プログラマブル表示器３から受信した制御パラメータ又はデバイスのデータを、ソース制御パラメータ８ａ２又はソースデバイスメモリ８ａ３に書き込み、処理を終了する。
【０１０２】
これにより、制御装置５は、即時同値化要の受信した制御パラメータ又はデバイスのデータを、ソース制御パラメータ８ａ２又はソースデバイスメモリ８ａ３に直ちに書き込むことができる。これにより、制御装置５は、書き換えられたデータが失われてしまう可能性を低減することができる。
【０１０３】
一方、バッファ書込部５ａ１ｂ２は、プログラマブル表示器３から受信した制御パラメータ又はデバイスが即時同値化要の制御パラメータ又はデバイスではないとステップＳ１１２で判定したら（Ｎｏ）、処理をステップＳ１１６に進める。
【０１０４】
バッファ書込部５ａ１ｂ２は、ステップＳ１１６において、プログラマブル表示器３から受信した制御パラメータ又はデバイスがバッファ５ａ２ｄに既に存在するか否かを判定する。
【０１０５】
バッファ書込部５ａ１ｂ２は、プログラマブル表示器３から受信した制御パラメータ又はデバイスがバッファ５ａ２ｄに既に存在する（Ｙｅｓ）とステップＳ１１６で判定したら、処理をステップＳ１１８に進める。
【０１０６】
バッファ書込部５ａ１ｂ２は、ステップＳ１１８において、プログラマブル表示器３から受信した制御パラメータ又はデバイスのデータを、バッファ５ａ２ｄに上書きし、処理を終了する。
【０１０７】
これにより、制御装置５は、内部記憶部５ａ７へのデータ書き込みの回数を低減することができる。内部記憶部５ａ７へのデータ書き込みは、時間が掛かるとともに、ＣＰＵ５１の負荷になる。従って、制御装置５は、内部記憶部５ａ７へのデータ書き込みの回数を低減することにより、ＣＰＵ５１の処理負荷を低減することができる。
【０１０８】
また、内部記憶部５ａ７がＳＳＤである場合、ＳＳＤへのデータ書き込み回数には上限がある。つまり、ＳＳＤには、データ書き込み回数に関して寿命がある。従って、制御装置５は、内部記憶部５ａ７へのデータ書き込みの回数を低減することにより、内部記憶部５ａ７を長い期間使用できるようにすることができる。
【０１０９】
一方、バッファ書込部５ａ１ｂ２は、プログラマブル表示器３から受信した制御パラメータ又はデバイスがバッファ５ａ２ｄに存在しない（Ｎｏ）とステップＳ１１６で判定したら、処理をステップＳ１２０に進める。
【０１１０】
バッファ書込部５ａ１ｂ２は、ステップＳ１２０において、プログラマブル表示器３から受信した制御パラメータ又はデバイスのデータを、バッファ５ａ２ｄに書き込み、処理を終了する。
【０１１１】
これにより、制御装置５は、書き換えられたデータを失う可能性よりも制御装置５の負荷の分散を図ることを優先すべきと考えられる制御パラメータ又はデバイスのデータをバッファリングすることができる。内部記憶部５ａ７へのデータ書き込みは、時間が掛かるとともに、ＣＰＵ５ａ１の負荷になる。従って、制御装置５は、負荷の分散を図ることができる。
【０１１２】
図１３は、実施の形態１にかかるソース変更処理を示すフローチャートである。ソース書込部５ａ１ｂ３は、ステップＳ１４０において、予め定められた条件が満たされなければ（Ｎｏ）待機し、予め定められた条件が満たされたら（Ｙｅｓ）、処理をステップＳ１４２に進める。
【０１１３】
予め定められた条件は、下記の複数の条件が例示される。第１の例は、ＣＰＵ５ａ１の使用率が予め定められた閾値以下になった場合である。この場合、ソース書込部５ａ１ｂ３は、ＣＰＵ５ａ１に処理余力があるので、ステップＳ１４２の処理を実行する。
【０１１４】
第２の例は、バッファ５ａ２ｄの空き容量が予め定められた閾値以下になった場合である。この場合、以降の制御パラメータ又はデバイスのデータのバッファリングが行えなくなる可能性があるので、ソース書込部５ａ１ｂ３は、ステップＳ１４２の処理を実行する。
【０１１５】
第３の例は、制御プログラム作成装置２、プログラマブル表示器３又は上位制御装置４からステップＳ１４２を実行する旨の指示を受信した場合である。この場合、ソース書込部５ａ１ｂ３は、制御プログラム作成装置２、プログラマブル表示器３又は上位制御装置４の指示に従って、ステップＳ１４２の処理を実行する。ユーザは、制御プログラム作成装置２又はプログラマブル表示器３を操作することで、所望のタイミングで、ソース書込部５ａ１ｂ３にステップＳ１４２の処理を実行させることができる。
【０１１６】
上位制御装置４がステップＳ１４２を実行する旨の指示を制御装置５に送信する場合は、製造ラインの始業時、毎正時又は製造ラインの終業時が例示される。
【０１１７】
第４の例は、タイマ５ａ３が、予め定められた時間を計時した場合である。この場合、ソース書込部５ａ１ｂ３は、制御装置５が稼働してから予め定められた時間が経過したら、ステップＳ１４２の処理を実行する。また、タイマ５ａ３が、予め定められた時間を繰り返し計時する場合は、ソース書込部５ａ１ｂ３は、予め定められた時間が経過する毎に、ステップＳ１４２の処理を実行する。
【０１１８】
第５の例は、制御装置５が、ＵＰＳ１０から系統電源９の異常通知を受信した場合である。系統電源９の異常は、停電、瞬時停電又は電圧変動が例示される。この場合、ソース書込部５ａ１ｂ３は、バッファ５ａ２ｄ内のデータが失われる可能性を低減するために、ステップＳ１４２の処理を実行する。
【０１１９】
第６の例は、ＣＰＵ５ａ１が、自己診断処理の実施により、制御装置５の異常を検出した場合である。この場合、ソース書込部５ａ１ｂ３は、バッファ５ａ２ｄ内のデータが失われる可能性を低減するために、ステップＳ１４２の処理を実行する。
【０１２０】
ソース書込部５ａ１ｂ３は、ステップＳ１４２において、バッファ５ａ２ｄの内容を、ソース制御パラメータ８ａ２又はソースデバイスメモリ８ａ３に書き込み、処理を終了する。
【０１２１】
これにより、制御装置５は、変更された制御パラメータ又はデバイスのデータを、ソース制御パラメータ８ａ２又はソースデバイスメモリ８ａ３に反映させることができる。これにより、制御装置５は、バイナリ制御パラメータ５ａ２ｂ及び５ａ７ａ２、又は、バイナリデバイスメモリ５ａ２ｃ又は５ａ７ａ３内の書き換えられたデータが失われてしまうことを抑制することができる。
【０１２２】
図１４は、実施の形態１にかかる制御プログラム作成装置のプロジェクトデータ編集処理を示すフローチャートである。
【０１２３】
ソースプロジェクトデータ編集部２１ａ１は、ステップＳ１５０において、制御装置５からソースプロジェクトデータ８ａを受信し、記憶部２４のソースプロジェクトデータ２４ａに上書きする。
【０１２４】
次に、ソースプロジェクトデータ編集部２１ａ１は、ステップＳ１５２において、ユーザからの操作入力を受け付けて、ソースプロジェクトデータ２４ａを編集する。
【０１２５】
次に、コンパイル部２１ａ２は、ステップＳ１５４において、ソースプロジェクトデータ２４ａをコンパイルして、バイナリプロジェクトデータ２４ｂを作成及び上書きする。
【０１２６】
次に、コンパイル部２１ａ２は、ステップＳ１５６において、ソースプロジェクトデータ２４ａ及びバイナリプロジェクトデータ２４ｂを制御装置５に送信し、処理を終了する。
【０１２７】
以上説明したように、制御プログラム作成装置２は、制御装置５においてデータが書き換えられたソースプロジェクトデータ２４ａを編集することができる。これにより、制御装置５は、制御装置５内で書き換えられたデータが失われてしまうことを抑制することができる。
【０１２８】
また、制御プログラム作成装置２は、制御装置５においてプログラマブル表示器３からの指令に基づいてデータが書き換えられた場合であっても、データが書き換えられたソースプロジェクトデータ２４ａを編集することができる。これにより、制御装置５は、データ書き換えの指令を送信した装置とソースプロジェクトデータ２４ａを編集する装置とが異なっている場合であっても、制御装置５内で書き換えられたデータが失われてしまうことを抑制することができる。
【０１２９】
また、制御装置５は、同値化要否リスト２４ａ４に記述された制御パラメータ又はデバイスのデータだけを、ソース制御パラメータ８ａ２又はソースデバイスメモリ８ａ３に書き込む。これにより、制御装置５は、ソース制御パラメータ８ａ２又はソースデバイスメモリ８ａ３の中で書き換えられることが好ましい制御パラメータ又はデバイスだけを書き換えることができる。
【０１３０】
また、制御装置５は、ソース制御パラメータ８ａ２又はソースデバイスメモリ８ａ３の中の、同値化要否リスト２４ａ４の即時フラグの項目に「１」が設定された制御パラメータ又はデバイスだけを、直ちに書き換えることができる。これにより、制御装置５は、書き換えられたデータを失う可能性を低減することができるとともに、負荷の分散を図ることができる。
【０１３１】
また、制御装置５は、ソース制御パラメータ８ａ２又はソースデバイスメモリ８ａ３の中の、同値化要否リスト２４ａ４の即時フラグの項目に「０」が設定された制御パラメータ又はデバイスのデータをバッファリングしておくことができる。そして、制御装置５は、予め定められた条件が満たされたら、バッファリングされた制御パラメータ又はデバイスのデータをソース制御パラメータ８ａ２又はソースデバイスメモリ８ａ３に書き込むことができる。これにより、制御装置５は、内部記憶部５ａ７へのデータ書き込みの回数を低減することができる。内部記憶部５ａ７へのデータ書き込みは、時間が掛かるとともに、ＣＰＵ５１の負荷になる。従って、制御装置５は、内部記憶部５ａ７へのデータ書き込みの回数を低減することにより、ＣＰＵ５１の処理負荷を低減することができる。
【０１３２】
実施の形態２．
図１５は、実施の形態２にかかる制御装置の機能ブロック図である。実施の形態１で説明したように、内部記憶部５ａ７のリード速度及びライト速度は、外部記憶部８のリード速度及びライト速度よりも速い。従って、内部記憶部５ａ７がソースプロジェクトデータ８ａを記憶する空き容量を有する場合は、内部記憶部５ａ７がソースプロジェクトデータ８ａを記憶すると好ましい。
【０１３３】
そこで、実施の形態２にかかる制御装置５Ａでは、内部記憶部５ａ７がソースプロジェクトデータ８ａを記憶する。
【０１３４】
内部記憶部５ａ７のリード速度及びライト速度は、外部記憶部８のリード速度及びライト速度よりも速い。また、内部記憶部５ａ７へのリード及びライトのＣＰＵ５ａ１の処理負荷は、外部記憶部８へのリード及びライトのＣＰＵ５ａ１の処理負荷よりも軽い。
【０１３５】
そこで、実施の形態２では、同値化が必要な制御パラメータ又はデバイスのデータをバッファリングせずに、直ちにソース制御パラメータ８ａ２又はソースデバイスメモリ８ａ３に書き込む。
【０１３６】
従って、実施の形態２にかかる制御装置５Ａは、実施の形態１にかかる制御装置５のバッファ書込部５ａ１ｂ２及びバッファ５ａ２ｄが不要である。また、同値化要否リスト８ａ４は、即時フラグの項目が不要である。
【０１３７】
図１６は、実施の形態２にかかる制御装置のソース書込処理を示すフローチャートである。ソース書換部５ａ１ｂは、バイナリ書換部５ａ１ａが図１０に示す処理を実行したら、つまりバイナリ制御パラメータ５ａ２ｂ及び５ａ７ａ２、又は、バイナリデバイスメモリ５ａ２ｃ及び５ａ７ａ３が書き換えられたら、図１６に示す処理を実行する。
【０１３８】
同値化要否判定部５ａ１ｂ１は、ステップＳ１６０において、同値化要否リスト８ａ４を参照し、プログラマブル表示器３から受信した制御パラメータ又はデバイスが同値化要否リスト８ａ４に記述されているか、つまりプログラマブル表示器３から受信した制御パラメータ又はデバイスが同値化要の制御パラメータ又はデバイスであるか否かを判定する。
【０１３９】
同値化要否判定部５ａ１ｂ１は、プログラマブル表示器３から受信した制御パラメータ又はデバイスが同値化要の制御パラメータ又はデバイスではないとステップＳ１６０で判定したら（Ｎｏ）、処理を終了する。
【０１４０】
一方、同値化要否判定部５ａ１ｂ１は、プログラマブル表示器３から受信した制御パラメータ又はデバイスが同値化要の制御パラメータ又はデバイスであるとステップＳ１６０で判定したら（Ｙｅｓ）、処理をステップＳ１６２に進める。
【０１４１】
ソース書込部５ａ１ｂ３は、ステップＳ１６２において、プログラマブル表示器３から受信した制御パラメータ又はデバイスのデータを、ソース制御パラメータ８ａ２又はソースデバイスメモリ８ａ３に書き込み、処理を終了する。
【０１４２】
以上説明したように、制御装置５Ａは、受信した制御パラメータ又はデバイスのデータを、ソース制御パラメータ８ａ２又はソースデバイスメモリ８ａ３に直ちに書き込むことができる。これにより、制御装置５Ａは、制御装置５Ａ内で書き換えられたデータが失われてしまうことを抑制することができる。
【０１４３】
以上の実施の形態に示した構成は、本発明の内容の一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、本発明の要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。
【符号の説明】
【０１４４】
１  制御システム、２  制御プログラム作成装置、３  プログラマブル表示器、４  上位制御装置、５，５Ａ  制御装置、５ａ１  ＣＰＵ、５ａ１ａ  バイナリ書換部、５ａ１ｂ  ソース書換部、５ａ１ｂ１  同値化要否判定部、５ａ１ｂ２  バッファ書込部、５ａ１ｂ３  ソース書込部、５ａ２  メモリ、５ａ２ａ，５ａ７ａ１，２４ｂ１  バイナリ制御プログラム、５ａ２ｂ，５ａ７ａ２，２４ｂ２  バイナリ制御パラメータ、５ａ２ｃ，５ａ７ａ３，２４ｂ３  バイナリデバイスメモリ、５ａ２ｄ  バッファ、５ａ７  内部記憶部、５ａ７ａ，２４ｂ  バイナリプロジェクトデータ、８  外部記憶部、８ａ，２４ａ  ソースプロジェクトデータ、８ａ１，２４ａ１  ソース制御プログラム、８ａ２，２４ａ２  ソース制御パラメータ、８ａ３，２４ａ３  ソースデバイスメモリ、８ａ４，２４ａ４  同値化要否リスト。
【図１】
2016135835.tif 000003
【図２】
2016135835.tif 000004
【図３】
2016135835.tif 000005
【図４】
2016135835.tif 000006
【図５】
2016135835.tif 000007
【図６】
2016135835.tif 000008
【図７】
2016135835.tif 000009
【図８】
2016135835.tif 000010
【図９】
2016135835.tif 000011
【図１０】
2016135835.tif 000012
【図１１】
2016135835.tif 000013
【図１２】
2016135835.tif 000014
【図１３】
2016135835.tif 000015
【図１４】
2016135835.tif 000016
【図１５】
2016135835.tif 000017
【図１６】
2016135835.tif 000018
【手続補正書】
【提出日】平成28年9月16日(2016.9.16)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
制御プログラム及び制御プログラムの実行時に参照される情報を含むソースプロジェクトデータを記憶する記憶部と、
受信したデータに基づいて、前記記憶部に記憶されている前記ソースプロジェクトデータを書き換えるソース書換部と、
を備え、
前記記憶部は、前記ソースプロジェクトデータの内の前記制御プログラムの実行時に参照される情報であって、書き換えられるべき前記制御プログラムの実行時に参照される情報が記述される同値化要否リストを更に記憶し、
前記ソース書換部は、前記同値化要否リストに記述されている前記制御プログラムの実行時に参照される情報だけを書き換えることを特徴とする制御装置。
【請求項２】
前記記憶部は、前記ソースプロジェクトデータをコンパイルしたバイナリプロジェクトデータを更に記憶し、
前記受信したデータに基づいて、前記記憶部に記憶されている前記バイナリプロジェクトデータを書き換えるバイナリ書換部を更に備え、
前記同値化要否リストは、前記バイナリプロジェクトデータが書き換えられたら直ちに前記ソースプロジェクトデータを書き換えるか否かが記述された即時フラグの項目を含み、
前記ソース書換部は、前記即時フラグの項目に直ちに書き換えることが記述されている前記制御プログラムの実行時に参照される情報を直ちに書き換えることを特徴とする請求項１に記載の制御装置。
【請求項３】
バッファを更に備え、
前記ソース書換部は、前記即時フラグの項目に直ちに書き換えないことが記述されている前記制御プログラムの実行時に参照される情報を前記バッファに書き込み、その後予め定められた条件が満たされたら、前記バッファ内のデータを前記ソースプロジェクトデータに書き込むことを特徴とする請求項２に記載の制御装置。
【請求項４】
請求項１から３までのいずれか１項に記載の制御装置と、
前記制御装置から受信した前記ソースプロジェクトデータを編集するソースプロジェクトデータ編集部と、前記ソースプロジェクトデータをコンパイルして前記バイナリプロジェクトデータを作成して前記制御装置に送信するコンパイル部と、を備える制御プログラム作成装置と、
を備えることを特徴とする制御システム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００４７
【補正方法】変更
【補正の内容】
【００４７】
同値化要否リスト２４ａ４の即時フラグの項目は、制御装置５においてバイナリ制御パラメータ又はバイナリデバイスメモリのデータが書き換えられた場合に、制御装置５においてソース制御パラメータ又はソースデバイスメモリのデータが直ちに同値化されるか否かを表すフラグが記述される。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００４８
【補正方法】変更
【補正の内容】
【００４８】
即時フラグが「１」の場合には、制御装置５においてバイナリ制御パラメータ又はバイナリデバイスメモリのデータが書き換えられたら、制御装置５においてソース制御パラメータ又はソースデバイスメモリのデータが直ちに同値化される。
【手続補正書】
【提出日】平成29年3月1日(2017.3.1)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
制御プログラム及び制御プログラムの実行時に参照される情報を含むソースプロジェクトデータを記憶する記憶部と、
受信したデータに基づいて、前記記憶部に記憶されている前記ソースプロジェクトデータを書き換えるソース書換部と、
を備え、
前記記憶部は、前記ソースプロジェクトデータの内の前記制御プログラムの実行時に参照される情報であって、書き換えられるべき前記制御プログラムの実行時に参照される情報が記述される同値化要否リストを更に記憶し、
前記ソース書換部は、前記同値化要否リストに記述されている前記制御プログラムの実行時に参照される情報だけを書き換えることを特徴とする制御装置。
【請求項２】
前記記憶部は、前記ソースプロジェクトデータをコンパイルしたバイナリプロジェクトデータを更に記憶し、
前記受信したデータに基づいて、前記記憶部に記憶されている前記バイナリプロジェクトデータを書き換えるバイナリ書換部を更に備え、
前記同値化要否リストは、前記バイナリプロジェクトデータが書き換えられたら直ちに前記ソースプロジェクトデータを書き換えるか否かが記述された即時フラグの項目を含み、
前記ソース書換部は、前記即時フラグの項目に直ちに書き換えることが記述されている前記制御プログラムの実行時に参照される情報を直ちに書き換えることを特徴とする請求項１に記載の制御装置。
【請求項３】
バッファを更に備え、
前記ソース書換部は、前記即時フラグの項目に直ちに書き換えないことが記述されている前記制御プログラムの実行時に参照される情報を前記バッファに書き込み、その後予め定められた条件が満たされたら、前記バッファ内のデータを前記ソースプロジェクトデータに書き込むことを特徴とする請求項２に記載の制御装置。
【請求項４】
請求項２又は３に記載の制御装置と、
前記制御装置から受信した前記ソースプロジェクトデータを編集するソースプロジェクトデータ編集部と、前記ソースプロジェクトデータをコンパイルして前記バイナリプロジェクトデータを作成して前記制御装置に送信するコンパイル部と、を備える制御プログラム作成装置と、
を備えることを特徴とする制御システム。
【国際調査報告】
2016135835.tif 000019
2016135835.tif 000020
2016135835.tif 000021
2016135835.tif 000022