RESEARCH ON THE APPLICATION OF ARTIFICIAL NEURAL NETWORKS RUNNING ON PROGRAMMABLE LOGIC CONTROLLERS FOR PROCESS CONTROL
Введение
В настоящее время встречается большое количество технологических процессов, описание и управление которыми традиционными средствами затруднено. В решении данной проблемы может помочь применение искусственных нейронных сетей (далее ИНС, нейросети, нейронные сети), обученных на основе экспертных данных, что позволит как повысить качество управления, так и снизить число экспериментов, проведенных с целью настройки регуляторов и системы управления технологическим процессом в целом. Современные программируемые логические контроллеры (ПЛК) обладают достаточной вычислительной мощностью для работы с нейронными сетями, однако вопрос интеграции нейросетевого модуля в существующую систему управления технологическим процессом без использования дополнительных вычислительных устройств слабо раскрыт в научной литературе.
В статье [1] представлен результат использования нейронной сети на ПЛК в задаче классификации двухмерных серых объектов по четырем классам. Обучение проводилось на персональном компьютере, после чего коэффициенты передавались в контроллер по сети PROFIBUS. По результатам экспериментов авторам удалось добиться почти абсолютной точности определения на проверочной выборке из 80 объектов.
Идея интеграции ПЛК и ИНС рассмотрена в статье [2]. Авторы рассматривают в качестве трендов для применения нейросетей предиктивное техническое обслуживание, самооптимизацию, повышение качества человеко-машинного взаимодействия, контроль качества продукции под управлением искусственного интеллекта, снижение расходов производства.
В работе [3] представлен эксперимент по созданию и обучению ИНС в среде разработки CoDeSys v2.3 на языке ST. Разработанная нейронная сеть тестировалась в задаче аппроксимации нелинейной функции, что можно рассматривать как настройку нейросети для регулирования параметра в технологическом процессе.
В статье [4] описано применение ИНС в составе управляющей программы ПЛК «Siemens» S7-1200 для подстройки коэффициентов ПИД-регулятора, управляющего температурой воды в емкости. По данным автора, разработанная система позволяет достичь отсутствия перерегулирования и нулевого (0,0 %) рассогласования в установившемся режиме. Графиков параметров в ходе процесса и сравнения с обычным ПИД-регулятором не представлено.
Исследование нейронного регулятора скорости потока жидкости, опубликованное в 2020 г. [5], описывает работу лабораторного стенда, включающего некий ПЛК и персональный компьютер со средой математического моделирования MATLAB, в которой запущена искусственная нейронная сеть. Нейросеть обучалась на результатах моделирования процесса. Связь между ПЛК и ПК реализована при помощи ОРС-сервера. По результатам статьи, нейросетевой регулятор продемонстрировал более качественное регулирование (меньшие перерегулирование и статическая ошибка), чем настроенный ПИД-регулятор.
Применение нейронной сети в связке с ПЛК для повышения качества очистки сточных вод описано в работе коллектива авторов (Ž. Kavaliauskas и др.) [6]. Внедрение прогнозов изменения регулируемых величин при помощи нейросети позволило добиться значительных преимуществ в сравнении с ручным управлением процессом. Из пояснений авторов не совсем ясно, как именно происходит связь нейронной сети и ПЛК и где конкретно запущена ИНС.
В статье «Development of a Neural Network-Based Controller for a Greenhouse Irrigation System at Laboratory Scale» описано применение нейросети на ПЛК для управления системой полива растений в теплице [7]. Нейронный регулятор разработан и транслирован в контроллер средствами среды MATLAB в виде отдельного блока. Авторами доказана применимость такого регулятора, но непосредственно экспериментальное сравнение производилось только с релейным регулятором.
Аналогичный принцип реализации нейронного регулятора при помощи трансляции из среды MATLAB описан в статье [8]. Авторы используют ПЛК SIEMENS серии SIMATIC S7-1200 с двумя нейросетями для управления манипулятором с шестью степенями свободы как примером нелинейной системы. Результатов экспериментов по проверке точности позиционирования или скорости работы манипулятора, управляемого разработанными нейронными сетями, авторами не представлено.
В аналитическом обзоре [9] рассматривается большое количество статей по применению методов интеллектуального управления, в том числе на основе искусственных нейронных сетей. Авторы делают вывод о перспективности использования такого подхода для автоматизации сложных и нелинейных процессов, в частности работы с биотехнологическими объектами. Подходы по совмещению в одной системе методов управления на основе нечеткой логики и искусственных нейронных сетей описываются в работах [10, 11]. Подобные решения позволяют улучшить качество управления сложными объектами и автоматизировать принятие решений на основе большого количества факторов.
Авторами работы «Формирование цифровых двойников объектов автоматического управления с использованием нейронных сетей в процессах холодной сушки рыбы» [12] описано применение нейронной сети для создания цифрового двойника объекта автоматизации. Полученная таким образом модель может быть использована как для моделирования различных сценариев работы с объектом, так и непосредственно в управлении, например, для подстройки традиционных регуляторов.
Цель исследования – изучение возможностей современных программируемых логических контроллеров по применению искусственных нейронных сетей для управления технологическим процессом на примере задач аппроксимации и классификации.
Материалы и методы исследования
Искусственная нейронная сеть в данном исследовании представлена в виде программного модуля (PRG) для программируемого логического контроллера с сенсорным экраном «ОВЕН» СПК107. Среда разработки программы под данный контроллер CODESYS V3.5 имеет достаточные программные средства для реализации масштабируемых нейронных сетей.
Эксперименты по применению нейронных сетей для регулирования температуры проводились на сушильной установке для обезвоживания рыбы УПОР-М2 Мурманского арктического университета. Управляющим устройством данной установки также является СПК107. Состав оборудования УПОР-М2 более подробно раскрыт в статье «Модернизация малогабаритной сушильной установки для поиска оптимальных режимов с применением тепловизионного контроля» [13].
С целью повышения скорости обучения нейронной сети в ряде экспериментов задействован сенсорный панельный контроллер «ОВЕН» СПК210-07. Повышение вычислительной мощности управляющего устройства позволило снизить время выполнения одного цикла программы на более чем 10 мс. СПК210-07 не входит в состав системы управления сушильной установкой, поэтому для проверки разработанной нейронной сети требовалось выполнить перенос управляющей программы на другую версию среды разработки CODESYS. Изменения включали только смену целевой платформы и версий библиотек для визуализации.
Разработанный программный модуль ИНС включает в себя:
− подмодуль инициализации нейронной сети;
− подмодуль задания псевдослучайных весов;
− подмодуль ввода данных в нейронную сеть;
− подмодуль расчета выходов нейронной сети (прямое распространение сигнала);
− подмодуль обучения нейронной сети (прямое и обратное распространение сигнала);
− подпрограмму архивации и развертывания нейронной сети из архива.
Программная реализация ИНС основана на архитектуре полносвязного многослойного перцептрона. Топология искусственной нейронной сети определяется общим количеством слоев L̄ (где L̄ ≥ 3, так как сеть содержит входной слой, как минимум один скрытый и выходной слой), числом нейронов в каждом из них и функцией активации. Поддерживается возможность добавления нейронов смещения с выходом, равным единице, в каждый слой сети. Указанные параметры нейросети задаются на этапе компиляции программы в виде посредством констант. Программные ограничения на максимальное количество слоев и нейронов отсутствуют.
В общем виде топология искусственной нейронной сети описывается в следующем виде:

, (1)
где L̄ – общее количество слоев;
L – число скрытых слоев, причем L ≥ 1;
l – индекс слоя: l = 0 входной слой, l = 0,…,L скрытые слои, l = L + 1 выходной слой;
nl – число нейронов в слое l, n0 – число входов сети;
nL+1 – число выходных нейронов.
ИНС состоит из набора искусственных нейронов, выход которых можно описать выражениями
, (2)
где aj(l) – выход j-го нейрона слоя l;
fl – функция активации слоя l;
zj(l) – взвешенная сумма j-го нейрона слоя l;
nl – число нейронов в слое l.
(3)
где zj(l) – взвешенная сумма j-го нейрона слоя l;
nl–1 – число нейронов в слое l–1;
wji(l) – вес связи от i-го нейрона слоя l–1 к j-му нейрону слоя l;
ai(l–1) – выход i-го нейрона слоя l–1;
βl–1 – наличие нейрона смещения в слое l–1, 1 – есть, 0 – нет;
wj0(l) – вес связи от нейрона смещения слоя l–1 к j-му нейрону слоя l.
Функции активации нейронов задаются для каждого слоя отдельно. В программе реализованы и отдельно испытаны сигмоида, LeakyReLU, ELU, tanh, ступенчатая и линейная.
Обучение нейронной сети проводится методом стохастического градиентного спуска. Выбор обусловлен тем, что данный метод не требует вычисления градиента по всей обучающей выборке одновременно и может обновлять веса после каждого обучающего примера, что снижает затраты времени и позволяет обучать сеть на выборках достаточно большого объема.
Оптимизаторы процесса обучения в программу не внедрены, используется базовое правило градиентного спуска с фиксированной скоростью обучения. В качестве функции потерь используется половина квадрата разности между желаемым и полученным значениями выходного нейрона:
(4)
где E – значение функции потерь;
d – желаемое значение выходного нейрона;
y – полученное значение выходного нейрона.
Выбор квадратичной функции потерь обеспечивает дифференцируемость целевой функции по всем обучаемым параметрам и удобную форму производной, что необходимо для вычисления градиентов методом обратного распространения ошибки. С учетом выбранной функции потерь и отсутствия оптимизаторов правило обновления параметров метода стохастического градиентного спуска записывается в виде
(5)
где wji(l) – вес связи от i-го нейрона слоя l–1 к j-му нейрону слоя l;
bj(l) – смещение i-го нейрона слоя l;
η – скорость обучения, η > 0;
∂E / ∂wji(l) – градиент функции потерь по весу wji(l);
∂E / ∂bj(l) – градиент функции потерь по смещению bj(l).
Численные значения градиентов вычисляются методом обратного распространения ошибки. Сначала определяются локальные ошибки bj(l) нейронов, а затем через них выражаются градиенты (6) и (7):
(6)
где ∂E / ∂wji(l) – градиент функции потерь по весу wji(l);
δj(l) – локальная ошибка j-го нейрона слоя l;
ai(l–1) – выход i-го нейрона предыдущего слоя l–1.
(7)
где ∂E / ∂bj(l) – градиент функции потерь по смещению bj(l).
δj(l) – локальная ошибка j-го нейрона слоя l.
До начала обучения и до первого прямого прохода осуществляется псевдослучайная инициализация весов. Данная процедура предшествует любой обработке обучающих примеров и не повторяется в ходе стохастического градиентного спуска. Псевдослучайная инициализация весов необходима для нарушения симметрии нейронов, поскольку при одинаковых начальных весах нейроны одного слоя получали бы одинаковые градиенты и обучались бы одинаково. Псевдослучайные веса задаются с помощью генератора псевдослучайных чисел G с начальным значением S:
, (8)
где Rji(l) – псевдослучайное число, используемое для инициализации веса wji(l);
G – функция генератора псевдослучайных чисел, возвращающая значение в полуинтервале [0, 1);
S – начальное значение генератора псевдослучайных чисел;
l – индекс слоя;
j – индекс нейрона в слое l;
i – индекс нейрона в предыдущем слое l–1, причем i = 0 используется для связи от нейрона смещения.
Итоговый случайный вес рассчитывается по формуле
(9)
где wji(l) – начальное значение веса связи от i-го нейрона слоя l–1 к j-му нейрону слоя l;
wmin – нижняя граница диапазона инициализации весов;
wmax – верхняя граница диапазона инициализации весов;
Rji(l) – псевдослучайное число в полуинтервале [0, 1), полученное генератором G.
Индекс i = 0 используется только при βl–1 = 1, то есть при наличии нейрона смещения в предыдущем слое, при βl–1 = 0 веса wj0(l) не задаются и не используются.
Весь расчет нейронной сети проводится за один цикл программы без применения матричных вычислений, указателей, ссылок и особых возможностей CODESYS, что позволит, при необходимости, повторить управляющую программу (возможно, без подпрограммы архивации) в другой среде разработки. Недостатком данного способа является увеличение времени выполнения цикла, что может негативно сказаться на выполнении программируемым логическим контроллером других задач.
В качестве одной из гипотез исследования выдвинуто предположение об успешном выполнении системой управления с нейронной сетью как минимум одной из двух задач:
1. Определение текущей стадии обезвоживания сырья.
2. Непосредственный расчет управляющего воздействия для регулятора температуры.
Для проверки данной гипотезы принято решение об испытании разработанной ИНС в следующих задачах:
1. Решение набора задач на классификацию.
2. Решение набора задач на аппроксимацию.
3. Регулирование температуры в реальном технологическом процессе.
Для каждого случая архитектура искусственной нейронной сети подбиралась индивидуально. Коэффициент скорости обучения равнялся 0,001. Время обучения включает в себя и операции по архивированию значений.
Одной из распространенных задач на классификацию считается определение принадлежности цветка ириса к одному из трех классов по четырем параметрам. Соответственно, нейронная сеть имеет четыре входных нейрона и три выходных. Набор данных для задачи включает 150 примеров, по 50 на каждый класс, и называется ирисами Фишера, по фамилии создателя.
Для проверки точности нейронной сети случайным образом от каждого класса были отобраны по 10 примеров, итого нейронная сеть обучалась на 120 примерах и испытывалась на 30. Также следует отметить, что в оригинальном наборе данных примеры были сгруппированы по классам, поэтому перед началом экспериментов проведено «перемешивание» данных случайным образом.
Более сложной и одновременно более популярной является задача классификации на основе базы данных MNIST (Modified National Institute of Standards and Technology, модифицировано Национальным институтом стандартов и технологий США1), включающей суммарно 70 000 образцов рукописных цифр от «0» до «9» в виде черно-белых изображений в разрешении 28х28 пикселей. Таким образом, для классификации данных изображений нейронная сеть должна иметь как минимум 784 входных нейрона и 10 выходных. Непосредственно в наборе данных уже сделано разделение на обучающую и проверочную выборки, 60 000 и 10 000 примеров соответственно.
При помощи набора данных MNIST можно сделать вывод о возможности работы нейронной сети на ПЛК и успешном решении задачи классификации. MNIST считается не очень сложным набором. Разработчики указывают, что некоторыми испытателями на данном наборе при помощи неглубокой нейронной сети получена точность порядка 97–98 % [14] при сотнях нейронов в скрытых слоях.
Более сложной задачей является модификация Kuzushiji-MNIST (далее K-MNIST) – такой же по размерам и числу классов набор данных, но содержащий вместо цифр 10 иероглифов японской азбуки хирагана, также с разрешением 28х28 пикселей. Согласно результатам на электронной странице разработчиков2, размещенным авторами и добровольцами из числа пользователей, одинаковые нейронные сети показывают на наборе K-MNIST несколько меньшую точность (от 0,5 до 5 п. п.), чем на классическом MNIST. Связано это с большей сложностью иероглифов относительно арабских цифр. Имеются иные варианты K-MNIST, но в данной работе они не использовались.
Еще одной версией MNIST, подходящей для целей исследования, является Fashion-MNIST, в котором вместо цифр в данном наборе используются 10 классов одежды. Данный набор данных примечателен дополнительным исследованием точности человека на меньшей выборке примеров – 83,5 %. Согласно данным с сайта авторов3, точность различных видов классификаторов при работе с этим набором данных находится в диапазоне от 75 до 90 %. Для сравнения, по информации с той же страницы, большая часть классификаторов, испытанных на оригинальном наборе MNIST, продемонстрировала точность свыше 90 %.
В качестве простейшей задачи на аппроксимацию выбрана логическая операция «исключающее ИЛИ» (XOR) за счет своей нелинейности и малого количества возможных вариантов. Для решения такой задачи нейронная сеть должна обладать двумя входными нейронами и одним выходным. Для проверки точности нейросети необходимо задействовать те же значения, что и для обучения, поэтому практического смысла такая задача не несет, используясь, как и MNIST, только для проверки работоспособности нейронной сети.
Еще одной задачей решено выбрать аппроксимацию по упомянутому в статье «Реализация алгоритма обучения нейронной сети на ПЛК ОВЕН в среде CoDeSys» [3] выражению (А + В) × C + D. Для решения данной задачи нейронная сеть должна иметь четыре входных нейрона и один входной. Набор данных для обучения и проверки составлен аналогично исходной статье.
Для проведения экспериментов выбран технологический процесс регулирования температуры в сушильной камере, для чего создан набор данных из 60 значений, описывающий эмпирически полученную зависимость мощности, подаваемой на трубчатый электронагреватель, от ошибки рассогласования по температуре. Для оценки точности нейронной сети из 60 значений отобраны 10, что уменьшает число обучающих примеров до 50. Для работы в качестве регулятора нейронная сеть должна иметь минимум один входной нейрон и один выходной.
В ходе первого опыта обученная для работы в качестве регулятора нейронная сеть интегрировалась в программу для управления сушильной установкой как замена используемому ПИ-регулятору. Для снижения нагрузки на центральный процессор СПК107 время выполнения цикла расчета нейронной сети увеличено до 100 мс.
В качестве второго опыта проводилась проверка возможности нейронной сети обучаться не заблаговременно, а в процессе работы системы, используя в качестве учителя настроенный регулятор. Опыт проводился в три этапа:
1. Работа настроенного ПИ-регулятора и параллельное обучение нейронной сети.
2. Работа нейронной сети на тех же заданных значениях, что и ПИ-регулятор, без прерывания процесса.
3. Работа нейронной сети на новых уставках, спустя некоторое время после обучения.
В процессе проведения опытов принято решение о необходимости увеличения числа входных нейронов нейронной сети до четырех. Первый входной нейрон принимает значение рассогласования, на остальные подается идентификатор текущей стадии процесса – нагрев, остывание или поддержание температуры.
Результаты исследования и их обсуждение
Для задач классификации точностью являлся процент правильно классифицированных примеров на проверочной выборке.
Время цикла подбиралось экспериментально кратно 5 мс. В некоторых случаях происходила перезагрузка контроллера по сторожевому таймеру спустя некоторое время работы программы (до нескольких эпох обучения), поэтому время цикла во всех представленных случаях выбиралось со значительным запасом.
Результаты обучения нейронной сети на различных наборах данных представлены на рис. 1. На графике представлена зависимость точности (A) от количества эпох обучения (N). В рамках одной эпохи обучение проводилось на всех примерах набора данных без изменения позиций примеров в наборе. Нулевая точность в нулевой эпохе является следствием отсутствия проверки инициализированной нейронной сети со стартовыми случайными весами. Это особенность работы разработанного алгоритма обучения. Проверка и архивация результатов работы нейронной сети проводились каждую эпоху для MNIST и каждые десять эпох в остальных случаях.
По результатам экспериментов точность классификации нейронной сети на более сложных вариантах MNIST оказалась ниже, чем при классификации исходного набора, при одинаковом количестве эпох. Использование функции активации LeakyReLU привело к повышению точности классификации и снижению времени цикла по сравнению с первыми экспериментами, но потребовало ограничить выходное значение нейронов в связи с риском получения значения типа NaN (Not-a-Number) на выходе нейрона.
Результаты экспериментов по решению задач классификации на ПЛК представлены в табл. 1.

Рис. 1. Результаты обучения нейронной сети на ПЛК в решении различных задач классификации Примечание: составлен авторами по результатам данного исследования
Таблица 1
Результаты обучения нейронных сетей для решения задач классификации
|
Параметр |
Ирисы Фишера |
MNIST |
K-MNIST |
Fashion-MNIST |
|
Максимальная точность, % |
100 |
84,72 |
75,75 |
83,54 |
|
Эпоха максимальной точности |
350 |
26 |
480 |
300 |
|
Время цикла программы |
20 |
25 |
50 |
50 |
|
Время обучения, с |
1000 |
111 000 |
1 460 000 |
920 000 |
|
Структура скрытых слоев |
2–8 |
2–16 |
2–32 |
2–32 |
|
Функция активации |
Сигмоида |
Сигмоида |
LeakyReLU + Сигмоида |
LeakyReLU + Сигмоида |
Примечание: составлена авторами на основе полученных данных в ходе исследования.
Точность разработанных нейронных сетей на ПЛК при решении задач классификации наборов данных семейства MNIST сопоставима с результатами, выложенными авторами Fashion-MNIST4, и ниже, чем в результатах авторов K-MNIST5, что позволяет судить о возможности использования нейронных сетей на ПЛК для решения задач классификации по набору признаков, особенно при использовании большего числа нейронов в скрытых слоях.
Для задач аппроксимации критерием точности является сумма половин квадратов разности желаемого и полученного значений по всей проверочной выборке, поэтому в экспериментах на аппроксимацию минимальное значение критерия соответствует наилучшему результату.
Результаты работы нейронной сети для обучения в роли работы регулятора наглядно представлены на рисунке 2. На графике представлена зависимость точности (A) от количества эпох обучения (N). Причиной всплеска ошибки в задаче аппроксимации закона регулирования могли стать неудачно рассчитанные при обучении весовые коэффициенты, но не переобучение, так как впоследствии ошибка на проверочной выборке снизилась. Итоговые значения результатов экспериментов по решению задач аппроксимации представлены в табл. 2.
Разработанная нейронная сеть продемонстрировала возможность успешного обучения для аппроксимации операции XOR. Аппроксимация уравнения из [3] прошла хуже, чем у авторов исходной работы, возможно, из-за значительных отличий в обучающей и проверочной выборках. Суммарная ошибка при обучении нейронной сети на работу регулятором значительно выше из-за большего числа примеров из проверочной выборки и иного порядка требуемых выходных значений (единицы в XOR и уравнении, до сотни у регулятора).

Рис. 2. Результат обучения нейронной сети для аппроксимации функции зависимости мощности, подаваемой на трубчатый электронагреватель Примечание: составлен авторами по результатам данного исследования
Таблица 2
Результаты аппроксимации
|
Параметр |
XOR |
(А + В) * C + D |
Регулятор |
|
Минимальная ошибка |
0,0286 |
0,979 |
160,25 |
|
Эпоха минимальной ошибки |
8370 |
9670 |
10 220 |
|
Время цикла программы, мс |
15 |
25 |
25 |
|
Время обучения, с |
780 |
900 |
15 300 |
|
Структура скрытых слоев |
2–8 |
4–16 |
2–16 |
|
Функция активации |
LeakyReLU |
LeakyReLU |
LeakyReLU |
Примечание: составлена авторами на основе полученных данных в ходе исследования.

Рис. 3. Результат работы заранее обученного нейронного регулятора Примечание: составлен авторами по результатам данного исследования
Для проведения экспериментов по управлению реальным технологическим процессом управляющая программа с искусственной нейронной сетью перенесена на СПК107, управляющий сушильной установкой УПОР-М2. Результат регулирования температуры при помощи нейронного регулятора представлен на рис. 3. Заданное значение контура регулирования по температуре меняется для имитации реального процесса обезвоживания, сочетающего периоды активной сушки и релаксации. Объект управления подробно описан в [15].
Из графика видно, что регулирование при помощи нейронной сети приводит к наличию статической ошибки величиной более одного градуса Цельсия на этапе активной сушки. В рамках данной установки такая точность поддержания температуры является неприемлемой. Положительным результатом опыта является работоспособность нейронной сети, настроенной за пределами программируемого логического контроллера.
В ходе заключительного эксперимента предпринята попытка обучения нейронной сети непосредственно в процессе поддержания температуры, используя в качестве учителя текущий ПИ-регулятор. Результат эксперимента представлен на рис. 4 (изменение температуры) и рис. 5 (изменение управляющего воздействия).

Рис. 4. Результат работы нейронного регулятора, обученного на ПИ-регуляторе Примечание: составлен авторами по результатам данного исследования

Рис. 5. Выход нейронного регулятора, обученного на ПИ-регуляторе Примечание: составлен авторами по результатам данного исследования
Переход с ПИ-регулятора на нейросетевое регулирование осуществлено на отметке времени 60 000 с. Как и в случае с обучением вне технологического процесса, наблюдается статическая ошибка, но теперь менее одного градуса Цельсия, что является допустимым для данного процесса. Нейросетевой регулятор допускает меньшие недорегулирования по температуре при остывании, чем ПИ-регулятор, накапливающий значительное отрицательное управление в интегральной составляющей.
Для проверки полученной нейросети проведен еще один запуск системы с обученной нейросетью после остывания камер, при этом задающие воздействия снижены на два градуса Цельсия. Дообучение не проводилось, сразу активирован нейросетевой регулятор. Результат представлен на рис. 6 (изменение температуры) и рис. 7 (изменение управляющего воздействия).

Рис. 6. Результат работы нейронного регулятора, обученного на ПИ-регуляторе, после перезапуска сушильной установки Примечание: составлен авторами по результатам данного исследования

Рис. 7. Выход нейронного регулятора, обученного на ПИ-регуляторе, после перезапуска сушильной установки Примечание: составлен авторами по результатам данного исследования
Таблица 3
Результаты опытов по обучению ИНС на работе ПИ-регулятора
|
Регулятор |
ПИ |
Нейронный сразу после ПИ |
Нейронный после перезапуска |
|
Перерегулирование, °С |
0, 248 |
– |
0,052 |
|
Недорегулирование при нагреве, °С |
0,147 |
1,385 |
1,28 |
|
Недорегулирование при релаксации, °С |
2,176 |
1,178 |
1,065 |
|
Средняя интегральная оценка за период |
5573,726 |
4906,151 |
4543,068 |
Примечание: составлена авторами на основе полученных данных в ходе исследования.
Как и в предыдущем случае, наблюдается статическая ошибка, примерно равная одному градусу Цельсия. Численные результаты опытов сведены в табл. 3. Перерегулированием является максимальное превышение заданного значения при нагреве. Недорегулирование – максимальная разница между заданной и текущей температурой в режиме установившихся колебаний при недостижении заданного значения при нагреве и релаксации соответственно. Интегральная оценка рассчитана как интеграл модулей рассогласования.
Учитывая стабильность результатов, сделан вывод о возможности более качественной настройки регулятора при соответствующей доработке используемой в ПЛК структуры нейросети и процесса обучения.
Заключение
Разработанная для программируемого логического контроллера нейронная сеть продемонстрировала работоспособность для решения задач классификации и аппроксимации, которые достаточно распространены в технологических процессах. Несмотря на относительно высокое быстродействие программы, обучение нейросети непосредственно на контроллере требует значительного времени, что можно нивелировать возможностью обучения на внешней ЭВМ с последующим переносом коэффициентов, что также продемонстрировано в данной работе.
В случае отсутствия адекватной модели, ИНС способна обучаться в ходе технологического процесса, при этом в качестве учителя выступает оператор либо существующий регулятор. Полученный таким образом нейронный регулятор может превосходить традиционные регуляторы по отдельным параметрам.
По результатам проделанной работы сделан вывод о возможности практической реализации нейросетевого регулирования на современных программируемых логических контроллерах. Выдвинутая гипотеза подтверждена.
[1] URL: https://yann.lecun.org/exdb/mnist/ (дата обращения: 25.10.2026).
[2] URL: https://github.com/rois-codh/kmnist (дата обращения: 25.10.2026).
[3] URL: http://fashion-mnist.s3-website.eu-central-1.amazonaws.com/ (дата обращения: 25.10.2026).
[4] URL: http://fashion-mnist.s3-website.eu-central-1.amazonaws.com/ (дата обращения: 25.10.2026).
[5] URL: https://github.com/rois-codh/kmnist (дата обращения: 25.10.2026).
Conflict of Interest
Funding
Bibliographic Reference
URL: https://top-technologies.ru/en/article/view?id=40969 (accessed: 10/11/2026).
DOI: https://doi.org/10.17513/snt.40969
