JPWO2016016953A1 - 表示操作システム - Google Patents

表示操作システム Download PDF

Info

Publication number
JPWO2016016953A1
JPWO2016016953A1 JP2016537644A JP2016537644A JPWO2016016953A1 JP WO2016016953 A1 JPWO2016016953 A1 JP WO2016016953A1 JP 2016537644 A JP2016537644 A JP 2016537644A JP 2016537644 A JP2016537644 A JP 2016537644A JP WO2016016953 A1 JPWO2016016953 A1 JP WO2016016953A1
Authority
JP
Japan
Prior art keywords
client
server
memory
display
drawing data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2016537644A
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
Publication of JPWO2016016953A1 publication Critical patent/JPWO2016016953A1/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/065Replication mechanisms
    • 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • 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
    • 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
    • G06F3/1423Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display
    • 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
    • G06F9/452Remote windowing, e.g. X-Window System, desktop virtualisation
    • 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/544Buffers; Shared memory; Pipes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/549Remote execution
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2370/00Aspects of data communication
    • G09G2370/02Networking aspects
    • G09G2370/022Centralised management of display operation, e.g. in a server instead of locally
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2370/00Aspects of data communication
    • G09G2370/10Use of a protocol of communication by packets in interfaces along the display data pipeline

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Programmable Controllers (AREA)
  • Debugging And Monitoring (AREA)

Abstract

システム全体にわたる一括した制御と各表示操作端末装置で個別に独立した制御とを可能とする表示操作システムであって、サーバ装置100は、サーバ装置100の機能を定義するサーバ用作画データ121に従って動作し、クライアント装置200は、クライアント装置200の機能を共通的に定義するクライアント用作画データ223をサーバ装置100から接続経路を通じて取得して解釈することで動作し、サーバ装置100及びクライアント装置200は、値の読み書きが可能な内部デバイスメモリ111,211を備え、内部デバイスメモリ111,211は、サーバ装置100またはクライアント装置200の独立した制御に必要な情報を格納するクライアント固有デバイス領域112,212と、サーバ装置100及びクライアント装置200で共通した制御に必要な情報を格納する全クライアント共通デバイス領域113,213とを備える。

Description

本発明は、画面及び機能を定義する作画データを使用者が自由に設計可能な表示操作システムに関する。
従来、一般的な工場の生産装置及び加工装置は、装置の動作を制御するプログラマブルロジックコントローラ(PLC:Programmable Logic Controller)、アクチュエータを駆動するモーションコントローラ、サーボアンプ、制御装置、温度を管理する温度調節器及び装置の状態を認識する各種センサによって構成されている。アクチュエータには、モータを例示することができる。制御装置には、インバータを例示することができる。かつては、こうした生産装置及び加工装置には、運転状態を監視して操作を行うためのメータ、ランプ及びスイッチが配置された表示操作盤が搭載されていた。しかしながら、近年ではこうした表示操作盤ではなく、タッチパネルまたは液晶パネルの表示部と外部接続機器(例えば、PLC)とが通信し、外部接続機器のデバイスメモリの読み書きが可能な通信機能を備え、画面及び機能を自由に設計して変更可能なプログラマブル表示器が普及しつつある。プログラマブル表示器を用いると、かつての表示操作盤に比べて、より柔軟且つ省スペースの表示操作システムが構築可能である。プログラマブル表示器の機能は、作画ソフトウェアと呼ばれるアプリケーションソフトウェアにより設計する。作画ソフトウェアにより設計されて生成したデータは作画データと呼ばれる。作画ソフトウェアによると、オブジェクトと呼ばれるスイッチまたはランプといった部品が画面上に配置され、操作者は、配置されたオブジェクトが表示して操作するデバイスメモリを指定して動作を設定することでプログラマブル表示器の機能を設計することができるため、操作者にはプログラミングの知識が要求されない。さらには、プログラマブル表示器と端末装置とをネットワークにより接続し、端末装置からプログラマブル表示器の画面を閲覧して操作する装置も製品化されている。
例えば、特許文献1には、「アプリケーションプログラムのクライアント装置側からの操作を制限し、サーバ装置に画像が表示されているアプリケーションプログラムに影響を与えることなく、クライアント装置側で所望のアプリケーションプログラムを操作する」ことを目的として、「サーバコンピュータ1は、クライアントコンピュータ2の要求を受けると、設定ファイルSF1に設定されたアプリケーション指定番号および矩形範囲データに基づいて、指定されたアプリケーションプログラムの画像データにおける矩形領域を、クライアント用展開領域131から読み出して、クライアントコンピュータ2に送信する。クライアントコンピュータ2では、その矩形領域の範囲内でアプリケーションプログラムを操作できる。クライアントコンピュータ2への画像データを展開するクライアント用展開領域131は、表示デバイス14に表示される画像データを展開するサーバ用展開領域121と独立している」という技術が開示されている。特許文献1では、端末装置にインストールしたアプリケーションによって、ネットワークにより接続されたプログラマブル表示器の表示内容を画像情報として取得して表示し、端末装置のアプリケーション上での操作座標をプログラマブル表示器に伝達することで、遠隔地の端末装置からプログラマブル表示器の画面の閲覧及び操作が可能である。特許文献1では、「サーバ装置におけるアプリケーションプログラムの画像データの少なくとも一部を記憶する記憶領域を複数有する画像データ記憶手段を備え、前記読出手段が、前記クライアント装置からの要求に応じて、前記画像データ記憶手段における各記憶領域の画像データを個別に読み出すこと」で、複数のクライアント装置に対してサーバ装置とは独立した画像を表示することが可能である。また、サーバ装置にはPLCといった外部接続機器が接続され、外部デバイスメモリを読み書きすることで装置の制御を行うが、クライアント装置の表示内容及び操作結果の処理は全てサーバ装置が実行するため、クライアント装置と外部接続機器が直接通信することはない。このため、外部接続機器の通信プロトコル及び接続相手を特定するIPアドレスのような接続の各種設定はサーバ装置のみが処理できればよい。
特開2010−256972号公報
しかしながら、上記従来の技術によれば、クライアント装置はあくまでサーバ装置が生成する画面を表示するので、個々のクライアント装置に固有の通知デバイス及び制御デバイスを持つには、サーバ装置にクライアント装置毎の画面及び各種デバイスを格納するためのメモリの確保が必要になる上、全てをサーバ装置が制御する必要があるため、一般にCPU及びメモリのサイズが制限される、例えばプログラマブル表示器のような組込み機器では実現が困難である、という問題があった。また、上記従来の技術によれば、サーバ装置と複数台のクライアント装置を同時に使用すると、複数の表示操作端末装置から同時的に外部接続機器のデバイスメモリの変更操作を許可すると、他の表示操作端末装置の操作者の操作が行われる場合もある。そのため、制御対象のシステムに対して不正な操作を行ってしまう恐れがある、という問題があった。
本発明は、上記に鑑みてなされたものであって、システム全体にわたる一括した制御をサーバ装置で可能とし、各表示操作端末装置では個別に独立した制御を可能とする表示操作システムを得ることを目的とする。
上述した課題を解決し、目的を達成するために、本発明は、サーバ装置とクライアント装置とが接続され、前記クライアント装置のモニタ画面により操作を行う表示操作システムであって、前記サーバ装置及び前記クライアント装置は、値の読み書きが可能なデバイスメモリを備え、前記デバイスメモリに格納されたデータによって、前記デバイスメモリを備える前記サーバ装置または前記クライアント装置内における個別の独立した制御と、前記サーバ装置による前記表示操作システムにおける一括した制御とを可能としたことを特徴とする。
本発明にかかる表示操作システムは、システム全体にわたる一括した制御をサーバ装置で可能とし、各表示操作端末装置では個別に独立した制御を可能とする表示操作システムを得ることができるという効果を奏する。
実施の形態にかかるサーバクライアント型の表示操作システムの全体構成を示すブロック図 サーバ装置制御部の構成を示すブロック図 クライアント装置制御部の構成を示すブロック図 内部デバイスメモリのアドレス空間を示す図 クライアント装置がサーバ装置に接続する際の処理を示すフロー図 クライアント装置からデバイスメモリへの書き込み要求が発生した際の処理を示すフロー図 オペレータ認証結果に従って行う、表示操作端末装置からのデバイス書き込み処理を示すフロー図 操作権の排他制御を説明する操作権の状態を示す状態遷移図 操作権に従った書き込み処理を示すフロー図
以下に、本発明にかかる表示操作システムの実施の形態を、図面を参照して詳細に説明する。なお、以下の実施の形態の記載によりこの発明が限定されるものではない。
図1は、本発明にかかるサーバクライアント型の表示操作システムの全体構成を示すブロック図である。図1に示すように、第1の接続経路401によって1台のサーバ装置100には複数台のクライアント装置200が接続される。また、サーバ装置100は、第2の接続経路402によって外部接続機器300(例えば、プログラマブルロジックコントローラ(PLC:Programmable Logic Controller))に接続される。
ここで、第1の接続経路401の通信規格は、好適にはEthernet(登録商標)である。ただし、第1の接続経路401の通信規格は、Ethernet(登録商標)に限定されるものではなく、サーバ装置100とクライアント装置200とを接続可能な他の通信規格であってもよい。
また、第2の接続経路402の通信規格も、例えばEthernet(登録商標)である。または、第2の接続経路402は、シリアル通信であってもよいし、フィールドネットワークであってもよい。シリアル通信には、RS232を例示することができる。フィールドネットワークには、CC−Link(登録商標)を例示することができる。ただし、第2の接続経路402の通信規格は、Ethernet(登録商標)、RS232及びCC−Link(登録商標)に限定されるものではなく、サーバ装置100と外部接続機器300とを接続可能な他の通信規格であってもよい。なお、本発明の表示操作システムには、第2の接続経路402及び外部接続機器300が設けられていなくてもよい。
図1に示すサーバ装置100は、表示入力装置101と、揮発性メモリ110と、不揮発性メモリ120と、サーバ装置制御部130と、対クライアント通信処理部140と、デバイスメモリ通信処理部141と、第1通信インタフェース151と、第2通信インタフェース152とを備える。
表示入力装置101は、例えば、表示装置と位置入力装置とを組み合わせて構成されるタッチパネルである。ここで、表示装置は、例えば液晶ディスプレイ(LCD:Liquid Crystal Display)とすればよい。また、位置入力装置は、ユーザによる操作位置または押下位置を検出可能な入力デバイスである。
揮発性メモリ110は、内部デバイスメモリ111及びワークメモリ114を含む。揮発性メモリ110は、例えばSDRAM(Synchronous Dynamic Random Access Memory)である。不揮発性メモリ120は、サーバ用作画データ121と、クライアント用パッケージデータ122と、リソースデータ124と、オペレータ管理情報125とを含む。不揮発性メモリ120は、例えばサーバ装置100に内蔵のフラッシュROMまたはサーバ装置100に着脱される外部記憶媒体であり、例えばSDメモリーカード(登録商標)である。
第1通信インタフェース151は、サーバ装置100を第1の接続経路401に接続するインタフェースである。第2通信インタフェース152は、サーバ装置100を第2の接続経路402に接続するインタフェースである。第1通信インタフェース151を介した通信内容は、対クライアント通信処理部140により処理される。第2通信インタフェース152を介した通信内容は、デバイスメモリ通信処理部141により処理される。
サーバ装置100の動作は、不揮発性メモリ120に格納されたサーバ用作画データ121により定義される。サーバ装置制御部130は、サーバ用作画データ121を解釈して、サーバ装置100の画面及びサーバ装置100の画面に配置されるオブジェクトの表示処理を行うとともに、表示入力装置101からの入力情報の処理を行う。なお、サーバ装置100の画面に配置されるオブジェクトは、情報の表示及び操作入力を受け付ける表示部品である。さらに、サーバ装置制御部130は、サーバ用作画データ121に従い、デバイスメモリ通信処理部141を通じて、外部接続機器300内の外部デバイスメモリ301及び揮発性メモリ110内の内部デバイスメモリ111の読み書きを行う。
また、ワークメモリ114には、サーバ装置制御部130が行うデータの演算若しくは処理途中のデータの保持、または表示入力装置101で表示する画面の情報が格納される。ワークメモリ114は、内部デバイスメモリ111とは独立して確保される。
図2は、サーバ装置制御部130の構成を示すブロック図である。サーバ装置制御部130は、サーバ装置操作入力処理部131と、サーバ装置表示処理部132と、バックグラウンド機能処理部133と、サーバ用作画データ解釈処理部134と、オペレータ認証処理部135と、クライアント用データ管理部136と、操作権管理部137と、クライアント用パッケージデータ提供処理部138と、クライアント装置要求処理部139とを含む。
サーバ用作画データ解釈処理部134は、サーバ用作画データ121を逐次読み出して解釈する。サーバ装置制御部130は、サーバ用作画データ121の解釈により、サーバ装置操作入力処理部131、サーバ装置表示処理部132及びバックグラウンド機能処理部133に対して指示を行い、サーバ装置操作入力処理部131、サーバ装置表示処理部132及びバックグラウンド機能処理部133は、前記指示に従って応答する。サーバ装置制御部130は、前記応答によって次の動作を確定することで、サーバ用作画データ121に従った様々な機能を実現する。
サーバ装置操作入力処理部131は、操作入力の処理を行う。サーバ装置表示処理部132は、オブジェクトの表示処理を行う。バックグラウンド機能処理部133は、例えばロギング機能、アラーム監視機能及びスクリプト機能の処理を行う。ロギング機能は、外部デバイスメモリ301及び内部デバイスメモリ111の値を定期的に監視して記録する機能である。アラーム監視機能は、値の変化を監視し予め定めた条件の成立をアラームとし、時系列情報を記録する機能である。スクリプト機能は、スクリプトとも呼ばれるインタープリタ型のプログラムを実行して外部デバイスメモリ301及び内部デバイスメモリ111の参照更新を行う機能である。バックグラウンド機能処理部133は、収集したデータであるリソースデータ124を不揮発性メモリ120に蓄積する。また、バックグラウンド機能処理部133は、オブジェクトで蓄積情報を表示する際にはリソースデータ124を不揮発性メモリ120から読み出して、表示に必要な情報の抽出加工を行う。
クライアント装置要求処理部139は、クライアント装置200からの各種要求を判断して処理する。クライアント装置200からの要求がクライアント用パッケージデータ122の提供である場合には、クライアント用パッケージデータ提供処理部138は、クライアント用パッケージデータ122に含まれるクライアント用アプリケーション122a及びクライアント用作画データ122bの一部または全部を抽出する。
クライアント用データ管理部136は、クライアント装置200がサーバ装置100に接続されると、クライアント装置200との接続状態を管理する。
オペレータ認証処理部135は、例えばユーザ名とパスワードとの組み合わせによるオペレータのユーザ情報により、サーバ装置100またはクライアント装置200を操作するオペレータの認証を行い、認証結果に従ってオペレータの権限を制御する。
操作権管理部137は、操作権の排他制御を行う場合にサーバ装置100またはクライアント装置200のいずれかに操作権を付与し、権限の内容を管理する。なお、操作権管理部137が管理する権限の内容については後述する。
図1に示すクライアント装置200は、表示入力装置201と、揮発性メモリ210と、不揮発性メモリ220と、クライアント装置制御部230と、対サーバ通信処理部240と、第1通信インタフェース251とを備える。
表示入力装置201は、サーバ装置100の表示入力装置101と同様に、例えば、表示装置と位置入力装置とを組み合わせて構成されるタッチパネルである。揮発性メモリ210は、揮発性メモリ110と同様に、内部デバイスメモリ211及びワークメモリ214を含み、例えばSDRAMである。不揮発性メモリ220は、クライアント用アプリケーション222と、クライアント用作画データ223と、クライアント特定情報225とを含み、例えばクライアント装置200に内蔵のフラッシュROMまたはクライアント装置200に着脱される外部記憶媒体であり、例えばSDメモリーカード(登録商標)である。
第1通信インタフェース251は、クライアント装置200を第1の接続経路401に接続するインタフェースである。第1通信インタフェース251を介した通信内容は、対サーバ通信処理部240により処理される。
クライアント装置200の動作は、不揮発性メモリ220に格納されたクライアント用作画データ223により定義される。ここで、クライアント用作画データ223は、サーバ装置100との接続時またはクライアント装置200で表示する画面を切換えた場合に取得された、第1通信インタフェース251を通じてサーバ装置100の不揮発性メモリ120に格納されたクライアント用作画データ122bの一部または全部である。クライアント装置制御部230は、クライアント用作画データ223を解釈して、クライアント装置200の画面及び画面に配置されるオブジェクトの表示処理を行うとともに、表示入力装置201からの入力情報の処理を行う。なお、クライアント装置200の画面に配置されるオブジェクトは、情報の表示及び操作入力を受け付ける表示部品である。さらに、クライアント装置制御部230は、デバイスメモリの読み書きが必要な場合には、対サーバ通信処理部240を通じて、サーバ装置100に対してデバイス読み書きの要求を発行する。
また、ワークメモリ214には、クライアント装置制御部230が行うデータの演算若しくは処理途中のデータの保持、または表示入力装置201で表示する画面の情報が格納される。ワークメモリ214は、内部デバイスメモリ211とは独立して確保される。
また、クライアント特定情報225は、複数のクライアント装置200の各々を特定するための情報である。クライアント特定情報225には、Ethernet(登録商標)におけるIPアドレスまたはユーザ名若しくはユーザIDといったユーザの識別子を例示することができる。
なお、クライアント装置200は、クライアント用アプリケーション222をサーバ装置100から取得してもよい。すなわち、クライアント用アプリケーション222がクライアント用アプリケーション122aであってもよい。
図3は、クライアント装置制御部230の構成を示すブロック図である。クライアント装置制御部230は、クライアント装置操作入力処理部231と、クライアント装置表示処理部232と、バックグラウンド機能処理部233と、クライアント用作画データ解釈処理部234と、対サーバ要求生成処理部235とを含む。
クライアント用作画データ解釈処理部234は、クライアント用作画データ223を逐次読み出して解釈する。クライアント装置制御部230は、クライアント用作画データ223の解釈により、クライアント装置操作入力処理部231、クライアント装置表示処理部232及びバックグラウンド機能処理部233に対して指示を行い、クライアント装置操作入力処理部231、クライアント装置表示処理部232及びバックグラウンド機能処理部233は、前記指示に従って応答する。クライアント装置制御部230は、前記応答によって次の動作を確定することで、クライアント用作画データ223に従った様々な機能を実現する。
クライアント装置操作入力処理部231は、操作入力の処理を行う。クライアント装置表示処理部232は、オブジェクトの表示処理を行う。バックグラウンド機能処理部233は、例えばロギング機能、アラーム監視機能及びスクリプト機能の処理を行う。対サーバ要求生成処理部235は、サーバ装置100への要求を生成する。前記要求は、例えば、サーバ装置100または外部接続機器300からのデータの取得要求である。なお、クライアント装置200は、サーバ装置100に常時接続しているわけではないため、バックグラウンド機能処理部233が処理を行うバックグラウンド機能のうち、特に時系列情報を収集する機能処理はクライアント装置200の各々で分散して行うよりもサーバ装置100で集中して行い、サーバ装置100が処理した結果をクライアント装置200に取得させることが好ましい。なお、バックグラウンド機能のうち、特に時系列情報を収集する機能処理は、例えばロギング機能及びアラーム監視機能である。
図4は、サーバ装置100の内部デバイスメモリ111及びクライアント装置200の内部デバイスメモリ211のアドレス空間を示す図である。内部デバイスメモリ111は、物理的にはサーバ装置100に配置されている。内部デバイスメモリ211は、物理的にはクライアント装置200の各々に配置されている。ここで、内部デバイスメモリ111のアドレス空間のサイズと内部デバイスメモリ211のアドレス空間のサイズは、等しいものとする。
内部デバイスメモリ111及び内部デバイスメモリ211のアドレス空間は、全クライアント共通デバイス領域113,213と、クライアント固有デバイス領域112,212の領域とに区別されている。全クライアント共通デバイス領域113,213では、サーバ装置100及び全てのクライアント装置200において値が共有され、同期されている。クライアント固有デバイス領域112,212では、サーバ装置100及びクライアント装置200の各々で独立した値を有する。
クライアント固有デバイス領域112,212及び全クライアント共通デバイス領域113,213の領域の配置は、サーバ用作画データ121及びクライアント用作画データ122b,223によって割り付けられる。ただし、領域の割り付けは、サーバ用作画データ121とクライアント用作画データ122b,223とで共通とする。
なお、全クライアント共通デバイス領域113,213の値の管理は、サーバ装置100にて行うが、全クライアント共通デバイス領域213の値は、第1の接続経路401を通じて、サーバ装置100に定期的に同期される。一方、クライアント固有デバイス領域112,212は、サーバ装置100及びクライアント装置200の各々が独立に管理し、自装置以外からはアクセスされない。
なお、ここで、サーバ装置100についても、クライアント固有デバイス領域112及び全クライアント共通デバイス領域113と記載している。これは、クライアント固有デバイス領域112及び全クライアント共通デバイス領域113が、サーバ装置100のみがアクセスする領域だからである。クライアント固有デバイス領域は、固有デバイス領域、装置固有デバイス領域または自装置固有デバイス領域と呼んでもよい。全クライアント共通デバイス領域は、共通デバイス領域または全装置共通デバイス領域と呼んでもよい。
より具体的には、図4に示すように、内部デバイスメモリ111内には、設計者が自由に使用できるユーザ用内部デバイス510と、表示操作端末装置の制御及び状態の通知のために予約されたシステム制御デバイス500とが設けられている。ここで、表示操作端末装置は、サーバ装置100及びクライアント装置200の総称である。
ユーザ用内部デバイス510は、ワードデータを格納するワードデバイス511と、1ビット単位のデータを格納するビットデバイス512とを有する。なお、ワードデータは、例えば数値である。ここで、システム制御デバイス500、ワードデバイス511及びビットデバイス512には各領域を区別する記号が各々に割り付けられており、例えば、システム制御デバイス500の記号はGSであり、ユーザ用内部デバイス510内のワードデバイス511の記号はGDであり、ビットデバイス512の記号にはGBである。そして、各領域は、例えば0から始まる連番の添え字により内部デバイスメモリ111,211内のアドレスが特定される。例えば、ワードデバイス511の101番目の要素は「GD100」である。なお、システム制御デバイス500は固定的に割り付け、クライアント固有デバイス領域112,212とする。一方、ユーザ用内部デバイス510のワードデバイス511及びビットデバイス512のうち、全クライアント共通デバイス領域113,213は、サーバ用作画データ121及びクライアント用作画データ122b,223によって定義され、残りの領域はクライアント固有デバイス領域112,212と定義される。図4においては、GD0〜GD149、GD500〜GD849、GB0〜GB249及びGB400〜GB599が全クライアント共通デバイス領域113,213であり、残りの領域がクライアント固有デバイス領域112,212である。
なお、外部デバイスメモリ301においてもデバイスメモリ内の領域が記号と添え字により表現される。例えば、PLCにおいては機種毎に表現が異なるが、ある種のPLCでは、ワードデバイスの空間種別が記号D,Rと添え字とにより表現され、ビットデバイスの空間種別が記号M,X,Yと添え字とにより表現される。
以上、サーバ装置と複数台のクライアント装置により構成される表示操作システムの構成を説明したが、本発明は上記構成に限定されるものではない。上記の説明において、サーバ装置100は表示入力装置101を備え、クライアント装置200は表示入力装置201を備えるが、表示装置と入力装置は別々に設けられていてもよい。ここで、表示装置にはLCDを例示することができ、入力装置にはマウス及びキーボードを例示することができる。
さらには、サーバ装置100には表示入力装置101が設けられていなくてもよく、サーバ装置100がバックグラウンド機能処理のみを行う構成であってもよい。
上記構成のサーバクライアント型表示操作システムでは、クライアント装置200は、サーバ装置100の稼働中に、任意のタイミングでサーバ装置100への接続操作を行う。なお、ここでいう接続操作は、クライアント装置200に表示されたメニュー画面における一覧からサーバ装置100を選択し、または、サーバ装置100のIPアドレス若しくはホスト名を直接入力することで接続対象のサーバ装置100を特定する操作である。
ここで、例えばサーバ装置100がWWW(World Wide Web)で一般的なHTTP(Hyper Text Transfer Protocol)を処理するWebサーバである場合には、クライアント装置200は、Webブラウザソフトウェアを搭載したタブレットPCまたはパソコンであってもよい。クライアント装置200がWebブラウザソフトウェアを搭載したタブレットPCまたはパソコンである場合には、接続操作は、Webブラウザソフトウェアのブックマークからサーバ装置100を選択する操作であってもよい。
図5は、クライアント装置200がサーバ装置100に接続する際の処理を示すフロー図である。まず、クライアント装置200は、サーバ装置100への接続要求を発行する(F001)。対クライアント通信処理部140において接続要求を受けたサーバ装置100は、クライアント装置200に認証情報入力を要求する(F051)。認証情報入力の要求を受けたクライアント装置200は、認証情報入力画面を表示する(F002)。
ここで、認証情報には、例えばユーザIDとパスワードの組み合わせを例示することができる。また、認証情報入力画面には、例えばダイアログ画面を例示することができるが、認証情報入力画面はダイアログ画面に限定されるものではない。また、特別な認証画面を用いることなく、クライアント装置200に予め登録した認証情報が用いられてもよいし、認証情報が記憶されたUSBドングルをユーザがクライアント装置200に接続することで自動的に認証情報を入力させてもよい。ここで、クライアント装置200において認証情報入力画面を表示(F002)して手動入力させる場合には、操作をキャンセル可能な構成とすることが好ましい。なお、認証が自動入力により行われる場合には、認証に失敗すると、クライアント装置200側で認証に失敗した旨を通知し、登録しているキーの見直しを促す表示を行う構成であってもよい。
次に、クライアント装置200において認証情報が入力されたか、または接続がキャンセルされたかを判定する(F003)。認証情報がキャンセルされた場合、すなわちF003において「キャンセル」に分岐した場合には、接続操作をキャンセルし(F006)、サーバ装置100との接続は行わない。
認証情報が入力された場合、すなわちF003において「入力」に分岐した場合には、認証が成功したか否かの判定を行う(F052)。認証に失敗した場合、すなわちF052においてNoに分岐した場合には、クライアント装置200に対して認証情報入力を再度要求する(F051)。認証に成功した場合、すなわちF052においてYesに分岐した場合には、サーバ装置100からクライアント装置200に対してクライアント用パッケージデータ122の全部または一部を送信する(F053)。
ここで、送信対象がクライアント用パッケージデータ122の全部であるかまたは一部であるかは、システムの設定により決定される。送信対象がクライアント用パッケージデータ122の全部である場合には、クライアント装置200をサーバ装置100に接続した際の通信データ量が増えるため、接続開始から接続を完了するまでの時間が長くなる。送信対象がクライアント用パッケージデータ122の一部である場合には、表示する画面に関係なく処理する必要がある部分と、初回に表示する画面の部分を含むクライアント用作画データ122bの一部と、クライアント装置200を動作させるためのクライアント用アプリケーション122aとを送信することで、送信対象がクライアント用パッケージデータ122の全部である場合に比べて、通信時間を短縮することができる。
さらに、クライアント装置200で過去に読み出したクライアント用パッケージデータ122をキャッシュし、すなわち揮発性メモリ210または不揮発性メモリ220に一時的に保存し、キャッシュされた情報はサーバ装置100から再送信しない構成とすると通信時間をさらに短縮することも可能である。ただし、セキュリティ及び資産保護の観点からクライアント装置200に過去に読み出したクライアント用パッケージデータ122をキャッシュすることが好ましくない場合もあるため、対象とするシステムによってキャッシュするか否かを選択可能な構成とすることが好ましい。または、クライアント用アプリケーション122aがクライアント装置200に予めインストールされていてもよい。クライアント用アプリケーション122aがクライアント装置200に予めインストールされている場合には、クライアント装置200は、接続時にはサーバ装置100からクライアント用作画データ122bのみを受信すればよいため、通信時間を短縮することができる。
上記説明したように、サーバ装置100からクライアント装置200に送信されたクライアント用パッケージデータ122をクライアント装置200が受信する(F004)と、クライアント装置200は、クライアント用アプリケーション122aをクライアント用作画データ解釈処理部234により解釈することで、クライアント装置200の表示操作処理を開始する(F005)。
上記説明したように、クライアント装置200がサーバ装置100に接続すると、サーバ装置100はサーバ装置制御部130のクライアント用データ管理部136に、新たに接続したクライアント装置200を特定するクライアント特定情報225を登録する。逆に、クライアント装置200がサーバ装置100との接続を解除すると、接続を解除されたクライアント装置200の情報はクライアント特定情報225から削除される。こうして、クライアント用データ管理部136には、接続中のすべてのクライアント装置200のクライアント特定情報225が登録されることになり、サーバ装置100は、現在接続中のクライアント装置200を特定し、把握することが可能となる。
さらには、接続後のサーバ装置100とクライアント装置200との通信においてクライアント特定情報225とハッシュ値をパケットに含めると、認証されていないクライアント装置200からのサーバ装置100への偽装アクセスを防止することも可能である。なお、ハッシュ値は、例えば時刻の情報から生成される。
クライアント装置200とサーバ装置100の接続中には、クライアント装置200は、クライアント装置200に現在表示している画面またはバックグラウンドで動作する機能が定期的に参照する各種デバイスメモリの値を周期的に読み出す。外部デバイスメモリ301及び全クライアント共通デバイス領域113,213については、クライアント装置200はサーバ装置100にデバイス値読み出し要求を定期的に発行する。
サーバ装置100は、クライアント装置200からのデバイス値読み出し要求を解釈し、デバイス値読み出し要求に含まれる外部デバイスメモリ301のアドレスが、サーバ装置100がモニタ対象とした定期的に読み出し中のデバイスメモリではない場合には新たなモニタ対象に登録し、クライアント装置200の要求とは非同期に外部デバイスメモリ301を読み出し、サーバ装置100のワークメモリ114に保持する。クライアント装置200には、ワークメモリ114に保持されたデバイス値を読み出して通知する。ここで説明した方式を「登録デバイス読み出し方式」と呼ぶ。
ただし、クライアント固有デバイス領域212については、サーバ装置100への問合せを行わずにクライアント装置200内で適切な排他制御を行ったうえでの任意のタイミングで読み書きを行う。
さらに、表示操作端末装置には、タッチスイッチのようなオブジェクト操作時やトリガ条件成立時のみ動作をして各種デバイスメモリを読み書きする機能もある。こうした機能をクライアント装置200で実行する場合には、クライアント装置200からサーバ装置100にデバイス読み出し要求及びデバイス書き込み要求を動作発生のたびに発行する。サーバ装置100は、前記要求内容を解釈し、読み書きの対象が外部デバイスメモリ301である場合には、デバイスメモリ通信処理部141を通じて要求に対応するデバイスの読み書き処理を行い、処理結果をワークメモリ114にいったん格納し、サーバ装置100からクライアント装置200に応答を返すタイミングでデバイス読み書きの結果をクライアント装置200に通知することで応答する。ここで説明した、クライアント装置200からのデバイス読み書き要求のたびにサーバ装置100がデバイス読み書きを行う方式を「逐次デバイス読み出し方式」及び「逐次デバイス書き込み方式」と呼ぶ。
前出の登録デバイス読み出し方式では、外部デバイスメモリ301の読み出しを行う場合には、クライアント装置200の通信要求のタイミングで最新の値が取得できるとは限らない。しかしながら、1または複数のクライアント装置200が同時にサーバ装置100に接続しており、同一のデバイスメモリを同時に参照するとき、共通したデバイスメモリを統合することで外部接続機器300とサーバ装置100との間の通信量を抑え、外部接続機器300及び第2の接続経路402の負担を低減することができる。
一方、逐次デバイス読み出し方式では、クライアント装置200からサーバ装置100に要求を発行した後、外部接続機器300との通信を行い、応答受信後にクライアント装置200に応答するため、要求から応答までの時間が登録デバイス読み出し方式に比べて長くなる。しかしながら、要求発生より後のデバイス値を確実に取得できるため、デバイス値をもとに順序処理を行う場合のような同期的な処理が求められる際には、逐次デバイス読み出し方式を用いることが好ましい。
さらに、登録デバイス読み出し方式の場合には、登録したデバイス値を使わない間も外部接続機器300との通信が周期的に発生するため、システム全体の通信処理の時間が延びる問題がある。そのため、通信の発生タイミングが散発的である場合には逐次デバイス読み出し方式を用いるほうが好ましいこともあり、これらの組み合わせは作画データの設定で自動的に決定されることが好ましい。ただし、本発明はこのような方式に限定されるものではなく、作画データの作成段階で明示的に方式が指定される構成であってもよい。
なお、サーバ装置100とクライアント装置200との間の通信は、対クライアント通信処理部140と対サーバ通信処理部240とが理解可能な専用の通信プロトコルにより行う。一方、サーバ装置100と外部接続機器300との通信プロトコルは、一般に外部接続機器300によって決まるため、サーバ装置100は、接続された外部接続機器300に適合する通信プロトコルにより通信する。そのため、登録デバイス読み出し方式、逐次デバイス読み出し方式または逐次デバイス書き込み方式を用いる場合には、クライアント装置200は外部接続機器300との通信プロトコルを処理する必要はない。
ここで、サーバ装置100とクライアント装置200との通信プロトコルと、サーバ装置100と外部接続機器300との通信プロトコルとを逐次変換する所謂プロトコル変換器のような動作は必要でなく、サーバ装置100がいったんクライアント装置200からの要求を受け、前記要求をサーバ装置100が処理可能なタイミングで処理して外部接続機器300と通信すればよい。
一方、図1には示されていないが、クライアント装置200から外部接続機器300の外部デバイスメモリ301を読み書きする際には、第1の接続経路401と第2の接続経路402が同一である場合も想定され、またはサーバ装置100が第1の接続経路401を通じてクライアント装置200から受けた通信要求を加工せずに第2の接続経路402に通過させる場合も想定される。こうした場合に備え、クライアント装置200が、外部接続機器300の通信プロトコルを生成する機能、すなわち、サーバ装置100のデバイスメモリ通信処理部141に相当する機能を有していてもよい。
ところで、上記の説明では、外部デバイスメモリ301を読み書きすることに注目しているが、全クライアント共通デバイス領域113を読み書きする場合には、クライアント装置200からの要求を受けたサーバ装置100は自装置内の全クライアント共通デバイス領域113に対して然るべき排他制御を行ったうえで任意のタイミングで読み書きを行い、読み書きを行った結果をクライアント装置200に応答する。そのため、外部デバイスメモリ301の読み書きに比べるとクライアント装置200への応答は迅速である。
図6は、クライアント装置200からデバイスメモリへの書き込み要求が発生した際の処理を示すフロー図である。図6に示すフロー図は、上記で説明したデバイスメモリの読み書き処理の流れのうち、デバイス書き込みを示している。
まず、クライアント装置200がデバイス書き込み要求を発行する(F100)。次に、書き込み対象のデバイスメモリが領域A〜Cのいずれの領域に含まれるかを判定する(F101)。なお、領域Aは外部デバイスメモリであり、領域Bは全クライアント共通デバイス領域であり、領域Cはクライアント固有デバイス領域である。書き込み対象のデバイスが領域Aまたは領域Bである場合には、サーバ装置100に対し書き込み要求を送信する(F102)。書き込み対象のデバイスが領域Cである場合には、クライアント装置200内において適切な排他制御を行ったうえでクライアント固有デバイス領域に書き込み処理を行う(F103)。
サーバ装置100は、クライアント装置200からのデバイス書き込み要求を受信すると、前記要求を解釈し(F150)、書き込み対象のデバイスメモリが領域Aであるか領域Bであるかを判定する(F151)。書き込み対象のデバイスメモリが外部デバイスメモリである領域Aの場合には、外部デバイスメモリに書き込み処理を行う(F152)。一方、書き込み対象のデバイスメモリが全クライアント共通デバイス領域である領域Bの場合には、サーバ装置100内において適切な排他制御を行ったうえで全クライアント共通デバイス領域に書き込み処理を行う(F153)。外部デバイスメモリに書き込み処理を行った場合または全クライアント共通デバイス領域に書き込み処理を行った場合には、書き込み処理完了後に、クライアント装置200に要求への応答を送信する(F154)。クライアント装置200は、サーバ装置100からの応答を受信する(F104)と、一連の処理を完了する。
ここで、クライアント装置200におけるオブジェクトの操作またはバックグラウンド機能によるデバイス書き込みを伴う処理について説明する。表示操作端末装置において、制御対象の装置を制御する場合には、デバイスメモリの値の変更により行うことが一般的である。ここで、制御対象の装置には、サーバ装置100、クライアント装置200及び外部接続機器300が含まれる。例えば、外部接続機器300で生産設備の運転を管理しているときには、外部接続機器300内の外部デバイスメモリ301の一部を装置制御のためのパラメータまたはトリガ条件に割り当てておき、外部デバイスメモリ301の値を表示操作端末装置から書き換えることで、外部接続機器300の制御プログラムによって値に従った処理を行い、生産設備の運転操作が可能となる。
ここで、複数の表示操作端末装置から同時に外部デバイスメモリ301を書き換えると、操作者の意志に反して他の表示操作端末装置に操作が反映され、他の表示操作端末装置が不正な動作を行うおそれがある。こうした不適切な操作を防止するため、サーバ装置100またはクライアント装置200を操作する操作者を認証するオペレータ認証結果に従ってデバイス書き込み権限を制限する仕組み(オペレータ認証連動操作権制御)と、複数の表示操作端末装置のうちいずれか1台のみがデバイスメモリへの書き込み操作を可能とする仕組み(操作権排他制御)とを各々の用途に従って備えているとよい。
まず、オペレータ認証連動操作権制御について説明する。例えばユーザ名とパスワードとの組み合わせによりサーバ装置100またはクライアント装置200の操作者を特定するオペレータ認証機能を搭載する場合には、認証処理は、サーバ装置100及びクライアント装置200のいずれもサーバ装置100のオペレータ認証処理部135にて行われる。サーバ装置100には、認証する操作者ごとにデバイス書き込みを伴う操作の権限を指定したオペレータ管理情報125を予め登録しておく。操作の権限について、より具体的には「全てのデバイスへの書き込みを禁止」「外部デバイスメモリへの書き込みを禁止」「外部デバイスメモリ及び全クライアント共通デバイス領域への書き込みを禁止」を指定可能とする。
オペレータ認証には、オブジェクトの表示及び操作の権限が、オブジェクトに予め定められた値よりも高い値の権限を持つ場合にのみ操作可能とする「セキュリティレベル」を設ける仕組み、またはオペレータが参画するグループとオブジェクトに定めたグループとが一致する場合に操作可能とする「セキュリティグループ」を設ける仕組みが知られている。デバイス書き込みについての権限の制御は、セキュリティレベルまたはセキュリティグループに紐づけられたものであってもよいし、セキュリティレベルまたはセキュリティグループとは独立したものであってもよい。
図7は、オペレータ認証結果に従って行う、表示操作端末装置からのデバイス書き込み処理を示すフロー図である。表示操作端末装置の操作者はオペレータ認証済みとする。操作者が、例えばオブジェクトを操作すると、デバイス書き込み要求が発生する(F200)。デバイス書き込み要求が発生すると、表示操作端末装置は、操作者に認証結果からデバイス書き込み制約があるか否かの判定を行う(F201)。デバイス書き込み制約がない場合、すなわち、F201においてNoに分岐する場合には、デバイス書き込み処理を行う(F203)。デバイス書き込み制約がある場合、すなわち、F201においてYesに分岐する場合には、書き込もうとするデバイスの領域が権限により制限された領域か否か、すなわち、書き込み制限対象デバイス領域か否かの判定を行う(F202)。書き込み制限対象デバイス領域でない場合、すなわち、F202においてNoに分岐する場合には、デバイス書き込み処理を行う(F203)。書き込み制限対象デバイス領域である場合、すなわち、F202においてYesに分岐する場合には、デバイス書き込み処理を無効化する(F204)。
すなわち、例えば、操作者の権限が「外部デバイスメモリ及び全クライアント共通デバイス領域への書き込み禁止」である場合には、書き込み対象のデバイスが「クライアント固有デバイス領域」であればデバイス書き込み処理を行い、書き込み対象のデバイスが「外部デバイスメモリ」または「全クライアント共通デバイス領域」であれば、デバイス書き込み処理を無効化する。
図8は、操作権の排他制御を説明する操作権の状態を示す状態遷移図である。ここで、サーバ装置100に複数台のクライアント装置200が同時に接続している状態では、いずれか1台の表示操作端末装置のみが操作権を有するものとする。図8において、各表示操作端末装置の操作権の状態は、自装置が操作権を有する「操作権=自装置」(ST110)と、自装置以外の表示操作端末装置が操作権を有する「操作権=他装置」(ST120)と、いずれの表示操作端末装置も操作権を有さない「中立」(ST100)のいずれかである。「中立」である場合(ST100)には、全ての表示操作端末装置の操作権は中立であり、中立でないときにはいずれか1台の表示操作端末装置が操作権を有し、操作権を有する表示操作端末装置をTxとすると、表示操作端末装置Txの状態は「操作権=自装置」であり(ST110)、Tx以外の全ての表示操作端末装置の状態は「操作権=他装置」(ST120)となる。
さらに、操作権を有する場合には、他の表示操作端末装置から操作権を取得することができない「操作権委譲不可」(ST111,ST121)と、他の表示操作端末装置から操作権を取得することができる「操作権委譲可能」(ST112,ST122)とに区別される。なお、全ての表示操作端末装置の操作権状態は、サーバ装置100の操作権管理部137にて集中管理される。操作権の状態が「中立」である場合(ST100)には、任意の表示操作端末装置が操作権を随時取得可能である。操作権の取得は、入力操作を行うオブジェクト、例えばタッチスイッチを操作したタイミングで行ってもよいし、予め表示操作端末装置の画面上に操作権取得操作を行うスイッチを設けておき、前記スイッチを操作することで操作権を取得する構成としてもよい。
操作権状態が「操作権=他装置」且つ「操作権委譲不可」(ST121)である場合には、操作権を有さない表示操作端末装置は操作権を取得することはできない。操作権が取得できないことは、画面内の一部に常時表示されていてもよいし、オブジェクトの操作により操作権の取得操作を行った際に、例えばダイアログを用いて通知されていてもよい。
操作権状態が「操作権=他装置」且つ「操作権委譲可能」(ST122)である場合には、操作権を有さない表示操作端末装置から操作権取得操作を行うことで操作権を取得することができる。操作権取得時には、本当に操作権を取得するか否かをダイアログで確認(ST130)し、確認完了後に操作権を取得し、キャンセル時には操作権を取得しない構成としてもよい。ただし、操作権取得確認(ST130)は省略してもよい。
操作権を新たに取得した表示操作端末装置は、いったん「操作権委譲不可」(ST111)の状態となる。また、操作権委譲不可(ST111,ST121)の状態では、一定時間無操作状態(オブジェクトを操作しない状態)が継続すると、自動的に操作権委譲可能状態(ST112,ST122)に遷移する。図8に示すように、操作権委譲不可状態と操作権委譲可能状態とを設定することで、例えば数値を入力するオブジェクトに、画面上のテンキーを用いて値を入力するような連続した操作が必要な場合に、一連の操作の途中で操作権を他の表示操作端末装置に奪われて、操作が完了できなくなることを防止することができる。
図9は、操作権に従った書き込み処理を示すフロー図である。ここで、上記説明した操作権がない場合の権限の制限範囲を「全てのオブジェクト操作の禁止」とするか、または「デバイス書き込み操作の禁止」とするかをシステム全体で予め定めておく。さらに、「デバイス書き込み操作の禁止」時には、制限の範囲を「全てのデバイスの書き込みを禁止」「外部デバイスメモリへの書き込みを禁止」「外部デバイスメモリと全クライアント共通デバイス領域の書き込みを禁止」のいずれかに予め定めておく。
まず、オブジェクト操作を行う(F301)と、操作権があるか否かが判定される(F302)。なお、オブジェクト操作は、例えば、タッチスイッチの操作である。オブジェクト操作が操作権を有する表示操作端末装置による操作の場合、すなわち、F302においてYesに分岐する場合には、オブジェクト操作に従った処理を行う(F306)。オブジェクト操作が操作権を有さない表示操作端末装置による操作の場合、すなわち、F302においてNoに分岐する場合には、操作権がないときの権限を確認して、権限が「全てのオブジェクト操作の禁止」であるか、または「デバイス書き込み操作の禁止」であるかを判定する(F303)。権限が「全てのオブジェクト操作の禁止」である場合には、オブジェクト操作は受け付けず操作を無効化する(F308)。権限が「デバイス書き込み操作の禁止」である場合には、オブジェクトの処理の中にデバイス書き込みが含まれるか否かを判定する(F304)。デバイス書き込みを伴わない場合、すなわちF304においてNoに分岐する場合にはオブジェクト操作に従った処理を行う(F307)。デバイス書き込みを伴う場合、すなわちF304においてYesに分岐する場合には、対象となるデバイスへの書き込みの権限を持つか否か、すなわち書き込み可能領域か否かを判定する(F305)。例えば、権限が「外部デバイスメモリの書き込みを禁止」である場合には、全クライアント共通デバイス領域またはクライアント固有デバイス領域のデバイスに書き込む操作では「書き込み可能」であり、外部デバイスメモリに書き込む操作では「書き込み不可」である。書き込み可能領域である場合、すなわちF305においてYesに分岐する場合にはデバイス書き込みを含めてオブジェクト操作に従った処理を行う(F306)。書き込み不可領域である場合、すなわちF305においてNoに分岐する場合にはデバイス書き込みを除いてオブジェクト操作に従った処理を行う(F307)。
上記説明した操作権の管理により、サーバ装置100と1または複数のクライアント装置200により構成される表示操作システムから制御対象が同時に操作され、不正な動作を引き起こすことを防止することができ、制御対象に影響を与えない操作は個々の表示操作端末装置にて実行可能となる。
以上説明したように、本実施の形態によれば、不正な操作を防止しつつ、システム全体にわたる一括した制御を可能とし、各表示操作端末装置では個別に独立した制御を可能とする表示操作システムを得ることができる。
本実施の形態について以下に異なる観点から説明する。プログラマブル表示器のような表示操作装置では、単に外部接続機器や表示器内部のデバイスメモリの値を表示して操作するだけでなく、デバイスメモリの値に応じて挙動を変える制御が必要とされる場合がある。例えば、表示する画面をデバイスメモリの値により制御可能としておくことで、装置の異常を検出した際、特定のデバイスメモリにて異常検出を通知し、その結果に基づいて発生した異常の内容を一覧する画面に自動的に切換え、または表示操作端末の操作者の権限をデバイスメモリの値で表現し、デバイスメモリの値に応じてオブジェクトの表示若しくは非表示、または操作の可否を制御する。
さらに、表示操作端末の所定のデバイスメモリの値を変更すると、バックライトの輝度変更またはブザー鳴動などを制御することができる。このような制御または通知のためのデバイスメモリには、サーバ装置及びクライアント装置の各々にて独立に実行すべきものと、サーバ装置及びクライアント装置で共通して制御または通知に用いるべきものとがあり、その組み合わせは表示操作端末装置を含むシステムの設計者ごとに異なっている。なお、ここで動作状態を通知するためのデバイスメモリを通知デバイスとし、制御を行うためのデバイスメモリを制御デバイスとする。このような通知デバイスまたは制御デバイスは、表示操作装置が予め固定的に定めたシステム通知デバイスまたはシステム制御デバイスと、表示操作端末装置の設計を行う設計者が自由に定めることができるユーザ通知デバイスまたはユーザ制御デバイスとに大別することができる。なお、ここで設計者は、表示操作装置においては表示操作装置の画面または機能を定義する作画データを、作画ソフトウェアを用いて設計する者を指し、表示操作装置そのものの機能を実現する組込機器におけるファームウェアまたは組込機器用のアプリケーションソフトウェア開発を行うベンダーの設計者を意味するものではない。
ここで通知デバイス及び制御デバイスに注目したとき、従来の技術ではプログラマブル表示器のように作画データに基づいて動作するサーバ装置である表示操作端末装置の画面を、工場等生産設備内の別の場所または生産設備外の事務所に置かれたパソコンまたはタブレットPCといったクライアント装置である携帯端末から閲覧及び操作することを可能としている一方で、制御デバイスまたは通知デバイスの内容をサーバ装置及びクライアント装置で必要に応じて共有化したり、逆に独立としたりする仕組みは実現できていなかった。
例えば、従来の方式では、クライアント装置はあくまでサーバ装置が生成する画面を表示するため、個々のクライアント装置に固有の通知デバイスまたは制御デバイスを持つことはできない。個々のクライアント装置に固有の通知デバイスまたは制御デバイスに相当する機能を実現するためには、例えば、あるデバイスメモリの空間のうち、一定の範囲をサーバ装置及び接続しうる全てのクライアント装置に対する通知デバイスまたは制御デバイスのための領域とし、且つIPアドレス等によりサーバ装置またはクライアント装置を特定し、所定のルールに従ってサーバ装置または各クライアント装置のための情報を格納するデバイスメモリのアドレスを算出する方法が考えられる。
例えば、サーバ装置またはクライアント装置の端末1台あたりの通知デバイスまたは制御デバイスのサイズをSz、先頭アドレスをD0とするとき、N番目の端末のための情報の先頭アドレスをD0+(N−1)×Szにより算出し、このアドレスをオフセットとして制御デバイスまたは通知デバイスを扱うという公知の方法である。しかしながら、この場合には、クライアント装置の台数が多くなるに伴って必要とするデバイスメモリの空間が大きくなり、さらにはアドレスのオフセット計算が都度発生し、処理が煩雑になる。
一方、サーバ装置とクライアント装置とで作画データを共通としつつもそれぞれを独立して動作させ、表示操作装置ごとに設けられるデバイスメモリである内部デバイスメモリは、サーバ装置とクライアント装置とにそれぞれ独立に設けられる方式では、内部デバイスメモリを用いることでサーバ装置またはクライアント装置の状態通知または制御を独立して行うことができる。しかしながら、サーバ装置とクライアント装置とを共通的に制御し、またはサーバ装置とクライアント装置とで情報を共有する必要がある場合には、そのための制御デバイスまたは通知デバイスをPLC等の外部接続機器のデバイスメモリ内に配置する必要が生じ、システムによっては表示操作端末装置のための情報を外部接続機器で保持することが好ましくない場合もある。
すなわち、サーバ装置および1または複数のクライアント装置からなる表示操作システムでは、サーバ装置またはクライアント装置ごとに独立した制御デバイスまたは通知デバイスと、サーバ装置またはクライアント装置で共通の制御デバイスまたは通知デバイスとを設計者が自由に設定することができ、且つクライアント装置の台数が増えた場合でもデバイスメモリのアドレス空間を大量消費しない仕組みは従来は実現できていない。
さらに、サーバ装置と複数台のクライアント装置を同時に使用するとき、複数の表示操作端末装置から同時的に外部接続機器のデバイスメモリの変更操作を許可すると、各表示操作端末装置の操作者が知り得ない他の表示操作端末装置の操作者の操作が行われ、結果として制御対象のシステムに対し不正な操作を行ってしまう恐れがある。
こうした問題に対し、例えば「操作権」を設定し、いずれか1台の表示操作端末装置からの操作のみを受け付け可能とすることが考えられる。しかしながら、この場合には、操作権を持たない表示操作端末装置においては個々の表示操作端末装置内のデバイスメモリの変更を伴わない操作すらもできないという問題がある。
複数の表示操作端末装置に「一致表示モード」と「不一致表示モード」を設定して切換えを行うと、画面切り換えに関しては問題を解決することが可能であるが、画面切換え以外の、例えばオブジェクト表示及び操作の権限の制御については問題を解決することができない。
そこで、本実施の形態においては、サーバ装置とクライアント装置とからなる表示操作システムで、クライアント装置はサーバ装置と同等の表示内容・機能を持つ表示操作画面を提供する場合に、サーバ装置及びクライアント装置の各々の制御デバイス及び通知デバイスを共通化することも独立とすることも可能であり、且つそのためのデバイスメモリの空間としては外部接続機器のデバイスメモリは必要とせず、表示操作システム内で確保することを可能とすることを目的の一としている。また、サーバ装置またはクライアント装置のいずれか1台の表示操作端末装置のみが外部接続機器を含む制御システムの操作に関わるデバイス書き込みを伴う操作を可能とする一方で、その他の表示操作端末装置は制御システムの操作に関わらない操作は可能とすることを目的の一としている。
本発明の一態様は、サーバ装置とクライアント装置とが接続経路により接続された表示操作システムであって、前記サーバ装置は、前記サーバ装置の機能を定義するサーバ用作画データに従って動作し、前記クライアント装置は、前記クライアント装置の機能を共通的に定義するクライアント用作画データを前記サーバ装置から前記接続経路を通じて取得して解釈することで動作し、前記サーバ装置及び前記クライアント装置は、値の読み書きが可能な内部デバイスメモリを備え、前記内部デバイスメモリは、前記サーバ装置または前記クライアント装置の独立した制御に必要な情報を格納するクライアント固有デバイス領域と、前記サーバ装置及び前記クライアント装置で共通した制御に必要な情報を格納する全クライアント共通デバイス領域とを備えることを特徴とする表示操作システムである。
または、本発明の一態様は、サーバ装置とクライアント装置とが第1の接続経路により接続され、前記サーバ装置には第2の接続経路により外部接続機器が接続された表示操作システムであって、前記外部接続機器は、前記第2の接続経路を通じて前記サーバ装置または前記クライアント装置から読み書き可能な外部デバイスメモリを備え、前記サーバ装置は、前記サーバ装置の機能を定義するサーバ用作画データに従って動作し、前記クライアント装置は、前記クライアント装置の機能を共通的に定義するクライアント用作画データを前記サーバ装置から前記第1の接続経路を通じて取得して解釈することで動作し、前記サーバ装置及び前記クライアント装置は、値の読み書きが可能な内部デバイスメモリを備え、前記内部デバイスメモリは、前記サーバ装置または前記クライアント装置の独立した制御に必要な情報を格納するクライアント固有デバイス領域と、前記サーバ装置及び前記クライアント装置で共通した制御に必要な情報を格納する全クライアント共通デバイス領域とを備え、前記クライアント固有デバイス領域及び前記全クライアント共通デバイス領域は、前記内部デバイスメモリ内の一連のアドレス空間内に、仮想的に、前記サーバ用作画データ及び前記クライアント用作画データにて定義された配置により配置され、前記クライアント装置から前記第1の接続経路を通じて読み書き可能であることを特徴とする表示操作システムである。
または、本発明の一態様は、1つのサーバ装置と複数のクライアント装置とが第1の接続経路により接続され、前記サーバ装置には第2の接続経路により外部接続機器が接続された表示操作システムであって、前記外部接続機器は、前記第2の接続経路を通じて前記サーバ装置または前記クライアント装置から読み書き可能な外部デバイスメモリを備え、前記サーバ装置は、前記サーバ装置の機能を定義するサーバ用作画データに従って動作し、前記クライアント装置は、すべての前記クライアント装置の機能を共通的に定義するクライアント用作画データを含むクライアント用パッケージデータを前記サーバ装置から前記第1の接続経路を通じて取得して解釈することで動作し、前記サーバ装置及びすべての前記クライアント装置は、値の読み書きが可能な内部デバイスメモリを備え、前記内部デバイスメモリは、前記サーバ装置または前記クライアント装置各々の独立した制御に必要な情報を格納するクライアント固有デバイス領域と、前記サーバ装置及びすべての前記クライアント装置で共通した制御に必要な情報を格納する全クライアント共通デバイス領域とを備え、前記クライアント固有デバイス領域及び前記全クライアント共通デバイス領域は、前記内部デバイスメモリ内の一連のアドレス空間内に、仮想的に、前記サーバ用作画データ及び前記クライアント用作画データにて定義された配置により配置され、前記クライアント装置から前記第1の接続経路を通じて読み書き可能であることを特徴とする表示操作システムである。前記クライアント用パッケージデータは、前記クライアント装置を動作させるソフトウェアの一部であるクライアント用アプリケーションを含んでいてもよい。
上記構成によれば、表示操作システムに含まれる個々の表示操作端末装置の制御デバイスまたは通知デバイスを内部デバイスメモリに配置し、全ての表示操作端末装置で共有する情報については、全クライアント共通デバイス領域に配置し、各表示操作端末装置で独立とすべき情報については、クライアント固有デバイス領域に配置することで、各表示操作端末装置の作画データを共通としつつも、外部接続機器のデバイスメモリを使用することなく全表示操作端末装置に共通の制御または通知を実現する一方、個々の表示操作端末装置で独立した制御または通知も可能となる。これにより、例えば画面切り換えは表示操作端末装置ごとに独立とするが、現在操作を実行している表示操作端末装置を特定する情報は全ての表示操作端末装置で共通的に保持することができる。特に、プログラマブル表示器を具体例として考えると、こうした制御デバイスまたは通知デバイスを格納する内部デバイスメモリは配列的に確保されそのサイズは有限だが、上記構成によれば、その有限な空間に対して全クライアント共通デバイス領域とクライアント固有デバイス領域とを用途に応じて自由に割り付けることができる。こうした自由度はプログラマブル表示器のように、設計者が自由に機能設計する必要がある装置、すなわち、一般の組込機器のようにその装置のベンダーが半固定的にメモリ配置を定めることができない装置では、重要な特性である。なお、全クライアント共通デバイス領域とクライアント固有デバイス領域の割り付けさえ全表示操作端末装置にて共通であれば、必ずしも作画データが共通である必要はない。なお、クライアント装置がクライアント用作画データを解釈して動作するための仕組みを予め備えている場合にはサーバ装置は「クライアント用作画データ」のみを提供すればよい。一方で、クライアント用アプリケーションもサーバ装置から提供してもよく、このようにクライアント用アプリケーションもサーバ装置から提供する場合には、クライアント装置が予めクライアント用アプリケーションをインストールしておく必要がなく、且つサーバ装置が有するクライアント用作画データに適したクライアント用アプリケーションを組み合わせてクライアント装置に提供することができる。
さらには、上記構成においては、前記サーバ装置は、前記サーバ用作画データに従って表示操作機能を提供し、前記外部接続機器の前記外部デバイスメモリの読み書きを行うことが可能なプログラマブル表示器であることが好ましい。こうした構成とすることで、特にクライアント装置が複数台存在するとき、各クライアント装置が独立して外部接続機器に対して通信を行わず、サーバ装置が代表して通信を実行するため、外部接続機器の負担を低減することができる。
また、上記構成においては、前記内部デバイスメモリのうち、前記全クライアント共通デバイス領域と前記クライアント固有デバイス領域のそれぞれに割り付けるアドレス範囲である内部デバイスアドレス割り付け情報は、操作者による指定が可能であり、前記内部デバイスアドレス割り付け情報は、前記サーバ用作画データ及び前記クライアント用作画データに共通した領域として定義されていることが好ましい。こうした構成とすることで、全クライアント共通デバイス領域とクライアント固有デバイス領域のそれぞれに割り付けるアドレス範囲を、サーバ用及びクライアント用の作画データで設定するため、設計者が構築するシステムに応じたデバイス領域の割り付けが可能となる。
また、上記構成においては、前記サーバ装置は、前記サーバ装置及び前記クライアント装置の操作者を認証するオペレータ認証処理部を備え、前記オペレータ認証処理部は、認証する前記操作者に付与する操作の権限を管理するオペレータ別操作権情報を有し、認証成功時には前記操作者が指定する前記サーバ装置または前記クライアント装置の操作権限を前記オペレータ別操作権情報に定義し、前記サーバ装置または前記クライアント装置の前記作画データで規定するオブジェクト及びバックグラウンド機能の各々に対して操作権ごとに実行可能な操作内容を定義可能であり、前記操作内容として前記内部デバイスメモリ及び前記外部デバイスメモリへのデバイス値の書き込みの可否を制御することが好ましい。こうした構成とすることで、サーバ装置またはクライアント装置の操作者の認証結果に従って内部デバイスメモリ及び外部接続機器のデバイスメモリへのデバイス値の書き込み可否を制御可能とする一方、操作者の認証結果によらず各種オブジェクトの操作は可能とすることができる。特に認証結果が一定の要件を満たさない場合には、内部デバイスメモリのうち全クライアント共通デバイス領域及び外部接続機器のデバイスメモリへのデバイス書き込みのみを禁止し、クライアント固有デバイス領域へのデバイス書き込みは許可することで、システム全体に影響を及ぼす操作のみは制限するが、個々の表示操作端末装置に対する独立した操作は実行可能とすることができるため、表示操作端末装置ごとに異なる画面を切り換え閲覧し、または表示操作端末装置内で閉じたパラメータの変更操作をすることは許可しつつも、システム全体に影響を及ぼす操作は禁止することが可能となる。さらに、クライアント装置の操作者の認証はサーバ装置で実行するため、例えばクライアント装置のアプリケーションを偽装し、あたかもあらゆる操作権限を有する操作者、すなわち管理者権限をもつ操作者になりすまし、不正にシステムに対して操作を行うことを防止できる。この効果は特に、サーバ装置が、サーバ用作画データに従って表示操作機能を提供し、外部接続機器の外部デバイスメモリの読み書きを行うことが可能なプログラマブル表示器である場合に、外部接続機器のデバイスメモリと全クライアント共通デバイス領域へのアクセスをサーバ装置が集中管理するときに、より厳密な運用が可能になる。これは、サーバ装置がクライアント装置からの通信要求を一元管理する際に、クライアントの権限を判断し、その実行の可否を判定することができるためである。
また、上記構成において、複数の前記クライアント装置が同時に前記サーバ装置に接続するとき、前記クライアント装置及び前記サーバ装置には、前記内部デバイスメモリ及び前記外部デバイスメモリへのデバイス書き込み操作権が設定され、前記デバイス書き込み操作権の状態は、他装置が操作権を有する状態と、自装置が前記操作権を有する状態と、前記自装置及び前記他装置のいずれも前記操作権を有さない状態のいずれかであり、前記操作権を有する前記クライアント装置または前記サーバ装置は、前記デバイス書き込みを伴う操作を実行可能であり、前記操作権を有さない前記クライアント装置または前記サーバ装置は、全てのデバイス書き込みが禁止されることが好ましい。または、複数の前記クライアント装置が同時に前記サーバ装置に接続するとき、前記クライアント装置及び前記サーバ装置には、前記内部デバイスメモリ及び前記外部デバイスメモリへのデバイス書き込み操作権状態が設定され、前記デバイス書き込み操作権の状態は、他装置が操作権を有する状態と、自装置が前記操作権を有する状態と、前記自装置及び前記他装置のいずれも前記操作権を有さない状態とのいずれかであり、前記操作権を有する前記クライアント装置または前記サーバ装置は、前記デバイス書き込みを伴う操作を実行可能であり、前記操作権を有さない前記クライアント装置または前記サーバ装置は、自装置の前記クライアント固有デバイス領域にのみ前記デバイス書き込みを伴う操作を実行可能であることが好ましい。こうした構成によれば、複数の表示操作端末装置のうちいずれか1台のみが操作権を有し、操作権を持つ表示操作端末装置のみがデバイスの書き込み操作を実行可能であり、操作権を有さない端末については、書き込み可能なデバイスの範囲を制限することができる。さらに、その操作権の管理は、各表示操作端末装置から見て、他装置が操作権を有し、または自装置が操作権を有し、またはいずれの装置も操作権を有さないといった3つの状態を有することで、操作者に対し、他装置が操作権を持つ場合には明示的に操作権を取得する操作を行わせ、自装置が操作権を持つ場合、またはいずれの装置も操作権を有さない場合には、操作を行った表示操作端末装置が操作権を有し、操作を可能とすることができる。これにより、複数の表示操作端末装置を含むシステムにおいて、同時的に複数の表示操作端末装置がデバイス書き込み操作を行うことを制限し、システムに対して意図しない不正な操作が発生する恐れを防止することができる。
100 サーバ装置、101 表示入力装置、110 揮発性メモリ、111 内部デバイスメモリ、112 クライアント固有デバイス領域、113 全クライアント共通デバイス領域、114 ワークメモリ、120 不揮発性メモリ、121 サーバ用作画データ、122 クライアント用パッケージデータ、122a クライアント用アプリケーション、122b クライアント用作画データ、124 リソースデータ、125 オペレータ管理情報、130 サーバ装置制御部、131 サーバ装置操作入力処理部、132 サーバ装置表示処理部、133 バックグラウンド機能処理部、134 サーバ用作画データ解釈処理部、135 オペレータ認証処理部、136 クライアント用データ管理部、137 操作権管理部、138 クライアント用パッケージデータ提供処理部、139 クライアント装置要求処理部、140 対クライアント通信処理部、141 デバイスメモリ通信処理部、151 第1通信インタフェース、152 第2通信インタフェース、200 クライアント装置、201 表示入力装置、210 揮発性メモリ、211 内部デバイスメモリ、212 クライアント固有デバイス領域、213 全クライアント共通デバイス領域、214 ワークメモリ、220 不揮発性メモリ、222 クライアント用アプリケーション、223 クライアント用作画データ、225 クライアント特定情報、230 クライアント装置制御部、231 クライアント装置操作入力処理部、232 クライアント装置表示処理部、233 バックグラウンド機能処理部、234 クライアント用作画データ解釈処理部、235 対サーバ要求生成処理部、240 対サーバ通信処理部、251 第1通信インタフェース、300 外部接続機器、301 外部デバイスメモリ、401 第1の接続経路、402 第2の接続経路、500 システム制御デバイス、510 ユーザ用内部デバイス、511 ワードデバイス、512 ビットデバイス。
上述した課題を解決し、目的を達成するために、本発明は、サーバ装置とクライアント装置とが接続され、前記クライアント装置のモニタ画面により操作を行う表示操作システムであって、前記サーバ装置内における個別の独立した制御に用いるデータは、前記サーバ装置内に格納及び展開され、前記クライアント装置内における個別の独立した制御に用いるデータは、前記クライアント装置内に格納及び展開され、前記表示操作システム全体における一括した制御に用いる共有すべきデータは、前記サーバ装置と前記クライアント装置にて共有されることを特徴とする。
また、ワークメモリ114には、サーバ装置制御部130が行うデータの演算若しくは処理途中のデータが保持され、または表示入力装置101で表示する画面の情報が格納される。ワークメモリ114は、内部デバイスメモリ111とは独立して確保される。
また、ワークメモリ214には、クライアント装置制御部230が行うデータの演算若しくは処理途中のデータが保持され、または表示入力装置201で表示する画面の情報が格納される。ワークメモリ214は、内部デバイスメモリ211とは独立して確保される。
より具体的には、図4に示すように、内部デバイスメモリ111、211内には、設計者が自由に使用できるユーザ用内部デバイス510と、表示操作端末装置の制御及び状態の通知のために予約されたシステム制御デバイス500とが設けられている。ここで、表示操作端末装置は、サーバ装置100及びクライアント装置200の総称である。
本実施の形態について以下に異なる観点から説明する。プログラマブル表示器のような表示操作端末装置では、単に外部接続機器や表示器内部のデバイスメモリの値を表示して操作するだけでなく、デバイスメモリの値に応じて挙動を変える制御が必要とされる場合がある。例えば、表示する画面をデバイスメモリの値により制御可能としておくことで、装置の異常を検出した際、特定のデバイスメモリにて異常検出を通知し、その結果に基づいて発生した異常の内容を一覧する画面に自動的に切換え、または表示操作端末装置の操作者の権限をデバイスメモリの値で表現し、デバイスメモリの値に応じてオブジェクトの表示若しくは非表示、または操作の可否を制御する。
さらに、表示操作端末装置の所定のデバイスメモリの値を変更すると、バックライトの輝度変更またはブザー鳴動などを制御することができる。このような制御または通知のためのデバイスメモリには、サーバ装置及びクライアント装置の各々にて独立に実行すべきものと、サーバ装置及びクライアント装置で共通して制御または通知に用いるべきものとがあり、その組み合わせは表示操作端末装置を含むシステムの設計者ごとに異なっている。なお、ここで動作状態を通知するためのデバイスメモリを通知デバイスとし、制御を行うためのデバイスメモリを制御デバイスとする。このような通知デバイスまたは制御デバイスは、表示操作端末装置が予め固定的に定めたシステム通知デバイスまたはシステム制御デバイスと、表示操作端末装置の設計を行う設計者が自由に定めることができるユーザ通知デバイスまたはユーザ制御デバイスとに大別することができる。なお、ここで設計者は、表示操作端末装置においては表示操作端末装置の画面または機能を定義する作画データを、作画ソフトウェアを用いて設計する者を指し、表示操作端末装置そのものの機能を実現する組込機器におけるファームウェアまたは組込機器用のアプリケーションソフトウェア開発を行うベンダーの設計者を意味するものではない。
一方、サーバ装置とクライアント装置とで作画データを共通としつつもそれぞれを独立して動作させ、表示操作端末装置ごとに設けられるデバイスメモリである内部デバイスメモリは、サーバ装置とクライアント装置とにそれぞれ独立に設けられる方式では、内部デバイスメモリを用いることでサーバ装置またはクライアント装置の状態通知または制御を独立して行うことができる。しかしながら、サーバ装置とクライアント装置とを共通的に制御し、またはサーバ装置とクライアント装置とで情報を共有する必要がある場合には、そのための制御デバイスまたは通知デバイスをPLC等の外部接続機器のデバイスメモリ内に配置する必要が生じ、システムによっては表示操作端末装置のための情報を外部接続機器で保持することが好ましくない場合もある。
また、上記構成において、複数の前記クライアント装置が同時に前記サーバ装置に接続するとき、前記クライアント装置及び前記サーバ装置には、前記内部デバイスメモリ及び前記外部デバイスメモリへのデバイス書き込み操作権が設定され、前記デバイス書き込み操作権の状態は、他装置が操作権を有する状態と、自装置が前記操作権を有する状態と、前記自装置及び前記他装置のいずれも前記操作権を有さない状態のいずれかであり、前記操作権を有する前記クライアント装置または前記サーバ装置は、前記デバイス書き込みを伴う操作を実行可能であり、前記操作権を有さない前記クライアント装置または前記サーバ装置は、全てのデバイス書き込みが禁止されることが好ましい。または、複数の前記クライアント装置が同時に前記サーバ装置に接続するとき、前記クライアント装置及び前記サーバ装置には、前記内部デバイスメモリ及び前記外部デバイスメモリへのデバイス書き込み操作権が設定され、前記デバイス書き込み操作権の状態は、他装置が操作権を有する状態と、自装置が前記操作権を有する状態と、前記自装置及び前記他装置のいずれも前記操作権を有さない状態とのいずれかであり、前記操作権を有する前記クライアント装置または前記サーバ装置は、前記デバイス書き込みを伴う操作を実行可能であり、前記操作権を有さない前記クライアント装置または前記サーバ装置は、自装置の前記クライアント固有デバイス領域にのみ前記デバイス書き込みを伴う操作を実行可能であることが好ましい。こうした構成によれば、複数の表示操作端末装置のうちいずれか1台のみが操作権を有し、操作権を持つ表示操作端末装置のみがデバイスの書き込み操作を実行可能であり、操作権を有さない端末については、書き込み可能なデバイスの範囲を制限することができる。さらに、その操作権の管理は、各表示操作端末装置から見て、他装置が操作権を有し、または自装置が操作権を有し、またはいずれの装置も操作権を有さないといった3つの状態を有することで、操作者に対し、他装置が操作権を持つ場合には明示的に操作権を取得する操作を行わせ、自装置が操作権を持つ場合、またはいずれの装置も操作権を有さない場合には、操作を行った表示操作端末装置が操作権を有し、操作を可能とすることができる。これにより、複数の表示操作端末装置を含むシステムにおいて、同時的に複数の表示操作端末装置がデバイス書き込み操作を行うことを制限し、システムに対して意図しない不正な操作が発生する恐れを防止することができる。

Claims (10)

  1. サーバ装置とクライアント装置とが接続され、前記クライアント装置のモニタ画面により操作を行う表示操作システムであって、
    前記サーバ装置及び前記クライアント装置は、値の読み書きが可能なデバイスメモリを備え、
    前記デバイスメモリに格納されたデータによって、前記デバイスメモリを備える前記サーバ装置または前記クライアント装置内における個別の独立した制御と、前記サーバ装置による前記表示操作システムにおける一括した制御とを可能としたことを特徴とする表示操作システム。
  2. サーバ装置とクライアント装置とが接続経路により接続され、前記クライアント装置のモニタ画面により操作を行う表示操作システムであって、
    前記サーバ装置は、前記サーバ装置の機能を定義するサーバ用作画データに従って動作し、
    前記クライアント装置は、前記クライアント装置の機能を共通的に定義するクライアント用作画データを前記サーバ装置から前記接続経路を通じて取得して解釈することで動作し、
    前記サーバ装置及び前記クライアント装置は、値の読み書きが可能な内部デバイスメモリを備え、
    前記内部デバイスメモリは、前記サーバ装置または前記クライアント装置の独立した制御に必要な情報を格納するクライアント固有デバイス領域と、前記サーバ装置及び前記クライアント装置で共通した制御に必要な情報を格納する全クライアント共通デバイス領域とを備えることを特徴とする表示操作システム。
  3. サーバ装置とクライアント装置とが第1の接続経路により接続され、前記サーバ装置には第2の接続経路により外部接続機器が接続され、前記クライアント装置のモニタ画面により操作を行う表示操作システムであって、
    前記外部接続機器は、前記第2の接続経路を通じて前記サーバ装置または前記クライアント装置から読み書き可能な外部デバイスメモリを備え、
    前記サーバ装置は、前記サーバ装置の機能を定義するサーバ用作画データに従って動作し、
    前記クライアント装置は、前記クライアント装置の機能を共通的に定義するクライアント用作画データを前記サーバ装置から前記第1の接続経路を通じて取得して解釈することで動作し、
    前記サーバ装置及び前記クライアント装置は、値の読み書きが可能な内部デバイスメモリを備え、
    前記内部デバイスメモリは、前記サーバ装置または前記クライアント装置の独立した制御に必要な情報を格納するクライアント固有デバイス領域と、前記サーバ装置及び前記クライアント装置で共通した制御に必要な情報を格納する全クライアント共通デバイス領域とを備え、
    前記クライアント固有デバイス領域及び前記全クライアント共通デバイス領域は、前記内部デバイスメモリ内の一連のアドレス空間内に、仮想的に、前記サーバ用作画データ及び前記クライアント用作画データにて定義された配置により配置され、
    前記クライアント装置から前記第1の接続経路を通じて読み書き可能であることを特徴とする表示操作システム。
  4. 1つのサーバ装置と複数のクライアント装置とが第1の接続経路により接続され、前記サーバ装置には第2の接続経路により外部接続機器が接続され、前記クライアント装置のモニタ画面により操作を行う表示操作システムであって、
    前記外部接続機器は、前記第2の接続経路を通じて前記サーバ装置または前記クライアント装置から読み書き可能な外部デバイスメモリを備え、
    前記サーバ装置は、前記サーバ装置の機能を定義するサーバ用作画データに従って動作し、
    前記クライアント装置は、すべての前記クライアント装置の機能を共通的に定義するクライアント用作画データを含むクライアント用パッケージデータを前記サーバ装置から前記第1の接続経路を通じて取得して解釈することで動作し、
    前記サーバ装置及びすべての前記クライアント装置は、値の読み書きが可能な内部デバイスメモリを備え、
    前記内部デバイスメモリは、前記サーバ装置または前記クライアント装置各々の独立した制御に必要な情報を格納するクライアント固有デバイス領域と、前記サーバ装置及びすべての前記クライアント装置で共通した制御に必要な情報を格納する全クライアント共通デバイス領域とを備え、
    前記クライアント固有デバイス領域及び前記全クライアント共通デバイス領域は、前記内部デバイスメモリ内の一連のアドレス空間内に、仮想的に、前記サーバ用作画データ及び前記クライアント用作画データにて定義された配置により配置され、
    前記クライアント装置から前記第1の接続経路を通じて読み書き可能であることを特徴とする表示操作システム。
  5. 前記クライアント用パッケージデータは、
    前記クライアント装置を動作させるソフトウェアの一部であるクライアント用アプリケーションを含むことを特徴とする請求項4に記載の表示操作システム。
  6. 前記サーバ装置は、前記サーバ用作画データに従って表示操作機能を提供し、前記外部デバイスメモリの読み書きを行うことが可能なプログラマブル表示器であることを特徴とする請求項3から請求項5のいずれか一項に記載の表示操作システム。
  7. 前記内部デバイスメモリのうち、前記全クライアント共通デバイス領域と前記クライアント固有デバイス領域のそれぞれに割り付けるアドレス範囲である内部デバイスアドレス割り付け情報は、前記サーバ用作画データ及び前記クライアント用作画データの設計者による指定が可能であり、
    前記内部デバイスアドレス割り付け情報は、前記サーバ用作画データ及び前記クライアント用作画データに共通した領域として定義されていることを特徴とする請求項2から請求項6のいずれか一項に記載の表示操作システム。
  8. 前記サーバ装置は、
    前記サーバ装置及び前記クライアント装置の操作者を認証するオペレータ認証処理部を備え、
    前記オペレータ認証処理部は、認証する前記操作者に付与する操作の権限を管理するオペレータ別操作権情報を有し、
    認証成功時には前記操作者が指定する前記サーバ装置または前記クライアント装置の操作権限を前記オペレータ別操作権情報に定義し、前記サーバ装置または前記クライアント装置の作画データで規定するオブジェクト及びバックグラウンド機能の各々に対して操作権ごとに実行可能な操作内容を定義可能であり、
    前記操作内容として前記内部デバイスメモリ及び前記外部デバイスメモリへのデバイス値の書き込みの可否を制御することを特徴とする請求項3から請求項6のいずれか一項に記載の表示操作システム。
  9. 複数の前記クライアント装置が同時に前記サーバ装置に接続するとき、前記クライアント装置及び前記サーバ装置には、前記内部デバイスメモリ及び前記外部デバイスメモリへのデバイス書き込み操作権が設定され、
    前記デバイス書き込み操作権の状態は、他装置が操作権を有する状態と、自装置が前記操作権を有する状態と、前記自装置及び前記他装置のいずれも前記操作権を有さない状態のいずれかであり、
    前記操作権を有する前記クライアント装置または前記サーバ装置は、デバイス書き込みを伴う操作を実行可能であり、
    前記操作権を有さない前記クライアント装置または前記サーバ装置は、全てのデバイス書き込みが禁止されることを特徴とする請求項4から請求項6のいずれか一項に記載の表示操作システム。
  10. 複数の前記クライアント装置が同時に前記サーバ装置に接続するとき、前記クライアント装置及び前記サーバ装置には、前記内部デバイスメモリ及び前記外部デバイスメモリへのデバイス書き込み操作権状態が設定され、
    前記デバイス書き込み操作権の状態は、他装置が操作権を有する状態と、自装置が前記操作権を有する状態と、前記自装置及び前記他装置のいずれも前記操作権を有さない状態とのいずれかであり、
    前記操作権を有する前記クライアント装置または前記サーバ装置は、デバイス書き込みを伴う操作を実行可能であり、
    前記操作権を有さない前記クライアント装置または前記サーバ装置は、自装置の前記クライアント固有デバイス領域にのみ前記デバイス書き込みを伴う操作を実行可能であることを特徴とする請求項4から請求項6のいずれか一項に記載の表示操作システム。
JP2016537644A 2014-07-29 2014-07-29 表示操作システム Pending JPWO2016016953A1 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2014/069968 WO2016016953A1 (ja) 2014-07-29 2014-07-29 表示操作システム

Publications (1)

Publication Number Publication Date
JPWO2016016953A1 true JPWO2016016953A1 (ja) 2017-04-27

Family

ID=55216898

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016537644A Pending JPWO2016016953A1 (ja) 2014-07-29 2014-07-29 表示操作システム

Country Status (6)

Country Link
US (1) US20170140497A1 (ja)
JP (1) JPWO2016016953A1 (ja)
CN (1) CN106575208A (ja)
DE (1) DE112014006838T5 (ja)
TW (1) TWI582556B (ja)
WO (1) WO2016016953A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017183140A1 (ja) * 2016-04-20 2017-10-26 三菱電機株式会社 プログラマブル表示器、端末装置、及び制御システム
JP6891846B2 (ja) * 2018-03-30 2021-06-18 ブラザー工業株式会社 制御システム、制御装置、制御方法及びコンピュータプログラム
US20220155746A1 (en) * 2019-04-16 2022-05-19 Mitsubishi Electric Corporation Program creation support device, program creation support method, and storage medium
JP7392337B2 (ja) * 2019-09-10 2023-12-06 富士フイルムビジネスイノベーション株式会社 情報処理装置およびプログラム
US11892956B2 (en) 2019-12-31 2024-02-06 Micron Technology, Inc. Performance of memory system background operations
JP2021131630A (ja) * 2020-02-18 2021-09-09 株式会社東芝 監視制御装置およびクライアントpc
CN112966300B (zh) * 2021-03-04 2024-06-04 北京百度网讯科技有限公司 日程数据处理方法、装置、设备和介质
CN117157603A (zh) * 2022-03-30 2023-12-01 东芝三菱电机产业***株式会社 Scada网页hmi客户端装置及scada网页hmi***

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009026096A (ja) * 2007-07-20 2009-02-05 Fuji Xerox Co Ltd ネットワークシステム
JP2010256972A (ja) * 2009-04-21 2010-11-11 Digital Electronics Corp サーバ装置、サーバ・クライアントシステム、サーバプログラムおよびそれを記録した記録媒体

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3812982B2 (ja) * 1997-01-31 2006-08-23 富士通株式会社 データ伝送制御方法及びデータ伝送制御システム
US5897634A (en) * 1997-05-09 1999-04-27 International Business Machines Corporation Optimized caching of SQL data in an object server system
US6763370B1 (en) * 1998-11-16 2004-07-13 Softricity, Inc. Method and apparatus for content protection in a secure content delivery system
US20040049571A1 (en) * 2002-09-06 2004-03-11 Johnson Bruce L. Tracking document usage
US7356531B1 (en) * 2003-07-25 2008-04-08 Symantec Operating Corporation Network file system record lock recovery in a highly available environment
CN100426719C (zh) * 2003-09-01 2008-10-15 台均科技(深圳)有限公司 用户端设备与本地客户端应用服务器或远程网络服务器间鉴权的方法
US20050226468A1 (en) * 2004-03-30 2005-10-13 Intel Corporation Method and apparatus for enabling context awareness in a wireless system
CN101207485B (zh) * 2007-08-15 2010-12-01 深圳市同洲电子股份有限公司 对用户进行统一身份安全认证的***及其方法
WO2010122741A1 (ja) * 2009-04-21 2010-10-28 株式会社デジタル サーバ装置、サーバ・クライアントシステム、サーバプログラムおよびそれを記録した記録媒体
WO2011108026A1 (ja) * 2010-03-04 2011-09-09 三菱電機株式会社 プログラマブル表示器を備えた制御システム及びプログラマブル表示器並びにその作画データ作成手段
KR101044320B1 (ko) * 2010-10-14 2011-06-29 주식회사 네오패드 가상 키입력수단의 배경화면 컨텐츠 제공 방법 및 시스템
WO2012070348A1 (ja) * 2010-11-24 2012-05-31 株式会社アイズ サーバシステム、サーバシステムの実行方法及び外部メモリ
CN102821119B (zh) * 2011-06-10 2016-06-29 北大方正集团有限公司 一种客户端、上传文件的方法、***和设备
US8838726B2 (en) * 2011-09-09 2014-09-16 Microsoft Corporation Selective use of shared memory for remote desktop application
US9996403B2 (en) * 2011-09-30 2018-06-12 Oracle International Corporation System and method for providing message queues for multinode applications in a middleware machine environment
TW201324333A (zh) * 2011-12-12 2013-06-16 Univ Nan Kai Technology 提供語音提示之網頁瀏覽系統及其方法
US10080964B2 (en) * 2013-07-12 2018-09-25 Gree, Inc. Server device, method for controlling the same, computer-readable recording medium, and game system
US9607351B2 (en) * 2013-07-24 2017-03-28 General Dynamics Mission Systems, Inc. Systems and methods for GPU virtualization
CN103428553A (zh) * 2013-08-20 2013-12-04 深圳市比维视创科技有限公司 一种对图像数据处理的方法、***以及相关设备
JP6196576B2 (ja) * 2014-03-31 2017-09-13 富士フイルム株式会社 診療支援装置、方法及びプログラム、並びに診療情報保存装置、方法及びプログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009026096A (ja) * 2007-07-20 2009-02-05 Fuji Xerox Co Ltd ネットワークシステム
JP2010256972A (ja) * 2009-04-21 2010-11-11 Digital Electronics Corp サーバ装置、サーバ・クライアントシステム、サーバプログラムおよびそれを記録した記録媒体

Also Published As

Publication number Publication date
DE112014006838T5 (de) 2017-04-20
TW201610627A (zh) 2016-03-16
WO2016016953A1 (ja) 2016-02-04
TWI582556B (zh) 2017-05-11
CN106575208A (zh) 2017-04-19
US20170140497A1 (en) 2017-05-18

Similar Documents

Publication Publication Date Title
WO2016016953A1 (ja) 表示操作システム
JP5927242B2 (ja) 画像データ作成装置および携帯端末装置
JP6350302B2 (ja) プログラマブル表示器
JP4688929B2 (ja) プログラマブル表示器および制御システム
US8381274B2 (en) Security system and method for granting access
TWI630503B (zh) 遠端監視系統及遠端監視裝置
JP5561357B2 (ja) プログラマブル表示器を備えた制御システム及びプログラマブル表示器並びにその作画データ作成手段
US20080046553A1 (en) Network-management device, network-management method, and computer program product
JP6443190B2 (ja) プログラマブルロジックコントローラ、プログラマブルロジックコントローラの制御方法、及び、制御プログラム
JP6060975B2 (ja) ディスプレイ上でのユーザインターフェイスの生成
JP2013191056A (ja) 情報処理システム、ユーザー端末装置、情報処理装置およびプログラム
JP6745174B2 (ja) コントローラ及びコントロール管理システム
US20110320962A1 (en) Information processing apparatus, control method therefor, and program
JP2006318102A (ja) フィールド機器管理装置およびフィールド機器管理方法
JP6351646B2 (ja) 設備管理システム
JP4197343B2 (ja) 制御用通信システム、および制御用通信プログラムを記録したコンピュータ読み取り可能な記録媒体
JP6525067B2 (ja) 逆コマンド生成プログラム、逆コマンド生成方法及び逆コマンド生成装置
WO2019167246A1 (ja) データ管理システム、制御装置、データ管理装置、データ管理方法およびデータ管理プログラム
CN113874847B (zh) 控制器以及空调管理***
JP7283232B2 (ja) 情報提供方法および情報提供システム
JP7044050B2 (ja) データ管理システムおよびデータ管理方法
JP2010176616A (ja) ネットワーク接続ストレージとipアドレス設定方法
JP2007252162A (ja) 電動機駆動装置
JP2006180547A (ja) リモートコントロールシステム及び装置
JP5852938B2 (ja) 電子機器及びそのバックアッププログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161024

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20161122