JP2022054949A - エンジニアリングツール - Google Patents
エンジニアリングツール Download PDFInfo
- Publication number
- JP2022054949A JP2022054949A JP2020162241A JP2020162241A JP2022054949A JP 2022054949 A JP2022054949 A JP 2022054949A JP 2020162241 A JP2020162241 A JP 2020162241A JP 2020162241 A JP2020162241 A JP 2020162241A JP 2022054949 A JP2022054949 A JP 2022054949A
- Authority
- JP
- Japan
- Prior art keywords
- user
- library
- control program
- database
- stores
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000008676 import Effects 0.000 claims description 34
- 230000006870 function Effects 0.000 claims description 30
- 238000010586 diagram Methods 0.000 description 34
- 238000000034 method Methods 0.000 description 19
- 238000013523 data management Methods 0.000 description 4
- 230000010365 information processing Effects 0.000 description 3
Images
Landscapes
- Stored Programmes (AREA)
- Programmable Controllers (AREA)
Abstract
【課題】制御プログラムをエクスポート/インポートする際の作業性を向上させるエンジニアリングツールを提供する。【解決手段】エンジニアリングツール21は、記憶装置と、データベース部204と、エクスポート部201とを備える。記憶装置は、制御プログラムを構成する複数の構成要素を格納するユーザライブラリを記憶する。データベース部204は、複数の構成要素間の関係を示すデータベースを記憶する。エクスポート部201は、データベースに基づき制御プログラムをユーザライブラリ単位で外部システムにエクスポートする。【選択図】図4
Description
本発明の実施形態は、エンジニアリングツールに関する。
プラントを制御する制御システムにおいて、システムプログラマは、プラントを自動運転するための制御プログラムを作成し、試験、調整等を行った後、ユーザ(プラントの管理者等)に提供する。新規に類似の制御システムを構築する場合には、元となる制御システムから制御プログラムをエクスポートし、新規に構築する制御システムにインポートすることにより、制御プログラムを流用できる。
上記のような制御プログラムのエクスポート/インポートを制御プログラム単位で行うと、設定作業等が煩雑となり、作業性が低くなる場合がある。
実施形態のエンジニアリングツールは、記憶装置と、データベース部と、エクスポート部とを備える。記憶装置は、制御プログラムを構成する複数の構成要素を格納するユーザライブラリを記憶する。データベース部は、複数の構成要素間の関係を示すデータベースを記憶する。エクスポート部は、データベースに基づき制御プログラムをユーザライブラリ単位で外部システムにエクスポートする。
以下、添付の図面を用いて、実施形態にかかるエンジニアリングツールを適用した制御システムについて説明する。
図1は、実施形態にかかる制御システム1の構成の一例を示す図である。制御システム1は、データ管理装置10、管理者端末11、ユーザ端末12、及びコントローラ13を有する。データ管理装置10は、システムプログラマが制御プログラムの管理に用いる情報処理装置である。管理者端末11は、システムプログラマがエンジニアリングツール21を用いて制御プログラムの作成、編集等に行う際に用いる情報処理装置である。ユーザ端末12は、プラントの管理者等のユーザがエンジニアリングツール21を用いて制御プログラムの変更等を行う際に用いる情報処理装置である。コントローラ13は、制御プログラムに従いプラント等の制御対象機器を制御する装置である。
エンジニアリングツール21は、制御対象機器の制御に関わる制御プログラムの作成、編集等の、制御プログラムに関わる処理を実行するツールである。管理者端末11は、エンジニアリングツール21を用いて作成、編集等された制御プログラムを、コントローラ13に送信する。これにより、コントローラ13は、管理者端末11から受信した制御プログラムに従い制御対象機器を制御できる。
図2は、実施形態にかかる制御プログラムの構成の一例を示す図である。本実施形態にかかる制御プログラムは、プログラム(MS000)、ファンクション・ブロック(USER_FBK)、ファンクション(USER_FUN)、ユーザデータ型(STR_HZZ)等を構成要素として含む。プログラムは、ファンクション・ブロック及びファンクションを含み、ユーザデータ型と紐づけられている。ユーザデータ型は、ユーザデータ型のメンバ(INT_ARY等)を含み、変数(ABC)と紐づけられている。変数は、ファンクションと紐づけられている。
図3は、実施形態にかかる制御システム1が保有するデータのフォルダ構造の一例を示す図である。本実施形態にかかるフォルダ構造においては、システム101内に1以上のライブラリ111が格納されている。ライブラリ111内には、複数のユーザライブラリ(ワーク1~ワークX)121と、複数の標準ライブラリ(1~X)151とが格納されている。各ユーザライブラリ121には、制御プログラムを構成する複数の構成要素が格納されている。本実施形態にかかるユーザライブラリ121には、ユーザデータ型131、ファンクション・ブロック132、ファンクション133、及びプログラム134が格納されている。各標準ライブラリ151には、任意のデータが格納されている。
各ユーザライブラリ121には、セキュリティ情報が設定されている。セキュリティ情報は、ユーザライブラリ121にアクセスする際に必要となる認証情報、アクセスレベル(権限)等である。セキュリティ情報は、管理者毎及びメンバ(被管理者)毎に設定されていることが好ましい。認証情報は、例えば、ユーザ名(ID)とパスワードとの組み合わせ等である。アクセスレベルは、例えば、管理者やメンバの役職等に応じて与えられる権限等を示す情報であり、例えば、「利用可能」、「閲覧可能」、「編集可能」等である。なお、標準ライブラリ151にセキュリティ情報が設定されてもよい。また、標準ライブラリ122のアクセスレベルは、全員がアクセス可能となるように「利用可能」に固定されていてもよい。
上記のようなフォルダ構造を有するデータの格納場所は、特に限定されるものではなく、所定のセキュリティが確保された記憶領域を備えた記憶装置であればよい。例えば、当該データの格納場所は、データ管理装置10が備える記憶装置であってもよいし、管理者端末11が備える記憶装置であってもよいし、ユーザ端末12が備える記憶装置であってもよい。
図4は、実施形態に係るエンジニアリングツール21の機能構成の一例を示す図である。エンジニアリングツール21は、上記のような制御プログラムのエクスポート/インポートを可能にするツールである。エンジニアリングツール21は、管理者端末11又はユーザ端末12のハードウェア及びソフトウェアの協働により実現される。ここでいうハードウェアとは、例えば、CPU(Central Processing Unit)、RAM(Random Access Memory)、ROM(Read Only Memory)、補助記憶装置等である。また、ここでいうソフトウェアとは、例えば、ROMや補助記憶装置に記憶されたプログラム、ファームウェア等である。また、エンジニアリングツール21は、管理者端末11又はユーザ端末12に備えられた表示装置31、キーボード32、マウス33等のユーザインターフェースと連携し、制御プログラムに関わる各種処理を実現する。
エンジニアリングツール21は、エクスポート部201、インポート部202、設定部203、及びデータベース部204を有する。
エクスポート部201は、制御プログラムをユーザライブラリ121単位で制御システム1から外部システムへエクスポートするための処理を行う。
インポート部202は、制御プログラムをユーザライブラリ121単位で外部システムから制御システム1へインポートするための処理を行う。
設定部203は、ユーザライブラリ121毎にセキュリティ情報を設定するための処理を行う。
データベース部204は、制御プログラムを構成する複数の構成要素(本実施形態においてはユーザデータ型131、ファンクション・ブロック132、ファンクション133、及びプログラム134)間の関係を示すデータベースを記憶する。本実施形態にかかるデータベース部204は、ライブラリDB(データベース)211、データ型DB212、データ型メンバDB213、プログラムコードDB214、及び変数DB215を記憶する。
図5は、実施形態にかかるライブラリDB211の一例を示す図である。ライブラリDB211は、ライブラリ(ユーザライブラリ121や標準ライブラリ122)に関する情報を集約したデータベースである。図5に例示するライブラリDB211は、リレーション(各行に割り当てられた識別番号)と、ライブラリ名と、ライブラリ種別と、管理者のユーザ名/パスワードと、メンバのユーザ名/パスワード/アクセスレベルとの対応関係を示すテーブルである。本例においては、ユーザライブラリ121又は標準ライブラリ122と、管理者の認証情報と、メンバの認証情報と、メンバのアクセスレベルとの対応関係が示されている。
図6は、実施形態にかかるデータ型DB212の一例を示す図である。データ型DB212は、データ型(ユーザデータ型、ファンクション・ブロック、ファンクション、プログラム等)に関する情報を集約したデータベースである。図6に例示するデータ型DB212は、リレーションと、データ型名と、データ型と、コメントと、ライブラリとのリレーションとの対応関係を示すテーブルである。図6に示す例では、ライブラリ名が「ワーク1」であるユーザライブラリ121が、ユーザデータ型(STR_HZZ)、ファンクション・ブロック(USER_FBK)、ファンクション(USER_FUN)、及びプログラム(MS000)と対応していることが示されている。
図7は、実施形態にかかるデータ型メンバDB213の一例を示す図である。データ型メンバDB213は、データ型メンバに関する情報を集約したデータベースである。図7に例示するデータ型メンバDB213は、リレーションと、メンバ名と、データ型と、コメントと、ユーザデータ型とのリレーションとの対応関係を示すテーブルである。図7に示す例では、図6におけるユーザデータ型がメンバ名「INT_ARY」及び「BOOL_ARY」に対応していることが示されている。
図8は、実施形態にかかるプログラムコードDB214の一例を示す図である。プログラムコードDB214は、プログラムコードに関する情報を集約したデータベースである。図8に例示するプログラムコードDB214は、リレーションと、行と、列と、ファンクション・ブロック/ファンクション名と、接続状態と、変数名と、データ型とのリレーションとの対応関係を示すテーブルである。図8に示す例では、図6における「ファンクション・ブロック」が「INPUT」や「OUTOPUT」と対応し、図6における「ファンクション」が「INPUT」や「USER_FUN」と対応し、図6における「プログラム」が「ABC_BOOL_ARY[0]」、「USER_FBK_1」等と対応していることが示されている。
図9は、実施形態にかかる変数DB215の一例を示す図である。変数DB215は、変数に関する情報を集約したデータベースである。図9に例示する変数DB215は、リレーションと、変数名と、データ型と、データ型とのリレーションとの対応関係を示すテーブルである。図9に示す例では、図6における「ファンクション・ブロック」が「INPUT」や「OUTOPUT」と対応し、図6における「ファンクション」が「INPUT」や「USER_FUN」と対応し、図6における「プログラム」が「ABC」や「USER_FBK_1」と対応していることが示されている。
エクスポート部201は、上記DB211~215に基づき制御プログラムをユーザライブラリ121単位でエクスポートする。インポート部202は、上記211~215に基づき制御プログラムをユーザライブラリ121単位でインポートする。
図10は、実施形態にかかるライブラリDB211、データ型DB212、データ型メンバDB213、プログラムコードDB214、及び変数DB215の連携の一例を示す図である。
図10に示すように、「リレーション」を介して各DB211~215を対応付けることにより、制御プログラムを構成する複数の構成要素(本実施形態においてはユーザデータ型131、ファンクション・ブロック132、ファンクション133、及びプログラム134)間の関係を特定できる。このようなDB211~215を参照することにより、制御プログラムをユーザライブラリ121単位でエクスポート/インポートすることが可能となる。また、ユーザライブラリ121毎に設定されたセキュリティ情報をエクスポート/インポートすることが可能となる。
なお、上記DB211~215の構成は例示であり、データベース部204が記憶するDBの構成は上記に限定されるものではない。
図11は、実施形態にかかるセキュリティ情報の設定画面の一例を示す図である。図11には、ユーザライブラリ121のセキュリティ情報を設定する設定画面が例示されている。このような設定画面を介して、ユーザライブラリ121毎に管理者のセキュリティ情報及びメンバのセキュリティ情報を設定できる。
図12は、実施形態にかかるエクスポート処理の一例を示すフローチャートである。エクスポートを実行しようとする際、管理者端末11のユーザ又はユーザ端末12のユーザ(以降、両者を区別する必要がない場合にはユーザと記載する。)は、エクスポートの対象となるユーザライブラリ121を選択し(S101)、エクスポート先のフォルダを指定する(S102)。
図13は、実施形態においてエクスポートの対象となるユーザライブラリ121を選択する際の操作画面の一例を示す図である。図14は、実施形態においてエクスポート先のフォルダを指定する際の操作画面の一例を示す図である。
図13において、ファイル名「ワーク1」のユーザライブラリ121が選択された状態が例示されている。図14において、フォルダ名「Temp」のフォルダがエクスポート先のフォルダとして指定され、当該Tempフォルダ内に「ワーク1」(拡張子LIB)のファイルが既に格納されている状態が例示されている。これらの操作は、表示装置31、キーボード32、マウス33等のユーザインターフェースを用いて行われる。
図12に戻り、その後、エクスポート部201は、エクスポート先として指定されたフォルダ内に、選択されたユーザライブラリ121と同名のファイルが存在するか否かを判定する(S103)。同名のファイルが存在する場合(S103:Yes)、エクスポート部201は、ユーザに対して上書きをするか否かを選択させる処理を行う(S104)。この処理は、表示装置31に上書きを承諾するか否かを選択させる画面を表示させること等により行われる。上書きしないことが選択された場合(S104:No)、エクスポート処理は中止される。
上書きすることが選択された場合(S104:Yes)、エクスポート部201は、選択されたユーザライブラリ121のデータ(ユーザデータ型、ファンクション・ブロック、ファンクション、プログラム等)及びセキュリティ情報(認証情報、アクセスレベル等)を、指定されたフォルダへエクスポートする(S105)。エクスポート先として指定されたフォルダ内に選択されたユーザライブラリ121と同名のファイルが存在しない場合(S103:No)、ステップS105が実行される。
上記処理により、制御プログラムをユーザライブラリ121単位でエクスポートすることができる。
図15は、実施形態にかかるインポート処理の一例を示す図である。インポートを実行しようとする際、ユーザは、インポート先のフォルダを指定し(S201)、インポートの対象となるユーザライブラリ121を選択する(S202)。
図16は、実施形態においてインポート先のフォルダを指定する際の操作画面の一例を示す図である。図17は、実施形態においてインポートの対象となるユーザライブラリ121を選択する際の操作画面の一例を示す図である。
図16において、フォルダ名「ライブラリ」のフォルダがインポート先のフォルダとして指定された状態が例示されている。図17において、ファイル名「ワーク1」(拡張子LIB)のファイル(ユーザライブラリ121)が選択された状態が例示されている。これらの操作は、表示装置31、キーボード32、マウス33等のユーザインターフェースを用いて行われる。
図15に戻り、その後、インポート部202は、インポート先として指定されたフォルダ内に、選択されたファイルと同名のファイル(ライブラリ)が存在するか否かを判定する(S203)。同名のファイルが存在する場合(S203:Yes)、インポート部202は、ユーザに対して上書きをするか否かを選択させる処理を行う(S204)。上書きしないことが選択された場合(S204:No)、インポート処理は中止される。
同名のライブラリを上書きすることが選択された場合(S204:Yes)、インポート部202は、指定されたフォルダ内に今回インポート対象として選択されたユーザライブラリ121と同名のデータ型のユーザライブラリが存在するか否かを判定する(S205)。同名のデータ型のユーザライブラリ121が存在する場合(S205:Yes)、ユーザに対して同名のデータ型のユーザライブラリ121が存在することを通知した後(S211)、インポート処理は中止される。
同名のデータ型のユーザライブラリ121が存在しない場合(S205:No)、インポート部202は、ユーザに対して上書きをするか否かを選択させる処理を行う(S206)。上書きすることが選択された場合(S206:Yes)、インポート部202は、指定されたフォルダ内に格納されている既存のユーザライブラリ121を削除し(S207)、インポート対象として選択されたユーザライブラリ121のデータ型に基づきデータベースを更新する(S208)。その後、インポート部208は、該当する全てのデータベース分の処理が終了したか否かを判定し(S209)、終了していない場合(S209:No)にはステップS208に戻り、終了した場合(S210:Yes)にはインポート処理を終了する。
図18は、実施形態にかかるインポート処理時におけるデータベースの更新の一例を示す図である。
図18に示すように、インポートされたユーザライブラリ121のデータに対応する情報は、それぞれ該当するDB211~215の最後尾に後置追加される。そして、変更されたリレーションは、関係するDB211~215において振り直される。
上記処理により、制御プログラムをユーザライブラリ121単位でインポートすることができる。
以上のように、本実施形態によれば、制御プログラムをユーザライブラリ単位でエクスポート/インポートすることが可能となる。これにより、制御プログラムをエクスポート/インポートする際の作業性を向上させることができる。
なお、本実施形態のエンジニアリングツール21の機能を実現するプログラムは、ROM等に予め組み込まれて提供される。また、当該プログラムを、インストール可能な形式又は実行可能な形式のファイルでCD-ROM、フレキシブルディスク(FD)、CD-R、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。また、当該プログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、当該プログラムをインターネット等のネットワーク経由で提供又は配布するように構成してもよい。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
1…制御システム、10…データ管理装置、11…管理者端末、12…ユーザ端末、13…コントローラ、21…エンジニアリングツール、121…ユーザライブラリ、131…ユーザデータ型、132…ファンクション・ブロック、133…ファンクション、134…プログラム、201…エクスポート部、202…インポート部、203…設定部、204…データベース部、211…ライブラリDB、212…データ型DB、213…データ型メンバDB、214…プログラムコードDB、215…変数DB
Claims (8)
- 制御プログラムを構成する複数の構成要素を格納するユーザライブラリを記憶する記憶装置と、
前記複数の構成要素間の関係を示すデータベースを記憶するデータベース部と、
前記データベースに基づき前記制御プログラムを前記ユーザライブラリ単位で外部システムにエクスポートするエクスポート部と、
を備えるエンジニアリングツール。 - 前記ユーザライブラリ毎にセキュリティ情報を設定する設定部、
を更に備え、
前記エクスポート部は、更に前記セキュリティ情報を外部システムにエクスポートする、
請求項1に記載のエンジニアリングツール。 - 前記セキュリティ情報は、認証情報及びアクセスレベルを含む、
請求項2に記載のエンジニアリングツール。 - 前記複数の構成要素は、ユーザデータ型、ファンクション・ブロック、ファンクション、及びプログラムを含む、
請求項1~3のいずれか1項に記載のエンジニアリングツール。 - 制御プログラムを構成する複数の構成要素を格納するユーザライブラリを記憶する記憶装置と、
前記複数の構成要素間の関係を示すデータベースを記憶するデータベース部と、
外部システムから前記ユーザライブラリ単位でエクスポートされた前記制御プログラムを前記記憶装置にインポートし、インポートされた前記制御プログラムのデータ型に基づき前記データベースを更新するインポート部と、
を備えるエンジニアリングツール。 - 前記インポート部は、更に、前記ユーザライブラリ毎に設定されたセキュリティ情報を外部システムからインポートする、
請求項5に記載のエンジニアリングツール。 - 前記セキュリティ情報は、認証情報及びアクセスレベルを含む、
請求項6に記載のエンジニアリングツール。 - 前記複数の構成要素は、ユーザデータ型、ファンクション・ブロック、ファンクション、及びプログラムを含む、
請求項5~7のいずれか1項に記載のエンジニアリングツール。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020162241A JP2022054949A (ja) | 2020-09-28 | 2020-09-28 | エンジニアリングツール |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020162241A JP2022054949A (ja) | 2020-09-28 | 2020-09-28 | エンジニアリングツール |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2022054949A true JP2022054949A (ja) | 2022-04-07 |
Family
ID=80998133
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020162241A Pending JP2022054949A (ja) | 2020-09-28 | 2020-09-28 | エンジニアリングツール |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2022054949A (ja) |
-
2020
- 2020-09-28 JP JP2020162241A patent/JP2022054949A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10430209B1 (en) | System and method for server customization | |
CN112650766B (zh) | 数据库数据操作的方法、系统及服务器 | |
KR101738647B1 (ko) | 데이터 유지 시스템 | |
US20060015856A1 (en) | Modification method for modifying a source code | |
CN105912330A (zh) | 硬件设备控制方法及装置 | |
CN111443912A (zh) | 基于组件的页面渲染方法、装置、计算机设备和存储介质 | |
JP4477531B2 (ja) | データインポート方法およびデータインポート装置 | |
JP6299095B2 (ja) | 共有データ定義支援システム、そのマスタ装置、ローカル端末、プログラム | |
CN116048480B (zh) | 一种基于代码工具自动生成图表的方法及装置 | |
JP2022054949A (ja) | エンジニアリングツール | |
JP7131119B2 (ja) | ソースアプリケーションからのソースデータをターゲットアプリケーションのターゲットデータへとマージするためのシステムおよび方法 | |
KR20040026485A (ko) | 제안서 작성 시스템 및 방법 | |
JP2007249422A (ja) | 組織構成管理システム、そのプログラム | |
JP4836545B2 (ja) | 画面作成装置およびプログラム | |
JP2011059918A (ja) | バージョン管理装置及びバージョン管理方法 | |
US6816866B2 (en) | Method of changing a parameter of an operating system of a computer system | |
JP2015022511A (ja) | プログラマブルコントローラシステム、その支援装置、プログラム | |
JP4731928B2 (ja) | データ管理装置、データ管理システム、データ処理装置、データ管理方法、プログラム、及び記憶媒体 | |
CN110968363A (zh) | 一种数据配置的同步方法、装置、电子设备以及可读存储介质 | |
JP3736467B2 (ja) | ケーブルの管理システムとその管理方法 | |
JPWO2020194425A1 (ja) | システム設計支援装置、方法、プログラム及び記録媒体 | |
JP6355861B1 (ja) | プログラム開発支援装置、プログラム開発支援方法、プログラム開発支援プログラムおよび記録媒体 | |
JP7433553B1 (ja) | 検証プログラム、検証装置、検証システム、及び検証方法 | |
US20240176796A1 (en) | Bypassing database automations | |
WO2020170401A1 (ja) | 情報処理装置、情報処理方法及び情報処理プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230616 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20240226 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20240305 |