Подчас разработчик не всегда может участвовать в разработке проекта с нуля и вынужден работать с тем, что есть, не всегда есть адекватное техническое задание, но система в итоге должна выйти поддерживаемой.
«Проектирование, анализ полученного и очередная итерация, пока не добъемся допустимого результата».
Этот слоган не применим, в том случае, когда вы даже отдалено не представляете конечный результат работы. Заложенное изначально оборудование с 2-кратным запасом не выдерживает новых требований, а полная переработка неприемлема из-за накладных расходов на перемонтаж. В тексте будет пара скринов визуализации и редактора FDB схем для проекта (все наши внутренние продукты)…

Хмурый эксперт скажет: «Что за разработчик, если не понимает конечной цели своей работы...» — просто почитайте этапы.

Акт 1 «Технология» — (линия очистки продукта — она же и конечная цель)

Действующие лица:
— ПЛК — ICP -7188XA (icp das) (2 — 485 порта, 2 — 232 порта из них 1 для связи с ПК);
— Платы ввода/вывода DIO 4.3 — минус 485 порт ПЛК;
— Платы датчиков PDAT, PRKS — минус 485 порт ПЛК;
— Частотный привод Delta — 3 шт. (RS485);
— Весы Gelios (НПФ) -3 шт.;
— Плата расширения MOXA cp132 — 2 порта;
— Персональный компьютер, операционка Windows XP SP3;
Ограничения — не более 7 плат на порт (по 64 канала) с одним протоколом обмена

Управляемых машин — 66, клапанов и задвижек 84. Также датчики положения и наличия. Машины, клапана — на платы управления, датчики на платы датчиков.

Задачи:
  • организовать последовательный запуск по выбранному направлению,
  • отработать аварийные ситуации
  • организовать весовой учет

Уточняем работу частотников — просто иметь возможность регулировать частоту оператором. Значит можно не перегружать ПЛК, а добавить в верхний уровень такую возможность. Плата расширения принимает весы и частотники.
Далее все просто: клепаем логику (функционально блоковые диаграммы — среда RoboPlant), делаем визуализацию.

Получаем что-то подобное:

image

Тестируем
Пускаем в работу. Цикл работы 1.01 сек.

Отработали непрерывно 24 часа — проверили. Разработка с 0, вопросов нет. Решение, как минимум, неплохое.

Акт 2 «Технология» — (усложняем)

Отработали N время, решили оптимзировать производство. Как?

Задачи:
  • Привяжем частотные приводы к производительности весов, дабы весы не простаивали
  • Снизим потребление при простоях — будем гасить линию по истечению времени (если продукта нет больше заданного времени — эффективно даже с учетом пусковых токов)
  • Добавить несколько единиц оборудования в ПЛК — организовать подачу на неавтоматизированные линии:


Заводить весы и частотники в ПЛК — не вариант, в любом случае оператор должен видеть ЧТО происходит с линией,
автономная подстройка производительности, либо останов недопустимы — и в том и другом случае сопровождаются расходами: высокой нагрузкой на склад или недостатком продукта для склада.

Решено — привязываем к верхнему уровню, делаем обработку раз в секунду — производительность исчисляется за больший интервал (кг/ч), изменять параметры быстрее чем раз в секунду нет необходимости. Проверяем на практике данное решение — работает.

Добавляем новые машины, правим логику, визуализацию.

image

Ставим заказчику. Минус Завязываемся на персональный компьютер, выход его из строя выводит наши плюшки из игры. Не критично. Отработали непрерывно 24 часа — проверили. Цикл работы 1.35 сек.

Акт 3 «Фасовка» — (линия упаковки продукта, конечная цель увязать с предыдущим проектом)

Клиент поработал с системой, оценил прирост производительности, созрел до новой линии.

Действующие лица:
— ПЛК — ICP -7188XA (icp das) (2 — 485 порта, 2 — 232 порта из них 1 для связи с ПК);
— Платы ввода/вывода DIO 4.3 — минус 485 порт ПЛК;
— Платы датчиков PDAT, PRKS — минус 485 порт ПЛК;
— Весы Gelios (НПФ) — 12 шт.;
— Плата расширения MOXA cp132 — 2 порта;
— Персональный компьютер;

Задачи:
  • организовать последовательный запуск по выбранному направлению,
  • отработать аварийные ситуации
  • организовать весовой учет
  • использовать весы в качестве дозаторов
  • организовать взаимодействие между 2 проектами с общим оборудованием

Число машин 95, число задвижек 166, + 19 нестандартных трехпозиционных задвижек. Проблема: группировка и расположение плат не позволяют завести все на один ПЛК — организуем еще один — перемонтаж дороже.

Один отвечает за машины, второй за клапана и задвижки.

image

Взаимодействие между ними через ПК провальное решение и основная ошибка. Сроки работы не позволяли наладить взаимодействие между ICP напрямую. Дозакапываем себя еще глубже связь с «технологией» через ПК.

Проверяем работу как положено 24 часа непрерывно — идет.

Следующий неприятный момент — весы в оказались не в начале линии а в середине! Недоработка технолога, проектировщика — уже не важно — работаем с тем что есть. Длина рабочих линий и их вместимость разная — по достижению заданног веса на весах у нас еще в машинах есть K объем продукта. Делать нечего — вводим поправку на каждую линию, сколько весы должны не добрать. Тестируем — работает с точностью до 200 кг. на 6 тонн к примеру 3.3% на короткой линии, 450 кг на 6 тонн — 7.5% на длинной — заказчик согласен. Обработка в верхнем уровне SCADA. Отработали непрерывно 24 часа — проверили.

Стабильная работа до первого зависания

Как и положено системнику спустя некоторое время призадумлся он на «Фасовке» приостановилась работа. Местные быстро соориентировались — перезапустили — работает. Но осадочек остался.

Система, да уже система продолжила укрупнятся и включила в себя еще один проект из 2 ПЛК, + один общий ПЛК на аспирационную сеть + 1 ПЛК на новую линию упаковки.
Итого 7 относительно надежных ПЛК работающих друг с другом через относительно ненадежных посредников ПК.
С тех пор и до момента замены группы ПЛК на один — на базе intel atom NISE-105 было потрачено много нервов и сил на поддержку и модернизацию.

Резюме:
Для себя я отметил несколько важных пунктов.
  • для проектов, имеющих потенциал нужно закладывать оборудование, перекрывающее собой несколько подобных проектов. Проектов, а не число оборудования — должно хватать памяти и быстродействия для логической обвязки.
  • связка проектов даже небольшая не должна идти через столь слабое звено как персональный компьютер. Оператор может от скуки принести много порно видео и забить производительность бедняги
  • не браться реализовывать все, что желает заказчик. Пусть даже это и возможно, но тянет за собой завязку на слабые звенья
  • конечная цель работы заказчика — это решение тактических задач, в стратегии предприятия не было перехода на полную автоматизацию производства. Решением текущих задач и упрочнением позиций на рынке предприятие вышло на практически полную автоматизацию. Без последнего
Поделиться с друзьями
-->

Комментарии (12)


  1. Earl1982
    26.08.2016 11:28
    +1

    А собственно чем определялся изначальный выбор аппаратной платформы? Просто «подъем» логики управления с уровня ПЛК на уровень HMI, обычно до добра не доводит. Все-таки ПЛК это системы реального времени, а ПК — нет. Отсюда и проблемы с меняющимися циклами, в зависимости от загрузки ПК.


    1. AlexisVaBel
      26.08.2016 11:38

      Аппаратная платформа исторически использовалась в нашей фирме до текущего времени, была привлекательна ценой для клиента (около 15000 за ПЛК). Для небольших задач типа мельницы и элеватора вполне достаточно. Для крупоцеха на предприятии, где активно экспериментируют с процессом, как оказалось, в N раз недостаточно.
      Перевод всей системы на NICE и вывод логики из HMI — это уже результат печального опыта и длительных переговоров с заказчиком.
      ICP (Flash 512 кБ, EEPROM: 2 кБ) просто бы не потянул обработку весов и взаимодействие с 6 сотоварищами.


    1. AlexisVaBel
      26.08.2016 11:40

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


  1. Earl1982
    26.08.2016 12:10
    +1

    В целом беда российского рынка, что до заказчика трудно донести что стоимость адекватной АСУ может составлять до 30% от стоимости всего производственного железа. В качестве примера приведу проект одного элеватора, в котором при наличии довольно дорогих норий и конвейеров (Skandia), нашлось место каким-то самопальным поделиям наших китайских братьев, в качестве ПЛК, которые с завидным постоянством уходили в «стоп» и теряли Profibus. В итоге заказчику пришлось заказать переделку всего уровня ПЛК с использованием более менее адекватного железа, что соответственно обошлось гораздо дороже, чем заказ изначально адекватного проекта и средсв автоматизации.


  1. demshyn
    27.08.2016 11:33
    +1

    «Что за разработчик, если не знает что правильно писать FBD (Function Block Diagram)...»


  1. AlexisVaBel
    27.08.2016 11:35

    А по-русски перевода нет?))) Одобрил коммент в качестве бреда, часто на хабре встречаю таких перцев — по делу есть что?


  1. Siemargl
    28.08.2016 16:55

    Итого — первичный выбор ужасной аппаратной платформы привел к полной переделке впоследствии. Кстати тоже на не лучшую.


    1. AlexisVaBel
      28.08.2016 16:57

      а я писал про детали переделки? откуда такой вывод? у клиента полным ходом идет работа — не могут время на дополнение выделить, а значит аппаратная платформа с той же нагрузкой работает. Тот же крендель, что и demshyn или так написать нечего было?


    1. AlexisVaBel
      28.08.2016 16:58

      судя по всему человек далек от реалий как минимум моей предметной области.


      1. Siemargl
        28.08.2016 18:18

        Второй момент — есть разница между ПЛК и внедряемым компьютером. Все о чем говорится выше — это внедряемые системы, причем не использующие системы реального времени, с программной эмуляцией работы ПЛК.
        Если кому интересны действительно хорошие ПЛК решения, можно посмотреть в гугле PLC market share.


      1. Siemargl
        28.08.2016 18:45

        Еще замечу что с вашим секундным циклом пробовать реализовать дозирование — тухлый номер. Точность будет отвратительная, недопустимая для заказчика. Нормальное время цикла с целью учета прогнозирования предостановки я бы оценил в 50-100 мс.

        Для показанного элеватора вы еще можете «выкрутиться», но для комбикормового завода, близкого по технологии, рецептура уже будет непоправимо нарушена.


        1. AlexisVaBel
          29.08.2016 05:38
          -1

          Ясно, читай внимательно и читай не концовку + комментарии, а текст. «Элеватор и дозирование» — и то и другое ты мимо и не о тексте (проходные весы — это не дозаторы, но могут дать флаг прекращения подачи). Дозатор как минимум ставится в точку выхода продукта и имеет автономные режимы дозирования «Грубо», «Точно».
          P.S. не понял текст — перечитай, а что такое хороший ПЛК? Хорошее решение — оно только для конкретного случая и если есть неготивный опыт использования software plc из практики — приведи пример.
          И, да, клиент работает и это самое главное.