Доброго времени суток, уважаемые форумчане!
Пару недель назад вернулся с учебы (предприятие отправило поучится в командировку) по программированию ПЛК Овен в среде кодесис, сжато и в основном на CFC. Вернувшись на работу, столкнулся с необходимостью писануть программу для линии сортировки пиломатериала, но уже для DVP SS2. С матюгами и Божьей помощью начал осваивать язык LD и среду WPLSoft2.12, уже чего-то могу, даже нравится больше чем в CoDeSys, не надо напрягаться с конфигурированием ПЛК. Но проблема в том, что не могу даже толком представить себе алгоритм работы программы. Подробнее: Линия сортировки сухого пиломатериала. Оператор, отправляя объект (скажем доску) на рольганг , при прохождении объектом входного датчика (первого) нажимает кнопку назначенного кармана, куда объект должен быть сброшен. Карманов всего три. Казалось-бы программа управления простенькая, составить её на LD полчаса-час делов, НО не тут-то было! До момента сбрасывания первого в очереди объекта, за ним по линии уже движутся еще пара-тройка, назначенные в другие карманы, и, соответственно, решение в виде простых, практически линейных на открытых/закрытых контактах и включениях/отключениях по фронтам с самоподхватом - ... не вижу, короче решения. Пробовал намутить со счетчиками - тоже не то. Может кто подскажет решение, на каких прикладных инструкциях можно сделать.
По линии: производство япона-мамы ПЛК мохнатого года выпуска, с которого содрать программу не могу, но начальство хочет иметь в запасе на случай аварии готовый запасной пульт управления с запрограммированным ПЛК (я склоняюсь к Делта). "Анатомия" линии по порядку движения сортируемых объектов: пульт, датчик 1 (на нем при нажатии кнопки на пульте задается карман сбрасывания), датчик 2 (такой-же проходной, но просто отслеживает, видимо, прохождение объекта) , датчик 3 (первый карман) - при нажатии поднимается упор-тормоз объекта и запускается двигатель поперечного сбрасывателя в карман, который дает один оборот до срабатывания концевика сбрасывателя, датчик 4 (второй карман) - то-же самое что и в первом - упор/сбрасыватель/концевик останова сбрасывателя, датчик 5 (третий карман) - датчик наличия объекта в позиции кармана, автоматически поднимающегося упора нет (постоянный жесткий), сбрасыватель с концевиком. Хотя автоматику и электромеханику третьего кармана можно даже не подключать к ПЛК, там и на одном реле все работать будет, все равно все что не в первый или второй идет, будет сброшено в третий. Вот как организовать в программе отслеживание положения одновременно 3-4 объектов и их сброс? Саму программу писать вас не прошу, мне будет полезно самому это сделать, а вот от дельных подсказок не откажусь.
Алгоритм
Re: Алгоритм
Сдвиговый регистр.
Re: Алгоритм
Все зависит от устройства сброса и расстоянием между деталями. По идее нужны датчики нахождения детали в зоне соответствующего сброса, или доступность всех трёх сбросов только для одной детали. Очередь можно организовать через сдвиг регистров или же с помощью условной адресации E1 , F1. Принцип работы контроллера очень хорошо описан в начале инструкции. И почему вы пользуетесь такой древней версией wpl?
Re: Алгоритм
По первому датчику и кнопке набиваете и сдвигаете массив с номером кармана.
по датчику 3 проходите массив с конца, если первое не нулевое значение это номер первого кармана, сбрасываете, если нет, набиваете и сдвигаете ещё один массив. И обнуляете то что нашли. На следующем датчике кармана тоже самое, но уже с массивом который который сдвигали на первом кармане.
удобнее ISPSoft
по датчику 3 проходите массив с конца, если первое не нулевое значение это номер первого кармана, сбрасываете, если нет, набиваете и сдвигаете ещё один массив. И обнуляете то что нашли. На следующем датчике кармана тоже самое, но уже с массивом который который сдвигали на первом кармане.
удобнее ISPSoft
Re: Алгоритм
По ПО отвечу: WPL потому как первое что нашлось русифицированного.
За сдвиговый регистр - спасибо огромное!
За сдвиговый регистр - спасибо огромное!
Re: Алгоритм
БагофицированногоPALYCH писал(а):русифицированного