KR100343564B1 - A simulator for real time or unreal time of power plant - Google Patents

A simulator for real time or unreal time of power plant Download PDF

Info

Publication number
KR100343564B1
KR100343564B1 KR1019970082281A KR19970082281A KR100343564B1 KR 100343564 B1 KR100343564 B1 KR 100343564B1 KR 1019970082281 A KR1019970082281 A KR 1019970082281A KR 19970082281 A KR19970082281 A KR 19970082281A KR 100343564 B1 KR100343564 B1 KR 100343564B1
Authority
KR
South Korea
Prior art keywords
model
simulation
control
control model
variable
Prior art date
Application number
KR1019970082281A
Other languages
Korean (ko)
Other versions
KR19990061979A (en
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 KR1019970082281A priority Critical patent/KR100343564B1/en
Publication of KR19990061979A publication Critical patent/KR19990061979A/en
Application granted granted Critical
Publication of KR100343564B1 publication Critical patent/KR100343564B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P9/00Arrangements for controlling electric generators for the purpose of obtaining a desired output
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Power Engineering (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Supply And Distribution Of Alternating Current (AREA)

Abstract

PURPOSE: A real-time/non-realtime simulator of generation equipment is provided to reduce a manufacturing cost by performing a control system function by a control model formed with software. CONSTITUTION: A simulation server(10) is used for opening or closing a mechanical model variable database, a control model variable database and exchanging mechanical model variable data for control model variable data. A simulation synchronization server(20) is used for managing frame numbers. A mechanical model generator(30) is used for forming a mechanical simulation model. A mechanical model compiler(31) is used for compiling the mechanical simulation model. A mechanical model variable database(32) is used for storing variables of the mechanical mode. A control model generator(40) is used for forming a control simulation model. A control model compiler(41) is used for compiling the control simulation model. A control model variable database(42) is used for storing variables of the control simulation mode. A simulation synchronization table(61) is formed on a sharing memory by the simulation server(10). A mechanical model variable sharing memory database(62) and a control model variable sharing memory database(63) are used for loading corresponding variable data on a shared memory or storing the corresponding variable data. A chart viewer(50) is used for displaying calculated results of variables to a user.

Description

발전설비의 실시간/비실시간 시뮬레이터{A simulator for real time or unreal time of power plant}A simulator for real time or unreal time of power plant

본 발명은 발전설비의 시뮬레이션 시스템에 관한 것으로, 특히 제어모델을 운용자가 직접 소프트웨어적으로 구성하여 제어시스템기능을 할 수 있도록 함으로써 시뮬레이션시간을 단축하여 시뮬레이션의 효율화를 기할 수 있는 발전설비의 실시간/비실시간 시뮬레이터에 관한 것이다.The present invention relates to a simulation system of a power plant, and in particular, by real-time / ratio of the power plant that can reduce the simulation time by allowing the operator to configure the control model directly by software to perform the control system function. It is about a real time simulator.

기존의 발전설비의 시뮬레이션은 도 1과 같은 상용분산제어시스템(DCS)(1)과 발전설비기계모델(2)을 기계/제어모델의 변수연결관계를 정의해 놓은 통신테이블 (3)을 이용하여 공유메모리(4)상에서 공유메모리데이터베이스(5)로 각종변수들을 검색하여 수행하였다. 이와 같은 시스템에서는 상용분산제어시스템이 일정상태로 셋팅된 하드웨어로 구현되므로 현장상황에 적합한 제어모듈을 개발하여 사용하기 어려워 해당 발전설비의 특성에 따른 적합한 시뮬레이션이 불가능할 뿐만 아니라, 그 특성상 실시간 시뮬레이션만이 가능하고 비실시간으로는 시뮬레이션이 불가능해 작업시 시간이 많이 소요되는 단점이 있었다.The simulation of the existing power generation facility is performed by using the commercial distributed control system (DCS) (1) and the power generation machine model (2) as shown in FIG. 1 using a communication table (3) which defines the variable connection relationship between the machine and the control model. Various variables were retrieved from the shared memory 4 into the shared memory database 5. In such a system, it is difficult to develop and use a control module suitable for a site situation because a commercial distributed control system is implemented with hardware set in a constant state. It was possible to simulate in non-real-time and had a disadvantage in that it takes a lot of time to work.

따라서, 본 발명의 목적은 상기에서와 같은 종래의 결점을 해소하기 위해서 안출한 것으로서, 제어모델을 운용자가 직접 소프트웨어적으로 구성하여 제어시스템기능을 할 수 있도록 함으로써 시뮬레이션시간을 단축하여 시뮬레이션의 효율화를 기한 발전설비의 실시간/비실시간 시뮬레이터를 제공함에 있다.Accordingly, an object of the present invention is to solve the above-mentioned drawbacks, and to reduce the simulation time by improving the simulation time by allowing the operator to directly configure the control model to perform the control system functions. It is to provide real-time / non-real-time simulator of deadline power generation equipment.

도 1은 종래의 발전설비의 시뮬레이터를 나타낸 블럭도,1 is a block diagram showing a simulator of a conventional power plant;

도 2는 본 발명에 따른 발전설비의 실시간/비실시간 시뮬레이터의 구성을 나타낸 블럭도.Figure 2 is a block diagram showing the configuration of a real-time / non-real-time simulator of the power plant according to the present invention.

도 3은 본 발명에 의한 발전설비의 실시간/비실시간 시뮬레이션을 위한 동기 테이블구조도.3 is a synchronization table structure diagram for real-time / non-real-time simulation of the power plant according to the present invention.

도 4는 본 발명으로 구현되는 실시간/비실시간 시뮬레이션을 위한 시뮬레이션자원실행순서를 나타낸 도표.4 is a diagram showing a simulation resource execution sequence for real-time / non-real-time simulation implemented in the present invention.

*도면의 주요부분에 대한 부호설명* Code descriptions for the main parts of the drawings

10 : 시뮬레이션서버 20 : 시뮬레이션동기서버10: simulation server 20: simulation synchronization server

30 : 기계모델생성기 31 : 기계모델컴파일러30: machine model generator 31: machine model compiler

32 : 기계모델변수데이터베이스 40 : 제어모델생성기32: machine model variable database 40: control model generator

41 : 제어모델컴파일러 42 : 제어모델변수데이터베이스41: control model compiler 42: control model variable database

50 : 차트뷰어 60 : 공유메모리50: chart viewer 60: shared memory

61 : 시뮬레이션동기테이블61: simulation synchronization table

62 : 기계모델변수공유메모리데이터베이스62: machine model variable shared memory database

63 : 제어모델변수공유메모리데이터베이스63: control model variable shared memory database

이와 같은 목적을 달성하기 위한 본 발명에 따른 발전설비의 실시간/비실시간 시뮬레이터는 발전설비의 시뮬레이션 시스템에 있어서, 클라이언트의 요청에 따라 기계모델변수공유메모리데이터베이스, 제어모델변수공유메모리데이터베이스를 개방 또는 폐쇄하며, 기계모델변수데이터와 제어모델변수데이터의 교환을 수행하는 시뮬레이션서버; 동기테이블의 서버명령을 항상 감시하면서 프레임번호를 관리하는 시뮬레이션동기서버; 그래픽아이콘을 사용하여 발전설비의 기계시뮬레이션모델을 작성하는 기계모델생성기; 상기 기계모델생성기에 의해 만들어진 그래픽 기계모델을 컴파일하여 기계모델계산을 수행하며, 시뮬레이션에 사용될 기계모델변수들을 생성하는 기계모델컴파일러; 상기 기계모델컴파일러가 기계모델을 컴파일할 때 생성된 기계모델의 변수들을 파일로 저장하는 기계모델변수데이터베이스; 그래픽 아이콘을 사용하여 발전설비의 제어시뮬레이션모델을 작성하는 제어모델생성기; 상기 제어모델생성기에 의해 만들어진 그래픽 제어모델을 컴파일하여 제어모델계산을 수행하며, 시뮬레이션에 이용될 제어모델변수들을 생성하는 제어모델컴파일러; 상기 제어모델컴파일러가 생성한 제어모델의 변수들을 저장하는 제어모델변수데이터베이스; 실시간 및 비실시간 시뮬레이션을 지원하기 위해서 상기 시뮬레이션서버가 공유메모리상에 만든 시뮬레이션동기테이블; 클라이언트의 요청에 따라 각각 상기 기계모델/제어모델변수데이터베이스로부터 해당 변수데이터를 공유메모리로 로딩하거나 메모리상의 데이터를 해당 변수데이터베이스에 저장하는 기계모델/제어모델변수공유메모리데이터베이스; 및 기계모델 및 제어모델의 변수계산결과를 그래프로 사용자에게 보여주는 차트뷰어를 포함한다.The real-time / non-real-time simulator of the power generation facility according to the present invention for achieving the above object, in the simulation system of the power generation facility, opening or closing the machine model variable shared memory database, control model variable shared memory database at the request of the client A simulation server for exchanging machine model variable data and control model variable data; A simulation synchronization server for managing frame numbers while always monitoring server commands in the synchronization table; A machine model generator for creating a machine simulation model of a power generation facility using graphic icons; A machine model compiler that compiles a graphical machine model made by the machine model generator, performs machine model calculation, and generates machine model variables to be used for simulation; A machine model variable database for storing the variables of the machine model generated when the machine model compiler compiles the machine model; A control model generator for generating a control simulation model of a power generation facility using graphic icons; A control model compiler which compiles the graphic control model produced by the control model generator to perform control model calculation and generates control model variables to be used in the simulation; A control model variable database for storing the variables of the control model generated by the control model compiler; A simulation synchronization table created on the shared memory by the simulation server to support real-time and non-real-time simulation; A machine model / control model variable shared memory database for loading corresponding variable data from the machine model / control model variable database into the shared memory or storing data on the memory in the variable database according to a client's request; And a chart viewer showing a graph of the variable calculation results of the machine model and the control model to the user.

이하, 본 발명의 바람직한 실시예를 첨부된 도면들에 의거 상세히 설명한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 2는 본 발명에 따른 발전설비의 실시간/비실시간 시뮬레이터의 구성을 나타낸 블럭도이고, 도 3은 본 발명에 의한 발전설비의 실시간/비실시간 시뮬레이션을 위한 동기테이블구조도이며, 도 4는 본 발명으로 구현되는 실시간/비실시간 시뮬레이션을 위한 시뮬레이션자원실행순서를 나타낸 도표이다.Figure 2 is a block diagram showing the configuration of the real-time / non-real-time simulator of the power plant according to the present invention, Figure 3 is a structure diagram of the synchronization table for real-time / non-real-time simulation of the power plant according to the present invention, Figure 4 Table shows the simulation resource execution procedure for real-time / non-real-time simulation.

도 2에 도시된 바와 같이 본 발명은 시뮬레이션서버(10), 시뮬레이션동기서버(20), 기계모델생성기(30), 제어모델생성기(40) 및, 차트뷰어(50)로 구성되어 있다. 이때, 시뮬레이션동기서버(20), 기계모델생성기(30), 제어모델생성기(40) 및, 차트뷰어(50)는 시뮬레이션서버(10)에 대한 클라이언트로 운용된다. 특히, 시뮬레이션서버(10)는 기동시에 공유메모리(60)상에 시뮬레이션동기테이블(61), 기계모델변수공유메모리데이터베이스(62), 제어모델변수공유메모리데이터베이스(63)를 생성하는 데, 초기에 기계모델변수공유메모리데이터베이스(62), 제어모델변수공유메모리데이터베이스(63)는 어떤 데이터도 가지고 있지 않고 프레임번호는 0으로 세팅된다. 시뮬레이션서버(10)는 또한 클라이언트의 요청에 따라 기계모델변수공유메모리데이터베이스(62), 제어모델변수공유메모리데이터베이스(62)를 개방 또는 폐쇄하며, 기계모델변수데이터와 제어모델변수데이터의 교환을 수행한다. 기계모델과 제어모델의 데이터교환은 아래와 같이 수행되며 프레임번호11과 14에서 이루어진다.As shown in FIG. 2, the present invention includes a simulation server 10, a simulation synchronization server 20, a machine model generator 30, a control model generator 40, and a chart viewer 50. At this time, the simulation synchronization server 20, the machine model generator 30, the control model generator 40, and the chart viewer 50 is operated as a client for the simulation server (10). In particular, the simulation server 10 generates the simulation synchronization table 61, the machine model variable shared memory database 62, and the control model variable shared memory database 63 on the shared memory 60 at startup. The machine model variable shared memory database 62, the control model variable shared memory database 63 do not have any data, and the frame number is set to zero. The simulation server 10 also opens or closes the machine model variable shared memory database 62 and the control model variable shared memory database 62 according to the client's request, and exchanges the machine model variable data and the control model variable data. do. The data exchange between the machine model and the control model is carried out as follows and is done in frames 11 and 14.

while (TRUE)while (TRUE)

{{

if (동기테이블의 서버명령 == 정지)if (server command in synchronous table == stop)

break:break:

if (프레임번호가 바뀜)if (frame number changed)

{{

이전 프레임번호 = 현재 프레임번호Previous frame number = current frame number

switch (현재 프레임번호)switch (current frame number)

{{

case 11:case 11:

기계모델데이터베이스를 제어모델변수로 복사:Copy the machine model database to control model variables:

break:break:

case 14:case 14:

제어모델데이터변수를 기계모델변수로 복사:Copy control model data variables to machine model variables:

default: break:default: break:

}}

자원프레임테이블의 해당위치에 현재 프레임번호를 기록:Record the current frame number at the corresponding position in the resource frame table:

}}

elseelse

{{

단위프레임에 할당된 시간의 1/10만큼 잠잔다:Sleep 1/10 of the time allocated for the unit frame:

}}

}}

이상의 알고리즘은 자원프레임테이블을 한개 할당받은 후에 수행된다.The above algorithm is executed after allocating one resource frame table.

시뮬레이션동기서버(20)는 시뮬레이션서버(10)에 의해 생성/소멸되는 백그라운드프로세서이다. 시뮬레이션동기서버(20)는 특히 동기테이블(61)의 서버명령을 항상 감시하면서 프레임번호를 관리한다. 이 프레임번호는 0부터 15까지 반복적으로 변화한다. 실시간모드에서 프레임번호가 0부터 15까지 바뀌면 실제시간 1초가 되며, 시뮬레이션동기서버(20)에서의 프레임번호의 관리는 다음과 같은 알고리즘에 의해 구현된다.The simulation synchronization server 20 is a background processor that is created / deleted by the simulation server 10. The simulation synchronization server 20 manages the frame number, especially while always monitoring the server command of the synchronization table 61. This frame number is repeatedly changed from 0 to 15. When the frame number is changed from 0 to 15 in the real time mode, the actual time becomes 1 second, and the management of the frame number in the simulation synchronization server 20 is implemented by the following algorithm.

while (TRUE)while (TRUE)

{{

if (동기테이블의 서버명령 == 정지)if (server command in synchronous table == stop)

continue:continue:

프레임번호를 하나 증가시킴:Increase the frame number by one:

if (프레임번호 == 16) 프레임번호 = 0:if (frame number == 16) frame number = 0:

시작시간 저장:Save start time:

while (프레임번호테이블의 엔트리중에 어느 하나라도 이전프레임번호와 같지 않다)while (any one of the entries in the frame number table is not equal to the previous frame number)

{{

if (동기테이블의 서버명령 == 정지)if (server command in synchronous table == stop)

break:break:

종료된 프로세스가 있으면, 해당 테이블엔트리에 0으로 채운다:If there is a terminated process, it fills the table entry with zeros:

단위프레임에 할당된 시간의 1/10만큼 잠잔다:Sleep 1/10 of the time allocated for the unit frame:

}}

종료시간 저장:Save end time:

실행시간 = 종료시간 - 시작시간Execution time = end time-start time

if (실행시간이 단위프레임에 할당된 시간의 경계에서 끝나지 않음)if (execution time does not end at boundary of time allocated to unit frame)

나머지시간만큼 잠잔다:Sleep for the rest of the time:

}}

기계모델생성기(30)는 그래픽아이콘을 사용하여 발전설비의 기계시뮬레이션 모델을 작성한다. 따라서, 기계모델생성기(30)는 시뮬레이션모드를 가지고, 시뮬레이션모드에서 그래픽으로 기계모델을 보여주면서 후술할 기계모델컴파일러(31)를 통해 기계모델의 연산을 수행시킴과 아울러 특정 모듈의 계산결과를 차트뷰어(50)를 통해 디스플레이하게 한다. 기계모델생성기(30)는 아래와 같이 기계모델계산을 수행한다.The machine model generator 30 creates a machine simulation model of the power generation facility by using the graphic icon. Therefore, the machine model generator 30 has a simulation mode, and shows the machine model graphically in the simulation mode, performs the calculation of the machine model through the machine model compiler 31, which will be described later, and charts the calculation result of a specific module. Display through the viewer 50. The machine model generator 30 performs a machine model calculation as follows.

while (TRUE)while (TRUE)

{{

if (서버명령 == 정지) continue:if (server command == stop) continue:

if (프레임번호가 바뀜)if (frame number changed)

{{

switch (프레임번호)switch (frame number)

{{

case 12:case 12:

case 13:case 13:

(마)에게 기계모델 계산을 수행시킴:(E) perform the mechanical model calculation:

break:break:

}}

프레임번호테이블의 자신의 인덱스위치에 현재프레임번호를 기록한다:Record the current frame number in its index position in the frame number table:

}}

elseelse

{{

단위프레임에 할당된 시간의 1/10만큼 잠잔다:Sleep 1/10 of the time allocated for the unit frame:

}}

}}

제어모델생성기(40)는 그래픽 아이콘을 사용하여 발전설비의 제어시뮬레이션 모델을 작성한다. 그리고, 기계모델과 제어모델 사이에 시뮬레이션 데이터를 주고 받기 위한 기계모델과 제어모델 사이의 변수연결정보를 정의한다. 이와 같이 제어모델생성기(40)는 시뮬레이션모드를 가지며, 시뮬레이션모드에서 그래픽 제어모델을 보여주면서 후술할 제어모델컴파일러(41)를 구동하여 제어모델의 계산을 수행함과 동시에 특정모듈의 계산결과를 차트뷰어(50)를 통해 디스플레이한다. 다음과 같이 제어모델생성기(40)는 제어모델계산을 수행하게 된다.The control model generator 40 creates a control simulation model of the power generation facility using a graphic icon. And, it defines the variable connection information between the machine model and the control model for sending and receiving simulation data between the machine model and the control model. As such, the control model generator 40 has a simulation mode, and while driving the control model compiler 41 to be described later while showing the graphic control model in the simulation mode, the control model is calculated and at the same time the calculation result of the specific module is displayed in the chart viewer. Display through 50. The control model generator 40 performs control model calculation as follows.

while (TRUE)while (TRUE)

{{

if (서버명령 == 정지) continue:if (server command == stop) continue:

if (프레임번호가 바뀜)if (frame number changed)

{{

switch (프레임번호)switch (frame number)

{{

case 1:case 1:

case 2:case 2:

case 3:case 3:

case 4:case 4:

case 5:case 5:

case 6:case 6:

case 7:case 7:

case 8:case 8:

case 9:case 9:

case 10:case 10:

(아)에게 기계모델 계산을 수행시킴:(H) performs machine model calculations:

break:break:

}}

프레임번호테이블의 자신의 인덱스위치에 현재프레임번호를 기록한다:Record the current frame number in its index position in the frame number table:

}}

elseelse

{{

단위프레임에 할당된 시간의 1/10만큼 잠잔다:Sleep 1/10 of the time allocated for the unit frame:

}}

}}

기계모델컴파일러(31)는 기계모델생성기(30)에 의해 만들어진 그래픽 기계모델을 컴파일하여 기계모델계산을 수행한다. 이때, 시뮬레이션에 사용될 기계모델변수들을 생성하여 후술될 기록매체인 기계모델변수데이터베이스(32)에 저장한다. 이상시 각 변수들은 공유메모리(60)상에서의 어드레스가 결정된다. 컴파일이 종료되면 시뮬레이션서버(10)에 요청하여 기계모델변수데이터베이스(32)에 저장되어 있는 기계모델변수데이터들을 기계모델변수공유메모리데이터베이스(62)상으로 로딩한다.The machine model compiler 31 compiles the graphic machine model made by the machine model generator 30 and performs machine model calculation. At this time, the machine model variables to be used for the simulation are generated and stored in the machine model variable database 32 which is a recording medium to be described later. In this case, the variables on the shared memory 60 are determined. When the compilation is finished, the simulation server 10 requests the simulation server 10 to load the machine model variable data stored in the machine model variable database 32 onto the machine model variable shared memory database 62.

제어모델컴파일러(41)는 제어모델생성기(40)에 의해 만들어진 그래픽 제어모델을 컴파일하여 제어모델계산을 수행하며, 시뮬레이션에 이용될 제어모델변수들을 생성하여 후술할 제어모델변수데이터베이스(42)에 저장한다. 이때, 각 변수들은그에 해당하는 공유메모리(60)상에서의 어드레스가 결정된다. 컴파일이 종료되면 시뮬레이션서버(10)에 요청하여 제어모델변수데이터베이스(42)에 저장된 제어모델변수데이터들을 제어모델변수공유메모리데이터베이스(63)상으로 읽어들인다. 그리고, 제어모델생성기(40)에 의해 정의된 제어모델변수와의 연결정보는 시뮬레이션서버(10)가 이용할 수 있도록 파일로 저장한다.The control model compiler 41 compiles the graphic control model made by the control model generator 40 to perform control model calculation, generates control model variables to be used in the simulation, and stores them in the control model variable database 42 to be described later. do. At this time, each variable is determined an address on the corresponding shared memory 60. When the compilation is completed, the simulation server 10 is requested to read the control model variable data stored in the control model variable database 42 onto the control model variable shared memory database 63. Then, the connection information with the control model variable defined by the control model generator 40 is stored in a file for use by the simulation server 10.

기계모델변수데이터베이스(32)는 기계모델컴파일러(31)가 기계모델을 컴파일할 때 생성된 기계모델의 변수들을 파일로 저장한다. 또한, 제어모델변수데이터베이스(42)도 제어모델컴파일러(41)가 생성한 제어모델의 변수들을 저장한다.The machine model variable database 32 stores the variables of the machine model generated when the machine model compiler 31 compiles the machine model in a file. The control model variable database 42 also stores the variables of the control model generated by the control model compiler 41.

시뮬레이션동기테이블(61)은 시뮬레이션서버(10)에 의해 생성/소멸되며, 시뮬레이션동기서버(20)에 의해 관리된다. 실시간 및 비실시간 시뮬레이션을 지원하기 위해서 시뮬레이션서버(10)가 도 3과 같은 동기테이블(61)을 공유메모리(60)상에 만들게 된다. 이 동기테이블(61)은 자원프로세서테이블과 자원프레임테이블로 구성된다. 자원프로세스테이블에는 현재 시뮬레이션서버(10)에 연결된 클라이언트프로세서번호가 기록된다. 클라이언트가 시뮬레이션서버(10)에 자원프레임할당을 요구하면 서버는 자원프로세스테이블에서 0값을 가진 첫번째 공간에 클라이언트의 프로세스번호를 등록하고, 그 인덱스값을 돌려준다. 이때, 테이블이 다 있으면 -1를 돌려받는다. 한편, 자원프레임테이블에는 자원프로세스테이블에 등록된 클라이언트가 자원프레임테이블의 인덱스값 위치에 자신의 프레임번호를 읽고 쓰게 되어 있다.The simulation synchronization table 61 is generated / deleted by the simulation server 10 and managed by the simulation synchronization server 20. In order to support real-time and non-real-time simulation, the simulation server 10 creates a synchronization table 61 as shown in FIG. 3 on the shared memory 60. This synchronization table 61 is composed of a resource processor table and a resource frame table. In the resource process table, the client processor number currently connected to the simulation server 10 is recorded. When the client requests resource frame allocation from the simulation server 10, the server registers the process number of the client in the first space having a value of zero in the resource process table and returns the index value. At this time, if the table is full, -1 is returned. On the other hand, in the resource frame table, the client registered in the resource process table reads and writes its frame number at the index value position of the resource frame table.

또한, 기계모델과 제어모델의 계산순서 및 계산결과의 디스플레이는 그 출력이 서로 교번되며 진행되어야 하기 때문에 동기가 맞아야 한다. 따라서, 이를 위해 실행되는 자원은 도 4에서 보는 바와 같이 그 순서가 정의되어 있다.In addition, the calculation order of the mechanical model and the control model and the display of the calculation results must be synchronized because their outputs must be alternately made. Therefore, the resources to be executed for this order is defined as shown in FIG.

기계모델변수공유메모리데이터베이스(62)와 제어모델변수공유메모리데이터베이스(63)는 시뮬레이션서버(10)에 의해 공유메모리(60)상에 생성 또는 소멸되며, 클라이언트의 요청에 따라 각각 기계모델변수데이터베이스(32) 및 제어모델변수데이터베이스(42)로부터 해당 변수데이터를 공유메모리(60)로 로딩하거나 메모리상(60)의 데이터를 해당 변수데이터베이스(32,42)에 저장한다.The machine model variable shared memory database 62 and the control model variable shared memory database 63 are created or destroyed on the shared memory 60 by the simulation server 10, respectively. 32) and load the variable data from the control model variable database 42 into the shared memory 60 or store the data on the memory 60 in the variable databases 32,42.

차트뷰어(50)는 동기서버(20)의 프레임 15에서 사용자가 지정한 기계/제어변수를 그래프로 보여주기 위한 표시수단으로, 다른 클라이언트와 마찬가지로 시뮬레이션서버(10)가 생성한 공유메모리(60)상의 자원프레임테이블에서 자신의 프레임을 할당받은 후 동기테이블의 내용을 항상 감시하게 된다. 예를 들어, 프레임번호가 바뀌어 15번이 되면 차트뷰어(50)는 공유메모리(60)상의 기계/제어변수테이블에서 수용자가 선택한 변수값을 디스플레이한다. 일단 프레임번호가 변경되었으면 도 3에 도시된 프레임테이블에서 자신의 테이블위치에 현재프레임번호를 기록한다. 반면에, 프레임번호가 바뀌지 않았으면 단위 프레임당 할당된 시간의 1/10만큼 프로그램의 실행을 중지시킨다. 이러한 과정들은 시뮬레이션서버(10)가 정지명령을 내릴 때까지 계속해서 반복된다.The chart viewer 50 is a display means for displaying a machine / control variable designated by the user in the frame 15 of the synchronization server 20 in a graph. After the frame is allocated from the resource frame table, the contents of the synchronization table are always monitored. For example, if the frame number changes to 15, the chart viewer 50 displays the variable value selected by the recipient in the machine / control variable table on the shared memory 60. Once the frame number has been changed, the current frame number is recorded at its table position in the frame table shown in FIG. On the other hand, if the frame number is not changed, execution of the program is stopped by 1/10 of the time allotted per unit frame. These processes are repeated repeatedly until the simulation server 10 issues a stop command.

이하부터는 본 발명의 동작에 대해 상세히 설명한다.Hereinafter, the operation of the present invention will be described in detail.

기계모델생성기(30)는 그래픽아이콘을 사용하여 발전설비의 기계시뮬레이션모델을 작성하여 기계모델컴파일러(31)로 보낸다. 그러면, 기계모델컴파일러(31)는 기계모델생성기(30)에 의해 만들어진 그래픽 기계모델을 컴파일하여 기계모델계산을 수행하며, 시뮬레이션에 사용될 기계모델변수들을 생성하여 기계모델변수데이터베이스(32)에 파일로 저장한다.The machine model generator 30 creates a machine simulation model of the power generation facility by using the graphic icon and sends it to the machine model compiler 31. Then, the machine model compiler 31 compiles the graphical machine model made by the machine model generator 30 to perform machine model calculation, and generates machine model variables to be used in the simulation to a file in the machine model variable database 32. Save it.

한편, 제어모델생성기(40)는 그래픽 아이콘을 사용하여 발전설비의 제어시뮬레이션모델을 작성하여 제어모델컴파일러(41)로 보낸다. 그러면, 제어모델컴파일러(41)는 제어모델생성기(40)에 의해 만들어진 그래픽 제어모델을 컴파일하여 제어모델계산을 수행하며, 시뮬레이션에 이용될 제어모델변수들을 생성한다. 이 제어모델컴파일러(41)가 생성한 제어모델의 변수들을 제어모델변수데이터베이스(42)로 보내져 저장된다.On the other hand, the control model generator 40 creates a control simulation model of the power generation equipment using a graphic icon and sends it to the control model compiler 41. Then, the control model compiler 41 compiles the graphic control model created by the control model generator 40 to perform control model calculation, and generates control model variables to be used for the simulation. Variables of the control model generated by the control model compiler 41 are sent to the control model variable database 42 and stored.

클라이언트의 요청에 따라 각각 상기 기계모델/제어모델변수데이터베이스 (32,42)로부터 해당 변수데이터를 공유메모리(60)의 기계모델/제어모델변수공유메모리데이터베이스(62,63)로 로딩하여 차트뷰어(50)를 통해 기계모델 및 제어모델의 변수계산결과를 그래픽으로 사용자에게 보여준다. 이때, 동기테이블에 정의되어 있는 자원순서에 따라 동기가 맞추어져 기계모델과 제어모델의 계산순서 및 계산결과의 출력이 차트뷰어(50)를 통해 서로 교번되며 디스플레이된다.According to the client's request, the variable data is loaded from the machine model / control model variable databases 32 and 42 into the machine model / control model variable shared memory databases 62 and 63 of the shared memory 60, respectively. 50) shows the result of the variable calculation of the machine model and control model graphically to the user. At this time, the synchronization is matched according to the resource order defined in the synchronization table, and the calculation order and output of the calculation result of the machine model and the control model are alternately displayed through the chart viewer 50.

이상 서술한 바와 같이, 본 발명의 발전설비의 실시간/비실시간 시뮬레이터는 제어모델을 운용자가 직접 소프트웨어적으로 구성하여 제어시스템기능을 할 수 있도록 함으로써 상용제어시스템을 하드웨어적으로 구성할 때 필요한 제작비의 상승요인을 해소하여 제작비를 절감할 수 있는 효과가 있다. 특히, 본 발명은 실시간 뿐만 아니라 비실시간으로도 시뮬레이션을 수행할 수 있어 시뮬레이션시간을 단축하여 시뮬레이션의 효율성을 향상한 잇점을 가지고 있다. 또한, 실시간 시뮬레이션이 가능하므로 발전설비 운전자를 훈련시키기 위한 훈련용으로 사용할 수 있는 잇점이 있다.As described above, the real-time / non-real-time simulator of the power generation equipment of the present invention allows the operator to configure the control model directly by software to perform the control system function, thereby making it possible to reduce the manufacturing cost required when constructing the commercial control system in hardware. It is effective to reduce production costs by eliminating the upward factors. In particular, the present invention has the advantage that the simulation can be performed in real time as well as non-real time to improve the efficiency of the simulation by reducing the simulation time. In addition, since real-time simulation is possible, there is an advantage that can be used for training to train the power plant operators.

Claims (5)

발전설비의 시뮬레이션 시스템에 있어서,In the simulation system of the power generation equipment, 클라이언트의 요청에 따라 기계모델변수공유메모리데이터베이스, 제어모델변수공유메모리데이터베이스를 개방 또는 폐쇄하며, 기계모델변수데이터와 제어모델변수데이터의 교환을 수행하는 시뮬레이션서버;A simulation server which opens or closes the machine model variable shared memory database and the control model variable shared memory database according to a client's request, and exchanges the machine model variable data and the control model variable data; 동기테이블의 서버명령을 항상 감시하면서 프레임번호를 관리하는 시뮬레이션동기서버;A simulation synchronization server for managing frame numbers while always monitoring server commands in the synchronization table; 그래픽아이콘을 사용하여 발전설비의 기계시뮬레이션모델을 작성하는 기계모델생성기;A machine model generator for creating a machine simulation model of a power generation facility using graphic icons; 상기 기계모델생성기에 의해 만들어진 그래픽 기계모델을 컴파일하여 기계모델계산을 수행하며, 시뮬레이션에 사용될 기계모델변수들을 생성하는 기계모델컴파일러;A machine model compiler that compiles a graphical machine model made by the machine model generator, performs machine model calculation, and generates machine model variables to be used for simulation; 상기 기계모델컴파일러가 기계모델을 컴파일할 때 생성된 기계모델의 변수들을 파일로 저장하는 기계모델변수데이터베이스;A machine model variable database for storing the variables of the machine model generated when the machine model compiler compiles the machine model; 그래픽 아이콘을 사용하여 발전설비의 제어시뮬레이션모델을 작성하는 제어모델생성기;A control model generator for generating a control simulation model of a power generation facility using graphic icons; 상기 제어모델생성기에 의해 만들어진 그래픽 제어모델을 컴파일하여 제어모델계산을 수행하며, 시뮬레이션에 이용될 제어모델변수들을 생성하는 제어모델컴파일러;A control model compiler which compiles the graphic control model produced by the control model generator to perform control model calculation and generates control model variables to be used in the simulation; 상기 제어모델컴파일러가 생성한 제어모델의 변수들을 저장하는 제어모델변수데이터베이스;A control model variable database for storing the variables of the control model generated by the control model compiler; 실시간 및 비실시간 시뮬레이션을 지원하기 위해서 상기 시뮬레이션서버가 공유메모리상에 만든 시뮬레이션동기테이블;A simulation synchronization table created on the shared memory by the simulation server to support real-time and non-real-time simulation; 클라이언트의 요청에 따라 각각 상기 기계모델/제어모델변수데이터베이스로부터 해당 변수데이터를 공유메모리로 로딩하거나 메모리상의 데이터를 해당 변수 데이터베이스에 저장하는 기계모델/제어모델변수공유메모리데이터베이스; 및A machine model / control model variable shared memory database for loading corresponding variable data from the machine model / control model variable database into the shared memory or storing data on the memory in the variable database according to a client's request; And 기계모델 및 제어모델의 변수계산결과를 그래프로 사용자에게 보여주는 챠트뷰어를 포함하는 발전설비의 실시간/비실시간 시뮬레이터.Real-time / non-real-time simulator of power generation equipment, including a chart viewer that shows the user graphically the results of calculating the variables of the machine and control models. 제 1항에 있어서, 상기 시뮬레이션동기테이블은 현재 시뮬레이션서버에 연결된 클라이언트프로세스번호가 기록되는 자원프로세스테이블과, 상기 자원프로세스테이블에 등록된 클라이언트가 인덱스값 위치에 자신의 프레임번호를 읽고 쓰는 자원프레임테이블로 구성되는 것을 특징으로 하는 발전설비의 실시간/비실시간 시뮬레이터.2. The resource synchronization table of claim 1, wherein the simulation synchronization table comprises: a resource process table in which a client process number currently connected to a simulation server is recorded, and a client registered in the resource process table reads and writes its frame number at an index value position; Real-time / non-real-time simulator of the power plant, characterized in that consisting of. 제 1항 또는 제 2항에 있어서, 상기 시뮬레이션동기테이블에는 상기 기계모델과 제어모델의 계산순서 및 계산결과의 출력이 서로 교번되며 진행하기 위한 동기를 맞추기 위해서 실행되는 자원의 순서가 정의되어 있는 것을 특징으로 하는 발전설비의 실시간/비실시간 시뮬레이터.The method according to claim 1 or 2, wherein the simulation synchronization table defines a sequence of resources to be executed in order to synchronize the progress of the calculation order and the output of the calculation result of the machine model and the control model with each other. Real-time / non-real-time simulator of power generation equipment. 제 1항에 있어서, 상기 시뮬레이션동기테이블 및 기계모델/제어모델변수공유메모리데이터베이스는 상기 시뮬레이션서버에 의해 공유메모리상에 생성 또는 소멸되는 것을 특징으로 하는 발전설비의 실시간/비실시간 시뮬레이터.2. The real-time / non-real-time simulator of a power plant as claimed in claim 1, wherein the simulation synchronization table and the machine model / control model variable shared memory database are created or destroyed on the shared memory by the simulation server. 제 1항에 있어서, 상기 제어모델생성기는 상기 기계모델과 제어모델 사이에 시뮬레이션 데이터를 주고 받기 위한 기계모델과 제어모델 사이의 변수연결정보를 정의하는 것을 특징으로 하는 발전설비의 실시간/비실시간 시뮬레이터.2. The real-time / non-real-time simulator of a power plant according to claim 1, wherein the control model generator defines variable connection information between a machine model and a control model for exchanging simulation data between the machine model and the control model. .
KR1019970082281A 1997-12-31 1997-12-31 A simulator for real time or unreal time of power plant KR100343564B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019970082281A KR100343564B1 (en) 1997-12-31 1997-12-31 A simulator for real time or unreal time of power plant

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019970082281A KR100343564B1 (en) 1997-12-31 1997-12-31 A simulator for real time or unreal time of power plant

Publications (2)

Publication Number Publication Date
KR19990061979A KR19990061979A (en) 1999-07-26
KR100343564B1 true KR100343564B1 (en) 2002-11-29

Family

ID=37488381

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970082281A KR100343564B1 (en) 1997-12-31 1997-12-31 A simulator for real time or unreal time of power plant

Country Status (1)

Country Link
KR (1) KR100343564B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101151521B1 (en) * 2010-09-27 2012-05-30 한국전력공사 Apparatus for connection monitoring of cable between cabinet and method thereof

Also Published As

Publication number Publication date
KR19990061979A (en) 1999-07-26

Similar Documents

Publication Publication Date Title
CN111950066B (en) Digital twin data driving system based on BIM and GIS technology
CN110442913B (en) Thermal hydraulic three-dimensional real-time dynamic simulation method and system for nuclear power plant
CN111079244B (en) Distributed simulation platform based on behavior tree
CN108898912B (en) Power grid dispatcher training simulation method and system based on cloud technology
CN111666355B (en) Model construction method and device for field, data and scene three-layer model
CN107436785B (en) Revit software information interaction system and interaction method based on information system
KR100593716B1 (en) 4D construction management system and construction management information provision method using the same
CN108363787A (en) A kind of IFC file in parallel storage method, apparatus and system
KR100343564B1 (en) A simulator for real time or unreal time of power plant
CN110442059A (en) Controlled device expanding method, device and control equipment
CN110096786A (en) Colony intelligence Application in Building program semi-physical real-time simulation platform
CN113289342B (en) Action data processing method and device, storage medium and electronic equipment
CN114896031A (en) Method and system for compatible scheduling of multiple RPAs
JPH01199756A (en) Production planning simulation device
JPH113216A (en) Supporting method and device for scenario-based object-oriented analysis design
Purvis et al. An adaptive distributed workflow system framework
Lam et al. Distributed web-based building performance computing: a Singapore-US collaborative effort
CN109213540B (en) Power grid data processing method and device for handheld device
KR20020090554A (en) Integrated construction process and cost management system and method, and media for storing program source thereof
CN115640044B (en) Unity-based three-dimensional software development method, device, equipment and medium
Bisnovatyi Flexible software framework for modal synthesis
JPH11305903A (en) Data preparing device for process monitoring picture display, process monitoring picture display device and program record medium
JPH09282153A (en) Picture/slip, data base and protocol preparation system
JPH08194634A (en) Test execution system
CN116719521A (en) Demonstrator model editing method and system and configuration software system

Legal Events

Date Code Title Description
N231 Notification of change of applicant
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130313

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20140401

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20160324

Year of fee payment: 15

FPAY Annual fee payment

Payment date: 20170324

Year of fee payment: 16

EXPY Expiration of term