Страница 2 из 2 ПерваяПервая 12
Показано с 11 по 16 из 16

Тема: Порядок выполнения цикла на ПЛК

  1. #11
    Пользователь
    Регистрация
    27.11.2011
    Адрес
    Краснодар
    Сообщений
    12,039

    По умолчанию

    Cs-Cs нагруженная сетевыми переменными в качестве мастера ПР? не удивительно. Но сам цикл программы ведь легко проверить, при наличии опроса в качестве мастера и без него.
    Как минимум в штатном сервисном меню.

  2. #12

    По умолчанию

    Если я правильно понял всё, что было написано выше:
    (Физические входы)+(программа)+(физические выходы) работают как единое целое, а интерфейс работает сам по себе.

    Если позволите, интерфейс - это такой "барабашка", который "берет" когда и что хочет, и "возвращает" таким же порядком.

    В таком случае передача импульсов по сети блоками типа F_trig невозможна? Получается я запущу F_Trig в слейве, он запишет "1" в бит регистра на один свой цикл, а если мастер в это время "копается" с неотвечающим устройством, он эту "1" профукает, правильно я понимаю?

  3. #13

    По умолчанию

    Я бы сказал более общно: программа ПЛК - сама по себе, а интерфейсы + входы/выходы - сами по себе.
    Нет, никак невозможна, если подходить формально: блок F/R_TRIG даёт импульс РОВНО на ОДИН цикл программы.
    Он не привязан ни к каким интерфейсам. Более того: передача данных по интерфейсу может потребовать:
    * Времени (на линии бывает не только одно устройств, а несколько; обмен данными с ними требует времени)
    * Повторной попытки (если на линии была помеха и первая посылка данных не дошла)
    Поэтому, конечно же, профукает.

    Здесь везде нужен другой подход. И тут есть стандартные решения:
    а) Запись по изменению (есть в ПРках и ПЛК) или запись по команде (есть в ПЛК). Она говорит обмену по шине примерно так: "Как будет свободное время, пошли-ка запрос на запись вот этого вон туда". То есть, создаёт "задание" на запись, но не выполняет его мгновенно.
    б) Забить на работу обмена и обрабатывать всё в программе по схеме "Если текущее не равно предыдущему и если мы это не меняли - то изменили по Modbus".
    Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живёте. © Steve McConnell
    Мой рабочий блог со статьями про щиты и автоматику ОВЕН - Cs-Cs.Net | Почта: Info@Cs-Cs.Net

  4. #14

    По умолчанию

    Цитата Сообщение от shishkin_a_s@mail.ru Посмотреть сообщение
    Если я правильно понял всё, что было написано выше:
    (Физические входы)+(программа)+(физические выходы) работают как единое целое, а интерфейс работает сам по себе.

    Если позволите, интерфейс - это такой "барабашка", который "берет" когда и что хочет, и "возвращает" таким же порядком.

    В таком случае передача импульсов по сети блоками типа F_trig невозможна? Получается я запущу F_Trig в слейве, он запишет "1" в бит регистра на один свой цикл, а если мастер в это время "копается" с неотвечающим устройством, он эту "1" профукает, правильно я понимаю?
    Да. Верно. Если к моменту, когда пришла очередь передавать переменную, её значение несколько раз поменялось, то передаваться будет текущее (последнее) значение. Видимо поэтому в модулях дискретного ввода МВ реализованы счетчики, чтобы можно было зафиксировать факт пришедшего короткого импульса. Пусть позже, чем никогда. Впрочем Вы можете зафиксировать импульс выставлением бита в сетевой переменной, а мастер после прочтения его сбросит.
    Последний раз редактировалось EFrol; 09.09.2024 в 19:57.

  5. #15
    Пользователь
    Регистрация
    27.11.2011
    Адрес
    Краснодар
    Сообщений
    12,039

    По умолчанию

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

  6. #16

    По умолчанию

    Да, понял, спасибо. Уже переделываю

Страница 2 из 2 ПерваяПервая 12

Похожие темы

  1. Порядок исполнения блоков
    от starmos в разделе Среда программирования OWEN Logic
    Ответов: 10
    Последнее сообщение: 28.02.2023, 13:18
  2. Порядок выполнения
    от Anatoly.snjrs в разделе ПЛК2хх
    Ответов: 1
    Последнее сообщение: 25.04.2022, 13:26
  3. OWEN Logic Как изменить порядок выполнения операций
    от FPavel в разделе Программируемые реле
    Ответов: 5
    Последнее сообщение: 01.08.2015, 14:22
  4. Скорость выполнения цикла
    от Vitamin в разделе Master SCADA 3
    Ответов: 3
    Последнее сообщение: 22.01.2015, 15:10
  5. Ответов: 4
    Последнее сообщение: 14.03.2011, 10:30

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

Ваши права

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