Содержание материала

Расчетные сутки, расчетный месяц

Свойство «период» параметра БД Electro в частности имеет значения СУТКИ, МЕСЯЦ в контексте локального календаря. Параметр с суточным периодом определен на интервалах оси времени, образованных метками локального времени 00:00:00. Соответственно, параметр с месячным периодом определен на интервалах оси времени, образованных метками локального времени 00:00:00 первого календарного дня месяца.
Значения РАСЧЕТНЫЕ СУТКИ, РАСЧЕТНЫЙ МЕСЯЦ представляют из себя дальнейшее обобщение. В конфигурации системы Electro имеются константы CALCDAYH и CALCMOND. Константа CALCDAYH задает значение часов (0..23) меток времени, образующих интервалы расчетных суток и месяца. Константа CALCMOND задает значение дня (1..28) меток времени, образующих интервалы расчетного месяца.
Значения констант CALCDAYH (стандартное значение 9) и CALCMOND (стандартное значение 1) могут быть изменены в файле ELECTRO.INI в строке LICENZ, например
LICENZ=1 OWN="ХХХ" TMLIM=0 DEV=10 OBJ=1000 CALCDAYH =7 CALCMOND=15
т.е. расчетные сутки и месяц будут начинаться в 07:00:00 локального времени; кроме того расчетный месяц начинается 15-го числа календарного месяца.
Значения CALCDAYH=0 CALCMOND=1 превращают расчетные интервалы в обычные календарные.

Вычисляемый параметр. Агрегатирующие функции

Вычисляемый (расчетный) параметр данного типа строится путем применения к базовому параметру (периодическому или непериодическому) одной из функций агрегатирования на интервалах создаваемого параметра. Дополнительно вычисленное значение умножается на заданный коэффициент.
Например, имеем базовый параметр «текущая активная мощность». Если мы хотим получить количество энергии за получасовые интервалы – создадим вычисляемый параметр с периодом 1800 и функцией агрегатирования INTG. Если нам нужно усреднить мощность на 5-ти-минутных интервалах – создадим вычисляемый параметр с периодом 300 и функцией агрегатирования AVGTM. И т.п.

Обозначение

Описание, пример применения

0

MIN

Минимальное значение

1

MAX

Максимальное значение

2

AVG

Среднеарифметическое значение
AVG = SUM / POINT_CNT
ПРИМЕР. Вряд ли в измерительных системах эта функция применима, т.к. она не учитывает положение усредняемых точек на оси времени. Более подходящая – функция AVGTM

3

INTG

Численное интегрирование (метод прямоугольников)
ОСОБЕННОСТЬ. Прямоугольники строятся вправо от опорной точки. Поэтому для построения первого в интервале прямоугольника берется точка слева от расчетного интервала. Если эту точку прочитать не удалось, первый прямоугольник строится влево от первой опорной точки.
Если опорные точки отсутствуют, значение в интервале не вычисляется.
ПРИМЕР. Если базовый параметр – мощность, то применение к нему функции INTG даст значение энергии на интервале.

4

AVGTM

Среднее по времени значение
AVGTM = INTG / dT
ПРИМЕР. Если базовый параметр – мощность, то применение к нему функции AVGTM даст усредненное на интервале значение мощности.

5

FIRST

Первое прочитанное значение

6

LAST

Последнее прочитаннное значение

7

SUM

Арифметическая сумма

8

CNT

Количество переходов "ноль" ßà "не ноль"

9

CNT0

Количество переходов "не ноль" à "ноль"

10

CNT1

Количество переходов "ноль" à "не ноль"

11

TM0

Время (секунды) нахождения в состоянии "ноль"

12

TM1

Время (секунды) нахождения в состоянии "не ноль",

13

DIF

Приращение значения

14

TM_FIRST

Время первого прочитанного значения

15

TM_LAST

Время последнего прочитанного значения

16

POINT_CNT

Количество значений

17

ROUND

Округление
Умножение на коэффицент выполняется ПОСЛЕ округления базовой величины.

18

PROJ

Проекция (пропорциональное копирование)

19

SHARP

Линейная интерполяция на начало интервала по двум точкам
Вычисляется значение базового параметра (в момент начала периода) по двум ближайшим точкам (слева и справа).
ОСОБЕННОСТЬ. Точка слева – это последняя точка в предыдущем интервале, тачка справа – первая точка в текущем интервале. Если левая или правая точки отсутствуют, значение не вычисляется.
ПРИМЕР. Если необходимо оценить показание счетчика на начало суток (00:00:00), а базовый параметр опрашивался скажем раз в 10мин. Создадим вычисляемый параметр SHARP с периодом СУТКИ.

Вычисляемый параметр. Препроцессор

Если вычисляемый параметр типа Агрегатирование описывается некоторой функцией над базовым параметром (см. Вычисляемый параметр. Агрегатирующие функции), то параметр типа Препроцессор рассчитывается на основе нескольких базовых параметров. Дополнительно вычисленное значение умножается на заданный коэффициент.
Препроцессор

Список процедур препроцессора

Обозначение

Описание, пример применения

20

LPCALC(@;@)

Вычисление ГН по типовому ГН и опорным точкам

21

LPREST(@;@)

Восстановление ГН по исходному ГН и суточной энергии

22

LPREST2(@;@)

Восстановление ГН по исходному ГН и суточной мощности

23

REPL1(@;@)

(@2!=0) ? @2 : @1

24

MASK1(@;@)

(@2!=0) ? 0.0 : @1

25

MINCNST(@;koef)

(@1>=koef) ? @1 : koef
Процедура сравнивает значение базовой величины с константой koef, указанной в поле Множитель свойств вычисляемой величины (значение Множителя соответственно не используется по назначению!).
Периоды базовой и вычисляемой величины могут быть различными, в т.ч. и непериодическими. Если в период вычисляемой величины попадает несколько значений базовой величины, то среди них находится минимальное значение, после чего оно сравнивается с koef.

26

MAXCNST(@;koef)

(@1<=koef) ? @1 : koef
См. описание MINCNST

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рекомендация. Для изучения поведения процедур препроцессора создайте базовые параметры типа Ручной ввод. Вводите значения базовых параметров (утилита ManInput.exe) и наблюдайте значения вычисляемой величины (утилита DBView.exe).