Показано с 1 по 10 из 11

Тема: Поведение системы после перезагрузки ПК

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    По умолчанию

    Цитата Сообщение от b_aleks Посмотреть сообщение
    Здесь должно работать. У меня такой функционал реализован в проекте.
    Это если данные на тэг передаются непосредственно с контрола. Если эти данные передаются с контрола на тэг через какю-либо программу, то кроме того что Вы написали, нужно сделать следующее (по данным наконец-то ответившей техподдержки MS4D):
    Заголовок ST:

    VAR_INPUT RETAIN
    SourceTag: LREAL := 0;
    END_VAR

    VAR_OUTPUT
    EnO: BOOL := True;
    TargetTag: SYSTEM_LREAL_PARAM := (Value := 0, SourceTime := DT#0001-01-01-00:00, StatusCode := 16#80320000);
    END_VAR

    VAR
    Initialised: BOOL := False;
    LastTagValue: LREAL := 0;
    END_VAR



    Код:

    IF NOT Initialised THEN
    LastTagValue := SourceTag;
    Initialised := True;
    END_IF;

    IF LastTagValue <> SourceTag THEN
    TargetTag.StatusCode := 0;
    END_IF;

    TargetTag.Value := SourceTag;
    LastTagValue := SourceTag;

  2. #2

    По умолчанию

    Цитата Сообщение от Hemann Посмотреть сообщение
    Это если данные на тэг передаются непосредственно с контрола. Если эти данные передаются с контрола на тэг через какю-либо программу, то кроме того что Вы написали, нужно сделать следующее (по данным наконец-то ответившей техподдержки MS4D):
    Заголовок ST:

    VAR_INPUT RETAIN
    SourceTag: LREAL := 0;
    END_VAR

    VAR_OUTPUT
    EnO: BOOL := True;
    TargetTag: SYSTEM_LREAL_PARAM := (Value := 0, SourceTime := DT#0001-01-01-00:00, StatusCode := 16#80320000);
    END_VAR

    VAR
    Initialised: BOOL := False;
    LastTagValue: LREAL := 0;
    END_VAR



    Код:

    IF NOT Initialised THEN
    LastTagValue := SourceTag;
    Initialised := True;
    END_IF;

    IF LastTagValue <> SourceTag THEN
    TargetTag.StatusCode := 0;
    END_IF;

    TargetTag.Value := SourceTag;
    LastTagValue := SourceTag;
    Так я это вам и написал в самом начале, что переменные, которые формируют значение уставок, нужно сделать сохраняемыми (т.е. RETAIN)

    P.S. Но вообще, целесообразнее это делать в самом ПЛК (или ПР), так будет логически правильно, чтобы процесс управления не зависел от скады
    Последний раз редактировалось b_aleks; 14.07.2022 в 09:29.

  3. #3

    По умолчанию

    Цитата Сообщение от b_aleks Посмотреть сообщение
    Так я это вам и написал в самом начале, что переменные, которые формируют значение уставок, нужно сделать сохраняемыми (т.е. RETAIN)

    P.S. Но вообще, целесообразнее это делать в самом ПЛК (или ПР), так будет логически правильно, чтобы процесс управления не зависел от скады
    То что RETAIN - это понятно. Но, как выяснилось, еще и вышеуказанный скрипт тоже нужен. А с ПЛК - согласен, но нам такая система досталась, а денег на переписывание программы ПЛК нам давать не хотят.

Похожие темы

  1. Счетчик сохраняющий значение после перезагрузки
    от WetallSPB в разделе Среда программирования OWEN Logic
    Ответов: 2
    Последнее сообщение: 18.04.2021, 13:04
  2. Ответов: 11
    Последнее сообщение: 21.04.2016, 19:13
  3. Ответов: 4
    Последнее сообщение: 01.04.2014, 12:23
  4. ЕКОН 134 сбрасывает установки после перезагрузки
    от grudinko в разделе Эксплуатация
    Ответов: 2
    Последнее сообщение: 25.04.2013, 15:27
  5. СП270 отображение экрана после перезагрузки
    от dll в разделе Панели оператора (HMI)
    Ответов: 1
    Последнее сообщение: 07.06.2012, 09:36

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •