Газовый корректор: архивы

advertisement
Газовый корректор. Архивы.
Версия ПО: 82.01.05.xx.
1. Интервальные архивы.
Типы архивов:
1080 часовых (45 суток),
185 суточных (около 6 месяцев),
73 декадных (около 2 лет),
48 месячных (4 года),
Записи в архивах располагаются последовательно по порядку их внесения,
циклически. Метка времени у архивной записи является временем окончания
интервала (начала следующего интервала). У стертых архивных записей все
поля равны нулю, для метки времени это означает 00:00:00 01.01.1970.
Часовые архивы начинаются с целого часа.
Суточные архивы состоят из целого числа часовых архивов; начинаются с
отчетного часа в сутках.
Декадные архивы состоят из целого числа суточных архивов; первая декада
начинается с отчетной даты месяца, первая и вторая декады имеют по 10 дней,
третья – оставшееся время (от 8 до 11 дней, в зависимости от количества дней в
предыдущем месяце).
Месячные архивы состоят из целого числа декадных архивов; начинаются с
отчетной даты месяца.
При смене отчетного часа в сутках или отчетных суток в месяце: при
следующей смене часа или отчетных суток заканчивается текущий интервал,
создается соответствующая архивная запись (суточная или декадная, месячная),
и отсчет интервала начинается с начала.
При рестарте прибора определяются последние записи в архивах (по
изменению вспомогательного бита), проверяется текущее время. При сбое
времени устанавливаются флаги сбоя времени (и накопленных значений) для
первых архивных записей, текущее время устанавливается по последней
часовой записи + 1 сек (либо, при очищенных архивах - по времени компиляции
программы).
При сбросе накопленных значений заканчиваются текущие интервалы,
создаются записи для них (с меткой времени: текущее время - 1 сек), затем
накопленные значения обнуляются, продолжается накопление. Время начала
каждого интервала устанавливается по текущему времени.
При создании первой записи после стирания архивов перед ней помещается
пустая запись с временем начала интервала - 1 сек (с флагом пустой записи).
При начале летнего времени создается пустая часовая архивная запись для
пропускаемого часа (с флагом пустой записи). У содержащих этот интервал
суточных, декадных, месячных записей устанавливается флаг перевода времени
внутри интервала.
При окончании летнего времени соответствующая часовая архивная запись
имеет длительность 2 часа. У этой записи (и у содержащих этот интервал
суточных, декадных, месячных записей) устанавливается флаг перевода
времени внутри интервала.
При установке времени, если новое время выходит за интервал архивации,
то заканчивается текущий интервал, создается запись для него со старым
временем - 1 сек (без установки флага перевода времени в интервале), затем
создается пустая запись с новым временем - 1 сек (с установленным флагом
пустой записи). Если перевод времени осуществлен внутри интервала, то
проверяется возможность переполнения счетчиков времени на интервале. Если
переполнение не произойдет, то устанавливается флаг перевода времени внутри
интервала и накопление для интервала продолжается. Если может произойти
переполнение, то заканчивается текущий интервал, создается запись для него со
старым временем - 1 сек (без установки флага перевода времени в интервале),
затем создается пустая запись с новым временем (с установленным флагом
пустой записи). (При однократном переводе времени переполнение возможно
только для месячного архива при переводе не менее 14 суток назад.)
При запросе архивной записи по времени: передается запись, на интервале
которой (включая начало, не включая окончание) содержится заданное время.
После перевода времени назад некоторые записи могут стать недоступными при
запросе по времени (для доступа к ним может применяться запрос по индексу
или последовательный просмотр в меню).
Длительность интервала архивной записи может быть определена по
разности времени этой и предыдущей записи, аналогично и для приращений
накопленных значений за интервал (с учетом возможности переполнения: для 4х байтового целого при достижении значения 1000000000 происходит сброс в
0). Отступления от этих правил возникают при установленных флагах состояния
системы (см. далее).
Если у архивной записи установлен флаг сброса накопленных значений, то
приращения накопленных значений за интервал определяются самими
значениями (а не разностью с предыдущей записью) (приращение времени
определяется по разности с предыдущей записью).
Если у архивной записи установлен флаг сбоя времени и накопленных
значений, то для нее не могут быть вычислены приращения времени и
накопленных значений (по разности с предыдущей записью).
Если у архивной записи установлен флаг перевода времени внутри
интервала, то длительность интервала отличается от разности времен этой и
предыдущей записи.
Если у архивной записи установлен флаг пустой архивной записи, то
длительность этого интервала равна нулю.
Структура интервальных архивов.
Размер
Тип
4
время
2
беззнаковое
целое
знаковое
целое
вещественное
вещественное
беззнаковое
целое
2
4
4
4
Размерн
ость
сек.
б/р
0,01 °C
кПа
кПа
м³
Значение
за 1 сек до окончания интервала и начала
следующего интервала (от 00:00:00 01.01.1970)
индекс архивной записи (не хранится в архиве:
передается только в ответе)
средняя температура за интервал
среднее абсолютное давление 1 за интервал
среднее абсолютное давление 2 за интервал
полный накопленный рабочий преобразованный
объем
4
беззнаковое
целое
беззнаковое
целое
беззнаковое
целое
беззнаковое
целое
битовое поле:
бит 0
бит 1
бит 2
бит 3
бит 4
бит 5
бит 6
бит 7
бит 8
бит 9
биты 10..15
м³
полный накопленный стандартный объем
кг
полная накопленная масса
м³
полный накопленный стандартный объем при
превышении лимита расхода
полная накопленная теплота сгорания
часовой
архив:
по 1,
остальные:
по 2
беззнаковое
целое
мин.
часовой
архив: нет,
остальные:
4
1
беззнаковое
целое
м³
битовое поле:
бит 0
бит 1
бит 2
бит 3
бит 4
биты 5..7
б/р
4
4
4
2
0,1 ГДж
б/р
состояние измерений (за интервал):
разрыв контура тока
температура вне диапазона
давление 1 вне диапазона
давление 1 в окрестности нуля
давление 2 вне диапазона
давление 2 в окрестности нуля
рабочий расход вне диапазона
рабочий расход в окрестности нуля
рабочий расход меньше минимального
отсутствие питания
не используются
времена НС за интервал:
температура вне диапазона, разрыв контура тока
давление 1 вне диапазона
давление 2 вне диапазона
рабочий расход вне диапазона
рабочий расход в окрестности нуля
рабочий расход меньше минимального
отсутствие питания
(резерв)
(резерв)
полное накопленное превышение суточных
стандартных объемов
состояние системы (за интервал):
сброс накопленных значений
сбой времени (и накопленных значений)
режим Сервис, Настройка
перевод времени внутри интервала
пустая архивная запись
не используются
2. Архив записей параметров газа.
Архив предназначен для сохранения значений параметров газа в связи с
возможностью их изменения в режиме Работа. Архив содержит 2005 записей.
Запрос записей производится только по индексу, при этом для первых 5
индексов возвращаются текущие значения параметров, для следующих
индексов - значения из архива, причем в порядке, обратном к порядку записи.
Для отсутствующей записи возвращаются все поля, равные 0. В архивной
записи хранится старое (перед изменением) значение. Таким образом, область
действия значения из записи по времени - назад, по индексам - вперед.
Номер
байта
0
Название
параметра
Время записи
Размерность
Тип
Комментарий
сек
unsigned
long
4
Индекс
архивной записи
б/р
unsigned
int
6
Старое значение
параметра
float
10
Индекс
параметра
зависит от
параметра
(см. индекс
параметра)
б/р
От 00:00:00 01.01.1970. При
увеличении индекса время
убывает. Для отсутствующей
записи равно 0 (00:00:00
01.01.1970)
Для индексов 0..4 - текущие
значения соответствующих
параметров, для следующих
индексов - архивные значения.
Для отсутствующей записи все
поля равны 0.
Область действия значения: для
времени - назад, для индексов:
вперед.
unsigned
char
=0: удельная теплота сгорания
газа, МДж/м3
=1: плотность газа при
стандартных условиях, кг/м3
=2: концентрация диоксида
углерода, мол. доли
=3: концентрация азота, мол. доли
=4: концентрация водяного пара,
об. доли
Download