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

Тема: Задача в ПР200 (из СУНА - чередование трёх насосов)

  1. #1
    Пользователь Аватар для elefantkip
    Регистрация
    22.01.2010
    Адрес
    Санкт-Петербург
    Сообщений
    21

    Red face Задача в ПР200 (из СУНА - чередование трёх насосов)

    Обращаюсь за советом к форумчанам и поддержке ОВЕН.

    Решается известная в ОВЕН задача в ПР200 (из СУНА - чередование трёх насосов).
    Прошу совет реализации записи трёх вариантов (= между =) трёх целочисленных переменных,
    отвечающих за три насоса, с целью их чередования каждые 12 часов (по основному насосу).

    «1» = +2 = «3» = -1 = «2» = -1 = «1»
    «2» = -1 = «1» = +2 = «3» = -1 = «2»
    «3» = -1 = «2» = -1 = «1» = +2 = «3»

    Цикличная запись «+2» к первому, и «-1» ко 2-му и 3-му.

    Команду MOV (я не нашёл в OwenLogic).

    И не нашёл готового макроса с задачей чередования.
    Не поможете с советом или направлением для реализации программы?

    WhatsApp Image 2022-07-14 at 15.18.52.jpeg
    ---
    С уважением,
    инженер по оборудованию
    Лесковец Юрий Анатольевич
    ООО «Элефант», ООО «ОВЕН-КИП»
    Моб. тел.: +7-911-195-94-01 (МТС, Whatsapp)
    Доп. моб. тел.: +7-911-920-37-15 (+7-812-920-37-15)
    Тел.: +7 (812)528-65-00, 528-96-78 (СПб)
    Доп. тел. +7 (499)344-65-00 (Москва)
    195196 Санкт-Петербург, ул. Таллинская, дом 5, офис 202
    www.elefantkip.ru, mail@elefantkip.ru

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

    По умолчанию

    Цитата Сообщение от elefantkip Посмотреть сообщение
    Обращаюсь за советом к форумчанам и поддержке ОВЕН.

    Решается известная в ОВЕН задача в ПР200 (из СУНА - чередование трёх насосов).
    Прошу совет реализации записи трёх вариантов (= между =) трёх целочисленных переменных,
    отвечающих за три насоса, с целью их чередования каждые 12 часов (по основному насосу).

    «1» = +2 = «3» = -1 = «2» = -1 = «1»
    «2» = -1 = «1» = +2 = «3» = -1 = «2»
    «3» = -1 = «2» = -1 = «1» = +2 = «3»

    Цикличная запись «+2» к первому, и «-1» ко 2-му и 3-му.

    Команду MOV (я не нашёл в OwenLogic).

    И не нашёл готового макроса с задачей чередования.
    Не поможете с советом или направлением для реализации программы?

    WhatsApp Image 2022-07-14 at 15.18.52.jpeg
    А если работающий насос выпадет в аварию, ему надо на замену другой насос включать из числа резервных?

    Короче, здесь обсуждали:

    https://owen.ru/forum/showthread.php?t=29067

    Сейчас по другому бы сделал.
    Последний раз редактировалось Сергей0308; 14.07.2022 в 18:23.
    Если проблему можно решить за деньги, это не проблема, это расходы. Бог каждому посылает проблемы по его силам. Так что одно из двух. Либо ты можешь-таки
    справиться с проблемами, либо это не твои проблемы.

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

    По умолчанию

    Цитата Сообщение от elefantkip Посмотреть сообщение
    Обращаюсь за советом к форумчанам и поддержке ОВЕН.

    Решается известная в ОВЕН задача в ПР200 (из СУНА - чередование трёх насосов).
    Прошу совет реализации записи трёх вариантов (= между =) трёх целочисленных переменных,
    отвечающих за три насоса, с целью их чередования каждые 12 часов (по основному насосу).

    «1» = +2 = «3» = -1 = «2» = -1 = «1»
    «2» = -1 = «1» = +2 = «3» = -1 = «2»
    «3» = -1 = «2» = -1 = «1» = +2 = «3»

    Цикличная запись «+2» к первому, и «-1» ко 2-му и 3-му.

    Команду MOV (я не нашёл в OwenLogic).

    И не нашёл готового макроса с задачей чередования.
    Не поможете с советом или направлением для реализации программы?

    WhatsApp Image 2022-07-14 at 15.18.52.jpeg
    Вот делал несколько лет назад.
    Вложения Вложения

  4. #4

    По умолчанию

    Ну очень простое чередование
    OneRun.jpg

    А вот еще один вариант
    OneRun.jpg

    А это то, похоже, что Вам надо
    OneRun.jpg
    Pump1, Pump2, Pump3 - энергонезависимые целочисленные, значения по-умолчанию 1, 2, 3 соответственно.
    Последний раз редактировалось EFrol; 14.07.2022 в 19:08.

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

    По умолчанию

    Вот здесь делали подобное для включённых входов(аварий), но ничего не помешает сделать это и для насосов:
    https://owen.ru/forum/showthread.php?t=31076&page=2
    Если одновременно работает более одного насоса, для дополнительного ставим такую же хренотень, за исключением основного(работающего) насоса из числа резервных(готовых к работе) насосов, всё!

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

    Ротация 8 насосов с 2-я включёнными.PNG

    Короче, задачка простая и много обсуждалась на форуме, в смысле, непонятно, как могли возникнуть трудности?!
    Забыл сказать самое главное, алгоритм универсальный, в смысле легко расширяется хоть до 30 насосов!

    Ротация 8 насосов с 2-я включёнными.owl

    И ещё, в случае аварии работающих насосов, когда пропадает сигнал готовности(исправности) насосов(входа 1-8) - на замену включится другой насос, готовый к работе, это относится как к основному насосу, так и к дополнительному!

    Или так, в виде макросов:

    Ротация 8 насосов с 2-я включёнными_2.PNG

    Ротация 8 насосов с 2-я включёнными_2.owl

    И так, с тремя одновременно включёнными насосами:

    Ротация 8 насосов с 3-я включёнными.PNG

    Ротация 8 насосов с 3-я включёнными.owl

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

    Или так:

    Ротация 8 насосов с 3-я включёнными_2.PNG

    Ротация 8 насосов с 3-я включёнными_2.owl

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

    Ротация 8 насосов с 3-я включёнными_3.PNG

    Короче проверяйте:

    Ротация 8 насосов с 3-я включёнными_3.owl

    Вот ещё увеличил максимальное количество одновременно включённых насосов до четырёх и немного усовершенствовал макрос в целях удобства масштабирования(обвязку внутрь загнал):

    Ротация 8 насосов с 4-я включёнными_1.PNG

    Ротация 8 насосов с 4-я включёнными_1.owle

    Вот, добавил сигналы аварий насосов, точнее разделил общий сигнал готовности, на сигнал включения в работу и сигнал аварии каждого из насосов:

    Аварии.png

    Я то некоторые новички не знают как это сделать!

    Ротация 8 насосов с 4-я включёнными_2.owle
    Последний раз редактировалось Сергей0308; 21.12.2023 в 22:34.
    Если проблему можно решить за деньги, это не проблема, это расходы. Бог каждому посылает проблемы по его силам. Так что одно из двух. Либо ты можешь-таки
    справиться с проблемами, либо это не твои проблемы.

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

    По умолчанию

    Я не понял последнего
    Я то некоторые новички не знают как это сделать!
    Вот не копая код.
    1. на входе блока Extract81 число 5, почему включен только выход Q2 ?
    2. Блоки Ротация2, 3, 4 то, что вижу на входах и на выходах не соответствуют друг другу. на входе In_Q блоков 3, 4 стоит 5 и на выходе Q тоже 5. На входе же блока два стоит 4 а на выходе 5. Типа +1, почему на других таких же блоках при одинаково выставленных входах у всех вдруг выход = входу, а на блоке 2 идет + 1

    Просто даже глядя на режим эмуляции возникают сразу вопросы.

    Судя по блоку Putbit8 там тоже не все чисто - 8 бит это число 256 - почему у вас 510 ?

    Если у вас там своя логика, еще какие фишки - не надо называть блоки Putbit и Extractbit просто из правил хорошего тона. Не стоит вводить в заблуждение.
    Последний раз редактировалось melky; 20.04.2025 в 19:24.

  7. #7
    Пользователь
    Регистрация
    09.12.2013
    Адрес
    Ставрополь
    Сообщений
    1,901

    По умолчанию

    Цитата Сообщение от melky Посмотреть сообщение
    Я не понял последнего
    Вот не копая код.
    1. на входе блока Extract81 число 5, почему включен только выход Q2 ?
    2. Блоки Ротация2, 3, 4 то, что вижу на входах и на выходах не соответствуют друг другу. на входе In_Q блоков 3, 4 стоит 5 и на выходе Q тоже 5. На входе же блока два стоит 4 а на выходе 5. Типа +1, почему на других таких же блоках при одинаково выставленных входах у всех вдруг выход = входу, а на блоке 2 идет + 1

    Просто даже глядя на режим эмуляции возникают сразу вопросы.

    Судя по блоку Putbit8 там тоже не все чисто - 8 бит это число 256 - почему у вас 510 ?

    Если у вас там своя логика, еще какие фишки - не надо называть блоки Putbit и Extractbit просто из правил хорошего тона. Не стоит вводить в заблуждение.
    По картинке судить об алгоритме - не очень правильный подход, учитывая, что половина кода просто не видна
    В битовых масках нулевой бит игнорируется, поэтому все входы/выходы начитаются с первого бита - отсюда сдвиг
    +1 на блоке Ротация - насос 1 в аварии (на картинке это не показано - косяк автора), поэтому выбирается следующий нормальный

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

    По умолчанию

    Цитата Сообщение от melky Посмотреть сообщение
    Я не понял последнего
    Вот не копая код.
    1. на входе блока Extract81 число 5, почему включен только выход Q2 ?
    2. Блоки Ротация2, 3, 4 то, что вижу на входах и на выходах не соответствуют друг другу. на входе In_Q блоков 3, 4 стоит 5 и на выходе Q тоже 5. На входе же блока два стоит 4 а на выходе 5. Типа +1, почему на других таких же блоках при одинаково выставленных входах у всех вдруг выход = входу, а на блоке 2 идет + 1

    Просто даже глядя на режим эмуляции возникают сразу вопросы.

    Судя по блоку Putbit8 там тоже не все чисто - 8 бит это число 256 - почему у вас 510 ?

    Если у вас там своя логика, еще какие фишки - не надо называть блоки Putbit и Extractbit просто из правил хорошего тона. Не стоит вводить в заблуждение.
    Был вопрос в другой теме как по внешнему сигналу аварии насоса вывести его из работы, соответственно и из ротации, это очень легко сделать, но некоторые новички не знают как, вот я и добавил последний вариант программы(перенёс из другой темы) в исходную тему!
    Короче, вот Вы вроде и не новичок, но всё равно не можете разобраться!
    Обычно я проекты выкладываю чтобы ими пользоваться, с алгоритмом работы бывает сложно разобраться без подробного объяснения, так что Вы не расстраивайтесь что не разобрались, можно сказать это нормально. Вы наверно и раньше не разбирались в системах цветности ПАЛ-СЕКАМ прежде чем смотреть телевизор, в смысле, это не мешает его смотреть!
    Последний раз редактировалось Сергей0308; 20.04.2025 в 19:50.
    Если проблему можно решить за деньги, это не проблема, это расходы. Бог каждому посылает проблемы по его силам. Так что одно из двух. Либо ты можешь-таки
    справиться с проблемами, либо это не твои проблемы.

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

    По умолчанию

    С пал-секам проще было, чем иногда понять организацию вашей логики.
    И именование блоков это прям.... Особенно когда видишь 8 бит на входе и иное число на выходе.

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

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

    По умолчанию

    Цитата Сообщение от melky Посмотреть сообщение
    С пал-секам проще было, чем иногда понять организацию вашей логики.
    И именование блоков это прям.... Особенно когда видишь 8 бит на входе и иное число на выходе.

    з.ы. я скачиваю, но часто не смотрю, потому что поднадоебало каждый раз скачивать новые версии.
    В общем без крайней необходимости не обновляюсь.
    И, не выдумывайте, проект создавался примерно полтора года назад, для его открытия не нужно последнюю версию ОЛ, в смысле, достаточно полуторагодовой давности!
    И, у меня макросы, например PUTBIT8 и EXTRACT8 - универсальные, в смысле какие биты вставляются или извлекаются можно назначить(посмотреть) в свойствах макроса:

    PUTBIT8.png

    EXTRACT8.png

    Я это не скрываю, что у Вас память плохая я не виноват!
    Последний раз редактировалось Сергей0308; 20.04.2025 в 21:10.
    Если проблему можно решить за деньги, это не проблема, это расходы. Бог каждому посылает проблемы по его силам. Так что одно из двух. Либо ты можешь-таки
    справиться с проблемами, либо это не твои проблемы.

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

Похожие темы

  1. Чередование насосов (случай для 3-х насосов)
    от 07Fobos в разделе Программируемые реле
    Ответов: 14
    Последнее сообщение: 30.10.2022, 22:04
  2. Чередование насосов при каждом пуске
    от shvitaliy в разделе Программируемые реле
    Ответов: 2
    Последнее сообщение: 27.03.2022, 16:56
  3. Управление включения насосов с экрана ПР200
    от Stakris в разделе Программируемые реле
    Ответов: 19
    Последнее сообщение: 16.04.2018, 18:16
  4. Включение насосов с экрана ПР200?
    от Stakris в разделе Среда программирования OWEN Logic
    Ответов: 5
    Последнее сообщение: 11.04.2018, 13:53
  5. Ответов: 20
    Последнее сообщение: 23.09.2015, 16:55

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

Ваши права

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