(57)【要約】      （修正有）【課題】オペレータに煩雑な設定作業を要求することなく、整合の取れたマルチＣＰＵパラメータの設定を可能にする設定装置を得る。【解決手段】マルチＣＰＵ関係を有するそれぞれのＣＰＵのプロジェクトをユニット構成情報から解析し、前記プロジェクトの編集有無を監視し、解析して取得したプロジェクトでの設定内容に対し編集有りプロジェクトの設定内容が整合の取れた設定内容になっているか否かを検証し、検証結果を表示してオペレータが整合の取れていない設定内容を再設定することができる構成とした。オペレータによるマルチＣＰＵパラメータ設定の手間を大幅に削減でき、設定作業時間の短縮化が図れる。同時に、整合性の確保がオペレータの判断によらず設定装置側で自動的に行えるので、パラメータ設定ミスによる不具合を回避することができる。【選択図】図２
2012141722.tif 000002
【特許請求の範囲】
【請求項１】
プログラマブルコントローラが備えている複数のＣＰＵをそれぞれ動作させる複数のプロジェクトのそれぞれに対し前記複数のＣＰＵが連動して動作するためのパラメータを設定する設定装置であって、
前記プログラマブルコントローラ毎に、一のプログラマブルコントローラが備える前記複数のＣＰＵと該複数のＣＰＵ各々に割り当てられたプロジェクトとを対応付けるユニット情報を管理するユニット構成情報を作成し記憶手段に格納するユニット構成情報解析部と、
前記プロジェクトの編集有無を監視する編集監視手段と、
前記編集監視手段により編集有りと検知された編集有りプロジェクトに対応するＣＰＵが備えられているプログラマブルコントローラにおける当該ＣＰＵのユニット情報の一覧を前記ユニット構成情報から抽出するユニット構成解析手段と、
前記ユニット構成解析手段により抽出されたユニット情報の一覧に基づいて前記編集有りプロジェクトに対応するＣＰＵが備えられているプログラマブルコントローラにおける複数のＣＰＵそれぞれのプロジェクトを取得するプロジェクト取得手段と、
前記プロジェクト取得手段により取得されたそれぞれのプロジェクトでの設定内容に対し前記編集有りプロジェクトの設定内容が整合の取れた設定内容になっているか否かを検証し、検証した設定内容をパラメータ項目とプロジェト名とを縦横軸にした表形式で表示手段に表示させる整合性検証手段と、
オペレータが前記表示手段に表示された前記表の中で整合を取るために各プロジェクトに再設定する内容をパラメータ項目毎に入力することを可能にする再設定データ入力手段と、
前記表の中でオペレータにより再設定された設定内容に基づいて、整合の取れていないプロジェクトに前記再設定された設定内容を書き込む再設定データ書込み手段と
を備えることを特徴とする設定装置。
【請求項２】
前記再設定データ書込み手段が書き込んで整合を取った後のプロジェクトを、ＣＰＵユニットにダウンロードする手段をさらに備えることを特徴とする請求項１に記載の設定装置。
【請求項３】
前記整合性検証手段が表示手段に表示させた表形式の設定内容を、印刷する手段をさらに備えることを特徴とする請求項１に記載の設定装置。
【請求項４】
前記再設定データ書込み手段が書き込んで整合を取った後のプロジェクトを、整合を取る前の状態に戻す手段をさらに備えることを特徴とする請求項１に記載の設定装置。
【請求項５】
前記ＣＰＵは、当該プログラマブルコントローラ全体の制御を統括するＣＰＵユニットであることを特徴とする請求項１〜４のいずれか一つに記載の設定装置。
【請求項６】
前記ＣＰＵは、サーボモータを制御するモーションＣＰＵユニットであることを特徴とする請求項１〜４のいずれか一つに記載の設定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、産業用機械などを制御するプログラマブルコントローラが備えるＣＰＵユニットのプロジェクトに対してパラメータを設定する設定装置に関するものである。
【背景技術】
【０００２】
従来、産業用機械などの制御装置としてプログラマブルコントローラ（以降、「ＰＬＣ」と記す）が用いられている。このＰＬＣは、複数のユニットの組み合わせにより構成されている。具体的には、例えば、電源供給源の電源ユニット、ＰＬＣ全体の制御を統括するＣＰＵユニット、生産装置や設備装置の駆動部に取り付けたサーボアンプを介してサーボモータを制御するモーションＣＰＵユニット、生産装置や設備装置の適所に取り付けたスイッチやセンサの信号を入力する入力ユニット、アクチュエータなどに制御出力を出す出力ユニット、通信ネットワークに接続するための通信ユニットなどの各種のユニット部品を適時組み合わせて構成される。
【０００３】
ＰＬＣのＣＰＵユニットにおける制御は、入力ユニットで入力した信号をＣＰＵユニットのＩ／Ｏメモリに取り込み、予め登録されたユーザプログラムに基づき論理演算を実施し、その演算実行結果をＩ／Ｏメモリに書き込んで出力ユニットに送り出し、その後、いわゆる周辺処理を行うということをサイクリックに繰り返し実行することを内容としている。
【０００４】
また、モーションＣＰＵユニットにおける制御は、予め登録されたモーションプログラム言語で組み込まれたユーザプログラムに基づきモーション指令を生成し、その指令結果をサーボアンプに送り出し、サーボアンプを介してサーボモータを制御し、サーボモータの速度、位置などの状態をモーションＣＰＵユニットに戻すことを繰り返して所定の動作を実現することを内容としている。
【０００５】
なお、以降、ＣＰＵユニットおよびモーションＣＰＵユニットを総称して、単に「ＣＰＵ」と表現することもある。また、ユニット部品を単に「ユニット」と表現することもある。
【０００６】
上述したＣＰＵには、ＰＬＣの各ユニットの設定を行うプログラミング装置（設定装置）のモニタ画面に表示されるＰＬＣ構成図上で、オペレータが設定操作することによってユニット単位でプロジェクトが割り当てられる。ここで、プロジェクトとは、ＣＰＵごとに割り当てられた、ＣＰＵの動作に必要な設定ファイルを指す。プロジェクト毎に使用する各種パラメータを設定することで、ＣＰＵがオペレータの意図する挙動で動作する。オペレータは、モニタ画面に表示されるＰＬＣ構成図上で、対象となるシステムに応じて、それぞれのプロジェクトにパラメータを設定する。
【０００７】
ＰＬＣ構成図上では、複数のＣＰＵ間で関連性を持ちながら動作するマルチＣＰＵ環境を構成することができる。マルチＣＰＵ環境では、関連性を持つＣＰＵ間でマルチＣＰＵパラメータを同一にする必要がある。関連性を持つＣＰＵ間で同一のマルチＣＰＵパラメータを設定することで、つまり関連性を持つＣＰＵ間で整合が取れていることで、関連性を持つ各ＣＰＵが正常に動作することが保証される。
【０００８】
上記したマルチＣＰＵパラメータは個々のプロジェクトに格納され、通信回線を介してＰＬＣの各ＣＰＵユニット乃至モーションＣＰＵユニットにダウンロードされる。個々のプロジェクトに格納された後は、個々のプロジェクトに対する操作アプリケーションからもマルチＣＰＵパラメータを設定することが可能である。そのため、一旦同一に設定しても、個々の操作アプリケーションからパラメータを編集して上書き保存した場合、プロジェクト間のパラメータに不整合が生じる可能性がある。パラメータに不整合が生じた場合には、オペレータは操作アプリケーションを用いて個々のプロジェクトに設定されているパラメータを確認し、不良箇所を見つけて整合を取るというような修正作業を行う。そして、修正したＣＰＵパラメータをＰＬＣの各ＣＰＵユニット乃至モーションＣＰＵユニットに再度ダウンロードする。
【０００９】
個々のプロジェクトに設定されているパラメータを同じように修正する、つまり整合を取る負荷を軽減する従来技術として、例えば特許文献１では、プロジェクト外部に設けられたデータベースに個々のプロジェクトのパラメータをインポートして整合を取り、整合を取ったパラメータをプロジェクトにエクスポートする装置が開示されている。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開２００６−１１８７３号公報
【発明の概要】
【発明が解決しようとする課題】
【００１１】
しかし、特許文献１に開示されている技術では、整合を取るための対象となるプロジェクトをオペレータが手作業で選択するため、オペレータは、プロジェクトとＣＰＵとの対応付け、ＣＰＵとＰＬＣとの対応付け、およびネットワークとＰＬＣとの対応付けを全て把握しなければならなかった。そのため、オペレータによるパラメータ設定作業時間が相当に大きくなり、また、設定ミスなどの可能性を回避できなかった。
【００１２】
本発明は、上記に鑑みてなされたものであり、オペレータに煩雑な設定作業を要求することなく、整合の取れたマルチＣＰＵパラメータの設定を可能にする設定装置を得ることを目的とする。
【課題を解決するための手段】
【００１３】
上述した課題を解決し、目的を達成するために、本発明は、プログラマブルコントローラが備えている複数のＣＰＵをそれぞれ動作させる複数のプロジェクトのそれぞれに対し前記複数のＣＰＵが連動して動作するためのパラメータを設定する設定装置であって、前記プログラマブルコントローラ毎に、一のプログラマブルコントローラが備える前記複数のＣＰＵと該複数のＣＰＵ各々に割り当てられたプロジェクトとを対応付けるユニット情報を管理するユニット構成情報を作成し記憶手段に格納するユニット構成情報解析部と、前記プロジェクトの編集有無を監視する編集監視手段と、前記編集監視手段により編集有りと検知された編集有りプロジェクトに対応するＣＰＵが備えられているプログラマブルコントローラにおける当該ＣＰＵのユニット情報の一覧を前記ユニット構成情報から抽出するユニット構成解析手段と、前記ユニット構成解析手段により抽出されたユニット情報の一覧に基づいて前記編集有りプロジェクトに対応するＣＰＵが備えられているプログラマブルコントローラにおける複数のＣＰＵそれぞれのプロジェクトを取得するプロジェクト取得手段と、前記プロジェクト取得手段により取得されたそれぞれのプロジェクトでの設定内容に対し前記編集有りプロジェクトの設定内容が整合の取れた設定内容になっているか否かを検証し、検証した設定内容をパラメータ項目とプロジェト名とを縦横軸にした表形式で表示手段に表示させる整合性検証手段と、オペレータが前記表示手段に表示された前記表の中で整合を取るために各プロジェクトに再設定する内容をパラメータ項目毎に入力することを可能にする再設定データ入力手段と、前記表の中でオペレータにより再設定された設定内容に基づいて、整合の取れていないプロジェクトに前記再設定された設定内容を書き込む再設定データ書込み手段とを備えることを特徴とする。
【発明の効果】
【００１４】
本発明によれば、マルチＣＰＵ関係を有するそれぞれのＣＰＵのプロジェクトをユニット構成情報から解析し、前記プロジェクトの編集有無を監視し、解析して取得したプロジェクトでの設定内容に対し編集有りプロジェクトの設定内容が整合の取れた設定内容になっているか否かを検証し、検証結果を表示してオペレータが整合の取れていない設定内容を再設定することができる。したがって、オペレータによるマルチＣＰＵパラメータ設定の手間を大幅に削減でき、設定作業時間の短縮化が図れる。同時に、整合性の確保がオペレータの判断によらず設定装置側で自動的に行えるので、パラメータ設定ミスによる不具合を回避することができるという効果を奏する。
【図面の簡単な説明】
【００１５】
【図１】図１は、本発明の一実施の形態による設定装置のハードウェア構成を示すブロック図である。
【図２】図２は、図１に示す設定装置の機能構成を示すブロック図である。
【図３】図３は、図１に示す表示装置の表示画面の一例を示す図である。
【図４】図４は、図３に示すパラメータ設定情報表示部の表示例を示す図である。
【図５】図５は、図２に示すユニット部品情報記憶部に記憶されているユニット部品情報の一例を示す図である。
【図６】図６は、図２に示すユニット構成情報記憶部に記憶されているユニット構成情報の一例を示す図である。
【図７】図７は、ＰＬＣ構成図の一例を示す図である。
【図８】図８は、マルチＣＰＵパラメータ情報を説明する図である。
【図９】図９は、ワークスペースおよびプロジェクトのファイル構成例を説明する図である。
【図１０】図１０は、図３に示す整合性検証結果表示部に表示する整合性検証結果の一例を示す図である。
【図１１】図１１は、図２に示すプロジェクト割当部の動作を説明するフローチャートである。
【図１２】図１２は、図２に示す編集監視部の動作を説明するフローチャートである。
【図１３】図１３は、図２に示すユニット構成解析部の動作を説明するフローチャートである。
【図１４】図１４は、図２に示すプロジェクト取得部の動作を説明するフローチャートである。
【図１５】図１５は、図２に示すパラメータ読出し部の動作を説明するフローチャートである。
【図１６】図１６は、図２に示す整合性検証部の動作を説明するフローチャートである。
【図１７】図１７は、図２に示す再設定データ書込み部の動作を説明するフローチャートである。
【図１８】図１８は、図１に示す設定装置がパラメータの整合を取る動作を説明するフローチャートである。
【図１９】図１９は、図１０に示した表示画面においてオペレータの選択入力により設定内容を変更する様子を説明する図である。
【発明を実施するための形態】
【００１６】
以下に、本発明にかかる設定装置の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１７】
図１は、本発明の一実施の形態による設定装置のハードウェア構成を示すブロック図である。図１において、本実施の形態による設定装置１０は、マルチＣＰＵ環境を実現する所定のプログラムを実行することにより、ＰＬＣ１７内で関連性を持つ複数のＣＰＵ（本実施の形態では、複数のＣＰＵユニット乃至モーションＣＰＵユニット）の設定ファイルであるプロジェクトを割り当てる機能と、ＰＬＣ１７内の複数のＣＰＵユニット乃至モーションＣＰＵユニットに対してパラメータの整合性を検証して同一のパラメータを設定する機能と、設定したパラメータを通信回線１６経由でＰＬＣ１７内の複数のＣＰＵユニット乃至モーションＣＰＵユニットにダウンロードする機能とを、オペレータに煩雑な設定作業を要求することなく実現する。
【００１８】
設定装置１０は、上述の機能を実現するハードウェア構成として、キーボード、ポインティングデバイス等の入力装置１１と、表示装置１２と、中央演算装置１３と、記憶装置１４と、通信インターフェース（Ｉ／Ｆ）装置１５とを備えている。記憶装置１４は、図示しないが不揮発性記憶装置と揮発性記憶装置とで構成される。不揮発性記憶装置は、所定のプログラムの他、各プロジェクト情報、ユニット構成情報などを記憶する。また、揮発性記憶装置は、中央演算装置１３の実行時のワークメモリとして適宜使用される。通信Ｉ／Ｆ装置１５は、通信回線１６を介してＰＬＣ１７内の複数のＣＰＵユニット乃至モーションＣＰＵユニットと通信を行うためのインターフェースである。通信回線１６は、例えば、ＲＳ２３２Ｃなどのシリアル回線を用いて直接ケーブル接続する構成、或いは、他の通信回線を用いネットワーク経由でＰＬＣ１７と設定装置１０とを接続する構成などである。
【００１９】
図２は、設定装置１０の機能構成を示すブロック図である。設定装置１０の各機能は、中央演算装置１３と記憶装置１４との協働により実現される。すなわち、設定装置１０では、中央演算装置１３と記憶装置１４との協働により、入力装置１１からの入力を処理する入力処理部３２と、表示装置１２に出力する表示データを作成する表示処理部３０と、各機能を実行する演算部３１と、演算結果やプロジェクトデータ等を格納する記憶部３３と、ＰＬＣ１７との通信を処理する通信処理部３４との各機能が実現される。演算部３１は、プロジェクト割当部３１ａ、編集監視部３１ｚ、ユニット構成解析部３１ｂ、プロジェクト取得部３１ｃ、パラメータ読出し部３１ｄ、整合性検証部３１ｆ、再設定データ入力部３１ｙ、および再設定データ書込み部３１ｇの各機能を実現する。記憶部３３は、ユニット構成情報記憶部３３ａ、ユニット部品情報記憶部３３ｂおよびプロジェクト情報記憶部３３ｃの各機能を実現する。
【００２０】
図３は、表示装置１２の表示画面の一例を示す図である。表示装置１２の表示画面は、例えば図３に示すように、ワーク表示部１２ａと、ユーザプログラム一覧情報表示部１２ｂと、ユニット部品情報表示部１２ｃと、整合性検証結果表示部１２ｄとを備えている。ワーク表示部１２ａは、各プロジェクトデータに内包されるユーザプログラムの作成やユニット構成情報の作成などの編集作業を行う画面である。ユーザプログラム一覧情報表示部１２ｂは、ＰＬＣ１７にダウンロードする全てのユーザプログラムの一覧を表示する画面である。ユニット部品情報表示部１２ｃは、ＰＬＣ１７の構成に必要なユニット部品の一覧情報を表示する画面である。整合性検証結果表示部１２ｄは、マルチＣＰＵパラメータの整合性検証結果を表示する画面である。
【００２１】
ワーク表示部１２ａは、ＰＬＣ１７の構成およびネットワーク構成を作成するためのシステム構成情報表示部１２ａａと、パラメータ設定情報表示部１２ａｂとを備えている。
【００２２】
パラメータ設定情報表示部１２ａｂには、ユニット構成や対象のプロジェクトデータの内容に関わらず、統一された表示がなされる。シーケンサＣＰＵユニットとモーションＣＰＵユニットとで設定するパラメータの種類に差異があるが、パラメータ設定情報表示部１２ａｂの表示画面は、関連性を持つプロジェクト間で同一の設定が必要なパラメータを表示して入力を促し、入力されたパラメータのうち設定が必要なパラメータは、プロジェクトの種類毎に設定装置１０内で振り分けられ、各ＣＰＵ（ＣＰＵユニット乃至モーションＣＰＵユニット）に割り当てられたプロジェクトに設定される。
【００２３】
システム構成情報表示部１２ａａに表示するＰＬＣ構成図の情報は、演算部３１によりユニット構成情報として作成され、ユニット構成情報記憶部３３ａに格納されている。ユニット構成情報は、ＰＬＣ毎のユニット構成に関する情報をまとめた複数のユニット構成テーブルで構成されている。各ユニット構成テーブルは、それぞれ一つのＰＬＣ構成図に対応し、それぞれＰＬＣ１７の名称であるＰＬＣ構成名称が付されている。ＰＬＣ構成図の各構成ユニットは、それぞれユニット情報をもち、そのユニット情報が持つユニット名称で対応付けられている。表示処理部３０は、ユニット構成情報記憶部３３ａから読み出したユニット構成テーブルを元にグラフィカルに表示処理をして、システム構成情報表示部１２ａａに表示する。ユニット構成情報とその各構成要素については後述する。
【００２４】
パラメータ設定情報表示部１２ａｂに表示されるマルチＣＰＵパラメータ一覧は、演算部３１によりマルチＣＰＵパラメータ情報として作成され、プロジェクト情報記憶部３３ｃに個々のプロジェクトの一部として格納されている。そして、表示処理部３０は、プロジェクト情報記憶部３３ｃから読み出したマルチＣＰＵパラメータ情報を元にマルチＣＰＵパラメータを抽出して、パラメータ設定情報表示部１２ａｂに表示する。マルチＣＰＵパラメータ情報については後述する。
【００２５】
ユニット部品情報表示部１２ｃに表示されるユニット部品情報は、予めユニット部品情報記憶部３３ｂに格納されている。表示処理部３０は、ユニット部品情報記憶部３３ｂからユニット部品情報を読み出し、その読み出したユニット部品情報をユニット部品情報表示部１２ｃに表示する。なお、本実施の形態では、予めユニット部品情報を格納しているとするが、後で追加格納する機能も有している。
【００２６】
図４は、パラメータ設定情報表示部１２ａｂの表示例を示す図である。図４に示ように、パラメータ設定情報表示部１２ａｂは、グループ化されているパラメータ設定項目から設定するグループを指定するパラメータ設定項目選択部１２ａｂａと、パラメータの設定項目を表示するパラメータ設定部１２ａｂｂを備えている。また、パラメータ設定部１２ａｂｂは、ＰＬＣシステム関連のパラメータを設定するＰＬＣシステム設定部１２ａｂｂａと、デバイス関連のパラメータを設定するデバイス設定部１２ａｂｂｂと、Ｉ／Ｏ割付関連のパラメータを設定するＩ／Ｏ割付設定部１２ａｂｂｃと、マルチＣＰＵ関連のパラメータを設定するマルチＣＰＵ設定部１２ａｂｂｄを備えている。パラメータ設定項目選択部１２ａｂａの操作によって、パラメータ設定部１２ａｂｂ上に複数グループの設定情報を表示することができる。
【００２７】
図５は、ユニット部品情報記憶部３３ｂに記憶されているユニット部品情報の一例を示す図である。図５に示すように、ユニット部品情報記憶部３３ｂに記憶されているユニット部品情報は、複数のユニット群で構成される。図５では、ベースユニット群５０と、ＣＰＵユニット群５１と、モーションＣＰＵユニット群５２と、入力ユニット群５３とが示されている。そして、各ユニット群には、ユニット名称および属性情報で構成される複数のユニット定義情報が含まれている。ユニット群は、同じ種類のユニット定義情報を纏めるためのものである。
【００２８】
図５に示す例で言えば、ベースユニット群５０は、ベースユニットＡ（５０ａ）というユニット名称および属性情報１（５０ａａ）からなるユニット定義情報、ベースユニットＢ（５０ｂ）というユニット名称および属性情報２（５０ｂａ）からなるユニット定義情報、というように複数種類のユニット定義情報で構成される。
【００２９】
同様に、ＣＰＵユニット群５１は、ＣＰＵユニットＡ（５１ａ）および属性情報３（５１ａａ）からなるユニット定義情報、ＣＰＵユニットＢ（５１ｂ）および属性情報４（５１ｂａ）からなるユニット定義情報、というように複数種類のユニット定義情報で構成される。
【００３０】
また、モーションＣＰＵユニット群５２は、モーションＣＰＵユニットＡ（５２ａ）および属性情報５（５２ａａ）からなるユニット定義情報、モーションＣＰＵユニットＢ（５２ｂ）および属性情報６（５２ｂａ）からなるユニット定義情報、というように複数種類のユニット定義情報で構成される。
【００３１】
また、入力ユニット群５３は、入力ユニットＡ（５３ａ）および属性情報７（５３ａａ）からなるユニット定義情報、入力ユニットＢ（５３ｂ）および属性情報８（５３ｂａ）からなるユニット定義情報、というように複数種類のユニット定義情報で構成される。その他、ユニット部品情報は、ＰＬＣを構成するのに必要となるユニット群、ユニット定義情報を同様の構成で含んでいる。
【００３２】
図６は、ユニット構成情報記憶部３３ａに記憶されているユニット構成情報の一例を示す図である。ユニット構成情報記憶部に３３ａには、ＰＬＣ毎のユニット構成情報６０が記憶されている。ユニット構成情報６０は、複数のユニット構成テーブル６１で構成されている。各ユニット構成テーブル６１は、１つのＰＬＣの構成を示すものであり、項目「ＰＬＣ構成名称６１ａ」の欄に対し、複数行で構成される、項目「スロット番号６１ｂ」の欄と、項目「ユニット名称６１ｃ」の欄と、項目「属性情報６１ｄ」の欄と、項目「オブジェクトＩＤ６１ｅ」の欄と、項目「プロジェクト名称６１ｆ」の欄とが設けられている。項目「スロット番号６１ｂ」の欄から項目「プロジェクト名称６１ｆ」の欄までの１行の内容が項目「ＰＬＣ構成名称６１ａ」の欄に対する１つのユニット情報である。
【００３３】
図７は、ＰＬＣ構成図の一例を示す図である。図７では、ユニット構成テーブル６１の場合の構成図が示されている。図７において、ＰＬＣ構成図７０では、ベースユニットＡ（７１）のスロット上に電源ユニットＡ（７２）、ＣＰＵユニットＡ（７３）、モーションＣＰＵユニットＡ（７４）、モーションＣＰＵユニットＢ（７５）、入力ユニットＡ（７６）がそれぞれのユニット画像データとして配置されて表示される。スロットに配置されていない場合は、空き（７７）のように配置されていないことがわかるようになっている。
【００３４】
図７に示すように、項目「ＰＬＣ構成名称６１ａ」により各ＰＬＣ構成図７０に配置されているユニット部品一覧を取得することが可能となっている。また、項目「ユニット名称６１ｃ」によりＰＬＣ構成図７０上のどのスロットに配置されているユニット部品かを一意に識別することが可能となっている。一方、項目「プロジェクト名称６１ｆ」は、ＣＰＵユニットごとに割り当てられているプロジェクト名が格納されており、項目「ユニット名称６１ｃ」と項目「プロジェクト名称６１ｆ」との組み合わせによって、ＣＰＵとプロジェクトの割り当て関係を把握することが可能になっている。
【００３５】
ユニット構成テーブル６１は、システム構成情報表示部１２ａａ上でＰＬＣ構成図７０を新規追加したタイミングで作成される。ユニット構成テーブル６１における１つのユニット情報は、ユニット部品情報表示部１２ｃで選択したユニット部品をＰＬＣ構成図７０上のベースユニットＡ（７１）に移動させるタイミングで作成される。この時点でオペレータは、項目「ユニット名称６１ｃ」と項目「属性情報６１ｄ」とを入力する。項目「スロット番号６１ｂ」および項目「オブジェクトＩＤ６１ｅ」は、ユニット情報の作成時に演算部３１により付与される情報であり、これらの値がユニット構成テーブル６１に設定される。項目「プロジェクト名称６１ｆ」は、プロジェクト割当部３１ａにより設定される。
【００３６】
次に、図８は、マルチＣＰＵパラメータ情報を説明する図である。図８において、マルチＣＰＵパラメータ情報８０は、単一のマルチＣＰＵパラメータテーブル８１上に配置される複数のパラメータ種別８１ａとパラメータ設定値８１ｂとで構成される。マルチＣＰＵパラメータテーブル８１は、１つのＰＬＣ上に存在する複数のＣＰＵのマルチＣＰＵパラメータの構成を示すものである。
【００３７】
図９は、ワークスペースおよびプロジェクトのファイル構成例を説明する図である。図９に示すように、ワークスペースおよびプロジェクトのファイル構成は、階層構成になっている。図９では、ワークスペース（フォルダ）９０に複数のプロジェクト（フォルダ）９１が並列に接続され、各プロジェクト（フォルダ）９１にプロジェクトファイル９１ａや起動中Ｔｍｐファイル（テンポラリファイル）９１ｂなどの複数のファイルが並列に接続される形態が示されている。
【００３８】
ここで、ワークスペースとは、オペレータ操作によってまとめられた複数のプロジェクトを指しており、ワークスペース（フォルダ）９０の下に、プロジェクト単位でプロジェクト（フォルダ）９１が作成される。プロジェクト（フォルダ９１）の下には、プロジェクトファイル９１ａと、テンポラリファイル９１ｂとが管理される。プロジェクトファイル９１ａは、プロジェクトに含まれるプログラム、パラメータを含むデータ、プロジェクト単位のセキュリティ設定、更新履歴、およびユーザ情報などの情報が管理されている。テンポラリファイル９１ｂは、プロジェクト起動時に作成され、プロジェクト終了時に削除されるファイルであって、プロジェクトファイル９１ａが使用中であるか否かを判別するためのものである。
【００３９】
プロジェクトファイル９１ａに対しては、設定装置１０によってパラメータを設定することができる。その他、個々のプロジェクトファイル９１ａに対する操作アプリケーションからも設定することが可能である。そのため、設定装置１０によるマルチＣＰＵパラメータ設定後に、個々の操作アプリケーションからパラメータを上書きすることが可能になる。個々のアプリケーションによってマルチＣＰＵパラメータを編集した場合、プロジェクト間のパラメータに不整合が生じている可能性があるため、整合が取れているか否かが整合性検証部３１ｆにより確認される。
【００４０】
図１０は、整合性検証結果表示部１２ｄに表示する整合性検証結果の一例を示す図である。整合性検証結果の表示形式は、図１０に示すように、パラメータの設定項目を縦軸に配置し、プロジェクト名を横軸に配置した表形式であり、個々のプロジェクトに設定されている内容を表中に表示して、プロジェクト間の設定内容の差異をオペレータが一目でわかるようにしている。整合の取れていない設定内容には、設定内容の左にオプションボタン１０１を表示して、オペレータがどのプロジェクトの設定内容に合わせて再設定するかを選択入力可能としている。画面下部に配置した「反映」ボタン１０２をオペレータが押下すると、再設定データ書込み部３１ｇにより、選択入力された設定内容がプロジェクトに書き込まれ、プロジェクト間の整合を取ることができる。また、「反映」ボタン１０２の隣りには「キャンセル」ボタン１０３配置されている。
【００４１】
次に、プロジェクト割当部３１ａ、編集監視部３１ｚ、ユニット構成解析部３１ｂ、プロジェクト取得部３１ｃ、パラメータ読出し部３１ｄ、整合性検証部３１ｆ、再設定データ入力部３１ｙ、および再設定データ書込み３１ｇの機能および動作を説明する。
【００４２】
図１１は、プロジェクト割当部３１ａの動作を説明するフローチャートである。プロジェクト割当部３１ａは、図１１に示す手順により、ＣＰＵにプロジェクトを割り当てることを行う。なお、図１１では、ステップＳ１００〜ステップＳ１０３はオペレータが表示装置１２に対して行う操作手順を示し、ステップＳ１０４〜ステップＳ１０６はプロジェクト割当部３１ａが行う処理手順を示している。
【００４３】
図１１において、オペレータは、入力装置１１を用いて、ＰＬＣ構成図をシステム構成情報表示部１２ａａに表示させ、ＰＬＣ構成図に示されるユニット部品のうちの所望のユニット部品を選択し（ステップＳ１００）、選択したユニット部品に対し新規プロジェクトを作成して割り当てるか否かを判断する（ステップＳ１０１）。オペレータは、新規プロジェクトを作成しない場合（ステップＳ１０１：Ｎｏ）、該選択したユニット部品に割り付けるプロジェクトをユーザプロジェクト一覧情報表示部１２ｂから選択する（ステップＳ１０２）。一方、オペレータは、新規プロジェクトを作成して割り当てる場合（ステップＳ１０１：Ｙｅｓ）、ユーザプログラム一覧情報表示部１２ｂにおいて、該選択したユニット部品に割り付けるプロジェクトを新規作成して追加する（ステップＳ１０３）。
【００４４】
プロジェクト割当部３１ａは、オペレータにより選択されたユニット部品がＣＰＵと一致するか否かを判定する（ステップＳ１０４）。具体的には、プロジェクト割当部３１ａは、オペレータにより選択されたユニット部品のオブジェクトＩＤを基にユニット構成テーブル６１から該当ユニット部品のユニット情報を取得し、該ユニット情報の属性情報６１ｄによりＣＰＵであるか否かを判定する。ＣＰＵと一致した場合（ステップＳ１０４：Ｙｅｓ）、プロジェクト割当部３１ａは、該選択されたプロジェクト名称をユニット部品に対応するユニット情報のプロジェクト名称６１ｆに格納し、ユニット部品とプロジェクトを割り当てる（ステップＳ１０５）。一方、一致しなかった場合（ステップＳ１０４：Ｎｏ）、プロジェクト割当部３１ａは、該選択されたユニット部品はＣＰＵユニットでもなく、モーションＣＰＵユニットでもないため、エラーとする（ステップＳ１０６）。
【００４５】
図１２は、編集監視部３１ｚの動作を説明するフローチャートである。編集監視部３１ｚは、図１２に示す手順により、ワークスペース内のプロジェクトの編集有無を監視し、編集のあったプロジェクト名称を取得することを行う。
【００４６】
図１２において、編集監視部３１ｚは、ユニット構成情報６０で管理されている全てのユニット情報を走査するため、繰り返し回数にユニット構成テーブル６１の数を設定し（ステップＳ１１０）、また、繰り返し回数にユニット構成テーブル内のスロット数を設定し（ステップＳ１１１）、ユニット構成テーブル毎にユニット情報の走査を開始する。
【００４７】
ステップＳ１１２では、編集監視部３１ｚは、項目「スロット番号６１ｂ」の或る行のスロットにおいて、項目「ユニット名称６１ｃ」に示されるユニット部品がＣＰＵユニットと一致しているか否を項目「属性情報６１ｄ」に示される属性情報により確認する。その結果、ユニット部品がＣＰＵユニットと一致しない場合（ステップＳ１１２：Ｎｏ）には、編集監視部３１ｚは、項目「スロット番号６１ｂ」の次のスロットへ進み（ステップ１１７）、該スロットでのステップＳ１１２の処理を行う。
【００４８】
ステップＳ１１２において、ユニット部品がＣＰＵユニットと一致している場合（ステップＳ１１２：Ｙｅｓ）、編集監視部３１ｚは、項目「プロジェクト名称６１ｆ」から、当該ユニット情報のプロジェクトを取得し（ステップＳ１２３）、取得したプロジェクトのプロジェクトファイル８１ａのタイムスタンプが前回に記憶した日時よりも新しいか否確認する（ステップＳ１１４）。なお、前回のタイムスタンプは、図６では図示してないが、ユニット構成テーブル６１にユニット情報の一部として記憶されている。
【００４９】
ステップＳ１１４において、タイムスタンプが新しくない場合（ステップＳ１１４：Ｎｏ）、編集監視部３１ｚは、項目「スロット番号６１ｂ」の次のスロットへ進み（ステップ１１７）、該スロットでのステップＳ１１２〜ステップ１１４の処理を行う。
【００５０】
ステップＳ１１４において、タイムスタンプが新しい場合（ステップＳ１１４：Ｙｅｓ）、編集監視部３１ｚは、当該プロジェクトは編集されたと判断し、その新しいタイムスタンプを次回のタイムスタンプ比較用に記憶し（ステップＳ１１５）、並行して、取得したプロジェクトを編集有りプロジェクトとしてユニット構成解析部３１ｂへ出力する（ステップ１１６）。そして、編集監視部３１ｚは、項目「スロット番号６１ｂ」の次のスロットへ進み（ステップ１１７）、該スロットでのステップＳ１１２〜ステップ１１４の処理を行う。編集監視部３１ｚは、全ユニット情報の走査を終了すると（ステップ１１７：Ｙｅｓ）、本手順を終了する。
【００５１】
以上により、編集監視部３１ｚは、設定した繰り返し回数を終えてもタイムスタンプの新しいプロジェクトが見つからない場合もあるが、編集のあったプロジェクトを検知することができる。なお、図１２では、プロジェクトの編集有無をタイムスタンプで判断する場合を示したが、パラメータの変化で判断するようにすると、より高い精度で編集有無を判断できる。また、別の方法として、編集に用いる操作アプリケーション側で、編集後の保存時に、ユニット情報にパラメータの編集有りのフラグ情報を付加して格納し、編集有無を判断する方法でもよい。
【００５２】
図１３は、ユニット構成解析部３１ｂの動作を説明するフローチャートである。ユニット構成解析部３１ｂは、図１３に示す手順により、編集監視部３１ｚにて編集有りと検知されたプロジェクトに対応するＣＰＵが含まれるユニット構成テーブル６１からマルチＣＰＵ関係を持つＣＰＵのユニット情報一覧を取得することを行う。
【００５３】
図１３において、編集監視部３１ｚから指定された編集有りプロジェクトのプロジェクト名称を検索キーにユニット構成情報６０（＝全部のユニット構成情報テーブル）を検索し（ステップＳ１２０）、合致するプロジェクト名称を含むユニット構成情報テーブル６１を特定し、ユニット情報を抽出、取得する（ステップＳ１２１）。
【００５４】
そして、ユニット構成解析部３１ｂは、取得したユニット情報に設定されているベースユニットと同一ベースユニット上にあるＣＰＵユニットおよびモーションＣＰＵユニット、すなわちマルチＣＰＵ関係にあるユニット部品のユニット情報一覧を取得する（ステップＳ１２２）。以上により、ユニット構成解析部３１ｂは、ユニット情報を元にマルチＣＰＵ関係を持つユニット部品のユニット情報一覧を取得することができる。
【００５５】
図１４は、プロジェクト取得部３１ｃの動作を説明するフローチャートである。プロジェクト取得部３１ｃは、図１４に示す手順により、指定されたユニット部品に割り当てられたプロジェクトを取得することを行う。
【００５６】
図１４において、プロジェクト取得部３１ｃは、外部から指定されたユニット部品に該当するユニット情報をユニット構成情報テーブル６１から取得て（ステップＳ１３０）、該ユニット情報が持つ項目「プロジェクト名称６２ｆ」に示される“プロジェクト”により、当該ユニットに割り当てられているプロジェクトを特定する（ステップＳ１３１）。そして、プロジェクト取得部３１ｃは、取得したプロジェクトを元に、プロジェクト情報記憶部３３ｃから該当するプロジェクトを取得する（ステップＳ１３２）。以上により、プロジェクト取得手段３１ｃは、選択されたユニット部品に割り当てられているプロジェクトを取得することができる。
【００５７】
図１５は、パラメータ読出し部３１ｄの動作を説明するフローチャートである。パラメータ読出し部３１ｄは、図１５に示す手順により、プロジェクトから、整合性検証の対象となるパラメータ（マルチＣＰＵパラメータ）を読み出すことを行う。
【００５８】
図１５において、パラメータ読出し部３１ｄは、外部から指定されたプロジェクトをプロジェクト情報記憶部３３ｃから取得する（ステップＳ１４０）。そして、パラメータ読出し部３１ｄは、取得したプロジェクトから、整合性検証の対象となるパラメータ情報（マルチＣＰＵパラメータ情報）を読み出し、表示処理部３０へ出力する（ステップＳ１４１）。表示処理部３０は、取得したマルチＣＰＵパラメータを表示用に整えて、パラメータ設定情報表示部１２ａｂにマルチＣＰＵパラメータテーブル７１として表示する（ステップＳ１４２）。以上により、パラメータ読出し部３１ｄは、プロジェクトからマルチＣＰＵパラメータを抽出し、表示処理部３０に表示させることができる。
【００５９】
図１６は、整合性検証部３１ｆの動作を説明するフローチャートである。整合性検証部３１ｆは、図１６に示す手順により、パラメータの整合が取れているかを検証し、その検証結果を、表示装置１２の表示画面にオペレータが整合を取るために各プロジェクトに再設定する内容を選択可能にする表形式で表示させる動作を行う。
【００６０】
図１６において、まず、ユニット構成解析部３１ｂが、編集有りプロジェクト名称が含まれるユニット構成テーブル６１からマルチＣＰＵ関係を持つＣＰＵのユニット情報一覧を取得し（ステップＳ１５０）、該取得したユニット情報一覧から、それぞれのＣＰＵに割り当てられているプロジェクトを取得し（ステップＳ１５１）、取得した個々のプロジェクトに設定されているマルチＣＰＵパラメータを読み出して整合性検証部３１ｆに出力する（ステップＳ１５２）。
【００６１】
整合性検証部３１ｆは、受け取った個々のプロジェクト間のマルチＣＰＵパラメータを整合性検証結果表示部１２ｄに表形式で表示した後、表中の他プロジェクトの設定内容と相互比較し（ステップＳ１５３）、それぞれの設定内容がプロジェクト間で同一の値で統一されているか否かを判定する（ステップＳ１５４）。設定内容が同一であった場合（ステップＳ１６４、Ｙｅｓ）、本手順を終了する。一方、整合性検証部３１ｆは、設定内容が同一でない場合すなわち整合が取れていないと判定した場合（ステップＳ１５４、Ｎｏ）、整合性検証結果表示部１２ｄの該当する設定内容にオプションボタン１０１を表示する（ステップＳ１５５）。
【００６２】
以上により、整合性検証部３１ｆは、ユニット構成解析部３１ｂから受け取った個々のプロジェクト間のマルチＣＰＵパラメータの整合が取れているかを検証し、その検証結果を、表示装置１２の表示画面にオペレータが整合を取るために各プロジェクトに再設定する内容を選択可能にする表形式で表示させることができる。
【００６３】
再設定データ入力部３１ｙは、整合性検証部３１ｆで表示された表形式の検証結果画面内のオプションボタン１０１を利用して、オペレータが整合を取るために各プロジェクトに再設定する内容を選択入力することができる。なお、再設定する内容を選択式として説明したが、さらに選択した設定内容を表上で編集入力するようにすれば、より自由な設定内容を再設定することができる。
【００６４】
図１７は、再設定データ書込み部３１ｇの動作を説明するフローチャートである。再設定データ書込み部３１ｇは、図１７に示す手順により、再設定された内容を、整合の取れていなかったプロジェクトに書き込むことで整合性を維持することを行う。
【００６５】
図１７おいて、再設定データ書込み部３１ｇは、整合性検証結果表示部１２ｄに表示されているオプションボタン１０１の選択位置と設定内容とを取得し、それに基づいてオプションボタン未選択の設定内容のプロジェクトをプロジェクト情報記憶部３３ｃから取得し（ステップＳ１６０）、取得したプロジェクトに対して、オプションボタン選択中の設定内容を書き込む（ステップＳ１７１）。
【００６６】
以上により、再設定データ書込み部３１ｇは、再設定された内容を、整合の取れていなかったプロジェクトに書き込むことで整合性を維持することができる。なお、本実施の形態では、「反映」ボタン１０２の押下時に整合の取れていなかったプロジェクトに再設定内容を書き込んでいると説明しているが、再設定内容を一旦ファイルに保存しておき、整合の取れていなかった個々のプロジェクトの操作アプリケーションの次回起動時に、前記ファイルが在る場合は再設定内容を反映する方法でもよい。
【００６７】
図１８は、設定装置１０がパラメータの整合を取る動作を説明するフローチャートである。図１８において、オペレータが、ＣＰＵユニットＡ（９３）に対応するプロジェクト（プロジェクト名「ＰＬＣＰＲＯＪ１」）のマルチＣＰＵパラメータを編集する（ステップＳ１７０）。すると、編集監視部３１ｚは、プロジェクトファイルのタイムスタンプの変化により、プロジェクト「ＰＬＣＰＲＯＪ１」が編集されたことを検知する（ステップＳ１７１）。ユニット構成解析部３１ｂは、ユニット構成情報６０からプロジェクト「ＰＬＣＰＲＯＪ１」を検索し、該当するユニット情報からＣＰＵユニットＡを抽出するとともに、同一ベース上のＣＰＵのユニット情報一覧を取得し、そのユニット情報一覧から、ＣＰＵユニットＡ、モーションＣＰＵユニットＡ、モーションＣＰＵユニットＢの各ユニット部品がマルチＣＰＵ関係にあることを取得する（ステップＳ１７２）。
【００６８】
プロジェクト取得部３１ｃは、編集監視部３１ｚが取得したユニット情報一覧から、前記ユニット部品（ＣＰＵユニットＡ、モーションＣＰＵユニットＡ、モーションＣＰＵユニットＢ）のプロジェクト（「ＰＬＣＰＲＯＪ１」「ＭＣＰＲＯＪ１」「ＭＣＰＲＯＪ２」）を取得する（ステップＳ１７３）。
【００６９】
パラメータ読出し部３１ｄは、前記プロジェクト（「ＰＬＣＰＲＯＪ１」「ＭＣＰＲＯＪ１」「ＭＣＰＲＯＪ２」）からマルチＣＰＵパラメータを読み出す（ステップＳ１７４）。整合性検証部３１ｆは、パラメータ読出し部３１ｄが読み出したパラメータの整合性を検証し、検証結果を図１０に示すような表形式で整合性検証結果表示部１２ｄに、再設定内容を選択入力できるようなオプションボタン１０１とともに表示する（ステップＳ１７５）。
【００７０】
そうすると、オペレータが再設定データ入力部３１ｙから、整合性検証結果表示部１２ｄに表示されたオプションボタン１０１を利用して、再設定するデータを選択入力する（ステップＳ１７６）。その結果、図１０に示した表示画面は、図１９に示すように変更される。図１９を参照して具体的に説明する。図１９は、図１０に示した表示画面においてオペレータの選択入力により設定内容を変更する様子を説明する図である。
【００７１】
例えば、検証結果が図１０に示すように表示されたとき、設定項目「空きスロット点数」を「ＭＣＰＲＯＪ１」に合わせる場合は、オペレータは、図１９に示すように「ＭＣＰＲＯＪ１」の“３２”のオプションボタン１０１を選択して「反映」ボタン１０２を押下する。再設定データ書込み部３１ｇは、整合性検証結果表示部１２ｄに設定された再設定の内容に基づいて、整合の取れていないプロジェクトに再設定内容のデータを書き込んでいく（ステップＳ１７７）。図１９に示す例の場合、「動作モード」のデータ“１”をプロジェクト「ＭＣＰＲＯＪ１」と「ＭＣＰＲＯＪ２」とに書き込み、「空きスロット数」のデータ“３２”をプロジェクト「ＰＬＣＰＲＯＪ１」と「ＭＣＰＲＯＪ２」とに書き込む。
【００７２】
以上のように、本実施の形態によれば、マルチＣＰＵ関係を有するそれぞれのＣＰＵのプロジェクトをユニット構成情報から解析し、前記プロジェクトの編集有無を監視し、解析して取得したプロジェクトでの設定内容に対し編集有りプロジェクトの設定内容が整合の取れた設定内容になっているか否かを検証し、検証結果を表示してオペレータが整合の取れていない設定内容を再設定することができる構成としたので、オペレータによるマルチＣＰＵパラメータ設定の手間を大幅に削減でき、設定作業時間の短縮化が図れる。同時に、整合性の確保がオペレータの判断によらず設定装置側で自動的に行えるので、パラメータ設定ミスによる不具合を回避することができる。
【００７３】
そして、再設定データ書込み部が書き込んで整合を取った後のプロジェクトを、ＣＰＵユニットにダウンロードする手段を備えることで、システムを動作させるまでの時間を短縮することができる。
【００７４】
また、整合性検証部が表示させた表形式の設定内容を印刷する手段を備えることで、整合を取ったプロジェクト名称、パラメータ項目、設定内容を文書で残すことができ、プロジェクトやシステムの変更履歴を管理することができる。
【００７５】
また、再設定データ書込み部が書き込んで整合を取った後のプロジェクトを、整合を取る前の状態に戻す手段を備えることで、オペレータが誤った再設定をしてしまった場合に元に戻すことができるので、不慣れなオペレータによる誤操作時の復旧を容易にすることができる。具体的には、例えば再設定データ書込み部において、再設定内容を書き込む前のパラメータの設定内容をファイルなどに記憶し、そのファイルの情報を元に設定内容を再々度、プロジェクトに書き込むようにすればよい。
【産業上の利用可能性】
【００７６】
以上のように、本発明にかかる設定装置は、オペレータに煩雑な設定作業を要求することなく、整合の取れたマルチＣＰＵパラメータを設定することが可能な設定装置として有用であり、特に、産業用機械などを制御するＰＬＣが備えるＣＰＵユニット乃至モーションＣＰＵユニットのプロジェクトに対してパラメータを設定する設定装置として好適である。
【符号の説明】
【００７７】
１０  設定装置
１１  入力装置
１２  表示装置
１３  中央演算装置
１４  記憶装置
１５  通信Ｉ／Ｆ装置
１６  通信回線
１７  ＰＬＣ（プログラマブルコントローラ）
３０  表示処理部
３１  演算部
３１ａ  プロジェクト割当部
３１ｂ  ユニット構成解析部
３１ｃ  プロジェクト取得部
３１ｄ  パラメータ読出し部
３１ｆ  整合性検証部
３１ｇ  再設定データ書込み部
３１ｙ  再設定データ入力部
３１ｚ  プロジェクト取得部
３２  入力処理部
３３  記憶部
３３ａ  ユニット構成情報記憶部
３３ｂ  ユニット部品情報記憶部
３３ｃ  プロジェクト情報記憶部
３４  通信処理部
【図１】
2012141722.tif 000003
【図２】
2012141722.tif 000004
【図３】
2012141722.tif 000005
【図４】
2012141722.tif 000006
【図５】
2012141722.tif 000007
【図６】
2012141722.tif 000008
【図７】
2012141722.tif 000009
【図８】
2012141722.tif 000010
【図９】
2012141722.tif 000011
【図１０】
2012141722.tif 000012
【図１１】
2012141722.tif 000013
【図１２】
2012141722.tif 000014
【図１３】
2012141722.tif 000015
【図１４】
2012141722.tif 000016
【図１５】
2012141722.tif 000017
【図１６】
2012141722.tif 000018
【図１７】
2012141722.tif 000019
【図１８】
2012141722.tif 000020
【図１９】
2012141722.tif 000021