Способ формирования сети передачи данных автоматизированной системы управления технологическими процессами
METHOD FOR FORMING A DATA TRANSMISSION NETWORK OF AN AUTOMATED PROCESS CONTROL SYSTEM

ОБЛАСТЬ ТЕХНИКИ
Изобретение относится к области электротехники и информационных технологий, и вычислительной техники, и, в частности, к способам формирования сети передачи данных автоматизированных систем управления технологическими процессами, в том числе к области организации сети вычислительных устройств, передачи и обработки данных в сети, а также обмена данными между устройствами сети для различных применений, в том числе, специальных применений.
УРОВЕНЬ ТЕХНИКИ
Из уровня техники известны способ формирования отказоустойчивой вычислительной системы и отказоустойчивая вычислительная система (см. RU2439674C1, опубл. 10.01.2012), в частности известен способ формирования отказоустойчивой вычислительной системы, заключающийся в том, что создают первое средство обработки, содержащее первый центральный процессор (ЦП) и первый процессор ввода-вывода, создают второе средство обработки, содержащее второй центральный процессор и второй процессор ввода-вывода, определяют состояние первого средства обработки и обеспечивают передачу состояния первого средства обработки во второе средство обработки, определяют запрос на выполнение задания первым средством обработки и каждое задание преобразуют во входные сигналы первого средства обработки, а затем входные сигналы передают во второе средство обработки, так что оба средства обработки переходят в идентичные состояния, отличающийся тем, что вводят дополнительно k средств обработки (обычно k=2 или k=3) в симметричной конфигурации соединения всех средств обработки между собой, позволяющей любому одному средству обработки по какому-либо заранее выбранному критерию или по их совокупности выполнять функцию ведущего средства обработки в симметричной конфигурации для текущего управления периферийными и исполнительными устройствами, входы всех средств обработки подсоединяют к общему источнику входных данных, все средства обработки, имеющие идентичные образы памяти программ, синхронно выполняют запрос на задание, а результаты выполнения передают по каналам связи между всеми средствами обработки, в каждом из которых собственные результаты программно сравнивают с результатами остальных по мажоритарному принципу, восстанавливают достоверное значение результата, которое рассылают всем средствам обработки, так что ошибку сбившегося средства обработки парируют в нем достоверным значением, а при следующих подряд повторениях идентичной ошибки неисправное средство обработки переводят в резерв с последующим тестированием вне текущих заданий для окончательного решения о выводе отказавшего средства обработки из текущей конфигурации или новой инициации отказавшего и затем, возможно, восстановленного средства обработки и включения его в рабочую конфигурацию, в случае отключения ведущего средства обработки функции нового ведущего в соответствии с выбранным критерием принимает на себя любое другое исправное средство обработки, и известна отказоустойчивая вычислительная система, содержащая первую грань с первым средством обработки, состоящим из первого центрального процессора и первого процессора ввода-вывода, вторую грань со вторым средством обработки, состоящим из второго центрального процессора и второго процессора ввода-вывода, причем первые входы-выходы процессоров ввода-вывода каждой грани соединены с входами-выходами соответствующих центральных процессоров, а вторые выходы первого процессора ввода-вывода первой грани подсоединены ко вторым входам процессора ввода-вывода второй грани, оба средства обработки содержат функционально идентичные последовательности команд в их образе памяти и выполнены с возможностью управления связью внешними и выходными устройствами, отличающаяся тем, что в ней добавлены k граней с k дополнительными средствами обработки, где обычно k=2, или k=3, двухпортовое оперативное запоминающее устройство и система контроля и диагностики каждой грани, устройство формирования циклов, логическая аппаратура достоверного отключения вторичных источников питания, содержащая мажоритарные элементы в каждой грани, число входов которых равно общему числу граней системы, и мажоритарные элементы для синхронизации начала циклов вычислений в процессорах ввода-вывода и центральных процессорах всех исправных граней, реконфигуратор, содержащий совокупность регистров конфигурации, управления режимом работы и регистров признаков тестовой и функциональной исправности граней, входы всех процессоров ввода-вывода подсоединены к общему источнику входных данных, а выходы через цепи управления режимом подсоединены к магистралям мультиплексных каналов обмена, выходы регистров управления режимом работы каждой грани и регистры конфигурации системы подсоединены через аппаратуру межгранного обмена к каждому процессору ввода-вывода во всех гранях для формирования массива результатов текущих вычислений и признаков тестовой и функциональной исправности граней, причем выходы устройств формирования циклов подсоединены к входам мажоритарных элементов, расположенных в процессорах ввода-вывода, а выходы этих элементов подсоединены к входу немаскируемого прерывания процессора ввода-вывода соответствующей грани, входы логической аппаратуры достоверного отключения вторичных источников питания грани подсоединены к выходам устройств контроля оценки собственной исправности и исправности всех остальных средств обработки в каждой грани, а выходы - через счетчик числа циклов отказов подсоединены к цепям отключения вторичных источников питания.
Из уровня техники известны также вычислительная система с тройным модульным резервированием и связанный с ней способ (см. US6141769A, опубл. 31.10.2000), где способ работы отказоустойчивой вычислительной системы, содержащей первый, второй и третий процессоры и соответствующие первый, второй и третий порты ввода-вывода, включает: передачу информации о первой транзакции между первым процессором и выбранным одним из первого, второго или третьего портов ввода-вывода; передачу второй информации о транзакции между вторым процессором и выбранным одним из первого, второго или третьего портов ввода-вывода; передачу информации о третьей транзакции между третьим процессором и выбранным одним из первого, второго или третьего портов ввода-вывода; сравнение первой информации о транзакции со второй информацией о транзакции во время передачи первой и второй информации о транзакции между соответствующими первым и вторым процессорами и выбранным одним из первого, второго или третьего портов ввода-вывода для идентификации появления первых несовпадений; сравнение второй информации о транзакции с третьей информацией о транзакции во время передачи второй и третьей информации о транзакции между соответствующими вторым и третьим процессорами и выбранным одним из первого, второго или третьего аортов ввода-вывода для идентификации появления вторых несовпадений; сравнение третьей информации о транзакции с первой информацией о транзакции во время передачи третьей и первой информации о транзакции между соответствующими третьим и первым процессорами и выбранным одним из первого, второго или третьего портов ввода-вывода для идентификации появления третьих несовпадений; уведомление первого, второго и третьего процессоров о каждом идентифицированном случае появления первого, второго или третьего несоответствия.
Недостатками указанных выше решений являются, по меньшей мере, недостаточно эффективное использование вычислительных ресурсов, в том числе для формирования сети передачи данных автоматизированной системы управления технологическими процессами, высокая нагрузка на каналы связи, связывающие вычислительные устройства сети, невысокая эффективность обмена данными между вычислительными устройствами, отсутствие объединения вычислительных устройств в ячейки сети, в том числе с предсказуемой загрузкой вычислительных устройств ячеек сети, высокая нагрузка на вычислительные устройства при передаче и получении данных и на каналы связи, связывающие вычислительные устройства, при обмене данными.
Предлагаемое изобретение позволяет преодолеть, по крайней мере, часть вышеуказанных недостатков или все указанные недостатки, а также реализовать преимущества настоящего изобретения, как описано в рамках настоящего изобретения.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
Задачей, на решение которой направлен предлагаемое изобретение, является устранение недостатков способов, известных из уровня техники с обеспечением технического результата, по сравнению с известными решениями, заключающегося в повышении эффективности использования вычислительных ресурсов путем   параллельного выполнения разнородных задач вычислительными устройствами и формирования сети передачи данных автоматизированной системы управления технологическими процессами со снижением нагрузки на каналы связи, связывающие вычислительные устройства сети при повышении эффективности обмена данными между вычислительными устройствами, в том числе объединенными в ячейки сети универсальной структуры, названной сетчатой и объединяющей свойства шинной, звездообразной и древовидной в виде многоствольной древовидной структуры, которая при этом выполнена с возможностью редуцирования до древовидной, звездообразной или шинной, в том числе с изменением внутренних связей структуры программно или физически, аппаратно, в том числе без изменения расположения вычислительных устройств и их внешних по отношению к структуре связей, в том числе с предсказуемой загрузкой вычислительных устройств ячеек сети, со снижением нагрузки на вычислительные устройства при передаче и получении данных и на каналы связи, связывающие вычислительные устройства, при обмене данными.
Согласно одному из вариантов реализации, предлагается способ формирования сети передачи данных автоматизированной системы управления технологическими процессами, в котором: формируют ячейки сети из модулей так, что для каждой ячейки сети: добавляют в ячейку сети выполненные одинаковыми аппаратно модули по меньшей мере двух различных типов, соответствующих ролям модулей и определяемых функционалом модулей в сети, связывают модули друг с другом с установлением каналов связи между ними для обмена данными, причем каждый модуль связан со всеми другими модулями по меньшей мере одним каналом связи или через другой модуль; выполняют настройку каждого из модулей с заданием типа модуля в зависимости от роли модуля, соответствующей функциональным задачам каждого из модулей посредством загрузки программного обеспечения в память модулей в зависимости от требуемого функционала, где задачи распределяются между модулями, по меньшей мере, для обеспечения минимизации объема передаваемых данных по каналам связи, и распределение задач включает вычисление объема данных, передаваемых каждым из модулей и каждым из связанных с модулем датчиков каждый такт работы модуля, равный периодичности получения данных от объекта управления, связанного с модулем, и выбирают для каждого модуля такую задачу, определяющую тип модуля, чтобы осуществлялась минимальная передача данных по каждому из каналов связи, так, что функционирование модуля второго типа частично зависит от данных, передаваемых датчиками объектов управления, связанными с модулем второго типа; частично зависит от данных, передаваемых модулем первого типа к модулю второго типа; частично не зависит от данных, передаваемых модулем первого типа к модулю второго типа, и частично не зависит от данных, передаваемых датчиками, связанными с модулем второго типа, так что выполнение одной части задачи модулем второго типа зависит от задачи, выполняемой модулем первого типа, выполнение другой части задачи модулем второго типа не зависит от задачи, выполняемой модулем первого типа, а выполняемая модулем первого типа задача не зависит от задачи, выполняемой  модулем второго типа; связывают сформированные ячейки сети между собой каналами связи с формированием многопроцессорного вычислительного кластера, структура которого определяется составом и взаимосвязями выполняемых задач, где каждая из ячеек связи связана, по меньшей мере, с одной другой ячейкой связи каналом связи, так что в каждой ячейке связи каждый из модулей является центральным процессором и одновременно является модулем ввода-вывода такого модуля, и одновременно является модулем удаленного ввода-вывода, по меньшей мере, для одного другого модуля, так что модулем осуществляются как функции центрального процессора и модуля ввода-вывода как для такого модуля, так и функции удаленного ввода-вывода, по меньшей мере, для одного другого модуля, причем модуль первого типа является модулем ввода-вывода для модуля второго типа, и ячейка сети является модулем ввода, по меньшей мере, для одной другой ячейки сети и/или является модулем ввода-вывода, по меньшей мере, для одной другой ячейки сети, где под каждую задачу выделяется отдельный процессор.
В одном из частных вариантов реализации сформированная ячейка связи является виртуальным модулем, выполняя функционал физического модуля, и является центральным процессором и одновременно являющимся модулем ввода-вывода такой ячейки сети, и одновременно является модулем удаленного ввода-вывода, по меньшей мере, для одной другой ячейки сети, с обеспечением  сформированной ячейкой сети функционала центрального процессора и модуля ввода-вывода для сформированной ячейки сети, а также функционала удаленного ввода-вывода, по меньшей мере, для одной другой ячейки сети.
В одном из частных вариантов реализации для одного из модулей для выполнения своей функциональной задачи требуются данные, передаваемые с датчиков, связанных только с таким модулем, а для другого модуля для выполнения своей функциональной задачи требуются данные, передаваемые с датчиков, связанных только с этим модулем, и требуются данные, передаваемые с датчиков, связанных, по меньшей мере, с одним другим модулем.
В одном из частных вариантов реализации ячейки сети связаны друг с другом последовательно, параллельно, последовательно и параллельно или каждая связана друг с другом.
В одном из частных вариантов реализации для выполнения функциональных задач модулем используются данные, передаваемые, по меньшей мере, с одного датчика, связанного, по меньшей мере, с одним модулем.
В одном из частных вариантов реализации добавление в ячейку сети модулей осуществляют с формированием уровней модулей в зависимости от типа модуля, где модули одного типа принадлежат одному и тому же уровню модулей, так что по меньшей мере один модуль одного уровня связан с модулем того же уровня и/или связан по меньшей мере с одним модулем другого уровня, так что модуль одного уровня связан по меньшей мере с одним модулем более низкого уровня и/или связан по меньшей мере с одним модулем более высокого уровня, и/или связан по меньшей мере с одним модулем того же уровня, включая связь с модулями таких уровней в другой ячейке сети, с осуществлением передачи данных на соответствующий уровень, в том числе на тот же, на уровень выше и/или на уровень ниже.
В одном из частных вариантов реализации модуль является модулем с предсказуемой загрузкой.
В одном из частных вариантов реализации обмен данными по каналам связи осуществляется с использованием интерфейса RS-485, “токовая петля” (DCL), Ethernet, USB или RS-232.
В одном из частных вариантов реализации структура вычислительного кластера изменяется переключением проводов интерфейсов.
В одном из частных вариантов реализации обмен данными осуществляется пакетами протоколов нижнего уровня, обеспечивающих передачу без подтверждения и без образования канала связи, UDP стека TCP/IP или IPX стека IPX/SPX.
В одном из частных вариантов реализации каждый из модулей используется, по меньшей мере, для ввода дискретных, частотных и числоимпульсных сигналов; вывода дискретных и импульсных сигналов с широтной и частотной модуляцией; ввода аналоговых сигналов низкого и среднего уровня; выполнения контрольных, управляющих и иных алгоритмов; построения распределенных автоматизированных систем, в том числе на базе комплексов технических средств, а также выполняет, с заранее заданным тактом: отработку блокировок выходными каналами по срабатыванию входных дискретных сигналов и выходу за уставки аналоговых или частотных сигналов, в том числе для исполнения со средствами технологического программирования; настройку с электронно-вычислительной машиной или, по меньшей мере, одним, другим вычислительным устройством по интерфейсу обмена параметров обработки входных и выходных каналов и алгоритмических функций во время работы с возможностью сохранения в долговременной энергонезависимой памяти.
В одном из частных вариантов реализации добавляют, по меньшей мере, в одну ячейку сети, по меньшей мере, один модуль, связывая модуль каналами связи со всеми остальными модулями.
В одном из частных вариантов реализации функционирование модуля третьего типа частично зависит от данных, передаваемых датчиками, связанными с модулем третьего типа; частично зависит от данных, передаваемых модулем первого типа к модулю третьего типа; частично зависит от данных, передаваемых модулем второго типа к модулю третьего типа; частично зависит от данных, передаваемых датчиками, связанными с модулем третьего типа;  частично не зависит от данных, передаваемых модулем первого типа к модулю третьего типа, частично не зависит от данных, передаваемых модулем второго типа к модулю третьего типа, так что выполнение одной части задач модулем третьего типа зависит от задач, выполняемых модулем первого типа; выполнение другой части задач модулем третьего типа не зависит от задач, выполняемых модулем первого типа, а выполняемые модулем первого типа задачи не зависят от выполняемых задач модулем третьего типа; выполнение следующей части задач модулем третьего типа зависит от задач, выполняемых модулем второго типа; выполнение еще одной части задач модулем третьего типа не зависит от задач, выполняемых модулем второго типа, а выполняемые модулем второго типа задачи не зависят от выполняемых задач модулем третьего типа.
В одном из частных вариантов реализации модуль первого типа является модулем ввода для модуля третьего типа.
В одном из частных вариантов реализации модули объединены в ячейки сети универсальной структуры, названной сетчатой и объединяющей свойства шинной, звездообразной и древовидной в виде многоствольной древовидной структуры, так что многоствольная древовидная структура представляет собой две или более древовидные структуры, объединенные связями своих звездообразных частей, ветвями или корнями.
В одном из частных вариантов реализации каждой функциональной задаче выделяется собственный узел сети, содержащий, по меньшей мере, один процессор, причем задачи выполняются узлами сети параллельно с осуществлением передачи результатов выполнения таких задач параллельно, где узлом сети является модуль.
КРАТКОЕ ОПИСАНИЕ ГРАФИЧЕСКИХ МАТЕРИАЛОВ
ФИГ. 1
иллюстрирует примерный вариант общей схемы системы, реализующей настоящее изобретение, в частности, иллюстрирует структуру одного из вариантов ячейки (вычислительной) сети универсальной структуры - сетчатой, объединяющей свойства шинной, звездообразной, древовидной в виде многоствольной древовидной структуры, сформированной из модулей, согласно одному из вариантов осуществления настоящего изобретения;
ФИГ. 2
иллюстрирует еще один примерный вариант общей схемы системы, реализующей настоящее изобретение, в частности, иллюстрирует структуру одного из вариантов ячейки (вычислительной) сети, сформированной из модулей, согласно одному из вариантов осуществления настоящего изобретения;
ФИГ. 3
иллюстрирует один из примерных вариантов схемы связей между ячейками сети, согласно одному из вариантов осуществления настоящего изобретения, в частности, показан вариант соединения ячеек сети с использованием каналов связи;
ФИГ. 4
иллюстрирует другой примерный вариант общей схемы системы, реализующей настоящее изобретение, в частности, иллюстрирует структуру одного из вариантов ячейки (вычислительной) сети, сформированной из модулей, согласно одному из вариантов осуществления настоящего изобретения;
ФИГ. 5
иллюстрирует еще один примерный вариант общей схемы системы, реализующей настоящее изобретение, в частности, иллюстрирует структуру одного из вариантов ячейки сети, сформированной из модулей, согласно одному из вариантов осуществления настоящего изобретения;
ФИГ. 6
иллюстрирует еще один примерный вариант общей схемы системы, реализующей настоящее изобретение, в частности, иллюстрирует структуру одного из вариантов ячейки сети, сформированной из трех связанных между собой модулей, согласно одному из вариантов осуществления настоящего изобретения;
ФИГ. 7
иллюстрирует другой примерный вариант схемы связей между ячейками сети, согласно одному из вариантов осуществления настоящего изобретения, в частности, показан вариант последовательного варианта соединения ячеек сети;
ФИГ. 8
иллюстрирует еще один примерный вариант схемы связей между ячейками сети, согласно одному из вариантов осуществления настоящего изобретения, в частности, показан вариант соединения всех ячеек сети со всеми;
ФИГ. 9
иллюстрирует еще один примерный вариант схемы связей между ячейками сети, согласно одному из вариантов осуществления настоящего изобретения;
ФИГ. 10
иллюстрирует еще один примерный вариант схемы связей между ячейками сети, согласно одному из вариантов осуществления настоящего изобретения;
ФИГ. 11
иллюстрирует еще один примерный вариант схемы связей между ячейками сети, согласно одному из вариантов осуществления настоящего изобретения;
ФИГ. 12
иллюстрирует еще один примерный вариант схемы связей между ячейками сети, согласно одному из вариантов осуществления настоящего изобретения;
ФИГ. 13
иллюстрирует блок-схему примерного варианта осуществления настоящего изобретения.
ОПИСАНИЕ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯ ИЗОБРЕТЕНИЯ
Объекты и признаки настоящего изобретения, способы для достижения этих объектов и признаков станут очевидными посредством отсылки к примерным вариантам осуществления. Однако настоящее изобретение не ограничивается примерными вариантами осуществления, раскрытыми ниже, оно может воплощаться в различных видах. Сущность, приведенная в описании, является ничем иным, как конкретными деталями, обеспеченными для помощи специалисту в области техники в исчерпывающем понимании изобретения, и настоящее изобретение определяется только в объеме приложенной формулы.
Используемые в настоящем описании изобретения термины «модуль», «компонент», «элемент», «часть», «блок», «составная часть» и подобные используются для обозначения компьютерных сущностей, которые могут являться аппаратным обеспечением, например, устройством или частью устройства, в частности, включающим, по крайней мере, один процессор, микроконтроллер и т. д., или программным обеспечением, например, компьютерной программой, «прошивкой» (от англ. firmware) и т. д., позволяющим аппаратному обеспечению вычислительной системы выполнять вычисления или функции управления, являющиеся комбинацией инструкций и данных. В частности, модулем является минимально возможная составная часть, элемент системы управления, контроллера, в частности модулем является вычислительное устройство.
ФИГ. 1
101
показан примерный вариант общей схемы системы (в частном случае, ее части), являющейся симметричной схемой, реализующей настоящее изобретение, в частности, иллюстрирует структуру одного из вариантов ячейки (вычислительной) сети  универсальной структуры - сетчатой, объединяющей свойства шинной, звездообразной, древовидной в виде многоствольной древовидной структуры, сформированной из модулей, согласно одному из вариантов осуществления настоящего изобретения.
ФИГ. 1
101
3
4
11
12
В приведенном на  примере ячейка сети (ячейка)  сформирована из четырех модулей (, , , ), например, контроллеров, в частности, промышленных контроллеров, связанных между собой с использованием (посредством), по меньшей мере, одного из известных типов связи (в частности, соединения).
3
4
11
12
3
4
3
4
3
4
11
12
11
12
3
4
11
12
3
4
11
12
3
4
3
4
12
11
11
12
12
11
ФИГ. 2
12
В частном случае, модуль и модуль  являются модулями нижнего (более нижнего) уровня, по отношению к модулю  и модулю  (являющихся модулями более высокого уровня по отношению к модулю и модулю ). Так, модуль и модуль  осуществляют обработку данных, зависящих от функциональных задач модуля  и модуля , а модуль  и модуль  осуществляют обработку данных, зависящих от функциональных задач модуля  и модуля , а также от функциональных задач модуля  и модуля , причем для выполнения части функциональных задач модулю  и модулю  требуются данные, передаваемые модулем  и модулем . Так, в частном случае модуль  и модуль , в том числе осуществляют обработку данных, получаемых от модуля  и модуля , в то время, как модуль  и модуль  не осуществляют обработку данных, получаемых от модуля  и модуля . В частном случае, для выполнения части функциональных задач модулю  требуются данные, передаваемые модулем ,  а для выполнения части функциональных задач модулю  требуются данные, передаваемые модулем . В зависимости от функциональных задач связи могут быть созданы или могут быть разорваны (удалены, отключены и т.д.) или не использоваться, например, как показано на , где связь между модулем  и модулем 3 удалена, в частности, отключена (программно), т.е. в частном случае связи могут быть редуцированы в зависимости от функциональных задач модулей и установление связей или их отключение регулируется (определяются) функциональных задач модулей и совокупностью функциональных задач, формирующей общую задачу, выполняемую набором модулей (узлами, ячейками сети), причем связи устанавливаются и отключаются динамически в зависимости, по меньшей мере от одной задачи, в том числе функциональной задачи.
Модуль может содержать, по крайней мере, один центральный процессор, исполняющий код программ (машинные инструкции и т.д.), загруженных в модуль (установленных на модуле), например, в устройство хранения данных, такое, как накопитель на жестких магнитных дисках (НЖМД/HDD, англ. hard (magnetic) disk drive) или твердотельный накопитель (SSD, англ. solid-state drive), или гибридный жесткий диск (SSHD, англ. solid-state hybrid drive), или флэш-память и/или любое другое устройство, позволяющее осуществлять, по крайней мере, запись на устройство, чтение с устройства и/или хранение данных на устройстве, или в оперативную память, или содержащихся в составных частях модуля, например, в процессорах, микропроцессорах, микроконтроллерах и т.д., в частности, в микросхемах данных составных частей.
Каждый из модулей может использоваться (в том числе локально) для организации автоматизированной системы управления технологическими процессами (АСУ ТП), автоматизации научных исследований, в том числе в качестве как модуля ввода-вывода, так и центрального процессора, а также в качестве устройства защиты или в составе комплексов технических средств. Каждый из модулей может использоваться, по меньшей мере, для ввода дискретных, частотных и числоимпульсных сигналов; вывода дискретных и импульсных сигналов с широтной и частотной модуляцией; ввода аналоговых сигналов низкого и среднего уровня; выполнения контрольных, управляющих и иных алгоритмов; построения распределенных автоматизированных систем, в том числе на базе (с использованием) комплексов технических средств. В дополнение к функциям обработки входных и выходных сигналов модуль может одновременно выполнять (с заранее заданным тактом, например, тактом от 2 мс): отработку блокировок выходными каналами по срабатыванию входных дискретных сигналов и выходу за уставки аналоговых или частотных сигналов, в том числе для исполнения со средствами (в частности, с системой) технологического программирования; настройку с электронно-вычислительной машиной или, по меньшей мере одним, другим вычислительным устройством (являющимся комплексом технических, аппаратных и программных средств) по интерфейсу (в том числе внешнему) обмена параметров обработки входных и выходных каналов и алгоритмических функций во время работы с возможностью сохранения в долговременной энергонезависимой памяти.
3
4
11
12
111
121
131
141
Модуль (, , , , , , , ) может являться модулем (контроллером) центрального процессора, модулем (контроллером) дискретного ввода-вывода и ввода (в том числе упрощенного) аналоговых сигналов, в том числе с поддержкой функций центрального процессора и может являться составной частью микропроцессорного комплекса общего назначения программно-технического комплекса.
3
4
11
12
101
Модуль может являться узлом сети. Так, например, каждый из четырех модулей (, , , ) является узлом сети, состоящей из, по меньшей мере, одной ячейки сети , например, из двух, трех, четырех, пяти, десяти, десятков, сотен и т.д. ячеек сети.
Каждой функциональной задаче, которая должна быть выполнена (узлом сети, ячейкой сети, ячейками сети, сетью, сформированной из ячеек сети и т.д.), может быть выделен собственный узел сети, в частности, процессорный узел (процессорный узел сети), содержащий, по меньшей мере, один процессор, в частности, содержащий модуль, который содержит центральный процессор, причем задачи, в частности, разнородные задачи, выполняются модулями, в частности, узлами сети, параллельно и осуществлять передачу результатов выполнения таких задач параллельно, в частности, передавать на уровень выше, как описано в рамках настоящего изобретения.
3
4
11
12
101
3
4
11
12
По меньшей мере, один из модулей (, , , ) может быть связан, по меньшей мере, с одним датчиком объектов управления. Такие датчики объекта управления также могут являться частью ячейки сети  (или, в частном случае, частью узла сети). Между модулями (, , , ) осуществляется обмен данными (информацией).
По меньшей мере, один из упомянутых модулей передает данные, по крайней мере, на один модуль, и(или) принимает (получает) данные, по меньшей мере, от одного другого модуля, как описано в рамках настоящего изобретения. По меньшей мере, один модуль может осуществлять прием (получение) данных, по крайней мере, от одного связанного с ним модуля или другой ячейки сети, в частности, от модуля, являющегося частью другой ячейки сети (или узлом сети), а также от средств измерения объектов управления. Объектом управления является устройство (или динамический процесс), управление поведением которого осуществляется, по меньшей мере, модулями (с использованием модулей), как описано в рамках настоящего изобретения, посредством исполнительных устройств (управляющих механизмов). Объекты управления автоматически контролируются и управляются модулями при помощи связанных с ними средств измерения и исполнительных устройств. Модуль может являться или включать модуль сбора данных, осуществляющий получение данных со средств измерений, по меньшей мере, одного объекта управления, в частности, с регистрирующих устройств (модулей и т.д.) объектов управления, например, датчиков, и осуществляет их передачу, по крайней мере, на один связанный с ним модуль. В частном случае ячейки сети могут быть связаны друг с другом любым известным видом соединения, например, ячейки сети могут быть соединены с использованием каналов связи и средств коммутации в систему для обмена информацией, в том числе, могут принадлежать компьютерной сети (вычислительной сети). Для передачи данных между ячейками сети, узлами сети, модулями и т.д. может использоваться, по крайней мете, одна из известных сред передачи данных. В частном случае, модуль осуществляет опрос связанных с ним устройств (различного оборудования), получения от них данных, получения запросов от других модулей, ячеек сети, узлов сети, для обработки полученных данных и запросов, передачи данных другим модулям, ячейкам сети, узлам сети для управления настройками связанных устройств, включая автоматическую градуировку, контроль напряжения питания и силы тока на устройствах и т.д. объектов управления. В процессе обработки данных модуль формирует управляющие команды (или управляющие программы, инструкции, значения и т.д.) для исполнительных устройств объектов управления и передает их, по крайней мере, на одно исполнительное устройство, связанное с модулем или являющееся частью модуля, или, по крайней мере, на один другой модуль с целью дальнейшей передачи модулем управляющих команд на связанное с модулем исполнительное устройство. Сформированные управляющие команды используются для управления объектами управления для поддержания объектов управления в пределах необходимых (заданных) параметров, в частности, в том режиме, в котором должен функционировать каждый из объектов управления. Управляющие команды позволяют управлять исполнительными устройствами, например, включать или отключать такое исполнительное устройство, изменять значения, заданные на таком исполнительном устройстве и т.д., например, вентилятор, включать или отключать нагревательный элемент, открыть или закрыть клапан и т.д. Результатом обработки модулем полученных (и сохраненных в БД данных) является, по крайней мере, выработка команд для управления исполнительными устройствами, в том числе, после обработки, по крайней мере, одним модулем, например, после приведения управляющих команд к формату, пригодному для подачи на вход исполнительного устройства или пригодному для подачи на вход, по крайней мере, одного модуля, являющегося частью исполнительного устройства или связанного с ним, или после обработки исполнительным устройством. Таким образом, модуль с использованием, по крайней мере, одного алгоритма, реализуемого программным обеспечением (программой), установленным на модуле вырабатывает управляющие команды (в том числе последовательности управляющих команд) для исполнительного устройства. Модуль может включать аналогово-цифровой преобразователь (АЦП) или может быть связан с ним, причем АЦП преобразовывает данные (значения), получаемые от средств измерений в аналоговом формате данных, в цифровой формат данных, так что модуль передает данные в цифровом формате другому модулю. Также, модуль может получать данные от средств измерений в цифровом формате данных и передавать их, по меньшей мере, одному другому модулю.
В частном случае описываемое изобретение обеспечивает возможность осуществления контроля состояния, просмотра значений (измерений), удаленного управления устройствами, в частности, по крайней мере, одним исполнительным устройством (управляющим устройством, устройством управления и т.д.). Упомянутые контроль и управление осуществляются с помощью, по крайней мере, одного исполнительного устройства, в том числе посредством взаимодействия пользователя с модулями, например, задание значений, настройка и т.д. Упомянутые контроль и управление осуществляются исполнительным устройством посредством использования в таких исполнительных устройствах, по крайней мере, одной (управляющей) микросхемы, микрокомпьютера, микропроцессора или любого другого модуля, связанного, по крайней мере, с одним узлом сети, и осуществляющим регистрирование данных и/или позволяющим осуществлять управление связанными с таким модулем устройствами, осуществлять задание значений для таких устройств и т.д.
Также, по крайней мере, один модуль может генерировать (формировать) данные, например, модулем (блоком) генерирования (формирования) данных. Такие данные (полученные модулем от других модулей или сгенерированные модулем) сохраняются на таком модуле и/или передаются, по крайней мере, на один другой модуль.
131
121
131
121
Модули функционируют каждый со своим (собственным) заданным тактом – собственным тактом работы модуля (собственным тактом устройства). Значение упомянутого собственного такта модуля задается, в частности, настраивается, пользователем (оператором, программистом и т.д.) с использованием программного обеспечения, установленного на модуле, или с использованием программного обеспечения, установленного на устройстве, подключаемом к такому модулю, или с использованием программного обеспечения, установленного на другом модуле и т.д. Значение собственного такта модуля может составлять от несколько миллисекунд до минут. Так, например, для модуля  может быть задан собственный такт модуля, а для каждого из других модулей (например, ) задается свой собственный такт модуля. Так, например, для модуля  может быть задан собственный такт модуля, равный, например, 50 миллисекундам, а для каждого из других модулей (например, ) может быть задан собственный такт модуля, равный, например, 25 миллисекундам, 30 миллисекундам, 100 миллисекундам и т.д. Собственный такт работы модуля определяется свойствами объекта управления, в частности, его инерционностью. Так, динамика объекта управления задает собственный такт работы модуля (такт реального времени). Если объект управления – медленный, то значение собственного такта модуля – высокое (большое), если объект управления – быстрый, то значение собственного такта модуля – низкое (маленькое), т.е. значение собственного такта модуля, связанного с медленным объектом управления, больше собственного такта модуля, связанного с быстрым объектом управления. Если один модуль связан с несколькими объектами управления, то на модуле задается (автоматически или пользователем) наименьший собственный такт реального времени, соответствующий самому быстрому объекту управления. Так, в частности, собственный такт модуля является периодом повторения операций (не связанных с передачей данных) модулем и в частности определяет частоту (в частности, периодичность), с которой модуль осуществляет формирование (генерирование и т.д.) данных (данных реального времени) или опрашивает другой модуль, например, модуль сбора данных такого модуля (отправляет запрос на получение данных от модуля сбора данных) и получает данные, например, реального времени, в том числе, с датчиков. Также, собственный такт модуля определяет частоту передачи управляющих команд (управляющих воздействий) на объекты управления, в частности, на исполнительные устройства, связанные с такими объектами управления. На модуле может быть задано – значения от каких датчиков, переданные в модуль (например, в связанный с ним модуль сбора данных), будут получены модулем от модуля сбора данных. Так, например, может быть задано получение значений, регистрируемых определенным набором датчиков, например, относящихся к одному типу датчиков (датчиков температуры, датчиков давления и т.д.), или может быть задано получение не всех значений, регистрируемых датчиками, например, получать значения с первого по десятое, и т.д. Упомянутый модуль сбора данных, в частном случае, является устройством обмена информацией, в том числе устройством сетевого обмена (УСО). Модуль сбора данных может включать коммуникационный модуль (модуль связи) или быть связанным с коммуникационным модулем, с использованием которого осуществляется обмен данными между модулем сбора данных и модулем. Модуль может передавать данные, по крайней мере, на один другой модуль и принимать (получать) данные, по крайней мере, от одного другого модуля, способного осуществлять, по крайней мере, передачу данных. Таким образом, каждый из модулей является одновременно передающим модулем (передающим устройством, передающей стороной) и принимающим модулем (принимающим устройством, принимающей стороной), т.е. приемо-передающим модулем (приемо-передающим устройством) и может принимать данные, по крайней мере, от одного модуля и передавать данные, по крайней мере, на один другой модуль. В некоторых вариантах осуществления изобретения модуль может быть настроен (пользователем) только на передачу данных или только на прием данных, в частности, в зависимости от требуемого функционала такого модуля. Модуль, только передающий данные, в любой момент может быть перенастроен еще и на прием данных, а модуль, только принимающий данные, в любой момент может быть перенастроен еще и на передачу данных. Также на модуле может быть задано (настроено), например, пользователем, значение такта передачи данных реального времени (такт передачи данных реального времени модуля), в частности, определяющего частоту, периодичность, с которой осуществляется передача данных модулем, на один или несколько других модулей. Передача данных реального времени модулем осуществляется в конце каждого такта передачи данных реального времени модуля. Передача данных реального времени осуществляется в такт, кратный собственному такту работы модуля. Так, например, если значение собственного такта работы модуля равно 100 миллисекундам, то значение такта передачи данных реального времени модуля может быть задано равным 200 миллисекундам, 300 миллисекунда, 1 секунде и т.д. Так, например, значение такта передачи данных реального времени модуля может быть задано равным 100 миллисекунд, т.е. каждые 100 миллисекунд модуль будет отправлять (передавать) данные реального времени, по крайней мере, на один другой модуль один раз в 100 миллисекунд (или начинать передачу данных реального времени на такие другие модули).
Если модулю необходимо передавать данные реального времени, т.е. если, по крайней мере, один из модулей (или все модули) также может передавать данные, то на таком модуле также задается такт передачи данных реального времени модуля, с которым такой модуль будет осуществлять передачу данных реального времени с заданным тактом передачи данных реального времени модуля, по крайней мере, на один другой модуль. Значение такта передачи данных реального времени модуля может быть кратно, в том числе равно, значению собственного такта модуля. В случае, если значение такта передачи данных реального времени модуля ошибочно задано пользователем при настройке модуля меньшим значения собственного такта модуля, то модуль автоматически (с использованием программного модуля или программно-аппаратного модуля модуля) повышает значение такта передачи данных реального времени модуля до значения, равного значению собственного такта модуля.
11
3
3
11
4
В частном случае один модуль, например, модуль , может выполнять функции другого модуля, например, модуля  (в частности, может заменить модуль, «взять» на себя его функционал - выполнять, по меньшей мере, часть или все функциональные задачи такого модуля), например, при выходе из строя (отказа) модуля , при отсутствии связи между модулем  и модулем .
Одной из функций модулей является автоматическое управление технологическим процессом, целью которого в том числе является формирование и передача управляющих команд (управляющих воздействий, управляющих сигналов) на исполнительные устройства с использованием результатов обработки данных о состоянии технологических параметров, полученных с измерительных приборов, по заранее заданным алгоритмам, и/или с использованием данных, сгенерированных модулями (например, блоком генерирования данных).
Данные о параметрах технологического процесса могут быть использованы для контроля его состояния и управления им с автоматизированных рабочих мест операторов, а также для хранения истории изменений технологических параметров, для формирования отчетных форм в целях предоставления информации пользователям и т.д.
111
121
131
141
В частном случае модуль (, , , ) выполнен с возможностью выполнения контрольных, управляющих и иных алгоритмов и построения распределенных автоматизированных систем.
С использованием программного обеспечения может осуществляться настройка и калибровка модуля. В процессе настройки может осуществляться установка адреса и скорости интерфейса связи, настройка аналоговых входов модуля, дискретного ввода (с заданием времени фильтрации экспоненциального сглаживания или ширины фильтра скользящего среднего, если они необходимы, а в случае, если дискретный вход используется для приема частотного сигнала, для него могут быть заданы также верхняя и нижняя уставки, причем для частоты может быть также изменен период измерения), дискретного вывода (с включением, в случае необходимости, использования режима блокировки одновременного срабатывания выходов заданием длительности взаимной блокировки пар каналов в миллисекундах), контроля короткого замыкания и обрыва (посредством задания порогов их определения отдельно для входных и выходных каналов), задание технологической программы (путем создания программы, выполненной с возможностью реализовывать логические и аналоговые алгоритмы обработки данных, включая циклограммы и ПИД-регулирование), настройка маршрутизации и приема широковещательных пакетов (с указанием адресов, смещений и скорости для подключаемых к нему модулей, в частности, модулей, по каждому из интерфейсов подключения в таблице маршрутизации и с указанием диапазонов адресов и смещений для приема при необходимости в приеме модулем широковещательных пакетов).
Настройка аналоговых входов модуля может включать задание требуемого диапазона измеряемого напряжения значением коэффициента усиления (например, от 1/2 до 16); задание требуемой частоты (например, 1 Гц, 2 Гц, 5 Гц, 10 Гц, 25 Гц, 50 Гц, 100 Гц, 200 Гц,1000 Гц); калибровку АЦП с заданием подаваемого на вход калибруемого канала минимального значения эталонного сигнала, заданием максимального значения эталонного сигнала, подачей на вход выбранного канала АЦП минимального эталонного сигнала, вводом измеренного значения, подачей максимального эталонного сигнала, вводом измеренного значения, проверкой правильности калибровки, посредством подачи последовательно эталонных сигналов, соответствующих минимуму и максимуму диапазона; нормировку канала с заданием для линейной шкалы или подкоренной зависимости для нормирующей характеристики значение минимума шкалы калиброванной (электрической) величины, значение минимума шкалы физической величины, значение максимума шкалы калиброванной (электрической) величины, значение максимума шкалы физической величины, а также с заданием при необходимости ссылки на требуемую таблицу кусочно-линейных преобразований, а при ее отсутствии в модуле, создать ее  с заданием номера свободной таблицы преобразования или задания номера существующей близкой по содержания таблицы, заполнением пары точек преобразования электрической величины в физическую величину; проверку правильности нормировки, посредством подачи последовательно эталонных сигналов, соответствующих минимуму и максимуму шкалы; в случае необходимости задание верхней и нижней уставки для аналогового входа и величину гистерезиса.
111
121
131
141
151
Модули (, , , ) могут быть связаны между собой (и/или с датчиками объектов управления , и/или с таким вычислительным устройством, например, как персональный компьютер, сервер и т.д.) по интерфейсам RS-485 или “токовая петля” (DCL), Ethernet, USB (в том числе с использованием соответствующих адаптеров USB/RS485, в частности, при отсутствии у модуля порта RS-485), RS-232 (в том числе с использованием соответствующих адаптеров, в частности, при отсутствии у модуля порта RS-485), а также с использованием сети Интернет.
В частном случае передача данных может осуществляться пакетами протоколов нижнего уровня, обеспечивающих передачу без подтверждения и без образования канала связи, например, UDP стека TCP/IP или IPX стека IPX/SPX.
11
12
3
4
11
12
3
4
Модуль (, , , ) может включать блок связи (модуль связи), например, коммуникационный модуль, выделенный аппаратно или программно, для соединения, по крайней мере, с одним другим модулем, по крайней мере, для передачи и приема (получения) данных, запросов и т.д., в частности, с использованием которого осуществляется обмен данными между, по меньшей мере, модулями (, , , ).
12
12
12
11
12
11
12
3
4
4
4
3
Так, например, коммуникационный модуль модуля  может использоваться модулем , по меньшей мере, для передачи данных из модуля  в модуль  и/или для получения данных модулем  из модуля  и/или из модуля другой ячейки, и/или для передачи данных модулем  в модуль  и/или в модуль ; коммуникационный модуль модуля  может использоваться модулем , по меньшей мере, для передачи данных в модуль  и/или в модуль другой ячейки сети и т.д.
Переданные одним модулем (в частности, с использованием коммуникационного модуля такого модуля) и полученные, по меньшей мере, одним другим модулем (в частности, с использованием коммуникационного модуля такого другого модуля) данные, могут быть сохранены средствами такого другого модуля в память, связанную с таким другим модулем, например, в постоянную память или оперативную память модуля, в том числе с промежуточным сохранением данных в буфера приема данных модуля и обработаны таким другим модулем и/или переданы на другое устройство, например, на другой модуль, в хранилище данных и т.д. Буфер приема данных модуля может являться кольцевым буфером (циклическим буфером), длина которого, в частности, количество элементов, задается (например, пользователем, в частности, оператором, разработчиком программного обеспечения модуля и т.д.) на модуле или удаленно. Данные из буфера приема данных модуля могут быть сохранены в виде набора данных модулем в базу данных (БД), например, в БД данных реального времени модуля. База данных, например, БД данных реального времени модуля  и любая другая база данных, описанная в рамках настоящего изобретения, может хранить данные в виде, по крайней мере, одного массива, таблицы или набора связанных или не связанных между собой массивов (причем массивы данных могут являться векторами или матрицами данных), таблиц базы данных, и любых других известных форматах. Описываемая в настоящем изобретении, по крайней мере, одна база данных (например, БД данных реального времени) является базой данных реального времени (БДРВ, БД РВ), т.е. является базой данных, обработка данных в которой осуществляется с жестким (заданным) тактом реального времени, для чего данные хранятся во временном хранилище данных, в частности, в ОЗУ, модуля преимущественно в двоичном формате, как наиболее удобном для обработки.
11
12
3
4
В частном случае модуль (, , , ) содержит, по меньшей мере, плату центрального процессора и мезонин дополнительных интерфейсов RS485, CAN или «Токовая петля» (DCL) и дискретного ввода и вывода. Работа модуля осуществляется под управлением, по меньшей мере, одного микропроцессора. В частном случае работа модуля может осуществляться под управлением одного, двух (и более) однокристальных микропроцессоров, причем первый обеспечивает поддержку работы интерфейсов и выполнение технологической программы, а другой - ввод, вывод и обработку дискретных и числоимпульсных сигналов. В частном случае работа модуля может осуществляться, например, под управлением однокристального микропроцессора, который обеспечивает ввод и обработку дискретных и аналоговых входных сигналов, выдачу дискретных сигналов. По окончанию цикла опроса входных сигналов центральный процессор выполняет их цифровую обработку и выполнение цикла технологической программы в случае соответствующего исполнения модуля. Затем производится выдача выходных сигналов. Одновременно с вышеперечисленными функциями центральный процессор поддерживаете обмена по внешнему интерфейсу и управление светодиодами.
12
11
3
4
Каждый из модулей может функционировать (выступать, работать) как связующий элемент между другими модулями и верхним уровнем, например, модуль  является связующим элементом между модулем  и модулями , . Также, каждый из модулей может функционировать в режиме мастера для опроса (и, по меньшей мере, получения данных), по меньшей мере, одного модуля, и/или одного датчика объектов управления. Коммутация между модулями может осуществляться по интерфейсным каналам, в том числе посредством микропереключателей на панелях модулей.
С использованием программного обеспечения может осуществляться настройка и калибровка модуля. В процессе настройки может осуществляться установка адреса и скорости интерфейса связи, настройка аналоговых входов модуля, дискретного ввода (с заданием времени фильтрации экспоненциального сглаживания или ширины фильтра скользящего среднего, если они необходимы, а в случае, если дискретный вход используется для приема частотного сигнала, для него могут быть заданы также верхняя и нижняя уставки, причем для частоты может быть также изменен период измерения), дискретного вывода (с включением, в случае необходимости, использования режима блокировки одновременного срабатывания выходов заданием длительности взаимной блокировки пар каналов в миллисекундах), контроля короткого замыкания и обрыва (посредством задания порогов их определения отдельно для входных и выходных каналов), задание технологической программы (путем создания программы, позволяющей реализовывать логические и аналоговые алгоритмы обработки данных, включая циклограммы и ПИД-регулирование), настройка маршрутизации и приема широковещательных пакетов (с указанием адресов, смещений и скорости для подключаемых к нему модулей, в частности, модулей, по каждому из интерфейсов подключения в таблице маршрутизации и с указанием диапазонов адресов и смещений для приема при необходимости в приеме модулем широковещательных пакетов).
Настройка аналоговых входов модуля может включать задание требуемого диапазона измеряемого напряжения значением коэффициента усиления (например, от 1/2 до 16); задание требуемой частоты (например, 1 Гц, 2 Гц, 5 Гц, 10 Гц, 25 Гц, 50 Гц, 100 Гц, 200 Гц,1000 Гц); калибровку АЦП с заданием подаваемого на вход калибруемого канала минимального значения эталонного сигнала, заданием максимального значения эталонного сигнала, подачей на вход выбранного канала АЦП минимального эталонного сигнала, вводом измеренного значения, подачей максимального эталонного сигнала, вводом измеренного значения, проверкой правильности калибровки, посредством подачи последовательно эталонных сигналов, соответствующих минимуму и максимуму диапазона; нормировку канала с заданием для линейной шкалы или подкоренной зависимости для нормирующей характеристики значение минимума шкалы калиброванной (электрической) величины, значение минимума шкалы физической величины, значение максимума шкалы калиброванной (электрической) величины, значение максимума шкалы физической величины, а также с заданием при необходимости ссылки на требуемую таблицу кусочно-линейных преобразований, а при ее отсутствии в модуле, создать ее  с заданием номера свободной таблицы преобразования или задания номера существующей близкой по содержания таблицы, заполнением пары точек преобразования электрической величины в физическую величину; проверку правильности нормировки, посредством подачи последовательно эталонных сигналов, соответствующих минимуму и максимуму шкалы; в случае необходимости задание верхней и нижней уставки для аналогового входа и величину гистерезиса.
ФИГ. 2
На показан еще один примерный вариант общей схемы системы, реализующей настоящее изобретение, в частности, иллюстрирует структуру одного из вариантов ячейки (вычислительной) сети, сформированной из модулей, согласно одному из вариантов осуществления настоящего изобретения.
12
3
4
ФИГ. 2
11
3
4
В частном случае, один из модулей верхнего уровня, в частности, модуль , может быть не связан с одним из модулей нижнего уровня, в частности, модулем , и может быть связан только с, по меньшей мере, одним другим модулем нижнего уровня, в частности, модулем , как показано на . В то время, как другой модуль верхнего уровня, в частности, модуль , может быть связан со всеми модулями нижнего уровня, в частности, модулем  и модулем .
ФИГ. 1
ФИГ. 2
11
12
3
4
В частном случае, показанные на  и  модули (, , , ), могут являться равнозначными модулями, хотя стоит понимать, что варианты реализации настоящего изобретения охватывают использованием неравнозначных модулей.
ФИГ. 3
101
111
121
131
141
151
На  показан один из примерных вариантов схемы связей между ячейками сети, согласно одному из вариантов осуществления настоящего изобретения, в частности, показан вариант соединения ячеек сети с использованием каналов связи. Ячейки сети (), как и входящие в них модули (, , , ) и, в частном случае, входящие в них датчики объектов управления (), могут быть связаны между собой (и/или с таким вычислительным устройством, например, как персональный компьютер, сервер и т.д.) по интерфейсам RS-485 или “токовая петля” (DCL), Ethernet, USB (в том числе с использованием соответствующих адаптеров USB/RS485, в частности, при отсутствии у модуля порта RS-485), RS-232 (в том числе с использованием соответствующих адаптеров, в частности, при отсутствии у модуля порта RS-485), а также с использованием сети Интернет.
ФИГ. 4
101
На  показан примерный вариант общей схемы системы (в частном случае, ее части), реализующей настоящее изобретение, в частности, иллюстрирует структуру одного из вариантов ячейки (вычислительной) сети , сформированной из четырех модулей, согласно одному из вариантов осуществления настоящего изобретения.
ФИГ. 4
101
111
121
131
141
112
113
114
122
123
133
111
112
131
113
141
114
121
121
114
111
122
131
123
141
131
112
111,
122
121
133
141
141
113
111
123
121
133
131
111
121
131
141
151
151
101
111
121
131
141
В приведенном на  примере ячейка сети (ячейка)  сформирована из четырех модулей (, , , . В приведенном примере каждый модуль связан (, , , , , ) с другим модулем. Так, модуль  связан () с модулем , а также связан () с модулем  и связан () с модулем . Модуль  связан () с модулем , а также связан () с модулем  и связан () с модулем . Модуль  связан () с модулем  а также связан () с модулем  и связан () с модулем . Модуль  связан () с модулем , а также связан () с модулем  и связан () с модулем . По меньшей мере, один из модулей (, , , ) может быть связан, по меньшей мере, с одним датчиком объектов управления (). Такие датчики объекта управления () также могут являться частью ячейки сети  (или, в частном случае, частью узла сети). Между модулями (, , , ) осуществляется обмен данными (информацией).
111
121
121
121
111
131
141
131
121
111
141
141
121
111
141
В частном случае один модуль, например, модуль , может выполнять функции другого модуля, например, модуля , например, при выходе из строя (отказа) модуля , при отсутствии связи между модулем  и модулем  и/или модулем , и/или модулем , причем данные, которые должны быть переданы модулем  в модуль  передаются в таком случае в модуль , в том числе могут быть переданы через модуль , а данные, которые должны быть переданы модулем  в модуль  передаются в таком случае в модуль , в том числе могут быть переданы через модуль .
101
111
121
131
ФИГ. 6
В частном случае ячейка сети  может быть сформирована из трех модулей (например, модуля , модуля , модуля ), связанных между собой, в частности, друг с другом, как показано на .
111
121
131
141
111
121
131
141
Модуль (, , , ) может включать блок связи (модуль связи), например, коммуникационный модуль, выделенный аппаратно или программно, для соединения, по крайней мере, с одним другим модулем, по крайней мере, для передачи и приема (получения) данных, запросов и т.д., в частности, с использованием которого осуществляется обмен данными между, по меньшей мере, модулями (, , , ).
121
121
121
111
121
131
141
121
131
141
141
141
121
131
121
131
Так, например, коммуникационный модуль модуля  может использоваться модулем , по меньшей мере, для передачи данных из модуля  в модуль  и/или для получения данных модулем  из модуля  и/или из модуля , и/или для передачи данных модулем  в модуль  и/или в модуль ; коммуникационный модуль модуля  может использоваться модулем , по меньшей мере, для передачи данных в модуль  и/или в модуль , и/или для получения данных из модуля  и/или из модуля  и т.д.
ФИГ. 4
101
В приведенном на  примере количество связей с другими модулями для каждого модуля вычисляется по формуле Nсв = Nк-1, где Nсв – количество связей модуля с другими модулями, а Nк – количество модулей в ячейке , т.е. количество связей с другими модулями для каждого модуля равно количеству модулей ячейки минус единица.
ФИГ. 4
111
121
131
141
В частном случае, показанные на  модули (, , , ), могут являться равнозначными модулями, хотя стоит понимать, что варианты реализации настоящего изобретения охватывают использованием неравнозначных модулей.
ФИГ. 5
101
111
121
131
141
111
114
121
121
114
111
122
131
123
141
131
112
111
141
123
121
131
141
133
В приведенном на  примере ячейка  сформирована из четырех модулей (, , , ). В приведенном примере модуль  связан () с модулем . Модуль  связан () с модулем , а также связан () с модулем  и связан () с модулем . Модуль  связан () с модулем . Модуль  связан () с модулем . Также модуль  и модуль  могут быть (опционально) связаны () друг с другом.
121
111
131
122
131
141
121
В частном случае модуль одного уровня, например, модуль , может быть связан только с модулем уровня выше, например, модулем  (L+1, где L – используется для обозначения уровня), или с модулем уровня ниже, например, модулем  (L-1), без возможности связи с модулем, размещающимся двумя уровнями выше (L+2) или двумя уровнями ниже (L-2), причем модули одного уровня могут быть связаны между собой или могут быть не связаны между собой (), в том числе в зависимости от, по меньшей мере, одной функциональной задачи, по меньшей мере, модуля  и/или модуля , и/или модуля .
ФИГ. 6
101
111
121
131
На  показан еще один примерный вариант общей схемы системы (в частном случае, части системы), реализующей настоящее изобретение, в частности, иллюстрирует структуру одного из вариантов ячейки сети , сформированной из трех связанных между собой модулей (модуля , модуля , модуля ), согласно одному из вариантов осуществления настоящего изобретения.
ФИГ. 7
101
101
111
121
131
141
151
На  показан один из примерных вариантов схемы связей между ячейками сети (), согласно другому варианту осуществления настоящего изобретения, в частности, показан вариант последовательного соединения ячеек сети с использованием каналов связи. Ячейки сети (), как и входящие в них модули (, , , ) и, в частном случае, входящие в них датчики объектов управления (), могут быть связаны между собой (и/или с таким вычислительным устройством, например, как персональный компьютер, сервер и т.д.) по интерфейсам RS-485 или “токовая петля” (DCL), Ethernet, USB (в том числе с использованием соответствующих адаптеров USB/RS485, в частности, при отсутствии у модуля порта RS-485), RS-232 (в том числе с использованием соответствующих адаптеров, в частности, при отсутствии у модуля порта RS-485), а также с использованием сети Интернет.
ФИГ. 8
101
На показан примерный вариант схемы связей между ячейками сети (), согласно еще одному из вариантов осуществления настоящего изобретения, в частности, показан вариант соединения всех ячеек сети со всеми.
ФИГ. 9
101
На показан примерный вариант схемы связей между ячейками сети (), согласно еще одному из вариантов осуществления настоящего изобретения.
ФИГ. 10
101
На показан примерный вариант схемы связей между ячейками сети (), согласно еще одному из вариантов осуществления настоящего изобретения.
ФИГ. 11
101
На показан примерный вариант схемы связей между ячейками сети (), согласно еще одному из вариантов осуществления настоящего изобретения.
ФИГ. 12
101
На показан примерный вариант схемы связей между ячейками сети (), согласно еще одному из вариантов осуществления настоящего изобретения.
ФИГ. 13
На показана блок-схема примерного варианта осуществления настоящего изобретения.
В одном из вариантов осуществления настоящего изобретения формирование сети передачи данных автоматизированной системы управления технологическими процессами, может осуществляться
1310
На шаге формируют ячейки сети из модулей так, что для каждой ячейки сети: добавляют в ячейку сети выполненные одинаковыми аппаратно модули по меньшей мере двух различных типов, соответствующих ролям модулей и определяемых функционалом модулей в сети, связывают модули друг с другом с установлением каналов связи между ними для обмена данными, причем каждый модуль связан со всеми другими модулями по меньшей мере одним каналом связи или через другой модуль.
В частном случае обмен данными осуществляется пакетами протоколов нижнего уровня, обеспечивающих передачу без подтверждения и без образования канала связи, UDP стека TCP/IP или IPX стека IPX/SPX.
В частном случае модули (в том числе, в зависимости от выполняемых функций) являются зависимыми (от других модулей), в других случаях (при выполнении других задач или их части) являются независимыми.
В частном случае для выполнения функциональных задач модулем используются данные, передаваемые, по меньшей мере, с одного датчика, связанного, по меньшей мере, с одним модулем.
В частном случае добавление в ячейку сети осуществляют с формированием уровней модулей в зависимости от типа модуля, где модули одного типа принадлежат одному и тому же уровню модулей, так что модули разных уровней связаны между собой.
В частном случае модули одного уровня связаны между собой.
В частном случае модуль является модулем с предсказуемой загрузкой.
В частном случае каждый из модулей используется, по меньшей мере, для ввода дискретных, частотных и числоимпульсных сигналов; вывода дискретных и импульсных сигналов с широтной и частотной модуляцией; ввода аналоговых сигналов низкого и среднего уровня; выполнения контрольных, управляющих и иных алгоритмов; построения распределенных автоматизированных систем, в том числе на базе комплексов технических средств, а также выполняет, с заранее заданным тактом: отработку блокировок выходными каналами по срабатыванию входных дискретных сигналов и выходу за уставки аналоговых или частотных сигналов, в том числе для исполнения со средствами технологического программирования; настройку с электронно-вычислительной машиной или, по меньшей мере, одним, другим вычислительным устройством по интерфейсу обмена параметров обработки входных и выходных каналов и алгоритмических функций во время работы с возможностью сохранения в долговременной энергонезависимой памяти.
1320
На шаге  выполняют настройку каждого из модулей с заданием типа модуля в зависимости от роли модуля, соответствующей функциональным задачам каждого из модулей посредством загрузки программного обеспечения в память модулей в зависимости от требуемого функционала, где задачи распределяются между модулями, по меньшей мере, для обеспечения минимизации объема передаваемых данных по каналам связи, и распределение задач включает вычисление объема данных, передаваемых каждым из модулей и каждым из связанных с модулем датчиков каждый такт работы модуля, равный периодичности получения данных от объекта управления, связанного с модулем, и выбирают для каждого модуля такую задачу, определяющую тип модуля, чтобы осуществлялась минимальная передача данных по каждому из каналов связи, так, что функционирование модуля второго типа частично зависит от данных, передаваемых датчиками объектов управления, связанными с модулем второго типа; частично зависит от данных, передаваемых модулем первого типа к модулю второго типа; частично не зависит от данных, передаваемых модулем первого типа к модулю второго типа, и частично не зависит от данных, передаваемых датчиками, связанными с модулем второго типа, так что выполнение одной части задачи модулем второго типа зависит от задачи, выполняемой модулем первого типа, выполнение другой части задачи модулем второго типа не зависит от задачи, выполняемой модулем первого типа, а выполняемая модулем первого типа задача не зависит от задачи, выполняемой  модулем второго типа.
1330
На шаге  связывают сформированные ячейки сети между собой каналами связи с формированием многопроцессорного вычислительного кластера, структура которого определяется составом и взаимосвязями выполняемых задач, где каждая из ячеек связи связана, по меньшей мере, с одной другой ячейкой связи каналом связи, так что в каждой ячейке связи каждый из модулей является центральным процессором и одновременно является модулем ввода-вывода такого модуля, и одновременно является модулем удаленного ввода-вывода, по меньшей мере, для одного другого модуля, так что модулем осуществляются как функции центрального процессора и модуля ввода-вывода как для такого модуля, так и функции удаленного ввода-вывода, по меньшей мере, для одного другого модуля, причем модуль первого типа является модулем ввода-вывода для модуля второго типа, и ячейка сети является модулем ввода, по меньшей мере, для одной другой ячейки сети и/или является модулем ввода-вывода, по меньшей мере, для одной другой ячейки сети, где под каждую задачу выделяется отдельный процессор.
В частном случае структура вычислительного кластера изменяется переключением проводов интерфейсов
В частном случае ячейки сети связаны друг с другом последовательно, параллельно, последовательно и параллельно или каждая связана друг с другом.
В частном случае обмен данными по каналам связи осуществляется с использованием интерфейса RS-485, “токовая петля” (DCL), Ethernet, USB или RS-232.
В частном случае добавляют, по меньшей мере, в одну ячейку сети, по меньшей мере, один модуль, связывая модуль каналами связи со всеми остальными модулями.
В частном случае добавление в ячейку сети модулей осуществляют с формированием уровней модулей в зависимости от типа модуля, где модули одного типа принадлежат одному и тому же уровню модулей, так что по меньшей мере один модуль одного уровня связан с модулем того же уровня и/или связан по меньшей мере с одним модулем другого уровня, так что модуль одного уровня связан по меньшей мере с одним модулем более низкого уровня и/или связан по меньшей мере с одним модулем более высокого уровня, и/или связан по меньшей мере с одним модулем того же уровня, включая связь с модулями таких уровней в другой ячейке сети, с осуществлением передачи данных на соответствующий уровень, в том числе на тот же, на уровень выше и/или на уровень ниже.
В частном случае добавляют модуль следующего типа, так что функционирование модуля следующего типа, например, третьего типа, частично зависит от данных, передаваемых датчиками, связанными с модулем третьего типа; частично зависит от данных, передаваемых модулем первого типа к модулю третьего типа; частично зависит от данных, передаваемых модулем второго типа к модулю третьего типа; частично зависит от данных, передаваемых датчиками, связанными с модулем третьего типа;  частично не зависит от данных, передаваемых модулем первого типа к модулю третьего типа, частично не зависит от данных, передаваемых модулем второго типа к модулю третьего типа, так что выполнение одной части задач модулем третьего типа зависит от задач, выполняемых модулем первого типа; выполнение другой части задач модулем третьего типа не зависит от задач, выполняемых модулем первого типа, а выполняемые модулем первого типа задачи не зависят от выполняемых задач модулем третьего типа; выполнение следующей части задач модулем третьего типа зависит от задач, выполняемых модулем второго типа; выполнение еще одной части задач модулем третьего типа не зависит от задач, выполняемых модулем второго типа, а выполняемые модулем второго типа задачи не зависят от выполняемых задач модулем третьего типа.
В частном случае сформированная ячейка связи является виртуальным модулем, выполняя функционал физического модуля, и является центральным процессором и одновременно являющимся модулем ввода-вывода такой ячейки сети, и одновременно является модулем удаленного ввода-вывода, по меньшей мере, для одной другой ячейки сети, с обеспечением  сформированной ячейкой сети функционала центрального процессора и модуля ввода-вывода для сформированной ячейки сети, а также функционала удаленного ввода-вывода, по меньшей мере, для одной другой ячейки сети.
В частном случае для одного из модулей для выполнения своей функциональной задачи требуются данные, передаваемые с датчиков, связанных только с таким модулем, а для другого модуля для выполнения своей функциональной задачи требуются данные, передаваемые с датчиков, связанных только с этим модулем, и требуются данные, передаваемые с датчиков, связанных, по меньшей мере, с одним другим модулем. Так, для одного из модулей для выполнения своей функциональной задачи (или, в частном случае, нескольких задач) требуются только датчики, связанные с ним, в частности, требуются данные, передаваемые с датчиков, связанных только с ним, а для другого модуля для выполнения своей функциональной задачи (или, в частном случае, нескольких задач) требуются датчики, связанные с ним, в частности, требуются данные, передаваемые с датчиков, связанных только с ним, и требуются датчики, связанные, по меньшей мере с одним другим модулем, в частности, требуются данные, передаваемые с датчиков, связанных только, по меньшей мере, с одним другим модулем. Так, например, третий модуль и четвертый модуль осуществляют получение данных с датчиков объектов управления и передают их второму модулю и первому модулю, а также осуществляют управление объектами управления (в частности, обслуживают уровень агрегата), а второй модуль управляет третьим модулем и четвертым модулем (в частности, как целым), в то время, как первый модуль получает данные с третьего модуля и четвертого модуля и осуществляет обработку полученных данных, в частности осуществляет долговременный анализ (например, за один час, несколько часов, сутки), например, оценивает тренды, вычисляет требуемые коэффициенты (например, для управления объектами управления) и передает результаты анализа (в частности, пересчитанные) второму модулю для корректировки его работы, в частном случае, осуществляя анализ общего состояния объектов управления (например, установки, агрегата).
В частном случае модуль первого типа является модулем ввода для модуля третьего типа.
В частном случае модули объединены в ячейки сети универсальной структуры, названной сетчатой и объединяющей свойства шинной, звездообразной и древовидной в виде многоствольной древовидной структуры, так что многоствольная древовидная структура представляет собой две или более древовидные структуры, объединенные связями своих звездообразных частей, ветвями или корнями.
В частном случае каждой функциональной задаче выделяется собственный узел сети, содержащий, по меньшей мере, один процессор, причем задачи выполняются узлами сети параллельно с осуществлением передачи результатов выполнения таких задач параллельно, где узлом сети является модуль.
Также, формирование ячейки сети из модулей может осуществляться с выполнением добавления в ячейку сети выполненных одинаковыми аппаратно модулей трех различных типов, соответствующих ролям модулей и определяемых функционалом модулей в сети, связывание модулей друг с другом с установлением канала связи между ними для обмена данными, причем каждый модуль связан со всеми другими модулями, причем осуществляется выполнение настройки каждого из модулей с заданием типа модуля в зависимости от роли модуля, соответствующей функциональным задачам каждого из модулей посредством загрузки программного обеспечения в память модулей в зависимости от требуемого функционала, где задачи распределяются между модулями, по меньшей мере, для обеспечения минимизации передаваемых данных по каналам связи, и задание задач включает вычисление объема данных, передаваемых каждым из модулей и каждым из датчиков каждый такт работы модуля, равный периодичности получения данных от объекта управления, связанного с модулем, и осуществляется выбор для каждого модуля такой задачи, определяющей тип модуля, чтобы осуществлялась минимальная передача данных по каждому из каналов связи, причем функционирование модуля второго типа частично зависит от данных, передаваемых датчиками объектов управления, связанными с модулем второго типа; частично зависит от данных, передаваемых модулем первого типа к модулю второго типа; частично не зависит от данных, передаваемых модулем первого типа к модулю второго типа, и частично не зависит от данных, передаваемых датчиками, связанными с модулем второго типа, так что выполнение одной части задачи модулем второго типа зависит от задачи, выполняемой модулем первого типа, выполнение другой части задачи модулем второго типа не зависит от задачи, выполняемой модулем первого типа, а выполняемая модулем первого типа задача не зависит от задачи, выполняемой модулем второго типа; функционирование модуля третьего типа частично зависит от данных, передаваемых датчиками, связанными с модулем третьего типа; частично зависит от данных, передаваемых модулем первого типа к модулю третьего типа; частично зависит от данных, передаваемых модулем второго типа к модулю третьего типа; частично зависит от данных, передаваемых датчиками, связанными с модулем третьего типа;  частично не зависит от данных, передаваемых модулем первого типа к модулю третьего типа, частично не зависит от данных, передаваемых модулем второго типа к модулю третьего типа, так что выполнение одной части задачи модулем третьего типа зависит от задачи, выполняемой модулем первого типа; выполнение другой части задачи модулем третьего типа не зависит от задачи, выполняемой модулем первого типа, а выполняемая модулем первого типа задача не зависят от задачи, выполняемой модулем третьего типа; выполнение следующей части задач модулем третьего типа зависит от задач, выполняемых модулем второго типа; выполнение еще одной части задач модулем третьего типа не зависит от задач, выполняемых модулем второго типа, а выполняемые модулем второго типа задачи не зависят от выполняемых задач модулем третьего типа.
Предлагаемое изобретение позволяет в том числе под каждую задачу выделить свой процессор, обеспечив выполнение требований к системе реального времени. Предлагаемое изобретение позволяет в том числе формировать мощный многопроцессорный вычислительный кластер, структура которого определяется составом и взаимосвязями выполняемых задач по данным и условиям выполнения и легко меняется переключением проводов интерфейсов. При этом узлом такой сети может быть как относительно маломощный контроллерный модуль, так и мощный компьютер с несколькими интерфейсами Ethernet, подключаемыми к другим узлам (в том числе, компьютерам и контроллерным модулям), без сетевых коммутаторов - функцию коммутаторов выполняют сам узлы.
В заключение следует отметить, что приведенные в описании сведения являются примерами, которые не ограничивают объем настоящего изобретения, определенного формулой. Специалисту в данной области становится понятным, что могут существовать и другие варианты осуществления настоящего изобретения, согласующиеся с сущностью и объемом настоящего изобретения.