Simple-Scada forum
Simple-Scada 2 => Ваши вопросы => Тема начата: Rolich от 05 Августа 2024, 12:15:46
-
Доброго всем времени суток
В проекте имеется битовая переменная, отвечающая за работу агрегата (1 - в работе, 0 - остановлен)
Подскажите, пожалуйста, как в отчёт вывести график, на котором по оси Y в виде горизонтальной полосы отображались бы периоды работы (зеленым - в работе, белым - простой), а по оси Х - время отчёта
Спасибо
-
Здравствуйте.
Скорее всего, Вам подойдет пример создания диаграммы Ганта по сообщениям – ссылка (https://simple-scada.com/help/report/ganttchartmess.html). Следует учитывать, что каждое состояние оборудования (1 – в работе, 0 – остановлен) можно вывести только в отдельный ряд (используя "Условия" можно задать разные цвета для каждого ряда – см. скриншот во вложении).
-
Доброго времени суток
Построение графиков Ганта возможно только для сообщений ?
Изначально вопрос был об обычной битовой переменной, сообщения в проекте не используются вовсе
В частности, сложность возникает с пониманием того, какие переменные из источника прописывать в поля "Значение" и "Конечное значение"
-
Здравствуйте.
Для построения диаграммы Ганта необходимы данные: время начала события и время завершения события. При работе с архивными данными переменной с использованием источников данных (https://simple-scada.com/help/report/sourcetypes.html) "По-изменению" или "Периодический" эти данные отсутствуют. Соответственно, построить диаграмму Ганта, используя указанные источники данных, не получится.
Для построения диаграммы Ганта можно использовать два способа:
1. Наиболее простой – используя источник данных "Сообщения". При необходимости сообщения можно скрыть через настройку прав пользователя -> Сообщения (https://simple-scada.com/help/manual/editor-users.html).
2. Используя SQL-запросы (https://simple-scada.com/help/script/workbd.html), можно записывать необходимую информацию в свою таблицу БД (примеры работы с БД см. по ссылке (https://simple-scada.com/help/script/dbscripts.html)). Далее в отчете использовать пользовательский источник данных (https://simple-scada.com/help/report/sourcetypes.html) (пример см. по ссылке (https://simple-scada.com/help/report/rep-user-data.html)) и строить диаграмму Ганта на основании накопленных в нем данных.
-
Изначально вопрос был об обычной битовой переменной, сообщения в проекте не используются вовсе
Тогда Вам возможно подойдет:
1. Выводить в отчет ступенчатый тренд (как писано по ссылке (https://simple-scada.com/help/report/rep-trends.html)) по этой переменной.
2. Создать дополнительную внутреннюю Boolean переменную и в скрипте по изменению исходной переменной (https://simple-scada.com/help/script/changed-the-variables.html) записывать в новую переменную инвертированное значение исходной переменной. Когда исходная переменная равна 1, записывать 0, когда исходная переменная равна 0, записывать 1. У внутренней переменной включить архивацию "по изменению". Затем вывести в отчет на одну диаграмму ступенчатые тренды по этим переменным: один тренд зеленый, другой белый. Тренды будут накладываться друг на друга и в периоды работы агрегата линия будет зеленая, а в моменты простоя линия будет белая.