Страница 3 из 3 ПерваяПервая 123
Показано с 21 по 29 из 29

Тема: Программа на языке ST

  1. #21

    По умолчанию

    Цитата Сообщение от Slait_gul Посмотреть сообщение
    понял, попробую, спасибо) а по поводу контроля проверки, запустился или нет, как можно реализовать?
    А кто запустился обогрев или ДГУ? Если ДГУ запустился, то должно быть напряжение на выходе - использовать реле контроля напряжения или реле контроля фаз.

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

    По умолчанию

    Цитата Сообщение от Slait_gul Посмотреть сообщение
    понял, попробую, спасибо) а по поводу контроля проверки, запустился или нет, как можно реализовать?
    да все так же по фронту старта, если режим такой то, то запоминаем реальное значение, а в соответствующем кейсе сравниваем запомненное с текущим
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

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

  3. #23

    По умолчанию

    Цитата Сообщение от ferret_maybe Посмотреть сообщение
    А кто запустился обогрев или ДГУ? Если ДГУ запустился, то должно быть напряжение на выходе - использовать реле контроля напряжения или реле контроля фаз.
    проверка запустился ли обогрев, при запуске запоминаем температуру, и сравниваем ее с температурой через 10 минут, если она поднялась на сколько то градусов, значит обогрев работает, не знаю как сделать, если обогрев не запустился как повторить попытку и так 3 раза

  4. #24

    По умолчанию

    Цитата Сообщение от Slait_gul Посмотреть сообщение
    проверка запустился ли обогрев, при запуске запоминаем температуру, и сравниваем ее с температурой через 10 минут, если она поднялась на сколько то градусов, значит обогрев работает, не знаю как сделать, если обогрев не запустился как повторить попытку и так 3 раза
    Посмотри во вложении сделал функциональный блок, но не знаю для твоих условий сможет ли подойти. Кстати нужно протестировать)))
    Вложения Вложения
    • Тип файла: pro dgu.pro (55.6 Кб, Просмотров: 13)

  5. #25

    По умолчанию

    Цитата Сообщение от ferret_maybe Посмотреть сообщение
    Посмотри во вложении сделал функциональный блок, но не знаю для твоих условий сможет ли подойти. Кстати нужно протестировать)))
    Спасибо большое, тестирую пока в режиме эмуляции, то что вы сделали, очень поможет мне в реализации, т.к. это мой первый опыт в работе с контроллерами. Как допилю алгоритм со всеми отладками, так обязательно скину результат. После, планируется трансляция данных с датчиков системы через Ethernet и Wifi, сложностей у меня будем много.

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

  6. #26

    По умолчанию

    Функциональный блок реализован в формате конечного автомата с 4 состояниями.
    CASE State OF
    0: (*Начальное состояние*)
    //Условия перехода в другие состояния в формате. Количество переходов из состояния 0 в число состояний автомата N
    IF условие 1 THEN State:= 1; END_IF;
    IF условие 2 THEN State:= 2; END_IF;
    ...
    IF условие N THEN State:= Номер состояния N; END_IF;

    // Воздействия в шаге: задание значений переменных (выходных воздействий ФБ), запуск таймеров минимального времени шага, максимального времени шага и т.д.

    1:
    //Условия перехода в другие состояния в формате. Количество переходов из состояния 1 в число состояний автомата N
    IF условие 0 THEN State:= 0; END_IF;
    IF условие 2 THEN State:= 2; END_IF;
    ...
    IF условие N THEN State:= Номер состояния N; END_IF;

    // Воздействия в шаге: задание значений переменных (выходных воздействий ФБ), запуск таймеров минимального времени шага, максимального времени шага и т.д.


    ELSE
    STATE:=0; (*так на всякий случай*)
    END_CASE;
    // здесь вызов таймеров, и других функциональных блоков. Конечно можно и внутри Case делать, если не нужно чтобы он вызывался отдельно от шага (состояния).

    На рисунке диаграмма состояний как пример системы
    Automat.png
    Можно как-то так еще программировать)

  7. #27

    По умолчанию

    Безымянный.png
    Подскажите, что не так написал.

  8. #28

    По умолчанию

    Цитата Сообщение от Юрий27 Посмотреть сообщение
    Безымянный.png
    Подскажите, что не так написал.
    Понял, выход не тот написал)

  9. #29
    Пользователь
    Регистрация
    24.07.2012
    Адрес
    Россия
    Сообщений
    1,492

    По умолчанию

    Цитата Сообщение от Юрий27 Посмотреть сообщение
    Безымянный.png
    Подскажите, что не так написал.
    = TRUE писать не обязательно

Страница 3 из 3 ПерваяПервая 123

Похожие темы

  1. Цикл на языке ST
    от servo в разделе ПЛК1хх
    Ответов: 17
    Последнее сообщение: 06.06.2019, 16:00
  2. Задержка на языке ST
    от burn в разделе ПЛК1хх
    Ответов: 14
    Последнее сообщение: 13.10.2017, 11:38
  3. Программа для ПЛК на языке SFC
    от corsar в разделе ПЛК1хх
    Ответов: 4
    Последнее сообщение: 07.05.2013, 03:53
  4. Вызов POU на языке LD
    от ZPavel в разделе ПЛК1хх
    Ответов: 5
    Последнее сообщение: 28.02.2012, 00:55
  5. Несколько AND и OR в языке ST
    от Wanted в разделе ПЛК1хх
    Ответов: 1
    Последнее сообщение: 18.11.2008, 15:19

Ваши права

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