WO2019167512A1 - 表示装置、画面生成方法、および画面生成プログラム - Google Patents

表示装置、画面生成方法、および画面生成プログラム Download PDF

Info

Publication number
WO2019167512A1
WO2019167512A1 PCT/JP2019/002730 JP2019002730W WO2019167512A1 WO 2019167512 A1 WO2019167512 A1 WO 2019167512A1 JP 2019002730 W JP2019002730 W JP 2019002730W WO 2019167512 A1 WO2019167512 A1 WO 2019167512A1
Authority
WO
WIPO (PCT)
Prior art keywords
display
screen
variable
display device
controller
Prior art date
Application number
PCT/JP2019/002730
Other languages
English (en)
French (fr)
Inventor
雄大 永田
Original Assignee
オムロン株式会社
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 オムロン株式会社 filed Critical オムロン株式会社
Priority to EP19761237.7A priority Critical patent/EP3761127B1/en
Priority to CN201980004086.6A priority patent/CN111052008A/zh
Priority to US16/644,154 priority patent/US11880625B2/en
Publication of WO2019167512A1 publication Critical patent/WO2019167512A1/ja

Links

Images

Classifications

    • 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/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • 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/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • 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
    • G05B19/054Input/output
    • 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/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/4155Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by programme execution, i.e. part programme or machine function execution, e.g. selection of a programme
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3006Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3013Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is an embedded system, i.e. a combination of hardware and software dedicated to perform a certain function in mobile devices, printers, automotive or aircraft systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3058Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/324Display of status information
    • G06F11/328Computer systems status display
    • 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/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • 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
    • 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
    • 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/30Nc systems
    • G05B2219/31From computer integrated manufacturing till monitoring
    • G05B2219/31368MAP manufacturing automation protocol
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computing Systems (AREA)
  • Quality & Reliability (AREA)
  • Automation & Control Theory (AREA)
  • Mathematical Physics (AREA)
  • Manufacturing & Machinery (AREA)
  • Computer Hardware Design (AREA)
  • User Interface Of Digital Computer (AREA)
  • Programmable Controllers (AREA)
  • Testing And Monitoring For Control Systems (AREA)

Abstract

駆動機器(300)の状態を視覚的に表わす画面(130)の設計工数を従来よりも削減できる技術を提供する。表示装置(100)は、駆動機器(300)の状態を表わす、予め定められた規格において定められている複数の変数を規定している情報モデル(212)と、画面(130)に関する表示ルール(412)とを受信する。表示ルール(412)において、複数の変数の一部または全部について、変数の値を視覚的に表わす表示オブジェクトの種類と、当該表示オブジェクトの表示に関する表示定義とが対応付けられる。表示装置(100)は、情報モデル(212)に含まれる表示対象の各変数に対応する表示オブジェクトと表示定義とを表示ルール(412)から取得し、当該表示オブジェクトの各々を対応する表示定義に従って画面(130)上に配置する。

Description

表示装置、画面生成方法、および画面生成プログラム
 本開示は、駆動機器の状態を視覚的に表わす画面を自動生成するための技術に関する。
 様々な生産現場において、生産工程を自動化するFA(Factory Automation)システムが普及している。FAシステムは、種々の産業用の駆動機器によって構成される。産業用の駆動機器は、たとえば、ワークを移動するための移動テーブルや、ワークを搬送するためのコンベアや、予め定められた目的の場所までワーク移動するためのアームロボットなどを含む。これらの駆動機器は、PLC(Programmable Logic Controller)やロボットコントローラなどの産業用の制御装置(以下、「コントローラ」ともいう。)によって制御される。
 駆動機器の状態を監視するためには、コントローラ内の変数にアクセスする必要がある。コントローラ内の変数にアクセスするための技術に関し、特開2012-018541号公報(特許文献1)は、「外部機器の種類や接続に関係なく、外部機器のデータを容易に収集することが可能な」表示装置を開示している。
特開2012-018541号公報
 駆動機器の状態を直感的に把握するために、駆動機器の状態を視覚的に表わす画面(以下、「表示装置画面」ともいう。)を表示する表示装置がある。当該表示装置は、設計者によって設計された画面生成プログラムに従って表示装置画面を生成する。
 より具体的には、設計者は、表示装置画面の構成部品である各表示オブジェクトについてコントローラ内の変数を対応付け、当該変数に対する表示オブジェクトの表示態様を画面生成プログラム上で定義する。その後、設計者は、設計した画面生成プログラムをコンパイルし、当該画面生成プログラムの実行ファイルを表示装置にダウンロードする。表示装置は、当該実行ファイルの実行命令を受け付けたことに基づいて表示装置画面を生成し表示する。その後、表示装置は、コントローラから変数の値を受信すると、当該変数の値の大きさに応じて、対応する表示オブジェクトの表示態様を変える。ユーザは、表示オブジェクトの表示態様を確認することで、駆動機器の状態を直感的に把握することができる。
 このように、設計者は、FAシステムの装置構成に合わせて予めプログラミングを行う必要がある。このような画面設計の手間を軽減するために、表示装置画面をより容易に生成することが可能な技術が求められている。
 本開示は上述のような問題点を解決するためになされたものであって、ある局面における目的は、駆動機器の状態を視覚的に表わす画面の設計工数を従来よりも削減することが可能な技術を提供することである。
 本開示の一例では、表示装置は、コントローラによって制御される駆動機器の状態を表わす画面を表示するための表示部と、上記駆動機器の状態を表わす変数であって予め定められた規格において定められている複数の変数を規定している情報モデルを上記コントローラから受信するための通信部とを備える。上記通信部は、上記画面に関する表示ルールを上記コントローラまたは外部機器からさらに受信する。上記表示ルールにおいて、上記予め定められた規格において定められている複数の変数の一部または全部について、変数の値を視覚的に表わすための表示オブジェクトの種類と、当該表示オブジェクトの表示に関する表示定義とが対応付けられている。上記表示装置は、上記画面を生成するための制御装置をさらに備える。上記制御装置は、上記情報モデルに含まれる複数の変数の内の表示対象の各変数に対応する表示オブジェクトおよび表示定義を上記表示ルールから取得し、当該表示オブジェクトの各々を対応する表示定義に従って上記画面上に配置する。
 この開示によれば、予め定められた規格に準拠した情報モデルが用いられることで、設計者は、上記画面を設計する上で、コントローラおよび駆動機器の間で遣り取りされる変数の形式(たとえば、変数名や変数型)を気にする必要がなくなる。その結果、設計者は、各変数に対応付ける表示オブジェクトと各表示オブジェクトの表示定義とを規定するだけで上記画面の仕様を決めることができる。これにより、上記画面の設計工数が従来よりも削減される。
 本開示の一例では、上記表示部は、上記情報モデルに含まれる複数の変数の内から、上記表示対象の変数を選択する操作を受け付けるように構成されている。
 この開示によれば、ユーザは、表示対象の変数を任意に選択することができる。また、ユーザは、監視したい変数に応じて上記画面を適宜変更することができる。
 本開示の一例では、上記制御装置は、上記コントローラから逐次的に受信した変数の値に応じて、対応する表示オブジェクトの表示態様を更新する。
 この開示によれば、ユーザは、駆動機器の状態を表わす変数の値を直感的に把握することができる。
 本開示の一例では、上記表示装置は、生成された画面を画面履歴として記憶するための記憶装置をさらに備える。上記制御装置は、上記記憶装置に記憶されている上記画面履歴の内から一の画面履歴が選択されたことに基づいて、当該一の画面履歴に示される画面を上記表示部に再表示する。
 この開示によれば、ユーザは、自身または他の人が生成した任意の画面を任意のタイミングで呼び出すことができる。
 本開示の一例では、上記表示定義は、上記画面上に表示される表示オブジェクトの表示位置と、当該表示オブジェクトの表示サイズとの少なくとも一方を含む。
 この開示によれば、上記画面上における表示オブジェクトの表示位置および表示サイズが固定される。
 本開示の一例では、上記予め定められた規格は、OPC-UA(Object Linking and Embedding for Process Control Unified Architecture)を含む。
 この開示によれば、OPC-UAに従った通信プロトコルが利用されることで、表示装置とコントローラとのデータ交換がOSやベンダーに依存せずに実現され得る。
 本開示の他の例では、コントローラによって制御される駆動機器の状態を表わす画面に関する画面生成方法は、上記駆動機器の状態を表わす変数であって予め定められた規格において定められている複数の変数を規定している情報モデルを上記コントローラから受信するステップと、上記画面に関する表示ルールを上記コントローラまたは外部機器から受信するステップとを備える。上記表示ルールにおいて、上記予め定められた規格において定められている複数の変数の一部または全部について、変数の値を視覚的に表わすための表示オブジェクトの種類と、当該表示オブジェクトの表示に関する表示定義とが対応付けられている。上記画面生成方法は、さらに、上記情報モデルに含まれる複数の変数の内の表示対象の各変数に対応する表示オブジェクトおよび表示定義を上記表示ルールから取得し、当該表示オブジェクトの各々を対応する表示定義に従って上記画面上に配置するステップを備える。
 この開示によれば、予め定められた規格に準拠した情報モデルが用いられることで、設計者は、上記画面を設計する上で、コントローラおよび駆動機器の間で遣り取りされる変数の形式(たとえば、変数名や変数型)を気にする必要がなくなる。その結果、設計者は、各変数に対応付ける表示オブジェクトと各表示オブジェクトの表示定義とを規定するだけで上記画面の仕様を決めることができる。これにより、上記画面の設計工数が従来よりも削減される。
 本開示の他の例では、コントローラによって制御される駆動機器の状態を表わす画面に関する画面生成プログラムは、コンピュータに、上記駆動機器の状態を表わす変数であって予め定められた規格において定められている複数の変数を規定している情報モデルを上記コントローラから受信するステップと、上記画面に関する表示ルールを上記コントローラまたは外部機器から受信するステップとを実行させる。上記表示ルールにおいて、上記予め定められた規格において定められている複数の変数の一部または全部について、変数の値を視覚的に表わすための表示オブジェクトの種類と、当該表示オブジェクトの表示に関する表示定義とが対応付けられている。上記画面生成プログラムは、コンピュータに、さらに、上記情報モデルに含まれる複数の変数の内の表示対象の各変数に対応する表示オブジェクトおよび表示定義を上記表示ルールから取得し、当該表示オブジェクトの各々を対応する表示定義に従って上記画面上に配置するステップを実行させる。
 この開示によれば、予め定められた規格に準拠した情報モデルが用いられることで、設計者は、上記画面を設計する上で、コントローラおよび駆動機器の間で遣り取りされる変数の形式(たとえば、変数名や変数型)を気にする必要がなくなる。その結果、設計者は、各変数に対応付ける表示オブジェクトと各表示オブジェクトの表示定義とを規定するだけで上記画面の仕様を決めることができる。これにより、上記画面の設計工数が従来よりも削減される。
 ある局面において、駆動機器の状態を視覚的に表わす画面の設計工数を従来よりも削減することができる。
実施の形態に従うFAシステムの構成例を示す図である。 表示装置とコントローラとサポート装置との間のデータの流れを示すシーケンス図である。 図2のステップS30で表示される選択画面の一例を示す図である。 図2のステップS34で表示される選択画面の一例を示す図である。 図2のステップS38で表示される選択画面の一例を示す図である。 OPC-UA(Object Linking and Embedding for Process Control Unified Architecture)で規定されるアドレス空間の一例を示す図である。 PackML(Packaging Machine Language)に従う情報モデルの一例を示す図である。 「Status」タグで管理される状態変数の一例を示す図である。 プロセス変数の1つのデータ構造を示す図である。 オブジェクト情報の一例を示す図である。 テンプレート情報の一例を示す図である。 図11に示されるテンプレート情報の続きを示す図である。 生成された表示装置画面の一例を示す図である。 生成された表示装置画面の他の例を示す図である。 変形例に従う表示装置画面を示す図である。 実施の形態に従う表示装置のハードウェア構成を示すブロック図である。 実施の形態に従うコントローラのハードウェア構成の一例を示す模式図である。 実施の形態に従うサポート装置のハードウェア構成を示す模式図である。 実施の形態に従う表示装置が実行する処理の一部を表わすフローチャートである。 実施の形態に従う表示装置の機能構成の一例を示す図である。 変形例に従うサポート装置の機能構成の一例を示す図である。 変形例に従うサポート装置の機能構成を示す図である。
 以下、図面を参照しつつ、本発明に従う各実施の形態について説明する。以下の説明では、同一の部品および構成要素には同一の符号を付してある。それらの名称および機能も同じである。したがって、これらについての詳細な説明は繰り返さない。
 <A.適用例>
 図1を参照して、本発明の適用例について説明する。図1は、FAシステム1の構成例を示す図である。
 FAシステム1は、生産工程を自動化するためのシステムである。図1の例では、FAシステム1は、1つ以上の表示装置100と、1つ以上のコントローラ200と、1つ以上の駆動機器300と、1つ以上のサポート装置400とで構成されている。
 表示装置100、コントローラ200、およびサポート装置400は、ネットワークNW1に接続されている。ネットワークNW1には、たとえば、ベンダーやOSの種類などに依存することなくデータ交換を実現することができる予め定められた規格に従ったネットワークを採用することが望ましい。当該予め定められた規格は、標準規格であってもよいし、ベンダー独自の規格または仕様であってもよい。標準規格としては、たとえば、OPC-UAなどが知られている。OPC-UAとは、ベンダーやOS(Operating System)の種類などに依存することなくデータ交換を実現するために定められた通信の標準規格である。OPC-UAに対応したコントローラ200が用いられることで、表示装置100は、コントローラ200内で管理されるデータ(変数)に容易にアクセスすることができる。
 以下では、OPC-UAを前提として説明を行うが、採用される規格は、OPC-UAに限定されるわけではなく、ベンダーやOSの種類などに依存することなくデータ交換を実現することができる任意の標準規格やベンダー独自の規格または仕様が採用され得る。
 コントローラ200および駆動機器300は、ネットワークNW2に接続されている。ネットワークNW2には、データの到達時間が保証される、定周期通信を行うフィールドネットワークを採用することが好ましい。このような定周期通信を行うフィールドネットワークとしては、EtherCAT(登録商標)、EtherNet/IP(登録商標)、登録商標)、CompoNet(登録商標)などが知られている。
 駆動機器300は、生産工程を自動化するための種々の産業用機器を含む。一例として、駆動機器300は、アームロボットを制御するロボットコントローラや、サーボモータを制御するサーボドライバや、ワークを撮影するための視覚センサや、生産工程で利用されるその他の機器などを含む。
 表示装置100は、たとえば、HMI(Human Machine Interface)、PC(Personal Computer)、サーバ、スマートフォン、タブレット端末、または、表示機能を有するその他の情報処理装置である。表示装置100は、ハードウェア構成として、通信部101と、制御装置102と、表示部120とを含む。
 通信部101は、ネットワークNW1に接続するための通信インターフェイスである。通信部101は、標準規格において定められている複数の変数を規定している情報モデル212をコントローラ200から受信する。ここでいう「変数」とは、駆動機器300の状態を表わすデータのことをいう。異なる言い方をすれば、「変数」とは、対応する駆動機器300の各構成の状態に連動して値が変化するデータのことをいう。典型的には、「変数」は、駆動機器300を制御するためのコントローラ200用の制御プログラムで利用されるデータであり、一つの値を表わすデータだけでなく、配列として表されるデータや、構造体として表されるデータも含む。
 この「変数」について仕様(たとえば、変数名や変数の型など)が定められている標準規格がある。その例が、PackMLである。PackMLで定義されている機能(たとえば、Command、Status、Adminなど)は、OPC-UAの情報モデルに従って表現される。PackMLは、ISA(The International Society of Automation)-88において規定されており、包装機械に特化して定められた標準規格である。このような標準規格に従うことで、装置間で遣り取りするデータについて仕様を決める必要が無くなる。
 通信部101は、情報モデル212をコントローラ200から受信する一方で、表示装置100の画面に関する表示ルール412をサポート装置400から受信する。サポート装置400は、たとえば、PCまたはタブレット端末である。サポート装置400には、コントローラ200用の制御プログラムの開発ツールがインストールされ得る。設計者は、当該開発ツール上でコントローラ200用の制御プログラムを設計し、設計した制御プログラムをコントローラ200にインストールすることができる。また、設計者は、当該開発ツール上で表示装置100に表示する画面設計することもできる。当該開発ツールは、たとえば、オムロン社製の「Sysmac Studio」である。
 表示ルール412は、PackMLなどの標準規格において定められている複数の変数の一部または全部について、変数の値を視覚的に表わすための表示オブジェクトの種類と、当該表示オブジェクトの表示に関する表示定義とを対応付けている。「表示オブジェクト」とは、表示装置100の画面を構成し得る部品(画像)の1つを表わす。「表示定義」とは、対応付けられている表示オブジェクトの表示位置や表示サイズなど画面上の配置に関する定義を表わす。図1の例では、「変数A」には、表示オブジェクト「タコメータ131A」と、表示定義「表示定義A」とが対応付けられている。「変数B」には、表示オブジェクト「サーモメータ131B」と、表示定義「表示定義B」とが対応付けられている。
 制御装置102は、コントローラ200から受信した情報モデル212と、サポート装置400から受信した表示ルール412とに基づいて、表示装置画面130を生成する。より具体的には、制御装置102は、情報モデル212に含まれる複数の変数の内の表示対象の各変数に対応する表示オブジェクトおよび表示定義を表示ルール412から取得し、当該表示オブジェクトの各々を対応する表示定義に従って表示装置画面130上に配置する。図1の例では、表示装置100は、情報モデル212に含まれる「変数A」については、対応付けられている「表示定義A」に従って「タコメータ131A」を表示装置画面130上に配置する。また、表示装置100は、情報モデル212に含まれる「変数B」については、対応付けられている「表示定義B」に従って「サーモメータ131B」を表示装置画面130上に配置する。ユーザは、タコメータ131Aおよびサーモメータ131Bを確認することで、「変数A」および「変数B」の値を視覚的に確認することができる。
 以上のようにして、標準規格に準拠した情報モデル212が用いられることで、設計者は、表示装置画面130を設計する上で、コントローラ200および駆動機器300間で遣り取りされる変数の形式(たとえば、変数名や変数型)を気にする必要がなくなる。その結果、設計者は、各変数に対応付ける表示オブジェクトと表示オブジェクトの表示定義とを規定するだけで表示装置画面130の仕様を決めることができる。これにより、表示装置画面130を設計する必要がなくなる。また、画面を生成するためのプログラムを表示装置100上に事前に準備(ダウンロード)する必要がなくなり、コストの削減、利便性の向上、操作性の向上など種々の効果が生まれる。究極的には、ユーザは、購入した表示装置100を現場に持って行くだけで即座に表示装置100を利用することができる。
 また、表示ルール412の内容を編集して、当該表示ルール412を表示装置100に再配布するだけで、表示装置画面130が再生成されるので、画面の設計変更が容易になる。
 なお、図1の例では、表示ルール412がサポート装置400から配布される例について説明を行ったが、表示ルール412は、その他の外部機器から配布されてもよい。ここでいう「外部機器」とは、表示装置画面130の自動生成を担う装置とは異なる装置のこという。すなわち、図1の例では、外部機器は、コントローラ200やサポート装置400やサーバ(図示しない)などを指す。また、後述のように、表示装置画面130の自動生成機能がサポート装置400に実装されている場合には、外部機器は、表示装置100やコントローラ200やサーバ(図示しない)などを指す。
 また、図1の例では、表示ルール412において、各変数について、表示オブジェクトの種類および表示定義が対応付けられている例について説明を行ったが、表示オブジェクトの種類および表示定義は、それぞれ別データとして定義されてもよい。すなわち、表示装置100は、各変数について表示オブジェクトの種類が対応付けられた表示ルールと、各変数について表示定義が対応付けられた表示ルールとを個別に受信するように構成されてもよい。
 <B.シーケンスフロー>
 図2~図5を参照して、上述の表示装置画面130の生成処理に関する処理フローについて説明する。図2は、表示装置100とコントローラ200とサポート装置400との間のデータの流れを示すシーケンス図である。
 ステップS10において、表示装置100は、標準規格に従う情報モデル212の取得要求をコントローラ200に送信する。情報モデル212の詳細については後述する。
 ステップS12において、コントローラ200は、情報モデル212の取得要求を表示装置100から受信したことに基づいて、情報モデル212を表示装置100に送信する。情報モデル212において、コントローラ200の制御対象である駆動機器300の状態を表わす変数が規定されている。
 ステップS20において、表示装置100は、表示装置画面130の生成操作を受け付けたことに基づいて、表示ルール412の取得要求をコントローラ200に送信する。
 ステップS22において、サポート装置400は、表示ルール412の取得要求を表示装置100から受信したことに基づいて、表示ルール412を表示装置100に送信する。表示ルール412において、標準規格において定められている複数の変数の一部または全部について、変数の値を視覚的に表わすための表示オブジェクトの種類と、当該表示オブジェクトの表示に関する表示定義とが対応付けられている。表示ルール412の詳細については後述する。
 ステップS30において、表示装置100は、表示対象の変数の選択を受け付ける選択画面を表示する。図3は、ステップS30で表示される選択画面の一例を示す図である。
 図3には、変数の選択画面の一例として、選択画面135が示されている。選択画面135は、表示装置100の表示部120に表示される。選択画面135は、情報モデル212に含まれる複数の変数の内から、表示装置画面130に表示させる変数を選択する操作を受け付けるように構成されている。より具体的には、選択画面135は、情報モデル212に含まれる変数名を表示する変数名表示領域136と、各変数に対する選択操作を受け付ける選択操作受付領域137とを含む。
 変数名表示領域136には、情報モデル212に規定される変数名が一覧で表示される。変数名表示領域136に表示される変数名は、各変数を一意に特定することができる情報であればよい。一例として、変数名表示領域136に表示される変数名は、コントローラ200による駆動機器300の制御プログラム上で定義される変数名で表示されてもよいし、各変数を関連付けられた別名で表示されてもよい。
 選択操作受付領域137には、各変数に対応するようにチェックボックスが表示される。変数が選択された場合には、対応するチェックボックスにチェックマークが表示される。変数が未選択である場合には、対応するチェックボックスにチェックマークが表示されない。チェックボックスが選択される度に、チェックマークの表示/非表示が交互に切り替えられる。
 再び図2を参照して、ステップS32において、表示装置100は、変数の選択画面135で選択された変数に従って、上述の表示装置画面130(図1参照)を生成する。より具体的には、表示装置100は、ステップS22で受信した表示ルール412を参照して、選択対象の各変数について対応付けられている表示オブジェクトと表示定義とを取得する。表示装置100は、取得した表示オブジェクトを対応する表示定義に従って表示装置画面130に配置する。その後、表示装置100は、生成した表示装置画面130を表示部120に表示する。
 このように、表示装置100は、ステップS30で選択された任意の変数に従って表示装置画面130を自動生成する。これにより、ユーザは、表示装置画面130の生成プログラムを修正すること無しに、自身が監視したい変数に応じて表示装置画面130を適宜変えることができる。
 ステップS34において、表示装置100は、ステップS32で生成された表示装置画面130を閉じる操作を受け付けたか否かに基づいて、表示装置画面130を保存するか否かを選択する選択画面を表示する。図4は、ステップS34で表示される選択画面の一例を示す図である。
 図4には、保存/非保存の選択画面の一例として、選択画面140が示されている。選択画面140は、表示装置100の表示部120に表示される。選択画面140は、表示装置画面130の作成日時と、表示装置画面130の作成者と、表示装置画面130に付ける画面名の入力領域141と、表示装置画面130について残すメモの入力領域142と、保存ボタン143と、キャンセルボタン144とを含む。
 保存ボタン143が押下されたことに基づいて、表示装置100は、ステップS32で生成された表示装置画面130を画面履歴として保存する。当該画面履歴は、表示装置画面130を生成するための情報(たとえば、選択された変数や各変数に対応付けられている表示ルールなど)、表示装置画面130の生成日時、表示装置画面130の作成者、入力領域141に入力された画面名、および、入力領域142に入力されたメモなどを含む。当該画面履歴は、たとえば、表示装置100の記憶装置110(図16参照)に保存される。
 キャンセルボタン144が押下されたことに基づいて、表示装置100は、ステップS32で生成された表示装置画面130を保存せずに選択画面140を閉じる。
 再び図2を参照して、ステップS38において、表示装置100は、画面履歴の表示操作を受け付けたことに基づいて、画面履歴の選択画面を表示する。図5は、ステップS38で表示される選択画面の一例を示す図である。
 図5には、画面履歴の選択画面の一例として、選択画面145が示されている。選択画面145は、表示装置100の表示部120に表示される。選択画面145は、画面履歴146と、表示ボタン147とを含む。
 表示装置画面130の作成日時146Aと、表示装置画面130の作成者146Bと、表示装置画面130に付けられた画面名146Cと、表示装置画面130について残されたメモ146Dとが画面履歴146において一覧表示される。ユーザは、画面履歴146に表示されている各行を任意に選択することができる。選択された行は、他の行とは異なる態様で表示される。図5の例では、行148が選択されている。
 ステップS40において、表示装置100は、画面履歴146の一の行が選択がされた状態で、表示ボタン147が押下されたことに基づいて、表示装置100は、選択された行に対応する表示装置画面130を表示部120に表示する。このように、表示装置100は、内部の記憶装置110(図16参照)に記憶されている画面履歴の内から一の画面履歴が選択されたことに基づいて、当該一の画面履歴に示される画面を表示部120に再表示する。これにより、ユーザは、自身または他の人が生成した任意の画面を任意のタイミングで呼び出すことができる。
 <C.情報モデル212>
 図6~図9を参照して、上述の情報モデル212(図1参照)について説明する。情報モデル212において、駆動機器300の状態を表わす各変数の仕様が標準規格に従って定められている。当該標準規格の例が、OPC-UAに則って規格化されたPackMLである。情報モデル212は、OPC-UAで規定されるアドレス空間に則って定められている。
 PackMLの理解のために、OPC-UAのアドレス空間について説明する。図6は、OPC-UAで規定されるアドレス空間の一例を示す図である。図6には、OPC-UAで規定されるアドレス空間の一例として、アドレス空間212Aが示されている。
 アドレス空間212Aには、駆動機器300の状態を表わす各変数の論理アドレスが規定されている。論理アドレスとは、表示装置100の記憶装置110(図16参照)上の論理位置のこといい、記憶装置110上の所定の情報(たとえば、図6の「ROOT」)を基準とした相対位置を表わす。
 より具体的には、アドレス空間212Aは、複数のノードで構成される。各ノードは、対応する変数の属性(たとえば、アドレス、変数値、変数の型など)を規定する。各ノードは、他のノードと関連付けられており階層関係を有する。表示装置100は、アドレス空間212Aに規定されている各ノードの論理アドレスを辿ることで、目的のノードを探索することができ、辿りついた目的のノードの属性を参照することで、当該ノードに規定されている変数の型や変数の値を取得することができる。
 図6には、コントローラ「new_Controller_0」内の変数がノードN1~N3として管理されている。表示装置100は、オブジェクト「DeviceSet」に含まれるノード「new_Controller_0」、オブジェクト「Resources」に含まれるノード「CPU」を順に辿ることで、オブジェクト「GlobalVars」に含まれるノードN1~N3にアクセスすることができる。
 図6の例では、ノードN1~N3には、変数の属性として、変数の値と変数の型とが規定されている。表示装置100は、ノードN1を参照することで、ノードN1に関連付けられている変数「Var1」の型および値を特定することができる。また、表示装置100は、ノードN2を参照することで、ノードN2に関連付けられている変数「Var2」の型および値を特定することができる。また、表示装置100は、ノードN3を参照することで、ノードN3に関連付けられている変数「Var3」の型および値を特定することができる。
 PackMLでは、OPC-UAのアドレス空間に従って各変数の変数名などが情報モデルとして定められている。図7は、PackMLに従う情報モデルの一例を示す図である。図7には、PackMLに従う情報モデルの一例として、情報モデル212が示されている。
 図6に示されるアドレス空間212Aと同様に、情報モデル212上では、各変数の論理アドレスが規定されている。PackMLでは、各ノードについてのタグ名と、各タグに対する標準的な変数とが関連付けられている。図7に示されるように、「PackML」タグで示される「Folder」の下位には、「Command」タグで示される「Folder」と、「Status」タグで示される「Folder」と、「Admin」タグで示される「Folder」とが存在する。
 「Command」タグでは、コントローラ200における制御プログラムによって読み書きされる各種変数が管理される。すなわち、タグ「Command」で管理される変数は、コントローラ200や駆動機器300の状態に応じて変化する。
 「Status」タグでは、コントローラ200や駆動機器300の状態を表わす変数が管理される。すなわち、タグ「Command」で管理される変数は、タグ「Command」で管理される変数のフィードバックを受けて変化する。
 「Admin」タグでは、コントローラ200の上位システムによって収集されるデータが管理される。当該データは、FAシステム1の生産能力の分析やFAシステム1に対する操作情報などを含む。
 図8は、「Status」タグで管理される状態変数の一例を示す図である。図8には、「Status」タグで示される状態変数149Aが示されている。状態変数149Aは、「Status」構造体で定義される。状態変数149Aは、メンバとして、「StatusCurrent」と、「UnitModeCurrent」とを含む。
 「StatusCurrent」は、コントローラ200や駆動機器300の状態を示す変数である。一例として、「StatusCurrent」が「1」であることは、「初期化中」を示す。「StatusCurrent」が「2」であることは、「停止状態」を示す。「StatusCurrent」が「3」であることは、「開始中」を示す。
 「UnitModeCurrent」は、コントローラ200または駆動機器300の動作モードを示す変数である。一例として、「UnitModeCurrent」が「1」であることは、「生産モード」を示す。「UnitModeCurrent」が「2」であることは、「メンテナンスモード」を示す。
 情報モデル212では、状態変数以外にも様々な変数が管理される。一例として、情報モデル212は、複数のプロセス変数を含む。プロセス変数では、データの型だけが決まっており、プロセス変数の定義自体は、ベンダーや設計者によって決められる。
 図9は、プロセス変数の1つのデータ構造を示す図である。図9には、構造体のプロセス変数149Bが示されている。プロセス変数149Bは、メンバとして、「ID」、「Name」、「Unit」、「Value」を含む。
 <D.表示ルール412>
 上述のように、表示ルール412では、情報モデル212で定義される変数の内の表示対象の各変数について、表示オブジェクトの種類と、表示定義とが対応付けられている。各変数に対応付けられる表示オブジェクトと、各変数に対応付けられる表示定義とは、別個に定義されてもよいし、一体的に定義されてもよい。以下では、図10~図12を参照して、各変数に対応付けられる表示オブジェクトと、各変数に対応付けられる表示定義とが、別個に定義されている場合の表示ルール412について説明する。
 なお、以下では、表示対象の各変数と表示オブジェクトの種類との対応関係を「オブジェクト情報」と称する。表示対象の各変数と表示定義との対応関係を「テンプレート情報」と称する。
  (D1.オブジェクト情報)
 図10は、オブジェクト情報の一例を示す図である。図10には、オブジェクト情報の一例として、オブジェクト情報412Aが示されている。オブジェクト情報412Aは、表示ルール412に含まれる情報である。
 図10に示されるように、オブジェクト情報412Aにおいて、表示オブジェクト名と、表示オブジェクトの種類と、情報モデル212における変数名と、当該変数の設定値との対応関係が規定される。
 一例として、上述のプロセス変数149B(図9参照)について表示オブジェクトが対応付けられる。上述のように、プロセス変数149Bの定義自体は、ベンダーや設計者によって定義される。すなわち、プロセス変数149Bのメンバ「ID」、「Name」、「Unit」、「Value」について、表示オブジェクトの対応付けを行う必要がある。一例として、「ID」の「1」~「999」には表示オブジェクトとして圧力計が対応付けられ、「ID」の「1000」~「1999」には表示オブジェクトとして温度計が対応付けられる。
 図10の例では、プロセス変数「MachineA_Prssure1」には、圧力計の表示オブジェクト「タコメータ」が対応付けられている。より具体的には、当該プロセス変数のメンバ「ID」には、ID「100」が対応付けられている。当該プロセス変数のメンバ「Name」には、名前「装置A圧力バルブ1」が対応付けられている。当該プロセス変数のメンバ「Unit」には、単位「K」が対応付けられている。これにより、ID「100」で示されるプロセス変数「MachineA_Prssure1」について、表示オブジェクト「タコメータ」が対応付けられる。
 表示オブジェクト「タコメータ」は、当該プロセス変数のメンバ「Value」の値に応じて表示態様を変える。典型的には、表示装置100は、プロセス変数のメンバ「Value」の値に連動させて表示オブジェクト「タコメータ」のメータを逐次更新する。図10の例では、プロセス変数のメンバ「Value」の値が「0」であるので、「タコメータ」のメータが「0」を指すように表示態様が更新される。
 プロセス変数「MachineA_Thermo1」には、温度計の表示オブジェクト「サーモメータ」が対応付けられている。より具体的には、当該プロセス変数のメンバ「ID」には、ID「1500」が対応付けられている。当該プロセス変数のメンバ「Name」には、名前「装置A温度1」が対応付けられている。当該プロセス変数のメンバ「Unit」には、単位「℃」が対応付けられている。これにより、ID「1500」で示されるプロセス変数「MachineA_Prssure1」について、表示オブジェクト「タコメータ」が対応付けられる。
 表示オブジェクト「サーモメータ」は、当該プロセス変数のメンバ「Value」の値に応じて表示態様を変える。典型的には、表示装置100は、プロセス変数のメンバ「Value」の値に連動させて表示オブジェクト「サーモメータ」のメータを逐次更新する。図10の例では、プロセス変数のメンバ「Value」の値が「0」であるので、「サーモメータ」のメータが「0」を指すように表示態様が更新される。
 また、プロセス変数の他にも、上述の状態変数149A(図8参照)について表示オブジェクトが対応付けられている。図10の例では、状態変数「Status」について表示オブジェクト「状態遷移図」が対応付けられている。表示オブジェクト「状態遷移図」は、FAシステム1の各状態の遷移関係を視覚的に表わす表示オブジェクトである。
 図8で説明したように、状態変数「Status」は、メンバとして、現状態を示す「StatusCurrent」と、現在の動作状態を示す「UnitModeCurrent」とを含む。表示オブジェクト「状態遷移図」は、状態変数のメンバ「StatusCurrent」の値と、「UnitModeCurrent」の値とに応じて表示態様を変える。図10の例では、メンバ「StatusCurrent」の値が「2」であるので、その値に対応する「Stopped」状態(図8参照)が「状態遷移図」において強調される。また、メンバ「UnitModeCurrent」の値が「1」であるので、その値に対応する「PRODUCTION MODE」(図8参照)が「状態遷移図」において強調される。
 なお、状態変数「Status」には、表示オブジェクト「状態遷移図」の代わりに、表示オブジェクト「ステータスランプ」が対応付けられてもいい。表示オブジェクト「ステータスランプ」は、特定の状態と特定の動作モードとをそれぞれ2種類の表示態様(たとえば、点灯および消灯)で示す表示オブジェクトである。表示オブジェクト「ステータスランプ」は、状態変数のメンバ「StatusCurrent」の値と、「UnitModeCurrent」の値とに応じて表示態様を変える。
 図10の例では、メンバ「StatusCurrent」の値が「2」であるので、その値に対応する「Stopped」状態(図8参照)が「ステータスランプ」において点灯する。また、メンバ「UnitModeCurrent」の値が「1」であるので、その値に対応する「PRODUCTION MODE」(図8参照)が「ステータスランプ」点灯する。
  (D2.テンプレート情報)
 次に、図11および図12を参照して、表示対象の各変数と表示定義との対応関係を規定するテンプレート情報について説明する。図11は、テンプレート情報の一例を示す図である。図12は、図11に示されるテンプレート情報の続きを示す図である。図11および図12には、テンプレート情報の一例として、テンプレート情報412Bが示されている。
 テンプレート情報412Bは、表示ルール412に含まれる情報である。オブジェクト情報412Aにおいて、表示オブジェクト名と、表示オブジェクトの種類と、表示定義との対応関係が規定される。
 表示定義は、表示オブジェクトの表示位置(座標値)と、表示オブジェクトのサイズとの少なくとも一方を含む。好ましくは、表示定義は、表示オブジェクトを説明するための文字情報をさらに含む。表示定義は、たとえば、XML(Extensible Markup Language)で定義される。
 図11の例では、圧力計の表示オブジェクト「タコメータ」は、表示装置画面130(図1参照)上の座標(0,0)を基準として、横幅「80」、縦幅「100」のサイズで表示されるように定義されている。また、表示オブジェクトを説明するための文字情報として、テキスト「ID:」に並べて、上述のプロセス変数のメンバ「ID」の内容が表示されるように定義されている。この文字情報は、表示装置画面130上の座標(140,20)を基準としてフォントサイズ「12」で表示されるように定義されている。また、表示オブジェクトを説明するための文字情報として、テキスト「Name:」に並べて、上述のプロセス変数のメンバ「Name」の内容が表示されるように定義されている。この文字情報は、表示装置画面130上の座標(140,60)を基準としてフォントサイズ「12」で表示されるように定義されている。
 図11および図12に示されるように、温度計の表示オブジェクト「サーモメータ」、ステータスの表示オブジェクト「状態遷移図」、ステータスの表示オブジェクト「ステータスランプ」についても同様に表示定義が対応付けられている。
 <E.表示装置画面130>
 上述の図10および図11を参照しつつ、図13および図14を参照して、表示装置画面の生成処理について説明する。図13は、生成された表示装置画面の一例を示す図である。図13には、生成された表示装置画面の一例として、表示装置画面130が示されている。
 表示装置100は、表示ルール412のオブジェクト情報412A(図10参照)に含まれる表示オブジェクトの内から、変数の選択画面135(図3参照)で選択された各変数に対応付けられている表示オブジェクトを特定する。たとえば、変数の選択画面135において、プロセス変数「装置Aバルブ圧力1」およびプロセス変数「装置A温度1」が選択されたとする。この場合、表示装置100は、表示ルール412のオブジェクト情報412Aを参照して、プロセス変数「装置Aバルブ圧力1」に対応付けられている表示オブジェクト「タコメータ」と、プロセス変数「装置A温度1」に対応付けられている表示オブジェクト「サーモメータ」とを取得する。
 次に、表示装置100は、表示ルール412のテンプレート情報412B(図11参照)に含まれる表示定義の内から、選択された表示オブジェクトに対応付けられている表示定義を特定する。より具体的には、表示装置100は、表示ルール412のテンプレート情報412Bを参照して、表示オブジェクト「タコメータ」に対応付けられている表示定義と、表示オブジェクト「サーモメータ」に対応付けられている表示定義とを取得する。次に、表示装置100は、表示オブジェクト「タコメータ」および表示オブジェクト「サーモメータ」をそれぞれ、対応の表示定義で示される表示装置画面130上の表示位置に配置する。これにより、表示装置画面130が生成される。
 その後、表示装置100は、コントローラ200から逐次的に受信したプロセス変数の値に応じて、表示装置画面130上の対応する表示オブジェクトの表示態様を更新する。一例として、表示装置100は、駆動機器300内のいずれかのコンポーネントの圧力を表わすプロセス変数をコントローラ200から受信した場合、当該プロセス変数に対応付けられている表示オブジェクト「タコメータ」の表示を更新する。典型的には、表示装置100は、プロセス変数の値に連動させて表示オブジェクト「タコメータ」のメータを更新する。また、表示装置100は、駆動機器300内のいずれかのコンポーネントの温度を表わすプロセス変数をコントローラ200から受信した場合、当該プロセス変数に対応付けられている表示オブジェクト「サーモメータ」の表示を更新する。典型的には、表示装置100は、プロセス変数の値に連動させて表示オブジェクト「サーモメータ」のメータを順次更新する。
 このように、表示対象として選択された変数の大きさに連動させて表示オブジェクトの表示態様が更新されることで、ユーザは、駆動機器300の状態を直感的に把握することができる。
 図14は、生成された表示装置画面の他の例を示す図である。図14には、生成された表示装置画面の他の例として、表示装置画面130Aが示されている。
 図14の例では、変数の選択画面135(図3参照)において、状態変数「Status」が選択されたとする。このことに基づいて、表示装置100は、表示ルール412のオブジェクト情報412A(図10参照)を参照して、状態変数「Status」に対応付けられている表示オブジェクトを取得する。その結果、表示オブジェクト「状態遷移図」が取得される。
 次に、表示装置100は、表示ルール412のテンプレート情報412B(図11参照)に含まれる表示定義の内から、選択された表示オブジェクト「状態遷移図」に対応付けられている表示定義を特定する。その後、表示装置100は、取得した表示定義に従って、表示装置画面130A上に表示オブジェクト「状態遷移図」を配置する。これにより、表示装置画面130Aが生成される。
 その後、表示装置100は、コントローラ200から逐次的に受信した状態変数の値に応じて、表示オブジェクト「状態遷移図」の表示を更新する。典型的には、表示装置100は、状態変数「Status」のメンバである「StatusCurrent」を参照して現状態を特定し、当該現状態に対応する状態遷移図上の状態を他の状態と異なる表示態様で表示する。図14の例では、現状態の「EXCUTE」が他の状態とは異なる態様で表示されている。
 その後、表示装置100は、状態変数「Status」のメンバである「StatusCurrent」の値に合わせて「状態遷移図」の表示態様を逐次更新する。このとき、表示装置100は、コントローラ200から受信した、状態遷移に関する変数(コマンド変数)に基づいて、現状態から遷移可能な次状態に順次遷移する。
 一例として、表示装置100は、「Hold」コマンドを受信すると、現状態を「EXCUTE」状態から「HOLDING」状態に遷移させる。また、表示装置100は、「SC」コマンド(実行完了コマンド)を受信すると、現状態を「EXCUTE」状態から「COMPLETING」状態に遷移させる。また、表示装置100は、「Suspend」コマンドを受信すると、現状態を「EXCUTE」状態から「SUSPENDING」状態に遷移させる。
 <F.表示装置画面130の変形例>
 図15を参照して、表示装置画面130の生成方法の変形例について説明する。図15は、変形例に従う表示装置画面130Bを示す図である。
 上述では、各表示オブジェクトの表示位置が固定されている前提で説明を行ったが、各表示オブジェクトの表示位置は、固定されている必要はない。たとえば、表示装置100は、選択された各変数に対応付けられている表示オブジェクトを所定順で並べて表示してもよい。
 本変形例においては、表示装置画面130Bに対して、表示オブジェクトの表示領域および表示順が予め定められている。図15の例では、表示装置画面130Bに対して、表示オブジェクトの表示領域161A~161Fが定められており、各表示オブジェクトは、表示領域161A~161Fに順に表示される。
 各表示オブジェクトの表示順の決め方は、任意である。一例として、表示装置100は、変数の選択画面135(図3参照)での表示順に従って、選択された変数に対応する各表示オブジェクトを表示領域161A~161Fに順に表示する。あるいは、表示装置100は、変数の選択画面135での変数の選択順に従って、選択された変数に対応する各表示オブジェクトを表示領域161A~161Fに順に表示する。
 <G.ハードウェア構成>
 図16~図18を参照して、表示装置100、コントローラ200、およびサポート装置400のハードウェア構成について順に説明する。
  (G1.表示装置100のハードウェア構成)
 まず、図16を参照して、表示装置100のハードウェア構成について説明する。図16は、表示装置100のハードウェア構成を示すブロック図である。
 表示装置100は、汎用的なアーキテクチャを有するハードウェア構成を有している。すなわち、表示装置100は、一種のパーソナルコンピュータとして実装される。但し、表示装置100を汎用的なハードウェアではなく、専用ハードウェアを用いて実装してもよい。
 より具体的には、表示装置100は、CPU(Central Processing Unit)やMPU(Micro-Processing Unit)などの制御装置102と、主メモリ104と、フラッシュメモリなどの記憶装置110と、通信インターフェイス112と、I/O(Input/Output)インターフェイス114と、フィールドバスインターフェイス116と、表示部120とを含む。これらのコンポーネントは、内部バス125を介して、互いにデータ通信可能に接続されている。
 制御装置102は、記憶装置110に格納された制御プログラム(図示しない)を読み出して、主メモリ104に展開して実行することで、表示装置100を制御する。すなわち、制御装置102は、主メモリ104および記憶装置110と連係することで、制御演算を実行する制御部を実現する。
 通信インターフェイス112、I/Oインターフェイス114、および、フィールドバスインターフェイス116は、表示装置100と外部装置とのデータの遣り取りを仲介する。より具体的には、通信インターフェイス112は、上述の通信部101の一例であり、ネットワークNW1(図1参照)などを介した、コントローラ200やサポート装置400との通信を仲介する。通信インターフェイス112には、たとえば、EtherNETに従う通信が可能なコンポーネントが採用され得る。I/Oインターフェイス114は、各種のユーザインターフェイス装置(たとえば、キーボード、マウスなど)との通信を仲介する。I/Oインターフェイス114としては、たとえば、USB通信やシリアル通信が可能なコンポーネントを採用することができる。フィールドバスインターフェイス116は、コントローラ200との間のデータの遣り取りを仲介する。フィールドバスインターフェイス116には、たとえば、EtherCATに従う通信が可能なコンポーネントが採用される。
 表示部120は、ユーザに対して各種情報を提示するとともに、ユーザからの操作を受け付ける。より具体的には、表示部120は、ディスプレイ122と、タッチパネル124とを含む。ディスプレイ122は、典型的には、LCD(Liquid Crystal Display)や有機EL(Electro Luminescence)ディスプレイなどからなる。タッチパネル124は、ディスプレイ122の上に装着され、ユーザによるタッチ操作を受け付ける。ディスプレイ122は、典型的には、感圧式や押圧式のデバイスが用いられる。
  (G2.コントローラ200のハードウェア構成)
 図17を参照して、コントローラ200のハードウェア構成について説明する。図17は、コントローラ200のハードウェア構成の一例を示す模式図である。
 コントローラ200は、通信インターフェイス201と、CPU(Central Processing Unit)やMPU(Micro-Processing Unit)などの制御装置202と、チップセット204と、主メモリ206と、記憶装置208と、内部バスコントローラ222と、フィールドバスコントローラ224と、メモリカードインターフェイス239とを含む。
 制御装置202は、記憶装置208に格納された制御プログラム211を読み出して、主メモリ206に展開して実行することで、駆動機器300の一例であるサーボドライバ300Bなどに対する任意の制御を実現する。制御プログラム211は、コントローラ200を制御するための各種プログラムを含む。一例として、制御プログラム211は、システムプログラム209およびユーザプログラム210などを含む。システムプログラム209は、データの入出力処理や実行タイミング制御などの、コントローラ200の基本的な機能を提供するための命令コードを含む。ユーザプログラム210は、制御対象に応じて任意に設計され、シーケンス制御を実行するためのシーケンスプログラム210Aおよびモーション制御を実行するためのモーションプログラム210Bとを含む。制御プログラム211は、たとえば、ラダー言語やST(Structured Text)言語で記述されているPLCプログラムである。制御プログラム211の記述は、情報モデル212に規定される各変数を含む。
 チップセット204は、各コンポーネントを制御することで、コントローラ200全体としての処理を実現する。
 内部バスコントローラ222は、コントローラ200と内部バスを通じて連結される各種デバイスとデータを遣り取りするインターフェイスである。このようなデバイスの一例として、I/Oユニット226が接続されている。
 フィールドバスコントローラ224は、コントローラ200とフィールドバスを通じて連結される各種の駆動機器300とデータを遣り取りするインターフェイスである。このようなデバイスの一例として、サーボドライバ300Bが接続されている。他にも、ロボットコントローラや視覚センサなどの駆動機器が接続されてもよい。
 内部バスコントローラ222およびフィールドバスコントローラ224は、接続されているデバイスに対して任意の指令を与えることができるとともに、デバイスが管理している任意のデータ(測定値を含む)を取得することができる。また、内部バスコントローラ222および/またはフィールドバスコントローラ224は、サーボドライバ300Bとの間でデータを遣り取りするためのインターフェイスとしても機能する。
 通信インターフェイス201は、各種の有線/無線ネットワークを通じたデータの遣り取りを制御する。メモリカードインターフェイス239は、外部記憶媒体の一例であるメモリカード240(たとえば、SDカード)を着脱可能に構成されており、メモリカード240に対してデータを書き込み、メモリカード240からデータを読出すことが可能になっている。
  (G3.サポート装置400のハードウェア構成)
 図18を参照して、サポート装置400のハードウェア構成について説明する。図18は、サポート装置400のハードウェア構成を示す模式図である。
 サポート装置400は、一例として、汎用的なコンピュータアーキテクチャに準じて構成されるコンピュータからなる。サポート装置400は、CPUやMPUなどの制御装置402と、主メモリ404と、フラッシュメモリなどの記憶装置410と、通信インターフェイス411と、I/Oインターフェイス414と、表示インターフェイス420とを含む。これらのコンポーネントは、内部バス425を介して互いに通信可能に接続されている。
 制御装置402は、プログラムを主メモリ404に展開して実行することで、本実施の形態に従う各種処理を実現する。主メモリ404は、揮発性メモリにより構成され、制御装置402によるプログラム実行に必要なワークメモリとして機能する。記憶装置410には、たとえば、サポート装置400を制御するための各種プログラムや、上述の表示ルール412などが格納される。
 通信インターフェイス411は、外部機器との間でネットワークを介してデータを遣り取りする。当該外部機器は、たとえば、表示装置100やコントローラ200、サーバ、その他の通信機器などを含む。サポート装置400は、通信インターフェイス411を介して、情報処理プログラムをダウンロードできるように構成されてもよい。当該情報処理プログラムは、コントローラ200の制御プログラムを開発するための開発ツールを提供するためのプログラムである。また、当該開発ツールは、上述の表示ルール412を編集することできるように構成される。
 I/Oインターフェイス414は、操作部415に接続され、操作部415からのユーザ操作を示す信号を取り込む。操作部415は、典型的には、キーボード、マウス、タッチパネル、タッチパッドなどからなり、ユーザからの操作を受け付ける。
 表示インターフェイス420は、表示部421と接続され、制御装置402などからの指令に従って、表示部421に対して、画像を表示するための画像信号を送出する。表示部421は、ディスプレイ、インジケータなどからなり、ユーザに対して各種情報を提示する。
 <H.表示装置100の制御構造>
 図19を参照して、表示装置100の制御構造について説明する。図19は、表示装置100が実行する処理の一部を表わすフローチャートである。図19に示される処理は、表示装置100の制御装置102がプログラムを実行することにより実現される。他の局面において、処理の一部または全部が、回路素子またはその他のハードウェアによって実行されてもよい。
 ステップS110において、制御装置102は、標準規格で規定される情報モデル212(図7参照)をコントローラ200から受信する。
 ステップS112において、制御装置102は、表示装置画面130の生成操作を受け付けたか否かを判断する。一例として、制御装置102は、表示装置画面130に予めインストールされている画面生成プログラムが起動されたことに基づいて、表示装置画面130の生成操作を受けたと判断する。ステップS112において、制御装置102は、表示装置画面130の生成操作を受け付けたと判断した場合(ステップS112においてYES)、制御をステップS120に切り替える。そうでない場合には(ステップS112においてNO)、制御装置102は、ステップS112の処理を再び実行する。
 ステップS120において、制御装置102は、上述の表示ルール412(図10および図11参照)をサポート装置400から受信する。
 ステップS122において、制御装置102は、ステップS110で受信した情報モデル212に規定される変数の一覧を選択画面135(図3参照)に表示する。ユーザは、選択画面135に表示されている変数の内から任意の変数を選択する。
 ステップS124において、制御装置102は、選択画面135で選択された変数に従って表示装置画面130を生成する。より具体的には、制御装置102は、ステップS120で受信した表示ルール412を参照して、選択対象の各変数について対応付けられている表示オブジェクトと表示定義とを取得する。制御装置102は、取得した表示オブジェクトを対応する表示定義に従って表示装置画面130に配置する。その後、制御装置102は、生成した表示装置画面130を表示部120に表示する。
 ステップS130において、制御装置102は、監視対象として選択された変数をコントローラ200から受信したか否かを判断する。制御装置102は、監視対象として選択された変数をコントローラ200から受信したと判断した場合(ステップS130においてYES)、制御をステップS132に切り替える。そうでない場合には(ステップS130においてNO)、制御装置102は、制御をステップS140に切り替える。
 ステップS132において、制御装置102は、ステップS130で受信した変数の値に応じて、当該変数に付けられている表示装置画面130上の表示オブジェクトについて表示態様を更新する。すなわち、制御装置102は、ステップS130で受信した変数の値に連動させて対応する表示オブジェクトの表示態様を変える。これにより、ユーザは、コントローラ200や駆動機器300の状態を直感的に把握することができる。
 ステップS140において、制御装置102は、表示装置画面130を閉じる操作を受け付けたか否かを判断する。制御装置102は、表示装置画面130を閉じる操作を受け付けたと判断した場合(ステップS140においてYES)、制御をステップS152に切り替える。そうでない場合には(ステップS140においてNO)、制御装置102は、制御をステップS130に戻す。
 ステップS152において、制御装置102は、現在の表示装置画面130について保存操作を受け付けたか否かを判断する。制御装置102は、現在の表示装置画面130について保存操作を受け付けたと判断した場合(ステップS152においてYES)、制御をステップS154に切り替える。そうでない場合には(ステップS152においてNO)、制御装置102は、図19に示される処理を終了する。
 ステップS154において、制御装置102は、現在の表示装置画面130を画面履歴として保存する。画面履歴は、表示装置画面130を生成するための情報(たとえば、選択された変数や各変数に対応付けられている表示ルールなど)、表示装置画面130の生成日時、表示装置画面130の作成者、表示装置画面130に付された画面名、および、表示装置画面130ついて残されたメモなどを含む。
 <I.表示装置100の機能構成>
 図20を参照して、表示装置100の機能について説明する。図20は、表示装置100の機能構成の一例を示す図である。
 図20には、表示装置100の一例であるHMI100Aが示されている。HMI100Aは、アプリケーションとして、OPC-UAクライアント180と、メインプログラム184と、画面生成プログラム185と、画面制御プログラム186とを含む。また、HMI100Aは、データとして、記憶装置110の記憶領域110Bに格納されている表示装置画面130と、記憶装置110の記憶領域110Aに格納されている画面履歴146と、情報モデル212と、表示ルール412とを含む。
 HMI100Aは、OPC-UAの通信規格に従って、コントローラ200と通信する。OPC-UAに従った通信を実現するためには、表示装置100をクライアントとして機能させるとともに、コントローラ200をサーバとして機能させる必要がある。より具体的には、コントローラ200には、サーバ機能を有するOPC-UAサーバ242がインストールされている。ここでいう「OPC-UAサーバ」とは、通信ドライバとして機能するアプリケーション(プログラム)である。
 また、HMI100Aには、OPC-UAサーバ150との通信機能を有するOPC-UAクライアント180がインストールされている。ここでいう「OPC-UAクライアント」とは、OPC-UAサーバ150に通信要求(アクセス要求)を送信するアプリケーションである。
 OPC-UAクライアント180は、ディスカバリ機能180Aと、サブスクリプション機能180Bとを有する。ディスカバリ機能180Aは、コントローラ200のOPC-UAサーバ242に情報モデル212の取得要求を送信する。ディスカバリ機能180Aは、コントローラ200から情報モデル212を受信し、情報モデル212のコピーを生成する。サブスクリプション機能180Bは、指定された通信周期が経過するごとに、OPC-UAサーバ150に対して変数の取得命令を送信し、当該変数をOPC-UAサーバ150から定期的に受信する。受信した変数の値は、表示装置画面130に逐次反映される。
 メインプログラム184および画面生成プログラム185は、互いに協働して、表示装置画面130を生成する。より具体的には、メインプログラム184は、ユーザの入力操作を受け付けるユーザインターフェイスの表示機能を実行する。当該ユーザインターフェイスによって提供される画面は、変数の選択画面135(図3参照)や、表示装置画面130についての保存の選択画面140(図4参照)、画面履歴の選択画面145(図5参照)などを含む。
 変数の選択画面135は、ユーザが表示装置画面130の生成操作を表示部120に対して行ったことに基づいて表示部120に表示される。選択画面135に対して変数の選択操作が行われた場合、メインプログラム184は、画面生成プログラム185に対して表示装置画面130の生成依頼を出力する。
 表示装置画面130の保存/非保存を選択するための選択画面140は、ユーザが表示装置画面130を閉じる操作を表示部120に対して行ったことに基づいて表示部120に表示される。選択画面140に対して保存操作が行われた場合、メインプログラム184は、現在の表示装置画面130を画面履歴146として保存する。
 画面履歴の選択画面145は、ユーザが過去に生成された表示装置画面130の呼出し操作を表示部120に対して行ったことに基づいて表示部120に表示される。選択画面145に対して画面履歴の選択操作が行われた場合、メインプログラム184は、選択された表示装置画面130を表示するための情報を記憶装置110の記憶領域110Bに展開する。
 画面生成プログラム185は、表示装置画面130の生成命令をメインプログラム184から受けたことに基づいて、表示装置画面130を生成する。より具体的には、画面生成プログラム185は、サポート装置400から受信した表示ルール412を参照して、表示対象として選択された各変数に対応付けられている表示オブジェクトと、当該表示オブジェクトの表示定義とを取得する。次に、画面生成プログラム185は、取得した表示オブジェクトを対応する表示定義に従って表示装置画面130に配置する。なお、表示ルール412に規定される内容は、サポート装置400において、追加または編集され得る。
 画面制御プログラム186は、記憶装置110の記憶領域110Bに格納されている表示装置画面130を参照して、当該表示装置画面130を表示部120に表示する。この表示処理は、メインプログラム184から更新命令を受け付ける度に実行される。
 <J.変形例1>
 上述では、表示装置画面130の生成機能が表示装置100に実装されている前提で説明を行ったが、表示装置画面130の生成機能は、サポート装置400に実装されてもよい。
 以下では、図21を参照して、表示装置画面130の生成機能がサポート装置400に実装されている例について説明を行う。図21は、サポート装置400の機能構成の一例を示す図である。
 図21には、表示装置100の一例であるサポート装置400が示されている。サポート装置400は、アプリケーションとして、OPC-UAクライアント180と、メインプログラム184と、画面生成プログラム185とを含む。また、サポート装置400は、データとして、記憶装置110の記憶領域110Bに格納されている表示装置画面130と、記憶装置110の記憶領域110Cに格納されているプロジェクトデータ111Aと、情報モデル212と、表示ルール412とを含む。
 コントローラ200は、アプリケーションとして、OPC-UAサーバ242を含む。コントローラ200は、データとして、情報モデル212を含む。
 OPC-UAクライアント180は、ディスカバリ機能180Aを有する。ディスカバリ機能180Aは、コントローラ200のOPC-UAサーバ242に情報モデル212の取得要求を送信する。ディスカバリ機能180Aは、コントローラ200から情報モデル212を受信し、情報モデル212のコピーを生成する。
 メインプログラム184および画面生成プログラム185は、互いに協働して、表示装置画面130を生成する。より具体的には、メインプログラム184は、ユーザの入力操作を受け付けるユーザインターフェイス120Aの表示機能を実行する。ユーザインターフェイス120Aは、コントローラ200に対する制御プログラムの設計画面や、表示ルール412の編集画面や、画面生成プログラム185に関する各種設計画面などを含む。ユーザインターフェイス120Aに対する設計内容は、プロジェクトデータ111Aとして保存される。
 画面生成プログラム185は、表示装置画面130の生成命令をメインプログラム184から受けたことに基づいて、表示装置画面130を生成する。より具体的には、画面生成プログラム185は、表示ルール412を参照して、表示対象として選択された各変数に対応付けられている表示オブジェクトと、当該表示オブジェクトの表示定義とを取得する。次に、画面生成プログラム185は、取得した表示オブジェクトを対応する表示定義に従って表示装置画面130に配置する。
 <K.変形例2>
 上述の変形例1では、情報モデル212がOPC-UAサーバとOPC-UAクライアントとの間の通信によって取得される例について説明を行ったが、情報モデル212は、他の方法で取得されてもよい。すなわち、表示装置画面130の生成機能を実現するために、OPC-UAサーバおよびOPC-UAクライアントが必ずしも利用される必要はない。
 以下では、図22を参照して、OPC-UAサーバおよびOPC-UAクライアントを利用しない表示装置画面130の生成機能について説明する。図22は、サポート装置400の機能構成の変形例を示す図である。
 図22には、表示装置100の一例であるサポート装置400が示されている。サポート装置400は、表示装置画面130に関する設計データ190と、コントローラ200の制御プログラム192に関する設計データ191を含む。設計データ190は、記憶装置110の記憶領域110Bに格納されている表示装置画面130と、記憶装置110の記憶領域110Cに格納されているプロジェクトデータ111Aと、メインプログラム184と、画面生成プログラム185と、情報モデル212と、表示ルール412とを含む。設計データ191は、コントローラ200の制御プログラム192を含む。
 本変形例においては、HMIとコントローラ200とサポート装置400とで共通で利用される情報モデル212が予め格納されている。情報モデル212の取得方法は、任意である。たとえば、外部記憶装置に格納されている情報モデル212がサポート装置400に書き込まれてもよいし、サーバなどからダウンロードされてもよい。
 画面生成プログラム185は、表示装置画面130の生成命令をメインプログラム184から受けたことに基づいて、表示装置画面130を生成する。より具体的には、画面生成プログラム185は、表示ルール412を参照して、表示対象として選択された各変数に対応付けられている表示オブジェクトと、当該表示オブジェクトの表示定義とを取得する。次に、画面生成プログラム185は、取得した表示オブジェクトを対応する表示定義に従って表示装置画面130に配置する。
 <L.まとめ>
 以上のようにして、表示装置100は、予め定められた規格に従った情報モデル212と、表示ルール412とに基づいて、表示装置画面130を生成する。より具体的には、情報モデル212には、駆動機器300の状態を表わす複数の変数を含む。表示ルール412には、駆動機器300の状態を表わす各変数と、表示オブジェクトの種類と、当該表示オブジェクトの表示定義との対応関係が規定されている。表示装置100は、情報モデル212に含まれる変数の内の表示対象の各変数に対応する表示オブジェクトおよび表示定義を表示ルール412から取得し、当該表示オブジェクトの各々を対応する表示定義に従って表示装置画面130上に配置する。
 予め定められた規格に準拠した情報モデル212が用いられることで、設計者は、表示装置画面130を設計する上で、コントローラ200および駆動機器300間で遣り取りされる変数の形式(たとえば、変数名や変数型)を気にする必要がなくなる。その結果、設計者は、各変数に対応付ける表示オブジェクトと各表示オブジェクトの表示定義とを規定するだけで表示装置画面130の仕様を決めることができる。これにより、表示装置画面130を設計する必要がなくなる。また、画面を生成するためのプログラムを表示装置100上に事前に準備(ダウンロード)する必要がなくなり、コストの削減、利便性の向上、操作性の向上など種々の効果が生まれる。究極的には、ユーザは、購入した表示装置100を現場に持って行くだけで即座に表示装置100を利用することができる。
 <M.付記>
 以上のように、本実施形態は以下のような開示を含む。
 [構成1]
 コントローラ(200)によって制御される駆動機器(300)の状態を表わす画面(130)を表示するための表示部(120)と、
 前記駆動機器(300)の状態を表わす変数であって予め定められた規格において定められている複数の変数を規定している情報モデル(212)を前記コントローラ(200)から受信するための通信部(101)とを備え、
 前記通信部(101)は、前記画面(130)に関する表示ルール(412)を前記コントローラ(200)または外部機器(400)からさらに受信し、
 前記表示ルール(412)において、前記予め定められた規格において定められている複数の変数の一部または全部について、変数の値を視覚的に表わすための表示オブジェクトの種類と、当該表示オブジェクトの表示に関する表示定義とが対応付けられており、
 前記画面(130)を生成するための制御装置(102)をさらに備え、
 前記制御装置(102)は、前記情報モデル(212)に含まれる複数の変数の内の表示対象の各変数に対応する表示オブジェクトおよび表示定義を前記表示ルール(412)から取得し、当該表示オブジェクトの各々を対応する表示定義に従って前記画面(130)上に配置する、表示装置。
 [構成2]
 前記表示部(120)は、前記情報モデル(212)に含まれる複数の変数の内から、前記表示対象の変数を選択する操作を受け付けるように構成されている、構成1に記載の表示装置。
 [構成3]
 前記制御装置(102)は、前記コントローラ(200)から逐次的に受信した変数の値に応じて、対応する表示オブジェクトの表示態様を更新する、構成1または2に記載の表示装置。
 [構成4]
 前記表示装置(100)は、生成された画面(130)を画面履歴として記憶するための記憶装置をさらに備え、
 前記制御装置(102)は、前記記憶装置に記憶されている前記画面履歴の内から一の画面履歴が選択されたことに基づいて、当該一の画面履歴に示される画面を前記表示部(120)に再表示する、構成1~3のいずれか1項に記載の表示装置。
 [構成5]
 前記表示定義は、前記画面(130)上に表示される表示オブジェクトの表示位置と、当該表示オブジェクトの表示サイズとの少なくとも一方を含む、構成1~4のいずれか1項に記載の表示装置。
 [構成6]
 前記予め定められた規格は、OPC-UA(Object Linking and Embedding for Process Control Unified Architecture)を含む、構成1~5のいずれか1項に記載の表示装置。
 [構成7]
 コントローラ(200)によって制御される駆動機器(300)の状態を表わす画面(130)に関する画面生成方法であって、
 前記駆動機器(300)の状態を表わす変数であって予め定められた規格において定められている複数の変数を規定している情報モデル(212)を前記コントローラ(200)から受信するステップ(S12)と、
 前記画面(130)に関する表示ルール(412)を前記コントローラ(200)または外部機器(400)から受信するステップ(S22)とを備え、
 前記表示ルール(412)において、前記予め定められた規格において定められている複数の変数の一部または全部について、変数の値を視覚的に表わすための表示オブジェクトの種類と、当該表示オブジェクトの表示に関する表示定義とが対応付けられており、さらに、
 前記情報モデル(212)に含まれる複数の変数の内の表示対象の各変数に対応する表示オブジェクトおよび表示定義を前記表示ルール(412)から取得し、当該表示オブジェクトの各々を対応する表示定義に従って前記画面(130)上に配置するステップ(S32)を備える、画面生成方法。
 [構成8]
 コントローラ(200)によって制御される駆動機器(300)の状態を表わす画面(130)に関する画面生成プログラムであって、
 前記画面生成プログラムは、コンピュータに、
  前記駆動機器(300)の状態を表わす変数であって予め定められた規格において定められている複数の変数を規定している情報モデル(212)を前記コントローラ(200)から受信するステップ(S12)と、
  前記画面(130)に関する表示ルール(412)を前記コントローラ(200)または外部機器(400)から受信するステップ(S22)とを実行させ、
 前記表示ルール(412)において、前記予め定められた規格において定められている複数の変数の一部または全部について、変数の値を視覚的に表わすための表示オブジェクトの種類と、当該表示オブジェクトの表示に関する表示定義とが対応付けられており、
 前記画面生成プログラムは、コンピュータに、さらに、
  前記情報モデル(212)に含まれる複数の変数の内の表示対象の各変数に対応する表示オブジェクトおよび表示定義を前記表示ルール(412)から取得し、当該表示オブジェクトの各々を対応する表示定義に従って前記画面(130)上に配置するステップ(S32)を実行させる、画面生成プログラム。
 今回開示された実施の形態は全ての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて請求の範囲によって示され、請求の範囲と均等の意味および範囲内での全ての変更が含まれることが意図される。
 100 表示装置、101 通信部、102,202,402 制御装置、104,206,404 主メモリ、110,208,410 記憶装置、110A,110B,110C 記憶領域、111A プロジェクトデータ、112,201,411 通信インターフェイス、114,414 インターフェイス、116 フィールドバスインターフェイス、120,421 表示部、120A ユーザインターフェイス、122 ディスプレイ、124 タッチパネル、125,425 内部バス、130,130A,130B 表示装置画面、131A タコメータ、131B サーモメータ、135,140,145 選択画面、136 変数名表示領域、137 選択操作受付領域、141,142 入力領域、143 保存ボタン、144 キャンセルボタン、146 画面履歴、146A 作成日時、146B 作成者、146C 画面名、146D メモ、147 表示ボタン、148 行、149A 状態変数、149B プロセス変数、150,242 OPC-UAサーバ、161A,161F 表示領域、180 OPC-UAクライアント、180A ディスカバリ機能、180B サブスクリプション機能、184 メインプログラム、185 画面生成プログラム、186 画面制御プログラム、190,191 設計データ、192,211 制御プログラム、200 コントローラ、204 チップセット、209 システムプログラム、210 ユーザプログラム、210A シーケンスプログラム、210B モーションプログラム、212 情報モデル、212A アドレス空間、222 内部バスコントローラ、224 フィールドバスコントローラ、226 I/Oユニット、239 メモリカードインターフェイス、240 メモリカード、300 駆動機器、300B サーボドライバ、400 サポート装置、412 表示ルール、412A オブジェクト情報、412B テンプレート情報、415 操作部、420 表示インターフェイス。

Claims (8)

  1.  コントローラによって制御される駆動機器の状態を表わす画面を表示するための表示部と、
     前記駆動機器の状態を表わす変数であって予め定められた規格において定められている複数の変数を規定している情報モデルを前記コントローラから受信するための通信部とを備え、
     前記通信部は、前記画面に関する表示ルールを前記コントローラまたは外部機器からさらに受信し、
     前記表示ルールにおいて、前記予め定められた規格において定められている複数の変数の一部または全部について、変数の値を視覚的に表わすための表示オブジェクトの種類と、当該表示オブジェクトの表示に関する表示定義とが対応付けられており、
     前記画面を生成するための制御装置をさらに備え、
     前記制御装置は、前記情報モデルに含まれる複数の変数の内の表示対象の各変数に対応する表示オブジェクトおよび表示定義を前記表示ルールから取得し、当該表示オブジェクトの各々を対応する表示定義に従って前記画面上に配置する、表示装置。
  2.  前記表示部は、前記情報モデルに含まれる複数の変数の内から、前記表示対象の変数を選択する操作を受け付けるように構成されている、請求項1に記載の表示装置。
  3.  前記制御装置は、前記コントローラから逐次的に受信した変数の値に応じて、対応する表示オブジェクトの表示態様を更新する、請求項1または2に記載の表示装置。
  4.  前記表示装置は、生成された画面を画面履歴として記憶するための記憶装置をさらに備え、
     前記制御装置は、前記記憶装置に記憶されている前記画面履歴の内から一の画面履歴が選択されたことに基づいて、当該一の画面履歴に示される画面を前記表示部に再表示する、請求項1~3のいずれか1項に記載の表示装置。
  5.  前記表示定義は、前記画面上に表示される表示オブジェクトの表示位置と、当該表示オブジェクトの表示サイズとの少なくとも一方を含む、請求項1~4のいずれか1項に記載の表示装置。
  6.  前記予め定められた規格は、OPC-UA(Object Linking and Embedding for Process Control Unified Architecture)を含む、請求項1~5のいずれか1項に記載の表示装置。
  7.  コントローラによって制御される駆動機器の状態を表わす画面に関する画面生成方法であって、
     前記駆動機器の状態を表わす変数であって予め定められた規格において定められている複数の変数を規定している情報モデルを前記コントローラから受信するステップと、
     前記画面に関する表示ルールを前記コントローラまたは外部機器から受信するステップとを備え、
     前記表示ルールにおいて、前記予め定められた規格において定められている複数の変数の一部または全部について、変数の値を視覚的に表わすための表示オブジェクトの種類と、当該表示オブジェクトの表示に関する表示定義とが対応付けられており、さらに、
     前記情報モデルに含まれる複数の変数の内の表示対象の各変数に対応する表示オブジェクトおよび表示定義を前記表示ルールから取得し、当該表示オブジェクトの各々を対応する表示定義に従って前記画面上に配置するステップを備える、画面生成方法。
  8.  コントローラによって制御される駆動機器の状態を表わす画面に関する画面生成プログラムであって、
     前記画面生成プログラムは、コンピュータに、
      前記駆動機器の状態を表わす変数であって予め定められた規格において定められている複数の変数を規定している情報モデルを前記コントローラから受信するステップと、
      前記画面に関する表示ルールを前記コントローラまたは外部機器から受信するステップとを実行させ、
     前記表示ルールにおいて、前記予め定められた規格において定められている複数の変数の一部または全部について、変数の値を視覚的に表わすための表示オブジェクトの種類と、当該表示オブジェクトの表示に関する表示定義とが対応付けられており、
     前記画面生成プログラムは、コンピュータに、さらに、
      前記情報モデルに含まれる複数の変数の内の表示対象の各変数に対応する表示オブジェクトおよび表示定義を前記表示ルールから取得し、当該表示オブジェクトの各々を対応する表示定義に従って前記画面上に配置するステップを実行させる、画面生成プログラム。
PCT/JP2019/002730 2018-03-01 2019-01-28 表示装置、画面生成方法、および画面生成プログラム WO2019167512A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP19761237.7A EP3761127B1 (en) 2018-03-01 2019-01-28 Display device, screen generation method, and screen generation program
CN201980004086.6A CN111052008A (zh) 2018-03-01 2019-01-28 显示装置、画面生成方法和画面生成程序
US16/644,154 US11880625B2 (en) 2018-03-01 2019-01-28 Display device, screen generation method, and screen generation program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018036274A JP7063009B2 (ja) 2018-03-01 2018-03-01 表示装置、画面生成方法、および画面生成プログラム
JP2018-036274 2018-03-01

Publications (1)

Publication Number Publication Date
WO2019167512A1 true WO2019167512A1 (ja) 2019-09-06

Family

ID=67805674

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/002730 WO2019167512A1 (ja) 2018-03-01 2019-01-28 表示装置、画面生成方法、および画面生成プログラム

Country Status (5)

Country Link
US (1) US11880625B2 (ja)
EP (1) EP3761127B1 (ja)
JP (1) JP7063009B2 (ja)
CN (1) CN111052008A (ja)
WO (1) WO2019167512A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113179656A (zh) * 2019-11-26 2021-07-27 东芝三菱电机产业系统株式会社 Scada网页hmi系统

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022136724A (ja) * 2021-03-08 2022-09-21 オムロン株式会社 制御装置、データ通信方法およびデータ通信プログラム
JP2023151976A (ja) * 2022-04-01 2023-10-16 オムロン株式会社 サーバ装置、情報モデルの提供方法、及び情報モデルの提供プログラム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012018541A (ja) 2010-07-07 2012-01-26 Hakko Denki Kk 表示装置
JP2017062635A (ja) * 2015-09-25 2017-03-30 株式会社コンテック 監視画像の作成装置、作成プログラムおよび作成方法
JP6261816B2 (ja) * 2015-10-29 2018-01-17 三菱電機株式会社 プログラマブル表示器、情報処理装置、画面データ作成支援プログラム、及び画面表示システム

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003067176A (ja) 2001-08-23 2003-03-07 Square Co Ltd 情報処理装置、情報制御方法およびその記録媒体ならびにコンピュータプログラム
JP2004199528A (ja) 2002-12-20 2004-07-15 Mitsubishi Electric Corp 監視制御システム
JP2009043135A (ja) 2007-08-10 2009-02-26 Yazaki Corp 機器管理用表示制御装置及び機器管理システム
JP5156713B2 (ja) 2009-10-02 2013-03-06 東芝三菱電機産業システム株式会社 設計支援装置
US20130070788A1 (en) * 2010-05-25 2013-03-21 Siemens Aktiengesellschaft Method and Apparatus for Interchanging Data, and Network
DE112011104987T5 (de) * 2011-03-02 2013-12-12 Mitsubishi Electric Corporation Programmierbare Anzeigevorrichtung und Zeichendatenerzeugungsverfahren
CN103250108A (zh) * 2011-11-30 2013-08-14 三菱电机株式会社 项目数据生成装置及可编程显示器
JP5875555B2 (ja) * 2013-07-29 2016-03-02 株式会社デジタル 画像作成システム
DE102016201077A1 (de) 2016-01-26 2017-07-27 Wago Verwaltungsgesellschaft Mbh Modul für eine technische Anlage und Verfahren zur Steuerung einer technischen Anlage
JP7091017B2 (ja) 2016-04-07 2022-06-27 株式会社東芝 操作端末、制御方法及びコンピュータプログラム
US10359911B2 (en) * 2016-10-21 2019-07-23 Fisher-Rosemount Systems, Inc. Apparatus and method for dynamic device description language menus
US10594555B2 (en) * 2016-12-16 2020-03-17 Intelligent Platforms, Llc Cloud-enabled testing of control systems
US10528700B2 (en) * 2017-04-17 2020-01-07 Rockwell Automation Technologies, Inc. Industrial automation information contextualization method and system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012018541A (ja) 2010-07-07 2012-01-26 Hakko Denki Kk 表示装置
JP2017062635A (ja) * 2015-09-25 2017-03-30 株式会社コンテック 監視画像の作成装置、作成プログラムおよび作成方法
JP6261816B2 (ja) * 2015-10-29 2018-01-17 三菱電機株式会社 プログラマブル表示器、情報処理装置、画面データ作成支援プログラム、及び画面表示システム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3761127A4

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113179656A (zh) * 2019-11-26 2021-07-27 东芝三菱电机产业系统株式会社 Scada网页hmi系统

Also Published As

Publication number Publication date
JP7063009B2 (ja) 2022-05-09
JP2019152949A (ja) 2019-09-12
EP3761127A4 (en) 2021-11-17
EP3761127A1 (en) 2021-01-06
CN111052008A (zh) 2020-04-21
US11880625B2 (en) 2024-01-23
US20210064318A1 (en) 2021-03-04
EP3761127B1 (en) 2023-07-12

Similar Documents

Publication Publication Date Title
WO2015136959A1 (ja) 制御システム、方法、プログラムおよび情報処理装置
WO2019167512A1 (ja) 表示装置、画面生成方法、および画面生成プログラム
CN103403793A (zh) 可编程显示器及绘图数据的生成方法
WO2019176487A1 (ja) コントローラ、制御方法、および制御プログラム
WO2010017835A1 (en) A system and a method for off-line programming of an industrial robot
WO2019176486A1 (ja) 制御システム、コントローラ、および制御方法
US20180365789A1 (en) Device management apparatus, device management method, and non-transitory computer readable storage medium
JP6954191B2 (ja) 制御システム、開発支援装置、および開発支援プログラム
JP7024679B2 (ja) 開発支援プログラム、開発支援装置、および開発支援方法
JP3847601B2 (ja) 制御表示装置、制御プログラムおよびそれを記録した記録媒体
JP6984499B2 (ja) FA(Factory Automation)システム、コントローラ、および制御方法
JP2008033572A (ja) 画面作成装置、画面作成プログラムおよびそれを記録した記録媒体
JP7044086B2 (ja) 制御システム、制御方法、および制御プログラム
JP2000315104A (ja) Nc工作機械の管理システムおよび管理プログラム
WO2022190427A1 (ja) 開発支援装置、開発支援方法、及び、開発支援プログラム
US11640153B2 (en) Control system, support device, and recording medium
JP2020060856A (ja) 制御システム、制御方法、および制御プログラム
JP2023151937A (ja) 情報処理装置およびプログラム
CN113728286A (zh) 画面数据生成系统、画面数据生成方法及程序

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19761237

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2019761237

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2019761237

Country of ref document: EP

Effective date: 20201001