Значение канала по умолчанию

Просмотр 8 сообщений - с 1 по 8 (из 8 всего)
  • Автор
    Сообщения
  • #6030
    manjey73
    Участник

    Как сделать так, чтобы при запуске(перезапуске) SCADA сервера у каналов были значения по умолчанию, возможность их изменить, чтобы при следующем перезапуске были новые значения ?

    Собственно организация все тех же энергонезависимых переменных…

    #6031
    Mikhail
    Модератор

    Значения входных каналов сохраняются в текущем срезе. При перезапуске значения дорасчётных каналов берутся из сохраненного среза.
    Думаю, можно сделать формулу, которая в случае, если дорасчётный канал не определен, то есть Stat==0, будет подставлять значение по умолчанию.

    #6036
    manjey73
    Участник

    Так текущий срез у нас в tmpfs, то есть при перезапуске будет 0. А если его оставить просто в файловой системе это будет убивать флешку.

    #6045
    Mikhail
    Модератор

    Да, просто не знал, что речь о Raspberry. Значения по умолчанию можно реализовать с помощью формул, но чтобы их изменить, потребуется изменить сами формулы.

    #6050
    manjey73
    Участник

    Просто когда что-то делаю, прикидываю как это будет работать не только на Windows. Ну и если применен SSD или Flash постоянно на них писать вредно, например применение промПК с CF картой или SSD.

    Вот и нужно ткнуть в каком направлении копать…
    При этом, чтобы формула была универсальной, не зависимо от количество каналов, который я назначу как энергонезависимыми. На самом деле этот механизм должен быть в самой SCADA, если ее использовать как ПЛК…

    Пока задумка такая, сделать код работы с файлом для начала цикла и для конца цикла.
    В конце цикла код создает файл с назначенными переменными как retain, в начале читает. Если ни одна переменная не изменилась, файл не перезаписывает в конце цикла.
    Если изменилась, то записывается новый файл.
    Файл, будучи созданным, будет читаться в начале цикла и выполнять присвоение всем переменным, ну либо сами переменные будут вычитывать свое значение из файла.

    Просто пока думаю как это дело вообще реализовать, с чего начинать так сказать…

    #6061
    Mikhail
    Модератор

    Описанный подход с файлом лучше всего реализовать в виде модуля сервера, там как раз есть методы, которые вызываются при старте и завершении сервера. В формулах базы конфигурации неудобно такую «большую» логику реализовывать.

    Еще желательно проверять переменные на изменения хотя бы раз в несколько часов и сохранять на диск на случай аварийного завершения.

    #6066
    manjey73
    Участник

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

    Если планируется использовать в SCADA функционал контроллера, без такого модуля он просто не сможет работать.

    • Этот ответ был изменен 6 лет, 9 месяцев назад от manjey73.
    #6075
    Mikhail
    Модератор

    С индивидуальными настройками будет ещё лучше.

Просмотр 8 сообщений - с 1 по 8 (из 8 всего)
  • Вы должны авторизироваться для ответа в этой теме.