4.2.5.3. Просмотр истории
Для просмотра истории будет использоваться встраиваемый компонент Astra.HMI.Trends.
Чтобы настроить просмотр истории необходимо выполнить следующие действия:
1. В проекте Astra.HMI добавьте новый источник AP и укажите ему следующие свойства:
Порт - должен быть таким же как и в Astra.Astudio.
Порт истории - должен быть таким же как и в Astra.Astudio.
Хост - адрес источника данных.
Активность подключения - true.

2. Добавьте внешний модуль Astra.HMI.Trends, переместив его из следующей папки:
C:\Program Files\AstraRegul\Astra.HMI.Extensions
|
В папку externals проекта.

3. Чтобы добавленный модуль отобразился в проекте необходимо воспользоваться командой «Обновить ссылки на внешние юниты» из вкладки Проект.

4. Добавьте из вкладки «Внешние модули» экземпляр типа Trends на мнемосхему.

5. У экземпляра типа Trends в редакторе свойств в свойстве int_AP укажите ссылку на добавленный источник в глобальном объекте.

6. Запустите проект в режим исполнения клавишей F9 или воспользуйтесь командами из вкладки «Проект».

7. После запуска проекта в режиме исполнения откроется форма с экземпляром типа Trends.

8. В дереве сигналов раскройте папку «Object» и добавьте на поле графиков 2 сигнала Parameter1 и Parameter2 путем перетаскивания сигналов на трендовое поле.

9. Откройте приложение Astra.HMI.Explorer и добавьте сигналы Astra.Imitator из папки «Imitation» в таблицу сигналов, кликнув правой кнопкой мыши по папке.

10. Откройте новую сессию воспроизведения истории, установив значение сигнала «BeginSession» = «0».

Новая сессия открывается только если нет активной сессии – флаг наличия активной сессии «SessionInProgress» = «false». Если «SessionInProgress» = «true», то необходимо завершить текущую сессию воспроизведения истории, установив значение сигнала «EndSession» = «true».
11. Задайте временной интервал в формате datetime_json, за который требуется воспроизвести историю, а также скорость проигрывания, установив значения сигналов:
«SetIntervalStart» = {"y":2025,"mo":5,"d":28,"h":2,"m":50,"s":0,"ms":0};
«SetIntervalEnd» = {"y":2025,"mo":5,"d":28,"h":3,"m":5,"s":0,"ms":0};
«SetSpeed» = 1.
Данные сигналы устанавливают значения сигналов «IntervalStart», «IntervalEnd», «Speed» соответственно.

12. Загрузите данные для воспроизведения истории, установив значение сигнала «LoadData» = «true».
Процент загруженных данных отображается в значении сигнала «DataLoaded».

13. После полной загрузки данных («DataLoaded» == «100») запустите воспроизведение истории, установив значение сигнала «SetState» = «1».

14. Перейдите на открытую форму в режиме исполнения с запущенным экземпляром типа Trends. Astra.Imitator начнет воспроизведение истории сигналов за выбранный интервал в сигнала SetIntrevalEnd и SetIntervalStart.

В процессе воспроизведения истории («State» == «1») возможно:
Изменение скорости воспроизведения в сигнале «SetSpeed».
Изменение текущего положения воспроизведения в сигнале «SetCurrent».
Приостановка воспроизведения (пауза) - «SetState» = «0».
Завершение сессии воспроизведения - «EndSession» = «true».
При достижении конца воспроизводимого интервала или приостановке воспроизведения («State» == «0») возможно:
Изменение скорости воспроизведения истории в сигнале «SetSpeed».
Изменение текущего положения воспроизведения в сигнале «SetCurrent».
Возобновление воспроизведения - «SetState» = «1».
Завершение сессии воспроизведения - «EndSession» = «true».
Чтобы завершить сессию воспроизведения истории, установите значение сигнала «EndSession» = «true».
При этом сбрасываются значения сигналов «IntervalEnd», «IntervalStart», «Current», а также устанавливаются следующие значения сигналов:
«State» = «0»;
«Speed» = «1»;
«SessionInProgress» = «false».
