Распределенная сетевая система управления
DISTRIBUTED NETWORK CONTROL SYSTEM

Изобретение относится к вычислительной технике, а именно, к управляющим и вычислительным системам различного назначения и может быть использовано для синхронного управления разнесенными в пространстве приводами конструктивно сложных машин и механизмов, а также для сбора телеметрической информации с нескольких объектов системы, ее обработки и выдачи результатов контроля на программную телеметрию или для управления внешним абонентам.
При проектировании современных распределенных сетевых систем управления весьма часто стоит задача жесткой синхронизации работы управляемых ими их абонентов (сетевых узлов). Данная проблема характерна, например, для распределенных систем связи, в том числе с большим количеством абонентов, зачастую находящихся на значительном расстоянии друг от друга, для сложных технических устройств, используемых в станкостроительной, авиационной, автомобильной и других отраслях, например, в системах ЧПУ и робототехнических комплексах, в системах управления механизацией самолетов и авиационных двигателей. При функционировании таких систем зачастую недопустимо, чтобы приводные и другие исполнительные устройства, подключенные к различным сетевым узлам, получали бы не скоординированные и не синхронизированные между собой по времени и по данным управляющие воздействия. Для взаимосвязанного управления приводами в распределенных системах ЧПУ при многокоординатной интерполяции движения критичным является синхронное управление как положением, так и скоростью (ускорением) пространственно разнесенных приводов. Нарушение согласованности их управления может привести к нарушению параметров технологического процесса, к отказу системы или к аварийной ситуации. При обеспечении жесткой синхронизации функционирования абонентов необходимо учитывать физическую топологию коммуникационной сети, прежде всего - расстояния между различными абонентами. В единой сети могут работать абоненты, расположенные на расстоянии нескольких сантиметров, и в той же сети могут находиться абоненты, удаленные друг от друга на десятки и сотни метров. Соответственно, задержки распространения сигнала между различными узлами оказываются существенно различающимися. Используемая в настоящее время настройка коммуникационных контролеров сетевых узлов на большие задержки приводит к существенному снижению пропускной способности канала обмена и низкой точности синхронизации, а настройка контроллеров на малые задержки приводит к снижению отказоустойчивости системы. Другой особенностью распределенных систем является необходимость переключения параметров приема и передачи сетевых узлов при изменении режимов работы системы - штатный режим, аварийный режим, режим обслуживания и наладки. При этом необходимо обеспечить строго синхронное переключение коммуникационных контроллеров всех сетевых узлов на идентичные параметры приема и передачи.
Известна промышленная реконфигурируемая встраиваемая система CompactRIO фирмы National Instruments (http://pitersoft-nn.ru/pub/%D0%91%D1%80%D0%BE%D1%88%D1%8E%D1%80%D0%B0%20CompactRIO.pdg), содержащая три компонента - контроллер реального времени, реконфигурируемый программируемый массив вентилей (FPGA) и промышленные модули ввода-вывода.
Контроллер реального времени содержит промышленный процессор, который обеспечивает управление периферийными устройствами, встроенную регистрацию данных и связь. Реконфигурируемый программируемый массив FPGA (ПЛИС - программируемая логическая интегральная схема) вентилей напрямую подключен к модулям ввода-вывода, что обеспечивает высокопроизводительный доступ к цепям ввода-вывода каждого модуля, гибкость синхронизации и запуска. Поскольку каждый модуль подключен к FPGA непосредственно, задержки управления, связанные с реакцией системы, сводятся к минимуму. Массив FPGA вентилей может быть запрограммирован для выполнения пользовательского кода, например, очень быстрых контуров регулирования или пользовательской фильтрации сигналов. В массиве FPGA вентилей весь код выполняется на аппаратном уровне, что позволяет реализовать аппаратные блокировки и синхронизацию. В частности, в массиве FPGA вентилей можно одновременно реализовать до 20 аналоговых пропорционально-интегрально-дифференциальных (ПИД) контуров регулирования, работающих на аппаратном уровне с частотой до 100 кГц. Промышленные модули ввода-вывода обеспечивают с одной стороны прямое подключение к датчикам, исполнительным механизмам, приводам и цифровым каналам ввода-вывода, с другой стороны - подключение к контроллеру реального времени и к массиву FPGA вентилей.
На базе системы CompactRIO с использованием блока «EtherCAT-NI 9144» может быть построена распределенная система сбора данных и управления. Особенностью протокола EtherCAT (https://ru.wikipedia.org/wiki/EtherCAT) является использование на физическом уровне канала Ethernet и кольцевой топология, т.е. каждое посланное сообщение (дейтаграмма) проходит последовательно через все подключенные устройства в определенном порядке, для чего все устройства должны иметь два или более портов.
Недостатками известной системы являются ее низкая надежность, обусловленная тем, что, во-первых, на физическом уровне канал Ethernet не является дублированным и отказ любого приемо-передатчика приводит к выходу из строя всей системы и, во-вторых, при использовании кольцевой архитектуры отказ контроллера любого устройства приводит к нарушению кольцевого соединения, что также приводит к выходу из строя всей системы, К недостаткам данной системы также следует отнести низкое качество синхронизации устройств, обусловленное тем, что сообщение, переданное неким устройством, дойдет до следующего по кольцу устройства практически без задержки, в то время, как до устройства, включенного по кольцу перед устройством, передавшим сообщение, это сообщение дойдет с задержкой, равной сумме задержек на ретрансляцию сообщений во всех устройствах в кольце.
Известна распределенная сетевая система управления, содержащая связанные коммуникационным каналом узлы, каждый из которых состоит из контроллера управления исполнительным устройством узла, коммуникационного контроллера, связанного с коммуникационным каналом, вход контроллера управления исполнительным устройством узла через первый блок связи связан с блоком защиты, с которым через второй блок связи связан коммуникационный контроллер, причем каждый узел системы оснащен регистром маски подтверждений переданных сообщений, регистром маски принятых сообщений и блоком логики, причем регистры масок переданных и принятых сообщений входами связаны с выходами второго блока связи и блока защиты, а выходами - с первым и вторым входами блока логики, третий вход которого связан с выходом контроллера управления исполнительным устройством узла, а выход блока логики связан с синхронизирующим входом исполнительного устройства узла.
(см. патент РФ на полезную модель №95205, кл. H04L 12/00, 2010 г. - наиболее близкий аналог).
В результате анализа выполнения данной распределенной системы и ее сетевого узла необходимо отметить, что наличие в сетевом узле блока логики позволяет синхронно выдавать команды управления на логические исполнительные устройства в разных узлах сети, либо синхронно блокировать выдачу таких команд только в моменты получения распространяемых по сети команд. В интервалах времени между получением сетевых команд узел может управлять исполнительными устройствами только посредством контроллера на основе последней полученной по сети информации. Однако, при управлении пропорциональными приводными исполнительными устройствами требуется, во-первых, более короткий такт обновления управляющих команд, чем это может обеспечить микропроцессорный контроллер с помощью своей управляющей программы, и что можно обеспечить только аппаратными (не программными) средствами расчета и обновления управляющих команд. Во-вторых, для синхронизации пропорциональных приводных исполнительных устройств, подключенных к разным узлам системы, скорость информационного обмена по сети может существенно превышать возможности обработки сообщений микропроцессорным контроллером узла. Таким образом, в устройстве отсутствует механизм скоординированного синхронного управления пропорциональными приводными исполнительными устройствами как в рамках одного узла, так и в разных узлах сети, что значительно сокращает область его использования, надежность, а также ее быстродействие.
Техническим результатом настоящего изобретения является расширение функциональных возможностей и повышение точности регулирования распределенной системы, использующей заявленные сетевые узлы, а также повышение ее отказоустойчивости за счет выполнения сетевого узла распределенной сетевой системы управления, обеспечивающего прямое аппаратное управление пропорциональными приводными исполнительными устройствами от массива ПЛИС вентилей, получающих команды управления как от контроллера узла, так и по сети от коммуникационного контроллера.
Указанный технический результат обеспечивается тем, что в распределенной сетевой системе управления, состоящей из сетевых узлов, связанных в единую систему коммуникационным каналом, каждый сетевой узел содержит управляющий контроллер, связанный двунаправленной шиной с блоком управления исполнительными логическими и пропорциональными приводными устройствами, коммуникационный контроллер, связанный двунаправленными шинами с управляющим контролером и с коммуникационным каналом, регистр переданных сообщений, регистр принятых сообщений и блок логики, регистры переданных и принятых сообщений входами связаны с выходами коммуникационного контроллера, а выходами - с первым и вторым входами блока логики, третий вход которого связан с выходом управляющего контроллера, а выход блока логики связан с синхронизирующим входом блока управления исполнительными логическими и пропорциональными приводными устройствами, новым является то, что каждый сетевой узел оснащен ПЛИС-блоком интерполяции и ПЛИС-блоком регуляторов, ПЛИС-блок интерполяции своими входами связан с управляющим контроллером и выходами регистров переданных и принятых сообщений, своим первым выходом он связан с первым входом ПЛИС-блока регуляторов, а вторым - с коммуникационным контроллером, второй вход ПЛИС-блока регуляторов связан с управляющим контроллером, третий вход ПЛИС-блока регуляторов связан с коммуникационным контроллером, а выход ПЛИС-блока регуляторов связан двунаправленной шиной с блоком управления исполнительными логическими и пропорциональными приводными устройствами, при этом, коммуникационный канал наиболее целесообразно выполнять дублированным.
Сущность изобретения поясняется графическими материалами, на которых представлена схема распределенной сетевой системы управления и схема одного из ее сетевых узлов.
Распределенная сетевая система управления состоит из идентичных по исполнению сетевых узлов (на фиг., Узел 1, Узел 2, Узел N). Количество таких сетевых узлов, входящих в систему, может быть различным и зависит от объекта, управление которым обеспечивает система.
Каждый сетевой узел распределенной сетевой системы управления состоит из управляющего контроллера 1, к которому двунаправленной шиной подключен блок 2 управления исполнительными логическими и пропорциональными приводными устройствами,
Сетевой узел содержит коммуникационный контроллер 3, связанный двунаправленными шинами с управляющим контроллером 1 и с дублированным коммуникационным каналом 4, имеющим шинную архитектуру, с которым аналогично связаны коммуникационные контроллеры всех сетевых узлов. Выполнение коммуникационного канала 4 дублированным повышает отказоустойчивость системы.
В состав сетевого узла также входят регистр 5 переданных сообщений, регистр 6 принятых сообщений, которые входами связаны с выходами коммуникационного контроллера 3, а выходами - с первым и вторым входами блока логики 7, третий вход которого связан с выходом управляющего контроллера 1, а выход блока логики 7 связан с синхронизирующим входом блока 2 управления исполнительными логическими и приводными устройствами.
Сетевой узел оснащен ПЛИС-блоком интерполяции 8 и ПЛИС-блоком регуляторов 9. ПЛИС-блок интерполяции 8 своими первым входом связан с выходом управляющего контроллера 1, а вторым и третьим входами - с выходами регистров переданных 5 и принятых 6 сообщений. Своим первым выходом ПЛИС-блок интерполяции 8 связан с первым входом ПЛИС-блока регуляторов 9, а своим вторым выходом связан с входом коммуникационного контроллера 3.
Второй вход ПЛИС-блока регуляторов 9 связан с выходом управляющего контроллера 1, третий вход ПЛИС-блока регуляторов 9 связан с коммуникационным контроллером 3. Выход ПЛИС-блока регуляторов 9 связан двунаправленной шиной с блоком управления 2 исполнительными логическими и приводными устройствами.
Конструктивно распределенная сетевая система управления и ее сетевые узлы реализованы на базе известных средств.
В качестве управляющего контроллера 1 может быть использован микроконтроллер 1986ВЕ91 фирмы Миландр.
В качестве блока управления 2 исполнительными логическими и пропорциональными приводными устройствами может быть использован, например, унифицированный функциональный цифровой модуль (УФЦМ) КЕУР.468332.022 производства ОАО «Концерн КЭМЗ».
Коммуникационный контроллер 3 может быть реализован на интегральной микросхеме К5600ВГ2У фирмы Миландр, которая также обеспечивает реализацию шинной архитектуры дублированного коммуникационного канала 4.
В качестве регистров переданных 5 и принятых 6 сообщений, а также блока логики 7 могут быть использованы стандартные логические интегральные микросхемы.
В качестве ПЛИС-блока интерполяции 8 и ПЛИС-блока регуляторов 9 могут быть использованы ПЛИС Xilinx Zynq 7020.
Перед началом работы при включенной системе управления управляющий контроллер 1 осуществляет настройку блока логики 7, ПЛИС-блока интерполяции 8 и ПЛИС-блока регуляторов 9 каждого сетевого узла (Узла 1, Узла 2, Узла N).
Блок логики 7 настраивается на выработку команд синхронизации и блокировок для блока 2 таким образом, что блоком 2 управления исполнительными логическими и пропорциональными приводными устройствами команды на включение, выключение или блокировку определенного исполнительного устройства будут исполняться только при условии поступления их от управляющего контроллера 1 через регистр 5 и из сети через регистр 6 заданного набора соответственно переданных и принятых сообщений. Если от какого-либо узла сети по дублированному коммуникационному каналу 4 поступает сообщение об аварийной ситуации, которая, согласно настройкам, влияет на работу исполнительных устройств данного узла, то блок логики 7 через блок 2 формирует сигнал запрета управления исполнительными логическими и пропорциональными приводными устройствами.
ПЛИС-блок интерполяции 8 при настройке получает от управляющего контроллера 1 информацию о том, в каких узлах и какие приводные устройства должны быть связаны по величинам перемещений и скоростей и по каким законам, например, по линейному или по круговому. В процессе работы ПЛИС-блок интерполяции 8 периодически получает от управляющего контроллера 1 заданное значение перемещения по ведущей (требующей максимального перемещения) координате, и на основе расчетов по своему алгоритму выдает команды на перемещения приводных устройств в собственном узле через ПЛИС-блок регуляторов 9 или в других узлах сети через коммуникационный контроллер 3, дублированный коммуникационный канал 4 и ПЛИС-блоки регуляторов 9 соответствующих узлов.
ПЛИС-блок регуляторов 9 настраивается таким образом, чтобы связать выход приводного устройства своего узла и его датчики обратной связи по требуемому закону регулирования (например, по пропорциональному или пропорционально-интегрально-дифференциальному) с входным значением, которое может поступать либо из ПЛИС-блока интерполяции 8 собственного узла, либо из ПЛИС-блока интерполяции 8 другого узла через коммуникационные контроллеры 3 и дублированный коммуникационный канал 4.
Настроенная распределенная сетевая система управления работает следующим образом.
Управляющие контроллеры 1 каждого сетевого узла (Узел 1, Узел 2, Узел N) в соответствии со встроенным программным обеспечением через блоки 2 осуществляют управление исполнительными логическими и пропорциональными приводными устройствами собственного узла. При этом координацию управления исполнительными устройствами различных узлов контроллеры 1 осуществляют путем информационного обмена через коммуникационные контроллеры 3 и дублированный коммуникационный канал 4.
Коммуникационные контроллеры 3 всех сетевых узлов работают в единой сетке времени и по единому расписанию, определяющему моменты начала и окончания передачи информации каждым контроллером 3, что обеспечивает временное разделение доступа передатчиков коммуникационных контроллеров 3 к каналу 4, при этом приемники контроллеров 3 постоянно подключены к каналу 4 и, таким образом, они все одновременно принимают информацию от передающего в данный момент узла. Коммуникационные контроллеры 3 осуществляют параллельную синхронную передачу и прием информации по дублированному каналу 4. При передаче информации сообщение кодируется контрольной суммой (CRC кодом). При приеме коммуникационный контроллер 3 проверяет корректность контрольной суммы сообщений, приходящих по двум линиям канала 4, и допускает сообщение как корректное при корректности контрольной суммы в сообщении, пришедшем хотя бы по одной линии канала 4.
Коммуникационный контроллер 3 параллельно с контроллером 1 выполняет также запись передаваемых сообщений в регистр переданных сообщений 5 и принимаемых из канала 4 сообщений в регистр принятых сообщений бив ПЛИС-блок регуляторов 9.
Блоки логики 7 в каждом узле в соответствии с настройками через блоки 2 обеспечивают разрешение работы исполнительных логических и пропорциональных приводных устройств собственного узла либо блокировку их работы, если из других узлов системы поступила (или не поступила) требуемая информация.
ПЛИС-блоки интерполяции 8 каждого узла в соответствии с настройками в интервалах между передачами сообщений контроллерами 1 осуществляют выдачу команд управления на ПЛИС-блоки регуляторов 9 собственных узлов и через коммуникационные контроллеры 3 и дублированный коммуникационный канал 4 на ПЛИС-блоки регуляторов 9 других узлов системы. При этом, единая временная сетка работы коммуникационных контроллеров 3 обеспечивает передачу и прием сообщений по каналу 4 как от контролеров 1, так и от ПЛИС-блоки интерполяции 8 каждого узла.
Использование ПЛИС-блоков интерполяции 8 и регуляторов 9 позволяет выполнять задачи регулирования на аппаратном уровне, без использования микропроцессорного контроллера управления 1, что существенно повышает скорость работы (частоту квантования) каналов регулирования, причем управление исполнительными устройствами в разных узлах осуществляется с высокой степенью синхронизации и надежности за счет использования дублированного коммуникационного канала, одновременно (по топологии «шина») доставляющего сообщения всем узлам сети.