JP7456557B1 - 作画支援プログラム、作画支援方法、作画支援装置、及び作画支援システム - Google Patents

作画支援プログラム、作画支援方法、作画支援装置、及び作画支援システム Download PDF

Info

Publication number
JP7456557B1
JP7456557B1 JP2023547459A JP2023547459A JP7456557B1 JP 7456557 B1 JP7456557 B1 JP 7456557B1 JP 2023547459 A JP2023547459 A JP 2023547459A JP 2023547459 A JP2023547459 A JP 2023547459A JP 7456557 B1 JP7456557 B1 JP 7456557B1
Authority
JP
Japan
Prior art keywords
data
project data
functional element
property data
project
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.)
Active
Application number
JP2023547459A
Other languages
English (en)
Inventor
元彰 橋川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Application granted granted Critical
Publication of JP7456557B1 publication Critical patent/JP7456557B1/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本開示に係る作画支援プログラムは、コンピュータに、プログラマブル表示器に表示される画面の表示を制御するためのプロジェクトデータ(116)を編集するためのプロパティデータ(117)を取得する取得機能(111)と、プロパティデータ(117)とプロジェクトデータ(116)とを比較し、その差分を抽出する差分抽出機能(112)と、抽出した差分に基づいて、プロジェクトデータ(116)を編集する編集機能(113)と、を実現させる。

Description

本開示は、作画支援プログラム、作画支援方法、作画支援装置、及び作画支援システムに関する。
プログラマブル表示器は、例えば、PLC(Programmable Logic Controller)等の制御装置と接続され、自装置及び接続された制御装置の状態を表示し、操作することに用いられる。プログラマブル表示器に表示されるコンテンツを構成するデータセットとして、例えば、プロジェクトデータが用いられる。プロジェクトデータは、制御装置の状態表示及び操作のためのデータであって、作画ソフトウェアをインストールしたコンピュータである作画支援装置を用いて作成される。作成されたプロジェクトデータは、作画支援装置からプログラマブル表示器に転送される。プロジェクトデータは、通常、テキストエディタやスプレッドシートアプリケーション等の汎用エディタで読み書き可能なデータ形式を有していないため、その作成後に内容に変更を加えたい場合には、例えば、作画ソフトウェアが備えるGUI(Graphical User Interface)等を介してその内容が変更される。
このとき、一般的に、作画ソフトウェアにより新規作成されたプロジェクトデータは、個々のプログラマブル表示器の要求仕様に対応する内容になっていない。このため、プロジェクトデータを作成するユーザは、例えば、所望の仕様に変更する等の目的で、通常、作画ソフトウェアが備えるGUI等を介してその内容を編集する。また、ユーザは、過去に所定の要求仕様に合わせて作成されたプロジェクトデータを流用する目的で、GUI等を介してプロジェクトデータを編集する場合がある。
ここで、プロジェクトデータを編集するユーザは、GUI等を介したプロジェクトデータの編集に備えて、プロジェクトデータを編集するための情報を、プロパティデータとして予め作成している場合がある。プロパティデータは、プロジェクトデータとは異なり汎用エディタで読み書き可能なデータ形式を有する。
プロジェクトデータの編集については、種々の技術が提案されている。例えば、特許文献1では、共通で用いられる雛形となるプロジェクトデータに対して、個々のプログラマブル表示器の要求仕様に合わせた個別設定情報を含むプロジェクトプロパティデータの内容を反映させることにより、個々のプログラマブル表示器の要求仕様に対応したプロジェクトデータが作成される技術が開示されている。このとき、個別設定情報は、例えば、プロジェクトデータを構成する作画データに含まれるオブジェクト及びバックグラウンド機能それぞれに設定される設定IDで管理されている。
国際公開第2013/080332号
しかしながら、上記の特許文献1では、例えば、雛形となるプロジェクトデータを編集するためのプロジェクトプロパティデータに対して設定IDで管理される特定の要素の追加、又は、削除が行われた場合、この編集内容をプロジェクトデータに反映することはできない。このとき、ユーザは、特定の要素が追加又は削除されたことについて、例えば、作画ソフトウェアが備えるGUI等を介してプロジェクトデータを手動で編集して反映させる必要があり、プロジェクトデータの編集効率が悪いという問題があった。
本開示は、上記事情に鑑みてなされたものであり、プログラマブル表示器に表示される画面の表示を制御するためのプロジェクトデータの編集効率を向上させることが可能な作画支援プログラム、作画支援方法、作画支援装置、及び作画支援システムを提供することを目的とする。
上記目的を達成するために、本開示に係る作画支援プログラムは、コンピュータに、プログラマブル表示器に表示される画面の表示を制御するために作成されたプロジェクトデータを編集するためのプロパティデータを取得する取得機能と、プロパティデータとプロジェクトデータとを比較し、その差分を抽出する差分抽出機能と、差分に基づいて、プロジェクトデータを編集する編集機能と、を実現させる。差分抽出機能により抽出された差分は、プロジェクトデータを構成する機能要素を特定する識別子に基づいて抽出され、プロジェクトデータは、階層構造を有し、プロパティデータは、前記階層構造の一部を編集対象として指定可能な対象範囲情報を含む。
本開示によれば、プログラマブル表示器に表示される画面の表示を制御するためのプロジェクトデータの編集効率を向上させることが可能であるとともに、編集されるプロジェクトデータの範囲を限定できる作画支援プログラム、作画支援方法、作画支援装置、及び作画支援システムを提供することができる。
実施形態に係る作画支援システムの構成例を示す図 実施形態に係る作画支援装置の構成例を示す図 実施形態に係るプロジェクトデータのデータ構造を説明するための図 実施形態に係るプロパティデータのデータ構造を説明するための図 実施形態に係る作画支援装置の動作例を示す図 実施形態に係る作画支援装置が実行する差分抽出処理の例を示す図 実施形態に係る差分抽出結果データの例を示す図 実施形態に係る編集前の汎用エディタ、プロパティデータ、プロジェクトデータの関係を説明するための図 実施形態に係る編集後の汎用エディタ、プロパティデータ、プロジェクトデータの関係を説明するための図 変形例に係る作画支援システムの構成例を示す図 変形例に係る作画支援装置の構成例 変形例に係る作画支援装置が実行する状態監視処理の例を示す図 変形例に係るプロパティデータの状態監視を説明するための図 変形例に係るプロパティデータの変更が検知された際の通知方法の例を示す図 変形例に係るプロパティデータの補完処理を説明するための図 変形例に係る編集中のプロジェクトデータがない場合のプロパティデータ反映処理を説明するための図
以下、図面を参照しながら実施の形態に係る作画支援プログラム、作画支援方法、作画支援装置、及び作画支援システムについて説明する。以下の実施形態では、同一の参照符号を付した部分は同様の動作をおこなうものとして、重複する説明を適宜省略する。
(実施形態)
図1は、実施形態に係る作画支援システム1の構成例を示す図である。
作画支援システム1は、作画支援装置10、及びプログラマブル表示器20を含むシステムである。作画支援装置10とプログラマブル表示器20とは、通信可能に接続されている。
作画支援装置10は、プログラマブル表示器20において表示される表示画面の作画を支援する装置である。作画支援装置10には、例えば、プログラマブル表示器20において表示される表示画面の作画を行うための作画ソフトウェアがインストールされている。例えば、作画ソフトウェアを使用するユーザは、プログラマブル表示器20で表示される様々な画面を、GUI(Graphic User Interface)を介して編集可能である。
プログラマブル表示器20は、例えば、プログラマブル表示器20に接続される外部機器の状態についての情報を表示する。また、プログラマブル表示器20は、所定の操作を受け付け、受け付けた操作に従って外部機器を制御する。外部機器は、例えば、PLC(Programmable Logic Controller)である。
図2は、実施形態に係る作画支援装置10の構成例を示す図である。
作画支援装置10は、処理回路11、入力インタフェース12、出力インタフェース13、通信インタフェース14、及び記憶回路15を有する。
処理回路11は、作画支援装置10の中枢として機能するプロセッサである。処理回路11は、例えば、記憶回路15に記憶されているプログラムを実行することで、実行したプログラムに対応する機能を実現する。なお、処理回路11は、記憶回路15で記憶されているデータの少なくとも一部を記憶する記憶領域を備えていても構わない。
入力インタフェース12は、作画支援装置10に対して操作者から入力される各種操作を受け付ける。入力インタフェース12は、例えば、マウス、キーボード、及び操作面へ触れることで指示が入力されるタッチパネル等により実現される。入力インタフェース12は、処理回路11に接続され、操作者から入力される操作指示を電気信号へ変換し、電気信号を処理回路11へ出力する。なお、本明細書において入力インタフェース12はマウス、及びキーボード等の物理的な操作部品を備えるものだけに限られない。例えば、作画支援装置10とは別体に設けられた外部の入力機器から入力される操作指示に対応する電気信号を受け取り、この電気信号を処理回路11へ出力する電気信号の処理回路も入力インタフェース12の例に含まれる。
出力インタフェース13は、処理回路11に接続され、処理回路11から供給される信号を出力する。出力インタフェース13は、例えば、表示回路、及び音声デバイス等により実現される。表示回路には、例えば、CRTディスプレイ、液晶ディスプレイ、有機ELディスプレイ、LEDディスプレイ、及びプラズマディスプレイ等が含まれる。音声デバイスには、例えば、スピーカ等を含む。また、音声デバイスには、音声信号を外部へ出力する出力回路が含まれていてもよい。なお、出力インタフェース13は、入力インタフェース12と共にタッチパネル、あるいはタッチスクリーンとして実現されてもよい。
通信インタフェース14は、外部装置との間でデータを送受信する。通信インタフェース14と外部装置との間では任意の通信規格が使用可能である。具体的には、通信インタフェース14は、例えば、プログラマブル表示器20との間で種々のデータを送受信する。
記憶回路15は、磁気的、若しくは光学的記録媒体、又は半導体メモリ等の、プロセッサにより読み取り可能な記録媒体等を含む。また、記憶回路15は、CD-ROMドライブ、DVDドライブ、及びフラッシュメモリ等の可搬性記憶媒体との間で種々の情報を読み書きする駆動装置等であっても良い。なお、記憶回路15は、必ずしも単一の記憶装置により実現される必要は無い。例えば、記憶回路15は、複数の記憶装置により実現されても構わない。
記憶回路15は、例えば、図2に示されるプロジェクトデータ16、及び、プロパティデータ17を記憶している。
プロジェクトデータ16は、プログラマブル表示器に表示される画面の表示を制御するためのデータである。プロジェクトデータ16には、例えば、プロジェクト設定に関する情報、表示される画面に関する情報、バックグラウンド機能に関する情報等が含まれている。プロジェクトデータ16は、例えば、作画支援装置10にインストールされた作画ソフトウェアにより作成される。作成されたプロジェクトデータ16は、作画支援装置10からプログラマブル表示器20に転送される。プログラマブル表示器20に転送されたプロジェクトデータ16は、例えば、プログラマブル表示器20が備える表示プログラムにより読み込まれて展開され、プログラマブル表示器20に表示される画面の表示制御に直接関与する。また、作成されたプロジェクトデータ16は、記憶回路15に記憶され、例えば、再び作画ソフトウェアで取り込み再利用することが可能である。作画ソフトウェア上に取り込まれたプロジェクトデータ16は、例えば、出力インタフェース13を介してその内容が画面表示される。なお、プロジェクトデータ16は、テキストエディタやスプレッドシートアプリケーション等の汎用エディタで読み書き可能なデータ形式を有しておらず、例えば、作画ソフトウェアが備えるGUI上で編集可能なデータである。
図3は、実施形態に係るプロジェクトデータ16のデータ構造を説明するための図である。図3に示されるプロジェクトデータ16は、画面表示を制御するための各種機能に関する要素(以下、機能要素と称する)で構成されている。具体的には、例えば、プロジェクト設定に関する機能要素161、画面群に関する機能要素162、バックグラウンド機能に関する機能要素163が挙げられる。また、機能要素は、階層的に構成されている。例えば、機能要素161には、監視先情報に関する機能要素1611が含まれている。また、機能要素162には、画面に関する機能要素1621、1622が含まれている。また、機能要素163には、アラーム機能に関する機能要素1631、レシピ機能に関する機能要素1632が含まれている。さらに、機能要素1621には、画面設定に関する機能要素1623、オブジェクト群に関する機能要素1624が含まれている。さらに、機能要素1624には、個々のオブジェクトに関する機能要素1625、1626が含まれている。図3において、機能要素1622、1631、1632についても同様の階層構造を有していることが分かる。そして、各機能要素には、例えば、その役割・機能等に応じて、画像データ、各種設定情報等が紐づけられている。
また、図3に示されるように、各機能要素には、機能要素毎に「機能名」及び「No.」が付されている。そして、機能要素は、例えば、「機能名」及び「No.」の組合せを識別子として識別される。具体的には、図3に示される機能要素1624について、オブジェクトの名称、すなわち「機能名」が「ランプ」、「No.」が「10001」で示され、識別子は「ランプ10001」となる。以下、この「機能名+機能中の整理番号を示すNo.」で表される識別子を機能要素IDと称する。なお、機能要素IDは、文字列と数値の組合せからなる例を示したがこれに限定されない。機能要素IDは、例えば、数値のみからなっていてもよいし、その他記号が含まれていてもよい。
また、プロジェクトデータ16に対しては、機能要素毎に情報の追加、更新、及び削除が実行される。すなわち、機能要素は、プロジェクトデータ16において編集対象となるデータセットである。また、プロジェクトデータの編集とは、機能要素単位の処理であって、少なくとも、プロジェクトデータへ機能要素を追加すること、プロジェクトデータに含まれる機能要素の内容を更新すること、及び、プロジェクトデータに含まれる機能要素を削除することが含まれる。
プロパティデータ17は、プロジェクトデータ16を編集するためのデータである。プロパティデータ17には、プロジェクトデータ16を構成するデータセットのうち、例えば、画像データ、及びデザインテーマのようなテンプレートデータ等を除くテキストデータが含まれている。プロパティデータ17は、プロジェクトデータ16とは異なり汎用エディタで読み書き可能なデータ形式を有している。具体的には、プロパティデータ17は、例えば、機能要素IDと、機能要素IDで特定される機能要素が有する編集可能な属性を表す属性名称と、その属性に設定された属性値とが関連付けられたレコード形式の情報を有する。プロパティデータ17のファイル形式は、例えば、テキスト、CSV、XML、HTML、JSON等である。なお、プロパティデータ17のファイル形式は、機能要素、属性名称、属性値との対応関係が作画ソフトウェアが認識できるものであれば形式を問わない。
また、プロパティデータ17には対象範囲情報を含めることができる。対象範囲情報により、プロパティデータのインポートによって編集されるプロジェクトデータの範囲を限定することが出来る。なお、対象範囲情報は、省略可能である。
図4は、実施形態に係るプロパティデータ17のデータ構造を説明するための図である。図4に示されるように、プロパティデータ17は、テキストデータを有している。図4に示されるプロパティデータ17では、対象範囲情報によりプロジェクトデータ16に対する編集の対象範囲が限定されている。
図4に示される範囲R1には、対象範囲情報が含まれている。図4に示される範囲R1では、編集対象となる母集団が識別子「画面101」の機能要素であることが示されている。また、編集対象となる機能の機能名が「ランプ」、「数値表示」であることが示されている。
図4に示される範囲R2には、機能要素に関するレコードセットを表す情報が含まれている。具体的には、図4に示される範囲R2には、例えば、レコードを構成する項目を表す機能名、No.、属性名称、属性値が紐づけられたレコードセットを表す情報が含まれている。具体的には、例えば、「機能名:ランプ」、「No.:10001」、「属性名称:画面」、及び「属性値:画面101」であるレコードが含まれている。なお、このレコードの機能要素IDは、機能名にNo.を加えた「ランプ10001」となる。また、プロパティデータ17において、1つの機能要素IDに対応するレコードは複数であってもよく、例えば、図4によれば、機能要素ID「ランプ10001」に対応する2つ目のレコードとして、「機能名:ランプ」、「No.:10001」、「属性名称:デバイス」、及び「属性値:Y1」であるレコードが含まれている。他のレコードについては同様のデータ構造であるため、説明を省略する。
記憶回路15は、処理回路11からの制御に応じ、記憶しているデータを読み出す。例えば、記憶回路15は、処理回路11からの制御に応じ、記憶しているプログラムを読み出す。また、記憶回路15は、処理回路11からの制御に応じ、プロジェクトデータ16、プロパティデータ17、及びその他記憶している各種データを読み出す。
本実施形態に係る処理回路11は、本実施形態に係るプログラムを実行することにより、例えば、図3に示されるプロジェクトデータ16を編集する。具体的には、処理回路11は、例えば、記憶回路15に記憶されるプログラムを実行することで、取得機能111、差分抽出機能112、及び編集機能113を実現する。
取得機能111は、プロジェクトデータを編集するためのプロパティデータ17を取得する機能である。取得機能111において処理回路11は、例えば、ユーザの操作を起点としてプロパティデータ17を取得する。具体的には、ユーザは、汎用エディタ、又は設計書をプロパティデータの形式に変換するツールの利用等の任意の方法でプロパティデータ17を作成し、作成されたプロパティデータ17を作画支援装置10に入力する操作を実行する。このとき、プロパティデータ17の内容が反映される対象となるプロジェクトデータ16は、例えば、作画ソフトウェアに読み込まれており、処理回路11が参照可能である。処理回路11は、プロパティデータ17の入力操作がなされると、入力されたプロパティデータ17を取得する。
差分抽出機能112は、プロジェクトデータ16と対応するプロパティデータ17とを比較し、その差分を抽出する機能である。差分抽出機能112において処理回路11は、例えば、プロジェクトデータ16及びプロパティデータ17とで共通に認識可能なIDを用いて、両データの差分を抽出する。IDは、例えば、機能要素IDである。
編集機能113は、差分抽出機能112の実行により抽出されたプロジェクトデータ16とプロパティデータ17との差分に基づいて、プロジェクトデータ16を編集する機能である。編集機能113において処理回路11は、例えば、プロパティデータ17のみに所定の機能要素が含まれていた場合、当該機能要素をプロジェクトデータ16に追加する。具体的には、処理回路11は、例えば、プロパティデータ17に含まれる所定の機能要素に関するレコードの情報を、必要に応じて画像データ、各種設定情報等を紐づけてプロジェクトデータ16に反映させる。これにより、プロジェクトデータ16に所定の機能要素の内容が追加される。また、処理回路11は、例えば、プロジェクトデータ16及びプロパティデータ17の両方に所定の機能要素が含まれていた場合、プロパティデータ17の内容でプロジェクトデータ16の内容を更新する。また、処理回路11は、例えば、プロジェクトデータ16のみに特定のIDを有する機能要素が含まれていた場合、当該機能要素をプロジェクトデータ16から削除する。
以上のように構成された作画支援装置10による動作を、処理回路11の処理手順に従って説明する。図5は、実施形態に係る作画支援装置10の動作例を示す図である。図6は、実施形態に係る作画支援装置10が実行する差分抽出処理の例を示す図である。以降では、図5のフローチャート、図6のフローチャートを参照しながら説明する。
本動作例では、所定の時点で作成されたプロジェクトデータ16が作画ソフトウェア上に読み込まれており、このプロジェクトデータ16に対して、対応するプロパティデータ17の内容が反映されるものとする。このとき、プロパティデータ17は、例えば、ユーザの操作を起点として作画ソフトウェアに取り入れられるものとする。なお、ユーザは、事前に、任意の方法でプロパティデータ17を作成し、一度プロジェクトデータ16にその内容を反映するものとする。そして、ユーザは、プロジェクトデータ16への反映後、プロパティデータ17に対して所定の編集処理を行うものとする。そして、ユーザは、作画ソフトウェアに編集後のプロパティデータ17を入力する操作を実行するものとする。そして、処理回路11は、編集後のプロパティデータ17の入力操作がなされると、取得機能111を実行するものとする。
また、編集後のプロパティデータ17に含まれる対象範囲情報として、編集対象となる母集団は「画面101」、編集対象となる機能は「ランプ」であるものとする。対象範囲情報は、例えば、プロジェクトデータ16に含まれる機能要素のうちどの機能要素群を編集対象とするかを示す情報である。また、編集後のプロパティデータ17に含まれる機能要素に関するレコードセットを表す情報として、「機能名:ランプ」、「No.:10001」、「属性名称:画面」、及び「属性値:画面101」であるレコード、「機能名:ランプ」、「No.:10001」、「属性名称:デバイス」、及び「属性値:Y1」であるレコード、「機能名:ランプ」、「No.:10001」、「属性名称:色」、及び「属性値:赤」であるレコード、「機能名:ランプ」、「No.:10002」、「属性名称:画面」、及び「属性値:画面101」であるレコード、「機能名:ランプ」、「No.:10002」、「属性名称:デバイス」、及び「属性値:Y2」であるレコード、並びに、「機能名:ランプ」、「No.:10002」、「属性名称:色」、及び「属性値:赤」であるレコードが含まれているものとする。
なお、母集団「画面101」の下層には、例えば、図3に示される機能要素ID「オブジェクト群3001」である機能要素が存在するが、対象機能を「ランプ」とすることで、機能要素ID「オブジェクト群3001」である機能要素の1つ下層である機能要素について限定して指定することが可能となる。
また、編集前のプロパティデータ17、すなわち上記のようにユーザにより新規作成されたプロパティデータ17の内容が反映されたプロジェクトデータ16に含まれる情報として、編集対象となる母集団に対応する機能要素ID「画面101」、かつ、機能が「ランプ」である機能要素には、機能要素ID「ランプ10001」、「ランプ10003」の機能要素のみが含まれているものとする。
すなわち、編集前のプロパティデータ17に含まれる機能要素に関するレコードセットを表す情報として、「機能名:ランプ」、「No.:10001」、「属性名称:画面」、及び「属性値:画面101」であるレコード、「機能名:ランプ」、「No.:10001」、「属性名称:デバイス」、及び「属性値:Y1」であるレコード、「機能名:ランプ」、「No.:10001」、「属性名称:色」、及び「属性値:赤」であるレコード、「機能名:ランプ」、「No.:10003」、「属性名称:画面」、及び「属性値:画面101」であるレコード、「機能名:ランプ」、「No.:10003」、「属性名称:デバイス」、及び「属性値:Y3」であるレコード、並びに、「機能名:ランプ」、「No.:10003」、「属性名称:色」、及び「属性値:赤」であるレコードが含まれているものとする。
図5において、処理回路11は、編集後のプロパティデータ17の入力操作がなされると、取得機能111を実行し、入力されたプロパティデータ17を取得する(ステップS1)。このとき、処理回路11は、例えば、プロパティデータ17の対象範囲情報に該当する範囲の機能要素を、プロジェクトデータ16から抽出する。具体的には、母集団として機能要素IDが「画面101」である機能要素に含まれる機能要素のうち、機能名「ランプ」を含む機能要素IDを有する機能要素を抽出する。
処理回路11は、プロパティデータ17を取得すると、差分抽出機能112を実行し、プロジェクトデータ16と、プロパティデータ17とを比較し、その差分を抽出する(ステップS2)。具体的には、処理回路11は、プロジェクトデータ16を構成する機能要素を特定する識別子、すなわち機能要素IDに基づいて、プロジェクトデータ16と、プロパティデータ17とを比較し、その差分を抽出する。以後、この差分抽出処理の具体的フローについて、図6を参照しながら説明する。
図6において、処理回路11は、機能要素IDに基づいて、プロパティデータ17内の機能要素を1つ読み出す(ステップS21)。具体的には、処理回路11は、例えば、「機能名:ランプ」、「No.:10001」、「属性名称:画面」、及び「属性値:画面101」であるレコードを読み出す。なお、「機能名:ランプ」、「No.:10001」、「属性名称:デバイス」、及び「属性値:Y1」であるレコード、並びに、「機能名:ランプ」、「No.:10001」、「属性名称:色」、及び「属性値:赤」であるレコードについては、「機能名」及び「No.」が同一、すなわち機能要素IDが同一であるため、その後の処理においては、確認済のレコードとして取り扱われる。
処理回路11は、「機能名:ランプ」、「No.:10001」、「属性名称:画面」、及び「属性値:画面101」であるレコードを読み出すと、読み出したレコードから特定される機能要素に対応する機能要素をプロジェクトデータ16において検索する(ステップS22)。具体的には、処理回路11は、機能要素IDが「ランプ10001」である機能要素をプロジェクトデータ16において検索する。
そして、処理回路11は、プロジェクトデータ16に対応する機能要素があるか否か判定する(ステップS23)。このとき、処理回路11は、機能要素ID「ランプ10001」である機能要素がプロジェクトデータ16に存在するため(ステップS23のYes)、プロパティデータ17から読み出した機能要素が「両データに存在」することを記憶する(ステップS24)。具体的には、処理回路11は、差分抽出結果データを作成し、レコードを構成する項目として機能要素ID、比較結果を設定する。処理回路11は、例えば、差分抽出結果データに、「機能要素ID:ランプ10001」、及び「比較結果:両データに存在」であるレコードを記憶する。なお、差分抽出結果データは、例えば、差分抽出処理毎に作成される。
処理回路11は、ステップS24を実行した後、プロパティデータ17に未確認の機能要素があるか否か判定する(ステップS26)。このとき、処理回路11は、プロパティデータ17に機能要素ID「ランプ10002」の機能要素に対応する未確認レコードが残っているため、プロパティデータ17に未確認の機能要素があると判定し(ステップS26のYes)、機能要素IDに基づいて、プロパティデータ17内の未確認の機能要素を1つ読み出す(ステップS21)。具体的には、処理回路11は、例えば、「機能名:ランプ」、「No.:10002」、「属性名称:画面」、及び「属性値:画面101」であるレコードを読み出す。なお、「機能名:ランプ」、「No.:10002」、「属性名称:デバイス」、及び「属性値:Y2」であるレコード、並びに、「機能名:ランプ」、「No.:10002」、「属性名称:色」、及び「属性値:赤」であるレコードについては、「機能名」及び「No.」が同一、すなわち機能要素IDが同一であるため、その後の処理においては、確認済のレコードとして取り扱われる。
処理回路11は、「機能名:ランプ」、「No.:10002」、「属性名称:画面」、及び「属性値:画面101」であるレコードを読み出すと、読み出したレコードから特定される機能要素に対応する機能要素をプロジェクトデータ16において検索する(ステップS22)。具体的には、処理回路11は、機能要素IDが「ランプ10002」である機能要素をプロジェクトデータ16において検索する。
そして、処理回路11は、プロジェクトデータ16に対応する機能要素があるか否か判定する(ステップS23)。このとき、処理回路11は、機能要素ID「ランプ10002」である機能要素がプロジェクトデータ16に存在しないため(ステップS23のNo)、プロパティデータ17から読み出した機能要素が「プロパティデータのみに存在」することを記憶する(ステップS25)。具体的には、処理回路11は、例えば、差分抽出結果データに、「機能要素ID:ランプ10002」、及び「比較結果:プロパティデータのみに存在」であるレコードを記憶する
処理回路11は、ステップS25を実行した後、プロパティデータ17に未確認の機能要素があるか否か判定する(ステップS26)。このとき、処理回路11は、プロパティデータ17には未確認レコードは残っていないため、プロパティデータ17に未確認の機能要素がないと判定し(ステップS26のNo)、機能要素IDに基づいて、プロジェクトデータ16内の機能要素を1つ読み出す(ステップS27)。具体的には、処理回路11は、プロジェクトデータ16において編集対象となる母集団「画面101」、及び編集対象となる機能「ランプ」の編集対象範囲のうち、機能要素ID「ランプ10001」である機能要素をプロジェクトデータ16から読み出す。
処理回路11は、プロジェクトデータ16から読み出した機能要素がプロパティデータ17にも存在するか否か判定する(ステップS28)。具体的には、処理回路11は、例えば、読み出した機能要素がステップS23において「両データに存在」すると判定されたか否かで判断する。このとき、機能要素ID「ランプ10001」である機能要素はステップS23で「両データに存在」すると判定されているため、処理回路11は、機能要素ID「ランプ10001」である機能要素はプロパティデータ17にも存在すると判定し(ステップS28のYes)、プロジェクトデータ16に未確認の機能要素があるか否か判定する(ステップS30)。
このとき、処理回路11は、プロジェクトデータ16に機能要素ID「ランプ10003」である未確認の機能要素が残っているため、プロジェクトデータ16に未確認の機能要素があると判定し(ステップS30のYes)、機能要素IDに基づいて、プロジェクトデータ16内の未確認の機能要素を1つ読み出す(ステップS27)。具体的には、処理回路11は、プロジェクトデータ16において編集対象となる母集団「画面101」、及び編集対象となる機能「ランプ」の編集対象範囲のうち、機能要素ID「ランプ10003」である機能要素をプロジェクトデータ16から読み出す。
処理回路11は、プロジェクトデータ16から読み出した機能要素がプロパティデータ17にも存在するか否か判定する(ステップS28)。具体的には、処理回路11は、例えば、読み出した機能要素がステップS23において「両データに存在」すると判定されたか否かで判断する。このとき、機能要素ID「ランプ10003」である機能要素はステップS23で「両データに存在」すると判定されていないため、処理回路11は、機能要素ID「ランプ10003」である機能要素はプロパティデータ17に存在しないと判定し(ステップS28のNo)、読み出した機能要素が「プロジェクトデータのみに存在」することを記憶する(ステップS29)。具体的には、処理回路11は、例えば、差分抽出結果データに、「機能要素ID:ランプ10003」、及び「比較結果:プロジェクトデータのみに存在」であるレコードを記憶する。
処理回路11は、ステップS29を実行した後、プロジェクトデータ16に未確認の機能要素があるか否か判定する(ステップS30)。このとき、処理回路11は、プロジェクトデータ16に未確認の機能要素は残っていないため、プロジェクトデータ16に未確認の機能要素がないと判定し(ステップS30のNo)、差分抽出処理を終了する。
図7は、実施形態に係る差分抽出結果データの例を示す図である。図7によれば、機能要素ID「ランプ10001」の機能要素は、「両データに存在」していたことが分かる。また、機能要素ID「ランプ10002」の機能要素は、「プロパティデータのみに存在」していたことが分かる。また、機能要素ID「ランプ10003」の機能要素は、「プロジェクトデータのみに存在」していたことが分かる。
以後、図5に戻ってステップS3から説明する。
図5において、処理回路11は、差分抽出処理を実行した後、編集機能113を実行し、例えば、作成された差分抽出結果データに基づいて、プロジェクトデータ16を編集する。
処理回路11は、例えば、ステップS2の差分抽出処理で作成した図7に示される差分抽出結果データから1レコード読み出す(ステップS3)。具体的には、処理回路11は、機能要素ID「ランプ10001」であるレコードを差分抽出結果データから読み出す。
処理回路11は、読み出したレコードの比較結果項目を参照する(ステップS4)。具体的には、処理回路11は、機能要素ID「ランプ10001」であるレコードの比較結果項目の内容を参照する。
処理回路11は、機能要素ID「ランプ10001」であるレコードの比較結果項目の内容は「両データに存在」であるため(ステップS4の「両データに存在」)、プロジェクトデータ16の機能要素をプロパティデータ17の機能要素の内容で更新する(ステップS6)。具体的には、処理回路11は、機能要素ID「ランプ10001」である機能要素について、プロパティデータ17の内容でプロジェクトデータ16に含まれる機能要素の内容を更新する。なお、処理回路11は、更新対象となる機能要素の内容に変更があるか否かを事前にチェックし、変更がない場合は、更新処理をスキップするようにしてもよい。
処理回路11は、ステップS6を実行した後、差分抽出結果データに未確認のレコードがあるか否か判定する(ステップS8)。このとき、処理回路11は、差分抽出結果データに機能要素ID「ランプ10002」、及び「ランプ10001」である未確認のレコードが残っているため、差分抽出結果データに未確認の機能要素があると判定し(ステップS8のYes)、差分抽出結果データから未確認のレコードを1レコード読み出す(ステップS3)。具体的には、処理回路11は、例えば、機能要素ID「ランプ10002」であるレコードを差分抽出結果データから読み出す。
処理回路11は、読み出したレコードの比較結果項目を参照する(ステップS4)。具体的には、処理回路11は、機能要素ID「ランプ10002」であるレコードの比較結果項目の内容を参照する。
処理回路11は、機能要素ID「ランプ10002」であるレコードの比較結果項目の内容は「プロパティデータのみに存在」であるため(ステップS4の「プロパティデータのみに存在」)、機能要素ID「ランプ10002」に対応する機能要素をプロジェクトデータ16へ追加する(ステップS5)。具体的には、処理回路11は、プロパティデータ17に含まれる「機能名:ランプ」、「No.:10002」、「属性名称:画面」、及び「属性値:画面101」であるレコードの内容をプロジェクトデータ16に新規反映する。
処理回路11は、ステップS5を実行した後、差分抽出結果データに未確認のレコードがあるか否か判定する(ステップS8)。
このとき、処理回路11は、差分抽出結果データに機能要素ID「ランプ10001」である未確認のレコードが残っているため、差分抽出結果データに未確認の機能要素があると判定し(ステップS8のYes)、差分抽出結果データから未確認のレコードを1レコード読み出す(ステップS3)。具体的には、処理回路11は、機能要素ID「ランプ10003」であるレコードを差分抽出結果データから読み出す。
処理回路11は、読み出したレコードの比較結果項目を参照する(ステップS4)。具体的には、処理回路11は、機能要素ID「ランプ10003」であるレコードの比較結果項目の内容を参照する。
処理回路11は、機能要素ID「ランプ10003」であるレコードの比較結果項目の内容は「プロジェクトデータのみに存在」であるため(ステップS4の「プロジェクトデータのみに存在」)、機能要素ID「ランプ10003」に対応する機能要素をプロジェクトデータ16から削除する(ステップS7)。具体的には、処理回路11は、プロジェクトデータ16に含まれる機能要素ID「ランプ10003」に関連する属性名称、属性値等の関連情報をプロジェクトデータ16から削除する。
処理回路11は、ステップS5を実行した後、差分抽出結果データに未確認のレコードがあるか否か判定する(ステップS8)。このとき、処理回路11は、差分抽出結果データに未確認のレコードは残っていないため、差分抽出結果データに未確認の機能要素がないと判定し(ステップS8のNo)、処理を終了する。
次に、新規作成されたプロパティデータの内容がプロジェクトデータに反映され、その後、新規作成されたプロパティデータの内容が変更され、その変更内容がプロジェクトデータに反映される流れについて説明する。
以下の説明では、プロジェクトデータ16において編集対象となる母集団は「画面101」、編集対象となる機能は「ランプ」であるものとする。また、編集前のプロパティデータ17に含まれる機能要素に関するレコードセットを表す情報、及び、編集後のプロパティデータ17に含まれる機能要素に関するレコードセットを表す情報については、上記動作例、差分抽出処理の説明の前提として述べたものと同様であるものとする。
図8は、実施形態に係る編集前のプロパティデータ17、プロジェクトデータ16の関係を説明するための図である。図8では、汎用エディタを介して表示されるプロパティデータ17の内容を表す画面、プロパティデータ17として出力されたcsvファイル、及び作画ソフトウェアを介して表示されるプロジェクトデータ16の内容を表す画面が示されている。
図8によれば、汎用エディタによりプロパティデータ17に出力するための情報が編集され、プロパティデータ17が新規作成される。図8に示されるように、例えば、プロパティデータ17が作成されたタイムスタンプは「2022/8/1 13:00」であり、保存されたプロパティデータのファイルパスは「D:¥Work¥HMIDesign¥PD.csv」である。
また、図8によれば、新規作成されたプロパティデータ17は、例えば、処理回路11により作画ソフトウェアに取り込まれる。取り込まれたプロパティデータ17の内容は、例えば、図5及び図6に示されるような処理によりプロジェクトデータ16に反映される。図8によれば、新規作成されたプロパティデータ17の内容がプロジェクトデータ16に反映された結果、機能要素ID「画面101」の機能要素に含まれる機能要素であって、デバイス「Y1」に関する「赤」色のランプ表示に関する機能要素、及び、デバイス「Y3」に関する「赤」色のランプ表示に関する機能要素を表す画像が2つ表示されている。このランプ表示に関する2つの機能要素の「No.」は、図8に示されるように、「10001」、及び「10003」であり、機能要素IDは「ランプ10001」、「ランプ10003」であることが分かる。
図9は、実施形態に係る編集後のプロパティデータ、プロジェクトデータの関係を説明するための図である。図9では、汎用エディタを介して表示されるプロパティデータ17の内容を表す画面、プロパティデータ17として出力されたcsvファイル、及び作画ソフトウェアを介して表示されるプロジェクトデータ16の内容を表す画面が示されている。
図9によれば、まず、図8において新規作成されたプロパティデータ17の内容が汎用エディタ上で編集される。編集の内容は、機能要素ID「ランプ10002」に関するレコードの追加、及び、機能要素ID「ランプ10003」に関するレコードの削除である。この編集結果は、プロパティデータ17に出力され、編集後のプロパティデータ17が作成される。図9に示されるように、例えば、編集後のプロパティデータ17が作成されたタイムスタンプは「2022/8/2 14:00」であり、保存されたプロパティデータのファイルパスは「D:¥Work¥HMIDesign¥PD.csv」である。これにより、図8において新規作成されたプロパティデータ17は、編集後のプロパティデータ17で上書きされる。
また、図9によれば、新規作成されたプロパティデータ17は、例えば、処理回路11により作画ソフトウェアに取り込まれる。取り込まれたプロパティデータ17の内容は、例えば、図5及び図6に示されるような処理によりプロジェクトデータ16に反映される。図9によれば、編集後のプロパティデータ17の内容がプロジェクトデータ16に反映された結果、機能要素ID「画面101」の機能要素に含まれる機能要素であって、デバイス「Y2」に関する「赤」色のランプ表示に関する機能要素(機能要素ID「ランプ10002」)を表す画像が1つ追加されている。また、図9によれば、編集後のプロパティデータ17の内容がプロジェクトデータ16に反映された結果、機能要素ID「画面101」の機能要素に含まれる機能要素であって、デバイス「Y3」に関する「赤」色のランプ表示に関する機能要素(機能要素ID「ランプ10003」)を表す画像が1つ削除されている。
このように、新規作成されたプロパティデータ17の内容がその後編集されて一部の機能要素が削除された場合であっても、図5及び図6に示されるような処理を実行することにより、ユーザの手を介さずに、その編集内容をプロジェクトデータ16に反映することが可能となる。
上記実施形態によれば、処理回路11は、プログラマブル表示器20に表示される画面の表示を制御するために作成されたプロジェクトデータ16を編集するためのプロパティデータ17を取得する。処理回路11は、プロパティデータ17とプロジェクトデータ16とを比較し、その差分を抽出する。処理回路11は、抽出した差分に基づいて、プロジェクトデータ16を編集する。
これにより、例えば、プロパティデータ17の内容をプロジェクトデータ16に一度反映させた後、プロパティデータ17に機能要素を追加、又は、削除されるような変更を加えた場合でも、ユーザの手を介さずに、その変更内容をプロジェクトデータ16に反映させることが可能となる。
したがって、本実施形態によれば、プログラマブル表示器に表示される画面の表示を制御するためのプロジェクトデータの編集効率を向上させることが可能となる。
(変形例)
以上、本開示の実施形態を説明したが、本開示を実施するにあたっては、種々の形態による変形及び応用が可能である。具体的には、上記実施形態では、編集後のプロパティデータとプロジェクトデータとの差分が抽出され、抽出された差分に基づいてプロジェクトデータが編集される場合について説明した。変形例では、プロパティデータが定期的に監視され、プロパティデータの状態が変更されていた場合に、その変更が外部に通知される場合について説明する。また、変形例では、プロパティデータに含まれる情報が一部不足していた場合に、当該不足している情報が補完される場合について説明する。また、変形例では、編集対象となるプロジェクトデータが存在しない場合でも、プロパティデータの入力が受付られた場合に、プロジェクトデータが新規作成され、新規作成されたプロジェクトデータにプロパティデータの内容が反映される場合について説明する。
図10は、変形例に係る作画支援システム1Aの構成例を示す図である。
作画支援システム1Aは、作画支援装置10A、及びプログラマブル表示器20を含むシステムである。作画支援装置10Aとプログラマブル表示器20とは、通信可能に接続されている。
図11は、変形例に係る作画支援装置10Aの構成例を示す図である。
作画支援装置10Aは、処理回路11A、入力インタフェース12、出力インタフェース13、通信インタフェース14、及び記憶回路15を有する。
変形例に係る処理回路11Aは、変形例に係るプログラムを実行することにより、例えば、図3に示されるプロジェクトデータ16を編集する。具体的には、処理回路11Aは、例えば、記憶回路15に記憶されるプログラムを実行することで、取得機能111、差分抽出機能112、編集機能113、監視機能114、補完機能115、及び新規作成機能116を実現する。
取得機能111、差分抽出機能112、及び編集機能113については、上記実施形態と同様であるため説明を省略する。
監視機能114は、例えば、プロパティデータ17を定期的に監視し、プロパティデータ17の状態が変更されていた場合に、その変更を外部に通知する機能である。監視機能114において処理回路11Aは、記憶回路15に記憶されている所定の時間間隔でプロパティデータ17を参照する。このとき、処理回路11Aは、例えば、監視先の情報を編集対象となるプロジェクトデータ16に紐づけて予め記憶しておく。監視先の情報は、例えば、プロパティデータ17のファイルパスや最終更新日時のタイムスタンプである。
処理回路11Aは、例えば、プロパティデータ17が格納されているファイルパスを所定の間隔で参照する。そして、処理回路11Aは、例えば、プロパティデータ17のタイムスタンプの情報を取得する。処理回路11Aは、取得したタイムスタンプの情報が更新されている場合、その変更を、例えば、出力インタフェース13等を介してユーザに通知する。
また、処理回路11Aは、例えば、プロパティデータ17が削除されていた場合、プロパティデータ17が削除された旨を、例えば、出力インタフェース13等を介してユーザに通知する。
また、監視機能114において処理回路11Aは、プロパティデータ17の状態が変更されていた場合に、その変更内容を、例えば、取得機能111、差分抽出機能112、及び編集機能113に通知し、編集対象となるプロジェクトデータ16に反映させるようにしてもよい。
補完機能115は、例えば、プロジェクトデータの内容を更新する際に、プロパティデータに含まれる情報が一部不足していた場合に、当該不足している情報を補完する機能である。補完機能115において処理回路11Aは、例えば、入力インタフェース12等を介してプロパティデータ17の入力を受け付ける。処理回路11Aは、入力されたプロパティデータ17の内容を取得する。このとき、処理回路11Aは、取得したプロパティデータ17の情報が一部不足していると判定した場合は、所定の方法により当該不足している情報を補完し、プロパティデータ17の内容を更新する。
新規作成機能116は、編集対象となるプロジェクトデータが存在しない場合でも、例えば、プロパティデータの入力が受付られた場合に、プロジェクトデータを新規作成し、新規作成したプロジェクトデータにプロパティデータの内容を反映する機能である。新規作成機能116において処理回路11Aは、例えば、入力インタフェース12等を介してプロパティデータ17の入力を受け付ける。このとき、処理回路11Aは、例えば、記憶回路15、又は、作画ソフトウェア用に確保されたメモリを参照し、編集対象となるプロジェクトデータ16があるか否か判定する。処理回路11Aは、編集対象となるプロジェクトデータ16がないと判定した場合、プロジェクトデータ16を新規作成する。処理回路11Aは、新規作成されたプロジェクトデータ16に対して、入力を受け付けたプロパティデータ17の内容を反映させる。
以上のように構成された作画支援装置10Aによる動作を、処理回路11Aの処理手順に従って説明する。図12は、変形例に係る作画支援装置10Aが実行する状態監視処理の例を示す図である。以降では、図12のフローチャートを参照しながら説明する。なお、本動作例では、監視機能114において処理回路11Aは、例えば、予め設定された複数の時刻において、又は、所定の時刻から所定の時間間隔で、プロパティデータ17を参照するものとする。また、プロパティデータ17にはタイムスタンプが付与され、プロパティデータ17の内容が更新されるごとに内容が更新されたときの時刻でタイムスタンプの値は更新されるものとする。
図12において、処理回路11Aは、例えば、予め設定された時刻になると、記憶回路15に記憶されたプロパティデータ17を参照する(ステップS1A)。
処理回路11Aは、プロパティデータ17の状態に変化の有無を判定する(ステップS2A)。具体的には、処理回路11Aは、例えば、プロパティデータ17に付与されたタイムスタンプを取得し、保持しているタイムスタンプの値と取得したタイムスタンプの値とを比較し、差異があるか否か判定する。
処理回路11Aは、保持しているタイムスタンプの値と取得したタイムスタンプの値との間に差異があり、プロパティデータ17の状態に変化があると判定した場合(ステップS2AのYes)、プロパティデータ17の変更を、例えば出力インタフェース13を介してユーザへ通知する(ステップS3A)。そして、処理回路11Aは、処理を終了し、予め設定されている次の時刻になるまで待機する。処理回路11Aは、予め設定されている次の時刻になると、再びステップS1Aを実行する。
なお、処理回路11Aは、保持しているタイムスタンプの値と取得したタイムスタンプの値との間に差異がなく、プロパティデータ17の状態に変化がないと判定した場合(ステップS2AのNo)、処理を終了し、予め設定されている次の時刻になるまで待機する。処理回路11Aは、予め設定されている次の時刻になると、再びステップS1Aを実行する。
図13は、変形例に係るプロパティデータ17の状態監視を説明するための図である。図13に示される図によれば、まず、例えば、記憶回路15に記憶されたプロパティデータ17の内容が作画ソフトウェア上でプロジェクトデータ16に反映される。その後、監視機能114の実行により処理回路11Aは、例えば、予め設定された第1の時刻(t=t1)になるまで待機する。その後、処理回路11Aは、予め設定された第1の時刻になると、プロパティデータ17を参照する。このとき、プロパティデータ17は変更されていないため、処理回路11Aは、参照処理を終了し、予め設定された次の第2の時刻(t=t2>t1)になるまで待機する。
その後、処理回路11Aは、予め設定された第2の時刻になると、プロパティデータ17を参照する。このとき、プロパティデータ17は変更されていないため、処理回路11Aは、参照処理を終了し、予め設定された次の第3の時刻(t=t3>t2)になるまで待機する。
このとき、図13に示されるように、第2の時刻と第3の時刻との間において、例えば、機能要素ID「ランプ10002」に関する機能要素に関するレコードがプロパティデータ17から削除される。
処理回路11Aは、予め設定された第3の時刻になると、プロパティデータ17を参照する。このとき、プロパティデータ17は変更されているため、このプロパティデータ17の変更を検知し、例えば出力インタフェース13を介してユーザへ通知する。
図14は、変形例に係るプロパティデータ17の変更が検知された際の通知方法の例を示す図である。以下、ユーザへの通知の例を図14を用いて説明する。図14は、出力インタフェース13の一例であるディスプレイに表示される作画ソフトウェアの編集用ウィンドウの例を表している。図14によれば、画面101について、「プロパティデータに未反映の変更があります」と表示されている。この表示態様としては、例えば、バッジ表示、ポップアップウィンドウ等が挙げられる。なお、このとき、処理回路11Aは、差分抽出結果を通知するようにしてもよい。
図14によれば、ユーザは、プロパティデータ17に変更があったこと、具体的には画面101の設定について変更があったことに気づくことができる。すなわち、一度プロパティデータ17の内容がプロジェクトデータ16に反映された後、プロパティデータ17が再編集されることによるプロパティデータ17とプロジェクトデータ16との間で不整合が発生していることに気づくことができる。したがって、再編集されたプロパティデータ17の変更内容をプロジェクトデータ16へ反映することの漏れを防ぐことができる。
次に、変形例において、プロパティデータ17に含まれる情報が一部不足していた場合に、当該不足している情報が補完される場合について説明する。変形例では、プロパティデータ17に含まれる機能要素に関するレコードに設定不備がある場合、作画ソフトウェアへの取り込み時に設定を補完してからプロジェクトデータ16に反映するようにしてもよい。
図15は、変形例に係るプロパティデータ17の補完処理を説明するための図である。図15では、例えば、「数値表示」機能についてNo.「10001」を使用していないプロジェクトデータ16があり、そのプロジェクトデータ16に対して、No.が設定されていない「数値表示」機能が追加される例が示されている。図15によれば、補完機能115において処理回路11Aは、プロパティデータ17が入力されると、例えば、機能名「数値表示」のレコードについて、No.の値として「10001」が設定されているとみなして補完し、機能要素ID「数値表示10001」に関するレコードの情報をプロジェクトデータ16に反映している。
また、図15では、例えば、ランプの標準設定の色が「赤」であるプロジェクトデータ16があり、そのプロジェクトデータ16に対して、色が設定されていない機能要素が追加される例が示されている。図15によれば、補完機能115において処理回路11Aは、入力されたプロパティデータ17において、例えば、「機能名:ランプ」、「No.:10001」、「属性名称:色」、及び「属性値:空欄」であるレコードについて、属性値の値として「赤」が設定されているとみなして補完し、機能要素ID「ランプ10001」に関するレコードの情報をプロジェクトデータ16に反映している。また、処理回路11Aは、例えば、「機能名:ランプ」、「No.:10002」であるレコードについて、「属性名称:色」であるレコードが存在しないが、「機能名:ランプ」、「No.:10002」、「属性名称:色」、及び「属性値:赤」であるレコードが存在するとみなして補完し、機能要素ID「ランプ10002」に関するレコードの情報をプロジェクトデータ16に反映している。
これにより、ユーザは、例えば、プロジェクトデータ16において、どの機能のどのNo.が未使用なのかを調べて設定する手間や、機能要素の各属性に設定可能な属性値を調べて設定する手間を経ずに、機能要素の追加が行える。したがって、ユーザによるプロパティデータ17の編集作業を支援することができ、プログラマブル表示器に表示される画面の表示を制御するためのプロジェクトデータの編集効率を向上させることが可能となる。
最後に、変形例において、編集対象となるプロジェクトデータが存在しない場合でも、プロパティデータの入力が受付られた場合に、プロジェクトデータが新規作成され、新規作成されたプロジェクトデータにプロパティデータの内容が反映される場合について説明する。
図16は、変形例に係る編集中のプロジェクトデータ16がない場合のプロパティデータ17の反映処理を説明するための図である。図16では、編集中のプロジェクトデータ16が存在しない作画ウィンドウW1に対して、プロパティデータ17がユーザによるドラッグアンドドロップ操作で入力される様子が示されている。
このとき、新規作成機能116において処理回路11Aは、作画ソフトウェアに編集中のプロジェクトデータ16が存在しない状態であっても、プロパティデータ17の入力があった場合、入力されたプロパティデータ17に対応するプロジェクトデータ16を新規作成したうえで、新規作成したプロジェクトデータ16にプロパティデータ17の内容を反映する。これにより、例えば、ユーザが作成済みのプロパティデータ17を編集された場合、編集前のプロパティデータ17が反映されたプロジェクトデータ16がない場合であっても、編集後のプロパティデータ17に対応するプロジェクトデータ16をユーザが準備する手間を削減できる。
なお、上記実施形態において、作画支援装置10が出力インタフェース13を含む構成としたがこれに限られない。具体的には、出力インタフェース13が作画支援装置10に外付けされ、作画支援装置10が出力インタフェース13を含まない構成であってもよい。
また、上記実施形態において、編集後のプロパティデータ17によって変更が加えられる前のプロジェクトデータ16は、ユーザが事前に任意の方法でプロパティデータ17を作成し、その内容が反映されたものであるとしたがこれに限られない。変更が加えられる前のプロジェクトデータ16は、所定の方法で作成された雛形データのようなものであってもよいし、過去に任意の方法で作成されたプロジェクトデータ16であってもよい。
また、上記実施形態に係る作画支援装置10の動作を規定する動作プログラムを既存のパーソナルコンピュータ又は情報端末装置に適用することで、当該パーソナルコンピュータ又は情報端末装置を実施形態に係る作画支援装置10として機能させることも可能である。
また、このようなプログラムの配布方法は任意であり、例えば、CD-ROM(Compact Disk Read-Only Memory)、DVD(Digital Versatile Disk)、メモリカード等のコンピュータ読み取り可能な記録媒体に格納して配布してもよいし、インターネットのような通信ネットワークを介して配布してもよい。
本開示は、本開示の広義の精神と範囲を逸脱することなく、様々な実施形態及び変形が可能とされるものである。また、上述した実施形態は、本開示を説明するためのものであり、本開示の範囲を限定するものではない。つまり、本開示の範囲は、実施形態ではなく、請求の範囲によって示される。そして、請求の範囲内及びそれと同等の開示の意義の範囲内で施される様々な変形が、本開示の範囲内とみなされる。
本開示によれば、プログラマブル表示器に表示される画面の表示を制御するためのプロジェクトデータの編集効率を向上させることが可能な作画支援プログラム、作画支援方法、作画支援装置、及び作画支援システムを提供することができる。
1,1A 作画支援システム、10,10A 作画支援装置、11,11A 処理回路、111 取得機能、112 差分抽出機能、113 編集機能、114 監視機能、115 補完機能、116 新規作成機能、12 入力インタフェース、13 出力インタフェース、14 通信インタフェース、15 記憶回路、16 プロジェクトデータ、17 プロパティデータ、20 プログラマブル表示器。

Claims (9)

  1. コンピュータに、
    プログラマブル表示器に表示される画面の表示を制御するために作成されたプロジェクトデータを編集するためのプロパティデータを取得する取得機能と、
    前記プロパティデータと前記プロジェクトデータとを比較し、その差分を抽出する差分抽出機能と、
    前記差分に基づいて、前記プロジェクトデータを編集する編集機能と、
    を実現させ、
    前記差分は、前記プロジェクトデータを構成する機能要素を特定する識別子に基づいて抽出され、
    前記プロジェクトデータは、階層構造を有し、
    前記プロパティデータは、前記階層構造の一部を編集対象として指定可能な対象範囲情報を含む、
    作画支援プログラム。
  2. 前記対象範囲情報は、前記階層構造を構成する母集団を示す情報、または、前記機能要素に付された機能名を指定可能である、
    請求項1に記載の作画支援プログラム。
  3. 前記編集機能は、所定の前記識別子を有する機能要素が前記プロジェクトデータのみに含まれていた場合、当該所定の前記識別子を有する機能要素をプロジェクトデータから削除する、
    請求項1または2に記載の作画支援プログラム。
  4. 前記プロパティデータを所定の時間間隔で参照し、前記プロパティデータの内容が変更されている場合に、当該変更を外部に通知する監視機能をさらに前記コンピュータに実現させる請求項1または2に記載の作画支援プログラム。
  5. 記プロパティデータに情報の不足がある場合、当該不足した情報を補完する補完機能と、
    さらに前記コンピュータに実現させる請求項1または2に記載の作画支援プログラム。
  6. 前記プロパティデータの入力を受け付けたとき、比較対象となる前記プロジェクトデータが存在しない場合に、前記プロパティデータに対応するプロジェクトデータを新規作成する新規作成機能をさらに前記コンピュータに実現させる請求項1または2に記載の作画支援プログラム。
  7. プログラマブル表示器に表示される画面の表示を制御するために作成されたプロジェクトデータを編集するためのプロパティデータを取得するステップと、
    前記プロパティデータと前記プロジェクトデータとを比較し、その差分を前記プロジェクトデータを構成する機能要素を特定する識別子に基づいて抽出するステップと、
    前記差分に基づいて、前記プロジェクトデータを編集するステップと、
    を含み、
    前記プロジェクトデータは、階層構造を有し、
    前記プロパティデータは、前記階層構造の一部を編集対象として指定可能な対象範囲情報を含む、
    作画支援方法。
  8. プログラマブル表示器に表示される画面の表示を制御するために作成されたプロジェクトデータを編集するためのプロパティデータを取得する取得部と、
    前記プロパティデータと前記プロジェクトデータとを比較し、その差分を抽出する差分抽出部と、
    前記差分に基づいて、前記プロジェクトデータを編集する編集部と、
    を備え、
    前記差分は、前記プロジェクトデータを構成する機能要素を特定する識別子に基づいて抽出され、
    前記プロジェクトデータは、階層構造を有し、
    前記プロパティデータは、前記階層構造の一部を編集対象として指定可能な対象範囲情報を含む、
    作画支援装置。
  9. プログラマブル表示器と、
    請求項8に記載の作画支援装置と、
    を備える作画支援システム。
JP2023547459A 2022-12-19 2022-12-19 作画支援プログラム、作画支援方法、作画支援装置、及び作画支援システム Active JP7456557B1 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022046636 2022-12-19

Publications (1)

Publication Number Publication Date
JP7456557B1 true JP7456557B1 (ja) 2024-03-27

Family

ID=90366984

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2023547459A Active JP7456557B1 (ja) 2022-12-19 2022-12-19 作画支援プログラム、作画支援方法、作画支援装置、及び作画支援システム

Country Status (1)

Country Link
JP (1) JP7456557B1 (ja)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002091558A (ja) 2000-09-12 2002-03-29 Digital Electronics Corp エディタ装置およびエディタプログラムを記録した記録媒体
JP2007034846A (ja) 2005-07-28 2007-02-08 Canon Inc 印刷システム、情報処理装置、印刷装置及びそれらの制御方法、プログラム
JP2008217573A (ja) 2007-03-06 2008-09-18 Ricoh Co Ltd 情報処理装置、情報処理方法及び情報処理プログラム
JP2011238079A (ja) 2010-05-12 2011-11-24 Mitsubishi Electric Corp 制御プログラム開発支援装置
JP2012181762A (ja) 2011-03-02 2012-09-20 Canon Inc 情報処理装置、印刷設定方法、及びコンピュータプログラム
JP2013016021A (ja) 2011-07-04 2013-01-24 Hitachi Ltd ラダープログラム作成装置およびラダープログラム作成方法
JP2013168031A (ja) 2012-02-15 2013-08-29 Fuji Electric Co Ltd プログラマブルコントローラシステム、その支援装置、プログラム

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002091558A (ja) 2000-09-12 2002-03-29 Digital Electronics Corp エディタ装置およびエディタプログラムを記録した記録媒体
JP2007034846A (ja) 2005-07-28 2007-02-08 Canon Inc 印刷システム、情報処理装置、印刷装置及びそれらの制御方法、プログラム
JP2008217573A (ja) 2007-03-06 2008-09-18 Ricoh Co Ltd 情報処理装置、情報処理方法及び情報処理プログラム
JP2011238079A (ja) 2010-05-12 2011-11-24 Mitsubishi Electric Corp 制御プログラム開発支援装置
JP2012181762A (ja) 2011-03-02 2012-09-20 Canon Inc 情報処理装置、印刷設定方法、及びコンピュータプログラム
JP2013016021A (ja) 2011-07-04 2013-01-24 Hitachi Ltd ラダープログラム作成装置およびラダープログラム作成方法
JP2013168031A (ja) 2012-02-15 2013-08-29 Fuji Electric Co Ltd プログラマブルコントローラシステム、その支援装置、プログラム

Similar Documents

Publication Publication Date Title
US20130111376A1 (en) Gui program creation supporting apparatus, gui program creation support method, computer-readable recording medium and integrated circuit
US20130135331A1 (en) Project-data creating device and programmable display device
JP2019159556A (ja) Rpa保守支援装置及びrpa保守支援プログラム
EP1221651A2 (en) Device environment configuration system, device environment configuration method, and data storage medium therefor
CN111240659A (zh) 一种基于Vue的页面设计方法
JP5921765B2 (ja) プログラムグラフ表示装置、プログラムグラフ表示方法およびプログラムグラフ表示プログラム
US20080040677A1 (en) HMI Development Support Apparatus, HMI Development Support Method and HMI Development Support Program
JP7456557B1 (ja) 作画支援プログラム、作画支援方法、作画支援装置、及び作画支援システム
US20230384766A1 (en) Information processing apparatus, ladder-program generation apparatus, information processing method, ladder-program generation method, method of manufacturing product, and recording medium
US20210165957A1 (en) Information processing apparatus and non-transitory computer readable medium storing program
JP7113765B2 (ja) コード管理システムおよびコード管理方法
US20080071593A1 (en) Business process editor, business process editing method, and computer product
JP2006221538A (ja) 測定装置及び該装置を用いた変更履歴取得方法
JP2011186720A (ja) 情報処理装置,処理方法,処理プログラム及び同プログラムを記録したコンピュータ読取可能な記録媒体
JP2007164353A (ja) コマンド列作成システムと方法およびプログラム
JP6551082B2 (ja) テスト支援装置、テスト支援方法およびテスト支援プログラム
JP2022027456A (ja) 情報処理装置、ラダープログラム生成装置、情報処理方法、ラダープログラム生成方法、物品の製造方法、プログラム、及び記録媒体
JP2009163566A (ja) ジョブ解析支援装置
JP2001273125A (ja) ソースプログラム自動生成方法およびシステム、ならびにそのプログラム記録媒体
US20220043620A1 (en) Screen creation assistance device, display device, and computer readable storage medium
JP2019211827A (ja) 支援装置
JP2000148232A (ja) 中央監視制御装置のディスプレイ画像データ作成システム
US11921688B2 (en) Environment construction support device and environment construction support method
JP5820324B2 (ja) 設計支援システム、設計支援方法およびプログラム
JP6355861B1 (ja) プログラム開発支援装置、プログラム開発支援方法、プログラム開発支援プログラムおよび記録媒体

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230804

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230804

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20230804

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231017

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231204

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240213

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240226

R151 Written notification of patent or utility model registration

Ref document number: 7456557

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151