(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024073818
(43)【公開日】2024-05-30
(54)【発明の名称】制御システムおよび情報処理方法
(51)【国際特許分類】
G05B 19/05 20060101AFI20240523BHJP
G06F 11/36 20060101ALI20240523BHJP
【FI】
G05B19/05 D
G06F11/36 104
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2022184732
(22)【出願日】2022-11-18
(71)【出願人】
【識別番号】000002945
【氏名又は名称】オムロン株式会社
(74)【代理人】
【識別番号】110001195
【氏名又は名称】弁理士法人深見特許事務所
(72)【発明者】
【氏名】尾崎 敏之
(72)【発明者】
【氏名】村山 信次
(72)【発明者】
【氏名】磯谷 佳代子
【テーマコード(参考)】
5B042
5H220
【Fターム(参考)】
5B042HH08
5H220AA06
5H220BB15
5H220CC08
5H220CX01
5H220CX06
5H220JJ12
5H220JJ27
5H220JJ53
(57)【要約】
【課題】大量の変数に対する分析をサポートすることが可能な情報処理方法を提供する。
【解決手段】制御対象を制御するコントローラを含む制御システムの情報処理方法は、コントローラによって使用される変数について、付加項目を設定するステップと、当該変数について、付加項目を示すメタデータを生成するステップと、を備える。
【選択図】
図1
【特許請求の範囲】
【請求項1】
制御システムであって、
制御対象を制御する制御部と、
前記制御部によって使用される第1変数について、付加項目を設定する設定部と、
前記第1変数について、前記付加項目を示すメタデータを生成する生成部と、を備える、制御システム。
【請求項2】
出力イベントの発生に応じて、前記メタデータを出力する出力部をさらに備え、
前記生成部は、前記出力イベントの発生に応じて前記メタデータを生成し、
前記設定部は、内容が経時変化する動的付加項目を設定し、
前記メタデータは、前記出力イベントの発生タイミングにおける前記動的付加項目の内容を示し、
前記出力部は、前記メタデータとともに前記出力イベントの発生タイミングにおける前記第1変数の値を出力する、請求項1に記載の制御システム。
【請求項3】
前記動的付加項目は、前記制御部によって使用される1以上の変数のうちの前記第1変数とは異なる第2変数であり、
前記メタデータは、前記出力イベントの発生タイミングにおける前記第2変数の値を示す、請求項2に記載の制御システム。
【請求項4】
前記動的付加項目は、時刻であり、
前記メタデータは、前記出力イベントが発生した時刻を示す、請求項2に記載の制御システム。
【請求項5】
前記動的付加項目は、前記制御対象による処理の対象物であり、
前記メタデータは、前記出力イベントの発生タイミングにおける前記対象物の識別情報を含む、請求項2に記載の制御システム。
【請求項6】
前記メタデータは、前記付加項目の名称および内容を示す、請求項1に記載の制御システム。
【請求項7】
前記第1変数は、前記制御部に接続される対象デバイスによって取得され、
前記設定部は、前記対象デバイスの製品情報を示すファイルのうちの選択された領域に記述されたテキストを、前記付加項目の名称として設定する、請求項6に記載の制御システム。
【請求項8】
前記第1変数は、前記制御部に接続される対象デバイスによって取得され、
前記設定部は、前記対象デバイスの製品情報を示すファイルのうちの選択された領域に記述されたテキストを、前記付加項目の内容として設定する、請求項6に記載の制御システム。
【請求項9】
前記設定部は、ユーザ入力を促すための入力画面を示す画面情報を提供し、
前記入力画面は、前記付加項目の名称および内容を入力するための入力欄を含み、
前記設定部は、前記入力欄への入力に応じて、前記付加項目の名称および内容を設定する、請求項6に記載の制御システム。
【請求項10】
制御対象を制御するコントローラを含む制御システムの情報処理方法であって、
前記コントローラによって使用される変数について、付加項目を設定するステップと、
前記変数について、前記付加項目を示すメタデータを生成するステップと、を備える、情報処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、制御システムおよび情報処理方法に関する。
【背景技術】
【0002】
FA(Factory Automation)分野では、制御対象を制御するために、制御プログラムに大量の変数が使用されている。近年、制御プログラムで使用されている変数およびシステム内の収集された様々なデータに対して、利活用する要求が高まっている。
【0003】
特開2020-13526号公報(特許文献1)には、このような分析をサポートするために、収集されたデバイス値と当該デバイス値の収集時刻に関する情報とを関連付けてバッファに記憶する技術が開示されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2020-13526号公報
【特許文献2】特開2021-13120号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
大量の変数に対する分析は、変数の意味を理解した上で行なわれる。そのため、ユーザは、変数の値の分析を行なう際に、各変数に関する事項を確認する必要がある。例えば、各変数の意味を確認する必要がある。各変数の意味を確認するには、例えば、当該変数が取得されるデバイスの製品情報、制御対象を制御するためのプログラム等へのアクセスが必要となる。そのため、各変数に関する事項の確認に時間および労力がかかるという問題がある。
【0006】
本開示は、上記の問題に鑑みてなされたものであり、その目的は、大量の変数に対する分析をサポートすることが可能な制御システムおよび情報処理方法を提供することである。
【課題を解決するための手段】
【0007】
本開示の一例によれば、制御システムは、制御対象を制御する制御部と、制御部によって使用される第1変数について、付加項目を設定する設定部と、第1変数について、付加項目を示すメタデータを生成する生成部と、を備える。
【0008】
この開示によれば、変数に応じて、適切な付加項目が設定され得る。これにより、ユーザは、変数の値を分析する際、メタデータを確認することにより、各変数に関する事項を容易に理解することができる。その結果、制御部によって使用される変数の値を分析する際のユーザの手間が削減され、大量の変数に対する分析をサポートすることができる。
【0009】
上述の開示において、制御システムは、出力イベントの発生に応じて、メタデータを出力する出力部をさらに備える。生成部は、出力イベントの発生に応じてメタデータを生成する。設定部は、内容が経時変化する動的付加項目を設定する。メタデータは、出力イベントの発生タイミングにおける動的付加項目の内容を示す。出力部は、メタデータとともに出力イベントの発生タイミングにおける第1変数の値を出力する。
【0010】
この開示によれば、出力イベントの発生タイミングにおける動的付加項目の内容を容易に把握できる。
【0011】
上述の開示において、動的付加項目は、制御部によって使用される1以上の変数のうちの第1変数とは異なる第2変数である。メタデータは、出力イベントの発生タイミングにおける第2変数の値を示す。
【0012】
制御部によって使用される複数の変数の中には、互いに関連しあう2つの変数が含まれうる。この開示によれば、当該2つの変数のうちの一方を第1変数とし、他方を第2変数として設定できる。これにより、当該2つの変数の値の関係を容易に把握できる。
【0013】
上述の開示において、動的付加項目は、時刻である。メタデータは、出力イベントが発生した時刻を示す。
【0014】
この開示によれば、第1変数の値と、当該値が取得されたときの時刻との関係を容易に把握できる。
【0015】
上述の開示において、動的付加項目は、制御対象による処理の対象物である。メタデータは、出力イベントの発生タイミングにおける対象物の識別情報を含む。
【0016】
この開示によれば、第1変数の値と、当該値が取得されたときに制御対象によって処理されていた対象物との関係を容易に把握できる。
【0017】
上述の開示において、メタデータは、付加項目の名称および内容を示す。この開示によれば、第1変数に関する事項を容易に把握しやすくなる。
【0018】
上述の開示において、第1変数は、制御部に接続される対象デバイスによって取得される。設定部は、対象デバイスの製品情報を示すファイルのうちの選択された領域に記述されたテキストを、付加項目の名称として設定する。
【0019】
この開示によれば、ユーザは、ファイルを用いて、付加項目の名称を設定しやすくなる。
【0020】
上述の開示において、第1変数は、制御部に接続される対象デバイスによって取得される。設定部は、対象デバイスの製品情報を示すファイルのうちの選択された領域に記述されたテキストを、付加項目の名称として設定する。
【0021】
この開示によれば、ユーザは、ファイルを用いて、付加項目の内容を設定しやすくなる。
【0022】
上述の開示において、設定部は、ユーザ入力を促すための入力画面を示す画面情報を提供する。入力画面は、付加項目の名称および内容を入力するための入力欄を含む。設定部は、入力欄への入力に応じて、付加項目の名称および内容を設定する。
【0023】
この開示によれば、ユーザは、入力画面に対する操作に応じて、付加項目を自由に設定できる。
【0024】
本開示の別の例によれば、制御対象を制御するコントローラを含む制御システムの情報処理方法は、コントローラによって使用される変数について、付加項目を設定するステップと、変数について、付加項目を示すメタデータを生成するステップと、を備える。この開示によっても、大量の変数に対する分析をサポートできる。
【発明の効果】
【0025】
本開示によれば、大量の変数に対する分析をサポートできる。
【図面の簡単な説明】
【0026】
【
図1】実施の形態に係る制御システムの情報処理方法を示す概略図である。
【
図2】実施の形態に係る制御システムの構成の一例を示す図である。
【
図3】実施の形態に係る制御システムを構成するコントローラのハードウェア構成例を示す模式図である。
【
図4】実施の形態に係る制御システムを構成するサポート装置のハードウェア構成例を示す模式図である。
【
図5】実施の形態に係る制御システムの機能構成の一例を示す図である。
【
図6】ネットワーク構成の設定を支援する設定画面の一例を示す図である。
【
図7】変数を設定するための設定画面の一例を示す図である。
【
図8】制御プログラム228において使用される変数の一覧画面を示す図である。
【
図9】付加項目を設定するためのウィンドウの一例を示す図である。
【
図12】付加項目のさらに別の設定例を示す図である。
【
図13】
図12に示す設定例が反映された変数の一覧画面を示す図である。
【
図14】メタデータ設定情報の一例を示す図である。
【
図15】メタデータの生成処理の流れを示すフローチャートである。
【
図16】制御システムのメタデータ出力処理を示すシーケンス図である。
【
図17】変形例に係る制御システムの構成の一例を示す図である。
【発明を実施するための形態】
【0027】
本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。
【0028】
§1 適用例
図1を参照して、本発明が適用される場面の一例について説明する。
図1は、実施の形態に係る制御システムの情報処理方法を示す概略図である。
図1に示されるように、制御システム1は、コントローラ100と、サポート装置200と、を備える。
【0029】
コントローラ100は、制御プログラムに従って、生産現場に設置される制御対象を制御する。
【0030】
サポート装置200は、ユーザが制御システム1を運用するのを支援する支援ツールを提供する。支援ツールは、制御プログラムの実行環境またはコントローラ100との通信環境等の準備の設定ツールを含む。支援ツールは、例えばUI(User Interface)によりユーザに提供される。
【0031】
図1に示されるように、制御システム1の情報処理方法は、ステップ(1)およびステップ(2)を備える。
【0032】
ステップ(1)は、コントローラ100によって使用される変数について、付加項目を設定するステップである。
【0033】
ステップ(2)は、上記の変数について、設定された付加項目を示すメタデータを生成するステップである。
【0034】
図1に示す例では、「変数b」について、「項目A」,「項目B」,・・・が設定され、これらの付加項目を示すメタデータが生成される。また、「変数d」について、「項目D」,「項目E」,・・・が設定され、これらの付加項目を示すメタデータが生成される。付加項目は、変数に応じて、適切に設定され得る。これにより、ユーザは、変数の値を分析する際、メタデータを確認することにより、各変数の意味を容易に理解することができる。その結果、コントローラ100によって使用される変数の値を分析する際のユーザの手間が削減される。このように、制御システム1の情報処理方法は、大量の変数に対する分析をサポートすることができる。
【0035】
また、各変数の意味を理解するために、制御プログラムへのアクセスが不要となるため、制御プログラムが意図せず変更されてしまう事態を防止できる。
【0036】
§2 具体例
<システム構成>
図2は、実施の形態に係る制御システムの構成の一例を示す図である。
図2に示されるように、制御システム1は、コントローラ100と、サポート装置200と、フィールド機器300と、HMI(Human Machine Interface)400と、端末コンピュータ500と、MES(Manufacturing Execution System)サーバ600と、時刻サーバ700と、を備える。制御システム1は、例えば、製品の生産現場に適用される。
【0037】
コントローラ100は、制御演算を実行する一種のコンピュータであり、典型的には、PLC(プログラマブルコントローラ)として具現化される。コントローラ100は、フィールドネットワーク2を介して1以上のフィールド機器300と接続される。1以上のフィールド機器300は、コントローラ100の制御対象を含む。制御対象は、製品を生産するための各種の処理を行なう。当該処理には、対象物(以下、「ワーク」と称する。)に対する、加工、組み立て、洗浄、搬送、検査などが含まれる。なお、ワークには、完成品、部品、中間品などが含まれる。
【0038】
コントローラ100は、フィールドネットワーク2を介して、各フィールド機器300との間でデータを遣り取りする。一般的に、「フィールドネットワーク」は、「フィールドバス」とも称されるが、説明の簡素化のため、以下の説明においては、「フィールドネットワーク」と総称する。すなわち、本明細書の「フィールドネットワーク」は、狭義の「フィールドネットワーク」に加えて「フィールドバス」を含み得る概念である。
【0039】
フィールドネットワーク2としては、EtherCAT(登録商標)、EtherNet/IP(登録商標)、DeviceNet(登録商標)、CompoNet(登録商標)などが用いられる。
【0040】
フィールドネットワーク2には、任意のフィールド機器300を接続することができる。フィールド機器300は、製造装置や生産ラインなど(以下、「フィールド」とも総称する。)に対して何らかの物理的な作用を与えるアクチュエータ、および、フィールドとの間で情報を遣り取りする入出力装置などを含む。例えば、フィールド機器300は、ロボット、各種センサ(例えば、アナログセンサ、温度センサ、振動センサなど)、サーボドライバなどを含む。
【0041】
コントローラ100とフィールド機器300との間で遣り取りされるデータには、フィールド機器300に固有の機器情報が含まれ得る。機器情報は、例えば、機器型式を示す情報、機器ID、メンテナンスが実施された日(以下、「メンテナンス日」と称する。)、メンテナンを実施した作業者(以下、「メンテナンス者」と称する。)などを示す。
【0042】
メンテナンス日およびメンテナンス者を示す機器情報は、例えば、特開2021-13120号公報(特許文献2)に記載の技術を用いて生成される。具体的には、メンテナンス者は、携帯する端末装置にメンテナンス日およびメンテナンス者を入力する。端末装置は、メンテナンスされたフィールド機器300と通信接続し、メンテナンス日およびメンテナンス者を示す機器情報をフィールド機器300が有するメモリに格納する。
【0043】
コントローラ100は、上位ネットワーク3を介して、他の装置に接続される。上位ネットワーク3には、一般的なネットワークプロトコルであるイーサネット(登録商標)やEtherNet/IP(登録商標)が採用されていてもよい。例えば、上位ネットワーク3には、端末コンピュータ500、MESサーバ600および時刻サーバ700が接続される。
【0044】
端末コンピュータ500は、汎用のコンピュータ機器である。端末コンピュータ500は、ユーザからの操作に応じて、コントローラ100から各種のデータを取得し、当該データに対する分析を行なう。
【0045】
MESサーバ600は、コントローラ100に対する製造指示の出力、作業者への指示および支援などを行う。コントローラ100は、MESサーバ600からの製造指示に応じて、制御演算を開始し、制御対象を制御する。MESサーバ600からの製造指示には、制御対象による処理の対象物(以下、「ワーク」と称する。)を識別するワークIDまたは当該対象物を含むロットを識別するロットIDが付加されていてもよい。
【0046】
時刻サーバ700は、グローバル時刻を提供する。時刻サーバ700は、例えばインターネットに接続されるNTP(Network Time Protocol)サーバである。NTPサーバは、さらに上位のタイムサーバに接続されたラジオ・クロックや原子時計から、UTC(協定世界時)に同期したグローバル時刻を取得する。
【0047】
さらに、コントローラ100には、サポート装置200およびHMI400が接続可能になっている。
【0048】
サポート装置200は、コントローラ100が制御対象を制御するために必要な準備を支援する装置である。具体的には、サポート装置200は、コントローラ100で実行される制御プログラムの開発環境(プログラム作成編集ツール、パーサ、コンパイラなど)、コントローラ100およびフィールド機器300のパラメータ(コンフィギュレーション)を設定するための設定環境、生成した制御プログラムをコントローラ100へ出力する機能、コントローラ100上で実行される制御プログラムなどをオンラインで修正・変更する機能、などを提供する。
【0049】
さらに、サポート装置200は、制御プログラムにおいて使用される変数について、付加項目を設定する機能を有する。
【0050】
HMI400は、ユーザからの操作を受けて、コントローラ100に対してユーザ操作に応じたコマンドなどを出力するとともに、コントローラ100での演算結果などをグラフィカルに表示する。
【0051】
<コントローラのハードウェア構成>
図3は、実施の形態に係る制御システムを構成するコントローラのハードウェア構成例を示す模式図である。
図3に示されるように、コントローラ100は、プロセッサ102と、メインメモリ104と、ストレージ110と、上位ネットワークコントローラ106と、フィールドネットワークコントローラ108と、USB(Universal Serial Bus)コントローラ120と、メモリカードインターフェイス112と、ローカルバスコントローラ116とを含む。これらのコンポーネントは、プロセッサバス118を介して接続されている。
【0052】
プロセッサ102は、主として、制御演算を実行する演算処理部に相当し、CPU(Central Processing Unit)やGPU(Graphics Processing Unit)などで構成される。具体的には、プロセッサ102は、ストレージ110に格納されたプログラム(一例として、システムプログラム1102および制御プログラム228)を読み出して、メインメモリ104に展開して実行することで、制御対象に応じた制御演算、および、後述するような各種処理を実現する。
【0053】
メインメモリ104は、DRAM(Dynamic Random Access Memory)やSRAM(Static Random Access Memory)などの揮発性記憶装置などで構成される。ストレージ110は、たとえば、SSD(Solid State Drive)やHDD(Hard Disk Drive)などの不揮発性記憶装置などで構成される。
【0054】
ストレージ110には、基本的な機能を実現するためのシステムプログラム1102に加えて、制御対象に応じて作成された制御プログラム228が格納される。また、ストレージ110には、変数に関するメタデータを生成するためのメタデータ設定情報226が格納される。制御プログラム228およびメタデータ設定情報226は、サポート装置200によって生成されて、コントローラ100に転送される。
【0055】
上位ネットワークコントローラ106は、上位ネットワークを介して、任意の装置(端末コンピュータ500、MESサーバ600、時刻サーバ700を含む)との間でデータを遣り取りする。
【0056】
フィールドネットワークコントローラ108は、フィールドネットワーク2を介して、フィールド機器300との間でデータを遣り取りする。
【0057】
USBコントローラ120は、USB接続を介して、サポート装置200、HM400などとの間でデータを遣り取りする。
【0058】
メモリカードインターフェイス112は、着脱可能な記録媒体の一例であるメモリカード114を受け付ける。メモリカードインターフェイス112は、メモリカード114に対してデータを書き込み、メモリカード114から各種データ(ログやトレースデータなど)を読み出すことが可能になっている。
【0059】
ローカルバスコントローラ116は、ローカルバスを介して、コントローラ100に接続される任意のユニットとの間でデータを遣り取りする。
【0060】
図3には、プロセッサ102がプログラムを実行することで必要な機能が提供される構成例を示したが、これらの提供される機能の一部または全部を、専用のハードウェア回路(たとえば、ASIC(Application Specific Integrated Circuit)またはFPGA(Field-Programmable Gate Array)など)を用いて実装してもよい。あるいは、コントローラ100の主要部を、汎用的なアーキテクチャに従うハードウェア(たとえば、汎用パソコンをベースとした産業用パソコン)を用いて実現してもよい。この場合には、仮想化技術を用いて、用途の異なる複数のOS(Operating System)を並列的に実行させるとともに、各OS上で必要なアプリケーションを実行させるようにしてもよい。さらに、コントローラ100に表示装置やサポート装置などの機能を統合した構成を採用してもよい。
【0061】
<サポート装置のハードウェア構成>
図4は、実施の形態に係る制御システムを構成するサポート装置のハードウェア構成例を示す模式図である。サポート装置200は、一例として、汎用的なアーキテクチャに従うハードウェア(たとえば、汎用パソコン)を用いて実現される。
【0062】
図4に示されるように、サポート装置200は、プロセッサ202と、メインメモリ204と、入力部206と、表示部208と、ストレージ210と、光学ドライブ212と、USBコントローラ220とを含む。これらのコンポーネントは、プロセッサバス218を介して接続されている。
【0063】
プロセッサ202は、CPUやGPUなどで構成され、ストレージ210に格納されたプログラム(一例として、OS222およびサポートプログラム224)を読み出して、メインメモリ204に展開して実行することで、後述するような各種処理を実現する。すなわち、プロセッサ202は、サポートプログラム224を実行するコンピュータの機能を有する。
【0064】
メインメモリ204は、DRAMやSRAMなどの揮発性記憶装置などで構成される。ストレージ210は、たとえば、HDDやSSDなどの不揮発性記憶装置などで構成される。
【0065】
ストレージ210には、基本的な機能を実現するためのOS222に加えて、サポート装置200としての機能を提供するためのサポートプログラム224が格納される。すなわち、サポートプログラム224は、制御システム1に接続されるコンピュータにより実行されることで、本実施の形態に係るサポート装置200を実現する。
【0066】
さらに、ストレージ210には、サポートプログラム224が実行されることで提供される開発環境においてユーザにより作成されるメタデータ設定情報226および制御プログラム228が格納される。
【0067】
さらに、ストレージ210には、ファイル群230が格納される。ファイル群230は、フィールド機器300として制御システム1に組込み可能である各種のデバイスの製品情報を示すデバイス情報ファイルを含む。デバイス情報ファイルは、オープンネットワークの仕様に準じて作成され、各メーカから提供される。デバイス情報ファイルは、例えば、IODD(IO-Link Device Description)ファイル、EDS(Electronic Data Sheet)ファイル、ESI(EtherCAT Slave Information)ファイルなどを含む。デバイス情報ファイルは、サポート装置200に予めインポートされる。また、ファイル群230は、ファイルとして提供されるAAS(Asset Administration Shell)を含んでもよい。
【0068】
ファイル群230には、サポートプログラム224の実行により生成されるファイルが含まれ得る。例えば、ファイル群230は、制御システム1において接続されているフィールド機器300のネットワーク構成を示すネットワーク構成ファイルを含む。
【0069】
制御プログラム228は、オブジェクトコードに変換された後、コントローラ100へ送信され、コントローラ100のストレージ110(
図3参照)に格納される。メタデータ設定情報226についてもコントローラ100へ送信され、ストレージ110に格納される。
【0070】
入力部206は、キーボードやマウスなどで構成され、ユーザ操作を受付ける。表示部208は、ディスプレイ、各種インジケータなどで構成され、プロセッサ202からの処理結果などを表示する。
【0071】
USBコントローラ220は、USB接続を介して、コントローラ100などとの間のデータを遣り取りする。
【0072】
サポート装置200は、光学ドライブ212を有しており、コンピュータ読取可能なプログラムを非一過的に格納する記録媒体214(たとえば、DVD(Digital Versatile Disc)などの光学記録媒体)から、その中に格納されたプログラムが読取られてストレージ210などにインストールされる。
【0073】
サポート装置200で実行されるサポートプログラム224などは、コンピュータ読取可能な記録媒体214を介してインストールされてもよいが、ネットワーク上のサーバ装置などからダウンロードする形でインストールするようにしてもよい。また、本実施の形態に係るサポート装置200が提供する機能は、OSが提供するモジュールの一部を利用する形で実現される場合もある。
【0074】
図4には、プロセッサ202がプログラムを実行することで、サポート装置200として必要な機能が提供される構成例を示したが、これらの提供される機能の一部または全部を、専用のハードウェア回路(たとえば、ASICまたはFPGAなど)を用いて実装してもよい。
【0075】
なお、制御システム1が稼動中において、サポート装置200は、コントローラ100から取り外されていてもよい。
【0076】
<制御システムの機能構成>
図5は、実施の形態に係る制御システムの機能構成の一例を示す図である。
図5に示されるように、サポート装置200は、プログラム開発部20を備える。コントローラ100は、制御部10と生成部12と出力部14とを備える。プログラム開発部20は、サポート装置200のプロセッサ202がサポートプログラム224を実行することにより実現される。制御部10、生成部12および出力部14の各々は、コントローラ100のプロセッサ102が制御プログラム228およびシステムプログラム1102を実行することにより実現される。
【0077】
プログラム開発部20は、制御プログラム228の開発環境を提供し、開発環境への入力に応じて制御プログラム228を作成する。
【0078】
また、プログラム開発部20は、制御プログラム228の作成のための前処理として、フィールド機器300のネットワーク構成の設定を行なう。
【0079】
図6は、ネットワーク構成の設定を支援する設定画面の一例を示す図である。
図6に示す設定画面30は、プログラム開発部20によって生成され、表示部208に表示される。
【0080】
図6に示されるように、設定画面30には、マルチビューエクスプローラ欄31が設けられている。マルチビューエクスプローラ欄31には、開発対象となるプログラムを指定するための切替スイッチ32が含まれる。この例では、切替スイッチ32において、制御プログラム228に対応する「new_Controller_0」が指定されている。
【0081】
さらに、マルチビューエクスプローラ欄31には、制御システム1においてネットワーク接続される構成を設定するための切替スイッチ33が含まれる。また、この例では、切替スイッチ33によって「構成・設定」に切り替えられた上で、制御システム1においてネットワーク接続される構成を設定するための項目としてEtherCAT(登録商標)アイコン34が指定されている。なお、本実施の形態においては、EtherCAT(登録商標)は、フィールドネットワーク2のプロトコルの一例として採用されている。
【0082】
EtherCAT(登録商標)アイコン34が指定されると、設定画面30の中央に配置された表示欄35において、現時点で設定されているEtherCAT(登録商標)のネットワーク構成が示される。
図6に示す例において、「Master」は、コントローラ100を示す。
【0083】
一方、設定画面30の右側には、ツールボックス36が設けられている。ツールボックス36には、ファイル群230に含まれるデバイス情報ファイルによって示されるデバイスの一覧が表示される。
図6に示す例では、ツールボックス36にデジタルI/Oデバイスが一覧表示されている。
【0084】
ユーザは、ツールボックス36に表示された一覧から所望のデバイスをネットワーク構成に追加する。具体的には、ユーザは、一覧表示された複数のデバイスの中から所望のデバイスを選択した上で、挿入アイコン37をクリックすると、コントローラ100に対して新たなデバイスを関連付けることができる。たとえば、
図6に示す例では、「GX-ID1611+ID08 Rev.1.2」の型式(型名)を有するデジタルI/Oデバイスが選択されており、当該デジタルI/Oデバイスの詳細な情報が詳細情報欄38に表示されている。
【0085】
「GX-ID1611+ID08 Rev.1.2」の型式(型名)を有するデジタルI/Oデバイスが選択されて挿入アイコン37がクリックされることにより、表示欄35に示すように、「GX-ID1611+ID08 Rev.1.2」の型式(型名)を有するデジタルI/Oデバイスが制御システム1に追加されて、「Master」であるコントローラ100に関連付けられる。このようにして、プログラム開発部20は、設定画面30への操作に応じて、ネットワーク構成を設定する。
【0086】
さらに、プログラム開発部20は、コントローラ100によって使用される変数の設定も行なう。コントローラ100によって使用される変数には、コントローラ100に関連付けられたフィールド機器300が有するパラメータおよび制御プログラム228において宣言された変数(制御プログラム228内部において使用する変数を含む)が含まれる。
【0087】
図7は、変数を設定するための設定画面の一例を示す図である。
図7には、コントローラ100に関連付けられたフィールド機器300が有するパラメータを変数として設定するための設定画面40が示される。設定画面40には、
図6の設定画面30においてコントローラ100と関連付けられたデバイス「GX-ID1611+ID08 Rev.1.2」が有するパラメータの一覧が表示されている。ユーザは、所望のパラメータを変数として設定する指示を入力する。
図7に示す例では、プログラム開発部20は、ユーザ入力に従って、パラメータ「Ch1 Measured Value INT」を変数「N1_Ch1_Measured_Value_INT」として設定している。このようにして、プログラム開発部20は、制御プログラム228において使用される変数を設定する。
【0088】
図5に示されるように、本実施の形態に係るプログラム開発部20は、設定部22を含む。設定部22は、制御プログラム228において使用される変数について、付加項目を設定する。なお、設定部22は、制御プログラム228において使用される複数の変数のうちの一部について付加項目を設定してもよいし、当該複数の変数の全てについて付加項目を設定してもよい。付加項目は、変数の意味を表す項目である。設定部22は、設定された付加項目を示すメタデータ設定情報226を生成する。
【0089】
プログラム開発部20は、生成した制御プログラム228およびメタデータ設定情報226をコントローラ100に出力する。
【0090】
制御部10は、サポート装置200によって開発された制御プログラム228を実行することにより、フィールド機器300とのデータの遣り取り、および、制御対象の制御を行なう。
【0091】
生成部12は、出力イベントの発生に応じて、メタデータ設定情報226に基づいて、付加項目が設定された各変数について、当該付加項目を示すメタデータを生成する。
【0092】
出力部14は、出力イベントの発生に応じて、指定された変数の値と、当該変数に対応するメタデータとを出力する。
【0093】
<付加項目の設定処理>
図8~
図14を参照して、付加項目の設定処理について説明する。
図8は、制御プログラム228において使用される変数の一覧画面を示す図である。
図8に示す一覧画面50は、設定部22として動作するプロセッサ202によって生成され、表示部208に表示される。
【0094】
一覧画面50は、各変数について、付加項目の設定を開始するためのボタン51を含む。ユーザは、付加項目の設定対象となる変数に対応するボタン51をクリックする。プロセッサ202は、ボタン51がクリックされたことに応じて、付加項目を設定するためのウィンドウを生成し、当該ウィンドウを表示部208に表示させる。
【0095】
図9は、付加項目を設定するためのウィンドウの一例を示す図である。
図9に示すウィンドウ60は、設定部22として動作するプロセッサ202によって生成される画面情報に基づいて、表示部208に表示される。
【0096】
ウィンドウ60は、ユーザ入力を促すための入力画面である。ウィンドウ60は、付加項目ごとの行を含む。各行は、ボタン61と、入力欄62,63とを有する。さらに、ウィンドウ60は、行を追加するためのボタン64を含む。ボタン64がクリックされたことに応じて、プロセッサ202は、行を追加するようにウィンドウ60を更新する。
【0097】
ボタン61は、対応する行に対する操作を行なうために使用される。プロセッサ202は、ボタン61上において入力部206が有するマウスの右ボタンがクリックされたことに応じて、「上に移動」,「下に移動」および「削除」を含むドロップダウンリストを表示する。プロセッサ202は、ドロップダウンリストにおいて選択された操作に応じて、ウィンドウ60を更新する。具体的には、「上に移動」が選択されたことに応じて、プロセッサ202は、ウィンドウ60において、対応する行を1つ上に移動させる。「下に移動」が選択されたことに応じて、プロセッサ202は、ウィンドウ60において、対応する行を1つ下に移動させる。「削除」が選択されたことに応じて、プロセッサ202は、ウィンドウ60において、対応する行を削除する。
【0098】
入力欄62は、付加項目の名称を入力するために使用される。入力欄63は、付加項目の内容を入力するために使用される。
【0099】
プロセッサ202は、ウィンドウ60への入力に応じて、
図8に示す一覧画面50においてクリックされたボタン51に対応する変数について、1以上の付加項目の各々の名称および内容を設定する。
【0100】
付加項目には、内容が経時変化しない静的付加項目と、内容が経時変化する動的付加項目とが含まれる。
【0101】
図10は、付加項目の設定例を示す図である。プロセッサ202は、入力部206が有するキーボードによる入力欄62,63への入力を受け付ける。
図10には、キーボードによる入力欄62,63への入力に基づく設定例が示される。
【0102】
図10に示されるように、1行目の付加項目の名称および内容として、「単位」および「℃」がそれぞれ入力されている。2行目の付加項目の名称および内容として、「説明」および「A装置周囲温度」がそれぞれ入力されている。プロセッサ202は、ウィンドウ60への入力に応じて、入力された名称および内容を示す情報をメタデータ設定情報226として生成する。そして、プロセッサ202は、生成したメタデータ設定情報226によって示される付加項目の名称および内容が対応する変数の欄52に記述されるように、変数の一覧画面50を更新する。
【0103】
図10に示す設定例によれば、ユーザは、自由に付加項目の名称および内容を設定できる。例えば、ユーザは、処理名称や装置名などのコメントを付加項目として設定できる。キーボードによる入力欄62,63への入力に基づいて設定される付加項目は静的付加項目である。
【0104】
図11は、付加項目の別の設定例を示す図である。プロセッサ202は、入力欄62,63上において入力部206が有するマウスの右ボタンがクリックされたことに応じて、「ファイル選択」を含むドロップダウンリストを表示する。プロセッサ202は、ドロップダウンリストにおいて「ファイル選択」が選択されたことに応じて、ストレージ210に格納されているファイルを選択するためのウィンドウ70を表示部208に表示させる。
【0105】
プロセッサ202は、ウィンドウ70において選択されたファイルの内容を示すウィンドウ72を表示部208に表示させる。プロセッサ202は、ウィンドウ72において選択された領域のテキストを付加項目の名称または内容として設定する。例えば、入力欄62上においてマウスの右ボタンがクリックされた場合、プロセッサ202は、選択された領域のテキストを付加項目の名称として設定する。入力欄63上においてマウスの右ボタンがクリックされた場合、プロセッサ202は、選択された領域のテキストを付加項目の内容として設定する。
【0106】
ドロップダウンリストの「ファイル選択」によって設定される付加項目は静的付加項目である。
【0107】
例えば、フィールド機器300から取得される変数について、ユーザは、ウィンドウ70において、当該フィールド機器300の製品情報を示すデバイス情報ファイルを選択すればよい。その後、ユーザは、ウィンドウ72において、選択したデバイス情報ファイルの中から所望のテキストを含む領域を選択する。これにより、ユーザは、フィールド機器300の機種、仕様などを付加項目として容易に設定できる。
図11に示す例では、IODDファイルの中から、フィールド機器300によって計測される変数の単位「℃」を示す行が選択されている。これにより、付加項目の内容として「℃」が設定される。
【0108】
また、ユーザは、ウィンドウ70において、CAD(Computer-Aided Design)ファイルやネットワーク構成ファイルを選択してもよい。これにより、ユーザは、例えば、CAD図やネットワーク構成図上のフィールド機器300の位置などを付加項目として容易に設定できる。
【0109】
図12は、付加項目のさらに別の設定例を示す図である。プロセッサ202は、ウィンドウ60の入力欄63上において入力部206が有するマウスの右ボタンがクリックされたことに応じて、「変数選択」を含むドロップダウンリストを表示する。プロセッサ202は、ドロップダウンリストにおいて「変数選択」が選択されたことに応じて、変数の一覧を示すウィンドウ80を表示部208に表示させる。
【0110】
プロセッサ202は、ウィンドウ80において選択された変数を付加項目の内容として設定する。
図12に示す設定例によれば、ユーザは、ある変数についての付加項目として、別の変数を設定できる。プロセッサ202は、ウィンドウ80において選択された変数に応じて、ウィンドウ60を更新する。変数の値は、経時変化する。そのため、ドロップダウンリストの「変数選択」によって設定される付加項目は動的付加項目である。
【0111】
例えば、ユーザは、あるデバイスから取得される変数の付加項目として、当該デバイスの周囲環境(温度、湿度、振動など)を計測するセンサから取得される変数を設定できる。
【0112】
また、ユーザは、あるデバイスから取得される変数の付加項目として、当該デバイスの機器情報を示す変数を設定してもよい。例えば、ユーザは、温度センサから取得される変数「温度」の付加項目として、当該温度センサのメンテナンス日、メンテナンス者などを示す変数を設定してもよい。
【0113】
ユーザは、入力部206が有するキーボードを用いて、内容として変数が設定された付加項目の名称を入力欄62に入力すればよい。
【0114】
あるいは、プロセッサ202は、内容として設定された変数の付加項目として名称「説明」が設定済みである場合、当該付加項目の内容のテキストを、内容として変数が設定された付加項目の名称として自動的に設定してもよい。
【0115】
例えば、
図10の一覧画面50に示されるように、変数「N1_Ch1_Measured_Value_INT」の付加項目として名称「説明」および内容「A装置周囲温度」が設定済みであり、別の変数「AAA」の付加項目の内容として変数「N1_Ch1_Measured_Value_INT」が設定されたケースについて説明する。この場合、プロセッサ202は、変数「N1_Ch1_Measured_Value_INT」について設定済みの付加項目の名称「説明」に対応する内容「A装置周囲温度」を読み出す。プロセッサ202は、読み出した内容のテキスト「A装置周囲温度」を、変数「N1_Ch1_Measured_Value_INT」を内容とする付加項目の名称のテキストとして設定すればよい。これにより、ユーザによる付加項目の名称の入力の手間が削減される。
【0116】
なお、プロセッサ202は、このようにして自動的に設定した付加項目の名称の編集指示を受け付けてもよい。これにより、ユーザは、例えば、自動的に設定された名称「A装置周囲温度」を名称「周囲温度」に編集できる。
【0117】
図13は、
図12に示す設定例が反映された変数の一覧画面を示す図である。プロセッサ202は、
図12に示すウィンドウ60への入力に応じて、入力された名称および内容を示す情報をメタデータ設定情報226として生成する。そして、プロセッサ202は、
図13に示されるように、生成したメタデータ設定情報226によって示される付加項目の名称および内容が対応する変数の欄52に記述されるように、変数の一覧画面50を更新する。
【0118】
図14は、メタデータ設定情報の一例を示す図である。
図14に示されるように、プロセッサ202は、変数ごとに、当該変数について設定された1以上の付加項目の各々の名称および内容を示すメタデータ設定情報226を生成する。
【0119】
<メタデータの生成処理>
図15は、メタデータの生成処理の流れを示すフローチャートである。
図15に示されるように、コントローラ100のプロセッサ102は、メタデータの出力イベントが発生したか否かを判断する(ステップS1)。例えば、プロセッサ102は、HMI400または端末コンピュータ500から出力指示を受けたときに、出力イベントが発生したと判断する。あるいは、出力イベントを周期的に発生させる読出プログラムが制御プログラム228に組み込まれており、プロセッサ102は、制御プログラム228を実行することにより、周期的に出力イベントを発生させてもよい。あるいは、プロセッサ102は、フィールド機器300からデータが入力されたときに、出力イベントが発生したと判断してもよい。なお、出力イベントごとに、出力対象となる変数が予め設定されている。
【0120】
出力イベントが発生していない場合(ステップS1でNO)、処理はステップS1に戻る。出力イベントが発生した場合(ステップS1でYES)、プロセッサ102は、メタデータ設定情報226に基づいて、出力対象となる変数についてのメタデータを生成する(ステップS2)。
【0121】
メタデータは、出力対象となる変数について設定された1以上の付加項目の各々の名称および内容を示す。
【0122】
プロセッサ102は、静的付加項目について、メタデータ設定情報226で示される名称および内容を示すメタデータを生成する。
【0123】
一方、プロセッサ102は、動的付加項目について、メタデータ設定情報226で示される名称と、出力イベントの発生タイミングにおける内容とを示すメタデータを生成する。なお、出力イベントの発生タイミングにおける内容は、当該発生タイミングとの時間差が基準範囲内の期間における内容であればよい。
【0124】
具体的には、プロセッサ102は、付加項目の内容として変数が設定されていることをメタデータ設定情報226が示す場合、ステップS2において、当該変数の最新の値を取得する。そして、プロセッサ102は、メタデータ設定情報226で示される名称と、取得した値とを示すメタデータを生成する。
【0125】
次に、プロセッサ102は、出力対象となる変数の最新の値とともに、ステップS2において生成されたメタデータを指定された出力先に出力する(ステップS3)。HMI400または端末コンピュータ500から出力指示を受けた場合、出力先は、出力指示を送信したHMI400または端末コンピュータ500である。出力イベントを周期的に発生させる読出プログラムが制御プログラムに組み込まれている場合、出力先は、当該読出プログラムにおいて予め設定されている。フィールド機器300からデータが入力されたことを出力イベントの発生とする場合も、出力先は予め設定されている。ステップS3の後、処理は終了する。
【0126】
図16は、制御システムのメタデータ出力処理を示すシーケンス図である。まず、コントローラ100は、制御プログラム228に従って、フィールド機器300との間でデータの入出力処理(IO処理)を周期的に実行する(ステップS11)。コントローラ100のプロセッサ102は、ステップS11の後、フィールド機器300から入力されたデータをメインメモリ104に保存する。
【0127】
ステップS13において、出力イベントが発生する。例えば、プロセッサ102は、HMI400または端末コンピュータ500から出力指示を受けたときに、出力イベントが発生したと判断する。あるいは、出力イベントを周期的に発生させる読出プログラムが制御プログラム228に組み込まれており、プロセッサ102は、制御プログラム228を実行することにより、周期的に出力イベントを発生させてもよい。あるいは、プロセッサ102は、特定のフィールド機器300からデータが入力されたときに、出力イベントが発生したと判断してもよい。なお、出力イベントごとに、出力対象となる変数が予め設定されている。
【0128】
コントローラ100のプロセッサ102は、出力イベントの発生に応じて、出力対象となる変数の最新の値をメインメモリ104から読み出す(ステップS14)。
【0129】
さらに、プロセッサ102は、出力対象となる変数の付加項目の名称および内容を取得する(ステップS15)。具体的には、プロセッサ102は、メタデータ設定情報226から、出力対象となる変数の付加項目の名称および内容を読み出す。さらに、プロセッサ102は、動的付加項目について、付加項目の内容として設定されている変数の最新の値をメインメモリ104から読み出す。そして、プロセッサ102は、付加項目を示すメタデータを生成する(ステップS16)。これにより、メタデータは、付加項目の名称および内容(動的付加項目については、内容として設定されている変数の最新の値)を示す。
【0130】
次に、プロセッサ102は、出力対象となる変数の最新の値と、当該変数について設定された付加項目を示すメタデータとを、端末コンピュータ500に出力する(ステップS17)。
【0131】
<付加項目の他の例>
サポート装置200のプロセッサ202は、
図10~12に示す設定例とは異なる方法で付加項目を設定してもよい。例えば、プロセッサ202は、ウィンドウ60の入力欄63上において入力部206が有するマウスの右ボタンがクリックされたことに応じて、「時刻」を含むドロップダウンリストを表示する。プロセッサ202は、ドロップダウンリストにおいて「時刻」が選択されたことに応じて、付加項目の内容として「時刻」を設定する。時刻は、経時変化する、そのため、ドロップダウンリストの「時刻」によって設定される付加項目は動的付加項目である。
【0132】
コントローラ100のプロセッサ102は、付加項目の内容として「時刻」が設定されていることをメタデータ設定情報226が示す場合、
図15のステップS2および
図16のステップS15において、時刻サーバ700から現グローバル時刻を取得する。そして、プロセッサ102は、メタデータ設定情報226で示される名称と、取得した現グローバル時刻とを示すメタデータを生成する。プロセッサ102は、指定された変数の値と、当該変数に対応するメタデータとを出力する。これにより、ユーザは、指定された変数の値と時刻との関係を容易に把握できる。
【0133】
また、プロセッサ202は、ウィンドウ60の入力欄63上において入力部206が有するマウスの右ボタンがクリックされたことに応じて、「ワーク」を含むドロップダウンリストを表示する。プロセッサ202は、ドロップダウンリストにおいて「ワーク」が選択されたことに応じて、付加項目の内容として「ワーク」を設定する。「ワーク」は、上述したように、制御対象による処理の対象物である。制御対象は、順次搬送されるワークに対して処理を行なう。そのため、ドロップダウンリストの「ワーク」によって設定される付加項目は動的付加項目である。
【0134】
コントローラ100のプロセッサ102は、付加項目の内容として「ワーク」が設定されていることをメタデータ設定情報226が示す場合、ステップS2において、MESサーバ600から受けた最新の製造指示に付加されるワークIDおよびロットIDの少なくとも一方を取得する。そして、プロセッサ102は、メタデータ設定情報226で示される名称と、取得したワークIDおよびロットIDの少なくとも一方(すなわち、ワークを識別する識別情報)とを示すメタデータを生成する。プロセッサ102は、指定された変数の値と、当該変数に対応するメタデータとを出力する。これにより、ユーザは、指定された変数の値と、当該値が取得されたときの処理の対象物との関係を容易に把握できる。
【0135】
上記の説明では、
図12に示すウィンドウ80において、デバイスの機器情報を示す変数を設定することにより、付加項目として、当該デバイスのメンテナンス日、メンテナンス者などを示す変数を設定されるものとした。しかしながら、デバイスが機器情報を有していない場合、メンテナンス日やメンテナンス者を示す付加項目は、キーボードによる入力欄62,63への入力に基づいて設定されてもよい。
【0136】
<変形例>
図16に示す例では、コントローラ100は、出力イベントの発生に応じて、メタデータを端末コンピュータ500に出力する。これに対し、コントローラ100は、メタデータを定期的にクラウドサーバに保存してもよい。
【0137】
図17は、変形例に係る制御システムの構成の一例を示す図である。
図17に示す制御システム1Aは、
図2に示す制御システム1と比較して、クラウドサーバ800を備える点で相違する。クラウドサーバ800は、上位ネットワーク3に接続される。
【0138】
変形例に係る制御システム1Aでは、出力イベントを周期的に発生させる読出プログラムが制御プログラムに組み込まれている。読出プログラムは、出力先としてクラウドサーバ800を定義する。これにより、コントローラ100のプロセッサ102は、周期的に、指定された変数の値と、当該変数について設定された付加項目を示すメタデータとをクラウドサーバ800に出力する。クラウドサーバ800は、コントローラ100から受けた変数の値とメタデータとを対応付けて蓄積する。変形例に係る制御システム1Aでは、端末コンピュータ500は、ユーザ操作に応じて、上位ネットワーク3を介してクラウドサーバ800にアクセスし、各変数のメタデータを参照する。
【0139】
上記の説明では、設定部22として動作するプロセッサ202は、ユーザ入力に応じて、制御プログラム228において使用される変数について付加項目を設定する。しかしながら、プロセッサ202は、プログラムに従って、ある変数について付加項目を自動的に設定してもよい。あるいは、プロセッサ202は、あるフィールド機器300から収集した変数に対して、当該フィールド機器300に応じた付加項目を自動的に設定してもよい。
【0140】
上記の説明では、サポート装置200とコントローラ100とが別体であるものとした。しかしながら、制御システム1,1Aにおいて、サポート装置200は、コントローラ100に内蔵されていてもよい。この場合、コントローラ100は、例えば産業用PC(Industrial Personal Computer:IPC)によって実現され、上記の制御部10、生成部12、出力部14および設定部22を備える。
【0141】
メタデータは、静的付加項目を示す第1メタデータと、動的付加項目を示す第2メタデータとに分割されてもよい。この場合、コントローラ100のプロセッサ102が第2メタデータを生成し、サポート装置200のプロセッサ202が第1メタデータを生成してもよい。すなわち、サポート装置200は、生成部12と同じ機能を有し、第1メタデータを生成する生成部を備えてもよい。
【0142】
また、上記の設定部22は、HMI400に備えられていてもよい。
【0143】
§3 付記
以上のように、本実施の形態は以下のような開示を含む。
【0144】
(構成1)
制御システム(1,1A)であって、
制御対象を制御する制御部(10,102)と、
前記制御部(10,102)によって使用される第1変数について、ユーザ入力に応じて、付加項目を設定する設定部(22,202)と、
前記第1変数について、前記付加項目を示すメタデータを生成する生成部(12,102)と、を備える、制御システム(1,1A)。
【0145】
(構成2)
出力イベントの発生に応じて、前記メタデータを出力する出力部(14,102)をさらに備え、
前記生成部(12,102)は、前記出力イベントの発生に応じて前記メタデータを生成し、
前記設定部(22,202)は、内容が経時変化する動的付加項目を設定し、
前記メタデータは、前記出力イベントの発生タイミングにおける前記動的付加項目の内容を示し、
前記出力部(14,102)は、前記メタデータとともに前記出力イベントの発生タイミングにおける前記第1変数の値を出力する、構成1に記載の制御システム(1,1A)。
【0146】
(構成3)
前記動的付加項目は、前記制御部(10,102)によって使用される1以上の変数のうちの前記第1変数とは異なる第2変数であり、
前記メタデータは、前記出力イベントの発生タイミングにおける前記第2変数の値を示す、構成2に記載の制御システム(1,1A)。
【0147】
(構成4)
前記動的付加項目は、時刻であり、
前記メタデータは、前記出力イベントが発生した時刻を示す、構成2に記載の制御システム(1,1A)。
【0148】
(構成5)
前記動的付加項目は、前記制御対象による処理の対象物であり、
前記メタデータは、前記出力イベントの発生タイミングにおける前記対象物の識別情報を含む、構成2に記載の制御システム(1,1A)。
【0149】
(構成6)
前記メタデータは、前記付加項目の名称および内容を示す、構成1に記載の制御システム(1,1A)。
【0150】
(構成7)
前記第1変数は、前記制御部(10,102)に接続される対象デバイス(300)によって取得され、
前記設定部(22,202)は、前記対象デバイス(300)の製品情報を示すファイル(230)のうちの選択された領域に記述されたテキストを、前記付加項目の名称として設定する、構成6に記載の制御システム(1,1A)。
【0151】
(構成8)
前記対象変数は、前記制御部(10,102)に接続される対象デバイス(300)によって取得され、
前記設定部(22,202)は、前記対象デバイス(300)の製品情報を示すファイル(230)のうちの選択された領域に記述されたテキストを、前記付加項目の内容として設定する、構成6に記載の制御システム(1,1A)。
【0152】
(構成9)
前記設定部(22,202)は、ユーザ入力を促すための入力画面(60)を示す画面情報を提供し、
前記入力画面(60)は、前記付加項目の名称および内容を入力するための入力欄(62,63)を含み、
前記設定部(22,202)は、前記入力欄(62,63)への入力に応じて、前記付加項目の名称および内容を設定する、構成6に記載の制御システム(1,1A)。
【0153】
(構成10)
制御対象を制御するコントローラ(100)を含む制御システム(1,1A)の情報処理方法であって、
前記コントローラ(100)によって使用される変数について、付加項目を設定するステップと、
前記変数について、前記付加項目を示すメタデータを生成するステップと、を備える、情報処理方法。
【0154】
本発明の実施の形態について説明したが、今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【0155】
1,1A 制御システム、2 フィールドネットワーク、3 上位ネットワーク、10 制御部、12 生成部、14 出力部、20 プログラム開発部、22 設定部、30,40 設定画面、31 マルチビューエクスプローラ欄、32,33 切替スイッチ、34 アイコン、35 表示欄、36 ツールボックス、37 挿入アイコン、38 詳細情報欄、50 一覧画面、51,61,64 ボタン、52 欄、60,70,72,80 ウィンドウ、62,63 入力欄、100 コントローラ、102,202 プロセッサ、104,204 メインメモリ、106 上位ネットワークコントローラ、108 フィールドネットワークコントローラ、110,210 ストレージ、112 メモリカードインターフェイス、114 メモリカード、116 ローカルバスコントローラ、118,218 プロセッサバス、120,220 USBコントローラ、200 サポート装置、206 入力部、208 表示部、212 光学ドライブ、214 記録媒体、224 サポートプログラム、226 メタデータ設定情報、228 制御プログラム、230 ファイル群、300 フィールド機器、400 HMI、500 端末コンピュータ、600 MESサーバ、700 時刻サーバ、800 クラウドサーバ、1102 システムプログラム。