WO2016084212A1 - Control server and grouping method for control applications - Google Patents

Control server and grouping method for control applications Download PDF

Info

Publication number
WO2016084212A1
WO2016084212A1 PCT/JP2014/081488 JP2014081488W WO2016084212A1 WO 2016084212 A1 WO2016084212 A1 WO 2016084212A1 JP 2014081488 W JP2014081488 W JP 2014081488W WO 2016084212 A1 WO2016084212 A1 WO 2016084212A1
Authority
WO
WIPO (PCT)
Prior art keywords
control
application
group
priority
applications
Prior art date
Application number
PCT/JP2014/081488
Other languages
French (fr)
Japanese (ja)
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 PCT/JP2014/081488 priority Critical patent/WO2016084212A1/en
Priority to JP2016561176A priority patent/JPWO2016084212A1/en
Publication of WO2016084212A1 publication Critical patent/WO2016084212A1/en

Links

Images

Classifications

    • 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/48Program initiating; Program switching, e.g. by interrupt

Definitions

  • the present invention relates to a control server and a control application grouping method.
  • a computer system there is a system that divides applications into a plurality of groups and executes processing according to the priority of the group.
  • a plurality of types of application programs are classified into a plurality of groups according to priority, executed with priority specified for the group, and appropriate according to transaction processing time. It describes that load control is performed.
  • control application In a control server that constitutes a supervisory control system such as an industrial plant or power system, a plurality of types of control applications are operating.
  • This control application includes, for example, a real-time control application that performs real-time control based on sensor data of a plant and the like, and is necessary for constantly monitoring the system status in an external terminal device and controlling it by human operation as necessary.
  • screen-related applications mounted on the server, planning-related applications that plan the operation of the monitoring control system, and the like. In this way, in the control server, the real-time control application, the screen system application, the planning system application, etc. operate together on the control server, but it is necessary to perform operation processing according to the respective characteristics.
  • Patent Document 1 when the technique of Patent Document 1 is applied to a control server, among the multiple types of control applications that operate on the control server, what operation is prioritized is determined according to the specific characteristics of each application. It is necessary, but this point is not taken into consideration at all.
  • An object of the present invention is to provide a control server or a control application grouping method capable of managing operations in accordance with characteristics of various applications in a monitoring control system in which a plurality of types of application programs operate. That is.
  • One of the representative control server and control application grouping methods of the present invention for achieving the above object is to perform control calculation based on data collected from the field equipment and to output control output to the controller.
  • a real-time control application to be performed a screen application for transmitting the equipment state of the field equipment to an external terminal, receiving a control instruction from a user via the external terminal and processing, and a control plan from a plan server Grouping a plurality of applications into the planned application to be processed in advance, predetermining the priority of operation of each application for each group, and executing each of the plurality of applications according to the predetermined priority Features.
  • FIG. 1 It is a block diagram of the grouping method concerning this invention. It is a figure which shows the process management table in FIG. It is a figure which shows the priority control table in FIG. It is a flowchart of the group control mechanism in FIG. It is a figure which shows the constraint management table in FIG. It is a flowchart of the group registration mechanism in FIG. It is a flowchart of the constraint check mechanism in FIG. It is a figure which shows the trace filter setting in FIG. It is a flowchart of the trace control mechanism in FIG.
  • control server control application grouping method has the configuration shown in FIG.
  • FIG. 1 is a diagram showing a system configuration of a monitoring control system which is an embodiment to which the present invention is applied.
  • the control server 1, the controller 2, the external terminal 3, and the planning server 4 are connected via an external network. Further, the external network connecting the control server 1 and the controller 2 and the external network connecting the control server 1 and the external terminal 3 and the planning server 4 are different networks.
  • the control server 1 includes a CPU 11, a memory 12, a disk device 13, a network I / F 14, and a display device 15 as hardware configurations, each of which is connected by a bus.
  • the CPU 11 transfers the program from the disk device 13 to the memory 12 and executes this program.
  • Examples of the program to be executed include an operating system (hereinafter referred to as “OS”) and an application program operating on the OS.
  • OS operating system
  • application program operating on the OS.
  • the memory 12 is a temporary storage area for the CPU 11 to operate, and stores, for example, an OS and application programs transferred from the disk device 13.
  • the disk device 13 is an information storage medium, and stores an OS, an application program, a device driver, and a program for operating the CPU 11, and also stores the execution result of the program.
  • Examples of the disk device 13 include a hard disk drive (HDD), a solid state drive (SSD), and a flash memory.
  • the disk device 13 may be an external storage medium that can be easily removed.
  • an external storage medium for example, a flexible disk (FD), an optical disk such as a CD or a DVD, a flash memory such as a USB memory or a compact flash (registered trademark) can be used.
  • the network I / F 14 has a communication function with an external network.
  • the network I / F 14 receives a communication request from a program executed by the CPU 11 and communicates with an external network.
  • Examples of the network I / F 14 may include ICs such as an IEEE 802.3 standard MAC (Media Access Control) chip, a PHY (physical layer) chip, a combined MAC and PHY chip, an FPGA, a CPLD, an ASIC, and a gate array.
  • the network I / F 14 may be included in the CPU 11 or a chip set that controls an information path inside the computer.
  • the display screen 15 is a device that displays operations on the control server 1, monitoring data of field facilities, and the like, and can be exemplified by a CRT (Cathode Ray Tube) or an LCD (Liquid crystal display).
  • CRT Cathode Ray Tube
  • LCD Liquid crystal display
  • bus examples include a PCI bus, an ISA bus, a PCI Express bus, a system bus, and a memory bus.
  • FIG. 1 various programs executed by the CPU 11 are described as a functional block diagram on the memory 12, and various tables and filters are described on the disk device 13.
  • the applications executed by the CPU 11 include at least a real time control application 125, a screen system application 126, and a planning system application 127, which are classified into a real time group, a screen system group, and a planning system group, respectively.
  • the characteristics of each application will be described later.
  • the disk device 132 also stores a process management table 131, a priority control table 132, a constraint management table 133, and a trace filter setting 134. Details of each mechanism and table will be described later.
  • Controller 2 is a device that handles sensor data and the like installed in on-site equipment by a monitoring control system. Data from the controller 2 is collected by the control server 1, control judgment is performed according to the plan, and control output is performed as necessary. It is the real time control application 125 that handles this on the control server.
  • the external terminal 3 is a terminal in which the operator refers to the on-site equipment state in the supervisory control system and gives a control instruction as necessary.
  • the screen system application 126 processes this on the control server. .
  • the plan server 4 is a server that performs a control plan of the monitoring control system, and the control server processes information such as sensor data based on the control plan.
  • the plan application 127 performs this processing in the control server.
  • control server 1 collects OS trace information for performance analysis and failure analysis of these applications (the real-time control application 125, the screen system application 126, and the planning system application 127).
  • the group control mechanism 121 performs group management of various applications using a real-time group, a screen system group, and a planning system group, and operates according to the characteristics of the various applications so that the control server 1 operates optimally. This characteristic is set in the priority control table 132 in advance, and the group control mechanism 121 operates using this.
  • the program constituting the group is managed in the process management table 131, and the group control mechanism 121 determines the group based on this information when the process is executed, and the process based on the information in the priority control table 132. By operating, it is possible to operate according to the characteristics.
  • the group registration mechanism 122 is a mechanism for registering programs in these groups, and the constraint check mechanism 123 is a mechanism for confirming whether a program can be registered in a group.
  • the group registration mechanism 122 receives the group number to be registered, the program name, and the source code, and first calls the constraint check mechanism 123 to check whether the source code can be registered. If the check is successful in the constraint check, registration in the process management table 131 is performed.
  • the constraint check mechanism 123 confirms whether or not the constraints defined for each group are observed in the source code. This constraint is held in the constraint management table 133, and the constraint check mechanism 123 confirms the source code using the contents of this table. As a result, only the program in which the restrictions are observed can be executed in the group, and it can be determined whether or not the program is correctly designed at the time of registration.
  • the trace control mechanism 124 is a mechanism for performing control so as to collect OS traces required by various applications. Since various applications are managed in groups, trace points required in each group are managed in the trace filter settings, and tracing is controlled efficiently based on this information by controlling the OS trace. A long-time trace can be collected for a collection area of a finite capacity.
  • control server 1 operates a plurality of applications such as the real-time control application 125, the screen system application 126, and the planning system application 127.
  • applications such as the real-time control application 125, the screen system application 126, and the planning system application 127.
  • processor execution priority In order to design these applications, it is necessary to set processor execution priority, disk access processing priority, and network processing priority for each process according to the characteristics of various applications based on the overall design of all applications. .
  • FIG. 2 shows the contents of the process management table 131.
  • the process management table 131 stores a group number, a group name that is a name of the group, and a program name that is a specific application name in association with each other.
  • the control program A is associated with the group 1 real-time program
  • the screen program A is associated with the group 2 screen system
  • the planning program A is associated with the group 3 planning system. It is remembered.
  • FIG. 3 shows the contents of the priority control table.
  • the priority control table 132 stores program execution priority, disk access priority, and network transmission / reception priority in association with the group number defined in the process management table 131. These priorities are set according to the characteristics of each application group.
  • Real-time control application is a highly real-time application that processes time-series data such as sensor data transmitted from the outside, makes control decisions based on the data, and controls the system. For this reason, it is necessary to operate in preference to the screen application or the planning application.
  • the screen application is an application that is processed by an operation request from a system operator or the like at an external terminal. Therefore, although the amount of data to be transmitted / received is relatively small, the application requires a response time.
  • the planning application processes data indicating the overall plan of the monitoring and control system, it is desirable that the amount of data to be transmitted and received is relatively large and the processing time is fast, but compared with other applications. Then, real-time performance is not required.
  • FIG. 4 shows a flowchart of the group control mechanism 121.
  • the group control mechanism 121 reads the process management table 131 in S11.
  • the priority control table 132 is read.
  • the program execution start is waited. When the application starts running, this wait is released.
  • the program name of the application that has started execution is received, the process management table 131 is searched from the name, and the group number is specified.
  • the priority control table 132 is referred to the specified group number, and the set priority is set for the OS. Thereby, the process of the application in a group can operate
  • a plurality of applications are grouped into a real-time group, a screen system group, and a planning system group, and operations are performed according to their priorities.
  • the real-time control application 125 cannot be secured when performing low-speed disk access processing. Therefore, it is necessary to design the real-time control application 125 so that disk access is not performed, but this must also be designed for each process. For this reason, in the application design process, when the applications are combined and operated after the test of each process, defects in priority and disk access processing are often extracted. This necessitates re-designing in the design process, which increases man-hours. Therefore, it is necessary to be able to confirm that the program is tailored to the characteristics at the test execution timing of each process.
  • the conditions required for each group are set in the constraint management table 133 in advance, and when the application is newly registered in the group, the constraint management table 133 is checked, so that Make sure that
  • FIG. 5 is a diagram showing the contents of the constraint management table 133.
  • the constraint management table 133 as conditions required for each group in association with the group number determined in the process management table 131, an unusable API (Application Programming Interface), a disk access capacity upper limit, and a network transmission / reception capacity upper limit are provided. And are stored.
  • an unusable API Application Programming Interface
  • a disk access capacity upper limit As conditions required for each group in association with the group number determined in the process management table 131, an unusable API (Application Programming Interface), a disk access capacity upper limit, and a network transmission / reception capacity upper limit are provided. And are stored.
  • the unusable API “read, write, etc.”, the disk access capacity upper limit “none”, and the network transmission / reception capacity condition “4 KB” are set corresponding to the group 1 (real time), and the group 2 (screen system)
  • the unusable API “none”, the disk access capacity upper limit “1 MB”, the network transmission / reception capacity condition “1 MB” are set, and the unusable API “none”, disk corresponding to group 3 (planned)
  • the access capacity upper limit “none” and the network transmission / reception capacity condition “none” are set.
  • FIG. 6 shows a flowchart of the group registration mechanism 122.
  • the group registration mechanism 122 acquires the registration group number given to the mechanism in S21, acquires the registration program name given to the mechanism in S22, and sets the registration source given to the mechanism in S23. get.
  • S24 a group number and a source code are specified, and the constraint check mechanism 123 is called.
  • the result of the constraint check mechanism 123 is determined in S25, and if it is a failure indicating that the constraint is not satisfied, a failure message is output and not registered in the group. If it is a success indicating that the constraint is satisfied, it is registered in the process management table in S27. In S28, a success message is output.
  • FIG. 7 shows a flowchart of the constraint check mechanism 123.
  • the constraint checking mechanism 123 acquires the group number and source code passed from the group registration mechanism 122 in S31.
  • the constraint management table 133 in which constraints to be satisfied for each group are set is read.
  • it is searched whether or not the unusable API for the group number specified in the constraint management table 133 is used on the source code. The search result is determined in S34. If it is used, the check fails.
  • S35 it is searched whether the disk API for accessing the disk is used in the source code.
  • the conditions required for the application of each group are set in the constraint management table 133 in advance, and this constraint management table 133 is used when newly registering an application as a group. It can be confirmed that the program is tailored to the characteristics. As a result, it is possible to reduce unnecessary man-hours such as extracting defects and redesigning them for the first time when the applications are combined and operated after the test of each process.
  • OS Operating System
  • trace points for collecting traces necessary for application analysis corresponding to each group are set in advance in the trace filter setting 134 for each group, and the necessary trace is set by using the trace filter setting 134. Select and collect information.
  • FIG. 8 is a diagram showing the contents of the trace filter setting 134.
  • trace points for collecting traces necessary for analyzing the application of each group are stored as a collected trace point filter in association with the group number defined in the process management table 131.
  • all (collection) is set in correspondence with group 1 (real time), and “execution start, Execution end, network transmission / reception, disk access "is set.
  • FIG. 9 shows a flowchart of the trace control mechanism 124 and trace collection.
  • the OS trace is collected at various trace points as shown in the trace collection flowchart.
  • the group number is specified from the information of the current process currently being executed when passing the trace collection point in S44.
  • the group determines whether the trace point information is necessary based on the collection flag. If there is no need, the collection flag is OFF, and the process ends without performing trace collection. If necessary, since the collection flag is ON, the trace is collected and the process ends.
  • the trace control mechanism turns off the collection flag so as not to collect a trace unnecessary for the application in the group.
  • the trace filter setting 134 is read.
  • the trace filter setting 134 describes trace points that need to be collected.
  • S42 and S43 collection flags are set for all trace points.
  • a collection flag is set in S43 based on the collection necessity definition for each group of trace points in the trace filter setting. Thereby, it is possible to collect only the necessary traces in each group, and it is possible to efficiently collect traces for a long time.
  • trace points for collecting traces necessary for application analysis corresponding to each group are set in advance in the trace filter setting 134 for each group. Then, when collecting traces, only necessary trace information is selected and collected using the trace filter setting 134. As a result, the OS trace information for failure analysis is not collected in the same way as all processes, but the traces collected for each group are limited to the necessary traces, enabling efficient collection and long-term trace collection. It becomes.
  • the group is managed according to the characteristics of various applications, and it is possible to design and test in units of groups, not in each process, to improve development efficiency, and during testing and operation.
  • a monitoring control system that enables long-term collection of analysis trace information necessary for the above was explained.
  • the group control mechanism that manages and executes various applications in groups manages the real-time control application, screen application, and planning application in groups.
  • the execution program in each group is controlled according to the characteristics.
  • the real-time control application operates with priority over other applications.
  • the screen application operates the disk access and the network access with priority over the planning application. As a result, the real-time property of the real-time control application and the response time of the screen system application are shortened.
  • the group registration mechanism for registering various application programs in each group. It also has a constraint check mechanism so that only programs that match the characteristics of the group can be registered. By confirming with this restriction check mechanism at the time of group registration, it is possible to pick out the above-mentioned defects that cause redesign at the timing of group registration.
  • the trace collection control mechanism selects the trace to be collected by various applications. This makes it possible to collect for a longer time than collecting all traces by collecting only traces that match the characteristics of various applications.
  • the control server manages the real-time control application, the screen application, and the planning application in a group, and can execute each with an appropriate priority, and checks the restrictions at the time of registration. As a result, it is possible to advance the defect extraction timing, and to efficiently collect trace information necessary for analysis during application execution.
  • this invention is not limited to an above-described Example, Various modifications are included.
  • the above-described embodiments have been described in detail for easy understanding of the present invention, and are not necessarily limited to those having all the configurations described.
  • Each of the above-described configurations, functions, processing units, processing means, and the like may be realized by hardware by designing a part or all of them with, for example, an integrated circuit.
  • Each of the above-described configurations, functions, and the like may be realized by software by interpreting and executing a program that realizes each function by the processor.
  • Information such as programs, tables, and files for realizing each function can be stored in a memory, a hard disk, a recording device such as an SSD (Solid State Drive), or a recording medium such as an IC card, an SD card, or a DVD.
  • SSD Solid State Drive
  • control server 11 CPU 12 memory 121 group control mechanism 122 group registration mechanism 123 constraint check mechanism 124 trace control mechanism 125 real-time control application 126 screen system application 127 planning system application 13 disk device 14 network I / F 15 Display device 2 Controller 3 External terminal 4 Planning server

Abstract

The present invention addresses the problem of managing the operation of a plurality of types of application programs, in accordance with the characteristics of the various applications, in a monitoring control system in which said application programs operate. A means for solving this problem according to the invention is characterized by: dividing the plurality of applications into a group of real-time control applications which perform control calculations on the basis of data collected from local facilities and which provide control output to a controller, a group of screen system applications which transmit the facility states of the local facilities to an external terminal and which receive control instructions from a user via the external terminal and process the received control instructions, and a group of planning system applications which receive a control plan from a planning server and process the received control plan; predetermining an operational priority for each of the applications within each group; and executing each of the plurality of applications in accordance with the predetermined priority.

Description

制御サーバ、及び、制御用アプリケーションのグループ化方法Control server and control application grouping method
 本発明は、制御サーバ、及び、制御用アプリケーションのグループ化方法に関する。 The present invention relates to a control server and a control application grouping method.
 コンピュータシステムにおいて、アプリケーションを複数グループに分けて、グループの優先度に応じて処理を実行するシステムがある。例えば、特許文献1には、アプリケーションサーバにおいて、複数種類のアプリケーションプログラムは優先度に応じて複数のグループに分類され、グループに指定された優先度で実行し、トランザクション処理時間に応じて、適切な負荷制御を行なうことが記載されている。
In a computer system, there is a system that divides applications into a plurality of groups and executes processing according to the priority of the group. For example, in Patent Document 1, in an application server, a plurality of types of application programs are classified into a plurality of groups according to priority, executed with priority specified for the group, and appropriate according to transaction processing time. It describes that load control is performed.
国際公開第2005/041038号公報International Publication No. 2005/041038
 産業プラントや電力システム等の監視制御システムを構成する制御サーバでは、複数種類の制御用アプリケーションが動作している。この制御用アプリケーションには例えば、プラントなどのセンサデータに基づきリアルタイム制御を行なうリアルタイム制御アプリケーションと、外部の端末装置においてシステム状況を常に監視し、必要に応じて人の操作によって制御するために必要なサーバに搭載される画面系アプリケーション、また、監視制御システムの動作を計画する計画系アプリケーション等がある。 このように制御サーバでは、リアルタイム制御アプリケーションと、画面系アプリケーション、計画系アプリケーション等が制御サーバ上で共に動作するが、それぞれの特性に合わせた動作処理をする必要がある。 In a control server that constitutes a supervisory control system such as an industrial plant or power system, a plurality of types of control applications are operating. This control application includes, for example, a real-time control application that performs real-time control based on sensor data of a plant and the like, and is necessary for constantly monitoring the system status in an external terminal device and controlling it by human operation as necessary. There are screen-related applications mounted on the server, planning-related applications that plan the operation of the monitoring control system, and the like. In this way, in the control server, the real-time control application, the screen system application, the planning system application, etc. operate together on the control server, but it is necessary to perform operation processing according to the respective characteristics.
 ここで、上記の特許文献1の技術では、複数種類のアプリケーションプログラムは優先度に応じて複数のグループに分類し、各アプリケーションプログラムが属するグループに指定された優先度で実行することが記載されている。 Here, in the technique of the above-mentioned patent document 1, it is described that a plurality of types of application programs are classified into a plurality of groups according to priority, and executed with the priority specified for the group to which each application program belongs. Yes.
 しかし、特許文献1の技術を制御サーバに適用した場合には、制御サーバ上で動作する複数種類の制御アプリケーションのうち、具体的な各アプリケーションの特性に合せて、何の動作を優先させるか定める必要があるが、この点は何ら考慮されていない。 However, when the technique of Patent Document 1 is applied to a control server, among the multiple types of control applications that operate on the control server, what operation is prioritized is determined according to the specific characteristics of each application. It is necessary, but this point is not taken into consideration at all.
 本発明の目的は、複数種類のアプリケーションプログラムが動作を行う監視制御システムにおいて、各種アプリケーションの特性に合わせて動作を管理することが可能な制御サーバ、又は、制御用アプリケーションのグループ化方法を提供することである。 An object of the present invention is to provide a control server or a control application grouping method capable of managing operations in accordance with characteristics of various applications in a monitoring control system in which a plurality of types of application programs operate. That is.
 上記目的を達成するための代表的な本発明の制御サーバ及び制御用アプリケーションのグループ化方法の一つは、現場設備からの収集したデータに基づいて制御演算を行い、コントローラに対して制御出力を行うリアルタイム制御アプリケーションと、外部端末に対して前記現場設備の設備状態を送信し、前記外部端末を介してユーザから制御指示を受信して処理する画面系アプリケーションと、計画サーバから制御計画を受信して処理する計画系アプリケーションと、に複数のアプリケーションをグループ分けし、各アプリケーションの動作の優先度をグループごとに予め定め、前記複数のアプリケーションそれぞれを前記予め定めた優先度に応じて実行することを特徴とする。
One of the representative control server and control application grouping methods of the present invention for achieving the above object is to perform control calculation based on data collected from the field equipment and to output control output to the controller. A real-time control application to be performed, a screen application for transmitting the equipment state of the field equipment to an external terminal, receiving a control instruction from a user via the external terminal and processing, and a control plan from a plan server Grouping a plurality of applications into the planned application to be processed in advance, predetermining the priority of operation of each application for each group, and executing each of the plurality of applications according to the predetermined priority Features.
 複数のアプリケーションプログラムが動作を行う監視制御システムにおいて、各種アプリケーションの特性に合わせて動作を管理することが可能となる。
In a supervisory control system in which a plurality of application programs operate, it becomes possible to manage the operation according to the characteristics of various applications.
本発明に係わるグループ化手法の構成図である。It is a block diagram of the grouping method concerning this invention. 図1におけるプロセス管理テーブルを示す図である。It is a figure which shows the process management table in FIG. 図1における優先度制御テーブルを示す図である。It is a figure which shows the priority control table in FIG. 図1におけるグループ制御機構のフローチャートである。It is a flowchart of the group control mechanism in FIG. 図1における制約管理テーブルを示す図である。It is a figure which shows the constraint management table in FIG. 図1におけるグループ登録機構のフローチャートである。It is a flowchart of the group registration mechanism in FIG. 図1における制約チェック機構のフローチャートである。It is a flowchart of the constraint check mechanism in FIG. 図1におけるトレースフィルタ設定を示す図である。It is a figure which shows the trace filter setting in FIG. 図1におけるトレース制御機構のフローチャートである。It is a flowchart of the trace control mechanism in FIG.
 以下に本発明を適用した実施例として、制御サーバ内の制御用アプリケーションにおいて、制御サーバ内に搭載されるアプリケーション処理の設計や試験に対して、グループで管理する手法を説明する。 Hereinafter, as an embodiment to which the present invention is applied, a method of managing in a group with respect to design and testing of application processing installed in a control server in a control application in the control server will be described.
 本実施例における制御サーバ上制御用アプリケーションのグループ化手法では、図1のような構成をとる。 In the present embodiment, the control server control application grouping method has the configuration shown in FIG.
 図1は、本発明を適用した実施例である監視制御システムのシステム構成を示す図である。本実施例の監視制御システムでは、制御サーバ1とコントローラ2、外部端末3、計画サーバ4が外部ネットワークで接続される。また、制御サーバ1とコントローラ2を接続する外部ネットワークと、制御サーバ1と外部端末3、及び、計画サーバ4とを接続する外部ネットワークとは、別のネットワークを用いる。 FIG. 1 is a diagram showing a system configuration of a monitoring control system which is an embodiment to which the present invention is applied. In the monitoring control system of the present embodiment, the control server 1, the controller 2, the external terminal 3, and the planning server 4 are connected via an external network. Further, the external network connecting the control server 1 and the controller 2 and the external network connecting the control server 1 and the external terminal 3 and the planning server 4 are different networks.
 制御サーバ1は、ハード構成としてCPU11、メモリ12、ディスク装置13、ネットワークI/F14、表示装置15、とを備えそれぞれがバスで接続されている。 The control server 1 includes a CPU 11, a memory 12, a disk device 13, a network I / F 14, and a display device 15 as hardware configurations, each of which is connected by a bus.
 CPU11は、ディスク装置13からプログラムをメモリ12に転送し、このプログラムを実行する。実行するプログラムとしては、オペレーティングシステム(以下「OS」と称す)や、OS上で動作するアプリケーションプログラムを例示できる。 The CPU 11 transfers the program from the disk device 13 to the memory 12 and executes this program. Examples of the program to be executed include an operating system (hereinafter referred to as “OS”) and an application program operating on the OS.
 メモリ12は、CPU11が動作するための一時的な記憶領域であり、例えば、ディスク装置13から転送されたOSやアプリケーションプログラムを格納する。 The memory 12 is a temporary storage area for the CPU 11 to operate, and stores, for example, an OS and application programs transferred from the disk device 13.
 ディスク装置13は、情報の記憶媒体であり、OS、アプリケーションプログラム、デバイスドライバ、及びCPU11を動作させるためのプログラムを保存し、プログラムの実行結果も保存する。ディスク装置13としては、ハードディスクドライブ(HDD)やソリッドステートドライブ(SSD)、及びフラッシュメモリを例示できる。また、ディスク装置13には、取り外しが容易な外部記憶媒体を用いてもよい。このような外部記憶媒体としては、例えば、フレキシブルディスク(FD)、CDやDVDなどの光ディスク、USBメモリやコンパクトフラッシュ(登録商標)などのフラッシュメモリを利用することができる。 The disk device 13 is an information storage medium, and stores an OS, an application program, a device driver, and a program for operating the CPU 11, and also stores the execution result of the program. Examples of the disk device 13 include a hard disk drive (HDD), a solid state drive (SSD), and a flash memory. The disk device 13 may be an external storage medium that can be easily removed. As such an external storage medium, for example, a flexible disk (FD), an optical disk such as a CD or a DVD, a flash memory such as a USB memory or a compact flash (registered trademark) can be used.
 ネットワークI/F14は、外部ネットワークとの通信機能を有する。ネットワークI/F14は、CPU11が実行するプログラムから通信要求を受け取り、外部ネットワークに対して通信する。ネットワークI/F14としては、IEEE802.3規格のMAC(Media Access Control)チップ、PHY(物理層)チップ、MACとPHYの複合チップ、FPGA、CPLD、ASIC、及びゲートアレイといったICを例示できる。なお、ネットワークI/F14は、CPU11や、コンピュータ内部の情報経路を制御するチップセットに含まれていてもよい。 The network I / F 14 has a communication function with an external network. The network I / F 14 receives a communication request from a program executed by the CPU 11 and communicates with an external network. Examples of the network I / F 14 may include ICs such as an IEEE 802.3 standard MAC (Media Access Control) chip, a PHY (physical layer) chip, a combined MAC and PHY chip, an FPGA, a CPLD, an ASIC, and a gate array. The network I / F 14 may be included in the CPU 11 or a chip set that controls an information path inside the computer.
 表示画面15は、制御サーバ1上の動作や、現場設備の監視データ等を表示する装置であり、CRT(Cathode Ray Tube)やLCD(Liquid crystal display)を例示できる。 The display screen 15 is a device that displays operations on the control server 1, monitoring data of field facilities, and the like, and can be exemplified by a CRT (Cathode Ray Tube) or an LCD (Liquid crystal display).
 また、バスとしては、PCIバス、ISAバス、PCI Expressバス、システムバス、及びメモリバスを例示できる。 Further, examples of the bus include a PCI bus, an ISA bus, a PCI Express bus, a system bus, and a memory bus.
 次に制御サーバ1が有する機能について説明する。図1では、CPU11が実行する各種プログラムを機能ブロック図としてメモリ12上へ記載し、各種テーブルやフィルタをディスク装置13上へ記載している。 Next, functions of the control server 1 will be described. In FIG. 1, various programs executed by the CPU 11 are described as a functional block diagram on the memory 12, and various tables and filters are described on the disk device 13.
 CPU11が実行するアプリケーションとしては、リアルタイム制御アプリケーション125と、画面系アプリケーション126と、計画系アプリケーション127と、が少なくとも含まれ、それぞれリアルタイムグループ、画面系グループ、計画系グループに分類分けされている。各アプリケーションの特性については後述する。 The applications executed by the CPU 11 include at least a real time control application 125, a screen system application 126, and a planning system application 127, which are classified into a real time group, a screen system group, and a planning system group, respectively. The characteristics of each application will be described later.
 また、CPU11が実行する他のプログラムとして、グループ制御機構121と、グループ登録機構122と、制約チェック機構123と、トレース制御機構124と、を有する。また、ディスク装置132には、プロセス管理テーブル131と、優先度制御テーブル132と、制約管理テーブル133と、トレースフィルタ設定134と、が記憶されている。それぞれの機構、テーブルの詳細は、後述する。 Further, as other programs executed by the CPU 11, a group control mechanism 121, a group registration mechanism 122, a constraint check mechanism 123, and a trace control mechanism 124 are provided. The disk device 132 also stores a process management table 131, a priority control table 132, a constraint management table 133, and a trace filter setting 134. Details of each mechanism and table will be described later.
 コントローラ2とは、監視制御システムで現場の設備に設置されるセンサデータなどを扱う装置である。コントローラ2からのデータを制御サーバ1にてデータ収集し、計画に従って制御判断を行い、必要に応じて制御出力する。制御サーバ上でこれを処理するのが、リアルタイム制御アプリケーション125である。 Controller 2 is a device that handles sensor data and the like installed in on-site equipment by a monitoring control system. Data from the controller 2 is collected by the control server 1, control judgment is performed according to the plan, and control output is performed as necessary. It is the real time control application 125 that handles this on the control server.
 外部端末3は、監視制御システムにて、運用者が現場の設備状態を参照し、必要に応じて制御指示を行なう端末で、制御サーバ上でこれを処理するのが、画面系アプリケーション126である。 The external terminal 3 is a terminal in which the operator refers to the on-site equipment state in the supervisory control system and gives a control instruction as necessary. The screen system application 126 processes this on the control server. .
 計画サーバ4は、監視制御システムの制御計画を行なうサーバであり、制御サーバをこの制御計画に基づき、センサデータなどの情報を処理する。制御サーバでこの処理をするのが、計画系アプリケーション127である。 The plan server 4 is a server that performs a control plan of the monitoring control system, and the control server processes information such as sensor data based on the control plan. The plan application 127 performs this processing in the control server.
 また、制御サーバ1では、これらのアプリケーション(リアルタイム制御アプリケーション125、画面系アプリケーション126、計画系アプリケーション127)の性能解析や障害解析をするためのOSのトレース情報を収集する。 本実施例では、グループ制御機構121が、各種アプリケーションをリアルタイムグループと画面系グループ、計画系グループでグループ管理し、各種アプリケーションの特性に合わせた動作をさせ、制御サーバ1として最適な動作をさせる。この特性は、優先度制御テーブル132にあらかじめ設定しておき、グループ制御機構121はこれを利用して動作させる。 In addition, the control server 1 collects OS trace information for performance analysis and failure analysis of these applications (the real-time control application 125, the screen system application 126, and the planning system application 127). In this embodiment, the group control mechanism 121 performs group management of various applications using a real-time group, a screen system group, and a planning system group, and operates according to the characteristics of the various applications so that the control server 1 operates optimally. This characteristic is set in the priority control table 132 in advance, and the group control mechanism 121 operates using this.
 また、グループを構成するプログラムはプロセス管理テーブル131で管理され、グループ制御機構121は、プロセスが実行する際に、この情報に基づき、グループを決定し、優先度制御テーブル132の情報に基づき、プロセスを動作させることで、特性に合わせた動作を可能とする。 グループ登録機構122は、これらのグループにプログラムを登録する機構であり、制約チェック機構123は、グループに登録可能なプログラムであるかを確認する機構である。 In addition, the program constituting the group is managed in the process management table 131, and the group control mechanism 121 determines the group based on this information when the process is executed, and the process based on the information in the priority control table 132. By operating, it is possible to operate according to the characteristics. The group registration mechanism 122 is a mechanism for registering programs in these groups, and the constraint check mechanism 123 is a mechanism for confirming whether a program can be registered in a group.
 グループ登録機構122は、登録するグループ番号、プログラム名、ソースコードを受付け、まず、登録可能なソースコードであるかを、制約チェック機構123を呼び出して確認する。制約チェックにてチェック成功であれば、プロセス管理テーブル131に登録を行なう。 The group registration mechanism 122 receives the group number to be registered, the program name, and the source code, and first calls the constraint check mechanism 123 to check whether the source code can be registered. If the check is successful in the constraint check, registration in the process management table 131 is performed.
 制約チェック機構123では、ソースコードにグループ毎に定められた制約が守られているかを確認する。この制約は、制約管理テーブル133にて保持され、制約チェック機構123は、このテーブルの内容を利用して、ソースコードを確認する。これにより、制約が守られたプログラムのみがグループ内で実行できるようになり、登録時点で正しく設計されたプログラムであるかどうかが判定できる。 The constraint check mechanism 123 confirms whether or not the constraints defined for each group are observed in the source code. This constraint is held in the constraint management table 133, and the constraint check mechanism 123 confirms the source code using the contents of this table. As a result, only the program in which the restrictions are observed can be executed in the group, and it can be determined whether or not the program is correctly designed at the time of registration.
 トレース制御機構124は、各種アプリケーションが必要とするOSのトレースを収集するように制御する機構である。各種アプリケーションはグループで管理されているため、各グループで必要となるトレースポイントをトレースフィルタ設定で管理しておき、この情報に基づき、OSのトレースを制御することにより、トレースを最小限で効率的に収集することができ、有限な容量の収集エリアに対して、長時間のトレースを収集することができる。

<グループ制御>
 はじめに、本実施例の制御サーバ1が行うグループ制御について説明する。
The trace control mechanism 124 is a mechanism for performing control so as to collect OS traces required by various applications. Since various applications are managed in groups, trace points required in each group are managed in the trace filter settings, and tracing is controlled efficiently based on this information by controlling the OS trace. A long-time trace can be collected for a collection area of a finite capacity.

<Group control>
First, group control performed by the control server 1 of the present embodiment will be described.
 前述のように、制御サーバ1は、リアルタイム制御アプリケーション125、画面系アプリケーション126、計画系アプリケーション127等の複数のアプリケーションの動作を行う。これらのアプリケーションを設計していくには、全アプリケーションの全体設計に基づき、各種アプリケーションの特性に合わせて、プロセス毎にプロセッサ実行優先度やディスクアクセス処理優先度、ネットワーク処理優先度を定める必要がある。 As described above, the control server 1 operates a plurality of applications such as the real-time control application 125, the screen system application 126, and the planning system application 127. In order to design these applications, it is necessary to set processor execution priority, disk access processing priority, and network processing priority for each process according to the characteristics of various applications based on the overall design of all applications. .
 図2は、プロセス管理テーブル131の内容を示す図でる。プロセス管理テーブル131には、グループ番号と、グループの名称であるグループ名と、具体的なアプリケーションの名称であるプログラム名と、が対応付けて記憶される。本実施例では、グループ1のリアルタイムに属するプログラムとして制御プログラムAが、グループ2の画面系に属するプログラムとして画面プログラムAが、グループ3の計画系に属するプログラムとして計画プログラムAが、それぞれ対応付けて記憶されている。 FIG. 2 shows the contents of the process management table 131. The process management table 131 stores a group number, a group name that is a name of the group, and a program name that is a specific application name in association with each other. In this embodiment, the control program A is associated with the group 1 real-time program, the screen program A is associated with the group 2 screen system, and the planning program A is associated with the group 3 planning system. It is remembered.
 図3は、優先度制御テーブルの内容を示す図である。優先度制御テーブル132には、プロセス管理テーブル131で定められたグループ番号に対応させて、プログラムの実行優先度と、ディスクアクセス優先度と、ネットワーク送受信優先度と、が記憶されている。これらの優先度は各アプリケーションのグループの特性に応じて設定される。 FIG. 3 shows the contents of the priority control table. The priority control table 132 stores program execution priority, disk access priority, and network transmission / reception priority in association with the group number defined in the process management table 131. These priorities are set according to the characteristics of each application group.
 リアルタイム制御アプリケーションは、外部より送信されてくるセンサデータなどの時系列なデータを処理し、そのデータに基づき制御判断をして、システムを制御するという、リアルタイム性の高いアプリケーションである。そのため、画面系アプリケーションや計画系アプリケーションよりも優先して動作する必要がある。また、画面系アプリケーションは、外部の端末にてシステム運用者などの操作要求によって処理するアプリケーションである。そのため、送受信のデータ量は比較的に小容量であるが、応答時間を求められるアプリケーションである。一方、計画系アプリケーションは、監視制御システム全体の計画を示すデータを処理するため、送受信のデータ量が比較的、大容量であり、処理時間は高速であることが望ましいが、他のアプリケーションと比較すると、リアルタイム性は求められない。 Real-time control application is a highly real-time application that processes time-series data such as sensor data transmitted from the outside, makes control decisions based on the data, and controls the system. For this reason, it is necessary to operate in preference to the screen application or the planning application. The screen application is an application that is processed by an operation request from a system operator or the like at an external terminal. Therefore, although the amount of data to be transmitted / received is relatively small, the application requires a response time. On the other hand, because the planning application processes data indicating the overall plan of the monitoring and control system, it is desirable that the amount of data to be transmitted and received is relatively large and the processing time is fast, but compared with other applications. Then, real-time performance is not required.
 従って本実施例では、グループ1(リアルタイム)に対応させて、実行優先度「高」、ディスクアクセス優先度「低」、ネットワーク優先度「高」と設定され、グループ2(画面系)に対応させて、実行優先度「中」、ディスクアクセス優先度「高」、ネットワーク優先度「中」と設定され、グループ3(計画系)に対応させて、実行優先度「低」、ディスクアクセス優先度「高」、ネットワーク優先度「低」と設定されている。 図4にグループ制御機構121のフローチャートを示す。グループ制御機構121は、S11にてプロセス管理テーブル131を読み込む。S12にて優先度制御テーブル132を読み込む。S13にてプログラム実行開始待ちを行なう。アプリケーションが実行を開始すると、この待ちが解除される。その後、S14にて、実行を開始したアプリケーションのプログラム名を受け取り、その名称からプロセス管理テーブル131を検索して、グループ番号を特定する。S15では、特定されたグループ番号に対して、優先度制御テーブル132を参照し、設定されている優先度をOSに対して設定する。これにより、グループ内のアプリケーションのプロセスが、設定された優先度にしたがって、動作することができる。 Therefore, in this embodiment, the execution priority “high”, the disk access priority “low”, and the network priority “high” are set to correspond to the group 1 (real time) and correspond to the group 2 (screen system). The execution priority “medium”, the disk access priority “high”, and the network priority “medium” are set, and the execution priority “low”, the disk access priority “ “High” and network priority “Low” are set. FIG. 4 shows a flowchart of the group control mechanism 121. The group control mechanism 121 reads the process management table 131 in S11. In S12, the priority control table 132 is read. In S13, the program execution start is waited. When the application starts running, this wait is released. Thereafter, in S14, the program name of the application that has started execution is received, the process management table 131 is searched from the name, and the group number is specified. In S15, the priority control table 132 is referred to the specified group number, and the set priority is set for the OS. Thereby, the process of the application in a group can operate | move according to the set priority.
 また、本実施例では、複数のアプリケーションをその特性に応じてグループ分けし、グループごとに各種優先度を定めている。そのため、各アプリケーションの設計に際し、個別に優先度を設定する必要がなく、容易にアプリケーション設計が可能となる。
<グループ登録>
 次に、本実施例の制御サーバ1において、アプリケーションを新たにグループ登録する際の処理について説明する。
In this embodiment, a plurality of applications are grouped according to their characteristics, and various priorities are defined for each group. Therefore, when designing each application, it is not necessary to set priorities individually, and application design can be easily performed.
<Group registration>
Next, a process when a new application is registered as a group in the control server 1 of this embodiment will be described.
 前述のように、本実施例では、複数のアプリケーションを、リアルタイムグループ、画面系グループ、計画系グループにグループ分けして、それぞれの優先度に従って動作を行う。 As described above, in this embodiment, a plurality of applications are grouped into a real-time group, a screen system group, and a planning system group, and operations are performed according to their priorities.
 ここで、例えばリアルタイム制御アプリケーション125は、低速なディスクアクセス処理を行なうとリアルタイム性を確保できないため、ディスクアクセスを行なわないように設計する必要があるが、これもプロセス毎に設計しなければいけない。そのため、アプリケーション設計プロセスにおいて、各プロセスの試験以降に、各アプリケーションを組合せて動作させた際に、優先度やディスクアクセス処理の不具合を摘出する場合が多い。これは、設計プロセスにおいて、再度設計をやり直す必要があり、工数を増大させる。そのため、各プロセスの試験実施タイミングでは、特性に合わせたプログラムとなっていることを確認できる必要がある。 Here, for example, the real-time control application 125 cannot be secured when performing low-speed disk access processing. Therefore, it is necessary to design the real-time control application 125 so that disk access is not performed, but this must also be designed for each process. For this reason, in the application design process, when the applications are combined and operated after the test of each process, defects in priority and disk access processing are often extracted. This necessitates re-designing in the design process, which increases man-hours. Therefore, it is necessary to be able to confirm that the program is tailored to the characteristics at the test execution timing of each process.
 そこで本実施例では、各グループに求められる条件を予め制約管理テーブル133に設定しておき、アプリケーションを新たにグループ登録する際に、制約管理テーブル133をチェックすることで、特性に合わせたプログラムとなっていることを確認する。 Therefore, in this embodiment, the conditions required for each group are set in the constraint management table 133 in advance, and when the application is newly registered in the group, the constraint management table 133 is checked, so that Make sure that
 図5は、制約管理テーブル133の内容を示す図である。制約管理テーブル133には、プロセス管理テーブル131で定められたグループ番号に対応させて、各グループに求められる条件として、利用不可API(Application Programming Interface)と、ディスクアクセス容量上限と、ネットワーク送受信容量上限と、が記憶されている。 FIG. 5 is a diagram showing the contents of the constraint management table 133. In the constraint management table 133, as conditions required for each group in association with the group number determined in the process management table 131, an unusable API (Application Programming Interface), a disk access capacity upper limit, and a network transmission / reception capacity upper limit are provided. And are stored.
 本実施例では、グループ1(リアルタイム)に対応させて、利用不可API「read,write等」、ディスクアクセス容量上限「なし」、ネットワーク送受信容量条件「4KB」と設定され、グループ2(画面系)に対応させて、利用不可API「なし」、ディスクアクセス容量上限「1MB」、ネットワーク送受信容量条件「1MB」と設定され、グループ3(計画系)に対応させて、利用不可API「なし」、ディスクアクセス容量上限「なし」、ネットワーク送受信容量条件「なし」と設定されている。 In this embodiment, the unusable API “read, write, etc.”, the disk access capacity upper limit “none”, and the network transmission / reception capacity condition “4 KB” are set corresponding to the group 1 (real time), and the group 2 (screen system) Corresponding to, the unusable API “none”, the disk access capacity upper limit “1 MB”, the network transmission / reception capacity condition “1 MB” are set, and the unusable API “none”, disk corresponding to group 3 (planned) The access capacity upper limit “none” and the network transmission / reception capacity condition “none” are set.
 図6にグループ登録機構122のフローチャートを示す。グループ登録機構122は、S21にて本機構に与えられた登録グループ番号を取得し、S22にて本機構に与えられた登録プログラム名を取得し、S23にて本機構に与えられた登録ソースを取得する。次に、S24にてグループ番号とソースコードを指定し、制約チェック機構123を呼び出す。S25にて制約チェック機構123の結果を判定し、制約を満たしていないことを示す失敗である場合は、失敗メッセージを出力して、グループには登録しない。制約を満たしていることを示す成功である場合は、S27にてプロセス管理テーブルに登録する。また、S28にて成功メッセージを出力する。これにより、制約を満たすプログラムのみがグループに登録されることとなる。 図7に制約チェック機構123のフローチャートを示す。制約チェック機構123は、S31にてグループ登録機構122から渡されるグループ番号とソースコードを取得する。S32にてグループ毎に満たすべき制約が設定された制約管理テーブル133を読込む。S33にて制約管理テーブル133に指定されたグループ番号に対する利用不可APIがソースコード上で利用されていないかを検索する。S34にて検索結果を判定する。利用されていた場合は、チェック失敗となる。次に、S35にてディスクアクセスを行なうディスクAPIがソースコードで利用されているかを検索する。利用されていた場合、アクセス容量が制約管理テーブルに指定されたディスクアクセス容量上限を超過していないかをS36にて判定する。上限を超過していた場合は、チェック失敗となる。次に、S37にてネットワーク送受信を行なうネットワークAPIがソースコードで利用されているかを検索する。利用されていた場合、送受信容量が制約管理テーブル133に指定されたネットワーク送受信容量上限を超過していないかをS38にて判定する。上限を超過していたい場合は、チェック失敗となる。全ての制約を満たしていた場合は、チェック成功となる。 FIG. 6 shows a flowchart of the group registration mechanism 122. The group registration mechanism 122 acquires the registration group number given to the mechanism in S21, acquires the registration program name given to the mechanism in S22, and sets the registration source given to the mechanism in S23. get. Next, in S24, a group number and a source code are specified, and the constraint check mechanism 123 is called. The result of the constraint check mechanism 123 is determined in S25, and if it is a failure indicating that the constraint is not satisfied, a failure message is output and not registered in the group. If it is a success indicating that the constraint is satisfied, it is registered in the process management table in S27. In S28, a success message is output. As a result, only programs that satisfy the restrictions are registered in the group. FIG. 7 shows a flowchart of the constraint check mechanism 123. The constraint checking mechanism 123 acquires the group number and source code passed from the group registration mechanism 122 in S31. In S32, the constraint management table 133 in which constraints to be satisfied for each group are set is read. In S33, it is searched whether or not the unusable API for the group number specified in the constraint management table 133 is used on the source code. The search result is determined in S34. If it is used, the check fails. Next, in S35, it is searched whether the disk API for accessing the disk is used in the source code. If it has been used, it is determined in S36 whether the access capacity exceeds the disk access capacity upper limit specified in the constraint management table. If the upper limit is exceeded, the check fails. Next, in S37, it is searched whether the network API that performs network transmission / reception is used in the source code. If it is used, it is determined in S38 whether the transmission / reception capacity exceeds the network transmission / reception capacity upper limit specified in the constraint management table 133. If the upper limit is exceeded, the check fails. If all constraints are satisfied, the check is successful.
 このように、本実施例では、各グループのアプリケーションに求められる条件を予め制約管理テーブル133に設定しておき、アプリケーションを新たにグループ登録する際に、この制約管理テーブル133を用いることで、グループの特性に合わせたプログラムとなっていることを確認することができる。これによって、各プロセスの試験以降に、各アプリケーションを組合せて動作させた際に、初めて不具合を摘出して再設計するというような不要な工数を削減することができる。

<トレース収集>
 本実施例のような産業プラントや電力システム等の監視制御システムの制御サーバでは、各種アプリケーションの性能解析や障害解析のために、OS(Operating System)の動作トレースを収集する必要がある。ここで、各種アプリケーションでは、特性が異なるので、解析に必要となるデータが異なるが、OSはその特性が不明のため、全てのトレース情報を取得する必要がある。しかし、トレースに利用するメモリなどの記憶装置は有限のリソースであるため、収集できる時間が限られてしまう。
As described above, in this embodiment, the conditions required for the application of each group are set in the constraint management table 133 in advance, and this constraint management table 133 is used when newly registering an application as a group. It can be confirmed that the program is tailored to the characteristics. As a result, it is possible to reduce unnecessary man-hours such as extracting defects and redesigning them for the first time when the applications are combined and operated after the test of each process.

<Trace collection>
In a control server of a supervisory control system such as an industrial plant or an electric power system as in this embodiment, it is necessary to collect an OS (Operating System) operation trace for performance analysis and failure analysis of various applications. Here, since various applications have different characteristics, data required for analysis is different. However, since the characteristics of the OS are unknown, it is necessary to acquire all trace information. However, since a storage device such as a memory used for tracing is a finite resource, the time that can be collected is limited.
 そこで本実施例では、各グループに対応させてアプリケーションの解析に必要なトレースを収集するためのトレースポイントをグループごとに予めトレースフィルタ設定134に定めて、本トレースフィルタ設定134を用いて必要なトレース情報を選択して収集する。 Therefore, in the present embodiment, trace points for collecting traces necessary for application analysis corresponding to each group are set in advance in the trace filter setting 134 for each group, and the necessary trace is set by using the trace filter setting 134. Select and collect information.
 図8は、トレースフィルタ設定134の内容を示す図である。トレースフィルタ設定134は、プロセス管理テーブル131で定められたグループ番号に対応させて、各グループのアプリケーションの解析に必要なトレースを収集するためのトレースポイントが収集トレースポイントフィルタとして記憶されている。 FIG. 8 is a diagram showing the contents of the trace filter setting 134. In the trace filter setting 134, trace points for collecting traces necessary for analyzing the application of each group are stored as a collected trace point filter in association with the group number defined in the process management table 131.
 本実施例では、グループ1(リアルタイム)に対応させて、「全て(全て集集集)」が設定され、グループ2(画面系)及びグループ3(計画系)に対応させて、「実行開始,実行終了,ネットワーク送受信,ディスクアクセス」が設定されている。 In the present embodiment, “all (collection)” is set in correspondence with group 1 (real time), and “execution start, Execution end, network transmission / reception, disk access "is set.
 図9にトレース制御機構124とトレース収集のフローチャートを示す。OSのトレースは各種トレースポイントにて、トレース収集のフローチャートのように処理してトレースを収集する。トレース収集は、S44にてトレースを収集するポイントを通過する時に現在実行中のカレントプロセスの情報から、グループ番号を特定する。S45にて当該グループでは、このトレースポイントの情報が必要かどうかを収集フラグにより判定する。必要がない場合は、収集フラグがOFFされており、トレース収集を行なわずに終了する。必要な場合は、収集フラグがONされているので、トレースを収集して終了する。トレース制御機構は、グループ内アプリケーションにとって不必要なトレースは収集しないように収集フラグをOFFする。S41にてトレースフィルタ設定134を読込む。トレースフィルタ設定134には、収集が必要なトレースポイントが記載されている。なお、全てのトレースを収集する場合には、”全て”が指定されている。S42,S43にて全てのトレースポイントに対して収集フラグを設定する。トレースフィルタ設定での各トレースポイントのグループ毎の収集要否定義に基づき、S43にて収集フラグを設定する。これにより、各グループで必要なトレースのみを収集することができ、効率的に長時間のトレース収集が可能となる。 FIG. 9 shows a flowchart of the trace control mechanism 124 and trace collection. The OS trace is collected at various trace points as shown in the trace collection flowchart. In the trace collection, the group number is specified from the information of the current process currently being executed when passing the trace collection point in S44. In S45, the group determines whether the trace point information is necessary based on the collection flag. If there is no need, the collection flag is OFF, and the process ends without performing trace collection. If necessary, since the collection flag is ON, the trace is collected and the process ends. The trace control mechanism turns off the collection flag so as not to collect a trace unnecessary for the application in the group. In S41, the trace filter setting 134 is read. The trace filter setting 134 describes trace points that need to be collected. If all traces are collected, “all” is specified. In S42 and S43, collection flags are set for all trace points. A collection flag is set in S43 based on the collection necessity definition for each group of trace points in the trace filter setting. Thereby, it is possible to collect only the necessary traces in each group, and it is possible to efficiently collect traces for a long time.
 このように本実施例では、各グループに対応させてアプリケーションの解析に必要なトレースを収集するためのトレースポイントをグループごとに予めトレースフィルタ設定134に定める。そして、トレースの収集の際に、トレースフィルタ設定134を用いて必要なトレース情報のみを選択して収集する。これによって、障害解析用のOSトレース情報を全プロセス同様に収集するのではなく、グループ毎に収集するトレースを必要なトレースに限定することで、効率的に収集して長時間のトレース収集が可能となる。 As described above, in this embodiment, trace points for collecting traces necessary for application analysis corresponding to each group are set in advance in the trace filter setting 134 for each group. Then, when collecting traces, only necessary trace information is selected and collected using the trace filter setting 134. As a result, the OS trace information for failure analysis is not collected in the same way as all processes, but the traces collected for each group are limited to the necessary traces, enabling efficient collection and long-term trace collection. It becomes.
 以上のとおり本実施例では、各種アプリケーションの特性に合わせて、グループの管理を行ない、プロセス毎ではなく、グループの単位で設計、試験を可能として、開発効率を向上させ、また、試験や運用中に必要な解析用トレース情報の長時間収集を可能とする監視制御システムを説明した。 As described above, in this example, the group is managed according to the characteristics of various applications, and it is possible to design and test in units of groups, not in each process, to improve development efficiency, and during testing and operation. A monitoring control system that enables long-term collection of analysis trace information necessary for the above was explained.
 具体的には、各種アプリケーションをグループ管理して実行させるグループ制御機構にて、リアルタイム制御アプリケーションと画面系アプリケーション、計画系アプリケーションをグループに分けて管理する。各グループ内の実行プログラムには、特性に合わせた制御を行なう。リアルタイム制御アプリケーションは、他のアプリケーションに対して、優先的に動作させる。また、画面系アプリケーションは、計画系アプリケーションよりもディスクアクセスおよびネットワークアクセスを優先的に動作させる。これにより、リアルタイム制御アプリケーションのリアルタイム性、画面系アプリケーションの応答時間の短時間化を実現する。 More specifically, the group control mechanism that manages and executes various applications in groups manages the real-time control application, screen application, and planning application in groups. The execution program in each group is controlled according to the characteristics. The real-time control application operates with priority over other applications. Further, the screen application operates the disk access and the network access with priority over the planning application. As a result, the real-time property of the real-time control application and the response time of the screen system application are shortened.
 また、各種アプリケーションのプログラムを各グループに登録するグループ登録機構を有する。また、グループの特性に合わせたプログラムしか登録できないように、制約チェック機構を有する。グループ登録時に、この制約チェック機構にて確認することで、前述の再設計になる不具合を、グループ登録のタイミングで摘出することができる。 Also, it has a group registration mechanism for registering various application programs in each group. It also has a constraint check mechanism so that only programs that match the characteristics of the group can be registered. By confirming with this restriction check mechanism at the time of group registration, it is possible to pick out the above-mentioned defects that cause redesign at the timing of group registration.
 また、トレース収集制御機構により、各種アプリケーションにて収集するトレースを選択する。これにより、各種アプリケーションの特性に合わせたトレースに限定して収集することで、全トレースを収集するよりも長時間の収集が可能となる。 In addition, the trace collection control mechanism selects the trace to be collected by various applications. This makes it possible to collect for a longer time than collecting all traces by collecting only traces that match the characteristics of various applications.
 このように本実施例によれば、制御サーバにて、リアルタイム制御アプリケーション、画面系アプリケーション、計画系アプリケーションをグループで管理し、それぞれを適切な優先度で実行ができ、登録の際に制約をチェックして不具合摘出タイミングを早めることを可能とする、また、アプリケーション実行中に、解析に必要なトレース情報の効率的な収集を可能とする、という効果が得られる。 As described above, according to the present embodiment, the control server manages the real-time control application, the screen application, and the planning application in a group, and can execute each with an appropriate priority, and checks the restrictions at the time of registration. As a result, it is possible to advance the defect extraction timing, and to efficiently collect trace information necessary for analysis during application execution.
 なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、または、ICカード、SDカード、DVD等の記録媒体に置くことができる。
In addition, this invention is not limited to an above-described Example, Various modifications are included. For example, the above-described embodiments have been described in detail for easy understanding of the present invention, and are not necessarily limited to those having all the configurations described. Each of the above-described configurations, functions, processing units, processing means, and the like may be realized by hardware by designing a part or all of them with, for example, an integrated circuit. Each of the above-described configurations, functions, and the like may be realized by software by interpreting and executing a program that realizes each function by the processor. Information such as programs, tables, and files for realizing each function can be stored in a memory, a hard disk, a recording device such as an SSD (Solid State Drive), or a recording medium such as an IC card, an SD card, or a DVD.
1   制御サーバ
11   CPU
12   メモリ
121  グループ制御機構
122  グループ登録機構
123  制約チェック機構
124  トレース制御機構
125  リアルタイム制御アプリケーション
126  画面系アプリケーション
127  計画系アプリケーション
13   ディスク装置
14   ネットワークI/F
15   表示装置
2   コントローラ
3   外部端末
4   計画サーバ
1 control server 11 CPU
12 memory 121 group control mechanism 122 group registration mechanism 123 constraint check mechanism 124 trace control mechanism 125 real-time control application 126 screen system application 127 planning system application 13 disk device 14 network I / F
15 Display device 2 Controller 3 External terminal 4 Planning server

Claims (8)

  1.  現場設備からの収集したデータに基づいて制御演算を行い、コントローラに対して制御出力を行うリアルタイム制御アプリケーションと、外部端末に対して前記現場設備の設備状態を送信し、前記外部端末を介してユーザから制御指示を受信して処理する画面系アプリケーションと、計画サーバから制御計画を受信して処理する計画系アプリケーションと、に複数のアプリケーションがグループ分けされ、各アプリケーションの動作の優先度をグループごとに定めた優先度制御テーブルを記憶する記憶部と、
     前記複数のアプリケーションを前記優先度制御テーブルに定めた優先度に応じて実行する演算処理部と、を備える制御サーバ。
    Real-time control application that performs control calculation based on data collected from the field equipment and outputs control to the controller, and transmits the equipment state of the field equipment to the external terminal, and the user via the external terminal Multiple applications are grouped into screen applications that receive and process control instructions from and planning applications that receive and process control plans from the plan server. A storage unit for storing a defined priority control table;
    A control server comprising: an arithmetic processing unit that executes the plurality of applications in accordance with the priority set in the priority control table.
  2.  請求項1において、
     前記優先度制御テーブルには、前記アプリケーションの実行優先度と、ディスクアクセス優先度と、ネットワーク送受信優先度と、が前記グループごとに定められることを特徴とする制御サーバ。
    In claim 1,
    The control server according to claim 1, wherein an execution priority of the application, a disk access priority, and a network transmission / reception priority are determined for each group in the priority control table.
  3.  請求項2において、
     前記優先度制御テーブルには、
     前記リアルタイム制御アプリケーションの実行優先度及びネットワーク送受信優先度が、前記画面系アプリケーション及び前記計画系アプリケーションよりも高く設定され、
     画面系アプリケーションの前記ディスクアクセス優先度が、前記リアルタイム制御アプリケーション及び前記計画系アプリケーションよりも高く設定されることを特徴とする制御サーバ。
    In claim 2,
    In the priority control table,
    The execution priority and network transmission / reception priority of the real-time control application are set higher than the screen application and the planning application,
    The control server, wherein the disk access priority of the screen application is set higher than that of the real-time control application and the planning application.
  4.  請求項1において、さらに、
     前記記憶部には、各グループに属するアプリケーションに求められる制約内容を定めた制約管理テーブルが記憶され、
     前記演算処理部は、新たに前記グループに登録するアプリケーションが、登録先のグループに必要な制約内容を満たすアプリケーションであるか前記制約管理テーブルを用いてチェックすることを特徴とする制御サーバ。
    The claim 1, further comprising:
    The storage unit stores a constraint management table that defines the constraint content required for applications belonging to each group,
    The control processing unit checks whether or not an application newly registered in the group is an application satisfying a restriction content necessary for a registration destination group by using the restriction management table.
  5.  請求項4において、
     前記制約管理テーブルには、
     前記リアルタイム制御アプリケーションに求められる制約内容として、ディスクアクセスを行わないこと、及び、ディスクアクセスインタフェースを利用しないことが定められ、
     画面系アプリケーションの制約内容として、所定のディスクアクセス容量を超えないことが定められることを特徴とする制約サーバ。
    In claim 4,
    In the constraint management table,
    As the restriction content required for the real-time control application, it is determined not to perform disk access and not to use a disk access interface,
    A restriction server characterized in that it is determined that a predetermined disk access capacity is not exceeded as a restriction content of a screen system application.
  6.  請求項1において、さらに、
     前記記憶部には、各アプリケーションの解析に必要なトレース情報を収集するためのトレースポイントを前記グループごとに定めたトレースフィルタ設定テーブルが記憶され、
     前記演算処理部は、前記トレースフィルタ設定テーブルを用いて、前記複数のアプリケーションそれぞれの解析に必要なトレース情報を選択して収集することを特徴とする制御サーバ。
    The claim 1, further comprising:
    The storage unit stores a trace filter setting table in which trace points for collecting trace information necessary for analysis of each application are defined for each group,
    The control server, wherein the arithmetic processing unit selects and collects trace information necessary for analyzing each of the plurality of applications using the trace filter setting table.
  7.  請求項6において、
     前記トレースフィルタ設定テーブルには、前記画面系アプリケーション及び前記計画系アプリケーションの解析に必要なトレース情報として、アプリケーションの実行開始、アプリケーションの実行終了、ネットワーク送受信、及び、ディスクアクセス、に関するトレース情報が定められることを特徴とする制御サーバ。
    In claim 6,
    In the trace filter setting table, trace information relating to application execution start, application execution end, network transmission / reception, and disk access is defined as trace information necessary for analysis of the screen application and the planning application. A control server characterized by that.
  8.  現場設備からの収集したデータに基づいて制御演算を行い、コントローラに対して制御出力を行うリアルタイム制御アプリケーションと、外部端末に対して前記現場設備の設備状態を送信し、前記外部端末を介してユーザから制御指示を受信して処理する画面系アプリケーションと、計画サーバから制御計画を受信して処理する計画系アプリケーションと、に複数のアプリケーションをグループ分けし、各アプリケーションの動作の優先度をグループごとに予め定め、
     前記複数のアプリケーションそれぞれを前記予め定めた優先度に応じて実行する制御用アプリケーションのグループ化方法。
    Real-time control application that performs control calculation based on data collected from the field equipment and outputs control to the controller, and transmits the equipment state of the field equipment to the external terminal, and the user via the external terminal Multiple applications are grouped into a screen application that receives and processes control instructions from and a planning application that receives and processes control plans from the plan server, and the priority of operation of each application is grouped. Predetermined,
    A control application grouping method for executing each of the plurality of applications according to the predetermined priority.
PCT/JP2014/081488 2014-11-28 2014-11-28 Control server and grouping method for control applications WO2016084212A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/JP2014/081488 WO2016084212A1 (en) 2014-11-28 2014-11-28 Control server and grouping method for control applications
JP2016561176A JPWO2016084212A1 (en) 2014-11-28 2014-11-28 Control server and control application grouping method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2014/081488 WO2016084212A1 (en) 2014-11-28 2014-11-28 Control server and grouping method for control applications

Publications (1)

Publication Number Publication Date
WO2016084212A1 true WO2016084212A1 (en) 2016-06-02

Family

ID=56073827

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2014/081488 WO2016084212A1 (en) 2014-11-28 2014-11-28 Control server and grouping method for control applications

Country Status (2)

Country Link
JP (1) JPWO2016084212A1 (en)
WO (1) WO2016084212A1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005209203A (en) * 2004-01-20 2005-08-04 Internatl Business Mach Corp <Ibm> Application-aware system for dynamically partitioning and allocating resource on demand
JP2006281900A (en) * 2005-03-31 2006-10-19 Xanavi Informatics Corp On-vehicle information system and application execution method
JP2008041100A (en) * 2006-08-07 2008-02-21 Internatl Business Mach Corp <Ibm> Method for balancing resource sharing and application latency within data processing system

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003067201A (en) * 2001-08-30 2003-03-07 Hitachi Ltd Controller and operating system
JP2003303181A (en) * 2002-04-09 2003-10-24 Toshiba Corp Distributed processing system and distributed processing program

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005209203A (en) * 2004-01-20 2005-08-04 Internatl Business Mach Corp <Ibm> Application-aware system for dynamically partitioning and allocating resource on demand
JP2006281900A (en) * 2005-03-31 2006-10-19 Xanavi Informatics Corp On-vehicle information system and application execution method
JP2008041100A (en) * 2006-08-07 2008-02-21 Internatl Business Mach Corp <Ibm> Method for balancing resource sharing and application latency within data processing system

Also Published As

Publication number Publication date
JPWO2016084212A1 (en) 2017-07-20

Similar Documents

Publication Publication Date Title
EP3019976B1 (en) Dynamic migration script management
US9093841B2 (en) Power distribution network event correlation and analysis
US9442791B2 (en) Building an intelligent, scalable system dump facility
US20110196957A1 (en) Real-Time Policy Visualization by Configuration Item to Demonstrate Real-Time and Historical Interaction of Policies
US20130311645A1 (en) Management system and management method
JP2006235775A (en) Area set setting method and network system
JP2015505097A (en) Computer-implemented process, computer program product, and apparatus for repair delivery system
US9747149B2 (en) Firmware dump collection from primary system dump device adapter
WO2008091037A1 (en) Realtime unification management information data conversion and monitoring apparatus and method for thereof
CN103973470A (en) Cluster management method and equipment for shared-nothing cluster
US10587533B2 (en) Facilitating management of resources
CN108009002A (en) A kind of live migration of virtual machine method, apparatus, equipment and storage medium
US10210127B2 (en) Storage system cabling analysis
CN108156238A (en) The method and device that a kind of data automation uploads
US9003068B2 (en) Service channel for connecting a host computer to peripheral devices
JP6531601B2 (en) Diagnostic program, diagnostic method and diagnostic device
US8438271B2 (en) Performing services in a network data processing system
WO2016084212A1 (en) Control server and grouping method for control applications
JP6992697B2 (en) Network system, information acquisition device, information acquisition method and program
US11829335B1 (en) Using machine learning to provide a single user interface for streamlines deployment and management of multiple types of databases
JPWO2014147699A1 (en) Management apparatus, method and program
US11343202B1 (en) Managing edge devices based on predicted network bandwidth utilization
US9696986B2 (en) Managing a code load
JP2014081925A (en) Cloud management device, cloud management system, cloud management method, and program
KR20220121008A (en) Method for provinding integrated management platform for device failures

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2016561176

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14906873

Country of ref document: EP

Kind code of ref document: A1