Страница 1 из 3 123 ПоследняяПоследняя
Показано с 1 по 10 из 23

Тема: Зависает СПК

  1. #1

    По умолчанию Зависает СПК

    Доброго времени суток!
    Есть СПК110. И вторая проблема кроме подключения модулей - это зависание панели.
    Программа управляет насосами и клапанами (дискретный выходы).
    Когда в ручном режиме включаешь - все ок.
    При работе в автоматическом режиме, панель зависает и перестает реагировать на нажатия.
    Помогает только перезагрузка питанием. Что может быть? Сталкиваюсь первый раз.

    Код автоматического режима ниже:


    Time_wash_rise_water(IN:=wash_rising_water, PT:=Time_wash_rise_water.PT);
    IF wash_rising_water=TRUE AND Auto=true
    THEN
    V100:=Func_Levels_Protoch(Start:= wash_rising_water, VERH:= LSH1);
    V101:=TRUE;
    V111:=TRUE;
    M1:=TRUE;
    M1:=M1_Check(M1_f:= M1, M1_feedback_f:= M1_feedback_IN);
    IF M1=FALSE THEN wash_rising_water:=FALSE; END_IF

    IF Time_wash_rise_water.Q=TRUE
    THEN V101:=FALSE;
    M1:=FALSE;
    V111:=FALSE;
    wash_rising_water:=FALSE;
    V100:=false;
    END_IF
    END_IF

    p.s. Стоить добавить, что в симуляторе на компьютере все отрабатывает. Компиляция ошибок не находит.
    Панель не прошивал так же как и модуля.
    Прошу совета. Спасибо!

  2. #2

    По умолчанию

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

  3. #3

    По умолчанию

    Понял, в субботу попробую пошагово пройтись что ему не нравится. Может вариант с перепрошивкой поможет?

  4. #4
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,224

    По умолчанию

    Цитата Сообщение от Vadimko1988 Посмотреть сообщение
    Может вариант с перепрошивкой поможет?
    достаточно будет научится правильно программировать и галку поставить на сторожевой таймер
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

    среди успешных людей я не встречала нытиков
    Барбара Коркоран

  5. #5

    По умолчанию

    Про сторожевой таймер я был не в курсе вообще. Да и на самом деле первый проект на спк. Поэтому и задаю может глупые вопросы.
    А как понять "правильно программировать"? что не так в коде?

  6. #6
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,224

    По умолчанию

    как минимум нет ни одного ELSE, если условие не выполняется, то такие переменные как М1,Vxxx зависнут в одном состоянии. Плохо когда переменные друг другом управляют
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

    среди успешных людей я не встречала нытиков
    Барбара Коркоран

  7. #7

    По умолчанию

    Они не зависнут, а будут ждать, когда отработает таймер. И после этого:
    IF Time_wash_rise_water.Q=TRUE
    THEN V101:=FALSE;
    M1:=FALSE;
    V111:=FALSE;
    wash_rising_water:=FALSE;
    V100:=false;
    END_IF

    ...все переменные обнуляются.

    Вопрос в другом: почему этот код без проблем работает на симуляторе, а на железе ведет себя не пойми как?

  8. #8
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,224

    По умолчанию

    правда что ли? а как же тогда строчка IF M1=FALSE THEN wash_rising_water:=FALSE; END_IF которая прекратит работу таймера и Ваше условие Time_wash_rise_water.Q ни когда не выполнится, если это TON

    На вопрос почему в симуляторе так а в реальности этак, можно сказать видя весь проект, в симуляции физические входа всегда фальш, пока Вы сами с ними не произведете каких то действий, а в реальности они сами меняют свои состояния, этого Вы не учитываете, потому как используете только половинные условия
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

    среди успешных людей я не встречала нытиков
    Барбара Коркоран

  9. #9

    По умолчанию

    Справедливо, согласен. Переделаю. Спасибо!

  10. #10
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,224

    По умолчанию

    кстати буквально не стоит воспринимать фразу половинные условия, потому что два буля wash_rising_water и Auto это максимально четыре состояния
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

    среди успешных людей я не встречала нытиков
    Барбара Коркоран

Страница 1 из 3 123 ПоследняяПоследняя

Похожие темы

  1. Зависает ТРМ-132
    от Jeck в разделе Эксплуатация
    Ответов: 13
    Последнее сообщение: 26.11.2021, 09:36
  2. Зависает Lectus opc
    от Vitamin в разделе OPC Серверы
    Ответов: 1
    Последнее сообщение: 03.11.2016, 07:28
  3. Зависает СПК107
    от Deoxes в разделе СПК1хх
    Ответов: 3
    Последнее сообщение: 27.02.2014, 16:31
  4. Зависает НПТ-1
    от Skols в разделе Эксплуатация
    Ответов: 9
    Последнее сообщение: 21.11.2013, 12:30
  5. OPM v1.2 зависает.
    от mar154 в разделе OWEN Proces Manager
    Ответов: 7
    Последнее сообщение: 19.03.2009, 12:24

Ваши права

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