Страница 6 из 9 ПерваяПервая ... 45678 ... ПоследняяПоследняя
Показано с 51 по 60 из 96

Тема: Отображение данных с ПЛК210 на цифровом дисплее СП310-Р

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

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

    По умолчанию

    Цитата Сообщение от melky Посмотреть сообщение
    Mikhail_NNT не важно, сколько циклов. важно количество экземпляров таймера на одну сущность.
    Блин, как объяснить то. Вы объявили один таймер, а пытаетесь его применить к 5-ти кнопкам. Откель таймеру знать, что надо начинать считать с нуля на второй, третьей, пятой сработавшей кнопке, когда он уже считает от нажатия 1-й?
    У таймера есть внутренняя переменная состояния и времени его работы
    Суть вроде ясна. Как этот момент можно реализовать в таком случае? Неужели выход только создавать 20 ФБ с разными таймерами, а если бы их было 100?

    Пробовал разные варианты таймеров, по разному запускать, с разными условиями, принудительно выключать. Результата два: либо вообще не включаются таймеры, либо циклически перезапускаются.
    Как вы предлагали с ТР также не будет рабочей схемой?

  2. #2

    По умолчанию

    Цитата Сообщение от Mikhail_NNT Посмотреть сообщение
    Суть вроде ясна. Как этот момент можно реализовать в таком случае? Неужели выход только создавать 20 ФБ с разными таймерами, а если бы их было 100?

    Пробовал разные варианты таймеров, по разному запускать, с разными условиями, принудительно выключать. Результата два: либо вообще не включаются таймеры, либо циклически перезапускаются.
    Как вы предлагали с ТР также не будет рабочей схемой?
    2 варианта:
    1) встроить таймер прямо в ФБ, тогда у каждого экземпляра будет по своему таймеру.
    2) использовать массив таймеров, и вызывать нужный как вызываете переменные массива.
    Последний раз редактировалось kondor3000; 20.01.2025 в 14:35.

  3. #3

    По умолчанию

    Цитата Сообщение от kondor3000 Посмотреть сообщение
    2 варианта:
    1) встроить таймер прямо в ФБ, тогда у каждого экземпляра будет по своему таймеру.
    2) использовать массив таймеров, и вызывать нужный как вызываете переменные массива.
    У меня сделано по первому варианту. Таймер находится (объявляется и вызывается) внутри ФБ, далее ФБ вызывается в Главной программе в цикле N раз. Таймер объявлен в VAR, т.е. внутренний.
    Таймер2.png Таймер4.png
    Последний раз редактировалось Mikhail_NNT; 20.01.2025 в 14:53.

  4. #4

    По умолчанию

    Цитата Сообщение от Mikhail_NNT Посмотреть сообщение
    У меня сделано по первому варианту. Таймер находится (объявляется и вызывается) внутри ФБ, далее ФБ вызывается в Главной программе в цикле N раз. Таймер объявлен в VAR, т.е. внутренний.
    Таймер2.png Таймер4.png
    Нет, тут о том, что таймер должен быть входной-выходной переменной, чтоб было где сохранять. А он у вас просто один. Как Solo в сериале Бункер.

    Я даже не знаю как с таким объявлением работать, если честно...

  5. #5

    По умолчанию

    Цитата Сообщение от Mikhail_NNT Посмотреть сообщение
    У меня сделано по первому варианту. Таймер находится (объявляется и вызывается) внутри ФБ, далее ФБ вызывается в Главной программе в цикле N раз. Таймер объявлен в VAR, т.е. внутренний.
    Таймер2.png Таймер4.png
    Тогда я не понимаю, зачем вам цикл FOR в ФБ, если вы 20 раз вызываете ФБ то и цикл внутри не нужен.

    Цикл надо было использовать в основной программе, массив из 20 переменных и массив из 20 таймеров.
    Последний раз редактировалось kondor3000; 20.01.2025 в 15:23.

  6. #6

    По умолчанию

    Как вариант-костыль, сделайте в фб 20 таймеров, и передавайте в него i как входную переменную номера таймера. Но это все равно неправильный костыль и возможно не проканает, хотя... (Это как раз 2ой вариант кондора)

    PS Скрины объявленных переменных делайте в оффлайне, это более информативно.
    Последний раз редактировалось МихаилГл; 20.01.2025 в 15:02.

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

    По умолчанию

    Mikhail_NNT вы один FB вызываете или создаете циклом 20 FB ? если вызов одного FB 20 раз, то его экземпляр всего один, соответственно и таймер 1.

    Экземпляр FB создает набор переменных под себя. Вызов одного и того же в цикле работает с одним экземпляром переменных. Так как экземпляр создастся всего один.

  8. #8

    По умолчанию

    Короче, ТС, покажите описание переменных в офлайне, народ хочет знать, у вас fb или array () of fb

    PS Квадратных скобок в цикле нет... Это не массив...

  9. #9

    По умолчанию

    Вот скрины работы 20 экземпляров ФБ, со встроенным таймером внутри ФБ. В примере Таймер на 20 секунд.
    Сама программа, таймер встроен в ФБ 1 Программа с таймерами.jpg Вызов 20 экземпляров в цикле FOR 1 Работа 20 ФБ.jpg
    Просмотр работы 17 и 18 экземпляра, включены не одновременно и время на таймерах разное !!! 1 Работа 17 и 18 таймера.jpg
    То есть они работают, каждый в своём экземпляре ФБ.

    Для просмотра работы, не открывая экземпляры, после цикла поставлена i:=17; и 17 экземпляр виден прямо в PLC_PRG.
    Последний раз редактировалось kondor3000; 20.01.2025 в 18:26.

  10. #10

    По умолчанию

    Цитата Сообщение от kondor3000 Посмотреть сообщение
    Вот скрины работы 20 экземпляров ФБ, со встроенным таймером внутри ФБ. В примере Таймер на 20 секунд.
    Сама программа, таймер встроен в ФБ 1 Программа с таймерами.jpg Вызов 20 экземпляров в цикле FOR 1 Работа 20 ФБ.jpg
    Просмотр работы 17 и 18 экземпляра, включены не одновременно и время на таймерах разное !!! 1 Работа 17 и 18 таймера.jpg
    То есть они работают, каждый в своём экземпляре ФБ.

    Для просмотра работы, не открывая экземпляры, после цикла поставлена i:=17; и 17 экземпляр виден прямо в PLC_PRG.
    Спасибо, буду разбираться!

Страница 6 из 9 ПерваяПервая ... 45678 ... ПоследняяПоследняя

Похожие темы

  1. Ответов: 25
    Последнее сообщение: 03.09.2020, 09:37
  2. Программируемое реле ПР200. Отображение информации на дисплее.
    от mchelarsky в разделе Программируемые реле
    Ответов: 2
    Последнее сообщение: 08.08.2019, 12:50
  3. Отображение float/int на дисплее ПР200
    от flicker581 в разделе Среда программирования OWEN Logic
    Ответов: 0
    Последнее сообщение: 17.02.2016, 19:12
  4. Ответов: 8
    Последнее сообщение: 05.06.2014, 21:33
  5. Ответов: 4
    Последнее сообщение: 21.02.2014, 09:24

Ваши права

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