Мягкий ПЛК (Software PLC) — это программно-управляемый логический контроллер на основе программного обеспечения, появившийся в конце 1990-х годов, призванный преодолеть проблемы медленного роста соотношения цены и качества и ограниченного технического развития традиционных ПЛК из-за монополии производителей. Он реализует функции традиционных ПЛК через платформу ПК и универсальную операционную систему, соответствует стандарту IEC61131-3 и поддерживает пять языков программирования: инструктаж (IL), структурированный текст (ST), трапециевидные диаграммы (LD), а также другие. Система управления состоит из модулей IO-интерфейсов, коммуникационных интерфейсов, компилятора и менеджера ошибок, поддерживает полевые шины и распределённое управление вводом-выводом [2]. Мягкий ПЛК использует открытую аппаратную архитектуру, совместим с такими операционными системами, как Windows и Linux, может работать на промышленных ПК, серверах или мини-компьютерах, обеспечивая независимость от оборудования [1] [3]. Система разработки имеет функции имитационного запуска, онлайн-редактирования и сетевой связи, поддерживает удалённый мониторинг по TCP/IP [2]. Система использует технологию виртуализации, позволяя развертывать несколько независимых экземпляров на одном оборудовании, что сокращает время простоев [1]. Некоторые решения сочетают операционные системы реального времени (например, SylixOS), достигая точности циклов задач в микросекундах, а также интегрируют ядро промышленных протоколов, таких как EtherCAT, для повышения эффективности передачи данных [4]. Технические преимущества включают расширяемость набора команд, высокое соотношение цены и качества, совместимость с стандартными компьютерными сетями и поддержку пользовательских алгоритмов управления.