Добрый день! Вопрос по Web визуализации СПК.
Скажите пожалуйста, можно ли как-то реализовать, чтобы вход на web визуализацию СПК107 был доступен только после авторизации?
В Codesys (SP17) и в конфигураторе СПК107 (версия 11) данную опцию не нашел.
Спасибо!
Добрый день.
Для этого достаточно установить пароль на доступ к контроллеру:
https://youtu.be/ehTkxII0CqA?si=ZKrnkyNfQ8OqlCdl
Связь со мной: telegram: @JuneSmellsLikeBlood | e-mail: e.kislov@owen.ru (личка на форуме - не подходит)
Раздел CDS V3.5 на сайте | Основные темы по CDS V3.5 на форуме: Вопросы и ответы | Визуализация | Настройка обмена с другими устройствами
Repository Archive V3.5 SP4 (необходим для СПК207/СПК1хх без Eth/ПЛК3xx)
oscat.ru | Как обратиться в техподдержку? | Как отлаживать ошибки | Отладка проектов в CODESYS V3.5 | Проблема XY | Как правильно задавать вопросы | AnyDesk
Добрый день!
Есть веб-визуализация на ПЛК-210. Есть журнал тревог. Требуется присваивать переменной значение TRUE если активна хотя бы одна тревога класса Alarm. Как только добавляю данное действие сразу вылезают ошибки. Как бороться? Сделано вроде все по аналогии с примером из "Codesys V3.5 Визуализация"
Alarm.jpg
Связь со мной: telegram: @JuneSmellsLikeBlood | e-mail: e.kislov@owen.ru (личка на форуме - не подходит)
Раздел CDS V3.5 на сайте | Основные темы по CDS V3.5 на форуме: Вопросы и ответы | Визуализация | Настройка обмена с другими устройствами
Repository Archive V3.5 SP4 (необходим для СПК207/СПК1хх без Eth/ПЛК3xx)
oscat.ru | Как обратиться в техподдержку? | Как отлаживать ошибки | Отладка проектов в CODESYS V3.5 | Проблема XY | Как правильно задавать вопросы | AnyDesk
Коллеги!
Никак не могу сообразить как обнаружить, что у меня в журнале тревог есть АКТИВНЫЕ, НЕ ПОДТВЕРЖНЕННЫЕ тревоги.
Способ подтверждения ACK_REP_ACK. Т.е. Тревога может быть активна и подтверждена и она не должна считаться за активную тревогу (нужно выключить сигнализацию).
Поясню в каком контексте я хочу чтобы это работало. К примеру, есть условный насос, который работает в режиме АВТО. Если его автоматический выключатель аварийно отключается (по перегрузу или кз), то по этому событию взводится SR-триггер. Сброс триггера происходит по приведению автомата насоса в рабочее положение. Выход Q1 SR-триггера формирует тревогу класса Alarm. Оператор должен иметь возможность подтвердить данную тревогу, которая все еще активна, т.к. SR-триггер не сброшен (автомат все еще отключен).
Просто отключить сигнализацию отдельной переменной не подойдет, т.к. если возникает другая авария сигнализация должна сработать.
Ковыряние с действиями "активация", "деактивация", "подтвердить" и "АСК" пока результатов не дали.
Дополнительный вопрос: можно как то обратиться к конкретной тревоги конкретной группы (по ее ID или т.п.) и посмотреть ее состояние (активна, активна и подтверждена, неактивна и ожидает подтверждения и т.д)?
Сделайте обработку аварий средствами программного кода. Это проще, по крайней мере я так делаю без всяких доп библиотек кодесиса.
//Обработка аварий
FOR i:= 1 TO 32 DO
IF TMP_MEC.ALA_CUR[i] THEN TMP_MEC.ALA_MEM[i]:= TRUE; END_IF //Взвод бита аварии в память
IF TMP_MEC.ALA_MEM[i] AND TMP_MEC.COM_RES THEN TMP_MEC.ALA_CON[i]:= TRUE; END_IF //Взвод бита подтветждения аварии
IF TMP_MEC.ALA_CON[i] AND NOT TMP_MEC.ALA_CUR[i] THEN
TMP_MEC.ALA_MEM[i]:= FALSE; //Сброс бита аварии из памяти при отсутствии аварии после подтверждения
TMP_MEC.ALA_CON[i]:= FALSE; //Сброс бита подтветждения аварии при отсутствии аварии после подтверждения
END_IF
IF NOT(NOT TMP_MEC.ALA_MEM[i] OR (TMP_MEC.PAR_DIS[i] AND TMP_MEC.COM_DIS[i])) THEN
TMP_MEC.STA_REA:= FALSE; //Сброс бита готовности
TMP_MEC.STA_ALA:= TRUE; //Взведение бита аварии
END_IF
END_FOR
Последний раз редактировалось МихаилГл; 29.09.2023 в 17:09.
Это последнее к чему придется прибегнуть в решении данной задачи. Просто кода написано и так уже очень много. Разных тревог тоже очень много, они уже разбиты по группам и классам. Собирать их теперь опять в отдельном куске кода не хочется, но похоже придется. Думал можно такой пустяк как "Наличие хотя бы одной активной неподтвержденной тревоги" вытянуть из журнала тревог.
Есть "действия уведомления" и там по активации тревоги данного класса можно можно назначить TRUE какой-нибудь переменной. Но переменная это не сбрасывается сама в FALSE если тревоги перестают быть активными.
Капаюсь в библиотеке AlarmManager, но пока ничего не нашел