JP2018045544A - プログラム処理装置およびプログラム - Google Patents

プログラム処理装置およびプログラム Download PDF

Info

Publication number
JP2018045544A
JP2018045544A JP2016181149A JP2016181149A JP2018045544A JP 2018045544 A JP2018045544 A JP 2018045544A JP 2016181149 A JP2016181149 A JP 2016181149A JP 2016181149 A JP2016181149 A JP 2016181149A JP 2018045544 A JP2018045544 A JP 2018045544A
Authority
JP
Japan
Prior art keywords
data
program
resource
hmi
processing apparatus
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.)
Granted
Application number
JP2016181149A
Other languages
English (en)
Other versions
JP6786984B2 (ja
Inventor
大輔 ▲高▼橋
大輔 ▲高▼橋
Daisuke Takahashi
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.)
Omron Corp
Original Assignee
Omron Corp
Omron Tateisi Electronics Co
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 Omron Corp, Omron Tateisi Electronics Co filed Critical Omron Corp
Priority to JP2016181149A priority Critical patent/JP6786984B2/ja
Priority to EP17185888.9A priority patent/EP3296860A1/en
Priority to CN201710695092.3A priority patent/CN107832050B/zh
Priority to US15/684,996 priority patent/US10295985B2/en
Publication of JP2018045544A publication Critical patent/JP2018045544A/ja
Application granted granted Critical
Publication of JP6786984B2 publication Critical patent/JP6786984B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04847Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/44Encoding
    • G06F8/443Optimisation
    • G06F8/4434Reducing the memory space required by the program code
    • G06F8/4435Detection or removal of dead or redundant code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/13Plc programming
    • G05B2219/13144GUI graphical user interface, icon, function bloc editor, OI operator interface
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • H04L67/125Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Automation & Control Theory (AREA)
  • Programmable Controllers (AREA)
  • Stored Programmes (AREA)
  • Testing And Monitoring For Control Systems (AREA)
  • Devices For Executing Special Programs (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

【課題】HMIプログラムについてメモリ消費量および転送を最適化する。
【解決手段】プログラム処理装置は、FAのためのHMIプログラムを処理するプログラム処理装置である。プログラム処理装置は、プログラム処理装置を制御する制御部を備える。制御部は、HMIプログラムのUI機能に対応した複数のUI(ユーザインターフェイス)データからなるデータ群において、少なくともデータの種類とサイズとに基づき、同一であるUIデータを検出する検出部と、同一であると検出されたUIデータについて1つ分の当該UIデータのみを含むようデータ群を変更する変更部と、を備える。
【選択図】図5

Description

この発明はプログラム処理装置およびプログラムに関し、特に、FA(Factory Automationの略)に適用されるHMI(Human Machine Interface)のためのアプリケーションプログラムの最適化を行なうプログラム処理装置およびプログラムに関する。
FAの分野に適用されるプログラマブルターミナルは、タッチパネル式の入力装置である。プログラマブルターミナルは、HMIに関して、ユーザ(この明細書においては、プログラマブルターミナルの画面を設計または実装する人を指す)が、彼らの目的に合うように画面を作成して表示し、上記のデータ入力を可能ならしめる機器である。
ユーザによるアプリケーションの作成を効率化する方法として、頻繁に利用されるオブジェクトまたはプログラムの組合せを、予めパッケージ化しておき、そのパッケージを繰返し使用する方法がある。たとえば、特許文献1(特表2016−506559号公報)は、パッケージに対応したオブジェクトの再使用を容易化するための方法を開示する。
特表2016−506559号公報
パッケージは、他のパッケージとは独立して作成されるため、パッケージ内に他のパッケージと同一のリソース(画像ファイル、または動画ファイルなど)が含まれる場合がある。異なるパッケージに同一のリソースがそれぞれ含まれる場合は、プログラマブルターミナルなどのデバイスの内部のストレージの消費量、またはアプリケーションの動作に必要なメモリ容量、またはリソースのロード処理が必要以上に増加するという課題があった。特許文献1は、この課題を解消する方法を提案しない。
それゆえに本開示の目的は、HMIプログラムについてメモリ消費量および転送を最適化するプログラム処理装置およびプログラムを提供することである。
この開示のある局面にかかるプログラム処理装置は、FA(ファクトリオートメーション)のためのHMI(ヒューマンマシンインターフェース)プログラムを処理するプログラム処理装置である。プログラム処理装置は、プログラム処理装置を制御する制御部を備える。制御部は、HMIプログラムのUI機能に対応した複数のUI(ユーザインターフェイス)データからなるデータ群において、少なくともデータの種類とサイズとに基づき、同一であるUIデータを検出する検出部と、同一であると検出されたUIデータについて1つ分の当該UIデータのみを含むようデータ群を変更する変更部と、を備える。
好ましくは、データ群は、UIデータを格納するための複数のライブラリを含み、検出部は、異なるライブラリに格納されたUIデータのうち、少なくともデータの種類とサイズとに基づき、同一であるUIデータを検出する一致検出部を含み、変更部は、同一であると検出された1つ分のUIデータのみを含むよう複数のライブラリを変更するライブラリ変更部を含む。
好ましくは、検出部は、データ群のUIデータが作成されるときに上記の同一を検出する。
好ましくは、検出部は、HMIプログラムがコンパイルされるときに上記の同一を検出する。
好ましくは、同一であると検出されたUIデータは、上記の1つ分のUIデータと他のUIデータからなる。制御部は、さらに、HMIプログラム中の上記の他のUIデータを参照する部分に、上記の1つ分のUIデータへの参照を指示する参照データを設定する参照先設定部を備える。
好ましくは、参照先設定部は、HMIプログラムがコンパイルされるときに、参照データの設定を実施する。
好ましくは、プログラム処理装置は、ディスプレイと、ディスプレイを表示データに従い制御する表示コントローラと、を備える。
制御部は、さらに、上記の他のUIデータの識別子と、当該他のUIデータの参照部分に設定される上記の1つ分のUIデータの識別子との関連付け情報を作成する作成部を、含む。制御部は、作成された関連付け情報を表示するための表示データを表示コントローラに出力する。
この開示の他の局面ではプログラムが提供される。このプログラムは、FAのためのHMIプログラムを処理する方法を、情報処理装置のプロセッサに実行させるためのプログラムである。上記の方法は、HMIプログラムのUI機能に対応した複数のUI(ユーザインターフェイス)データからなるデータ群において、少なくともデータの種類とサイズとに基づき、同一であるUIデータを検出するステップと、同一であると検出されたUIデータについて1つ分のUIデータのみを含むようデータ群を変更するステップと、を備える。
実施の形態1にかかるプログラマブルシステムの構成を概略的に示す図である。 実施の形態1にかかるPC100の構成を概略的に示す図である。 実施の形態1にかかるプログラマブルターミナル4の構成を概略的に示す図である。 実施の形態1にかかるHMIプログラムの開発環境を概略的に示す図である。 実施の形態1にかかるコンパイラ10Bとその周辺部を模式的に示す図である。 実施の形態1にかかる処理フローチャートである。 実施の形態1にかかるリソースRが削除される過程を模式的に示す図である。 実施の形態1にかかるリソースRが削除される過程の具体例を示す図である。 実施の形態1にかかるリソースRが削除される過程の具体例を示す図である。 実施の形態1にかかるリソースRが削除される過程の具体例を示す図である。 実施の形態1にかかるリソースRが削除される過程の具体例を示す図である。 同一のリソースRが作成されるケースを説明するための図である。 同一のリソースRが作成されるケースを説明するための図である。 同一のリソースRが作成されるケースを説明するための図である。 同一のリソースRが作成されるケースを説明するための図である。 同一のリソースRが作成されるケースを説明するための図である。 実施の形態1にかかる類似しているリソースRの画像を模式的に示す図である。 実施の形態1にかかるリソース削除の可否をユーザに問合せる画面の一例を示す図である。
以下に、図面を参照しつつ、各実施の形態について説明する。以下の説明では、同一の部品および構成要素には同一の符号を付してある。それらの名称および機能も同じである。したがってそれらについての詳細な説明は繰返さない。
[用語の説明]
「HMIプログラム」は、アプリケーションプログラムである。「HMIプログラム」は、プログラマブルターミナルを動作させるために必要な画面上のオブジェクト配置またはプログラムコード、各種の設定データなどを含む。
UI(User Interface)ライブラリは、HMIプログラムで利用(再利用)できるUI部品のライブラリ(ファイル)である。UI部品は、UIデータに相当した画像データ、文字列データ、プログラムコードを含む。HMIプログラムが実行されるとき、UI部品によるUI機能(画像表示、データ入出力、操作受付などの機能)が提供される。
「リソース」は、画像データおよび文字列データなどの画面データに組込まれるデータを含む。また、リソースには、プログラムコードが含まれてもよい。UIライブラリには、UI部品としてリソースのデータがファイル形式で含まれる。
「プロジェクト」は、1つのアプリケーションプログラムを構成するための情報である。
「UIライブラリプロジェクト」は、上記のUIライブラリを作成するためのプロジェクトである。
「標準プロジェクト」は、HMIプログラムを作成するためのプロジェクトである。HMIプログラムの「プロジェクト」は、HMIプログラムが参照するリソースデータを有した1以上のUIライブラリ、ページ一覧データ、変数定義、ユーザが定義したデータ型、通信の設定データなどを含む。
「UIライブラリパッケージ」は、UIライブラリを標準プロジェクトにインポートできるようにするために、UIライブラリを構成する外観定義、プログラムコード、リソースを1つのファイルにまとめたものである。「UIライブラリパッケージ」は、UIライブラリプロジェクトから予め定められた操作が実施された場合に生成される。
[実施の形態1]
(概要)
実施の形態1では、HMIアプリケーション処理装置(以下、処理装置と称する)は、標準プロジェクトに含まれるリソース(UI部品またはUI機能を提供するUIデータに相当)の全部を「データの種類」と「データ長」との両方が一致するものどうしでグループ化する。処理装置は、「データの種類」を、リソースのデータを格納したファイルの拡張子に基づき判別する。
続いて、処理装置は、各グループについて1つ分のリソースを残し、他のリソースを削除する(削除処理)。この削除処理に伴い、処理装置は、標準プロジェクトのHMIプログラムを、削除されたリソースを参照していたプログラム中の部分に、残されたリソースへの参照を指示する参照データを設定する(書換える)。
このように、標準プロジェクトのHMIプログラムにおいて同一のリソースが参照される場合には(以下、重複ともいう)、標準プロジェクト(特定的には、UIライブラリ)において同一リソースのうちの1つが残されて他は削除される。したがって、標準プロジェクトのデータ量を少なくすることができる。これにより、標準プロジェクトをメモリに格納する場合に、当該メモリの消費量を削減することができる。また、標準プロジェクトのHMIプログラムを実行する場合に必要なメモリ容量も少なくすることができる。また、標準プロジェクトを装置に通信により、または記憶媒体を介してロード(転送して格納)する場合に、ロードの所要時間を削減することができる。
なお、上記に述べた削除処理は、同一であると検出されたUIデータの各グループについて、1つ分のUIデータのみを含むようUIライブラリを変更する処理(変更処理)の一実施例であり、変更処理は当該削除処理に限定されない。たとえば、同一であると検出されたUIデータをUIライブラリから削除し、そしてUIライブラリに各グループに対応した1つ分のUIデータを新たに作成(追加)するとしてもよい。実施の形態1では、説明を簡単にするために、変更処理の一例である上記の削除処理を示す。
また、以下の実施の形態では、複数のUIデータからなるデータ群として、UIライブラリに格納されたUIデータの群を例示するが、データ群はライブラリに格納される形式に限定されない。
(システム構成)
図1は、実施の形態1にかかるプログラマブルシステムの構成を概略的に示す図である。図1を参照して、プログラマブルシステムは、FAに適用される複数のPLC(Programmable Logic Controller)1,PLC2,PLC3、プログラマブルターミナル4およびPC(Personal Computer)100を備える。PLC1〜3のそれぞれは同様の構成を有する。PLCは、典型的には、プログラムを実行する主体であるCPU(Central Processing Unit)を有したCPUユニット10、CPUユニット10などへ電力を供給する電源ユニット12、フィールド機器と信号をやり取りするIO(Input Output)ユニット14とを含む。IOユニット14は、CPUユニット10とシステムバス11を介して接続されている。IOユニット14は、CPUユニット10とシステムバス11を介して接続される。典型的には、IOユニット14は、フィールド機器である検出センサ15からの信号を取得し、またはCPUユニット10でのプログラムの実行結果に応じてフィールド機器であるリレー16を駆動する。なお、フィールド機器は、検出センサ15およびリレー16に限定されない。
プログラマブルターミナル4は、HMIのためのGUIとしての役割りを果たす。プログラマブルターミナル4は、PLC1〜3のCPUユニット10と通信する処理、各PLCに関する情報をタッチスクリーン418のディスプレイに表示する表示処理、操作キー108を介して入力されたユーザの指示をPLC1〜3に伝送する入力処理などの各種の処理を実行する。また、プログラマブルターミナル4は、通信処理、表示処理および入力処理などを実施するためのUI画面を含む各種の画面をディスプレイ107に表示する。これら表示にための表示データは、プログラマブルターミナル4がプロジェクトを実行することにより生成されて、生成された画面データによりディスプレイ107を駆動することにより、画面が表示される。
PC100は、HMIプログラムを処理するプログラム処理装置の一実施例である。PC100は、有線または無線の通信路111を介してプログラマブルターミナル4に接続される。PC100は、ユーザがプロジェクトを開発(生成)する環境を提供する。PC100で生成されたプロジェクトは、プログラマブルターミナル4に送信される。通信路111は、例えばLAN(Local Area Network)を含む。
(PC機器100の構成)
図2は、実施の形態1にかかるPC100の構成を概略的に示す図である。図2を参照して、PC100は、CPU110、記憶部としてのメモリ112およびハードディスク114、計時し計時データをCPU110に出力するタイマ113、入力インターフェイス118、表示コントローラ120、通信インターフェイス124、データリーダ/ライタ126を含む。これらの各部は、バス128を介して互いにデータ通信が可能なように接続されている。
CPU110は、ハードディスク114に格納されたプログラム(コード)を実行することで、各種の演算を実施する。メモリ112は、典型的には、DRAM(Dynamic Random Access Memory)などの不揮発性の記憶装置である、メモリ112は、ハードディスク114から読出されたプログラム・データに加えて、データリーダ/ライタ126から受信されたデータ、およびワークデータなどが格納される。
入力インターフェイス118は、CPU110とキーボード104、マウス(図示せず)、タッチパネル(図示せず)などの入力装置との間のデータ伝送を仲介する。すなわち、入力インターフェイス118は、ユーザが入力装置を操作することで与えられる操作命令を受付ける。
表示コントローラ120は、表示装置の典型例であるディスプレイ102と接続され、CPU110における処理の結果などを表示する。表示コントローラ120は、CPU110からの表示データに従いディスプレイ102を駆動する。これにより、ディスプレイ102には、表示データに従う画像が表示される。
通信インターフェイス124は、LANを介してNA4との間のデータ伝送を仲介する。データリーダ/ライタ126は、CPU110と外部の記憶媒体であるメモリカード106との間のデータ伝送を仲介する。
なお、メモリカード106は、PC100で実行されるプログラムなどが格納された状態で流通し、データリーダ/ライタ126は、このメモリカード106からプログラムを読出す。なお、メモリカード106は、CF(Compact Flash)、SD(Secure Digital)などの汎用的な半導体記憶デバイスや、フレキシブルディスク(Flexible Disk)などの磁気記憶媒体や、CD−ROM(Compact Disk Read Only Memory)などの光学記憶媒体などからなる。
また、PC100には、必要に応じてプリンタなどの他の出力装置が接続されてもよい。
(プログラマブルターミナル4の構成)
図3は、実施の形態1にかかるプログラマブルターミナル4の構成を概略的に示す図である。図3を参照して、プログラマブルターミナル4は、各種の演算を行なうCPU411、ROM(Read Only Memory)412、RAM(Random Access Memory)413、各種のプログラムおよびデータを不揮発的に格納するためのフラッシュROM414、時計415、ユーザの操作を受付けるための操作キー416、データリーダ/ライタ417、タッチスクリーン418および通信インターフェイス419を備える。なお、これらの各部は、内部バスを介して互いに接続される。
タッチスクリーン418は、表示部として機能するディスプレイ481、ユーザの入力を受付けるためのタッチパネル482を含む。タッチパネル482は、ディスプレイ481を覆うように設置される。通信インターフェイス419は、PC100およびPLC1〜3の各種の機器と通信する。
データリーダ/ライタ417は、CPU411と外部の記憶媒体であるメモリカード420との間のデータ伝送を仲介する。メモリカード420は、プログラマブルターミナル4で実行されるプログラムなどが格納された状態で流通し得る。データリーダ/ライタ126は、メモリカード420からプログラムを読出す。なお、メモリカード420は、CF(Compact Flash)、SD(Secure Digital)などの汎用的な半導体記憶デバイスや、フレキシブルディスク(Flexible Disk)などの磁気記憶媒体や、CD−ROM(Compact Disk Read Only Memory)などの光学記憶媒体などからなる。
また、プログラマブルターミナル4には、必要に応じてプリンタなどの他の出力装置が接続されてもよい。
(HMIプログラムの開発環境)
図4は、実施の形態1にかかるHMIプログラムの開発環境を概略的に示す図である。図4では、PC100における開発環境に関連付けて、プログラマブルターミナル4におけるHMIプログラムの実行環境が示されている。
図4を参照して、PC110の開発環境は、OS(オペレーティングシステム)220およびHMIデバイスツールプログラム221を備える。HMIデバイスツールプログラム221は、ハードディスク114からメモリ112にロードされてもよい。HMIデバイスツールプログラム221は、HMIプログラム、UIライブラリおよび各種プロジェクトなどを作成するためのエディタ10Aおよび各種プロジェクトをコンパイルするためのコンパイラ10Bを含む。また、PC100は、UIライブラリおよびHMIプログラムを作成するためのリソース、関数などのデータを有したライブラリ224を備える。HMIプログラムは、たとえば表示要素の配置および外観の定義、プログラミング言語による動作指示などを含む。
実施の形態1では、コンパイラ10Bが、エディタ10Aにより作成された標準プロジェクト225をコンパイルする。なお、実際には、ユーザは標準プロジェクト225をコンパイルする前に、HMIプログラム227で参照されるUIライブラリを作成することが一般的である。標準プロジェクト225は、ライブラリ224のデータを用いて作成、編集される。標準プロジェクト225は1つ以上のUIライブラリ226、UIライブラリ226のリソースを参照するHMIプログラム227、および各種のデータの定義を記載した定義ファイル228などを含む。標準プロジェクト225は後述する図5の記憶部90に格納される。記憶部90は、ハードディスク114、メモリ112などの記憶領域を含んで構成される。
ユーザは、標準プロジェクト225をコンパイルする場合には、コンパイラ10Bを起動する。コンパイラ10Bは、格納された標準プロジェクト225をパーサ処理などしてコンパイルし、実行形式のコードに変換された実行形式プロジェクト229を出力する。実行形式プロジェクト229は、記憶部90に格納される。コンパイル時には、標準プロジェクト225のデータ量を削減するために、上記の削除処理が実施される。この削除処理の詳細は後述する。
PC100は、通信路111を介して実行形式プロジェクト229をプログラマブルターミナル4にロードする。プログラマブルターミナル4は、PC100から転送された実行形式プロジェクト229をフラッシュROM414などに格納する。
プログラマブルターミナル4のオペレータがHMIプログラムの実行を指示すると、プログラマブルターミナル4のOS230の制御のもとで、フラッシュROM414から実行形式プロジェクト229が読出されて、読出された実行形式プロジェクト229はランタイムを介して実行される。
(機能構成)
図5は、実施の形態1にかかるコンパイラ10Bとその周辺部を模式的に示す図である。図5を参照して、コンパイラ10Bに関連してエディタ10A、インターフェイス部80および記憶部90が示される。エディタ10Aはプログラム、UIライブラリ、リソース、プロジェクトなど各種のデータを、ユーザ操作に従い作成する。コンパイラ10Bは、エディタ10Aにより作成された各種のデータ、プログラムをコンパイルする。
コンパイラ10Bが、エディタ10Aにより作成された標準プロジェクト225をコンパイルする場合に、上記の削除処理に関連して、標準プロジェクト225のリソースRを同一のリソースRどうしでグループ分けするためのグループ化部20、同一である(重複する)と検出されたリソースRのうちの1つのリソースRのみを含むよう標準プロジェクト225を変更する変更処理を実施する変更部50、表作成部60、および参照先設定部70を備える。同一である(重複する)と検出されたリソースRのグループは、上記の1つのリソースRと他のリソースRからなる。参照先設定部70は、HMIプログラム227中の当該他のリソースRを参照する部分に、当該1つのリソースRへの参照を指示する参照データを設定する。表作成部60は上記の他のリソースRの識別子と、当該他のリソースRの参照部分に設定された上記の1つのリソースRの識別子との関連付け情報(リソース置換表TB)を作成する。
以下の説明では、変更部50が備える削除部55が、各グループにおいて重複するリソースRのうち1つ(上記の1つのリソースRに相当)を残し、残りのリソースR(上記の他のリソースに相当)を削除する削除処理により上記の変更処理を実現する。削除処理が実施される場合は、表作成部60は、削除されたリソースRと残されたリソースRとの対応関係を示す表(リソース置換表TB)を作成する。また、参照先設定部70は、HMIプログラム227において削除されたリソースRを参照する部分を特定し、この部分に、残されたリソースRへの参照を指示する参照データを設定する。
グループ化部20は、同一のリソースRを検出するための一致検出部30、および検出された同一のリソースRのグループ、さらに細かいグループに分ける細分化部40を含む。
(処理フローチャート)
図6は、実施の形態1にかかる処理フローチャートである。図6の処理フローチャートは、プログラムとしてメモリ112またはハードディスク114などに格納されて、CPU110により読出されて実行される。このプログラムは、メモリカード106に格納された状態で流通し得る。CPU110は、データリーダ/ライタ126を介して、メモリカード106からプログラムを読出し、読出されたプログラムをハードディスク114またはメモリ112に格納する。
また、プログラムは、図示しないネットワークを介して通信インターフェイス124により受信されて、CPU110は受信されたプログラムをメモリ112またはハードディスク114などに格納するとしてもよい。
図7は、実施の形態1にかかるリソースRが削除される過程を模式的に示す図である。図7では、説明のために、記憶部90を、標準プロジェクト225のUIライブラリ226が格納される領域E1と、リソース置換表TBが格納されるべき領域E2とに分けている。図8〜図11は、実施の形態1にかかるリソースRが削除される過程の具体例を示す図である。
まず、ユーザはエディタ10Aを起動して、標準プロジェクト225を作成する。作成される標準プロジェクト225は記憶部90に格納される。このとき、同一のリソースRが標準プロジェクト225にインポート(組込み)される。この詳細は、後述する。
標準プロジェクト225の作成が完了すると、ユーザは、標準プロジェクト225をコンパイルするためにコンパイル開始の操作を行う。
CPU110は、ユーザからコンパイルの開始指示を受付けるか否かを判断する(ステップS2)。コンパイルの開始指示を受けないときは(ステップS2でNO)、処理はステップS1に戻る。CPU110は、コンパイルの開始指示を受付けると(ステップS2でYES)、コンパイラ10Bを起動する。
コンパイラ10Bが起動されると、まず、グループ化部20はリソースRのグループ化処理を実施する(ステップS3)。具体的には、一致検出部30は、図7(A)の領域E1のUIライブラリ226に含まれた複数のリソースRを、「データの種類」と「データ長」との両方が一致するものどうしで1つ以上のグループGに分ける(図7(B)参照)。一致検出部30は、「データの種類」を、リソースRのデータファイルの拡張子に基づき判別する。図8の具体例では、領域E1(より具体的にはUIライブラリ226)の複数のリソースRは、データ種類は「BMP」およびデータ長は「400byte」であるグループG1、データ種類は「BMP」およびデータ長は「500byte」であるグループG2、データ種類は「PNG」およびデータ長は「100byte」であるグループG3に分けられる(図8参照)。
なお、図8のグループG1の矢印で示されたリソースRは、当該グループの他のリソースとは異なる画像データではあるが、この時点ではグループG1に分類されている。
このように、一致検出部30は、「データの種類」と「データ長」という簡単な判断基準に従い、複数のUIライブラリにおいて使用される(含まれる)同一のリソースRを検出する。この判断基準は単純である(複雑ではない)から、UIライブラリはパッケージ化されてそれぞれ独立に作成されるとしても、これらUIライブラリから比較的高速に同一のリソースRを検出することができる。
上記の「データの種類」と「データ長」に基づく同一性の分類の場合には、グループ内に他のリソースRとは異なる画像データ(リソースR)が含まれる可能性がある。これを回避するために、リソースRの同一性をより正確に検出する。具体的には、一致検出部30は、2つ以上のリソースRを含む各グループGに対して同一性を検出し(ステップS4)、その結果に基づき、細分化部40は、当該グループGのリソースRをさらに等値であるものどうしでグループ化する(ステップS5)。ステップS4において、一致検出部30は、リソースRの等値性は、各グループについて以下の手順で判定する。
(a)ハッシュ値が異なるリソースRどうしは異なるリソースRと判定する。
(b)上記の(a)により異なると判定されないリソースRどうしについては、各リソースRのデータの全バイトの値が一致すれば当該リソースどうしは一致すると判定し、そうでなければ異なると判定する。
上記の一致検出部30および細分化部40の処理により、図8のグループG1のリソースRを、図9のグループG11とG12に細分化することができる。グループG11とG12のそれぞれにおいて、グループ内に含まれるリソースRは全く同一となる。なお、元のグループG2は、グループ内のリソースRどうしは等値性を有すると判断されるので、細分化は実施されない。
削除部55は、図7(B)の各グループGについて、当該グループGに含まれたリソースRのうちの1つのリソースRを残し、他のリソースRを削除する(ステップS6、図7(C)参照)。図10の具体例では、グループG11からは2個のリソースRが削除され、グループG2からは1個のリソースRが削除される。これにより、標準プロジェクト225(より特定的にはUIライブラリ226)に含まれるリソースRの総数を削減することができる。
表作成部60は、リソース置換表TBを作成する(ステップS7、図7(D)参照)。リソース置換表TBは、各グループGについて、削除されたリソースRと置換先リソースR(すなわち残されたリソースR)との対応関係を示すデータを有する。実施の形態1では、表作成部60は、リソース置換表TBに、削除されたリソースRのファイル名と、残されたリソースのファイル名とを関連付けて格納する。
図10の具体例では、リソース置換表TBには、削除したリソースRの識別子TB1と、これに関連付けて置換先の識別子TB2とが関連付けて格納される。例えば、識別子TB1としてグループG11から削除された2個のリソースRのファイル名(C.bmpとF.bmp)が格納されて、これに関連付けた識別子TB2として、残されたリソースRのファイル名(A.bmp)が格納されている。また、グループG2については、識別子TB1として削除された1個のリソースRのファイル名(G.bmp)が格納されて、これに関連付けた識別子TB2として、残されたリソースRのファイル名(B.bmp)が格納されている。なお、リソースRの識別子は、当該リソースRのファイル名に限定されない。
これにより、標準プロジェクト225に含まれるリソースRの総数を、重複を排除することで削減することができる。また、リソース置換表TBにより、削除されたリソースRと残されたリソースRとを関連付けを記憶しておくことができる。
次に、参照先設定部70は、標準プロジェクト225のHMIプログラム227において、削除されたリソースRを参照している部分に、残されたリソースRへの参照を指示する参照データを設定する(ステップS8)。具体的には、参照先設定部70は、HMIプログラム227をパースする過程において、リソース置換表TBの削除されたリソースRのファイル名を記載した部分を特定する。参照先設定部70は、図11に示されるように、HMIプログラム227の特定された部分に記載されたファイル名を、リソース置換表TBにおいて関連付けされたファイル名(残されたリソースRのファイル名)に変更する(書換える)。これにより、HMIプログラム227は、削除処理により残ったリソースRのみを参照するようにコンパイルされる。
コンパイラ10Bによるコンパイル後において実行形式プロジェクト229が記憶部90に格納される。CPU110は、コンパイル後に、ユーザから実行形式プロジェクト229の転送指示を受付けるか否かを判断する(ステップS9)。CPU110は、転送指示を受付けないと判断する間は(ステップS9でNO)、ステップS9の処理を繰返すが、転送指示を受付けたと判断すると(ステップS9でYES)、CPU110は、記憶部90から実行形式プロジェクト229を読出して、プログラマブルターミナル4に転送する(ステップS10)。これにより、プログラマブルターミナル4は、上記のリソースRの削除処理がされてデータサイズが削減された実行形式プロジェクト229を取得することができる。
(重複したリソースの作成例)
図12〜図16は、同一のリソースRが作成されるケースを説明するための図である。これらの図を参照して、エディタ10Aを用いた標準プロジェクト225の作成時に、同一のリソースRが作成される場合を説明する。まず、ユーザは、ある機械を始動させるボタン(UIデータ)のリソースを持つUIライブラリ(A)と、当該機械を停止させるボタン(UIデータ)のリソースを持つUIライブラリ(B)とを作成する(図12と図13参照)。両UIライブラリとも、機械メーカーのロゴマーク(Example Co., Ltd)の画像をボタンの上方に配置する。ユーザは、両UIライブラリを1つの標準プロジェクト225にインポートする(図14)。
図14を参照すると、インポートされた個々のUIライブラリは、矢印で示される画像のリソースRを有している。なお、図14では複数のUIライブラリ間でリソースのファイル名が衝突しないようにするため、インポート時にリソースのファイル名は自動的にユニークな別名に変更される。
図15では、ユーザは両方のリソースRを画面(ページ)に配置して、両方のリソースRの表示画面での位置を決定する。その後、標準プロジェクト225の作成を完了する。
作成された上記の標準プロジェクト225は、同一のリソースRを含んでいる(図16(A)参照)ため、実行形式プロジェクト229は、同一のリソースRについての実行形式データを重複して含む(図16(B)の部分Cを参照)ことになる。
これに対して、本実施の形態では、図16(A)のように標準プロジェクト225中にリソースRが重複している場合においては、標準プロジェクト225のコンパイル時において、重複しているリソースRが検出されて、検出されたリソースRについて上述の削除処理を実施することができる。
(変形例1)
上記の実施の形態1の変形例を説明する。上記の実施の形態では、リソースデータが完全に一致することをリソースRの重複を判断する基準とした。画像であるリソースRに対しては、前処理を適用して一致の判断を実施することができる。例えば、グループ化部20は、幅と高さが一致する類似のリソースRの画像どうしでグループを作成し、グループごとにグループ内の画像を非圧縮のピクセルデータに展開する前処理を実施する。一致検出部30は、展開後の画像データどうしをピクセル単位で照合し完全一致を検出する。
図17は、実施の形態1にかかる類似しているリソースRの画像を模式的に示す図である。図17(A)は、リソースRの画像ファイルの形式は異なるが、内容(画像)は一致しているケースを示す。図17(B)は、画像の拡大または縮小の差はあるが、内容(画像)は一致しているケースである。この両方のケースであっても、上記の前処理を実施することにより、一致検出部30により画像の同一性が検出される。
(変形例2)
上記の実施の形態1では、リソースRの重複・類似の判定がなされると自動的に削除部55によるリソースRの削除が実施されたが、リソースRの削除は、ユーザからの指示を受付けたときに実施されるとしてもよい。
図18は、実施の形態1にかかるリソース削除の可否をユーザに問合せる画面の一例を示す図である。図18を参照して、ディスプレイ102には、グループ化部20から出力される各グループについて、同一グループのリソースRのアイコンは同じ輪の中に入った画面が表示される。画面により、ユーザに対して、同じ輪の中の複数のリソースRは、太枠で縁取られたリソースRのみ残されて、他のリソースRは削除して良いかの問合わせがなされる。
ユーザは、画面上の問合わせを確認し、重複しているリソースRを削除したくない場合は、削除対象から外したいリソースRのアイコンをドラッグして輪の外に移動させる。その後、実行ボタン102Aを操作することにより、輪の外に移動させたリソースRを残した状態の標準プロジェクト225について実行形式プロジェクト229が作成される。
(変形例3)
PC100は、リソース置換表TBをディスプレイ102に表示するために、リソース置換表TBから表示データを生成し、生成された表示データを表示コントローラ120に出力する。これにより、ユーザに対して、削除されたリソースR、残されたリソースR、両者の置換の対応関係が報知される。また、削除されたリソースRが属していたUIライブラリ、または残されたリソースRが属するUIライブラリの識別子(UIライブラリのライブラリ名など)をディスプレイ102に表示してもよい。
(変形例4)
上記の一致検出部30は、UIライブラリ226のUIデータが作成されるときに同一性を検出するとしてもよい。上述の一致検出部30は、コンパイラ10Bによる標準プロジェクト225のコンパイル時にリソースRの一致を検出したが、次のように、コンパイル時以外に検出するとしてもよい。
具体的には、PC100では、ユーザが、エディタ10AによりUIライブラリにリソースRを追加する、または既存のリソースRを編集するなどしてエディト(作成)し、エディト後のUIライブラリを標準プロジェクト225にインポートする。このときに、一致検出部30による同一のリソースRの検出と、削除部55によるリソースRの削除と、参照先設定部70による参照先設定が実施されるとしてもよい。
その後、コンパイル時にも一致検出部30による同一のリソースRの検出がされるとしてもよい。この場合には、UIライブラリ226のUIデータが作成される時の一致検出とコンパイル時の一致検出とが組合わせて実施される。
また、ユーザがリソースRの最適化機能を明示的に指示したときに、UIライブラリ226のリソースRについての同一性の検出と、削除部55による同一であった(すなわち重複した)リソースRの削除とが実施されるとしてもよい。
(変形例5)
PC100の参照先設定部70は、コンパイル中ではなく、コンパイル完了後の実行形式のHMIプログラムについて、またはプログラマブルターミナル4に実行形式プロジェクト229への転送が指示されたときに、上記に述べた参照先設定の処理を実施してもよい。
[実施の形態2]
実施の形態2は、上記の実施の形態1の変形例を示す。実施の形態2では、プログラマブルターミナル4がリソースRの同一検出、削除処理と参照先設定処理を実行する。この場合は、プログラマブルターミナル4が、上記のプログラム処理装置の一実施例となる。
実施の形態2では、PC100が標準プロジェクト225のコンパイルを実施する。ただし、コンパイル時にはリソースRの同一検出は実行されない。コンパイルにより得られた実行形式プロジェクト229は、重複したリソースRを含んだままプログラマブルターミナル4に転送され得る。
プログラマブルターミナル4のCPU411は、PC100から受信した実行形式プロジェクト229に含まれるUIライブラリ226のリソースRについて、実施の形態1で説明したグループ化処理(ステップS3、S4およびS5)、削除処理(ステップS6)、表作成処理(ステップS7)および参照先設定処理(ステップS7)を実施する。
また、プログラマブルターミナル4では、ユーザからの指示を受付けたときに、上記の重複しているリソースの検出、リソースRの削除および参照先設定処理を実施するとしてもよい。
[実施の形態3]
実施の形態3は、実施の形態1または実施の形態2の変形例を示す。実施の形態3では、グループ化処理(ステップS3、S4およびS5)、削除処理(ステップS6)、表作成処理(ステップS7)および参照先設定処理(ステップS7)は、PC100とプログラマブルターミナル4との間で協同して実施される。
例えば、標準プロジェクト225について、PC100ではグループ化処理(ステップS3、S4およびS5)、削除処理(ステップS6)および表作成処理(ステップS7)が実施されて、実行形式プロジェクト229が作成される。PC100は、実行形式プロジェクト229とリソース置換表TBとをプログラマブルターミナル4に転送する。
プログラマブルターミナル4は、PC100から実行形式プロジェクト229とリソース置換表TBを受信すると、リソース置換表TBに従い、実行形式プロジェクト229のHMIプログラム227に参照先設定を実施する。
[実施の形態の構成]
上記の各実施の形態は、以下の構成を開示する。
プログラム処理装置(PC100、プログラマブルターミナル4)は、FAのためのHMIプログラムを処理する。このプログラム処理装置は、HMIプログラム227のUI機能に対応したUIデータ(リソースR)を格納するための複数のライブラリ(UIライブラリ)と、プログラム処理装置を制御する制御部(CPU110、CPU411)と、を備える。制御部は、異なるライブラリに格納された同一であるUIデータのうち、少なくともデータの種類とサイズとに基づき、同一であるUIデータを検出する一致検出部30と、同一であると検出されたUIデータのうち1つを残し、他をライブラリから削除する削除部55とを備える。
上記の構成によれば、同一であるUIデータについては、1つのUIデータを残し、他は削除される(ライブリから削除される)から、ライブラリのデータ量を削減することができる。データ量の削減により、HMIプログラム227に関するデータ(UIデータを含む)格納するのに必要とされる記憶領域を小さくでき、またデータを転送する場合には転送速度を速くすることができる。
一致検出部30は、ライブラリ(UIライブラリ)のUIデータ(リソースR)が作成されるときに同一のUIデータを検出する。したがって、ライブラリの作成時に、既にライブラリにあるUIデータと同一のUIデータが作成されてライブラリに格納される事態を防止することができる。
一致検出部30は、HMIプログラム227がコンパイルされるときに上記の同一を検出する。したがって、コンパイル時に、同一のUIデータを検出し、削除することができる。
UIデータ(リソースR)は、HMIプログラム227の中において参照される。制御部は、さらに、HMIプログラム227中の削除されたUIデータを参照する部分に、残されたUIデータへの参照を指示する参照データを設定する参照先設定部70を備える。この構成によれば、HMIプログラム227中で参照されているUIデータが削除された場合には、参照部分において、参照先は残されたUIデータ(削除されたものと同一のUIデータ)を指示するようなデータを設定することができる。これにより、UIデータの削除前と後において、HMIプログラムの内容の実質的な同一性は保たれる。
参照先設定部70は、HMIプログラム227がコンパイルされるときに、参照データの設定を実施する。したがって、コンパイル中に参照データを設定することができる。
好ましくは、プログラム処理装置は、ディスプレイ102と、ディスプレイ102を表示データに従い制御する表示コントローラ120と、を備える。制御部は、さらに、削除されたUIデータの識別子(リソースRのファイル名)と、当該削除されたUIデータの参照部分に設定される残されたUIデータの識別子(リソースRのファイル名)との関連付け情報(リソース置換表TB)を作成する作成部(参照先設定部70)を、含む。制御部は、作成された関連付け情報を表示するための表示データを表示コントローラに出力する。
この構成によれば、ユーザはHMIプログラム227中の、UIデータの参照先がどのように変更されたかを確認することができる。また、削除されたUIデータと残されたUIデータとが何であるかを確認することもできる。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
4 プログラマブルターミナル、10A エディタ、10B コンパイラ、11 システムバス、12 電源ユニット、15 検出センサ、16 リレー、20 グループ化部、30 一致検出部、40 細分化部、50 変更部、55 削除部、60 表作成部、70 参照先設定部、80 インターフェイス部、90 記憶部、102,107,481 ディスプレイ、102A 実行ボタン、104 キーボード、106,420 メモリカード、108,416 操作キー、111 通信路、112 メモリ、113 タイマ、114 ハードディスク、118 入力インターフェイス、120 表示コントローラ、124,419 通信インターフェイス、126,417 データリーダ/ライタ、128 バス、221 デバイスツールプログラム、224 ライブラリ、225 標準プロジェクト、227 プログラム、228 定義ファイル、229 実行形式プロジェクト、414 ROM、415 時計、418 タッチスクリーン、482 タッチパネル、TB リソース置換表。

Claims (8)

  1. FA(ファクトリオートメーション)のためのHMI(ヒューマンマシンインターフェース)プログラムを処理するプログラム処理装置であって、
    前記プログラム処理装置を制御する制御部を備え、
    前記制御部は、
    前記HMIプログラムのUI機能に対応した複数のUI(ユーザインターフェイス)データからなるデータ群において、少なくともデータの種類とサイズとに基づき、同一であるUIデータを検出する検出部と、
    同一であると検出されたUIデータについて1つ分の当該UIデータのみを含むよう前記データ群を変更する変更部と、を備える、プログラム処理装置。
  2. 前記データ群は、前記UIデータを格納するための複数のライブラリを含み、
    前記検出部は、
    異なるライブラリに格納されたUIデータのうち、少なくともデータの種類とサイズとに基づき、同一であるUIデータを検出する一致検出部を含み、
    前記変更部は、
    同一であると検出された1つ分の前記UIデータのみを含むよう前記複数のライブラリを変更するライブラリ変更部を含む、請求項1に記載のプログラム処理装置。
  3. 前記検出部は、
    前記データ群の前記UIデータが作成されるときに前記同一を検出する、請求項1または2に記載のプログラム処理装置。
  4. 前記検出部は、
    前記HMIプログラムがコンパイルされるときに前記同一を検出する、請求項1または2に記載のプログラム処理装置。
  5. 同一であると検出されたUIデータは、前記1つ分のUIデータと他のUIデータからなり、
    前記制御部は、さらに、
    前記HMIプログラム中の前記他のUIデータを参照する部分に、前記1つ分のUIデータへの参照を指示する参照データを設定する参照先設定部を備える、請求項1から4のいずれか1項に記載のプログラム処理装置。
  6. 前記参照先設定部は、前記HMIプログラムがコンパイルされるときに、前記参照データの設定を実施する、請求項5に記載のプログラム処理装置。
  7. 前記プログラム処理装置は、
    ディスプレイと、
    前記ディスプレイを表示データに従い制御する表示コントローラと、を備え、
    前記制御部は、さらに、
    前記他のUIデータの識別子と、当該他のUIデータの参照部分に設定される前記1つ分のUIデータの識別子との関連付け情報を作成する作成部を、含み、
    作成された前記関連付け情報を表示するための表示データを前記表示コントローラに出力する、請求項1から6のいずれか1項に記載のプログラム処理装置。
  8. 情報処理装置を用いて、FA(ファクトリオートメーション)のためのHMI(ヒューマンマシンインターフェース)プログラムを処理する方法を、前記情報処理装置のプロセッサに実行させるためのプログラムであって、
    前記方法は、
    前記HMIプログラムのUI機能に対応した複数のUI(ユーザインターフェイス)データからなるデータ群において、少なくともデータの種類とサイズとに基づき、同一であるUIデータを検出するステップと、
    同一であると検出されたUIデータについて1つ分のUIデータのみを含むよう前記データ群を変更するステップと、を備える、プログラム。
JP2016181149A 2016-09-16 2016-09-16 プログラム処理装置およびプログラム Active JP6786984B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2016181149A JP6786984B2 (ja) 2016-09-16 2016-09-16 プログラム処理装置およびプログラム
EP17185888.9A EP3296860A1 (en) 2016-09-16 2017-08-11 Program processing apparatus and program
CN201710695092.3A CN107832050B (zh) 2016-09-16 2017-08-15 程序处理装置以及记录介质
US15/684,996 US10295985B2 (en) 2016-09-16 2017-08-24 Program processing apparatus and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016181149A JP6786984B2 (ja) 2016-09-16 2016-09-16 プログラム処理装置およびプログラム

Publications (2)

Publication Number Publication Date
JP2018045544A true JP2018045544A (ja) 2018-03-22
JP6786984B2 JP6786984B2 (ja) 2020-11-18

Family

ID=59677020

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016181149A Active JP6786984B2 (ja) 2016-09-16 2016-09-16 プログラム処理装置およびプログラム

Country Status (4)

Country Link
US (1) US10295985B2 (ja)
EP (1) EP3296860A1 (ja)
JP (1) JP6786984B2 (ja)
CN (1) CN107832050B (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020021157A (ja) * 2018-07-30 2020-02-06 オムロン株式会社 サポート装置およびサポートプログラム
JP2020021155A (ja) * 2018-07-30 2020-02-06 オムロン株式会社 サポート装置およびサポートプログラム
JP2020030621A (ja) * 2018-08-23 2020-02-27 オムロン株式会社 情報処理装置およびプログラム

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6261816B2 (ja) * 2015-10-29 2018-01-17 三菱電機株式会社 プログラマブル表示器、情報処理装置、画面データ作成支援プログラム、及び画面表示システム
WO2019186820A1 (ja) * 2018-03-28 2019-10-03 三菱電機株式会社 プログラミング支援装置、プログラミング支援方法およびプログラム
CN109101637A (zh) * 2018-08-17 2018-12-28 珠海格力电器股份有限公司 一种hmi组态软件的项目工程保存方法、hmi组态软件及工业触摸屏
CN110740366A (zh) * 2019-10-12 2020-01-31 深圳创维-Rgb电子有限公司 通过外部存储介质自动维修电视的方法、装置和存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0527959A (ja) * 1991-07-22 1993-02-05 Nippon Telegr & Teleph Corp <Ntt> 操作方法を共通化した対話型システム
JP2001022565A (ja) * 1999-07-08 2001-01-26 Nec Corp Gui設計支援方法及びその装置並びにgui設計支援プログラムを記録した機械読み取り可能な記録媒体、gui評価方法及びその装置並びにgui評価プログラムを記録した機械読み取り可能な記録媒体
JP2005031995A (ja) * 2003-07-14 2005-02-03 Canon Inc ユーザインタフェース制御装置及びその方法
JP2015184758A (ja) * 2014-03-20 2015-10-22 株式会社東芝 画面設計支援装置、画面設計支援方法、及びコンピュータプログラム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7421305B2 (en) * 2003-10-24 2008-09-02 Microsoft Corporation Audio duplicate detector
US20120284631A1 (en) * 2011-05-02 2012-11-08 German Lancioni Methods to adapt user interfaces and input controls
US9069635B2 (en) * 2012-04-09 2015-06-30 Autodesk, Inc. Process for compressing application deployments
CN103377473B (zh) * 2012-04-19 2017-10-24 深圳市世纪光速信息技术有限公司 一种图像排重方法和装置
GB201221317D0 (en) 2012-11-27 2013-01-09 Omron Tateisi Electronics Co Method and device for changing objects in a human-machine interface device
US10949382B2 (en) * 2014-01-15 2021-03-16 Commvault Systems, Inc. User-centric interfaces for information management systems
US20170286522A1 (en) * 2016-04-04 2017-10-05 Shutterstock, Inc. Data file grouping analysis

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0527959A (ja) * 1991-07-22 1993-02-05 Nippon Telegr & Teleph Corp <Ntt> 操作方法を共通化した対話型システム
JP2001022565A (ja) * 1999-07-08 2001-01-26 Nec Corp Gui設計支援方法及びその装置並びにgui設計支援プログラムを記録した機械読み取り可能な記録媒体、gui評価方法及びその装置並びにgui評価プログラムを記録した機械読み取り可能な記録媒体
JP2005031995A (ja) * 2003-07-14 2005-02-03 Canon Inc ユーザインタフェース制御装置及びその方法
JP2015184758A (ja) * 2014-03-20 2015-10-22 株式会社東芝 画面設計支援装置、画面設計支援方法、及びコンピュータプログラム

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020021157A (ja) * 2018-07-30 2020-02-06 オムロン株式会社 サポート装置およびサポートプログラム
WO2020026738A1 (ja) * 2018-07-30 2020-02-06 オムロン株式会社 サポート装置およびサポートプログラム
JP2020021155A (ja) * 2018-07-30 2020-02-06 オムロン株式会社 サポート装置およびサポートプログラム
WO2020026737A1 (ja) * 2018-07-30 2020-02-06 オムロン株式会社 サポート装置およびサポートプログラム
JP7001012B2 (ja) 2018-07-30 2022-01-19 オムロン株式会社 サポート装置およびサポートプログラム
JP7052620B2 (ja) 2018-07-30 2022-04-12 オムロン株式会社 サポート装置およびサポートプログラム
US11360462B2 (en) 2018-07-30 2022-06-14 Omron Corporation Support device and support program
US11429357B2 (en) 2018-07-30 2022-08-30 Omron Corporation Support device and non-transient computer-readable recording medium recording support program
JP2020030621A (ja) * 2018-08-23 2020-02-27 オムロン株式会社 情報処理装置およびプログラム
WO2020039900A1 (ja) * 2018-08-23 2020-02-27 オムロン株式会社 情報処理装置およびプログラム

Also Published As

Publication number Publication date
JP6786984B2 (ja) 2020-11-18
CN107832050A (zh) 2018-03-23
US10295985B2 (en) 2019-05-21
US20180081338A1 (en) 2018-03-22
CN107832050B (zh) 2021-07-20
EP3296860A1 (en) 2018-03-21

Similar Documents

Publication Publication Date Title
JP6786984B2 (ja) プログラム処理装置およびプログラム
JP4541418B2 (ja) プログラマブルコントローラの周辺装置、置換方法およびプログラム
JP4973867B2 (ja) Plc制御プログラム開発装置及びプログラム
CN104007958B (zh) 用于创建和处理用于工业自动化装置的程序的程序编辑器和方法
CN102365594A (zh) 参数设定装置
JP2008293138A (ja) ソフトウェア開発支援プログラム、ソフトウェア開発支援方法
JP2006119884A (ja) シーケンスプログラムの編集装置
JP5849592B2 (ja) プログラマブルコントローラシステム、そのプログラミング装置、プログラマブルコントローラ、プログラム、デバッグ方法
WO2018193503A1 (ja) プログラム作成装置
JP3805776B2 (ja) グラフィカルプログラミング装置及びプログラマブル表示器
JP7047700B2 (ja) 制御システム、制御装置、端末装置、及びプログラム
JP2015210769A (ja) 情報処理装置、情報処理方法およびプログラム
KR102225850B1 (ko) 프로그램 관리 시스템, 프로그래밍 지원 장치, 프로그램 관리 방법 및 프로그래밍 지원 프로그램
US20130304242A1 (en) Motion sfc program component creation device
JP2016224559A (ja) プログラム作成支援装置、制御方法およびプログラム
WO2021044654A1 (ja) 情報処理システム、プログラマブル表示器および情報処理装置
JP6812861B2 (ja) プログラム作成装置およびプログラム
JP6455096B2 (ja) コントロールシステム、その支援装置、プログラマブルコントロール装置
JP5978775B2 (ja) プログラマブルコントローラ、その支援装置、プログラム、プログラム転送方法
KR20150127163A (ko) 프로그램 편집 장치, 프로그램 편집 방법 및 프로그램 편집 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체
JP6115063B2 (ja) プログラマブルコントローラの周辺装置
US20180267680A1 (en) Screen creation apparatus, simulation apparatus and recording medium
JP4372739B2 (ja) プログラマブル表示器、制御プログラムおよびそのプログラムを記録した記録媒体、ならびに画面作成装置、画面作成プログラムおよびそのプログラムを記録した記録媒体
JP2009176178A (ja) Plcのグローバル変数定義方式
JP7499966B2 (ja) 制御装置、及び、アドレス管理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190705

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200528

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200609

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200623

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: 20200929

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201012

R150 Certificate of patent or registration of utility model

Ref document number: 6786984

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150