Может ли одноплатный контроллер бросить вызов промышленному ПЛК?
Одноплатные микроконтроллеры пользуются большой популярностью в среде любителей, но могут ли они противостоять полноценным промышленным ПЛК в более сложных приложениях управления процессами?
Одноплатные микроконтроллеры, такие как Arduino и Raspberry Pi, являются чрезвычайно недорогими и очень функциональными, что делает их сильно привлекательными для разработки проектов в сообществе любителей создавать различные домашние приложения в качестве хобби. Понимание данного увлечения привело нас к разработке проекта промышленного типа, который мог бы быть реализован как на Raspberry Pi, так и на стандартном промышленном ПЛК, чтобы выяснить преимущества и проблемы каждого из них.
Моделирование процесса
Для этого сравнения мы собрали небольшой водонагреватель. Вместо того, чтобы использовать простое управление включить-выключить, как в домашнем водонагревателе, или даже ПИД-регулирование, как в промышленном процессе, мы решили использовать усовершенствованную схему управления на основе моделей. Логика будет контролировать два входа: подачу воды и ее температуру на входе, чтобы прогнозировать и, следовательно, контролировать нагрев и обеспечивать желаемую температуру на выходе.
Температура на выходе контролировалась для определения производительности, но не была частью контура управления. Хотя подобная схема не совсем практична для применения в «реальном мире», она обеспечивала систему с двумя независимыми входными переменными, настраиваемыми параметрами и одним управляемым выходом, что вполне типично для многих реализаций промышленного управления на основе моделей.
Построение тестовой системы
Трубопроводы и контрольно-измерительные приборы были относительно просты. Расходомер Emerson Rosemount выдавал сигнал 4-20 мА, а датчики температуры представляли собой 100-омные платиновые термометры сопротивления (RTD). Поток воды через нагреватель проходил один раз. Для питания резистивного нагревательного элемента использовалось полупроводниковое реле TRIAC с переключением при нулевом напряжении. При правильной координации каждый из тестовых контроллеров сможет контролировать включение или выключение выхода для каждого цикла переменного тока.
ПЛК против Raspberry Pi
В качестве ПЛК была взята платформа CLICK от AutomationDirect с процессорным модулем с поддержкой Ethernet, модулями аналогового ввода и ввода от термометра сопротивления и источником питания. Это оборудование легко соединяется в компактный блок и готово к непосредственному приему полевых сигналов.
Raspberry Pi 3 Model B v1.2 представляет собой крошечный персональный компьютер со встроенным проводным Ethernet-портом и портом micro-SD. Однако доступные для Raspberry Pi платы ввода/вывода не работают с сигналами промышленного стандарта, поэтому для обработки сигналов необходимо было создать дополнительную небольшую печатную плату преобразователя.
Программные подходы
ПЛК CLICK и Raspberry Pi имеют две совершенно разные среды программирования.
Как и большинство ПЛК, CLICK конфигурируется с помощью традиционной релейной логики, которая выполняется путем оценки условий и командных действий, непрерывно выполняя сканирование. При каждом сканировании внутренний процессор оценивает входные данные и другие условия внутреннего состояния, определяя, какие действия необходимо выполнить.
Контроллеры Raspberry Pi можно программировать на многих языках, но в данном эксперименте для простоты был выбран Python. Однако подобная открытая гибкость также означает, что для надежного и своевременного выполнения команд пользователь должен тщательно настраивать весь программный код.
Ведение процесса
В ходе процесса оба контроллера справились с задачей поддержания заданной температуры на выходе. ПЛК CLICK выполнял управление предсказуемо стабильно. Тогда как в Raspberry Pi наблюдалось, что выход активирует более нерегулярным образом. Есть надежда, что благодаря дополнительным исследованиям и программированию, введению фильтрация шума и улучшению синхронизации можно довести стабильность работы Raspberry Pi до уровня, необходимого для производственной системы.
Кто же победил?
В этом тесте явным победителем стал ПЛК CLICK благодаря быстрой установке, простому программированию и последовательному поведению. Raspberry Pi обладает гораздо большими возможностями во многих областях, неприменимых для этого приложения, но его было трудно связать с полевыми сигналами, он использовал многозадачную операционную систему, не идеальную для детерминированных приложений, и не имел промышленного форм-фактора.
Детальный анализ затрат не проводился, но вполне очевидно, что решение на основе бытовой электроники Raspberry Pi будет дешевле, чем коммерческий ПЛК. Тем не менее, при оценке затрат необходимо учитывать дополнительные инженерные и производственные усилия, потребовавшиеся для усовершенствования микроконтроллера под задачи теста, а также приобретаемые дополнительные детали, в частности изготовленную под заказ внешнюю печатную плату.
Выводы и примечания
Помимо физической наполнения, что еще делает ПЛК так хорошо подходящими для промышленной автоматизации? Вот некоторые из преимуществ:
- Аппаратные сторожевые устройства подкрепляют базовую функциональность и работают при возникновении проблем.
- Промышленное исполнение корпуса и креплений создано для экстремальных условий эксплуатации.
- Соответствие стандарту UL508 делает их пригодными для установки в панелях управления, подлежащих поверке и/или требующих сертификации.
Наше исследование показало, что недорогие доступные промышленные ПЛК стоят все же дороже, чем системы, созданные из контроллеров бытовой электроники, но имеют значительные преимущества по аппаратному исполнению и программному обеспечению. Варианты «сделай сам» могут оказаться экономически эффективными, но требуют повышенного внимания при интеграции аппаратных частей и программного обеспечения.
В качестве примечания: AutomationDirect услышали пользователей, которые хотят использовать open source для промышленных проектов с должной степенью надежности. Недавно они представили ProductivityOpen – полностью промышленный Arduino-совместимый контроллер, который может использовать шилды Arduino и модули ввода/вывода ПЛК Productivity1000, предлагая заинтересованным пользователям лучшее из обоих миров.
Пользователи сейчас имеют огромный диапазон доступных вариантов платформ автоматизации. Но это также означает, что им необходимо тщательно исследовать доступные возможности и выбрать именно то, что предоставит наилучший результат для конкретного приложения.