Commit 59fe4ea9 authored by Claes Sjofors's avatar Claes Sjofors

Maintenance supervision server added

parent 42fd1bb6
This source diff could not be displayed because it is too large. You can view the blob instead.
<topic> __DocumentTitlePage
<image> pwr_logga_doc.png
<h1> Multivariate analysis
<hr>
2019-05-28
Version 5.7.0
<hr>
</topic>
<topic> __DocumentInfoPage
Copyright 2005-2019 SSAB EMEA AB
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.2
or any later version published by the Free Software Foundation;
with no Invariant Sections, no Front-Cover Texts, and no Back-Cover
Texts.
</topic>
<option> printdisable
<topic> index
Multivariate Analysis
<image> pwr_logga.gif
<h1>Multivariate Analysis
Introduction <link> mva_introduction
Fetch data <link> mva_get_data
Linear Regression Model <link> mva_linreg_model
Index <index>
</topic>
<option> printenable
<chapter>
<topic> mva_introduction
Introduction
ProviewR Multivariate Analyses is utilities to analyse data stored or generated by a
ProviewR system.
</topic>
</chapter>
<chapter>
<topic> mva_get_data
Get data
<h1>Get data
Data can be fetch from an Sev server or read from a csv file generated for example by
the Xtt logging function.
<option> printdisable
<b>Fetch from sev <link>mva_fetch_from_sev
<b>Xtt logging <link>mva_xtt_logging
<option> printenable
</topic>
<headerlevel>
<topic> mva_fetch_from_sev
Fetch data from Sev
...
</topic>
<topic> mva_xtt_logging
Xtt logging
...
</topic>
</headerlevel>
</chapter>
<chapter>
<topic> mva_linreg_model
Linear Regression Model
<h1>Create Model
<option> printdisable
<b>Create model <link>mva_create_model
<b>Apply model <link>mva_apply_model
<option> printenable
</topic>
<headerlevel>
<topic> mva_create_model
Create model
...
</topic>
<topic> mva_apply_model
Apply model
...
</topic>
</headerlevel>
</chapter>
......@@ -35,9 +35,9 @@ silent :
.SUFFIXES:
$(exe_dir)/pwrrt.so : pwrrtmodule.c
@ if [ $(PWRE_CONF_PYDEV) -eq 1 ]; then\
@ if [ "$(PWRE_CONF_PYDEV)" == "1" ]; then\
echo "Bulding Python c extension pwrrt";\
python setup_pwrrt.py -q build --build-base $(bld_dir);\
python setup_pwrrt.py build --build-base $(bld_dir);\
if [ "$(pwre_hw)" == "hw_x86_64" ]; then \
mv $(bld_dir)/lib.linux-x86_64-2.7/pwrrt.so $(pwr_exe); \
elif [ "$(pwre_hw)" == "hw_x86" ]; then \
......
......@@ -3011,7 +3011,7 @@ Appl_mainloop(ApplObject *self, PyObject *args)
int swap = 0;
int first_scan = 1;
arglist = Py_BuildValue("(O)", self->ctx);
arglist = Py_BuildValue("()", self->ctx);
PyEval_CallObject(self->open, arglist);
......@@ -3491,6 +3491,8 @@ static PyObject *pwrrt_getSevItemsDataFrame(PyObject *self, PyObject *args)
char *server, *fromstr, *tostr;
pwr_tOName *oidvect;
pwr_tOName *anamevect;
pwr_tOName cond_oid;
pwr_tOName cond_aname;
int *isobjectvect;
int oidcnt, anamecnt, isobjectcnt;
pwr_tTime from, to;
......@@ -3501,6 +3503,7 @@ static PyObject *pwrrt_getSevItemsDataFrame(PyObject *self, PyObject *args)
PyObject *oidobj, *anameobj, *isobjectobj;
pwr_tFloat32 *vbuf;
int maxrows = 0;
int options = 0;
int rows;
pwr_eType vtype;
unsigned int vsize;
......@@ -3513,7 +3516,7 @@ static PyObject *pwrrt_getSevItemsDataFrame(PyObject *self, PyObject *args)
int valcnt;
pwr_tDeltaTime dt;
pwr_tFloat32 **vvect;
float *tbuf;
float *tbuf;
if ( !pwrrt_scctx) {
sevcli_init( &sts, &pwrrt_scctx);
......@@ -3521,8 +3524,8 @@ static PyObject *pwrrt_getSevItemsDataFrame(PyObject *self, PyObject *args)
return set_error(sts);
}
if ( !PyArg_ParseTuple(args, "sOOOssf|Is", &server, &oidobj, &anameobj, &isobjectobj,
&fromstr, &tostr, &tdiff, &maxrows, &time_format))
if ( !PyArg_ParseTuple(args, "sOOOssf|IsI", &server, &oidobj, &anameobj, &isobjectobj,
&fromstr, &tostr, &tdiff, &maxrows, &time_format, &options))
return NULL;
if ( time_format) {
......@@ -3554,8 +3557,6 @@ static PyObject *pwrrt_getSevItemsDataFrame(PyObject *self, PyObject *args)
if ( EVEN(sts))
return set_error(sts);
}
time_Adiff(&dt, &to, &from);
valcnt = (int)time_DToFloat(NULL, &dt)/tdiff;
if ( PyTuple_Check(oidobj))
oidcnt = PyTuple_Size(oidobj);
......@@ -3611,8 +3612,79 @@ static PyObject *pwrrt_getSevItemsDataFrame(PyObject *self, PyObject *args)
isobjectvect[i] = PyInt_AsLong(pystr);
}
for ( i = 0; i < oidcnt; i++)
printf("arg %s.%s\n", oidvect[i], anamevect[i]);
if (options & 1) {
/* First objid is condition */
strcpy(cond_oid, oidvect[0]);
strcpy(cond_aname, anamevect[0]);
for (i = 0; i < oidcnt - 1; i++) {
strcpy(oidvect[i], oidvect[i+1]);
strcpy(anamevect[i], anamevect[i+1]);
isobjectvect[i] = isobjectvect[i+1];
}
oidcnt -= 1;
anamecnt -= 1;
isobjectcnt -= 1;
if (oidcnt <= 0)
return set_error(GDH__ARGCOUNT);
/* Get condition data */
if ( strncmp("_O", cond_oid, 2) == 0)
sts = cdh_StringToObjid(cond_oid, &oid);
else
sts = gdh_NameToObjid(cond_oid, &oid);
if ( EVEN(sts))
return set_error(sts);
sevcli_get_itemdata( &sts, pwrrt_scctx, oid, cond_aname, from, to, maxrows, &ttbuf,
(void **)&vbuf, &rows, &vtype, &vsize);
if ( sts == SEV__NOPOINTS)
Py_RETURN_NONE;
else if (EVEN(sts))
return set_error(sts);
//for (i = 0; i < rows; i++) {
// char timstr[40];
// time_AtoAscii(&ttbuf[i], time_eFormat_DateAndTime, timstr, sizeof(timstr));
// printf("%d %s %d\n", i, timstr, ((pwr_tBoolean *)vbuf)[i]);
//}
/* Find longest continuous interval where condition is high */
pwr_tBoolean last_value = 0;
pwr_tFloat32 max_time = 0.0f;
int last_idx;
int start_idx;
int end_idx;
for (i = 0; i < rows; i++) {
if (((pwr_tBoolean *)vbuf)[i] == 1 && last_value == 0) {
last_value = 1;
last_idx = i;
}
else if ((((pwr_tBoolean *)vbuf)[i] == 0 && last_value == 1) ||
(((pwr_tBoolean *)vbuf)[i] == 1 && last_value == 1 && i == rows - 1)) {
last_value = 0;
time_Adiff(&dt, &ttbuf[i], &ttbuf[last_idx]);
if (time_DToFloat(0, &dt) > max_time) {
max_time = time_DToFloat(0, &dt);
start_idx = last_idx;
end_idx = i;
}
}
}
if (max_time > 0.0f) {
from = ttbuf[start_idx];
to = ttbuf[end_idx];
}
free(ttbuf);
free(vbuf);
}
time_Adiff(&dt, &to, &from);
valcnt = (int)time_DToFloat(NULL, &dt)/tdiff;
//for ( i = 0; i < oidcnt; i++)
// printf("arg %s.%s\n", oidvect[i], anamevect[i]);
vvect = calloc(oidcnt, sizeof(float *));
......@@ -3624,7 +3696,6 @@ static PyObject *pwrrt_getSevItemsDataFrame(PyObject *self, PyObject *args)
if ( EVEN(sts))
return set_error(sts);
if (!isobjectvect[i]) {
sevcli_get_itemdata( &sts, pwrrt_scctx, oid, anamevect[i], from, to, maxrows, &ttbuf,
(void **)&vbuf, &rows, &vtype, &vsize);
......@@ -3633,7 +3704,7 @@ static PyObject *pwrrt_getSevItemsDataFrame(PyObject *self, PyObject *args)
else if (EVEN(sts))
return set_error(sts);
/* Create data rows for panda with interpolation */
/* Create data rows for pandas with interpolation */
tbuf = malloc(rows * sizeof(float));
for ( j = 0; j < rows; j++) {
......@@ -3646,10 +3717,10 @@ static PyObject *pwrrt_getSevItemsDataFrame(PyObject *self, PyObject *args)
for ( j = 0; j < valcnt; j++) {
if ( j*tdiff < tbuf[0])
vvect[i][j] = vbuf[0];
else if ( j*tdiff > tbuf[rows - 1])
else if ( j*tdiff >= tbuf[rows - 1])
vvect[i][j] = vbuf[rows-1];
else {
while( tbuf[k] <= j*tdiff)
while( tbuf[k] <= j*tdiff && k < rows - 1)
k++;
vvect[i][j] = vbuf[k-1] + (vbuf[k] - vbuf[k-1])/(tbuf[k] - tbuf[k-1]) * (j*tdiff - tbuf[k-1]);
}
......@@ -3701,12 +3772,12 @@ static PyObject *pwrrt_getSevItemsDataFrame(PyObject *self, PyObject *args)
vp1 = (float *)(((char*)vbuf) + lineoffs);
vvect[l][j] = *vp1;
}
else if ( j*tdiff > tbuf[rows - 1]) {
else if ( j*tdiff >=tbuf[rows - 1]) {
vp1 = (float *)(((char*)vbuf) + (rows - 1)*linesize + lineoffs);
vvect[l][j] = *vp1;
}
else {
while( tbuf[k] <= j*tdiff)
while( tbuf[k] <= j*tdiff && k < rows)
k++;
vp1 = (float *)(((char *)vbuf) + (k - 1)*linesize + lineoffs);
vp2 = (float *)(((char *)vp1) + linesize);
......@@ -4109,6 +4180,8 @@ PyMODINIT_FUNC initpwrrt(void)
Py_INCREF(&ApplType);
PyModule_AddObject(m, "Appl", (PyObject *)&ApplType);
PyModule_AddIntConstant(m, "FRAME_OPTIONS_CONDITION", 1);
PyDateTime_IMPORT;
gdh_Init("Python");
......
include $(pwre_dir_symbols)
ifndef variables_mk
include $(pwre_kroot)/tools/bld/src/variables.mk
endif
ifndef rules_mk
include $(pwre_kroot)/tools/bld/src/rules.mk
endif
vpath %.py $(co_source)
source_dirs := $(co_source)
py_sources := $(sort \
$(foreach file, \
$(foreach dir, \
$(source_dirs), \
$(wildcard $(dir)/*.py) \
), $(notdir $(file)) \
) \
)
png_sources := $(sort \
$(foreach file, \
$(foreach dir, \
$(source_dirs), \
$(wildcard $(dir)/*.png) \
), $(notdir $(file)) \
) \
)
export_py := $(patsubst %.py, $(exe_dir)/%.py, $(py_sources))
export_png := $(patsubst %.png, $(exe_dir)/%.png, $(png_sources))
clean_py := $(patsubst %.py, clean_%.py, $(py_sources))
clean_png := $(patsubst %.png, clean_%.png, $(png_sources))
.PHONY : all init copy lib exe clean realclean\
$(clean_py)
all : init copy | silent
init : silent
copy : $(export_py) $(export_png) | silent
lib : silent
exe : silent
clean :
realclean : clean $(clean_py) $(clean_png)
silent :
@ :
$(export_py) : $(exe_dir)/%.py : %.py
@ echo "Exporting $< ..."
@ $(cp) $(cpflags) $(source) $(target)
$(export_png) : $(exe_dir)/%.png : %.png
@ echo "Exporting $< ..."
@ $(cp) $(cpflags) $(source) $(target)
$(clean_py) : clean_%.py : %.py
@ rm $(exe_dir)/$*.py
$(clean_png) : clean_%.png : %.png
@ rm $(exe_dir)/$*.png
#
# ProviewR Open Source Process Control.
# Copyright (C) 2005-2019 SSAB EMEA AB.
#
# This file is part of ProviewR.
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation, either version 2 of
# the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with ProviewR. If not, see <http://www.gnu.org/licenses/>
#
# Linking ProviewR statically or dynamically with other modules is
# making a combined work based on ProviewR. Thus, the terms and
# conditions of the GNU General Public License cover the whole
# combination.
#
# In addition, as a special exception, the copyright holders of
# ProviewR give you permission to, from the build function in the
# ProviewR Configurator, combine ProviewR with modules generated by the
# ProviewR PLC Editor to a PLC program, regardless of the license
# terms of these modules. You may copy and distribute the resulting
# combined work under the terms of your choice, provided that every
# copy of the combined work is accompanied by a complete copy of
# the source code of ProviewR (the version used to produce the
# combined work), being distributed under the terms of the GNU
# General Public License plus this exception.
#
import pwrrt
import datetime
class DSup:
"""DSup class, handling of a DSupComp object.
"""
def __init__(self, name):
self.name = name
a = pwrrt.attribute(self.name + '.DetectCheck')
if a.value():
self.active = False
else:
self.active = True
def setDetect(self):
"""Set alarm detect."""
a = pwrrt.attribute(self.name + '.DetectCheck')
if a.value():
a = pwrrt.attribute(self.name + '.DetectTime')
a.setValue(datetime.datetime.now().strftime('%d-%b-%Y %H:%M:%S'))
a = pwrrt.attribute(self.name + '.DetectSend')
a.setValue(1)
a = pwrrt.attribute(self.name + '.DetectCheck')
a.setValue(0)
a = pwrrt.attribute(self.name + '.ReturnCheck')
a.setValue(1)
self.active = True
def setReturn(self):
"""Set alarm return."""
a = pwrrt.attribute(self.name + '.ReturnCheck')
if a.value():
a = pwrrt.attribute(self.name + '.ReturnTime')
a.setValue(datetime.datetime.now().strftime('%d-%b-%Y %H:%M:%S'))
a = pwrrt.attribute(self.name + '.ReturnSend')
a.setValue(1)
a = pwrrt.attribute(self.name + '.ReturnCheck')
a.setValue(0)
a = pwrrt.attribute(self.name + '.DetectCheck')
a.setValue(1)
self.active = False
#!/usr/bin/python
#
# ProviewR Open Source Process Control.
# Copyright (C) 2005-2019 SSAB EMEA AB.
#
# This file is part of ProviewR.
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation, either version 2 of
# the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with ProviewR. If not, see <http://www.gnu.org/licenses/>
#
# Linking ProviewR statically or dynamically with other modules is
# making a combined work based on ProviewR. Thus, the terms and
# conditions of the GNU General Public License cover the whole
# combination.
#
# In addition, as a special exception, the copyright holders of
# ProviewR give you permission to, from the build function in the
# ProviewR Configurator, combine ProviewR with modules generated by the
# ProviewR PLC Editor to a PLC program, regardless of the license
# terms of these modules. You may copy and distribute the resulting
# combined work under the terms of your choice, provided that every
# copy of the combined work is accompanied by a complete copy of
# the source code of ProviewR (the version used to produce the
# combined work), being distributed under the terms of the GNU
# General Public License plus this exception.
#
# Maintenance supervision server
import pandas as pd
from sklearn.linear_model import LinearRegression
from sklearn.metrics import r2_score
from scipy.interpolate import interp1d
import sys
import math
import time
import datetime
import getopt
import os
import pwrrt
import co
import rt
from rt_mva import *
from rt_mva_msg import *
class SupObj:
def __init__(self, sup):
global scantime
self.sup = sup
self.name = sup.name()
self.sts = 0
self.limitsts = [None] * 10
aname = sup.fullName() + '.ScanTime'
a = pwrrt.attribute(aname)
self.scantime = a.value()
self.cnt = 0
self.interval = self.scantime/scantime
self.dsup = []
i = 0
while i < 10:
dsup = rt.DSup(sup.fullName() + '.Limits[' + str(i) + '].Sup')
self.dsup.append(dsup)
i += 1
def setSts(self, sts):
if self.sts != sts:
self.sts = sts
a = pwrrt.attribute(self.sup.fullName() + '.Status')
a.setValue(sts)
def evenSts(self):
return (self.sts & 1) == 0
def oddSts(self):
return (self.sts & 1) != 0
def setLimitSts(self, idx, sts):
if self.limitsts[idx] != sts:
self.limitsts[idx] = sts
a = pwrrt.attribute(self.sup.fullName() + '.Limits[' + str(idx) + '].Status')
a.setValue(sts)
#
# Open function, backcall from application
#
def open_cb():
global olist
pwrrt.login('pwrp', 'pwrp')
olist = []
cid = pwrrt.Cid('LinRegSup')
for attr in cid.attrObjects():
o = SupObj(attr)
olist.append(o)
o.setSts(MVA__NORMAL)
#
# Close function, backcall from application
#
def close_cb():
print 'Closing down'
#
# Scan function, backcall from application
#
def scan_cb():
global olist
for o in olist:
if o.cnt < o.interval:
o.cnt += 1
continue
o.cnt = 0
process(o)
#
# Handling of a LinRegSup object
#
def process(o):
if o.evenSts() and o.sts != MVA__STDLOW and o.sts != MVA__SCORELOW and \
o.sts != MVA__SERVERTIMEOUT and o.sts != MVA__SERVERREAD:
return
a = pwrrt.attribute(o.sup.fullName() + '.Server')
server = a.value()
a = pwrrt.attribute(o.sup.fullName() + '.FormulaFile')
formulafile = co.translateFilename(a.value())
a = pwrrt.attribute(o.sup.fullName() + '.MeasuringTime')
measuringtime = a.value()
a = pwrrt.attribute(o.sup.fullName() + '.PointInterval')
pointinterval = a.value()
a = pwrrt.attribute(o.sup.fullName() + '.MaxNoOfPoints')
maxnoofpoints = a.value()
a = pwrrt.attribute(o.sup.fullName() + '.StdDeviationMinLimit')
stdmin = a.value()
a = pwrrt.attribute(o.sup.fullName() + '.ScoreMinLimit')
scoremin = a.value()
a = pwrrt.attribute(o.sup.fullName() + '.CondAttr')
condattr = a.value().strip()
i = 0
options = 0
dataoid = []
dataattr = []
dataname = []
origcol = ['Time']
datacol = []
isobject = []
# If condition attribute, insert attribute first in list
if condattr != '':
options = pwrrt.FRAME_OPTIONS_CONDITION
idx = condattr.find('.')
dataoid.append(condattr[:idx])
dataattr.append(condattr[idx+1:])
isobject.append(False)
# Insert other attributes
while i < 10:
a = pwrrt.attribute(o.sup.fullName() + '.Attributes[' + str(i) + ']')
attr = a.value().strip()
if attr == '':
break;
idx = attr.find('.')
dataname.append(attr)
origcol.append(attr)
dataoid.append(attr[:idx])
dataattr.append(attr[idx+1:])
datacol.append('A' + str(i+1))
isobject.append(False)
i += 1
# Fetch data from server
try:
result = pwrrt.getSevItemsDataFrame( server, dataoid, dataattr, isobject,
measuringtime, 'now', pointinterval, maxnoofpoints, '-', options)
except RuntimeError as e:
print str(e), e
if str(e) == '%QCOM-E-TMO, time out':
o.setSts(MVA__SERVERTIMEOUT)
else:
o.setSts(MVA__SERVERREAD)
return
if result == None:
o.setSts(MVA__NODATA)
return
sts = MVA__NORMAL
origdata = pd.DataFrame(data=result)
origdata.columns = origcol
wf = WData()
wf.set_data(origdata, datacol, dataname)
# Check standard deviation
if stdmin > 0:
std = wf.wd[datacol[0]].std()
a = pwrrt.attribute(o.sup.fullName() + '.CurrentStdDeviation')
a.setValue(std)
if std < stdmin:
o.setSts(MVA__STDLOW)
a = pwrrt.attribute(o.sup.fullName() + '.CurrentScore')
a.setValue(0.0)
return
try:
wf.apply_formula(formulafile)
except co.Error as e:
o.setSts(e.status)
return
# Fit linear regression model
slr = LinearRegression()
reg = slr.fit(wf.wd.iloc[:,1:], wf.wd.iloc[:,0:1])
#print "coef ", slr.coef_
#print "intercept ", slr.intercept_
# Check score
if scoremin > 0:
pred = slr.predict(wf.wd.iloc[:,1:])
score = r2_score(pred, wf.wd.iloc[:,0:1])
a = pwrrt.attribute(o.sup.fullName() + '.CurrentScore')
a.setValue(score)
if score < scoremin:
sts = MVA__SCORELOW
if (sts & 1) != 0:
a = pwrrt.attribute(o.sup.fullName() + '.LastScan')
a.setValue(datetime.datetime.now().strftime('%d-%b-%Y %H:%M:%S'))
# Check coefficient limits
i = 0
while i < len(slr.coef_[0]):
a = pwrrt.attribute(o.sup.fullName() + '.Limits[' + str(i) + '].InitCoef')
initcoef = a.value()
a = pwrrt.attribute(o.sup.fullName() + '.Limits[' + str(i) + '].LastCoef')
a.setValue(slr.coef_[0][i])
a = pwrrt.attribute(o.sup.fullName() + '.Limits[' + str(i) + '].Deviation')
a.setValue(slr.coef_[0][i] - initcoef)
a = pwrrt.attribute(o.sup.fullName() + '.Limits[' + str(i) + '].MinLimit')
minlimit = a.value()
a = pwrrt.attribute(o.sup.fullName() + '.Limits[' + str(i) + '].MaxLimit')
maxlimit = a.value()
if (sts & 1) != 0:
if slr.coef_[0][i] >= maxlimit or slr.coef_[0][i] <= minlimit:
o.setLimitSts(i, MVA__COEFLIMIT)
if not o.dsup[i].active:
o.dsup[i].setDetect()
else:
o.setLimitSts(i, MVA__COEF)
if o.dsup[i].active:
o.dsup[i].setReturn()
i += 1
o.setSts(sts)
# Get server object
cid = pwrrt.Cid('MaintSupServer')
server = None
for o in cid.objects():
server = o
break
if server == None:
exit()
a = o.attribute('ScanTime')
scantime = a.value()
# Create application
a = pwrrt.application('MaintSupServer',o.fullName(), 29, scantime,
open_cb, scan_cb, close_cb, None)
a.mainloop()
#
# ProviewR Open Source Process Control.
# Copyright (C) 2005-2019 SSAB EMEA AB.
#
# This file is part of ProviewR.
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation, either version 2 of
# the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with ProviewR. If not, see <http://www.gnu.org/licenses/>
#
# Linking ProviewR statically or dynamically with other modules is
# making a combined work based on ProviewR. Thus, the terms and
# conditions of the GNU General Public License cover the whole
# combination.
#
# In addition, as a special exception, the copyright holders of
# ProviewR give you permission to, from the build function in the
# ProviewR Configurator, combine ProviewR with modules generated by the
# ProviewR PLC Editor to a PLC program, regardless of the license
# terms of these modules. You may copy and distribute the resulting
# combined work under the terms of your choice, provided that every
# copy of the combined work is accompanied by a complete copy of
# the source code of ProviewR (the version used to produce the
# combined work), being distributed under the terms of the GNU
# General Public License plus this exception.
#
import os
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
import seaborn as sns
from scipy.interpolate import interp1d
import co
from rt_mva_msg import *
# adapted from http://matplotlib.org/examples/specialty_plots/hinton_demo.html
def hinton(matrix, max_weight=None, ax=None):
"""Draw Hinton diagram for visualizing a weight matrix."""
ax = ax if ax is not None else plt.gca()
if not max_weight:
max_weight = 2**np.ceil(np.log(np.abs(matrix).max())/np.log(2))
ax.patch.set_facecolor('lightgray')
ax.set_aspect('equal', 'box')
ax.xaxis.set_major_locator(plt.NullLocator())
ax.yaxis.set_major_locator(plt.NullLocator())
for (x, y), w in np.ndenumerate(matrix):
color = 'red' if w > 0 else 'blue'
size = np.sqrt(np.abs(w))
if size > 0.98: size = 0.98
rect = plt.Rectangle([x - size / 2, y - size / 2], size, size,
facecolor=color, edgecolor=color)
ax.add_patch(rect)
nticks = matrix.shape[0]
ax.xaxis.tick_top()
ax.set_xticks(range(nticks))
ax.set_xticklabels(list(matrix.columns), rotation=90)
ax.set_yticks(range(nticks))
ax.set_yticklabels(matrix.columns)
ax.grid(False)
ax.autoscale_view()
ax.invert_yaxis()
class WData:
"""WData class, container for measuring data.
wd Frame with data except time column
wdtime Frame with time column
wdname Attribute names
wdcol Column names A1, A2 etc
"""
OP_NO = 0
OP_COPY = 1
OP_NORM = 2
OP_SQUARE = 3
OP_SQUAREROOT = 4
OP_EXP = 5
OP_LOG = 6
OP_INTEGRAL = 7
OP_DERIVATE = 8
OP_ADD = 9
OP_SUB = 10
OP_MULTIPLY = 11
OP_DIVIDE = 12
OP_CURVE = 13
OP_CONSTANT = 14
OP_SHIFT = 15
operations = ((OP_NO, 'No'),
(OP_COPY, 'Copy'),
(OP_NORM, 'Norm'),
(OP_SQUARE, 'Square'),
(OP_SQUAREROOT, 'Squareroot'),
(OP_EXP, 'Exp'),
(OP_LOG, 'Log'),
(OP_INTEGRAL, 'Integral'),
(OP_DERIVATE, 'Derivate'),
(OP_ADD, 'Add'),
(OP_SUB, 'Sub'),
(OP_MULTIPLY, 'Multiply'),
(OP_DIVIDE, 'Divide'),
(OP_CURVE, 'Curve'),
(OP_CONSTANT, 'Const'),
(OP_SHIFT, 'Shift'))
def __init__(self):
self.set = False
self.name = ''
self.wd = None
self.wdname = None
self.wdcol = None
self.wdtime = None
self.origdata = None
self.origcol = None
self.add_replace = 0
def empty(self):
"""Returns true is no data is set yet."""
return not self.set
def rows(self):
"""Number of rows in wd."""
if self.empty():
return 0
return self.wd.shape[0]
def columns(self):
"""Number of columns in wd."""
if self.empty():
return 0
return self.wd.shape[1]
def set_data(self, data, col, name):
"""Insert new data."""
self.origdata = data
self.origcol = self.origdata.columns
self.wd = self.origdata.loc[:,self.origcol[1]:]
self.wdtime = self.origdata.loc[:,self.origcol[0]]
self.wd.columns = col
self.wdcol = col
self.wdname = name
self.set = True
def set_add_replace(self, ar):
self.add_replace = ar;
def read_file(self, file):
self.origdata = pd.read_csv(file, parse_dates=[0])
self.origcol = self.origdata.columns
self.wd = self.origdata.loc[:,self.origcol[1]:]
self.wdtime = self.origdata.loc[:,self.origcol[0]]
self.set = True
self.wdcol = []
self.wdname = []
i = 0
while i < self.columns():
colname = "A" + str(i+1)
self.wdcol.append(colname)
self.wdname.append(self.origcol[i+1])
i += 1
self.wd.columns = self.wdcol
def save_orig(self, file):
self.origdata.to_csv(file, index=False)
def save_wd(self, file):
save = self.wd
save.columns = self.wdname
save.insert(0, 'Time', self.wdtime)
save.to_csv(file, index=False)
def set_name(self, name):
self.name = name
def plot(self, mask):
if self.empty():
return
cols = []
i = 0;
for name in self.wdname:
if mask[i]:
cols.append(self.wdcol[i])
i += 1
if len(cols) != 0:
plotdata = self.wd[cols]
else:
plotdata = self.wd
ax = plotdata.plot()
ax.legend(loc='center left', bbox_to_anchor=(1, 0.5));
ax.get_figure().canvas.set_window_title('Plot ' + self.name)
plt.show()
def indplot(self, mask):
if self.empty():
return
cols = []
i = 0;
ccnt = 0
for name in self.wdname:
if mask[i]:
cols.append(self.wdcol[i])
ccnt += 1
i += 1
if len(cols) != 0:
plotdata = self.wd[cols]
else:
plotdata = self.wd
ccnt = self.columns()
cols = self.wdcol
layo = ccnt * 100 + 10
j = 0
fig = plt.figure()
fig.canvas.set_window_title('Plot ' + self.name)
while j < ccnt:
plt.subplot(layo+j+1)
plt.plot(self.wdtime, plotdata[cols[j]])
plt.legend(loc='center left', bbox_to_anchor=(1, 0.5));
j = j + 1
plt.show()
def scatterplot(self, mask):
if self.empty():
return
cols = []
i = 0;
for name in self.wdname:
if mask[i]:
cols.append(self.wdcol[i])
i += 1
if len(cols) != 0:
plotdata = self.wd[cols]
else:
plotdata = self.wd
ax = plotdata.plot()
ax.clear()
pd.tools.plotting.scatter_matrix(plotdata, diagonal="kde", ax=ax)
ax.get_figure().canvas.set_window_title('Scatterplot ' + self.name)
plt.tight_layout()
plt.show()
def correlation_plot(self, mask):
if self.empty():
return
cols = []
i = 0;
for name in self.wdname:
if mask[i]:
cols.append(self.wdcol[i])
i += 1
if len(cols) != 0:
plotdata = self.wd[cols]
else:
plotdata = self.wd
corrmat = plotdata.corr()
fig = plt.figure()
fig.canvas.set_window_title('Correlation Plot ' + self.name)
hinton(corrmat)
plt.show()
def correlation2_plot(self, mask):
if self.empty():
return
cols = []
i = 0;
for name in self.wdname:
if mask[i]:
cols.append(self.wdcol[i])
i += 1
if len(cols) != 0:
plotdata = self.wd[cols]
else:
plotdata = self.wd
corrmat = plotdata.corr()
fig = plt.figure()
fig.canvas.set_window_title('Correlation Heatmap ' + self.name)
sns.heatmap(corrmat, vmin=-1., vmax=1., square=False, cmap='RdBu_r').xaxis.tick_top()
plt.show()
def regression_plot(self, mask):
if self.empty():
return
cols = []
i = 0;
for name in self.wdname:
if mask[i]:
cols.append(self.wdcol[i])
i += 1
if len(cols) != 2:
raise co.Error(0, 'Select two attributes')
plotdata = self.wd[cols]
fig = plt.figure()
fig.canvas.set_window_title('Linear Regression Plot ' + self.name)
sns.regplot(x=cols[0],y=cols[1],data=plotdata)
plt.show()
def revert(self):
if self.empty():
return
self.wd = self.origdata.loc[:,self.origcol[1]:]
self.wdtime = self.origdata.loc[:,self.origcol[0]]
self.wdcol = []
self.wdname = []
i = 0
while i < self.columns():
colname = "A" + str(i+1)
self.wdcol.append(colname)
self.wdname.append(self.origcol[i+1])
i += 1
self.wd.columns = self.wdcol
def moveup(self, mask):
cix = []
i = 0;
for name in self.wdname:
if mask[i]:
cix.append(i)
i += 1
if len(cix) != 1:
raise co.Error(0, "Select one attribute")
if cix[0] == 0:
raise co.Error(0, "Can't move top object")
cols = list(self.wd)
cols[cix[0]-1],cols[cix[0]] = cols[cix[0]],cols[cix[0]-1]
self.wdname[cix[0]-1],self.wdname[cix[0]] = self.wdname[cix[0]],self.wdname[cix[0]-1]
self.wd = self.wd.ix[:,cols]
self.wd.columns = self.wdcol
def movedown(self, mask):
cix = []
i = 0;
for name in self.wdname:
if mask[i]:
cix.append(i)
i += 1
if len(cix) != 1:
raise co.Error(0, "Select one attributes")
return
if cix[0] == len(self.wdname) - 1:
raise co.Error(0, "Can't move bottom object")
return
cols = list(self.wd)
cols[cix[0]],cols[cix[0]+1] = cols[cix[0]+1],cols[cix[0]]
self.wdname[cix[0]],self.wdname[cix[0]+1] = self.wdname[cix[0]+1],self.wdname[cix[0]]
self.wd = self.wd.ix[:,cols]
self.wd.columns = self.wdcol
def delete_columns(self, mask):
i = 0
new_wdcol = []
new_wdname = []
cols = []
for name in self.wdname:
if not mask[i]:
new_wdcol.append(self.wdcol[i])
new_wdname.append(self.wdname[i])
i += 1
if len(new_wdname) == len(self.wdname):
raise co.Error(0, "No columns selected")
if len(new_wdcol) != 0:
self.wd = self.wd[new_wdcol]
self.wdcol = new_wdcol
self.wdname = new_wdname
i = 0
while i < self.columns():
colname = "A" + str(i+1)
self.wdcol[i] = colname
i += 1
self.wd.columns = self.wdcol
def clip(self, minvalue, maxvalue):
self.wd = self.wd[minvalue:maxvalue]
self.wdtime = self.wdtime[minvalue:maxvalue]
self.wd = self.wd.reset_index(drop=True)
self.wdtime = self.wdtime.reset_index(drop=True)
def split(self, value):
wdata = WData()
wdata.origdata = self.origdata
wdata.origcol = self.origcol
wdata.wd = self.wd[value:]
wdata.wdtime = self.wdtime[value:]
wdata.wd = wdata.wd.reset_index(drop=True)
wdata.wdtime = wdata.wdtime.reset_index(drop=True)
wdata.wdcol = self.wdcol[:]
wdata.wdname = self.wdname[:]
wdata.set = True
self.wd = self.wd[:value]
self.wdtime = self.wdtime[:value]
return wdata
def concat(self, ccwd, ccname, ccwdtime):
# Remove superfluous columns
i = 0
cccol = []
new_ccname = []
for wname in self.wdname:
found = False
for cname in ccname:
if cname == wname:
found = True
cccol.append(self.wdcol[i])
new_ccname.append(cname)
break
if not found:
raise co.Error(0, "Columns don't match")
i += 1
ccwd = ccwd[cccol]
t1 = self.wdtime[len(self.wdtime)-1] + (self.wdtime[len(self.wdtime)-1] - self.wdtime[len(self.wdtime)-2])
t2 = ccwdtime[0]
ccwdtime -= t2-t1
self.wd = pd.concat([self.wd, ccwd])
self.wdtime = pd.concat([self.wdtime, ccwdtime])
self.wd = self.wd.reset_index(drop=True)
self.wdtime = self.wdtime.reset_index(drop=True)
def concat_file(self, file):
ccdata = pd.read_csv(file, parse_dates=[0])
ccname = ccdata.columns
ccwd = ccdata.loc[:,ccname[1]:]
ccwdtime = ccdata.loc[:,ccname[0]]
# Remove superfluous columns
i = 0
cccol = []
new_ccname = []
for wname in self.wdname:
found = False
for cname in ccname:
if cname == wname:
found = True
cccol.append(self.wdcol[i])
new_ccname.append(cname)
break
if not found:
raise co.Error(0, "Columns don't match")
i += 1
ccwd = ccwd[new_ccname]
ccwd.columns = self.wdcol
t1 = self.wdtime[len(self.wdtime)-1] + (self.wdtime[len(self.wdtime)-1] - self.wdtime[len(self.wdtime)-2])
t2 = ccwdtime[0]
ccwdtime -= t2-t1
self.wd = pd.concat([self.wd, ccwd])
self.wdtime = pd.concat([self.wdtime, ccwdtime])
self.wd = self.wd.reset_index(drop=True)
self.wdtime = self.wdtime.reset_index(drop=True)
def multiply(self, value):
ccwd = self.wd.copy()
ccname = self.wdname
ccwdtime = self.wdtime.copy()
i = 0
while i < value - 1:
self.concat(ccwd, ccname, ccwdtime)
i += 1
def parse_arg(self, arg):
level = 0
found = False
idx = 0
a1 = ""
a2 = ""
for c in arg:
if c == '(':
level += 1
elif c == ')':
level -= 1
elif c == ',' and level == 0:
found = True
break
idx += 1
if found:
a1 = arg[0:idx]
a2 = arg[idx+1:]
else:
a1 = arg
return a1, a2
def parse_op(self, str, opv, par1v, par2v):
idx = str.find('(')
if idx == -1:
op = 'No'
return self.OP_NO
else:
ridx = str.rfind(')')
if ridx == -1:
raise co.Error(0, "Syntax error, parenthesis mismatch " + str(idx))
arg = str[idx+1:ridx]
op = str[0:idx]
found = 0
for oper in self.operations:
if oper[1] == op:
found = 1
a1, a2 = self.parse_arg(arg)
opv.append(oper[0])
par1v.append(a1)
par2v.append(a2)
self.parse_op(a1, opv, par1v, par2v)
if a2 != "":
self.parse_op(a2, opv, par1v, par2v)
return 1
if not found:
raise co.Error(0, "Syntax error, unknown operator " + str(op))
def save_formula(self, file):
fp = open(file, 'w')
for name in self.wdname:
fp.write(name + "\n")
fp.close()
def apply_formula(self, file):
if not os.path.exists(file):
raise co.Error(MVA__NOFRM, 'Unable to find formula file')
formulas = []
fp = open(file, 'r')
for name in fp:
formulas.append(name.rstrip())
fp.close()
for formula in formulas:
opv = []
par1v = []
par2v = []
sts = self.parse_op(formula, opv, par1v, par2v)
i = len(opv) - 1
for op in reversed(opv):
self.exec_op(op, par1v[i], par2v[i])
i -= 1
self.formula_trim(formulas)
def formula_trim(self, formulas):
keep = [False] * len(self.wdname)
kept = [False] * len(formulas)
i = 0
for name in self.wdname:
j = 0
for formula in formulas:
if name == formula and not kept[j]:
keep[i] = True
kept[j] = True
break
j += 1
i += 1
i = 0
new_wdcol = []
new_wdname = []
cols = []
for name in self.wdname:
if keep[i]:
new_wdcol.append(self.wdcol[i])
new_wdname.append(self.wdname[i])
i += 1
if len(new_wdname) == len(self.wdname):
return
if len(new_wdcol) != 0:
self.wd = self.wd[new_wdcol]
self.wdcol = new_wdcol
self.wdname = new_wdname
i = 0
while i < self.columns():
colname = "A" + str(i+1)
self.wdcol[i] = colname
i += 1
self.wd.columns = self.wdcol
def exec_op(self, op, par1, par2):
arg1 = None
found1 = False
found2 = False
i1 = 0
i2 = 0
for name in self.wdname:
if name == par1:
found1 = True
break
i1 += 1
if op == self.OP_SHIFT:
arg1 = par2
elif op == self.OP_CURVE:
arg1 = par2
elif op == self.OP_CONSTANT:
arg1 = par1
i1 = -1
elif par2 != "":
for name in self.wdname:
if name == par2:
found2 = True
break
i2 += 1
self.op_exec(op, i1, i2, arg1)
def op_exec(self, op, cix1, cix2, arg1):
if cix1 != -1:
ser = pd.Series(self.wd[self.wdcol[cix1]])
if op == self.OP_COPY:
colname = self.wdname[cix1]
elif op == self.OP_NORM:
mean = ser.mean()
ser -= mean
colname = "Norm(" + self.wdname[cix1] + ")"
elif op == self.OP_SQUARE:
ser = np.square(ser)
colname = "Square(" + self.wdname[cix1] + ")"
elif op == self.OP_SQUAREROOT:
ser = np.sqrt(ser)
colname = "Sqrt(" + self.wdname[cix1] + ")"
elif op == self.OP_EXP:
ser = np.exp(ser)
colname = "Exp(" + self.wdname[cix1] + ")"
elif op == self.OP_LOG:
ser = np.log(ser)
colname = "Log(" + self.wdname[cix1] + ")"
elif op == self.OP_INTEGRAL:
igl = []
acc = 0
i = 0
dmean = ser.mean()
for val in ser.values:
igl.append(acc)
if i != len(ser) - 1:
dt = self.wdtime[i+1]-self.wdtime[i]
else:
dt = old_dt
acc += val * (dt.seconds + dt.microseconds/1000000.0)
i += 1
old_dt = dt
ser = pd.Series(igl)
colname = "Integral(" + self.wdname[cix1] + ")"
elif op == self.OP_DERIVATE:
der = []
old_val = 0
i = 0
for val in ser.values:
if i != len(ser) - 1:
dt = self.wdtime[i+1]-self.wdtime[i]
else:
dt = old_dt
der.append((val - old_val)/(dt.seconds + dt.microseconds/1000000.0))
i += 1
old_dt = dt
old_val = val
ser = pd.Series(der)
colname = "Derivate(" + self.wdname[cix1] + ")"
elif op == self.OP_ADD:
add = []
i = 0
for val in ser.values:
val2 = self.wd[self.wdcol[cix2]][i]
add.append(val + val2)
i += 1
ser = pd.Series(add)
colname = "Add(" + self.wdname[cix1] + "," + self.wdname[cix2] + ")"
elif op == self.OP_SUB:
sub = []
i = 0
for val in ser.values:
val2 = self.wd[self.wdcol[cix2]][i]
sub.append(val - val2)
i += 1
ser = pd.Series(sub)
colname = "Sub(" + self.wdname[cix1] + "," + self.wdname[cix2] + ")"
elif op == self.OP_MULTIPLY:
mul = []
i = 0
for val in ser.values:
val2 = self.wd[self.wdcol[cix2]][i]
mul.append(val * val2)
i += 1
ser = pd.Series(mul)
colname = "Multiply(" + self.wdname[cix1] + "," + self.wdname[cix2] + ")"
elif op == self.OP_DIVIDE:
div = []
i = 0
for val in ser.values:
cval = self.wd[self.wdcol[cix2]][i]
div.append(val/cval if cval else 0)
i += 1
ser = pd.Series(div)
colname = "Divide(" + self.wdname[cix1] + "," + self.wdname[cix2] + ")"
elif op == self.OP_CURVE:
if arg1 == '':
raise co.Error(0, 'No curve file is supplied')
fname = co.translateFilename(arg1)
curveframe = pd.read_csv(fname, header=None)
fcurve = interp1d(curveframe.loc[:,0],curveframe.loc[:,1], fill_value='extrapolate')
curve = fcurve(ser.values)
ser = pd.Series(curve)
colname = "Curve(" + self.wdname[cix1] + "," + arg1 + ")"
elif op == self.OP_CONSTANT:
value = float(arg1)
const = [value] * len(self.wd)
ser = pd.Series(const)
colname = "Const(" + str(value) + ")"
elif op == self.OP_SHIFT:
shiftvalue = int(arg1)
shift = []
i = 0
for val in ser.values:
if shiftvalue > 0:
if i < shiftvalue:
val = 0
else:
val = ser.values[i-shiftvalue]
else:
if i - shiftvalue >= len(self.wd):
val = 0
else:
val = ser.values[i-shiftvalue]
shift.append(val)
i += 1
ser = pd.Series(shift)
colname = "Shift(" + self.wdname[cix1] + "," + str(shiftvalue) + ")"
else:
raise co.Error(0, 'No action is selected')
idx = len(self.wdname)
if self.add_replace == 1:
self.wd[self.wdcol[cix1]] = ser
self.wdname[cix1] = colname
else:
self.wdname.append(colname)
colname = "A" + str(idx+1)
self.wdcol.append(colname)
self.wd[self.wdcol[idx]] = ser
......@@ -117,6 +117,7 @@ typedef enum {
errh_eAnix_videomgm = 26,
errh_eAnix_redcom = 27,
errh_eAnix_websocketserver = 28,
errh_eAnix_maintsupserver = 29,
errh_eAnix_plc1 = 41,
errh_eAnix_plc2 = 42,
errh_eAnix_plc3 = 43,
......
!
! ProviewR Open Source Process Control.
! Copyright (C) 2005-2019 SSAB EMEA AB.
!
! This file is part of ProviewR.
!
! This program is free software; you can redistribute it and/or
! modify it under the terms of the GNU General Public License as
! published by the Free Software Foundation, either version 2 of
! the License, or (at your option) any later version.
!
! This program is distributed in the hope that it will be useful
! but WITHOUT ANY WARRANTY; without even the implied warranty of
! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
! GNU General Public License for more details.
!
! You should have received a copy of the GNU General Public License
! along with ProviewR. If not, see <http://www.gnu.org/licenses/>
!
! Linking ProviewR statically or dynamically with other modules is
! making a combined work based on ProviewR. Thus, the terms and
! conditions of the GNU General Public License cover the whole
! combination.
!
! In addition, as a special exception, the copyright holders of
! ProviewR give you permission to, from the build function in the
! ProviewR Configurator, combine ProviewR with modules generated by the
! ProviewR PLC Editor to a PLC program, regardless of the license
! terms of these modules. You may copy and distribute the resulting
! combined work under the terms of your choice, provided that every
! copy of the combined work is accompanied by a complete copy of
! the source code of ProviewR (the version used to produce the
! combined work), being distributed under the terms of the GNU
! General Public License plus this exception.
!
.facility MVA,28 /prefix = MVA__ !
success <successful completion> /succ
normal <Normal operating state> /info
nodata <No data received in requested interval> /info
nofrm <Formula file not found> /error
coeflimit <Coefficient limit exceeded> /error
coef <Coefficient in range> /info
stdlow <Low value of standard deviation> /error
scorelow <Low value of score> /error
servertimeout <Server timeout> /error
serverread <Error when reading data from server> /error
......@@ -17,6 +17,7 @@
25 SEV
26 SIM
27 REDU
28 MVA
50 HD
100 CDH
101 NDC
......
!
! ProviewR Open Source Process Control.
! Copyright (C) 2005-2019 SSAB EMEA AB.
!
! This file is part of ProviewR.
!
! This program is free software; you can redistribute it and/or
! modify it under the terms of the GNU General Public License as
! published by the Free Software Foundation, either version 2 of
! the License, or (at your option) any later version.
!
! This program is distributed in the hope that it will be useful
! but WITHOUT ANY WARRANTY; without even the implied warranty of
! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
! GNU General Public License for more details.
!
! You should have received a copy of the GNU General Public License
! along with ProviewR. If not, see <http://www.gnu.org/licenses/>
!
! Linking ProviewR statically or dynamically with other modules is
! making a combined work based on ProviewR. Thus, the terms and
! conditions of the GNU General Public License cover the whole
! combination.
!
! In addition, as a special exception, the copyright holders of
! ProviewR give you permission to, from the build function in the
! ProviewR Configurator, combine ProviewR with modules generated by the
! ProviewR PLC Editor to a PLC program, regardless of the license
! terms of these modules. You may copy and distribute the resulting
! combined work under the terms of your choice, provided that every
! copy of the combined work is accompanied by a complete copy of
! the source code of ProviewR (the version used to produce the
! combined work), being distributed under the terms of the GNU
! General Public License plus this exception.
!
! pwrb_c_a_linregsuplimit.wb_load -- Internal limit class for LinRegSup.
!
SObject pwrb:Class
!/**
! @Version 1.0
! @Group Supervision,NodeConfiguration
! @Summary
! Internal limit class for LinRegSup.
!
! @b See Also
! @classlink LinRegSup pwrb_linregsup.html
!*/
Object LinRegSupLimit $ClassDef 712
Body SysBody
Attr Editor = pwr_eEditor_AttrEd
Attr Method = pwr_eMethod_Standard
EndBody
Object RtBody $ObjBodyDef 1
Body SysBody
Attr StructName = "LinRegSupLimit"
EndBody
!/**
! Optional description.
!*/
Object Description $Attribute 1
Body SysBody
Attr TypeRef = "pwrs:Type-$String80"
EndBody
EndObject
!/**
! Disable limit supervision.
!*/
Object Disable $Attribute 2
Body SysBody
Attr TypeRef = "pwrs:Type-$Boolean"
EndBody
EndObject
!/**
! Initial coefficient value.
!*/
Object InitCoef $Attribute 3
Body SysBody
Attr TypeRef = "pwrs:Type-$Float32"
EndBody
EndObject
!/**
! Last coefficient value.
!*/
Object LastCoef $Attribute 4
Body SysBody
Attr Flags |= PWR_MASK_STATE
Attr Flags |= PWR_MASK_NOEDIT
Attr TypeRef = "pwrs:Type-$Float32"
EndBody
EndObject
!/**
! Deviation of last value from initial value.
!*/
Object Deviation $Attribute 5
Body SysBody
Attr Flags |= PWR_MASK_STATE
Attr Flags |= PWR_MASK_NOEDIT
Attr TypeRef = "pwrs:Type-$Float32"
EndBody
EndObject
!/**
! Mininum limit.
! If the last coefficient value is below the MinLimit,
! an alarm message is sent.
!*/
Object MinLimit $Attribute 6
Body SysBody
Attr TypeRef = "pwrs:Type-$Float32"
EndBody
EndObject
!/**
! Maximum limit.
! If the last coefficient value exceeds the MaxLimit,
! an alarm message is sent.
!*/
Object MaxLimit $Attribute 7
Body SysBody
Attr TypeRef = "pwrs:Type-$Float32"
EndBody
EndObject
!/**
! Min coefficient value for display.
!*/
Object MinShow $Attribute 8
Body SysBody
Attr TypeRef = "pwrs:Type-$Float32"
EndBody
EndObject
!/**
! Max coefficient value for display.
!*/
Object MaxShow $Attribute 9
Body SysBody
Attr TypeRef = "pwrs:Type-$Float32"
EndBody
EndObject
!/**
! Number of decimals of coefficient value in display.
!*/
Object NoOfDecimals $Attribute 10
Body SysBody
Attr TypeRef = "pwrs:Type-$UInt32"
EndBody
EndObject
!/**
! Current status of the limit check.
!*/
Object Status $Attribute 11
Body SysBody
Attr Flags |= PWR_MASK_STATE
Attr Flags |= PWR_MASK_NOEDIT
Attr TypeRef = "pwrs:Type-$Status"
EndBody
EndObject
!/**
! DSupComp object for alarm message.
!*/
Object Sup $Attribute 12
Body SysBody
Attr Flags |= PWR_MASK_CLASS
Attr TypeRef = "pwrb:Class-DSupComp"
EndBody
EndObject
EndObject
Object Template LinRegSupLimit
Body RtBody
EndBody
EndObject
EndObject
EndSObject
!
! ProviewR Open Source Process Control.
! Copyright (C) 2005-2019 SSAB EMEA AB.
!
! This file is part of ProviewR.
!
! This program is free software; you can redistribute it and/or
! modify it under the terms of the GNU General Public License as
! published by the Free Software Foundation, either version 2 of
! the License, or (at your option) any later version.
!
! This program is distributed in the hope that it will be useful
! but WITHOUT ANY WARRANTY; without even the implied warranty of
! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
! GNU General Public License for more details.
!
! You should have received a copy of the GNU General Public License
! along with ProviewR. If not, see <http://www.gnu.org/licenses/>
!
! Linking ProviewR statically or dynamically with other modules is
! making a combined work based on ProviewR. Thus, the terms and
! conditions of the GNU General Public License cover the whole
! combination.
!
! In addition, as a special exception, the copyright holders of
! ProviewR give you permission to, from the build function in the
! ProviewR Configurator, combine ProviewR with modules generated by the
! ProviewR PLC Editor to a PLC program, regardless of the license
! terms of these modules. You may copy and distribute the resulting
! combined work under the terms of your choice, provided that every
! copy of the combined work is accompanied by a complete copy of
! the source code of ProviewR (the version used to produce the
! combined work), being distributed under the terms of the GNU
! General Public License plus this exception.
!
! pwrb_c_linregsup.wb_load -- Supervision with linear regression.
!
SObject pwrb:Class
!/**
! @Version 1.0
! @Group Supervision,NodeConfiguration
! @Summary Supervision of process parameters with linear regression.
! Supervision of process parameters with linear regression.
!
! @b See Also
! @classlink MaintSupServer pwrb_maintsupserver.html
!*/
Object LinRegSup $ClassDef 713
Body SysBody
Attr Editor = pwr_eEditor_AttrEd
Attr Method = pwr_eMethod_Standard
EndBody
Object RtBody $ObjBodyDef 1
Body SysBody
Attr StructName = "LinRegSup"
EndBody
Object Description $Attribute 1
Body SysBody
Attr TypeRef = "pwrs:Type-$String80"
EndBody
EndObject
Object Server $Attribute 2
Body SysBody
Attr TypeRef = "pwrs:Type-$String40"
EndBody
EndObject
Object CondAttr $Attribute 3
Body SysBody
Attr TypeRef = "pwrs:Type-$String256"
EndBody
EndObject
Object Attributes $Attribute 4
Body SysBody
Attr Flags |= PWR_MASK_ARRAY
Attr Elements = 10
Attr TypeRef = "pwrs:Type-$String256"
EndBody
EndObject
Object Limits $Attribute 5
Body SysBody
Attr Flags |= PWR_MASK_ARRAY
Attr Flags |= PWR_MASK_CLASS
Attr Elements = 10
Attr TypeRef = "pwrb:Class-LinRegSupLimit"
EndBody
EndObject
Object FormulaFile $Attribute 6
Body SysBody
Attr TypeRef = "pwrs:Type-$String80"
EndBody
EndObject
Object ScanTime $Attribute 7
Body SysBody
Attr TypeRef = "pwrs:Type-$Float32"
EndBody
EndObject
Object MeasuringTime $Attribute 8
Body SysBody
Attr TypeRef = "pwrs:Type-$DeltaTime"
EndBody
EndObject
Object PointInterval $Attribute 9
Body SysBody
Attr TypeRef = "pwrs:Type-$Float32"
EndBody
EndObject
Object MaxNoOfPoints $Attribute 10
Body SysBody
Attr TypeRef = "pwrs:Type-$UInt32"
EndBody
EndObject
Object StdDeviationMinLimit $Attribute 11
Body SysBody
Attr TypeRef = "pwrs:Type-$Float32"
EndBody
EndObject
Object ScoreMinLimit $Attribute 12
Body SysBody
Attr TypeRef = "pwrs:Type-$Float32"
EndBody
EndObject
Object CurrentStdDeviation $Attribute 13
Body SysBody
Attr Flags |= PWR_MASK_STATE
Attr Flags |= PWR_MASK_NOEDIT
Attr TypeRef = "pwrs:Type-$Float32"
EndBody
EndObject
Object CurrentScore $Attribute 14
Body SysBody
Attr Flags |= PWR_MASK_STATE
Attr Flags |= PWR_MASK_NOEDIT
Attr TypeRef = "pwrs:Type-$Float32"
EndBody
EndObject
Object LastScan $Attribute 15
Body SysBody
Attr Flags |= PWR_MASK_STATE
Attr Flags |= PWR_MASK_NOEDIT
Attr TypeRef = "pwrs:Type-$Time"
EndBody
EndObject
Object Status $Attribute 16
Body SysBody
Attr Flags |= PWR_MASK_STATE
Attr Flags |= PWR_MASK_NOEDIT
Attr TypeRef = "pwrs:Type-$Status"
EndBody
EndObject
EndObject
Object Template LinRegSup
Body RtBody
Attr Limits[0].Sup.DetectText = "Deviation detected"
Attr Limits[0].Sup.EventType = 128
Attr Limits[0].Sup.EventPriority = 67
Attr Limits[0].Sup.EventFlags = 7
Attr Limits[0].Sup.Attribute = "pwrb:Class-LinRegSup-Template.Limits[0]"
Attr Limits[0].Sup.CtrlPosition = 1
Attr Limits[0].Sup.LockAttribute = 1
Attr Limits[1].Sup.DetectText = "Deviation detected"
Attr Limits[1].Sup.EventType = 128
Attr Limits[1].Sup.EventPriority = 67
Attr Limits[1].Sup.EventFlags = 7
Attr Limits[1].Sup.Attribute = "pwrb:Class-LinRegSup-Template.Limits[1]"
Attr Limits[1].Sup.CtrlPosition = 1
Attr Limits[1].Sup.LockAttribute = 1
Attr Limits[2].Sup.DetectText = "Deviation detected"
Attr Limits[2].Sup.EventType = 128
Attr Limits[2].Sup.EventPriority = 67
Attr Limits[2].Sup.EventFlags = 7
Attr Limits[2].Sup.Attribute = "pwrb:Class-LinRegSup-Template.Limits[2]"
Attr Limits[2].Sup.CtrlPosition = 1
Attr Limits[3].Sup.DetectText = "Deviation detected"
Attr Limits[3].Sup.EventType = 128
Attr Limits[3].Sup.EventPriority = 67
Attr Limits[3].Sup.EventFlags = 7
Attr Limits[3].Sup.Attribute = "pwrb:Class-LinRegSup-Template.Limits[3]"
Attr Limits[3].Sup.CtrlPosition = 1
Attr Limits[4].Sup.DetectText = "Deviation detected"
Attr Limits[4].Sup.EventType = 128
Attr Limits[4].Sup.EventPriority = 67
Attr Limits[4].Sup.EventFlags = 7
Attr Limits[4].Sup.Attribute = "pwrb:Class-LinRegSup-Template.Limits[4]"
Attr Limits[4].Sup.CtrlPosition = 1
Attr Limits[5].Sup.DetectText = "Deviation detected"
Attr Limits[5].Sup.EventType = 128
Attr Limits[5].Sup.EventPriority = 67
Attr Limits[5].Sup.EventFlags = 7
Attr Limits[5].Sup.Attribute = "pwrb:Class-LinRegSup-Template.Limits[5]"
Attr Limits[5].Sup.CtrlPosition = 1
Attr Limits[6].Sup.DetectText = "Deviation detected"
Attr Limits[6].Sup.EventType = 128
Attr Limits[6].Sup.EventPriority = 67
Attr Limits[6].Sup.EventFlags = 7
Attr Limits[6].Sup.Attribute = "pwrb:Class-LinRegSup-Template.Limits[6]"
Attr Limits[6].Sup.CtrlPosition = 1
Attr Limits[7].Sup.DetectText = "Deviation detected"
Attr Limits[7].Sup.EventType = 128
Attr Limits[7].Sup.EventPriority = 67
Attr Limits[7].Sup.EventFlags = 7
Attr Limits[7].Sup.Attribute = "pwrb:Class-LinRegSup-Template.Limits[7]"
Attr Limits[7].Sup.CtrlPosition = 1
Attr Limits[8].Sup.DetectText = "Deviation detected"
Attr Limits[8].Sup.EventType = 128
Attr Limits[8].Sup.EventPriority = 67
Attr Limits[8].Sup.EventFlags = 7
Attr Limits[8].Sup.Attribute = "pwrb:Class-LinRegSup-Template.Limits[8]"
Attr Limits[8].Sup.CtrlPosition = 1
Attr Limits[9].Sup.DetectText = "Deviation detected"
Attr Limits[9].Sup.EventType = 128
Attr Limits[9].Sup.EventPriority = 67
Attr Limits[9].Sup.EventFlags = 7
Attr Limits[9].Sup.Attribute = "pwrb:Class-LinRegSup-Template.Limits[9]"
Attr Limits[9].Sup.CtrlPosition = 1
Attr ScanTime = 8.640000e+04
Attr MeasuringTime = "0:30:00.00"
Attr PointInterval = 1.000000e+00
Attr MaxNoOfPoints = 2000
EndBody
EndObject
EndObject
EndSObject
!
! ProviewR Open Source Process Control.
! Copyright (C) 2005-2019 SSAB EMEA AB.
!
! This file is part of ProviewR.
!
! This program is free software; you can redistribute it and/or
! modify it under the terms of the GNU General Public License as
! published by the Free Software Foundation, either version 2 of
! the License, or (at your option) any later version.
!
! This program is distributed in the hope that it will be useful
! but WITHOUT ANY WARRANTY; without even the implied warranty of
! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
! GNU General Public License for more details.
!
! You should have received a copy of the GNU General Public License
! along with ProviewR. If not, see <http://www.gnu.org/licenses/>
!
! Linking ProviewR statically or dynamically with other modules is
! making a combined work based on ProviewR. Thus, the terms and
! conditions of the GNU General Public License cover the whole
! combination.
!
! In addition, as a special exception, the copyright holders of
! ProviewR give you permission to, from the build function in the
! ProviewR Configurator, combine ProviewR with modules generated by the
! ProviewR PLC Editor to a PLC program, regardless of the license
! terms of these modules. You may copy and distribute the resulting
! combined work under the terms of your choice, provided that every
! copy of the combined work is accompanied by a complete copy of
! the source code of ProviewR (the version used to produce the
! combined work), being distributed under the terms of the GNU
! General Public License plus this exception.
!
! pwrb_c_maintsupserver.wb_load -- Maintainence supervision server.
!
SObject pwrb:Class
!/**
! @Version 1.0
! @Group Supervision,NodeConfiguration
! @Summary Mantainence supervision server.
! Maintainence supervision server.
!
! @b See Also
! @classlink LinRegSup pwrb_linregsup.html
!*/
Object MaintSupServer $ClassDef 714
Body SysBody
Attr Editor = pwr_eEditor_AttrEd
Attr Method = pwr_eMethod_Standard
EndBody
Object RtBody $ObjBodyDef 1
Body SysBody
Attr StructName = "MaintSupServer"
EndBody
Object Description $Attribute 2
Body SysBody
Attr TypeRef = "pwrs:Type-$String80"
EndBody
EndObject
Object ScanTime $Attribute 1
Body SysBody
Attr TypeRef = "pwrs:Type-$Float32"
EndBody
EndObject
EndObject
Object Template MaintSupServer
Body RtBody
Attr ScanTime = 2.000000e+00
EndBody
EndObject
EndObject
EndSObject
0! DefaultWidth 1055
0! DefaultHeight 556
199
!/**
! TempSwitch
! Group Components/BaseComponent
!
! <image> bcomp_tempswitch_gs.gif
!
! <h1>Description
! Temperature switch. Graphic symbol for basecomponent BaseTempSwitch.
! Should be connected to an instance of BaseTempSwitch, or a
! subclass to this class.
!
! <h1>Default dynamics
! HostObject <link>GeDynHostObject, ,$pwr_lang/man_geref.dat
!
! Dynamics for the symbol
! - flashing red at alarm status.
! - popupmenu with the methods of the connected object.
!
! DigFlash <t>$hostobject.AlarmStatus <link>GeDynDigFlash, ,$pwr_lang/man_geref.dat
! PopupMenu <t>$hostobject <link>GeDynPopupMenu, ,$pwr_lang/man_geref.dat
!
! Default Cycle Slow
!
!*/
1
100 16.6667
135 16.6667
101 20
102 219
103 -3
104 3.35821
136 3.35821
105 100
106 3
107 0
108 68
109 1
110 38.0092
111 0.499999
112 900
113 615
114 225
115 218
116 41
117 0
118 222
119 123
120 0
121 Claes context
122 0
126 0.5
127 0.5
128 0
129 0.3
130 1.5
131 0.8
132 3
133 2
137 4510
138 3
139 3
140 2
141 $default
134
22
2200 0
2201 530
2202 pwr_c_linregsup
2203 310
2205 0
2204
2206 0
2207
2208
2209 2.65
2210 1
2211 66
2212 34.4
2213 4
2214
pwrp_pop:
pwrp_exe:
ssab_exe:
pwr_exe:
2215 0
2246 0
2236 0
2247 0
2216 0
2221 0
2237 0
2238 0
2239 0
2240 0
2241 0
2242 0
2217 0
2218 0
2219 0
2220
2230 0
2231 1
2222
2223 1
2224 0.5
2232 0.5
2225 0.5
2226 0
2227
2228 0
2229 1
2233 1
2234 2
2235 1
2243 0
2248 0
2245 0
2249
48
4802 0
4803 1
4800 360
4801
0.992157 0.992157 0.992157
0.872157 0.872157 0.872157
1 1 1
1 1 1
0.854841 0.854841 0.854841
0.734841 0.734841 0.734841
1 1 1
0.974841 0.974841 0.974841
0.941176 0.941176 0.941176
0.821176 0.821176 0.821176
1 1 1
1 1 1
0.623529 0.623529 0.623529
0.503529 0.503529 0.503529
0.803529 0.803529 0.803529
0.743529 0.743529 0.743529
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
0.952941 0.952941 0.952941
0.832941 0.832941 0.832941
1 1 1
1 1 1
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
0.988235 0.0666667 0.0666667
0.868235 0 0
1 0.246667 0.246667
1 0.186667 0.186667
1 0.670588 0.670588
0.88 0.550588 0.550588
1 0.850588 0.850588
1 0.790588 0.790588
1 0.760784 0.760784
0.88 0.640784 0.640784
1 0.940784 0.940784
1 0.880784 0.880784
1 0.898039 0.898039
0.88 0.778039 0.778039
1 1 1
1 1 1
1 0.898039 0.898039
0.88 0.778039 0.778039
1 1 1
1 1 1
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
0.247059 0.247059 0.247059
0.127059 0.127059 0.127059
0.427059 0.427059 0.427059
0.367059 0.367059 0.367059
0.247059 0.247059 0.247059
0.127059 0.127059 0.127059
0.427059 0.427059 0.427059
0.367059 0.367059 0.367059
0.823529 0.823529 0.823529
0.703529 0.703529 0.703529
1 1 1
0.943529 0.943529 0.943529
0.886275 0.886275 0.886275
0.766275 0.766275 0.766275
1 1 1
1 1 1
0.952941 0.952941 0.952941
0.832941 0.832941 0.832941
1 1 1
1 1 1
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
0.196078 0.933333 0
0.0760784 0.813333 0
0.376078 1 0.18
0.316078 1 0.12
0.698039 1 0.564706
0.578039 0.88 0.444706
0.878039 1 0.744706
0.818039 1 0.684706
0.807843 1 0.760784
0.687843 0.88 0.640784
0.987843 1 0.940784
0.927843 1 0.880784
0.870588 1 0.835294
0.750588 0.88 0.715294
1 1 1
0.990588 1 0.955294
0.870588 1 0.835294
0.750588 0.88 0.715294
1 1 1
0.990588 1 0.955294
0.247059 0.247059 0.247059
0.127059 0.127059 0.127059
0.427059 0.427059 0.427059
0.367059 0.367059 0.367059
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
0.972549 0.937255 0.65098
0.852549 0.817255 0.53098
1 1 0.83098
1 1 0.77098
0.952941 0.952941 0.952941
0.832941 0.832941 0.832941
1 1 1
1 1 1
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
0.662745 0.662745 0.662745
0.542745 0.542745 0.542745
0.842745 0.842745 0.842745
0.782745 0.782745 0.782745
0.509804 0.509804 0.509804
0.389804 0.389804 0.389804
0.689804 0.689804 0.689804
0.629804 0.629804 0.629804
1 0.976471 0.0901961
0.88 0.856471 0
1 1 0.270196
1 1 0.210196
1 1 0.729412
0.88 0.88 0.609412
1 1 0.909412
1 1 0.849412
0.972549 0.937255 0.65098
0.852549 0.817255 0.53098
1 1 0.83098
1 1 0.77098
1 1 0.8
0.88 0.88 0.68
1 1 0.98
1 1 0.92
1 1 0.8
0.88 0.88 0.68
1 1 0.98
1 1 0.92
0.72549 0.866667 1
0.60549 0.746667 0.88
0.90549 1 1
0.84549 0.986667 1
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
0.690196 0.690196 0.690196
0.570196 0.570196 0.570196
0.870196 0.870196 0.870196
0.810196 0.810196 0.810196
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
0.72549 0.866667 1
0.60549 0.746667 0.88
0.90549 1 1
0.84549 0.986667 1
0.247059 0.247059 0.247059
0.127059 0.127059 0.127059
0.427059 0.427059 0.427059
0.367059 0.367059 0.367059
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
0.886275 0.886275 0.886275
0.766275 0.766275 0.766275
1 1 1
1 1 1
0.407843 0.407843 0.407843
0.287843 0.287843 0.287843
0.587843 0.587843 0.587843
0.527843 0.527843 0.527843
0.418189 0.799023 1
0.298189 0.679023 0.88
0.598189 0.979023 1
0.538189 0.919023 1
0.668742 0.879622 0.990494
0.548742 0.759622 0.870494
0.848742 1 1
0.788742 0.999622 1
0.670588 0.882353 0.992157
0.550588 0.762353 0.872157
0.850588 1 1
0.790588 1 1
0.87451 0.956863 1
0.75451 0.836863 0.88
1 1 1
0.99451 1 1
0.874998 0.956909 1
0.754998 0.836909 0.88
1 1 1
0.994998 1 1
0.952941 0.952941 0.952941
0.832941 0.832941 0.832941
1 1 1
1 1 1
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
0.952941 0.952941 0.952941
0.832941 0.832941 0.832941
1 1 1
1 1 1
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
0.247059 0.247059 0.247059
0.127059 0.127059 0.127059
0.427059 0.427059 0.427059
0.367059 0.367059 0.367059
0.431373 0.431373 0.431373
0.311373 0.311373 0.311373
0.611373 0.611373 0.611373
0.551373 0.551373 0.551373
0.752941 1 1
0.632941 0.88 0.88
0.932941 1 1
0.872941 1 1
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
1 0.576471 0
0.88 0.456471 0
1 0.756471 0.18
1 0.696471 0.12
1 0.713191 0.32282
0.88 0.593191 0.20282
1 0.893191 0.50282
1 0.833191 0.44282
0.982864 0.813947 0.582559
0.862864 0.693947 0.462559
1 0.993947 0.762559
1 0.933947 0.702559
1 0.92549 0.815686
0.88 0.80549 0.695686
1 1 0.995686
1 1 0.935686
1 0.922194 0.815442
0.88 0.802194 0.695442
1 1 0.995442
1 1 0.935442
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
0.552941 0.552941 0.552941
0.432941 0.432941 0.432941
0.732941 0.732941 0.732941
0.672941 0.672941 0.672941
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
0.952941 0.952941 0.952941
0.832941 0.832941 0.832941
1 1 1
1 1 1
0.482353 0.482353 0.482353
0.362353 0.362353 0.362353
0.662353 0.662353 0.662353
0.602353 0.602353 0.602353
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
0.853742 0.302632 0.982101
0.733742 0.182632 0.862101
1 0.482632 1
0.973742 0.422632 1
0.899916 0.583337 0.985214
0.779916 0.463337 0.865214
1 0.763337 1
1 0.703337 1
0.924636 0.740002 1
0.804636 0.620002 0.88
1 0.920002 1
1 0.860002 1
0.968627 0.854902 1
0.848627 0.734902 0.88
1 1 1
1 0.974902 1
0.966888 0.854505 1
0.846888 0.734505 0.88
1 1 1
1 0.974505 1
99
2244
99
123
2
3
300 pwr_valuelong
301
2
19
1904
1900 26.6
1901 0
1902 0.7
1903 0
1908 0
1909 41
1910 41
1911 1
1915 0
1913 5
1916 2
1914 0
1918 0
1919 0
1920 0
1917 0
1921 0
1922 4
1923 0
1924 0
1925 0
1926 0
1907 0
1906
1905
5
500 0
501 1
504 1
505 1
502
7
700 0
701 0
99
503
7
700 26.6
701 0.7
99
99
1912
28
2800 1
2801 0
2802 0
2803 0
2804 1
2805 0
2806 0
99
99
29
2907
13
1300 1
1301 304
1306 0
1302 1
1305 1
1303
7
700 1
701 1.35
99
1304 0
1307 0
1308 0
99
2908
28
2800 1
2801 0
2802 -0.715333
2803 0
2804 1
2805 -0.771778
2806 0
99
2901 2
99
99
302 0
304 0
303
305 0
306
307
308 1024
330 0
321 0
331 0
309 0
313 0
322 0
323 0
324 0
325 0
326 0
327 0
310 0
311 0
312
314
315 1
316 1
317 0
318 0
319 0
320 0
328 0
332 0
99
3
300 pwr_indsquare
301
2
19
1904 O1
1900 0.75
1901 0.15
1902 0.75
1903 0.1
1908 0
1909 293
1910 293
1911 1
1915 0
1913 15
1916 2
1914 0
1918 0
1919 0
1920 0
1917 0
1921 0
1922 4
1923 0
1924 0
1925 10000
1926 0
1907 0
1906
1905
5
500 0
501 1
504 1
505 1
502
7
700 0.15
701 0.1
99
503
7
700 0.75
701 0.75
99
99
1912
28
2800 1
2801 0
2802 0
2803 0
2804 1
2805 0
2806 0
99
99
99
302 0
304 0
303
305 0
306
307
308 4
330 0
321 0
331 0
309 29
313 0
322 0
323 0
324 0
325 0
326 0
327 0
310 0
311 0
312
314
315 1
316 1
317 0
318 0
319 0
320 0
328 0
332 0
329
1
100 1
105 0
101 1
106 0
102 33619964
103 0
99
99
3
300 pwr_valuemedium
301
2
19
1904
1900 3
1901 0
1902 1
1903 0
1908 0
1909 41
1910 41
1911 1
1915 0
1913 5
1916 2
1914 0
1918 0
1919 0
1920 0
1917 0
1921 0
1922 4
1923 0
1924 0
1925 0
1926 0
1907 0
1906
1905
5
500 0
501 1
504 1
505 1
502
7
700 0
701 0
99
503
7
700 3
701 1
99
99
1912
28
2800 1
2801 0
2802 0
2803 0
2804 1
2805 0
2806 0
99
99
29
2907
13
1300 1
1301 304
1306 0
1302 3
1305 1
1303
7
700 1
701 1.35
99
1304 0
1307 0
1308 0
99
2908
28
2800 1
2801 0
2802 -0.65
2803 0
2804 1
2805 -0.55
2806 0
99
2901 2
99
99
302 0
304 0
303
305 0
306
307
308 1024
330 0
321 0
331 0
309 0
313 0
322 0
323 0
324 0
325 0
326 0
327 0
310 0
311 0
312
314
315 1
316 1
317 0
318 0
319 0
320 0
328 984
332 0
99
3
300 pwr_valueinputmediumcenter
301
2
19
1904 O0
1900 3
1901 0
1902 1
1903 0
1908 0
1909 41
1910 41
1911 1
1915 0
1913 10
1916 2
1914 0
1918 0
1919 0
1920 0
1917 0
1921 0
1922 2
1923 0
1924 0
1925 0
1926 0
1907 0
1906
1905
5
500 0
501 1
504 1
505 1
502
7
700 0
701 0
99
503
7
700 3
701 1
99
99
1912
28
2800 1
2801 0
2802 0
2803 0
2804 1
2805 0
2806 0
99
99
29
2907
13
1300 1
1301 304
1306 0
1302 3
1305 1
1303
7
700 1
701 1.35
99
1304 0
1307 0
1308 0
99
2908
28
2800 1
2801 0
2802 0.5
2803 0
2804 1
2805 -0.55
2806 0
99
2901 0
99
99
302 0
304 0
303
305 0
306
307
308 1024
330 0
321 4096
331 0
309 0
313 0
322 0
323 0
324 0
325 0
326 0
327 0
310 0
311 0
312
314
315 1
316 1
317 0
318 0
319 0
320 0
328 0
332 0
329
1
100 1
105 0
101 1
106 0
102 65532
103 0
99
99
99
124
2
99
125
2
19
1904 O234
1900 66.0529
1901 3.00001
1902 38
1903 35
1908 0
1909 318
1910 318
1911 0
1915 0
1913 5
1916 2
1914 0
1918 0
1919 0
1920 0
1917 0
1921 0
1922 4
1923 0
1924 0
1925 0
1926 0
1907 0
1906
1905
5
500 0
501 1
504 1
505 1
502
7
700 3
701 38
99
503
7
700 29.5
701 41
99
99
1912
28
2800 2.37936
2801 0
2802 -4.13806
2803 0
2804 1
2805 -3
2806 0
99
99
19
1904 O229
1900 68
1901 66
1902 38.0063
1903 0.5
1908 0
1909 318
1910 318
1911 0
1915 0
1913 5
1916 2
1914 0
1918 0
1919 0
1920 0
1917 0
1921 0
1922 4
1923 0
1924 0
1925 0
1926 0
1907 0
1906
1905
5
500 0
501 1
504 1
505 1
502
7
700 29.5
701 0
99
503
7
700 31.5
701 41
99
99
1912
28
2800 1
2801 0
2802 36.5
2803 0
2804 0.914789
2805 0.5
2806 0
99
99
19
1904 O233
1900 66.0337
1901 2.49999
1902 1
1903 0.5
1908 0
1909 318
1910 318
1911 0
1915 0
1913 5
1916 2
1914 0
1918 0
1919 0
1920 0
1917 0
1921 0
1922 4
1923 0
1924 0
1925 0
1926 0
1907 0
1906
1905
5
500 0
501 1
504 1
505 1
502
7
700 3
701 26.5
99
503
7
700 29.5
701 27
99
99
1912
28
2800 2.3975
2801 0
2802 -4.69251
2803 0
2804 1
2805 -26
2806 0
99
99
19
1904 O235
1900 3
1901 1
1902 38.0092
1903 0.499999
1908 0
1909 318
1910 318
1911 0
1915 0
1913 5
1916 2
1914 0
1918 0
1919 0
1920 0
1917 0
1921 0
1922 4
1923 0
1924 0
1925 0
1926 0
1907 0
1906
1905
5
500 0
501 1
504 1
505 1
502
7
700 1
701 0.5
99
503
7
700 3
701 41
99
99
1912
28
2800 1
2801 0
2802 0
2803 0
2804 0.926152
2805 0.0369229
2806 0
99
99
27
2703 394
2704 390
2731 10000
2722 398
2705 390
2723 398
2706 394
2732 10000
2708 0
2709 0
2710 0
2711 0
2712 0
2713 0
2714 0
2715 0
2720 0
2725 0
2726 0
2702 0
2701
2700
10
1000 pwr_valuemedium
1002 O359
1005
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1006 14.2556
1007 8.9094
1008 5.92795
1009 4.844
1013 14.2556
1014 8.9094
1015 5.92795
1016 4.844
1003
0
0
0
0
0
0
0
0
0
0
1004
1001
7
700 6.9
701 4.25
99
1010 $object.OutChange##Float32
1011 %10.3f
1018
1019
1020
1021
1022
1023
1024
1025
1012 5
1017 9999
1027 9999
1026 62
1028 0
1029
99
2707
28
2800 1.78208
2801 0
2802 8.9094
2803 0
2804 1.08395
2805 4.844
2806 0
99
2716 0
2718
2717
2719 0
2724 0
2727 0
2728 303
2729 4
2730 0
2721
1
100 1024
105 0
101 0
106 0
102 65532
103 0
12
1200 $object.ScanTime##Float32
1201 %5.0f
1202 1
1203 1
1204 0
1205
1206 0
99
99
99
30
3004 O360
3000 7.36559
3001 3.7056
3002 5.70302
3003 4.92302
3008 326
3010 4
3011 2
3007 0
3006
3005
9
900 4
901 303
904 326
902 ScanTime
903
7
700 1.1
701 2.5
99
99
3009
28
2800 1
2801 0
2802 2.6056
2803 0
2804 1
2805 3.08302
2806 0
99
99
30
3004 LastTime
3000 7.12559
3001 3.7056
3002 7.0763
3003 6.2963
3008 326
3010 4
3011 2
3007 0
3006
3005
9
900 4
901 303
904 326
902 LastScan
903
7
700 1.1
701 2.5
99
99
3009
28
2800 1
2801 0
2802 2.6056
2803 0
2804 1
2805 4.4563
2806 0
99
99
27
2703 310
2704 310
2731 10000
2722 326
2705 310
2723 326
2706 310
2732 10000
2708 0
2709 0
2710 0
2711 0
2712 0
2713 0
2714 0
2715 0
2720 0
2725 0
2726 0
2702 0
2701
2700
10
1000 pwr_valuelong
1002 O432
1005
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1006 38.5778
1007 3.74297
1008 2.21867
1009 1.26412
1013 38.5778
1014 3.74297
1015 2.21867
1016 1.26412
1003
0
0
0
0
0
0
0
0
0
0
1004
1001
7
700 6.69297
701 2.21866
99
1010 $object.Description##String80
1011 %s
1018
1019
1020
1021
1022
1023
1024
1025
1012 0
1017 9999
1027 9999
1026 65532
1028 0
1029
99
2707
28
2800 1.30958
2801 0
2802 3.74297
2803 0
2804 1.36364
2805 1.26412
2806 0
99
2716 0
2718
2717
2719 0
2724 0
2727 0
2728 303
2729 4
2730 0
2721
1
100 1
105 0
101 1
106 0
102 65532
103 0
12
1200 $object.Description##String80
1201 %s
1202 1
1203 1
1204 0
1205
1206 0
99
99
99
27
2703 394
2704 390
2731 10000
2722 398
2705 390
2723 398
2706 394
2732 10000
2708 0
2709 0
2710 0
2711 0
2712 0
2713 0
2714 0
2715 0
2720 0
2725 0
2726 0
2702 0
2701
2700
10
1000 pwr_valueinputmediumcenter
1002 O493
1005
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1006 14.259
1007 8.9094
1008 7.33916
1009 6.2513
1013 14.259
1014 8.9094
1015 7.33916
1016 6.2513
1003
0
0
0
0
0
0
0
0
0
0
1004
1001
7
700 9.05
701 13.95
99
1010
1011
1018
1019
1020
1021
1022
1023
1024
1025
1012 0
1017 9999
1027 9999
1026 35454972
1028 0
1029
99
2707
28
2800 1.78319
2801 0
2802 8.9094
2803 0
2804 1.08786
2805 6.2513
2806 0
99
2716 0
2718
2717
2719 0
2724 0
2727 0
2728 303
2729 4
2730 0
2721
1
100 1024
105 0
101 0
106 0
102 65532
103 0
12
1200 $object.LastScan##Time
1201 %1t
1202 1
1203 1
1204 0
1205
1206 0
99
99
99
40
4000 $pwr_exe/pwr_c_linregsup_limits.pwg
4003 0.8
4006 622
4007 626
4004 1
4005 0
4008 1
4009 $object
4001
19
1904 O502
1900 65.4239
1901 16.58
1902 34.2971
1903 2.8
1908 0
1909 310
1910 310
1911 1
1915 0
1913 5
1916 2
1914 0
1918 0
1919 0
1920 0
1917 0
1921 0
1922 4
1923 0
1924 0
1925 10000
1926 0
1907 0
1906
1905
5
500 0
501 1
504 1
505 1
502
7
700 3.65
701 1.15
99
503
7
700 11.65
701 7.15
99
99
1912
28
2800 6.10549
2801 0
2802 -5.70503
2803 0
2804 5.24951
2805 -3.23694
2806 0
99
99
4002
1
100 1
105 0
101 1
106 0
102 35454972
103 0
99
99
30
3004 O506
3000 6.1656
3001 3.7056
3002 14.963
3003 14.183
3008 326
3010 4
3011 2
3007 0
3006
3005
9
900 4
901 303
904 326
902 Status
903
7
700 1.1
701 2.5
99
99
3009
28
2800 1
2801 0
2802 2.6056
2803 0
2804 1
2805 12.343
2806 0
99
99
27
2703 370
2704 410
2731 10000
2722 10000
2705 410
2723 10000
2706 370
2732 10000
2708 0
2709 0
2710 0
2711 0
2712 0
2713 0
2714 0
2715 0
2720 0
2725 0
2726 0
2702 0
2701
2700
10
1000 pwr_indsquare
1002 O507
1005
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1006 10.3
1007 9.1
1008 15.26
1009 13.96
1013 10.3
1014 9.1
1015 15.26
1016 13.96
1003
0
0
0
0
0
0
0
0
0
0
1004
1001
7
700 8.7
701 2.7
99
1010
1011
1018
1019
1020
1021
1022
1023
1024
1025
1012 0
1017 9999
1027 9999
1026 35454972
1028 0
1029
99
2707
28
2800 2
2801 0
2802 8.8
2803 0
2804 2
2805 13.76
2806 0
99
2716 0
2718
2717
2719 0
2724 0
2727 0
2728 303
2729 9999
2730 0
2721
1
100 33554432
105 0
101 1
106 0
102 35454972
103 0
31
3100 $object.Status##Status
3101 374
3102 1
99
99
99
27
2703 310
2704 310
2731 10000
2722 326
2705 310
2723 326
2706 310
2732 10000
2708 0
2709 0
2710 0
2711 0
2712 0
2713 0
2714 0
2715 0
2720 0
2725 0
2726 0
2702 0
2701
2700
10
1000 pwr_valuelong
1002 O508
1005
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1006 14.4698
1007 4.78913
1008 16.3087
1009 15.3541
1013 14.4698
1014 4.78913
1015 16.3087
1016 15.3541
1003
0
0
0
0
0
0
0
0
0
0
1004
1001
7
700 6.69297
701 2.21866
99
1010 $object.Description##String80
1011 %s
1018
1019
1020
1021
1022
1023
1024
1025
1012 0
1017 9999
1027 9999
1026 65532
1028 0
1029
99
2707
28
2800 0.363933
2801 0
2802 4.78913
2803 0
2804 1.36364
2805 15.3541
2806 0
99
2716 0
2718
2717
2719 0
2724 0
2727 0
2728 303
2729 4
2730 0
2721
1
100 1
105 0
101 1
106 0
102 65532
103 0
12
1200 $object.Status##Status
1201 %1m
1202 1
1203 1
1204 0
1205
1206 0
99
99
99
27
2703 370
2704 410
2731 10000
2722 10000
2705 410
2723 10000
2706 370
2732 10000
2708 0
2709 0
2710 0
2711 0
2712 0
2713 0
2714 0
2715 0
2720 0
2725 0
2726 0
2702 0
2701
2700
10
1000 pwr_indsquare
1002 O509
1005
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1006 10.3
1007 9.1
1008 18.58
1009 17.28
1013 10.3
1014 9.1
1015 18.58
1016 17.28
1003
0
0
0
0
0
0
0
0
0
0
1004
1001
7
700 8.7
701 2.7
99
1010
1011
1018
1019
1020
1021
1022
1023
1024
1025
1012 0
1017 9999
1027 9999
1026 35454972
1028 0
1029
99
2707
28
2800 2
2801 0
2802 8.8
2803 0
2804 2
2805 17.08
2806 0
99
2716 0
2718
2717
2719 0
2724 0
2727 0
2728 303
2729 9999
2730 0
2721
1
100 33554432
105 0
101 1
106 0
102 35454972
103 0
31
3100 $object.Limits[0].Status##Status
3101 374
3102 1
99
99
99
27
2703 370
2704 410
2731 10000
2722 10000
2705 410
2723 10000
2706 370
2732 10000
2708 0
2709 0
2710 0
2711 0
2712 0
2713 0
2714 0
2715 0
2720 0
2725 0
2726 0
2702 0
2701
2700
10
1000 pwr_indsquare
1002 O510
1005
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1006 10.3
1007 9.1
1008 20.0633
1009 18.7633
1013 10.3
1014 9.1
1015 20.0633
1016 18.7633
1003
0
0
0
0
0
0
0
0
0
0
1004
1001
7
700 8.7
701 2.7
99
1010
1011
1018
1019
1020
1021
1022
1023
1024
1025
1012 0
1017 9999
1027 9999
1026 35454972
1028 0
1029
99
2707
28
2800 2
2801 0
2802 8.8
2803 0
2804 2
2805 18.5633
2806 0
99
2716 0
2718
2717
2719 0
2724 0
2727 0
2728 303
2729 9999
2730 0
2721
1
100 33554432
105 0
101 1
106 0
102 35454972
103 0
31
3100 $object.Limits[1].Status##Status
3101 374
3102 1
99
99
99
27
2703 370
2704 410
2731 10000
2722 10000
2705 410
2723 10000
2706 370
2732 10000
2708 0
2709 0
2710 0
2711 0
2712 0
2713 0
2714 0
2715 0
2720 0
2725 0
2726 0
2702 0
2701
2700
10
1000 pwr_indsquare
1002 O511
1005
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1006 10.3
1007 9.1
1008 21.5467
1009 20.2467
1013 10.3
1014 9.1
1015 21.5467
1016 20.2467
1003
0
0
0
0
0
0
0
0
0
0
1004
1001
7
700 8.7
701 2.7
99
1010
1011
1018
1019
1020
1021
1022
1023
1024
1025
1012 0
1017 9999
1027 9999
1026 35454972
1028 0
1029
99
2707
28
2800 2
2801 0
2802 8.8
2803 0
2804 2
2805 20.0467
2806 0
99
2716 0
2718
2717
2719 0
2724 0
2727 0
2728 303
2729 9999
2730 0
2721
1
100 33554432
105 0
101 1
106 0
102 35454972
103 0
31
3100 $object.Limits[2].Status##Status
3101 374
3102 1
99
99
99
27
2703 370
2704 410
2731 10000
2722 10000
2705 410
2723 10000
2706 370
2732 10000
2708 0
2709 0
2710 0
2711 0
2712 0
2713 0
2714 0
2715 0
2720 0
2725 0
2726 0
2702 0
2701
2700
10
1000 pwr_indsquare
1002 O512
1005
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1006 10.3
1007 9.1
1008 23.03
1009 21.73
1013 10.3
1014 9.1
1015 23.03
1016 21.73
1003
0
0
0
0
0
0
0
0
0
0
1004
1001
7
700 8.7
701 2.7
99
1010
1011
1018
1019
1020
1021
1022
1023
1024
1025
1012 0
1017 9999
1027 9999
1026 35454972
1028 0
1029
99
2707
28
2800 2
2801 0
2802 8.8
2803 0
2804 2
2805 21.53
2806 0
99
2716 0
2718
2717
2719 0
2724 0
2727 0
2728 303
2729 9999
2730 0
2721
1
100 33554432
105 0
101 1
106 0
102 35454972
103 0
31
3100 $object.Limits[3].Status##Status
3101 374
3102 1
99
99
99
27
2703 370
2704 410
2731 10000
2722 10000
2705 410
2723 10000
2706 370
2732 10000
2708 0
2709 0
2710 0
2711 0
2712 0
2713 0
2714 0
2715 0
2720 0
2725 0
2726 0
2702 0
2701
2700
10
1000 pwr_indsquare
1002 O513
1005
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1006 10.3
1007 9.1
1008 24.5133
1009 23.2133
1013 10.3
1014 9.1
1015 24.5133
1016 23.2133
1003
0
0
0
0
0
0
0
0
0
0
1004
1001
7
700 8.7
701 2.7
99
1010
1011
1018
1019
1020
1021
1022
1023
1024
1025
1012 0
1017 9999
1027 9999
1026 35454972
1028 0
1029
99
2707
28
2800 2
2801 0
2802 8.8
2803 0
2804 2
2805 23.0133
2806 0
99
2716 0
2718
2717
2719 0
2724 0
2727 0
2728 303
2729 9999
2730 0
2721
1
100 33554432
105 0
101 1
106 0
102 35454972
103 0
31
3100 $object.Limits[4].Status##Status
3101 374
3102 1
99
99
99
27
2703 370
2704 410
2731 10000
2722 10000
2705 410
2723 10000
2706 370
2732 10000
2708 0
2709 0
2710 0
2711 0
2712 0
2713 0
2714 0
2715 0
2720 0
2725 0
2726 0
2702 0
2701
2700
10
1000 pwr_indsquare
1002 O514
1005
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1006 10.3
1007 9.1
1008 25.9967
1009 24.6967
1013 10.3
1014 9.1
1015 25.9967
1016 24.6967
1003
0
0
0
0
0
0
0
0
0
0
1004
1001
7
700 8.7
701 2.7
99
1010
1011
1018
1019
1020
1021
1022
1023
1024
1025
1012 0
1017 9999
1027 9999
1026 35454972
1028 0
1029
99
2707
28
2800 2
2801 0
2802 8.8
2803 0
2804 2
2805 24.4967
2806 0
99
2716 0
2718
2717
2719 0
2724 0
2727 0
2728 303
2729 9999
2730 0
2721
1
100 33554432
105 0
101 1
106 0
102 35454972
103 0
31
3100 $object.Limits[5].Status##Status
3101 374
3102 1
99
99
99
27
2703 370
2704 410
2731 10000
2722 10000
2705 410
2723 10000
2706 370
2732 10000
2708 0
2709 0
2710 0
2711 0
2712 0
2713 0
2714 0
2715 0
2720 0
2725 0
2726 0
2702 0
2701
2700
10
1000 pwr_indsquare
1002 O515
1005
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1006 10.3
1007 9.1
1008 27.48
1009 26.18
1013 10.3
1014 9.1
1015 27.48
1016 26.18
1003
0
0
0
0
0
0
0
0
0
0
1004
1001
7
700 8.7
701 2.7
99
1010
1011
1018
1019
1020
1021
1022
1023
1024
1025
1012 0
1017 9999
1027 9999
1026 35454972
1028 0
1029
99
2707
28
2800 2
2801 0
2802 8.8
2803 0
2804 2
2805 25.98
2806 0
99
2716 0
2718
2717
2719 0
2724 0
2727 0
2728 303
2729 9999
2730 0
2721
1
100 33554432
105 0
101 1
106 0
102 35454972
103 0
31
3100 $object.Limits[6].Status##Status
3101 374
3102 1
99
99
99
27
2703 370
2704 410
2731 10000
2722 10000
2705 410
2723 10000
2706 370
2732 10000
2708 0
2709 0
2710 0
2711 0
2712 0
2713 0
2714 0
2715 0
2720 0
2725 0
2726 0
2702 0
2701
2700
10
1000 pwr_indsquare
1002 O516
1005
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1006 10.3
1007 9.1
1008 28.9633
1009 27.6633
1013 10.3
1014 9.1
1015 28.9633
1016 27.6633
1003
0
0
0
0
0
0
0
0
0
0
1004
1001
7
700 8.7
701 2.7
99
1010
1011
1018
1019
1020
1021
1022
1023
1024
1025
1012 0
1017 9999
1027 9999
1026 35454972
1028 0
1029
99
2707
28
2800 2
2801 0
2802 8.8
2803 0
2804 2
2805 27.4633
2806 0
99
2716 0
2718
2717
2719 0
2724 0
2727 0
2728 303
2729 9999
2730 0
2721
1
100 33554432
105 0
101 1
106 0
102 35454972
103 0
31
3100 $object.Limits[7].Status##Status
3101 374
3102 1
99
99
99
27
2703 370
2704 410
2731 10000
2722 10000
2705 410
2723 10000
2706 370
2732 10000
2708 0
2709 0
2710 0
2711 0
2712 0
2713 0
2714 0
2715 0
2720 0
2725 0
2726 0
2702 0
2701
2700
10
1000 pwr_indsquare
1002 O517
1005
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1006 10.3
1007 9.1
1008 30.4467
1009 29.1467
1013 10.3
1014 9.1
1015 30.4467
1016 29.1467
1003
0
0
0
0
0
0
0
0
0
0
1004
1001
7
700 8.7
701 2.7
99
1010
1011
1018
1019
1020
1021
1022
1023
1024
1025
1012 0
1017 9999
1027 9999
1026 35454972
1028 0
1029
99
2707
28
2800 2
2801 0
2802 8.8
2803 0
2804 2
2805 28.9467
2806 0
99
2716 0
2718
2717
2719 0
2724 0
2727 0
2728 303
2729 9999
2730 0
2721
1
100 33554432
105 0
101 1
106 0
102 35454972
103 0
31
3100 $object.Limits[8].Status##Status
3101 374
3102 1
99
99
99
27
2703 370
2704 410
2731 10000
2722 10000
2705 410
2723 10000
2706 370
2732 10000
2708 0
2709 0
2710 0
2711 0
2712 0
2713 0
2714 0
2715 0
2720 0
2725 0
2726 0
2702 0
2701
2700
10
1000 pwr_indsquare
1002 O518
1005
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1006 10.3
1007 9.1
1008 31.93
1009 30.63
1013 10.3
1014 9.1
1015 31.93
1016 30.63
1003
0
0
0
0
0
0
0
0
0
0
1004
1001
7
700 8.7
701 2.7
99
1010
1011
1018
1019
1020
1021
1022
1023
1024
1025
1012 0
1017 9999
1027 9999
1026 35454972
1028 0
1029
99
2707
28
2800 2
2801 0
2802 8.8
2803 0
2804 2
2805 30.43
2806 0
99
2716 0
2718
2717
2719 0
2724 0
2727 0
2728 303
2729 9999
2730 0
2721
1
100 33554432
105 0
101 1
106 0
102 35454972
103 0
31
3100 $object.Limits[9].Status##Status
3101 374
3102 1
99
99
99
30
3004 O519
3000 7.66559
3001 3.7056
3002 18.083
3003 17.303
3008 326
3010 4
3011 2
3007 0
3006
3005
9
900 4
901 303
904 326
902 SupStatus
903
7
700 1.1
701 2.5
99
99
3009
28
2800 1
2801 0
2802 2.6056
2803 0
2804 1
2805 15.463
2806 0
99
99
27
2703 394
2704 390
2731 10000
2722 398
2705 390
2723 398
2706 394
2732 10000
2708 0
2709 0
2710 0
2711 0
2712 0
2713 0
2714 0
2715 0
2720 0
2725 0
2726 0
2702 0
2701
2700
10
1000 pwr_valuemedium
1002 O520
1005
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1006 12.0656
1007 8.9094
1008 9.64794
1009 8.56399
1013 12.0656
1014 8.9094
1015 9.64794
1016 8.56399
1003
0
0
0
0
0
0
0
0
0
0
1004
1001
7
700 6.9
701 4.25
99
1010 $object.OutChange##Float32
1011 %10.3f
1018
1019
1020
1021
1022
1023
1024
1025
1012 5
1017 9999
1027 9999
1026 62
1028 0
1029
99
2707
28
2800 1.05207
2801 0
2802 8.9094
2803 0
2804 1.08395
2805 8.56399
2806 0
99
2716 0
2718
2717
2719 0
2724 0
2727 0
2728 303
2729 4
2730 0
2721
1
100 1024
105 0
101 0
106 0
102 65532
103 0
12
1200 $object.CurrentStdDeviation##Float32
1201 %5.3f
1202 1
1203 1
1204 0
1205
1206 0
99
99
99
30
3004 O521
3000 8.50559
3001 3.7056
3002 9.42301
3003 8.64301
3008 326
3010 4
3011 2
3007 0
3006
3005
9
900 4
901 303
904 326
902 StdDeviation
903
7
700 1.1
701 2.5
99
99
3009
28
2800 1
2801 0
2802 2.6056
2803 0
2804 1
2805 6.80301
2806 0
99
99
30
3004 O522
3000 14.2656
3001 12.5256
3002 8.3963
3003 7.6163
3008 326
3010 4
3011 2
3007 0
3006
3005
9
900 4
901 303
904 326
902 Limit
903
7
700 1.1
701 2.5
99
99
3009
28
2800 1
2801 0
2802 11.4256
2803 0
2804 1
2805 5.7763
2806 0
99
99
27
2703 394
2704 390
2731 10000
2722 398
2705 390
2723 398
2706 394
2732 10000
2708 0
2709 0
2710 0
2711 0
2712 0
2713 0
2714 0
2715 0
2720 0
2725 0
2726 0
2702 0
2701
2700
10
1000 pwr_valuemedium
1002 O524
1005
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1006 12.0656
1007 8.9094
1008 11.0279
1009 9.94399
1013 12.0656
1014 8.9094
1015 11.0279
1016 9.94399
1003
0
0
0
0
0
0
0
0
0
0
1004
1001
7
700 6.9
701 4.25
99
1010 $object.OutChange##Float32
1011 %10.3f
1018
1019
1020
1021
1022
1023
1024
1025
1012 5
1017 9999
1027 9999
1026 62
1028 0
1029
99
2707
28
2800 1.05207
2801 0
2802 8.9094
2803 0
2804 1.08395
2805 9.94399
2806 0
99
2716 0
2718
2717
2719 0
2724 0
2727 0
2728 303
2729 4
2730 0
2721
1
100 1024
105 0
101 0
106 0
102 65532
103 0
12
1200 $object.CurrentScore##Float32
1201 %5.3f
1202 1
1203 1
1204 0
1205
1206 0
99
99
99
30
3004 O525
3000 5.8056
3001 3.7056
3002 10.803
3003 10.023
3008 326
3010 4
3011 2
3007 0
3006
3005
9
900 4
901 303
904 326
902 Score
903
7
700 1.1
701 2.5
99
99
3009
28
2800 1
2801 0
2802 2.6056
2803 0
2804 1
2805 8.18301
2806 0
99
99
27
2703 394
2704 390
2731 10000
2722 398
2705 390
2723 398
2706 394
2732 10000
2708 0
2709 0
2710 0
2711 0
2712 0
2713 0
2714 0
2715 0
2720 0
2725 0
2726 0
2702 0
2701
2700
10
1000 pwr_valuemedium
1002 O528
1005
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1006 15.6056
1007 12.4494
1008 9.64794
1009 8.56399
1013 15.6056
1014 12.4494
1015 9.64794
1016 8.56399
1003
0
0
0
0
0
0
0
0
0
0
1004
1001
7
700 6.9
701 4.25
99
1010 $object.OutChange##Float32
1011 %10.3f
1018
1019
1020
1021
1022
1023
1024
1025
1012 5
1017 9999
1027 9999
1026 62
1028 0
1029
99
2707
28
2800 1.05207
2801 0
2802 12.4494
2803 0
2804 1.08395
2805 8.56399
2806 0
99
2716 0
2718
2717
2719 0
2724 0
2727 0
2728 303
2729 4
2730 0
2721
1
100 1024
105 0
101 0
106 0
102 65532
103 0
12
1200 $object.StdDeviationMinLimit##Float32
1201 %5.3f
1202 1
1203 1
1204 0
1205
1206 0
99
99
99
27
2703 394
2704 390
2731 10000
2722 398
2705 390
2723 398
2706 394
2732 10000
2708 0
2709 0
2710 0
2711 0
2712 0
2713 0
2714 0
2715 0
2720 0
2725 0
2726 0
2702 0
2701
2700
10
1000 pwr_valuemedium
1002 O529
1005
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1006 15.6056
1007 12.4494
1008 11.0279
1009 9.94399
1013 15.6056
1014 12.4494
1015 11.0279
1016 9.94399
1003
0
0
0
0
0
0
0
0
0
0
1004
1001
7
700 6.9
701 4.25
99
1010 $object.OutChange##Float32
1011 %10.3f
1018
1019
1020
1021
1022
1023
1024
1025
1012 5
1017 9999
1027 9999
1026 62
1028 0
1029
99
2707
28
2800 1.05207
2801 0
2802 12.4494
2803 0
2804 1.08395
2805 9.94399
2806 0
99
2716 0
2718
2717
2719 0
2724 0
2727 0
2728 303
2729 4
2730 0
2721
1
100 1024
105 0
101 0
106 0
102 65532
103 0
12
1200 $object.ScoreMinLimit##Float32
1201 %5.3f
1202 1
1203 1
1204 0
1205
1206 0
99
99
99
99
99
0! DefaultWidth 561
0! DefaultHeight 1310
199
!/**
! TempSwitch
! Group Components/BaseComponent
!
! <image> bcomp_tempswitch_gs.gif
!
! <h1>Description
! Temperature switch. Graphic symbol for basecomponent BaseTempSwitch.
! Should be connected to an instance of BaseTempSwitch, or a
! subclass to this class.
!
! <h1>Default dynamics
! HostObject <link>GeDynHostObject, ,$pwr_lang/man_geref.dat
!
! Dynamics for the symbol
! - flashing red at alarm status.
! - popupmenu with the methods of the connected object.
!
! DigFlash <t>$hostobject.AlarmStatus <link>GeDynDigFlash, ,$pwr_lang/man_geref.dat
! PopupMenu <t>$hostobject <link>GeDynPopupMenu, ,$pwr_lang/man_geref.dat
!
! Default Cycle Slow
!
!*/
1
100 11.7876
135 11.7876
101 20
102 -115
103 -9
104 1.93824
136 1.93824
105 100
106 -18
107 -1
108 50.0291
109 2.39999
110 111.71
111 0.8
112 500
113 615
114 225
115 218
116 0
117 0
118 81
119 100
120 1
121 Claes context
122 0
126 0.5
127 0.5
128 0
129 0.3
130 1.5
131 0.8
132 3
133 2
137 4510
138 3
139 3
140 2
141 $default
134
22
2200 0
2201 511
2202 pwr_c_linregsup_limits
2203 310
2205 0
2204
2206 0
2207
2208
2209 2.35
2210 0.8
2211 50
2212 112
2213 4
2214
pwrp_pop:
pwrp_exe:
ssab_exe:
pwr_exe:
2215 0
2246 0
2236 0
2247 0
2216 0
2221 0
2237 0
2238 0
2239 0
2240 0
2241 0
2242 0
2217 0
2218 0
2219 0
2220
2230 0
2231 1
2222
2223 1
2224 0.5
2232 0.5
2225 0.5
2226 0
2227
2228 0
2229 1
2233 1
2234 2
2235 1
2243 0
2248 0
2245 0
2249
48
4802 0
4803 1
4800 360
4801
0.992157 0.992157 0.992157
0.872157 0.872157 0.872157
1 1 1
1 1 1
0.854841 0.854841 0.854841
0.734841 0.734841 0.734841
1 1 1
0.974841 0.974841 0.974841
0.941176 0.941176 0.941176
0.821176 0.821176 0.821176
1 1 1
1 1 1
0.623529 0.623529 0.623529
0.503529 0.503529 0.503529
0.803529 0.803529 0.803529
0.743529 0.743529 0.743529
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
0.952941 0.952941 0.952941
0.832941 0.832941 0.832941
1 1 1
1 1 1
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
0.988235 0.0666667 0.0666667
0.868235 0 0
1 0.246667 0.246667
1 0.186667 0.186667
1 0.670588 0.670588
0.88 0.550588 0.550588
1 0.850588 0.850588
1 0.790588 0.790588
1 0.760784 0.760784
0.88 0.640784 0.640784
1 0.940784 0.940784
1 0.880784 0.880784
1 0.898039 0.898039
0.88 0.778039 0.778039
1 1 1
1 1 1
1 0.898039 0.898039
0.88 0.778039 0.778039
1 1 1
1 1 1
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
0.247059 0.247059 0.247059
0.127059 0.127059 0.127059
0.427059 0.427059 0.427059
0.367059 0.367059 0.367059
0.247059 0.247059 0.247059
0.127059 0.127059 0.127059
0.427059 0.427059 0.427059
0.367059 0.367059 0.367059
0.823529 0.823529 0.823529
0.703529 0.703529 0.703529
1 1 1
0.943529 0.943529 0.943529
0.886275 0.886275 0.886275
0.766275 0.766275 0.766275
1 1 1
1 1 1
0.952941 0.952941 0.952941
0.832941 0.832941 0.832941
1 1 1
1 1 1
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
0.196078 0.933333 0
0.0760784 0.813333 0
0.376078 1 0.18
0.316078 1 0.12
0.698039 1 0.564706
0.578039 0.88 0.444706
0.878039 1 0.744706
0.818039 1 0.684706
0.807843 1 0.760784
0.687843 0.88 0.640784
0.987843 1 0.940784
0.927843 1 0.880784
0.870588 1 0.835294
0.750588 0.88 0.715294
1 1 1
0.990588 1 0.955294
0.870588 1 0.835294
0.750588 0.88 0.715294
1 1 1
0.990588 1 0.955294
0.247059 0.247059 0.247059
0.127059 0.127059 0.127059
0.427059 0.427059 0.427059
0.367059 0.367059 0.367059
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
0.972549 0.937255 0.65098
0.852549 0.817255 0.53098
1 1 0.83098
1 1 0.77098
0.952941 0.952941 0.952941
0.832941 0.832941 0.832941
1 1 1
1 1 1
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
0.662745 0.662745 0.662745
0.542745 0.542745 0.542745
0.842745 0.842745 0.842745
0.782745 0.782745 0.782745
0.509804 0.509804 0.509804
0.389804 0.389804 0.389804
0.689804 0.689804 0.689804
0.629804 0.629804 0.629804
1 0.976471 0.0901961
0.88 0.856471 0
1 1 0.270196
1 1 0.210196
1 1 0.729412
0.88 0.88 0.609412
1 1 0.909412
1 1 0.849412
0.972549 0.937255 0.65098
0.852549 0.817255 0.53098
1 1 0.83098
1 1 0.77098
1 1 0.8
0.88 0.88 0.68
1 1 0.98
1 1 0.92
1 1 0.8
0.88 0.88 0.68
1 1 0.98
1 1 0.92
0.72549 0.866667 1
0.60549 0.746667 0.88
0.90549 1 1
0.84549 0.986667 1
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
0.690196 0.690196 0.690196
0.570196 0.570196 0.570196
0.870196 0.870196 0.870196
0.810196 0.810196 0.810196
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
0.72549 0.866667 1
0.60549 0.746667 0.88
0.90549 1 1
0.84549 0.986667 1
0.247059 0.247059 0.247059
0.127059 0.127059 0.127059
0.427059 0.427059 0.427059
0.367059 0.367059 0.367059
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
0.886275 0.886275 0.886275
0.766275 0.766275 0.766275
1 1 1
1 1 1
0.407843 0.407843 0.407843
0.287843 0.287843 0.287843
0.587843 0.587843 0.587843
0.527843 0.527843 0.527843
0.418189 0.799023 1
0.298189 0.679023 0.88
0.598189 0.979023 1
0.538189 0.919023 1
0.668742 0.879622 0.990494
0.548742 0.759622 0.870494
0.848742 1 1
0.788742 0.999622 1
0.670588 0.882353 0.992157
0.550588 0.762353 0.872157
0.850588 1 1
0.790588 1 1
0.87451 0.956863 1
0.75451 0.836863 0.88
1 1 1
0.99451 1 1
0.874998 0.956909 1
0.754998 0.836909 0.88
1 1 1
0.994998 1 1
0.952941 0.952941 0.952941
0.832941 0.832941 0.832941
1 1 1
1 1 1
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
0.952941 0.952941 0.952941
0.832941 0.832941 0.832941
1 1 1
1 1 1
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
0.247059 0.247059 0.247059
0.127059 0.127059 0.127059
0.427059 0.427059 0.427059
0.367059 0.367059 0.367059
0.431373 0.431373 0.431373
0.311373 0.311373 0.311373
0.611373 0.611373 0.611373
0.551373 0.551373 0.551373
0.752941 1 1
0.632941 0.88 0.88
0.932941 1 1
0.872941 1 1
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
1 0.576471 0
0.88 0.456471 0
1 0.756471 0.18
1 0.696471 0.12
1 0.713191 0.32282
0.88 0.593191 0.20282
1 0.893191 0.50282
1 0.833191 0.44282
0.982864 0.813947 0.582559
0.862864 0.693947 0.462559
1 0.993947 0.762559
1 0.933947 0.702559
1 0.92549 0.815686
0.88 0.80549 0.695686
1 1 0.995686
1 1 0.935686
1 0.922194 0.815442
0.88 0.802194 0.695442
1 1 0.995442
1 1 0.935442
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
0.552941 0.552941 0.552941
0.432941 0.432941 0.432941
0.732941 0.732941 0.732941
0.672941 0.672941 0.672941
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
0.952941 0.952941 0.952941
0.832941 0.832941 0.832941
1 1 1
1 1 1
0.482353 0.482353 0.482353
0.362353 0.362353 0.362353
0.662353 0.662353 0.662353
0.602353 0.602353 0.602353
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
0.853742 0.302632 0.982101
0.733742 0.182632 0.862101
1 0.482632 1
0.973742 0.422632 1
0.899916 0.583337 0.985214
0.779916 0.463337 0.865214
1 0.763337 1
1 0.703337 1
0.924636 0.740002 1
0.804636 0.620002 0.88
1 0.920002 1
1 0.860002 1
0.968627 0.854902 1
0.848627 0.734902 0.88
1 1 1
1 0.974902 1
0.966888 0.854505 1
0.846888 0.734505 0.88
1 1 1
1 0.974505 1
99
2244
99
123
2
99
124
2
99
125
2
40
4000 $pwr_exe/pwr_c_linregsuplimit.pwg
4003 0.5
4006 20
4007 24
4004 0
4005 0
4008 1
4009 $object.Limits[0]
4001
19
1904 O501
1900 50.0291
1901 2.39999
1902 12.0024
1903 0.799999
1908 0
1909 310
1910 310
1911 1
1915 0
1913 5
1916 2
1914 0
1918 0
1919 0
1920 0
1917 0
1921 0
1922 4
1923 0
1924 0
1925 10000
1926 0
1907 0
1906
1905
5
500 0
501 1
504 1
505 1
502
7
700 3.65
701 1.15
99
503
7
700 11.65
701 7.15
99
99
1912
28
2800 5.95364
2801 0
2802 -19.3308
2803 0
2804 1.86707
2805 -1.34713
2806 0
99
99
4002
1
100 1
105 0
101 1
106 0
102 35454972
103 0
99
99
40
4000 $pwr_exe/pwr_c_linregsuplimit.pwg
4003 0.5
4006 20
4007 24
4004 0
4005 0
4008 1
4009 $object.Limits[1]
4001
19
1904 O502
1900 50.0291
1901 2.39999
1902 23.0508
1903 11.9
1908 0
1909 310
1910 310
1911 1
1915 0
1913 5
1916 2
1914 0
1918 0
1919 0
1920 0
1917 0
1921 0
1922 4
1923 0
1924 0
1925 10000
1926 0
1907 0
1906
1905
5
500 0
501 1
504 1
505 1
502
7
700 3.65
701 1.15
99
503
7
700 11.65
701 7.15
99
99
1912
28
2800 5.95364
2801 0
2802 -19.3308
2803 0
2804 1.85847
2805 9.76277
2806 0
99
99
4002
1
100 1
105 0
101 1
106 0
102 35454972
103 0
99
99
40
4000 $pwr_exe/pwr_c_linregsuplimit.pwg
4003 0.5
4006 20
4007 24
4004 0
4005 0
4008 1
4009 $object.Limits[2]
4001
19
1904 O503
1900 50.0291
1901 2.39999
1902 34.1118
1903 23.05
1908 0
1909 310
1910 310
1911 1
1915 0
1913 5
1916 2
1914 0
1918 0
1919 0
1920 0
1917 0
1921 0
1922 4
1923 0
1924 0
1925 10000
1926 0
1907 0
1906
1905
5
500 0
501 1
504 1
505 1
502
7
700 3.65
701 1.15
99
503
7
700 11.65
701 7.15
99
99
1912
28
2800 5.95364
2801 0
2802 -19.3308
2803 0
2804 1.84364
2805 20.9298
2806 0
99
99
4002
1
100 1
105 0
101 1
106 0
102 35454972
103 0
99
99
40
4000 $pwr_exe/pwr_c_linregsuplimit.pwg
4003 0.5
4006 20
4007 24
4004 0
4005 0
4008 1
4009 $object.Limits[3]
4001
19
1904 O504
1900 50.0291
1901 2.39999
1902 45.1992
1903 34.1
1908 0
1909 310
1910 310
1911 1
1915 0
1913 5
1916 2
1914 0
1918 0
1919 0
1920 0
1917 0
1921 0
1922 4
1923 0
1924 0
1925 10000
1926 0
1907 0
1906
1905
5
500 0
501 1
504 1
505 1
502
7
700 3.65
701 1.15
99
503
7
700 11.65
701 7.15
99
99
1912
28
2800 5.95364
2801 0
2802 -19.3308
2803 0
2804 1.84986
2805 31.9727
2806 0
99
99
4002
1
100 1
105 0
101 1
106 0
102 35454972
103 0
99
99
40
4000 $pwr_exe/pwr_c_linregsuplimit.pwg
4003 0.5
4006 20
4007 24
4004 0
4005 0
4008 1
4009 $object.Limits[4]
4001
19
1904 O505
1900 50.0291
1901 2.39999
1902 56.3712
1903 45.1688
1908 0
1909 310
1910 310
1911 1
1915 0
1913 5
1916 2
1914 0
1918 0
1919 0
1920 0
1917 0
1921 0
1922 4
1923 0
1924 0
1925 10000
1926 0
1907 0
1906
1905
5
500 0
501 1
504 1
505 1
502
7
700 3.65
701 1.15
99
503
7
700 11.65
701 7.15
99
99
1912
28
2800 5.95364
2801 0
2802 -19.3308
2803 0
2804 1.86707
2805 43.0217
2806 0
99
99
4002
1
100 1
105 0
101 1
106 0
102 35454972
103 0
99
99
40
4000 $pwr_exe/pwr_c_linregsuplimit.pwg
4003 0.5
4006 20
4007 24
4004 0
4005 0
4008 1
4009 $object.Limits[5]
4001
19
1904 O506
1900 50.0291
1901 2.39999
1902 67.4196
1903 56.2688
1908 0
1909 310
1910 310
1911 1
1915 0
1913 5
1916 2
1914 0
1918 0
1919 0
1920 0
1917 0
1921 0
1922 4
1923 0
1924 0
1925 10000
1926 0
1907 0
1906
1905
5
500 0
501 1
504 1
505 1
502
7
700 3.65
701 1.15
99
503
7
700 11.65
701 7.15
99
99
1912
28
2800 5.95364
2801 0
2802 -19.3308
2803 0
2804 1.85847
2805 54.1316
2806 0
99
99
4002
1
100 1
105 0
101 1
106 0
102 35454972
103 0
99
99
40
4000 $pwr_exe/pwr_c_linregsuplimit.pwg
4003 0.5
4006 20
4007 24
4004 0
4005 0
4008 1
4009 $object.Limits[6]
4001
19
1904 O507
1900 50.0291
1901 2.39999
1902 78.4806
1903 67.4188
1908 0
1909 310
1910 310
1911 1
1915 0
1913 5
1916 2
1914 0
1918 0
1919 0
1920 0
1917 0
1921 0
1922 4
1923 0
1924 0
1925 10000
1926 0
1907 0
1906
1905
5
500 0
501 1
504 1
505 1
502
7
700 3.65
701 1.15
99
503
7
700 11.65
701 7.15
99
99
1912
28
2800 5.95364
2801 0
2802 -19.3308
2803 0
2804 1.84364
2805 65.2986
2806 0
99
99
4002
1
100 1
105 0
101 1
106 0
102 35454972
103 0
99
99
40
4000 $pwr_exe/pwr_c_linregsuplimit.pwg
4003 0.5
4006 20
4007 24
4004 0
4005 0
4008 1
4009 $object.Limits[7]
4001
19
1904 O508
1900 50.0291
1901 2.39999
1902 89.568
1903 78.4688
1908 0
1909 310
1910 310
1911 1
1915 0
1913 5
1916 2
1914 0
1918 0
1919 0
1920 0
1917 0
1921 0
1922 4
1923 0
1924 0
1925 10000
1926 0
1907 0
1906
1905
5
500 0
501 1
504 1
505 1
502
7
700 3.65
701 1.15
99
503
7
700 11.65
701 7.15
99
99
1912
28
2800 5.95364
2801 0
2802 -19.3308
2803 0
2804 1.84986
2805 76.3415
2806 0
99
99
4002
1
100 1
105 0
101 1
106 0
102 35454972
103 0
99
99
40
4000 $pwr_exe/pwr_c_linregsuplimit.pwg
4003 0.5
4006 20
4007 24
4004 0
4005 0
4008 1
4009 $object.Limits[3]
4001
19
1904 O509
1900 50.0291
1901 2.39999
1902 100.623
1903 89.5608
1908 0
1909 310
1910 310
1911 1
1915 0
1913 5
1916 2
1914 0
1918 0
1919 0
1920 0
1917 0
1921 0
1922 4
1923 0
1924 0
1925 10000
1926 0
1907 0
1906
1905
5
500 0
501 1
504 1
505 1
502
7
700 3.65
701 1.15
99
503
7
700 11.65
701 7.15
99
99
1912
28
2800 5.95364
2801 0
2802 -19.3308
2803 0
2804 1.84364
2805 87.4406
2806 0
99
99
4002
1
100 1
105 0
101 1
106 0
102 35454972
103 0
99
99
40
4000 $pwr_exe/pwr_c_linregsuplimit.pwg
4003 0.5
4006 20
4007 24
4004 0
4005 0
4008 1
4009 $object.Limits[9]
4001
19
1904 O510
1900 50.0291
1901 2.39999
1902 111.71
1903 100.611
1908 0
1909 310
1910 310
1911 1
1915 0
1913 5
1916 2
1914 0
1918 0
1919 0
1920 0
1917 0
1921 0
1922 4
1923 0
1924 0
1925 10000
1926 0
1907 0
1906
1905
5
500 0
501 1
504 1
505 1
502
7
700 3.65
701 1.15
99
503
7
700 11.65
701 7.15
99
99
1912
28
2800 5.95364
2801 0
2802 -19.3308
2803 0
2804 1.84986
2805 98.4834
2806 0
99
99
4002
1
100 1
105 0
101 1
106 0
102 35454972
103 0
99
99
99
99
0! DefaultWidth 947
0! DefaultHeight 220
199
!/**
! TempSwitch
! Group Components/BaseComponent
!
! <image> bcomp_tempswitch_gs.gif
!
! <h1>Description
! Temperature switch. Graphic symbol for basecomponent BaseTempSwitch.
! Should be connected to an instance of BaseTempSwitch, or a
! subclass to this class.
!
! <h1>Default dynamics
! HostObject <link>GeDynHostObject, ,$pwr_lang/man_geref.dat
!
! Dynamics for the symbol
! - flashing red at alarm status.
! - popupmenu with the methods of the connected object.
!
! DigFlash <t>$hostobject.AlarmStatus <link>GeDynDigFlash, ,$pwr_lang/man_geref.dat
! PopupMenu <t>$hostobject <link>GeDynPopupMenu, ,$pwr_lang/man_geref.dat
!
! Default Cycle Slow
!
!*/
1
100 20
135 20
101 20
102 42
103 -39
104 4.84374
136 4.84374
105 100
106 10
107 -9
108 48.5518
109 3.50913
110 11.9
111 1.26412
112 544
113 615
114 225
115 218
116 0
117 0
118 131
119 148
120 0
121 Claes context
122 0
126 0.5
127 0.5
128 0
129 0.3
130 1.5
131 0.8
132 3
133 2
137 4510
138 3
139 3
140 2
141 $default
134
22
2200 0
2201 508
2202 pwr_c_linregsuplimit
2203 310
2205 0
2204
2206 0
2207
2208
2209 2.65
2210 1
2211 50
2212 12
2213 4
2214
pwrp_pop:
pwrp_exe:
ssab_exe:
pwr_exe:
2215 0
2246 0
2236 0
2247 0
2216 0
2221 0
2237 0
2238 0
2239 0
2240 0
2241 0
2242 0
2217 0
2218 0
2219 0
2220
2230 0
2231 1
2222
2223 1
2224 0.5
2232 0.5
2225 0.5
2226 0
2227
2228 0
2229 1
2233 1
2234 2
2235 1
2243 0
2248 0
2245 0
2249
48
4802 0
4803 1
4800 360
4801
0.992157 0.992157 0.992157
0.872157 0.872157 0.872157
1 1 1
1 1 1
0.854841 0.854841 0.854841
0.734841 0.734841 0.734841
1 1 1
0.974841 0.974841 0.974841
0.941176 0.941176 0.941176
0.821176 0.821176 0.821176
1 1 1
1 1 1
0.623529 0.623529 0.623529
0.503529 0.503529 0.503529
0.803529 0.803529 0.803529
0.743529 0.743529 0.743529
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
0.952941 0.952941 0.952941
0.832941 0.832941 0.832941
1 1 1
1 1 1
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
0.988235 0.0666667 0.0666667
0.868235 0 0
1 0.246667 0.246667
1 0.186667 0.186667
1 0.670588 0.670588
0.88 0.550588 0.550588
1 0.850588 0.850588
1 0.790588 0.790588
1 0.760784 0.760784
0.88 0.640784 0.640784
1 0.940784 0.940784
1 0.880784 0.880784
1 0.898039 0.898039
0.88 0.778039 0.778039
1 1 1
1 1 1
1 0.898039 0.898039
0.88 0.778039 0.778039
1 1 1
1 1 1
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
0.247059 0.247059 0.247059
0.127059 0.127059 0.127059
0.427059 0.427059 0.427059
0.367059 0.367059 0.367059
0.247059 0.247059 0.247059
0.127059 0.127059 0.127059
0.427059 0.427059 0.427059
0.367059 0.367059 0.367059
0.823529 0.823529 0.823529
0.703529 0.703529 0.703529
1 1 1
0.943529 0.943529 0.943529
0.886275 0.886275 0.886275
0.766275 0.766275 0.766275
1 1 1
1 1 1
0.952941 0.952941 0.952941
0.832941 0.832941 0.832941
1 1 1
1 1 1
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
0.196078 0.933333 0
0.0760784 0.813333 0
0.376078 1 0.18
0.316078 1 0.12
0.698039 1 0.564706
0.578039 0.88 0.444706
0.878039 1 0.744706
0.818039 1 0.684706
0.807843 1 0.760784
0.687843 0.88 0.640784
0.987843 1 0.940784
0.927843 1 0.880784
0.870588 1 0.835294
0.750588 0.88 0.715294
1 1 1
0.990588 1 0.955294
0.870588 1 0.835294
0.750588 0.88 0.715294
1 1 1
0.990588 1 0.955294
0.247059 0.247059 0.247059
0.127059 0.127059 0.127059
0.427059 0.427059 0.427059
0.367059 0.367059 0.367059
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
0.972549 0.937255 0.65098
0.852549 0.817255 0.53098
1 1 0.83098
1 1 0.77098
0.952941 0.952941 0.952941
0.832941 0.832941 0.832941
1 1 1
1 1 1
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
0.662745 0.662745 0.662745
0.542745 0.542745 0.542745
0.842745 0.842745 0.842745
0.782745 0.782745 0.782745
0.509804 0.509804 0.509804
0.389804 0.389804 0.389804
0.689804 0.689804 0.689804
0.629804 0.629804 0.629804
1 0.976471 0.0901961
0.88 0.856471 0
1 1 0.270196
1 1 0.210196
1 1 0.729412
0.88 0.88 0.609412
1 1 0.909412
1 1 0.849412
0.972549 0.937255 0.65098
0.852549 0.817255 0.53098
1 1 0.83098
1 1 0.77098
1 1 0.8
0.88 0.88 0.68
1 1 0.98
1 1 0.92
1 1 0.8
0.88 0.88 0.68
1 1 0.98
1 1 0.92
0.72549 0.866667 1
0.60549 0.746667 0.88
0.90549 1 1
0.84549 0.986667 1
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
0.690196 0.690196 0.690196
0.570196 0.570196 0.570196
0.870196 0.870196 0.870196
0.810196 0.810196 0.810196
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
0.72549 0.866667 1
0.60549 0.746667 0.88
0.90549 1 1
0.84549 0.986667 1
0.247059 0.247059 0.247059
0.127059 0.127059 0.127059
0.427059 0.427059 0.427059
0.367059 0.367059 0.367059
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
0.886275 0.886275 0.886275
0.766275 0.766275 0.766275
1 1 1
1 1 1
0.407843 0.407843 0.407843
0.287843 0.287843 0.287843
0.587843 0.587843 0.587843
0.527843 0.527843 0.527843
0.418189 0.799023 1
0.298189 0.679023 0.88
0.598189 0.979023 1
0.538189 0.919023 1
0.668742 0.879622 0.990494
0.548742 0.759622 0.870494
0.848742 1 1
0.788742 0.999622 1
0.670588 0.882353 0.992157
0.550588 0.762353 0.872157
0.850588 1 1
0.790588 1 1
0.87451 0.956863 1
0.75451 0.836863 0.88
1 1 1
0.99451 1 1
0.874998 0.956909 1
0.754998 0.836909 0.88
1 1 1
0.994998 1 1
0.952941 0.952941 0.952941
0.832941 0.832941 0.832941
1 1 1
1 1 1
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
0.952941 0.952941 0.952941
0.832941 0.832941 0.832941
1 1 1
1 1 1
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
0.247059 0.247059 0.247059
0.127059 0.127059 0.127059
0.427059 0.427059 0.427059
0.367059 0.367059 0.367059
0.431373 0.431373 0.431373
0.311373 0.311373 0.311373
0.611373 0.611373 0.611373
0.551373 0.551373 0.551373
0.752941 1 1
0.632941 0.88 0.88
0.932941 1 1
0.872941 1 1
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
1 0.576471 0
0.88 0.456471 0
1 0.756471 0.18
1 0.696471 0.12
1 0.713191 0.32282
0.88 0.593191 0.20282
1 0.893191 0.50282
1 0.833191 0.44282
0.982864 0.813947 0.582559
0.862864 0.693947 0.462559
1 0.993947 0.762559
1 0.933947 0.702559
1 0.92549 0.815686
0.88 0.80549 0.695686
1 1 0.995686
1 1 0.935686
1 0.922194 0.815442
0.88 0.802194 0.695442
1 1 0.995442
1 1 0.935442
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
0.552941 0.552941 0.552941
0.432941 0.432941 0.432941
0.732941 0.732941 0.732941
0.672941 0.672941 0.672941
0 0 0
0 0 0
0.18 0.18 0.18
0.12 0.12 0.12
0.952941 0.952941 0.952941
0.832941 0.832941 0.832941
1 1 1
1 1 1
0.482353 0.482353 0.482353
0.362353 0.362353 0.362353
0.662353 0.662353 0.662353
0.602353 0.602353 0.602353
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
1 1 1
0.88 0.88 0.88
1 1 1
1 1 1
0.853742 0.302632 0.982101
0.733742 0.182632 0.862101
1 0.482632 1
0.973742 0.422632 1
0.899916 0.583337 0.985214
0.779916 0.463337 0.865214
1 0.763337 1
1 0.703337 1
0.924636 0.740002 1
0.804636 0.620002 0.88
1 0.920002 1
1 0.860002 1
0.968627 0.854902 1
0.848627 0.734902 0.88
1 1 1
1 0.974902 1
0.966888 0.854505 1
0.846888 0.734505 0.88
1 1 1
1 0.974505 1
99
2244
99
123
2
3
300 pwr_valuemedium
301
2
19
1904
1900 3
1901 0
1902 1
1903 0
1908 0
1909 41
1910 41
1911 1
1915 0
1913 5
1916 2
1914 0
1918 0
1919 0
1920 0
1917 0
1921 0
1922 4
1923 0
1924 0
1925 0
1926 0
1907 0
1906
1905
5
500 0
501 1
504 1
505 1
502
7
700 0
701 0
99
503
7
700 3
701 1
99
99
1912
28
2800 1
2801 0
2802 0
2803 0
2804 1
2805 0
2806 0
99
99
29
2907
13
1300 1
1301 304
1306 0
1302 3
1305 1
1303
7
700 1
701 1.35
99
1304 0
1307 0
1308 0
99
2908
28
2800 1
2801 0
2802 -0.65
2803 0
2804 1
2805 -0.55
2806 0
99
2901 2
99
99
302 0
304 0
303
305 0
306
307
308 1024
330 0
321 0
331 0
309 0
313 0
322 0
323 0
324 0
325 0
326 0
327 0
310 0
311 0
312
314
315 1
316 1
317 0
318 0
319 0
320 0
328 984
332 0
99
3
300 pwr_valuelong
301
2
19
1904
1900 26.6
1901 0
1902 0.7
1903 0
1908 0
1909 41
1910 41
1911 1
1915 0
1913 5
1916 2
1914 0
1918 0
1919 0
1920 0
1917 0
1921 0
1922 4
1923 0
1924 0
1925 0
1926 0
1907 0
1906
1905
5
500 0
501 1
504 1
505 1
502
7
700 0
701 0
99
503
7
700 26.6
701 0.7
99
99
1912
28
2800 1
2801 0
2802 0
2803 0
2804 1
2805 0
2806 0
99
99
29
2907
13
1300 1
1301 304
1306 0
1302 1
1305 1
1303
7
700 1
701 1.35
99
1304 0
1307 0
1308 0
99
2908
28
2800 1
2801 0
2802 -0.715333
2803 0
2804 1
2805 -0.771778
2806 0
99
2901 2
99
99
302 0
304 0
303
305 0
306
307
308 1024
330 0
321 0
331 0
309 0
313 0
322 0
323 0
324 0
325 0
326 0
327 0
310 0
311 0
312
314
315 1
316 1
317 0
318 0
319 0
320 0
328 0
332 0
99
3
300 pwr_sliderbackground3
301
2
19
1904 O1
1900 3
1901 0
1902 12
1903 0
1908 0
1909 35
1910 35
1911 0
1915 0
1913 2
1916 2
1914 1
1918 0
1919 0
1920 0
1917 0
1921 0
1922 4
1923 0
1924 0
1925 0
1926 0
1907 0
1906
1905
5
500 0
501 1
504 1
505 1
502
7
700 0
701 0
99
503
7
700 3
701 12
99
99
1912
28
2800 1
2801 0
2802 0
2803 0
2804 1
2805 0
2806 0
99
99
99
302 0
304 0
303
305 0
306
307
308 524288
330 0
321 0
331 0
309 0
313 0
322 0
323 0
324 0
325 0
326 0
327 0
310 0
311 0
312
314
315 1
316 1
317 0
318 12
319 0
320 0
328 0
332 0
329
1
100 1
105 0
101 1
106 0
102 65532
103 0
99
99
3
300 pwrct_valueinputsmallbg
301
2
26
2604 O1
2600 2.45
2601 -0.15
2602 0.85
2603 -0.15
2605
25
2500 0
2501 1
2503 1
2504 0
2502
2
7
700 2.3
701 0
99
7
700 2.45
701 -0.15
99
7
700 -0.15
701 -0.15
99
7
700 -0.15
701 0.85
99
7
700 0
701 0.7
99
7
700 0
701 0
99
7
700 2.3
701 0
99
99
99
2608 0
2609 310
2629 10000
2610 310
2611 0
2616 0
2614 5
2617 2
2615 0
2618 1
2607 0
2606
2612
28
2800 1
2801 0
2802 -2.77556e-17
2803 0
2804 1
2805 -2.77556e-17
2806 0
99
2613 0
2619 0
2620 0
2626 0
2627 1
2621 0
2622 0
2623 0
2624 4
2625 1
2628 0
99
26
2604 O2
2600 2.45
2601 -0.15
2602 0.85
2603 -0.15
2605
25
2500 0
2501 1
2503 1
2504 0
2502
2
7
700 -0.15
701 0.85
99
7
700 2.45
701 0.85
99
7
700 2.45
701 -0.15
99
7
700 2.3
701 0
99
7
700 2.3
701 0.7
99
7
700 0
701 0.7
99
7
700 -0.15
701 0.85
99
99
99
2608 0
2609 310
2629 10000
2610 310
2611 0
2616 0
2614 5
2617 2
2615 0
2618 1
2607 0
2606
2612
28
2800 1
2801 0
2802 0
2803 0
2804 1
2805 0
2806 0
99
2613 0
2619 0
2620 0
2626 1
2627 0
2621 0
2622 0
2623 0
2624 4
2625 1
2628 0
99
19
1904 O3
1900 2.3
1901 0
1902 0.7
1903 0
1908 334
1909 330
1910 330
1911 1
1915 0
1913 15
1916 2
1914 0
1918 0
1919 0
1920 0
1917 1
1921 0
1922 2
1923 0
1924 0
1925 0
1926 0
1907 0
1906
1905
5
500 334
501 1
504 1
505 1
502
7
700 0
701 0
99
503
7
700 2.3
701 0.7
99
99
1912
28
2800 1
2801 0
2802 0
2803 0
2804 1
2805 0
2806 0
99
99
29
2907
13
1300 1
1301 304
1306 338
1302 1
1305 1
1303
7
700 1
701 1.35
99
1304 0
1307 4
1308 0
99
2908
28
2800 1
2801 0
2802 -0.715333
2803 0
2804 1
2805 -0.771778
2806 0
99
2901 2
99
99
302 0
304 0
303
305 0
306
307
308 1024
330 0
321 4096
331 0
309 0
313 0
322 0
323 0
324 0
325 0
326 0
327 0
310 0
311 0
312
314
315 1
316 1
317 0
318 0
319 0
320 0
328 0
332 0
329
1
100 1
105 0
101 1
106 0
102 65532
103 0
99
99
3
300 pwr_indsquare
301
2
19
1904 O1
1900 0.75
1901 0.15
1902 0.75
1903 0.1
1908 0
1909 293
1910 293
1911 1
1915 0
1913 15
1916 2
1914 0
1918 0
1919 0
1920 0
1917 0
1921 0
1922 4
1923 0
1924 0
1925 10000
1926 0
1907 0
1906
1905
5
500 0
501 1
504 1
505 1
502
7
700 0.15
701 0.1
99
503
7
700 0.75
701 0.75
99
99
1912
28
2800 1
2801 0
2802 0
2803 0
2804 1
2805 0
2806 0
99
99
99
302 0
304 0
303
305 0
306
307
308 4
330 0
321 0
331 0
309 29
313 0
322 0
323 0
324 0
325 0
326 0
327 0
310 0
311 0
312
314
315 1
316 1
317 0
318 0
319 0
320 0
328 0
332 0
329
1
100 1
105 0
101 1
106 0
102 33619964
103 0
99
99
99
124
2
99
125
2
33
3301 4
3302 100
3303 0
3304 0
3305 0
3300
27
2703 10000
2704 522
2731 10000
2722 10000
2705 522
2723 10000
2706 10000
2732 10000
2708 0
2709 0
2710 0
2711 0
2712 0
2713 0
2714 0
2715 0
2720 0
2725 0
2726 0
2702 0
2701
2700
10
1000 pwr_sliderbackground3
1002 O91
1005
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1006 20.0848
1007 16.5768
1008 10.7417
1009 2.65134
1013 20.0848
1014 16.5768
1015 10.7417
1016 2.65134
1003
0
0
0
0
0
0
0
0
0
0
1004
1001
7
700 15.75
701 7.95
99
1010
1011
1018
1019
1020
1021
1022
1023
1024
1025
1012 0
1017 9999
1027 9999
1026 65532
1028 0
1029
99
2707
28
2800 1.16932
2801 0
2802 16.5768
2803 0
2804 0.674199
2805 2.65134
2806 0
99
2716 0
2718
2717
2719 0
2724 0
2727 0
2728 303
2729 9999
2730 0
2721
1
100 1
105 0
101 1
106 0
102 65532
103 0
99
99
99
20
2004 O185
2000 20.0902
2001 16.5855
2002 4.26573
2003 4.26573
2009 526
2010 0
2005
6
600 526
601 1
602
7
700 24.3
701 9.35
99
603
7
700 19.5
701 9.35
99
99
2008
28
2800 0.730131
2801 0
2802 2.34799
2803 0
2804 0.675538
2805 -2.05055
2806 0
99
99
20
2004 O186
2000 20.0902
2001 16.5855
2002 5.88345
2003 5.88345
2009 526
2010 0
2005
6
600 526
601 1
602
7
700 24.3
701 9.35
99
603
7
700 19.5
701 9.35
99
99
2008
28
2800 0.730131
2801 0
2802 2.34799
2803 0
2804 0.675538
2805 -0.432833
2806 0
99
99
20
2004 O187
2000 20.0902
2001 16.5855
2002 7.49245
2003 7.49245
2009 526
2010 0
2005
6
600 526
601 1
602
7
700 24.3
701 9.35
99
603
7
700 19.5
701 9.35
99
99
2008
28
2800 0.730131
2801 0
2802 2.34799
2803 0
2804 0.675538
2805 1.17616
2806 0
99
99
20
2004 O188
2000 20.0902
2001 16.5855
2002 9.10097
2003 9.10097
2009 526
2010 0
2005
6
600 526
601 1
602
7
700 24.3
701 9.35
99
603
7
700 19.5
701 9.35
99
99
2008
28
2800 0.730131
2801 0
2802 2.34799
2803 0
2804 0.675538
2805 2.78469
2806 0
99
99
37
3700 100
3701 0
3702
19
1904
1900 16.5578
1901 14.8133
1902 10.7266
1903 2.66387
1908 582
1909 446
1910 446
1911 1
1915 0
1913 5
1916 2
1914 0
1918 0
1919 0
1920 0
1917 0
1921 0
1922 4
1923 0
1924 0
1925 0
1926 0
1907 0
1906
1905
5
500 582
501 1
504 1
505 0
502
7
700 30.25
701 11.4
99
503
7
700 31.45
701 16.4
99
99
1912
28
2800 1.45378
2801 0
2802 -29.1634
2803 0
2804 1.61254
2805 -15.719
2806 0
99
99
3703 51
3704 5
3705 10
3706 %5.2f
3707 1
3708 303
3709 326
3710
1
100 1
105 1
101 1
106 0
102 35454972
103 0
38
3800 $object.MinShow##Float32
3801 $object.MaxShow##Float32
3802 0
99
99
99
32
3200 0.02
3215 100
3201 -0.02
3216 0
3231 0
3233 0
3232 0
3234 0
3208 4
3209 9
3210 0
3202 578
3217 172
3211 28
3218 9999
3212 200
3213 1
3204 $object.SetVal##Float32
3205 $object.ProcVal##Float32
3219
3220
3221
3222
3223
3224
3225
3226
3206 0
3207 9999
3227 65532
3228 0
3229
3203
19
1904 ActualValueTrend
1900 46.7128
1901 20.1032
1902 10.7272
1903 2.66843
1908 574
1909 570
1910 570
1911 1
1915 0
1913 5
1916 2
1914 0
1918 0
1919 0
1920 0
1917 0
1921 0
1922 4
1923 0
1924 0
1925 0
1926 0
1907 0
1906
1905
5
500 574
501 1
504 1
505 1
502
7
700 19.15
701 4.1
99
503
7
700 39.6
701 11.2
99
99
1912
28
2800 1.3012
2801 0
2802 -4.81473
2803 0
2804 1.13503
2805 -1.98521
2806 0
99
99
3214 0.5
3230
1
100 262144
105 0
101 0
106 0
102 65532
103 2
23
2300 $object.LastCoef##Float32
2301
2302 $object.MinShow##Float32
2303 $object.MaxShow##Float32
2304
2305
2306
2307 $local.ScanTime##Float32
2308 $object.MinLimit##Float32
2309 $object.MaxLimit##Float32
2310 105
2311 105
99
99
99
30
3004 O267
3000 46.5
3001 46.25
3002 11.7
3003 11.15
3008 103
3010 0
3011 2
3007 0
3006
3005
9
900 1
901 303
904 0
902 0
903
7
700 39.0162
701 11.7661
99
99
3009
28
2800 1
2801 0
2802 7.2338
2803 0
2804 1
2805 -0.1661
2806 0
99
99
31
3100 100
3101 0
3102 35
3103 510
3110 518
3111 1
3105
19
1904 ActualValueBar
1900 19.0989
1901 17.5414
1902 10.732
1903 2.67694
1908 0
1909 514
1910 514
1911 1
1915 0
1913 5
1916 2
1914 0
1918 0
1919 0
1920 0
1917 0
1921 0
1922 4
1923 0
1924 0
1925 0
1926 0
1907 0
1906
1905
5
500 0
501 1
504 1
505 1
502
7
700 24.05
701 7.05
99
503
7
700 24.55
701 12.05
99
99
1912
28
2800 3.11513
2801 0
2802 -57.3775
2803 0
2804 1.61101
2805 -8.68068
2806 0
99
99
3123
1
100 131072
105 0
101 0
106 0
102 65532
103 2
22
2200 $object.LastCoef##Float32
2201 $object.MinShow##Float32
2202 $object.MaxShow##Float32
99
99
99
37
3700 0
3701 100
3702
19
1904 O312
1900 48.5518
1901 46.7655
1902 10.7264
1903 2.6688
1908 582
1909 446
1910 446
1911 1
1915 0
1913 5
1916 2
1914 0
1918 0
1919 0
1920 0
1917 0
1921 0
1922 4
1923 0
1924 0
1925 0
1926 0
1907 0
1906
1905
5
500 582
501 1
504 1
505 0
502
7
700 30.25
701 11.4
99
503
7
700 31.45
701 16.4
99
99
1912
28
2800 -1.48859
2801 0
2802 93.5816
2803 -0
2804 -1.61152
2805 29.0978
2806 -180
99
99
3703 51
3704 5
3705 10
3706 %5.2f
3707 1
3708 303
3709 326
3710
1
100 1
105 1
101 1
106 0
102 35454972
103 0
38
3800 $object.MaxShow##Float32
3801 $object.MinShow##Float32
3802 0
99
99
99
27
2703 334
2704 330
2731 310
2722 338
2705 330
2723 338
2706 334
2732 10000
2708 0
2709 0
2710 0
2711 0
2712 0
2713 0
2714 0
2715 0
2720 0
2725 0
2726 0
2702 0
2701
2700
10
1000 pwrct_valueinputsmallbg
1002 O317
1005
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1006 14.4
1007 11.8
1008 3.5
1009 2.5
1013 14.4
1014 11.8
1015 3.5
1016 2.5
1003
0
0
0
0
0
0
0
0
0
0
1004
1001
7
700 64.35
701 17.7
99
1010
1011
1018
1019
1020
1021
1022
1023
1024
1025
1012 0
1017 9999
1027 9999
1026 35454972
1028 0
1029
99
2707
28
2800 1
2801 0
2802 11.95
2803 0
2804 1
2805 2.65
2806 0
99
2716 0
2718
2717
2719 0
2724 1
2727 0
2728 303
2729 9999
2730 0
2721
1
100 1024
105 0
101 4096
106 0
102 65535
103 0
12
1200 $object.MaxShow##Float32
1201 %5.2f
1202 1
1203 1
1204 0
1205 $object.NoOfDecimals##UInt32
1206 1
99
13
1302 0
1303 0
1304 0
1305 0
1306 0
1307
1308
1309 0
1310 0
1311 0
99
99
99
27
2703 334
2704 330
2731 310
2722 338
2705 330
2723 338
2706 334
2732 10000
2708 0
2709 0
2710 0
2711 0
2712 0
2713 0
2714 0
2715 0
2720 0
2725 0
2726 0
2702 0
2701
2700
10
1000 pwrct_valueinputsmallbg
1002 O318
1005
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1006 14.4
1007 11.8
1008 11
1009 10
1013 14.4
1014 11.8
1015 11
1016 10
1003
0
0
0
0
0
0
0
0
0
0
1004
1001
7
700 64.35
701 17.7
99
1010
1011
1018
1019
1020
1021
1022
1023
1024
1025
1012 0
1017 9999
1027 9999
1026 35454972
1028 0
1029
99
2707
28
2800 1
2801 0
2802 11.95
2803 0
2804 1
2805 10.15
2806 0
99
2716 0
2718
2717
2719 0
2724 1
2727 0
2728 303
2729 9999
2730 0
2721
1
100 1024
105 0
101 4096
106 0
102 65535
103 0
12
1200 $object.MinShow##Float32
1201 %5.2f
1202 1
1203 1
1204 0
1205 $object.NoOfDecimals##UInt32
1206 1
99
13
1302 0
1303 0
1304 0
1305 0
1306 0
1307
1308
1309 0
1310 0
1311 0
99
99
99
27
2703 394
2704 390
2731 10000
2722 398
2705 390
2723 398
2706 394
2732 10000
2708 0
2709 0
2710 0
2711 0
2712 0
2713 0
2714 0
2715 0
2720 0
2725 0
2726 0
2702 0
2701
2700
10
1000 pwr_valuemedium
1002 O359
1005
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1006 14.2556
1007 8.9094
1008 6.47795
1009 5.394
1013 14.2556
1014 8.9094
1015 6.47795
1016 5.394
1003
0
0
0
0
0
0
0
0
0
0
1004
1001
7
700 6.9
701 4.25
99
1010 $object.OutChange##Float32
1011 %10.3f
1018
1019
1020
1021
1022
1023
1024
1025
1012 5
1017 9999
1027 9999
1026 62
1028 0
1029
99
2707
28
2800 1.78208
2801 0
2802 8.9094
2803 0
2804 1.08395
2805 5.394
2806 0
99
2716 0
2718
2717
2719 0
2724 0
2727 0
2728 303
2729 4
2730 0
2721
1
100 1024
105 0
101 0
106 0
102 65532
103 0
12
1200 $object.InitCoef##Float32
1201 %10.3f
1202 1
1203 1
1204 0
1205 $object.NoOfDecimals##UInt32
1206 0
99
99
99
30
3004 O360
3000 6.6056
3001 3.7056
3002 6.28302
3003 5.43302
3008 326
3010 4
3011 2
3007 0
3006
3005
9
900 4
901 303
904 326
902 InitCoef
903
7
700 1.1
701 2.5
99
99
3009
28
2800 1
2801 0
2802 2.6056
2803 0
2804 1
2805 3.63302
2806 0
99
99
30
3004 O362
3000 7.1056
3001 3.7056
3002 4.8563
3003 4.0063
3008 326
3010 4
3011 2
3007 0
3006
3005
9
900 4
901 303
904 326
902 LastCoef
903
7
700 1.1
701 2.5
99
99
3009
28
2800 1
2801 0
2802 2.6056
2803 0
2804 1
2805 2.2063
2806 0
99
99
27
2703 310
2704 310
2731 10000
2722 326
2705 310
2723 326
2706 310
2732 10000
2708 0
2709 0
2710 0
2711 0
2712 0
2713 0
2714 0
2715 0
2720 0
2725 0
2726 0
2702 0
2701
2700
10
1000 pwr_valuelong
1002 O432
1005
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1006 38.5778
1007 3.74297
1008 2.21867
1009 1.26412
1013 38.5778
1014 3.74297
1015 2.21867
1016 1.26412
1003
0
0
0
0
0
0
0
0
0
0
1004
1001
7
700 6.69297
701 2.21866
99
1010 $object.Description##String80
1011 %s
1018
1019
1020
1021
1022
1023
1024
1025
1012 0
1017 9999
1027 9999
1026 65532
1028 0
1029
99
2707
28
2800 1.30958
2801 0
2802 3.74297
2803 0
2804 1.36364
2805 1.26412
2806 0
99
2716 0
2718
2717
2719 0
2724 0
2727 0
2728 303
2729 4
2730 0
2721
1
100 1
105 0
101 1
106 0
102 65532
103 0
12
1200 $object.Description##String80
1201 %s
1202 1
1203 1
1204 0
1205
1206 0
99
99
99
27
2703 334
2704 330
2731 310
2722 338
2705 330
2723 338
2706 334
2732 10000
2708 0
2709 0
2710 0
2711 0
2712 0
2713 0
2714 0
2715 0
2720 0
2725 0
2726 0
2702 0
2701
2700
10
1000 pwrct_valueinputsmallbg
1002 O456
1005
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1006 22.6
1007 20
1008 11.9
1009 10.9
1013 22.6
1014 20
1015 11.9
1016 10.9
1003
0
0
0
0
0
0
0
0
0
0
1004
1001
7
700 64.35
701 17.7
99
1010
1011
1018
1019
1020
1021
1022
1023
1024
1025
1012 0
1017 9999
1027 9999
1026 35454972
1028 0
1029
99
2707
28
2800 1
2801 0
2802 20.15
2803 0
2804 1
2805 11.05
2806 0
99
2716 0
2718
2717
2719 0
2724 1
2727 0
2728 303
2729 9999
2730 0
2721
1
100 1024
105 0
101 4096
106 0
102 65535
103 0
12
1200 $local.ScanTime##Float32
1201 %5.0f
1202 1
1203 1
1204 0
1205
1206 0
99
13
1302 4
1303 100000
1304 0
1305 0
1306 0
1307
1308
1309 0
1310 0
1311 0
99
99
99
27
2703 394
2704 390
2731 10000
2722 398
2705 390
2723 398
2706 394
2732 10000
2708 0
2709 0
2710 0
2711 0
2712 0
2713 0
2714 0
2715 0
2720 0
2725 0
2726 0
2702 0
2701
2700
10
1000 pwr_valuemedium
1002 O497
1005
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1006 14.2556
1007 8.9094
1008 7.87795
1009 6.794
1013 14.2556
1014 8.9094
1015 7.87795
1016 6.794
1003
0
0
0
0
0
0
0
0
0
0
1004
1001
7
700 6.9
701 4.25
99
1010 $object.OutChange##Float32
1011 %10.3f
1018
1019
1020
1021
1022
1023
1024
1025
1012 5
1017 9999
1027 9999
1026 62
1028 0
1029
99
2707
28
2800 1.78208
2801 0
2802 8.9094
2803 0
2804 1.08395
2805 6.794
2806 0
99
2716 0
2718
2717
2719 0
2724 0
2727 0
2728 303
2729 4
2730 0
2721
1
100 1024
105 0
101 0
106 0
102 65532
103 0
12
1200 $object.MaxLimit##Float32
1201 %10.3f
1202 1
1203 1
1204 0
1205 $object.NoOfDecimals##UInt32
1206 0
99
99
99
30
3004 O498
3000 7.0056
3001 3.7056
3002 7.73302
3003 6.88302
3008 326
3010 4
3011 2
3007 0
3006
3005
9
900 4
901 303
904 326
902 MaxLimit
903
7
700 1.1
701 2.5
99
99
3009
28
2800 1
2801 0
2802 2.6056
2803 0
2804 1
2805 5.08302
2806 0
99
99
30
3004 O499
3000 6.7056
3001 3.7056
3002 9.1063
3003 8.2563
3008 326
3010 4
3011 2
3007 0
3006
3005
9
900 4
901 303
904 326
902 MinLimit
903
7
700 1.1
701 2.5
99
99
3009
28
2800 1
2801 0
2802 2.6056
2803 0
2804 1
2805 6.4563
2806 0
99
99
30
3004 O503
3000 6.1056
3001 3.7056
3002 3.63302
3003 2.78302
3008 326
3010 4
3011 2
3007 0
3006
3005
9
900 4
901 303
904 326
902 Status
903
7
700 1.1
701 2.5
99
99
3009
28
2800 1
2801 0
2802 2.6056
2803 0
2804 1
2805 0.98302
2806 0
99
99
27
2703 370
2704 410
2731 10000
2722 10000
2705 410
2723 10000
2706 370
2732 10000
2708 0
2709 0
2710 0
2711 0
2712 0
2713 0
2714 0
2715 0
2720 0
2725 0
2726 0
2702 0
2701
2700
10
1000 pwr_indsquare
1002 O504
1005
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1006 10.15
1007 8.95
1008 3.75
1009 2.45
1013 10.15
1014 8.95
1015 3.75
1016 2.45
1003
0
0
0
0
0
0
0
0
0
0
1004
1001
7
700 8.7
701 2.7
99
1010
1011
1018
1019
1020
1021
1022
1023
1024
1025
1012 0
1017 9999
1027 9999
1026 35454972
1028 0
1029
99
2707
28
2800 2
2801 0
2802 8.65
2803 0
2804 2
2805 2.25
2806 0
99
2716 0
2718
2717
2719 0
2724 0
2727 0
2728 303
2729 9999
2730 0
2721
1
100 33554432
105 0
101 1
106 0
102 35454972
103 0
31
3100 $object.Status##Status
3101 374
3102 1
99
99
99
27
2703 310
2704 310
2731 10000
2722 326
2705 310
2723 326
2706 310
2732 10000
2708 0
2709 0
2710 0
2711 0
2712 0
2713 0
2714 0
2715 0
2720 0
2725 0
2726 0
2702 0
2701
2700
10
1000 pwr_valuelong
1002 O505
1005
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1006 11.8144
1007 3.50913
1008 10.9687
1009 10.0141
1013 11.8144
1014 3.50913
1015 10.9687
1016 10.0141
1003
0
0
0
0
0
0
0
0
0
0
1004
1001
7
700 6.69297
701 2.21866
99
1010 $object.Description##String80
1011 %s
1018
1019
1020
1021
1022
1023
1024
1025
1012 0
1017 9999
1027 9999
1026 65532
1028 0
1029
99
2707
28
2800 0.312227
2801 0
2802 3.50913
2803 0
2804 1.36364
2805 10.0141
2806 0
99
2716 0
2718
2717
2719 0
2724 0
2727 0
2728 303
2729 4
2730 0
2721
1
100 1
105 0
101 1
106 0
102 65532
103 0
12
1200 $object.Status##Status
1201 %1m
1202 1
1203 1
1204 0
1205
1206 0
99
99
99
27
2703 394
2704 390
2731 10000
2722 398
2705 390
2723 398
2706 394
2732 10000
2708 0
2709 0
2710 0
2711 0
2712 0
2713 0
2714 0
2715 0
2720 0
2725 0
2726 0
2702 0
2701
2700
10
1000 pwr_valuemedium
1002 O506
1005
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1006 14.2556
1007 8.9094
1008 5.07795
1009 3.994
1013 14.2556
1014 8.9094
1015 5.07795
1016 3.994
1003
0
0
0
0
0
0
0
0
0
0
1004
1001
7
700 6.9
701 4.25
99
1010 $object.OutChange##Float32
1011 %10.3f
1018
1019
1020
1021
1022
1023
1024
1025
1012 5
1017 9999
1027 9999
1026 62
1028 0
1029
99
2707
28
2800 1.78208
2801 0
2802 8.9094
2803 0
2804 1.08395
2805 3.994
2806 0
99
2716 0
2718
2717
2719 0
2724 0
2727 0
2728 303
2729 4
2730 0
2721
1
100 1024
105 0
101 0
106 0
102 65532
103 0
12
1200 $object.LastCoef##Float32
1201 %10.3f
1202 1
1203 1
1204 0
1205 $object.NoOfDecimals##UInt32
1206 0
99
99
99
27
2703 394
2704 390
2731 10000
2722 398
2705 390
2723 398
2706 394
2732 10000
2708 0
2709 0
2710 0
2711 0
2712 0
2713 0
2714 0
2715 0
2720 0
2725 0
2726 0
2702 0
2701
2700
10
1000 pwr_valuemedium
1002 O507
1005
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1006 14.2556
1007 8.9094
1008 9.27795
1009 8.194
1013 14.2556
1014 8.9094
1015 9.27795
1016 8.194
1003
0
0
0
0
0
0
0
0
0
0
1004
1001
7
700 6.9
701 4.25
99
1010 $object.OutChange##Float32
1011 %10.3f
1018
1019
1020
1021
1022
1023
1024
1025
1012 5
1017 9999
1027 9999
1026 62
1028 0
1029
99
2707
28
2800 1.78208
2801 0
2802 8.9094
2803 0
2804 1.08395
2805 8.194
2806 0
99
2716 0
2718
2717
2719 0
2724 0
2727 0
2728 303
2729 4
2730 0
2721
1
100 1024
105 0
101 0
106 0
102 65532
103 0
12
1200 $object.MinLimit##Float32
1201 %10.3f
1202 1
1203 1
1204 0
1205 $object.NoOfDecimals##UInt32
1206 0
99
99
99
99
99
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment