执行应用程序
当应用程序调用子程序执行控制时,实际的Exasmoc控制执行计算来生成新的MV。该子程序准备好Exasmoc内核的输入参数(包括为所有MV变量调用MV检查),调用内核以执行算法计算,然后将输出参数传递回应用程序(最终通过数据库传输到DCS和Exasmoc操作台)。在应用程序调用“执行控制”之前,它会对需要数据验证的POV和DV调用QMI检查。
应用程序的典型执行步骤如下:
步骤1开始
步骤2等待Scheduler请求。
当调度器(控制周期和偏移时间)中为Exasmoc控制器定义的定时得到满足,应用程序将继续运行该控制器。
步骤3从实时数据库(即测量值,Exasmoc操作站条目,设计/工作数据文件等)获取Exasmoc控制器所需的输入数据。
步骤4若POV和DV需要检查QMI,则调用子程序“QMI check”。
步骤5 调用子程序¨Execute control〃。
¨Execute control〃为Kernel准备输入。
“Execute control(执行控制)” 调用提供了内核输入和内核子程序运行核心算法(控制,优化和观察)来计算控制动作的“Kernel subroutine(内核子程序)”。
“Execute control(执行控制)”最终转换控制动作,为应用程序准备输出。
步骤6向实时数据库提供输出(MV的设定值/输出)。
步骤7返回步骤2
最终DCS和Exasmoc操作站从数据库接收这些输出。 Exasmoc操作站还将从数据库接收输入和其他参数用于显示。
如果在一台PC上运行多个Exasmoc控制器,则调度器会定期控制每个控制器的执行。
Exasmoc控制器初始化
在初始化或重新初始化期间,应用程序从特定Exasmoc控制器的.CON和.DEF文件中读取定义的参数。设计修改Exasmoc控制器将产生一个新的.CON / .DEF文件,并且需将其替换掉旧的.CON / DEF文件。之后,为使新参数在控制计算中有效,需要进行初始化。
在以下条件Exasmoc控制器需要初始化。
当Exasmoc控制器初次启动时。
当控制面板上的初始化标志被设定时。有关详细信息请参见B2 / C2。
当Exasmoc控制器模式从OFF变为STANDBY / CONTROL / OPTIMIZE时。
当其执行频率超过定义的限制时。
原文:
Application Program Execution
The actual Exasmoc control computation to generate new MVs is performed when application program calls subroutine Execute Control. This subroutine prepares the input parameters for the Exasmoc kernel (including call to MV Check for all the manipulated variables), calls the kernel to perform the algorithm calculations and subsequently prepares the output parameters to be passed back to the application (and ultimately to DCS and Exasmoc operator station via database). Before the application calls ¨Execute control〃, it calls QMI Check for those POVs and DVs that require data validation.
A typical execution of an Application Program is given in the following steps:
Step 1 Start
Step 2 Wait for Scheduler request.
Once the timings defined for Exasmoc Controller in scheduler (Control period and Offset time) is satisfied, the Application Program continues running for this controller.
Step 3 Get input data required for Exasmoc controller from real time database (i.e. Measurements, Exasmoc Operator station entries, design/working data files etc.)
Step 4 Call Subroutine ¨QMI check〃 if QMI check on POVs and DVs is required.
Step 5 Call Subroutine ¨Execute control〃.
¨Execute control〃 eventually prepares Inputs for Kernel.
“Execute control” calls “Kernel subroutine”, which provides Inputs to Kernel and Kernel subroutine runs core algorithms (control, optimise & observer) to calculate control actions.
“Execute control” eventually converts control actions to prepare outputs for Application program.
Step 6 Provide outputs (setpoints/outputs to MV) to real time database.
Step 7 Return to step 2
Eventually DCS and Exasmoc operator station receives these outputs from the database. Exasmoc operator station also receives input and other parameters from the database for display purpose.
If multiple Exasmoc controllers run in one PC, the scheduler controls the execution of each controller periodically.
Exasmoc Controller Initialization
During Initialization or re-Initialization, an Application Program reads parameters defined in .CON and .DEF file of a particular Exasmoc Controller. Design modification of Exasmoc controller will lead to a new .CON/.DEF file, which needs to be replaced from old .CON/DEF file. After this, it is necessary to initialize in order to make new parameters effective in control computations.
Exasmoc controller is initialized at the following condition.
When the Exasmoc controller starts freshly.
When Initialize flag on Control Panel is set. Refer to Chapter B2/C2 for details.
When Exasmoc controller mode is changed from OFF to STANDBY / CONTROL / OPTIMISE.
When itˇs execution frequency exceeds the defined limit.
2017.3.31