Страница 2 из 6 ПерваяПервая 1234 ... ПоследняяПоследняя
Показано с 11 по 20 из 68

Тема: ФБ на ST ротация насосов

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

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

    По умолчанию

    Я пробовал макрос AI! переписать в CodeSys 2.3 и... ничего не вышло. Переписывал ессно не в ST а так же в FBD (CFC кажется). Всему виной линия обратной связи, которая используется в макросе ПР.
    Мне даже ребята на форуме помогли сделать аналог "Линии обратной связи" на CDS но работала она не так, как в макросе на ПР. В общем забил тогда, так как под мою задачу ротация по принципам данного макроса для меня была избыточна.
    Делал ротацию по времени переключения для кондиционеров на ПЛК63. В общем делал по другому алгоритму.

    Макрос же AI! высчитывает время работы каждого насоса и оперирует этими данными, который включать, а который нет уже дальше в зависимости от битовых масок количества и аварийных насосов.

    вообще линия обратной связи в ПР работает очень уж хитро, ее сложно повторить на других языках. Это именно в тех режимах работы макроса, когда поведение с линией обратной связи отличается без этой линии (когда она желтым). то есть когда вообще кардинально меняется поведение работы макроса с линией и без.
    Последний раз редактировалось melky; 27.12.2023 в 11:55.

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

    По умолчанию

    Макрос от AI! лучше всего подходит под описание Валенка то есть когда в режиме работы по внешним критериям могут работать 2,3,5 насосов в один момент времени, а через время опять переключаться с 5 на 3 или сразу на 2.
    Например поддержание давления или еще чего-то.

    У меня была простая ситуация, просто ротирование кондиционеров по времени. В конечном итоге они и так равномерно работают, кроме случаев аварии или вывода в обслуживание, но это не критично было.

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

  3. #3
    Пользователь Аватар для Василий Кашуба
    Регистрация
    20.11.2011
    Адрес
    Ставрополь
    Сообщений
    2,552

    По умолчанию

    Вот упрощённая версия макроса, правда ротация 5-ти насосов.
    Изображения Изображения

  4. #4
    Пользователь Аватар для Сергей0308
    Регистрация
    25.06.2011
    Адрес
    Галактика Андромеды (M31)
    Сообщений
    9,522

    По умолчанию

    Цитата Сообщение от Василий Кашуба Посмотреть сообщение
    Вот упрощённая версия макроса, правда ротация 5-ти насосов.
    Василий, здесь человек с проектом не может разобраться, а Вы предлагаете тоже самое по фотографии сделать, в смысле, мне кажется это усложнит задачу!
    Если проблему можно решить за деньги, это не проблема, это расходы. Бог каждому посылает проблемы по его силам. Так что одно из двух. Либо ты можешь-таки
    справиться с проблемами, либо это не твои проблемы.

  5. #5

    По умолчанию

    Доработал вариант, улучшен алгоритм переключений при авариях. Наработка считается как Нараб=Часы*10000+Мин*100+Сек.1 8 насосов.jpg
    Варианты на 4 и на 8 насосов. Версия OWEN Logic2.5.342

    Новый вариант 4 насоса_Наработка_Ротация по времени_4 Уровня, новый таймер без Т_цикла
    Последний вариант 4 насоса_Наработка_Ротация по времени_Запоминание наработки -7,
    Исправленный вариант 4 насоса_Наработка_Ротация по времени_Запоминание наработки -8,
    Последний вариант с выбором насоса и задачей времени 4 насоса_Нараб_Ротация по времени_4 Уровня_10

    Ротация на 3 насоса с уровнем тут https://owen.ru/forum/showthread.php...l=1#post465379

    в строке сброса таймера, было так ET=PT1, а должно быть так ET>=PT1
    В пятой строке снизу, где сброс таймера и переключение Main:=Main+1;
    Код:
     if   Q and ET>=PT1 or Res then  PT1:=0; In:=false; ET:=0; Main:=Main+1; end_if
    В реальном ПР переменная ЕТ может проскочить равенство на несколько единиц и сброс не сработает.
    Последний раз редактировалось kondor3000; 02.02.2026 в 13:10.

  6. #6
    Пользователь Аватар для Сергей0308
    Регистрация
    25.06.2011
    Адрес
    Галактика Андромеды (M31)
    Сообщений
    9,522

    По умолчанию

    Мне кажется, ротацию лучше производить не по абсолютной наработке, а для ротации иметь отдельную переменную для каждого насоса, эти переменные можно сбросить(выровнять) например при замене одного из насосов на новый, такое впечатление, что люди не от мира сего, в смысле, из другой галактики(вселенной), где совсем другие законы и логика.
    И, сделайте вход выбора насоса, в смысле, зачем делать выход наработки для каждого насоса(нельзя что ли мультиплексор поставить?), может их 16(или больше), это же ёжик получится!
    И, можно добавить, для универсальности, входную переменную, по сколько насосов производить ротацию, в одной из тем товарищ хотел, чтобы ротация происходила по два насоса, в смысле, могут быть какие-то оригинальные желания.

    https://owen.ru/forum/showthread.php?t=38891
    Последний раз редактировалось Сергей0308; 02.01.2024 в 16:12.
    Если проблему можно решить за деньги, это не проблема, это расходы. Бог каждому посылает проблемы по его силам. Так что одно из двух. Либо ты можешь-таки
    справиться с проблемами, либо это не твои проблемы.

  7. #7

    По умолчанию

    Цитата Сообщение от Сергей0308 Посмотреть сообщение
    Мне кажется, ротацию лучше производить не по абсолютной наработке, а для ротации иметь отдельную переменную для каждого насоса, эти переменные можно сбросить(выровнять) например при замене одного из насосов на новый, такое впечатление, что люди не от мира сего, в смысле, из другой галактики(вселенной), где совсем другие законы и логика.
    И, сделайте вход выбора насоса, в смысле, зачем делать выход наработки для каждого насоса(нельзя что ли мультиплексор поставить?), может их 16(или больше), это же ёжик получится!
    И, можно добавить, для универсальности, входную переменную, по сколько насосов производить ротацию, в одной из тем товарищ хотел, чтобы ротация происходила по два насоса, в смысле, могут быть какие-то оригинальные желания.
    Добавить мультиплексор не проблема, дописать одну строчку, кому надо сделает сам или спросит как сделать.
    А по поводу выбора кол-ва насосов есть переменная Amount (Даже на скрине видно), специально ведь подписал в рамке Amount - необходимое число насосов 1-4 (1-8).
    Поставьте 2 и будет по 2 насоса переключать.
    Последний раз редактировалось kondor3000; 02.01.2024 в 17:28.

  8. #8
    Пользователь Аватар для Сергей0308
    Регистрация
    25.06.2011
    Адрес
    Галактика Андромеды (M31)
    Сообщений
    9,522

    По умолчанию

    Цитата Сообщение от kondor3000 Посмотреть сообщение
    Добавить мультиплексор не проблема, дописать одну строчку, кому надо сделает сам или спросит как сделать.
    А по поводу выбора кол-ва насосов есть переменная Amount (Даже на скрине видно), специально ведь подписал в рамке Amount - необходимое число насосов 1-4 (1-8).
    Поставьте 2 и будет по 2 насоса переключать.
    Это же количество одновременно работающих насосов, насколько я понимаю?
    Мне кажется, алгоритм работы будет более универсальным(гибким), в смысле, если назначить отдельную переменную. Например в моём варианте, что я ссылку давал, может быть до 4 одновременно работающих насоса, но ротация всегда происходит по 1-у насосу, у Вас, насколько смог понять, ротация всегда происходит на количество одновременно работающих насосов, например, при 4-х одновременно работающих насосах, Вы не можете назначить как у меня, чтобы ротация происходила не одновременно для 4 насосов, а по одному насосу с периодом в 4 раза меньшим, в принципе будет тоже самое, но момент ротации насосов будет сдвинут на 1/4 периода работы насоса, в большинстве случаев одновременно все 4 насоса ротировать стрёмно, в смысле, лучше по одному.
    Последний раз редактировалось Сергей0308; 03.01.2024 в 21:27.
    Если проблему можно решить за деньги, это не проблема, это расходы. Бог каждому посылает проблемы по его силам. Так что одно из двух. Либо ты можешь-таки
    справиться с проблемами, либо это не твои проблемы.

  9. #9

    По умолчанию

    Цитата Сообщение от Сергей0308 Посмотреть сообщение
    Почему 2, а не 1 во всех программах этой серии? В симуляторе блок выдаёт 1, то же если его перенести в другой проект и если его взять из библиотеки проекта в этой же схеме. Я верно чего то не вижу. Поясните пожалуйста
    Изображения Изображения

  10. #10

    По умолчанию

    Цитата Сообщение от Urfin_Dzhyus Посмотреть сообщение
    Почему 2, а не 1 во всех программах этой серии? В симуляторе блок выдаёт 1, то же если его перенести в другой проект и если его взять из библиотеки проекта в этой же схеме. Я верно чего то не вижу. Поясните пожалуйста
    В обоих блоках прописаны константы с 1, а не с 0 бита. 1 Параметры блока.jpg При переносе проекта, константы слетают, надо следить за этим.
    Так что 2 это правильно.
    Последний раз редактировалось kondor3000; 25.04.2025 в 12:36.

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

Похожие темы

  1. Ротация насосов 3+1
    от K.K. в разделе Среда программирования OWEN Logic
    Ответов: 47
    Последнее сообщение: 29.10.2023, 16:37
  2. Ротация двух насосов
    от Вова13 в разделе ПЛК63/73
    Ответов: 19
    Последнее сообщение: 25.12.2022, 00:13
  3. Чередование насосов (случай для 3-х насосов)
    от 07Fobos в разделе Программируемые реле
    Ответов: 14
    Последнее сообщение: 30.10.2022, 22:04
  4. Ротация пр200
    от GothWind в разделе Программируемые реле
    Ответов: 3
    Последнее сообщение: 30.06.2018, 22:31

Ваши права

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