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

Тема: ФБ сохранения показаний на ST с энергонезависимостью.

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

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

    По умолчанию

    Почему:
    Код:
    Work := true;
    i_Work

    Вы не выходите из этого if при таком условии...

    И

    Код:
    l_FlowDay := 0;
    не закомментировали... Внимательнее...
    Последний раз редактировалось МихаилГл; 28.12.2023 в 10:44.

  2. #2

    По умолчанию

    Цитата Сообщение от МихаилГл Посмотреть сообщение
    Почему:
    Код:
    Work := true;
    i_Work

    Вы не выходите из этого if при таком условии...
    к i_Work и Work привязана одна и та же переменная, просто i_Work - входная, Work - выходная

    Или будет лучше сделать локальную переменную, которая принимается от входной и записывает выходную?
    Ничего не понятно, но очень интересно

  3. #3

    По умолчанию

    Цитата Сообщение от Григори Посмотреть сообщение
    к i_Work и Work привязана одна и та же переменная, просто i_Work - входная, Work - выходная

    Или будет лучше сделать локальную переменную, которая принимается от входной и записывает выходную?
    Локальная энергоЗАВИСИМАЯ... А так вы не выходите из условия и обнуляете все... А если будет одна, то код выполнится один раз по истечении 5 секунд и все, и снова только после перезагрузки...

    Не две, а ОДНА...

    PS ошибся с энергозависимостью... Вы меня запутали совсем
    Последний раз редактировалось МихаилГл; 28.12.2023 в 10:55.

  4. #4

    По умолчанию

    Цитата Сообщение от МихаилГл Посмотреть сообщение
    Локальная энергоЗАВИСИМАЯ... А так вы не выходите из условия и обнуляете все... А если будет одна, то код выполнится один раз по истечении 5 секунд и все, и снова только после перезагрузки...

    Не две, а ОДНА...

    PS ошибся с энергозависимостью... Вы меня запутали совсем
    Поменял все ворки эти, результата все равно не дает, не дает программе стартовать

    Честно говоря, я вообще не понимаю причины сброса после отвала питания. Если идет сравнение годов, то он в любом случае не поменялся(по логике).
    А так ощущение, что часы очень сильно подтупливают и сначала дают какую-нибудь дату 00.00.00 00:00
    Последний раз редактировалось Григори; 28.12.2023 в 11:01.
    Ничего не понятно, но очень интересно

  5. #5

    По умолчанию

    Цитата Сообщение от МихаилГл Посмотреть сообщение
    Код:
    Таймер (in:=  not (стартовый не энергонезависимый бит), pt:= T#5s)
    if Таймер.Q then
       стартовать программу;
       стартовый не энергонезависимый бит:= 1;
    end_if
    Цитата Сообщение от Григори Посмотреть сообщение
    Поменял все ворки эти, результата все равно не дает, не дает программе стартовать

    Честно говоря, я вообще не понимаю причины сброса после отвала питания. Если идет сравнение годов, то он в любом случае не поменялся(по логике).
    А так ощущение, что часы очень сильно подтупливают и сначала дают какую-нибудь дату 00.00.00 00:00
    Я вот это предлагал вообще в начале запуска программы поставить. Т.е. программа не считает вообще, пока плк не проработает 5 секунд. А там можно на ст не ФБ писать, а не основную программу?

    Короче, нужен исходник...

  6. #6

    По умолчанию

    Цитата Сообщение от МихаилГл Посмотреть сообщение
    Я вот это предлагал вообще в начале запуска программы поставить. Т.е. программа не считает вообще, пока плк не проработает 5 секунд. А там можно на ст не ФБ писать, а не основную программу?

    Короче, нужен исходник...
    Исходник прилагаю.
    Просто на вход разрешения работы ФБ кинуть таймер на пять секунд?
    Ничего не понятно, но очень интересно

  7. #7

    По умолчанию

    Цитата Сообщение от МихаилГл Посмотреть сообщение

    Код:
    l_FlowDay := 0;
    не закомментировали... Внимательнее...
    Так я и пишу ФБ, чтобы сделать потоки за определенное кол-во времени, если не обнулять - будет просто общий поток(а он работает нормально)

    Суть такая:

    Программа считает целый день воду и, как только наступают след. сутки, она сбрасывает показания в 0 и считает заново (суточный/месячный/годовой расход).
    Если в сутках у нас только 24, то сделать самое просто сравнение времени с нулями еще можно. Но вот с месяцами и годами так не выйдет, ибо всегда разное, поэтому просто каждый цикл смотрим и сравниваем текущие входные числа с локальными, если не равно, то перезаписать локальную и сбросить счетчик
    Последний раз редактировалось Григори; 28.12.2023 в 10:54.
    Ничего не понятно, но очень интересно

Похожие темы

  1. Ответов: 11
    Последнее сообщение: 05.05.2020, 16:00
  2. Автоматизация сохранения трендов
    от Vinsen в разделе Master SCADA 3
    Ответов: 12
    Последнее сообщение: 08.10.2018, 11:51
  3. Ошибка сохранения проекта MASTERSCADA
    от AndreMary в разделе Master SCADA 3
    Ответов: 5
    Последнее сообщение: 13.02.2015, 13:04
  4. Ошибка пути сохранения отчета
    от klg в разделе Master SCADA 3
    Ответов: 2
    Последнее сообщение: 01.12.2014, 16:56
  5. режим сохранения графиков
    от soi в разделе OWEN Proces Manager
    Ответов: 1
    Последнее сообщение: 26.03.2012, 09:49

Метки этой темы

Ваши права

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