RU2707675C1 - Method of organizing data storage on network nodes with data transmission between network nodes with predictable loading of network nodes for real-time systems - Google Patents

Method of organizing data storage on network nodes with data transmission between network nodes with predictable loading of network nodes for real-time systems Download PDF

Info

Publication number
RU2707675C1
RU2707675C1 RU2019118670A RU2019118670A RU2707675C1 RU 2707675 C1 RU2707675 C1 RU 2707675C1 RU 2019118670 A RU2019118670 A RU 2019118670A RU 2019118670 A RU2019118670 A RU 2019118670A RU 2707675 C1 RU2707675 C1 RU 2707675C1
Authority
RU
Russia
Prior art keywords
data
network node
computing device
network
real
Prior art date
Application number
RU2019118670A
Other languages
Russian (ru)
Inventor
Владислав Олегович Лебедев
Original Assignee
Общество с ограниченной ответственностью "УМИКОН"
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Общество с ограниченной ответственностью "УМИКОН" filed Critical Общество с ограниченной ответственностью "УМИКОН"
Priority to RU2019118670A priority Critical patent/RU2707675C1/en
Application granted granted Critical
Publication of RU2707675C1 publication Critical patent/RU2707675C1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0002Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/02Processing of mobility data, e.g. registration information at HLR [Home Location Register] or VLR [Visitor Location Register]; Transfer of mobility data, e.g. between HLR, VLR or external networks
    • H04W8/04Registration at HLR or HSS [Home Subscriber Server]

Abstract

FIELD: data processing and storage.
SUBSTANCE: invention relates to arrangement of data storage on network nodes. Method and system for storing data on network nodes, in which on each computing device (CU) associated with the control object, setting the operation stroke, obtaining on the control object a set of real-time data, each cycle is stored in shared random access memory CU in an array of circular buffers, stored on the long-term memory device changed from the previous cycle of operation CU data, CU are combined into a computer network and are network nodes, real-time data of the last operation cycle of CU are transmitted to computer network from circular buffer arrays, simultaneously with receiving compressed data, receiving network node analyzing information obtained with such data on availability of compressed archive data on transmitting network node, and network node is compared with stored on receiving network node, and when detecting missing data, receiving network node sends UDP packet to sending network node with list of missing compressed archived data.
EFFECT: technical result is wider range of means.
27 cl, 8 dwg

Description

ОБЛАСТЬ ТЕХНИКИFIELD OF TECHNOLOGY

Изобретение относится к области программирования и электротехники, а также к области организации хранения и обработки данных на узлах сети, а также обмена данными между узлами сети для различных применений, в том числе, специальных применений.The invention relates to the field of programming and electrical engineering, as well as to the field of organizing the storage and processing of data on network nodes, as well as the exchange of data between network nodes for various applications, including special applications.

УРОВЕНЬ ТЕХНИКИBACKGROUND

Из уровня техники известен способ организации хранения связанных данных (см. RU 2621628, опубл. 06.06.2017), в котором: объединяют записи в по крайней мере одну группу по схожему признаку; присваивают идентификатор каждой вышеуказанной группе и каждой записи, находящейся в данной группе; формируют связь идентификатора группы с адресом его расположения на запоминающем устройстве таким образом, что перемещение группы на запоминающем устройстве, а также между запоминающими устройствами не изменяет значение идентификатора группы; формируют связь идентификатора записи с адресом ее расположения внутри группы на запоминающем устройстве таким образом, что перемещение записи на запоминающем устройстве внутри группы не изменяет идентификатор записи; сохраняют записи одной группы на запоминающем устройстве в смежных областях.The prior art method for organizing the storage of related data (see RU 2621628, published 06.06.2017), in which: combine records in at least one group by a similar criterion; assign an identifier to each of the above groups and each record in this group; forming a link of the group identifier with the address of its location on the storage device in such a way that moving the group on the storage device, as well as between the storage devices, does not change the value of the group identifier; forming a connection of the record identifier with the address of its location within the group on the storage device in such a way that moving the record on the storage device within the group does not change the record identifier; store records of one group on a storage device in adjacent areas.

Способ и система внешнего хранения данных (RU2383952, опубл. 10.03.2010), где способ обеспечения внешнего хранения данных в системе, включающей в себя первичное устройство обработки данных, имеющее первичное устройство хранения данных и процессор, выполненное с возможностью обработки активных записей в процессоре и сконфигурированное для хранения данных, принадлежащих активным записям, в первичном устройстве хранения данных; и вторичную систему хранения данных, доступную первичному устройству обработки данных, при этом согласно способу данные, принадлежащие активной записи, сохраняют в первичном устройстве хранения данных и экспортируют эту запись посредством переноса по меньшей мере порции данных, принадлежащих данной записи, во вторичную систему хранения данных для хранения, причем этап экспортирования записи включает в себя этап, на котором принимают по меньшей мере один вызов, инициированный прикладной программой, использующей данные, принадлежащие упомянутой записи, посредством интерфейса прикладного программирования, выполненного с возможностью посылки порции данных во вторичную систему хранения данных. Первичное устройство обработки данных, имеющее первичное устройство хранения данных и процессор, выполненное с возможностью обработки активных записей в процессоре и сконфигурированное для хранения данных, принадлежащих активной записи, в первичном устройстве хранения данных, при этом процессор выполнен с возможностью: сохранять в первичном устройстве хранения данных данные, принадлежащие активной записи, принимать по меньшей мере один вызов, инициированный прикладной программой, использующей данные, принадлежащие этой записи, посредством интерфейса прикладного программирования, выполненного с возможностью посылки порции данных во вторичную систему хранения данных, для экспортирования данной записи, и экспортировать упомянутую запись посредством переноса по меньшей мере порции данных, принадлежащих этой записи, во вторичную систему хранения данных для хранения. Первичное устройство обработки данных, имеющее первичное устройство хранения данных и процессор, выполненное с возможностью обработки активных записей в процессоре и сконфигурированное для хранения данных, принадлежащих активной записи, в первичном устройстве хранения данных, при этом процессор выполнен с возможностью: загружать данные, принадлежащие упомянутой записи, из вторичной системы хранения данных в первичное устройство хранения данных, принимать по меньшей мере один вызов, инициированный прикладной программой, использующей данные, принадлежащие этой записи, посредством интерфейса прикладного программирования, выполненного с возможностью извлечения порции данных из вторичной системы хранения данных, и импортировать упомянутую запись посредством извлечения по меньшей мере порции данных, принадлежащих данной записи, из вторичной системы хранения данных. Первичное устройство обработки данных, имеющее первичное устройство хранения данных и процессор, выполненное с возможностью обработки активных записей в процессоре и сконфигурированное для хранения данных, принадлежащих активной записи, в первичном устройстве хранения данных, при этом процессор выполнен с возможностью: загружать данные, принадлежащие активной записи, в первичное устройство хранения данных, экспортировать эту запись посредством переноса по меньшей мере порции данных, принадлежащих данной записи, во вторичную систему хранения данных для хранения, загружать данные, принадлежащие активной записи, в первичное устройство хранения данных и сохранять информацию, отражающую счет версии для экспортированной записи, и увеличивать счет версии перед экспортированием записи. Первичное устройство обработки данных, имеющее первичное устройство хранения данных и процессор, выполненное с возможностью обработки активных записей в процессоре и сконфигурированное для хранения данных, принадлежащих активной записи, в первичном устройстве хранения данных, при этом процессор выполнен с возможностью: извлекать из вторичной системы хранения данных по меньшей мере один сегмент данных, включающий в себя данные, соответствующие по меньшей мере ассоциированной части порции данных, принимать сегмент данных, включающий в себя информацию, отражающую счет версии для экспортированной записи, и сравнивать счет версии с опорным счетом версии.The method and system of external data storage (RU2383952, published March 10, 2010), where the method of providing external data storage in a system including a primary data processing device having a primary data storage device and a processor configured to process active records in a processor and configured to store data belonging to active records in a primary data storage device; and a secondary data storage system available to the primary data processing device, wherein according to the method, the data belonging to the active record is stored in the primary data storage device and exporting this record by transferring at least a portion of the data belonging to this record to the secondary data storage system for storage, and the stage of exporting the record includes the stage at which accept at least one call initiated by an application program that uses data belonging to the mentioned record, by means of an application programming interface configured to send a portion of data to a secondary data storage system. A primary data processing device having a primary data storage device and a processor configured to process active records in a processor and configured to store data belonging to the active recording in a primary data storage device, wherein the processor is configured to: store in a primary data storage device data belonging to the active record, to receive at least one call initiated by an application using data belonging to this record, using an application programming interface configured to send a portion of data to a secondary data storage system to export a given record, and export said record by transferring at least a portion of the data belonging to this record to a secondary data storage system for storage. A primary data processing device having a primary data storage device and a processor configured to process active records in a processor and configured to store data belonging to the active record in a primary data storage device, wherein the processor is configured to: download data belonging to said record , from the secondary data storage system to the primary data storage device, to receive at least one call initiated by an application using data belonging to the record by an application programming interface configured to extract portions of data from the secondary data storage system, and importing said record by retrieving at least a piece of data belonging to a given record from the secondary data storage system. A primary data processing device having a primary data storage device and a processor configured to process active records in the processor and configured to store data belonging to the active record in the primary data storage device, wherein the processor is configured to: download data belonging to the active record , to the primary data storage device, export this record by transferring at least a portion of the data belonging to this record to the secondary system store data for storage, load the data belonging to the active record into the primary data storage device and save information reflecting the version count for the exported record, and increase the version count before exporting the record. A primary data processing device having a primary data storage device and a processor configured to process active records in a processor and configured to store data belonging to the active record in a primary data storage device, wherein the processor is configured to: retrieve from a secondary data storage system at least one data segment including data corresponding to at least an associated portion of the data portion to receive a data segment including yourself information reflecting the version score for the exported record, and compare the version score with the reference score of the version.

Из уровня техники также известно управление пакетной передачей данных (см. US7283474B1, опубл. 16.10.2007), причем система и способ передачи пакетных данных включают передачу пакетов данных передатчиком на приемник посредством соединения через сетевой элемент, причем приемник подтверждает получение каждого полученного пакета данных подтверждающим сообщением, содержащим данные заголовка, которые содержат размер окна и количество переданных байт, для которого передатчик не получил уведомление от передатчика, который не может получать данные при превышении размера окна, а также включает в указанном сетевом элементе буферизацию пакетов данных, переданных передатчиком в приемник и получение в сетевом элементе подтверждающего сообщения от приемника передатчику, а также включает определение условий передачи, содержащих условия буферизации пакетов данных в указанном сетевом элементе, и модифицирование поля, указывающего размер окна, включенного в подтверждающее сообщение в соответствии с условиями передачи.The prior art also knows the control of packet data transmission (see US7283474B1, publ. 16.10.2007), moreover, the system and method for transmitting packet data include transmitting data packets by the transmitter to the receiver via a connection through a network element, and the receiver confirms receipt of each received data packet confirming a message containing header data that contains the window size and the number of bytes transmitted, for which the transmitter did not receive a notification from the transmitter, which cannot receive data when oversizing the window, and also includes in the specified network element buffering data packets transmitted by the transmitter to the receiver and receiving a confirmation message from the receiver to the transmitter in the network element, and also includes determining transmission conditions containing buffering conditions for data packets in the specified network element, and modifying the field indicating the size of the window included in the confirmation message in accordance with the transmission conditions.

Из уровня техники известны способ и система передачи данных (см. RU2469482, опубл. 10.12.2012), причем способ передачи данных в сети передачи данных, включает: передачу пакета данных от передатчика приемнику, если пакет данных неправильно принят в приемнике, передачу запроса повторной передачи от приемника передатчику, после приема повторного запроса в передатчике повторную передачу пакета данных от передатчика приемнику, после приема в передатчике заранее заданного числа запросов повторной передачи, запрашивающих повторную передачу пакета данных, передачу заранее заданного количества дубликатов пакета данных от передатчика приемнику, причем указанное заранее заданное количество дубликатов пакета данных включает по меньшей мере два дубликата, при этом указанное заранее заданное количество дубликатов пакета данных определяют на основании характеристики приемника, указывающей максимальное число повторно передаваемых блоков данных, которые могут быть одновременно обработаны приемником, а система для передачи данных в сети передачи данных включает: средства передачи пакета данных от передатчика приемнику, средства передачи запроса повторной передачи от приемника передатчику, если пакет данных неправильно принят в приемнике, средства повторной передачи пакета данных от передатчика приемнику после приема запроса повторной передачи в передатчике, средства передачи заранее заданного количества дубликатов пакета данных от передатчика приемнику после приема в передатчике заранее заданного числа запросов повторной передачи, запрашивающих повторную передачу пакета данных, причем указанное заранее заданное количество дубликатов включает по меньшей мере два дубликата, при этом указанные средства определяют указанное заранее заданное количество дубликатов пакета данных, который должен быть передан, на основании характеристики приемника, указывающей максимальное число повторно передаваемых блоков данных, которые могут быть одновременно обработаны приемником.The prior art method and system for transmitting data (see RU2469482, publ. 10.12.2012), and the method of transmitting data in a data network includes: transmitting a data packet from the transmitter to the receiver, if the data packet is incorrectly received at the receiver, sending the request again transmitting from the receiver to the transmitter, after receiving a retransmission request at the transmitter, retransmitting the data packet from the transmitter to the receiver, after receiving at the transmitter a predetermined number of retransmission requests requesting retransmission of the data packet x, transmitting a predetermined number of duplicates of the data packet from the transmitter to the receiver, wherein the specified predetermined number of duplicates of the data packet includes at least two duplicates, wherein the specified predetermined number of duplicates of the data packet is determined based on a receiver characteristic indicating the maximum number of retransmitted data blocks that can be simultaneously processed by the receiver, and a system for transmitting data in a data network includes: means for transmitting a packet data from the transmitter to the receiver, means for transmitting a request for retransmission from the receiver to the transmitter if the data packet is incorrectly received at the receiver, means for retransmitting the data packet from the transmitter to the receiver after receiving the request for retransmission in the transmitter, means for transmitting a predetermined number of duplicates of the data packet from the transmitter to the receiver after receiving at the transmitter a predetermined number of retransmission requests requesting retransmission of the data packet, the specified predetermined The number of duplicates comprises at least two duplicates, wherein said means for determining said predetermined number of duplicate data packet to be transmitted based on the receiver performance indicating the maximum number of retransmitted data units that can be simultaneously processed by the receiver.

Недостатками упомянутых решений, является, по крайней мере, отсутствие задания такта работы вычислительного устройства (ВУ), равного периодичности получения данных от объекта управления, сохранения на вычислительном устройстве полученных от объектов управления наборов данных в разделяемой оперативной памяти ВУ в массиве кольцевых буферов, обновления данных в массиве кольцевых буферов каждый такт работы ВУ, сохранения на устройстве долговременной памяти изменившихся с предыдущего такта работы ВУ данные, сохранения с периодом один раз в несколько десятков тактов работы ВУ всех данных на конец такта работы ВУ, накопления данных, изменившихся с предыдущего такта работы ВУ, в массиве кольцевых буферов в оперативной памяти ВУ, передачи данных реального времени последнего такта работы ВУ в вычислительную сеть из массивов кольцевых буферов каждый такт работы ВУ или реже, причем при передаче изменившихся данных такт передачи равен такту работы ВУ, а также при передаче изменившихся данных один раз с периодом в несколько десятков тактов работы ВУ, если задано при конфигурировании, передаются все указанные к передаче данные, где передача текущих данных, осуществляется пакетами протоколов нижнего уровня, обеспечивающих передачу без подтверждения и без образования канала связи, причем пакет является широковещательным, мульти вещательным или с указанием конкретного адреса приемного узла сети и указывается один из обобщающих признаков: номер порта UDP стека TCP/IP или сокет IPX стека IPX/SPX, причем такой признак задает виртуальный массив кольцевых буферов и в передаваемом пакете передаются адреса в виртуальный массив кольцевых буферов содержащихся в пакете текущих данных, причем переданные пакеты принимаются узлом сети, на котором конфигурированием задан прием пакетов,, причем данные реального времени, изменившиеся с предыдущего такта работы вычислительного устройства, которые были накоплены в массиве кольцевых буферов в оперативной памяти и сжаты с использованием одного из известных алгоритмов сжатия данных, после чего сохранены на устройстве долговременной памяти, также на том же такте передаются в вычислительную сеть пакетами протоколов нижнего уровня, получения и сохранения переданных в вычислительную сеть пакетов со сжатыми архивированными данными другого узла сети узлом сети на устройстве долговременной памяти, причем одновременно с приемом сжатых данных, периодически посылаемых с передающего узла сети, принимающим узлом сети анализируется полученная с такими данными информация о наличии сжатых архивных данных на передающем узле сети и узлом сети сравнивается с сохраненными на принимающем узле сети, и при обнаружении недостающих данных принимающий узел сети посылает UDP-пакет на посылающий узел сети со списком недостающих сжатых архивированных данных, и в ответ посылающий узел сети наряду с периодически посылаемыми сжатыми архивными данными на принимающий узел сети, с которого пришел запрос, досылаются UDP-пакеты с запрошенными недостающими данными, равномерно распределенные по нескольким периодам передачи.The disadvantages of the mentioned solutions are, at least, the lack of a task of the clock of the computing device (WU), equal periodicity of receiving data from the control object, saving on the computing device of the data sets received from the control objects in the shared RAM of the WU in an array of ring buffers, data updates in the ring buffer array, each clock cycle of the slave, saving on the device long-term memory data that has changed from the previous clock slave, saving with a period of one time several dozen clock cycles of the slave operation of all data at the end of the slave clock cycle, accumulation of data that changed from the previous slave clock cycle in an array of ring buffers in the slave RAM, real-time data transfer of the last slave cycle of the slave operation to the computer network from ring buffer arrays each cycle WU operation or less frequently, moreover, when transferring changed data, the transmission cycle is equal to the work cycle of the WU, and also when transmitting changed data once with a period of several tens of cycles of WU operation, if specified during configuration All data specified for transmission is transmitted, where the transmission of current data is carried out by packets of lower-level protocols that provide transmission without confirmation and without forming a communication channel, the packet being broadcast, multicast, or indicating a specific address of the receiving network node and one of the generalizing attributes: UDP port number of the TCP / IP stack or IPX socket of the IPX / SPX stack, and this attribute defines a virtual array of ring buffers and addresses in the transmitted packet are transferred to the virtual array to face buffers of the current data contained in the packet, and the transmitted packets are received by the network node on which the packet reception is set by configuration, and the real-time data that has changed from the previous clock cycle of the computing device, which were accumulated in the ring buffer array in RAM and compressed using one of the known data compression algorithms, after which they are stored on a long-term memory device, are also transferred to the computer network on the same clock by the protocol packets of the lower level, receiving and saving packets transmitted to the computer network with compressed archived data of another network node by the network node on the long-term memory device, and simultaneously with the reception of compressed data periodically sent from the transmitting network node, the receiving network node analyzes information received on such data about the presence of compressed archive data at the transmitting network node and the network node is compared with that stored on the receiving network node, and upon detection of missing data, the receiving network node sends UDP a packet to the sending host with a list of missing compressed archived data, and in response to the sending host along with periodically sent compressed archive data to the receiving host from which the request came, UDP packets with the requested missing data are sent uniformly distributed over several transmission periods .

Предлагаемое изобретение позволяет преодолеть, по крайней мере, часть вышеуказанных недостатков или все указанные недостатки, а также реализовать преимущества настоящего изобретения, согласно описанию настоящего изобретения.The present invention allows to overcome at least part of the above disadvantages or all of these disadvantages, as well as realize the advantages of the present invention, as described in the present invention.

СУЩНОСТЬ ИЗОБРЕТЕНИЯSUMMARY OF THE INVENTION

Настоящее изобретение предназначено для устранения указанного и других недостатков уровня техники. Техническим результатом является повышение эффективности и надежности хранения и обработки данных на вычислительных устройствах, в том числе являющихся узлами сети, а также обмена данными между вычислительными устройствами, объединенными в вычислительную сеть, в реальном времени с предсказуемой загрузкой узлов сети, а также снижение нагрузки на узлы сети при хранении, обработки, передаче и получении данных и на вычислительную сеть, связывающую узлы сети, при обмене данными, в том числе уменьшение объема данных, передаваемых между узлами сети, обрабатываемых узлами сети и хранящихся на узлах сети.The present invention is intended to eliminate the above and other disadvantages of the prior art. The technical result is to increase the efficiency and reliability of data storage and processing on computing devices, including network nodes, as well as the exchange of data between computing devices integrated into a computer network in real time with predictable loading of network nodes, as well as reducing load on nodes networks during storage, processing, transmission and reception of data and to a computer network connecting network nodes during data exchange, including reducing the amount of data transmitted between nodes and networks processed by network nodes and stored on network nodes.

Для достижения указанного технического результата в способе организации хранения данных на узлах сети с передачей данных между узлами сети с предсказуемой загрузкой узлов сети для систем реального времени на каждом вычислительном устройстве, связанным, по крайней мере, с одним объектом управления, задают такт работы вычислительного устройства, равный периодичности получения данных от объекта управления; получают, по крайней мере, на одном объекте управления набор данных реального времени, содержащий измеренные величины от измерительных преобразователей датчиков параметров объекта управления, и/или рассчитанные на их основе величины, включая побитно упакованные в отдельный байт - байт статуса - результаты проверки достоверности измеренных или рассчитанных величин и сравнения их с порогами - уставками, и/или величины, введенные вручную, и/или полученные другим известным способом, и передают такой набор полученных данных, по крайней мере, на одно вычислительное устройство; каждый такт работы вычислительного устройства сохраняют на вычислительном устройстве полученный набор данных в разделяемой оперативной памяти вычислительного устройства в массиве кольцевых буферов, причем массив кольцевых буферов содержит, по крайней мере, два набора значений, где первый набор значений содержит набор данных, полученный вычислительным устройством за последний такт работы вычислительного устройства, а второй набор значений, содержит набор данных, полученных вычислительным устройством за предпоследний такт работы вычислительного устройства, причем данные в массиве кольцевых буферов обновляются вычислительным устройством каждый такт работы вычислительного устройства; сохраняют на устройстве долговременной памяти изменившиеся с предыдущего такта работы вычислительного устройства данные, содержащиеся в полученном наборе данных, причем с периодом один раз в несколько десятков тактов работы вычислительного устройства сохраняют все данные на конец такта работы вычислительного устройства, а также сохраняют данные ручного ввода оператора и/или данные, рассчитанные на основе архивных данных реального времени, сохраненных в оперативной памяти вычислительного устройства и на устройстве долговременной памяти, включающие плановые показатели на будущее время; упомянутые выше данные, изменившиеся с предыдущего такта работы вычислительного устройства, накапливаются в массиве кольцевых буферов в оперативной памяти вычислительного устройства, который на такте работы вычислительного устройства, на котором сохраняются все данные и включая их, сжимаются с использованием одного из известных алгоритмов сжатия данных, включая, но не ограничиваясь, алгоритмы архивирования данных, и сохраняются на устройство долговременной памяти; по крайней мере, одно вычислительное устройство связано, по крайней мере, с одним другим вычислительным устройством, причем такие вычислительные устройства объединены в вычислительную сеть и являются узлами сети; данные реального времени последнего такта работы вычислительного устройства передаются в вычислительную сеть вычислительным устройством из массивов кольцевых буферов - базы текущих данных - каждый такт работы вычислительного устройства или реже, причем упомянутые данные передаются все или выбранные по перечню, в том числе заданному перечислением или диапазоном номеров в массиве, и такие данные передаются в полном объеме или только изменившиеся с предыдущего такта работы вычислительного устройства, причем при передаче изменившихся данных такт передачи равен такту работы вычислительного устройства, а также при передаче изменившихся данных один раз с периодом в несколько десятков тактов работы вычислительного устройства, если задано при конфигурировании, передаются все указанные к передаче данные, где передача текущих данных осуществляется пакетами протоколов нижнего уровня, обеспечивающих передачу без подтверждения и без образования канала связи, причем пакет является широковещательным, мульти вещательным или с указанием конкретного адреса приемного узла сети, и указывается один из обобщающих признаков: номер порта UDP стека TCP/IP или сокет IPX стека IPX/SPX, причем такой признак задает виртуальный массив кольцевых буферов - виртуальную базу данных, и в передаваемом пакете передаются адреса в виртуальном массиве кольцевых буферов содержащихся в пакете текущих данных, причем переданные пакеты принимаются узлом сети, на котором конфигурированием задан прием пакетов, имеющих указанный обобщающий признак, причем для такого обобщающего признака на принимающем узле сети указывается также соответствие адреса данных в виртуальной базе адресам в базе текущих данных принимающего узла, в соответствии с которыми данные из принятого пакета записываются в массив кольцевых буферов текущих данных принимающего узла - базу текущих данных; данные реального времени, изменившиеся с предыдущего такта работы вычислительного устройства, которые были накоплены в массиве кольцевых буферов в оперативной памяти и сжаты с использованием одного из известных алгоритмов сжатия данных, после чего сохранены на устройстве долговременной памяти, также на том же такте передаются в вычислительную сеть пакетами протоколов нижнего уровня, обеспечивающих передачу без подтверждения и без образования канала связи, UDP стека TCP/IP или IPX стека IPX/SPX, причем в пределах периода передача сжатых данных повторяется не менее одного раза и в месте с упомянутыми сжатыми данными в первом такте передаются данные о присутствующих на узле сжатых данных с момента их записи на таком узле сети; переданные в вычислительную сеть пакеты со сжатыми архивированными данными другого узла сети принимаются узлом сети и сохраняются на устройство долговременной памяти в раздел или каталог, заданный конфигурированием узла сети под данные передающего узла сети; одновременно с приемом сжатых данных, периодически посылаемых с передающего узла сети, принимающим узлом сети анализируется полученная с такими данными информация о наличии сжатых архивных данных на передающем узле сети и узлом сети сравнивается с сохраненными на принимающем узле сети, и при обнаружении недостающих данных принимающий узел сети посылает UDP- пакет на посылающий узел сети со списком недостающих сжатых архивированных данных, и в ответ посылающий узел сети наряду с периодически посылаемыми сжатыми архивными данными на принимающий узел сети, с которого пришел запрос, досылает UDP-пакеты с запрошенными недостающими данными, равномерно распределенные по нескольким периодам передачи, причем в первом пакете такой передачи передается таблица распределения пакетов с недостающим данными по периодам передачи и после окончания последнего периода, указанного в упомянутой таблице, принимающим узлом сети осуществляется проверка полноты сжатых архивированных данных и, при их неполноте по сравнению с передающим узлом сети, принимающим узлом сети выдается повторный запрос на передающий узел сети о досылке данных.To achieve the indicated technical result, in a method for organizing data storage at network nodes with data transfer between network nodes with predictable loading of network nodes for real-time systems on each computing device associated with at least one control object, the clock cycle of the computing device is set, equal to the frequency of receiving data from the control object; receive at least one control object a real-time data set containing the measured values from the measuring transducers of the sensors of the parameters of the control object, and / or the values calculated on their basis, including bitwise packed into a separate byte - status byte - the results of the verification of the measured or calculated values and comparing them with thresholds - settings, and / or manually entered values and / or obtained in another known manner, and transmit such a set of received data, at least and one computing device; each cycle of the computing device operation saves the obtained data set on the computing device’s shared RAM in the array of ring buffers, the ring buffer array containing at least two sets of values, where the first set of values contains the data set received by the computing device for the last the clock cycle of the computing device, and the second set of values contains the set of data received by the computing device for the penultimate clock cycle you islitelnogo device, wherein the data in an array of circular buffers computing device updated each cycle of the computing device; they store on the long-term memory device the data contained in the obtained data set that has changed from the previous clock of the computing device, and with a period of several tens of clocks of the computing device, they save all the data at the end of the clock of the computing device, and also save manual operator input data and / or data calculated on the basis of real-time archive data stored in the RAM of the computing device and on the long-term device RAM memory, including targets for the future; the data mentioned above, which have changed from the previous clock of the computing device, are accumulated in an array of ring buffers in the RAM of the computing device, which, at the clock of the computing device, which stores all the data and including it, is compressed using one of the known data compression algorithms, including , but not limited to, algorithms for archiving data, and stored on the device long-term memory; at least one computing device is associated with at least one other computing device, and such computing devices are combined into a computer network and are network nodes; real-time data of the last cycle of the computing device’s operation are transmitted to the computer network by the computing device from arrays of ring buffers — current databases — each cycle of the computing device’s operation or less often, the data being transmitted are all or selected from the list, including those specified by the enumeration or range of numbers array, and such data is transmitted in full or only changed from the previous clock of the computing device, and when changing The data transmission clock is equal to the clock of the computing device, and also when transmitting changed data once with a period of several tens of clocks of the computing device, if specified during configuration, all the data specified for transmission is transmitted, where the current data is transmitted by low-level protocol packets that provide transmission without confirmation and without the formation of a communication channel, the packet being broadcast, multicast or indicating a specific address of the receiving network node, and one of the generalizing characteristics is indicated: the UDP port number of the TCP / IP stack or the IPX socket of the IPX / SPX stack, and this characteristic defines a virtual array of ring buffers - a virtual database, and the transmitted packet transfers the addresses in a virtual array of ring buffers contained in the packet of current data, moreover, the transmitted packets are received by the network node, on which the configuration is set to receive packets having the specified generalizing attribute, and for such a generalizing characteristic, the correspondence address is also indicated on the receiving network node sa data in a virtual base address in the current receiving node data, according to which the data from the received packet stored in an array of circular buffers current data receiving node - the current database; real-time data that has changed from the previous clock of the computing device, which were accumulated in an array of ring buffers in RAM and compressed using one of the known data compression algorithms, and then stored on a long-term memory device, are also transferred to the computer network on the same clock packets of lower level protocols that provide transmission without confirmation and without formation of a communication channel, UDP TCP / IP stack or IPX IPX / SPX stack, and within the period of transmission of compressed data ovtoryaetsya at least once in place with said compressed data in a first clock cycle of data transmitted compressed data present in the node from the time they are written to this network node; packets transmitted to the computer network with compressed archived data of another network node are received by the network node and stored on the long-term memory device in a section or directory specified by configuring the network node for the data of the transmitting network node; simultaneously with the reception of compressed data periodically sent from the transmitting network node, the receiving network node analyzes the information received with such data on the presence of compressed archive data on the transmitting network node and the network node and compares it with the data stored on the receiving network node, and if missing data is detected, the receiving network node sends a UDP packet to the sending host with a list of missing compressed archived data, and in response the sending host along with periodically sent compressed archive data to the host the sweeping node of the network from which the request came sends UDP packets with the requested missing data, evenly distributed over several transmission periods, and in the first packet of such a transmission, a packet distribution table with the missing data for the transmission periods and after the end of the last period specified in the aforementioned is transmitted the table receiving the host network checks the completeness of the compressed archived data and, if they are incomplete in comparison with the transmitting network node, the receiving network node is issued repeated for A request to the sending network node for sending data.

В частном случае такт работы вычислительного устройства определяется инерционностью одного или нескольких объектов управления, связанных с вычислительным устройством, при этом такт работы вычислительного устройства задается оператором или автоматически вычислительным устройством в три-четыре раза меньше постоянной времени объекта управления, имеющего наименьшую инерционность.In a particular case, the clock cycle of a computing device is determined by the inertia of one or more control objects associated with the computing device, while the clock cycle of the computing device is set by the operator or automatically by the computing device three to four times less than the time constant of the control object having the lowest inertia.

В частном случае устройством долговременного хранения является накопитель на жестком магнитном диске или флэш-память.In a particular case, the long-term storage device is a hard disk drive or flash memory.

В частном случае вычислительное устройство или объект управления получает данные от измерительных преобразователей датчиков параметров объекта путем перерасчета измеренных величин, включая рассчитанные управляющие воздействия, с использованием коэффициентов расчетных алгоритмов для данных, содержащихся в наборах данных.In the particular case, the computing device or control object receives data from the measuring transducers of the object parameter sensors by recalculating the measured values, including the calculated control actions, using the coefficients of the calculation algorithms for the data contained in the data sets.

В частном случае вычислительное устройство сравнивает данные в полученном наборе данных за последний такт работы вычислительного устройства с сохраненными данными за предыдущий такт работы вычислительного устройства для определения изменившихся данных с предыдущего такта работы вычислительного устройства.In a particular case, the computing device compares the data in the obtained data set for the last clock of the computing device with the stored data for the previous clock of the computing device to determine the changed data from the previous clock of the computing device.

В частном случае объект управления передает на вычислительное устройство только изменившиеся данные с предыдущего такта работы вычислительного устройства.In the particular case, the control object transfers to the computing device only the changed data from the previous clock of the computing device.

В частном случае при наступлении времени значения планового показателя, это значение записывается в текущее значение одного или нескольких элементов массива текущих данных в разделяемой памяти.In the particular case, when the time of the value of the planned indicator comes, this value is recorded in the current value of one or more elements of the array of current data in shared memory.

В частном случае данные реального времени передаются в вычислительную сеть, по крайней мере, на одно вычислительное устройство, являющееся узлом сети вычислительной сети, если задано конфигурированием узла сети.In the particular case, real-time data is transmitted to the computer network, at least one computing device, which is the network node of the computer network, if specified by the configuration of the network node.

В частном случае конфигурированием с использованием списка задается фильтр адресов узлов, от которых принимаются пакеты принимающим узлом, причем пакеты принимаются только от узлов, указанных в данном списке, чем повышается безопасность системы от возможности несанкционированного или ошибочного воздействия.In a particular case, the configuration using the list sets the filter of addresses of nodes from which packets are received by the receiving node, and packets are received only from the nodes specified in this list, which increases the security of the system from the possibility of unauthorized or erroneous exposure.

В частном случае на узле сети сконфигурирована передача и прием пакетов по одному или нескольким обобщающим признакам.In a particular case, a packet is transmitted and received on a network node according to one or more generalizing criteria.

В частном случае вычислительное устройство сравнивает полученные данные с сохраненными данными для определения изменившихся данных или вычислительное устройство получает изменившиеся данные с объекта управления, причем устройство управления определяет изменившиеся данные.In the particular case, the computing device compares the received data with the stored data to determine the changed data, or the computing device receives the changed data from the control object, and the control device determines the changed data.

В частном случае данные реального времени, изменившиеся с предыдущего такта работы вычислительного устройства, которые были накоплены в массиве кольцевых буферов в оперативной памяти и сжаты с использованием одного из известных алгоритмов сжатия данных, после чего сохранены на устройстве долговременной памяти, также на том же такте передаются в вычислительную сеть пакетами протоколов нижнего уровня, если задано конфигурированием узла сети.In a particular case, real-time data that has changed from the previous clock of the computing device, which was accumulated in an array of ring buffers in RAM and compressed using one of the known data compression algorithms, after which it is stored on a long-term memory device, is also transferred to the same clock to the computer network with lower-level protocol packets, if specified by the configuration of the network node.

В частном случае на узле сети сконфигурирована передача пакетов сжатых архивных данных на несколько узлов сети и прием сжатых архивных данных от нескольких узлов сети.In a particular case, the transmission of compressed archive data packets to several network nodes and the reception of compressed archive data from several network nodes is configured on the network node.

Технический результат также достигается тем, что система для организации хранения данных на узлах сети с передачей данных между узлами сети с предсказуемой загрузкой узлов сети для систем реального времени, которая включает: вычислительные устройства, связанные с объектами управления, причем на каждом вычислительном устройстве задают такт работы такого вычислительного устройства, не больший периодичности получения данных от каждого из объектов управления, причем вычислительные устройства включены в вычислительную сеть и являются узлами такой вычислительной сети; объекты управления, на которых получают наборы данных реального времени, содержащие измеренные величины от измерительных преобразователей датчиков параметров объекта управления, и/или рассчитанные на их основе величины, включая побитно упакованные в отдельный байт - байт статуса - результаты проверки достоверности измеренных или рассчитанных величин и сравнения их с порогами - уставками, и/или величины, введенные вручную, и/или полученные другим известным способом и передают такой набор полученных данных на вычислительные устройства; разделяемую оперативную память для каждого из вычислительных устройств, в которую для каждого вычислительного устройства каждый такт работы вычислительного устройства сохраняют в массиве кольцевых буферов, причем массив кольцевых буферов содержит, по крайней мере, два набора значений, где первый набор значений содержит набор данных, полученный вычислительным устройством за последний такт работы вычислительного устройства, а второй набор значений, содержит набор данных, полученных вычислительным устройством за предпоследний такт работы вычислительного устройства, причем данные в массиве кольцевых буферов обновляются вычислительным устройством каждый такт работы вычислительного устройства; устройство долговременной памяти для каждого вычислительного устройства, в которой сохраняют изменившиеся с предыдущего такта работы вычислительного устройства данные, содержащиеся в полученном наборе данных, причем с периодом один раз в несколько десятков тактов работы вычислительного устройства сохраняют все данные на конец такта работы вычислительного устройства, а также сохраняют данные ручного ввода оператора и/или данные, рассчитанные на основе архивных данных реального времени, сохраненных в оперативной памяти вычислительного устройства и на устройстве долговременной памяти, включающие плановые показатели на будущее время, а также на устройстве долговременной памяти сохраняются упомянутые выше данные, изменившиеся с предыдущего такта работы вычислительного устройства, накапливаются в массиве кольцевых буферов в оперативной памяти вычислительного устройства, который на такте работы вычислительного устройства, на котором сохраняются все данные и включая их, сжимаются с использованием одного из известных алгоритмов сжатия данных, включая, но не ограничиваясь, алгоритмы архивирования данных; коммуникационный модуль, выделенный аппаратно или только программно, осуществляющий передачу данных реального времени последнего такта работы вычислительного устройства в вычислительную сеть из массивов кольцевых буферов каждый такт работы вычислительного устройства или реже, причем упомянутые данные передаются все или выбранные по перечню, в том числе заданному перечислением или диапазоном номеров в массиве, и такие данные передаются в полном объеме или только изменившиеся с предыдущего такта работы вычислительного устройства, причем при передаче изменившихся данных такт передачи равен такту работы вычислительного устройства, а также при передаче изменившихся данных один раз с периодом в несколько десятков тактов работы вычислительного устройства, если задано при конфигурировании, передаются все указанные к передаче данные, где передача текущих данных, осуществляется пакетами протоколов нижнего уровня, обеспечивающих передачу без подтверждения и без образования канала связи, причем пакет является широковещательным, мульти вещательным или с указанием конкретного адреса приемного узла сети и указывается один из обобщающих признаков: номер порта UDP стека TCP/IP или сокет IPX стека IPX/SPX, причем такой признак задает виртуальный массив кольцевых буферов и в передаваемом пакете передаются адреса в виртуальном массиве кольцевых буферов содержащихся в пакете текущих данных, причем переданные пакеты принимаются узлом сети, на котором конфигурированием задан прием пакетов, имеющих указанный обобщающий признак, причем для такого обобщающего признака на принимающем узле сети указывается также соответствие адреса данных в виртуальной базе адресам в базе текущих данных принимающего узла, в соответствии с которыми данные из принятого пакета записываются в массив кольцевых буферов текущих данных принимающего узла и данные реального времени, изменившиеся с предыдущего такта работы вычислительного устройства, которые были накоплены в массиве кольцевых буферов в оперативной памяти и сжаты с использованием одного из известных алгоритмов сжатия данных, после чего сохранены на устройстве долговременной памяти, также на том же такте передаются в вычислительную сеть пакетами протоколов нижнего уровня, обеспечивающих передачу без подтверждения и без образования канала связи, UDP стека TCP/IP или IPX стека IPX/SPX, причем в пределах периода передача сжатых данных повторяется не менее одного раза и в месте с упомянутыми сжатыми данными в первом такте передаются данные о присутствующих на узле сжатых данных с момента их записи на таком узле сети; и - переданные в вычислительную сеть пакеты со сжатыми архивированными данными другого узла сети принимаются узлом сети и сохраняются на устройство долговременной памяти в раздел или каталог, заданный конфигурированием узла сети под данные передающего узла сети; где одновременно с приемом сжатых данных, периодически посылаемых коммуникационным модулем с передающего узла сети, принимающим узлом сети анализируется полученная коммуникационным модулем с такими данными информация о наличии сжатых архивных данных на передающем узле сети и узлом сети сравнивается с сохраненными на принимающем узле сети, и при обнаружении недостающих данных принимающий узел сети посылает UDP- пакет на посылающий узел сети со списком недостающих сжатых архивированных данных, и в ответ посылающий узел сети наряду с периодически посылаемыми сжатыми архивными данными на принимающий узел сети, с которого пришел запрос, досылает UDP-пакеты с запрошенными недостающими данными, равномерно распределенные по нескольким периодам передачи, причем в первом пакете такой передачи передается таблица распределения пакетов с недостающим данными по периодам передачи и после окончания последнего периода, указанного в упомянутой таблице, принимающим узлом сети осуществляется проверка полноты сжатых архивированных данных и, при их неполноте по сравнению с передающим узлом сети, принимающим узлом сети выдается повторный запрос на передающий узел сети о досылке данных.The technical result is also achieved by the fact that a system for organizing data storage on network nodes with data transfer between network nodes with predictable loading of network nodes for real-time systems, which includes: computing devices associated with control objects, and on each computing device set the cycle such a computing device, not greater than the frequency of receiving data from each of the control objects, and the computing devices are included in the computer network and are nodes lamas of such a computer network; control objects, on which real-time data sets are received, containing measured values from measuring transducers of sensors of the parameters of the control object, and / or values calculated on their basis, including bitwise packed into a separate byte - status byte - the results of validation of the measured or calculated values and comparison them with thresholds - settings, and / or manually entered values and / or received in another known manner and transmit such a set of received data to computing devices; shared memory for each of the computing devices, in which for each computing device each clock of the computing device is stored in an array of ring buffers, the array of ring buffers containing at least two sets of values, where the first set of values contains the data set obtained by the computing device for the last clock cycle of the computing device, and the second set of values contains a set of data received by the computing device for the penultimate clock cycle Ota computing device, wherein data in an array of circular buffers computing device updated each cycle of the computing device; a long-term memory device for each computing device in which the data contained in the obtained data set, which has changed from the previous clock cycle of the computing device, is stored, and with a period of several tens of clock cycles of the computing device, all data is stored at the end of the clock cycle of the computing device, and save manual operator input data and / or data calculated on the basis of real-time archived data stored in the computational RAM of the device and the long-term memory device, including planned indicators for the future, as well as the long-term memory device, the data mentioned above, which have changed from the previous clock of the computing device, are stored in the array of ring buffers in the RAM of the computing device, which at the clock cycle of the computing device devices on which all data is stored and including them are compressed using one of the known data compression algorithms, including, but not limited to archiving data archiving algorithms; a communication module, selected hardware or software only, transmitting real-time data of the last clock of the computing device to the computing network from arrays of ring buffers every clock of the computing device or less often, the data mentioned is transmitted all or selected by the list, including the specified list or the range of numbers in the array, and such data is transmitted in full or only changed from the previous clock of the computing device, etc. why when transmitting changed data, the transmission clock is equal to the clock of the computing device, and also when transmitting the changed data once with a period of several tens of clocks of the computing device, if specified during configuration, all the data specified for transmission is transmitted, where the current data is transmitted in packets lower level protocols that provide transmission without confirmation and without the formation of a communication channel, moreover, the packet is broadcast, multicast or specifying a real address of the receiving network node and one of the generalizing signs is indicated: the UDP port number of the TCP / IP stack or the IPX socket of the IPX / SPX stack, and this sign defines a virtual array of ring buffers and the transmitted packet contains addresses in a virtual array of ring buffers contained in the packet of current data, moreover, the transmitted packets are received by the network node, on which the configuration is set to receive packets having the specified generalizing feature, and for such a generalizing characteristic, the corresponding node is also indicated on the receiving network node the data addresses in the virtual database are the addresses in the current database of the receiving node, according to which the data from the received packet are written into the array of ring buffers of the current data of the receiving node and the real-time data that have changed from the previous clock cycle of the computing device that were accumulated in the ring array buffers in RAM and compressed using one of the well-known data compression algorithms, after which they are stored on a long-term memory device, also transmitted on the same clock I’m sent to the computer network with packets of lower level protocols that ensure the transfer without confirmation and without the formation of a communication channel, the UDP TCP / IP stack or IPX IPX / SPX stack, and within the period, the transmission of compressed data is repeated at least once and in place with the mentioned compressed data in the first clock, data on the compressed data present on the node is transmitted from the moment it was recorded on such a network node; and - packets transmitted to the computer network with compressed archived data of another network node are received by the network node and stored on the long-term memory device in a section or directory specified by configuring the network node for the data of the transmitting network node; where simultaneously with the reception of compressed data periodically sent by the communication module from the transmitting network node, the receiving network node, the information received by the communication module with such data on the availability of compressed archive data at the transmitting network node and the network node is compared with that stored on the receiving network node, and upon detection the missing host sends a UDP packet to the sending host with a list of missing compressed archived data, and in response the sending host along with Using the compressed archival data sent to the receiving network node from which the request was received, it sends UDP packets with the requested missing data, evenly distributed over several transmission periods, and in the first packet of such transmission, a packet distribution table with the missing data by transmission periods and after the last period indicated in the above table, the receiving network node checks the completeness of the compressed archived data and, if incomplete, in comparison with the transmitting evil network, the receiving node in the network issued a second request to the transmitting node of the data dosylka.

В частном случае, система содержит связанные с объектами управления модули сбора данных, которые передают наборы данных реального времени от измерительных преобразователей датчиков параметров объекта управления на объекты управления.In the particular case, the system contains data collection modules associated with control objects, which transmit real-time data sets from measuring transducers of sensors of parameters of the control object to control objects.

В частном случае, в системе такт работы вычислительного устройства определяется инерционностью одного или нескольких объектов управления, связанных с вычислительным устройством, при этом такт работы вычислительного устройства задается оператором или автоматически вычислительным устройством в три-четыре раза меньше постоянной времени объекта управления, имеющего наименьшую инерционность.In a particular case, in the system, the computing device operating cycle is determined by the inertia of one or more control objects associated with the computing device, while the computing device operating cycle is set by the operator or automatically by the computing device to be three to four times less than the time constant of the control object having the lowest inertia.

В частном случае, в системе устройством долговременного хранения является накопитель на жестком магнитном диске или флэш-память.In the particular case, in the system, the long-term storage device is a hard disk drive or flash memory.

В частном случае, в системе вычислительное устройство или объект управления получает данные от измерительных преобразователей датчиков параметров объекта путем перерасчета измеренных величин, включая рассчитанные управляющие воздействия, с использованием коэффициентов расчетных алгоритмов для данных, содержащихся в наборах данных.In the particular case, in the system, the computing device or control object receives data from the measuring transducers of the object parameter sensors by recalculating the measured values, including the calculated control actions, using the coefficients of the calculation algorithms for the data contained in the data sets.

В частном случае, в системе вычислительное устройство сравнивает данные в полученном наборе данных за последний такт работы вычислительного устройства с сохраненными данными за предыдущий такт работы вычислительного устройства для определения изменившихся данных с предыдущего такта работы вычислительного устройства.In the particular case, in the system, the computing device compares the data in the obtained data set for the last clock of the computing device with the stored data for the previous clock of the computing device to determine the changed data from the previous clock of the computing device.

В частном случае, в системе объект управления передает на вычислительное устройство только изменившиеся данные с предыдущего такта работы вычислительного устройства.In the particular case, in the system, the control object transfers to the computing device only the changed data from the previous cycle of the computing device.

В частном случае, в системе при наступлении времени значения планового показателя, оно записывается в текущее значение одного или нескольких элементов массива текущих данных в разделяемой памяти.In a particular case, in the system, when the scheduled value reaches time, it is written to the current value of one or more elements of the current data array in shared memory.

В частном случае, в системе данные реального времени передаются в вычислительную сеть, по крайней мере, на одно вычислительное устройство, являющееся узлом сети вычислительной сети, если задано конфигурированием узла сети.In the particular case, in the system, real-time data is transmitted to the computer network, at least one computing device, which is the network node of the computer network, if specified by the configuration of the network node.

В частном случае, в системе конфигурированием задается фильтр адресов узлов, от которых принимаются пакеты принимающим узлом.In the particular case, in the system, the filter sets the address filter of the nodes from which packets are received by the receiving node.

В частном случае, в системе на узле сети сконфигурирована передача и прием пакетов по одному или нескольким обобщающим признакам.In the particular case, in the system at the network node, transmission and reception of packets are configured according to one or more generalizing attributes.

В частном случае, в системе вычислительное устройство сравнивает полученные данные с сохраненными данными для определения изменившихся данных, или вычислительное устройство получает изменившиеся данные с объекта управления, причем устройство управления определяет изменившиеся данные.In the particular case, in the system, the computing device compares the received data with the stored data to determine the changed data, or the computing device receives the changed data from the control object, and the control device determines the changed data.

В частном случае, в системе данные реального времени, изменившиеся с предыдущего такта работы вычислительного устройства, которые были накоплены в массиве кольцевых буферов в оперативной памяти и сжаты с использованием одного из известных алгоритмов сжатия данных, после чего сохранены на устройстве долговременной памяти, также на том же такте передаются в вычислительную сеть пакетами протоколов нижнего уровня, если задано конфигурированием узла сети.In a particular case, in the system, real-time data that has changed from the previous clock of the computing device, which was accumulated in an array of ring buffers in RAM and compressed using one of the known data compression algorithms, is then stored on a long-term memory device, also on the same clock cycle is transmitted to the computer network by lower-level protocol packets, if specified by the configuration of the network node.

В частном случае, в системе на узле сети сконфигурирована передача пакетов сжатых архивных данных на несколько узлов сети и прием сжатых архивных данных от нескольких узлов сети.In the particular case, in the system at the network node, transmission of compressed archived data packets to several network nodes and reception of compressed archive data from several network nodes is configured.

КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙBRIEF DESCRIPTION OF THE DRAWINGS

Дополнительные цели, признаки и преимущества настоящего технического решения будут понятны из прочтения последующего описания осуществления технического решения со ссылкой на прилагаемые чертежи, на которых:Additional objectives, features and advantages of this technical solution will be clear from reading the following description of the implementation of the technical solution with reference to the accompanying drawings, in which:

ФИГ. 1 иллюстрирует примерный вариант общего вида предложенной системы, реализующей предложенный способ;FIG. 1 illustrates an exemplary variant of the General view of the proposed system that implements the proposed method;

ФИГ. 2 иллюстрирует один из вариантов связи между узлами сети;FIG. 2 illustrates one embodiment of communication between network nodes;

ФИГ. 3 иллюстрирует примерный вариант узла сети, обменивающегося данными с другим узлом сети;FIG. 3 illustrates an example embodiment of a network node communicating with another network node;

ФИГ. 4 иллюстрирует вариант передачи данных с одного узла сети на другой узел сети предложенной системы;FIG. 4 illustrates an embodiment of data transmission from one network node to another network node of the proposed system;

ФИГ. 5 иллюстрирует примерный вариант описываемой системы с подключенными к узлу сети исполнительными устройствами.FIG. 5 illustrates an exemplary embodiment of the described system with actuators connected to a network node.

ФИГ. 6 иллюстрирует примерный вариант назначения номеров соответствия данных, сохраненных на передающем узле сети, в виртуальной базе данных и на принимающем узле сети;FIG. 6 illustrates an example embodiment of assigning correspondence numbers of data stored on a transmitting network node in a virtual database and on a receiving network node;

ФИГ. 7 иллюстрирует таблицу соответствия номеров параметров передающего узла сети номерам параметров виртуальной базы данных.FIG. 7 illustrates a correspondence table of parameter numbers of a transmitting network node with virtual parameter numbers.

ФИГ. 8 иллюстрирует таблицу соответствия номеров параметров виртуальной БД номерам параметров принимающего узла сети.FIG. 8 illustrates a correspondence table of parameter numbers of a virtual database with parameter numbers of a receiving network node.

ПОДРОБНОЕ ОПИСАНИЕDETAILED DESCRIPTION

Объекты и признаки настоящего изобретения, способы для достижения этих объектов и признаков станут очевидными посредством отсылки к примерным вариантам осуществления. Однако настоящее изобретение не ограничивается примерными вариантами осуществления, раскрытыми ниже, оно может воплощаться в различных видах. Сущность, приведенная в описании, является ничем иным, как конкретными деталями, обеспеченными для помощи специалисту в области техники в исчерпывающем понимании изобретения, и настоящее изобретение определяется только в объеме приложенной формулы.The objects and features of the present invention, methods for achieving these objects and features will become apparent by reference to exemplary embodiments. However, the present invention is not limited to the exemplary embodiments disclosed below, it can be embodied in various forms. The essence described in the description is nothing more than the specific details provided to assist the specialist in the field of technology in a comprehensive understanding of the invention, and the present invention is defined only in the scope of the attached claims.

В частном случае, используемые в настоящем описании изобретении термины «компонент», «элемент», «секция», «модуль», «часть», «блок», «составная часть», «средство» и подобные, используются для обозначения компьютерных сущностей (например, объектов, связанных с компьютером, вычислительных сущностей), которые могут являться аппаратным обеспечением, в частности, оборудованием (например, устройством, инструментом, аппаратом, аппаратурой, частью устройства, в том числе, но не ограничиваясь, процессором, микропроцессором, микроконтроллером, печатной платой и т.д.), программным обеспечением (например, исполняемым программным кодом, скомпилированным приложением, модулем, частью программного обеспечения и/или кода и т.д.), микропрограммой (встроенным программным обеспечением, в частности, прошивкой (микроконтроллера), от англ. firmware,причем прошивка может включать (свою) операционную систему) или программно-аппаратным обеспечением (в частности, аппаратным обеспечением с установленным на нем программным обеспечением, в том числе, микропрограммой). Так, например, компонент может быть процессом, выполняющемся (исполняющимся) на процессоре, процессором, контроллером, исполняемым файлом, программой, функцией, методом, библиотекой, подпрограммой и/или электрическим, электронным, вычислительным устройством (например, микрокомпьютером, компьютером и т.д.), частями таких устройств или комбинацией программного и аппаратного обеспечения.In the particular case, the terms “component”, “element”, “section”, “module”, “part”, “block”, “component”, “means” and the like used in the present description of the invention are used to refer to computer entities (for example, objects associated with a computer, computing entities), which may be hardware, in particular equipment (for example, a device, tool, apparatus, equipment, part of a device, including, but not limited to, a processor, microprocessor, microcontroller , ne board, etc.), software (for example, executable program code, a compiled application, module, part of the software and / or code, etc.), firmware (firmware, in particular firmware (microcontroller) , from the English firmware, moreover, the firmware may include (its) operating system) or firmware and hardware (in particular, hardware with software installed on it, including firmware). So, for example, a component can be a process running (running) on a processor, processor, controller, executable file, program, function, method, library, subprogram and / or electrical, electronic, computing device (e.g., microcomputer, computer, etc.). e.), parts of such devices, or a combination of software and hardware.

На ФИГ. 1 показан примерный вариант общего вида предложенной системы, реализующей предложенный способ.In FIG. 1 shows an exemplary version of the General view of the proposed system that implements the proposed method.

Изображенная на ФИГ. 1 система включает узлы сети (от англ. node, сетевые узлы, узлы компьютерной сети, узлы) 112, между которыми осуществляется обмен данными (информацией). Упомянутым узлом сети 112 может являться персональный компьютер, сервер, компьютерная система, моноблок, одноплатный компьютер, рабочая станция и любое другое вычислительное устройство, настольное или мобильное, а также контроллер, например, промышленный контроллер. По крайней мере, один из упомянутых узлов сети (112) передает данные, по крайней мере, на один узел сети, и(или) принимает (получает) данные, по крайней мере, от одного другого узла сети, как описано далее. По крайней мере, один узел сети 112 может осуществлять прием (получение) данных, по крайней мере, от одного связанного с таким узлом сети модуля или модуля, являющимся частью узла сети, например, от модулей сбора данных (102), связанного, по крайней мере, с одним средством измерения, по крайней мере, одного объекта управления. Объектом управления является устройство (или динамический процесс), управление поведением которого осуществляется описываемой системой посредством исполнительных устройств (управляющих механизмов). Объекты управления автоматически контролируются и управляются узлами сети 112 при помощи связанных с ними средств измерения и исполнительных устройств. Модуль сбора данных 102 осуществляет получение данных со средств измерений, по крайней мере, одного объекта управления, в частности, с регистрирующих устройств (модулей и т.д.) объектов управления, например, датчиков, и передает их, по крайней мере, на один связанный с ним узел сети, что более подробно описано далее. Узлы и модули могут быть связаны друг с другом любым известным видом соединения, например, узлы сети могут быть соединены с использованием каналов связи и средств коммутации в систему для обмена информацией, в частности, могут принадлежать компьютерной сети (вычислительной сети). Для передачи данных между узлами сети и модулями, например, модулями сбора данных, может использоваться, по крайней мете, одна из известных сред передачи данных. Модуль сбора данных 102 может содержать (включать), по крайней мере, один процессор и/или, по крайней мере, один микропроцессор для опроса связанных с ним устройств (различного оборудования), получения от них данных, получения запросов от узлов сети, для обработки полученных данных и запросов, передачи данных на узел сети, для управления настройками связанных устройств, включая автоматическую градуировку, контроль напряжения питания и силы тока на устройствах и т.д. объектов управления. Модуль сбора данных 102 может включать блок связи (модуль связи), например, коммуникационный модуль, выделенный аппаратно или программно, для соединения, по крайней мере, с одним узлом сети, по крайней мере, для передачи и приема данных, запросов и т.д. Модуль сбора данных 102 может включать аналогово-цифровой преобразователь (АЦП) или может быть связан с ним, причем АЦП преобразовывает данные (значения), получаемые от средств измерений в аналоговом формате данных, в цифровой формат данных, так что модуль сбора данных 102 передает данные в цифровом формате на узел сети 112. Также, модуль сбора данных 102 может получать данные от средств измерений в цифровом формате данных и передавать их на узел сети 112.Depicted in FIG. 1, the system includes network nodes (from the English node, network nodes, computer network nodes, nodes) 112, between which data (information) is exchanged. Said network node 112 may be a personal computer, server, computer system, monoblock, single-board computer, workstation and any other computing device, desktop or mobile, as well as a controller, for example, an industrial controller. At least one of the mentioned network nodes (112) transmits data to at least one network node, and (or) receives (receives) data from at least one other network node, as described below. At least one network node 112 may receive (receive) data from at least one module or module associated with such a network node, which is part of a network node, for example, from data collection modules (102) associated with at least with at least one means of measuring at least one control object. The control object is a device (or dynamic process), the behavior of which is controlled by the described system by means of actuators (control mechanisms). Management objects are automatically monitored and controlled by network nodes 112 using the associated measuring instruments and actuators. The data acquisition module 102 obtains data from measuring instruments of at least one control object, in particular, from recording devices (modules, etc.) of control objects, for example, sensors, and transmits them to at least one an associated network node, which is described in more detail below. The nodes and modules can be connected to each other by any known type of connection, for example, network nodes can be connected using communication channels and means of switching to a system for exchanging information, in particular, they can belong to a computer network (computer network). To transfer data between network nodes and modules, for example, data acquisition modules, at least one of the known data transmission media can be used. The data acquisition module 102 may include (include) at least one processor and / or at least one microprocessor for interrogating related devices (various equipment), receiving data from them, receiving requests from network nodes, for processing received data and requests, data transfer to a network node, to control settings of related devices, including automatic calibration, control of supply voltage and current strength on devices, etc. management objects. The data acquisition module 102 may include a communication unit (communication module), for example, a communication module, allocated hardware or software, for connecting to at least one network node, at least for transmitting and receiving data, requests, etc. . The data acquisition module 102 may include or be coupled to an analog-to-digital converter (ADC), the ADC converting the data (values) received from the measuring instruments in an analog data format to a digital data format, so that the data collection module 102 transmits data in digital format to the network node 112. Also, the data collection module 102 may receive data from the measuring instruments in digital data format and transmit them to the network node 112.

Также, по крайней мере, один узел сети 112 может генерировать (формировать) данные, например, модулем генерирования (формирования) данных (303, ФИГ. 3), как описано далее. Такие данные (полученные узлом сети от модулей или сгенерированные узлом сети) сохраняются на таком узле сети и/или передаются, по крайней мере, на один другой узел сети.Also, at least one network node 112 can generate (generate) data, for example, by a data generation (generation) module (303, FIG. 3), as described below. Such data (received by a host from modules or generated by a host) is stored on such a host and / or transmitted to at least one other host.

Узел сети 112 содержит, по крайней мере, один центральный процессор, исполняющий код программ (машинные инструкции и т.д.), загруженных на узел сети 112 (установленных на узле сети 112), например, на устройстве хранения данных, таком, как накопитель на жестких магнитных дисках, или в оперативной памяти, или содержащихся в составных частях узла сети, например, в процессорах, микропроцессорах, микроконтроллерах и т.д., в частности, в микросхемах данных составных частей.The network node 112 contains at least one central processor executing code of programs (machine instructions, etc.) downloaded to the network node 112 (installed on the network node 112), for example, on a storage device, such as a drive on hard magnetic disks, or in RAM, or contained in the components of a network node, for example, in processors, microprocessors, microcontrollers, etc., in particular, in microcircuits of these components.

Настоящее изобретение описано на примере передачи данных между двумя и более узлами сети (112) в пределах одной и более сетей (компьютерных сетей). В описании настоящего изобретения описывается пример варианта обмена данными между двумя узлами сети, которые являются равнозначными узлами сети (112). Настоящее изобретение описано на примере передачи данных первым узлом сети, т.е. первый узел сети передает данные, по крайней мере, на один другой узел сети, например, на второй узел сети, причем такой второй узел сети, по крайней мере, принимает данные от одного и более узлов сети, например, от первого узла сети, как описано далее. Узлом сети может являться контроллер, персональный компьютер (ПК) автоматизированного рабочего места (АРМ) оператора, хотя стоит понимать, что варианты реализации настоящего изобретения охватывают обмен данными между любыми двумя и более устройствами, в частности, вычислительными устройствами, способными получать (принимать) и/или хранить данные и передавать (отправлять) данные, как описано в рамках настоящего изобретения.The present invention is described by the example of data transmission between two or more network nodes (112) within one or more networks (computer networks). The description of the present invention describes an example of a data exchange between two network nodes, which are equivalent network nodes (112). The present invention is described by the example of data transmission by a first network node, i.e. the first network node transmits data to at least one other network node, for example, to the second network node, and such a second network node, at least, receives data from one or more network nodes, for example, from the first network node, such as described later. The network node may be a controller, a personal computer (PC) of the operator’s workstation (AWS), although it should be understood that the embodiments of the present invention encompass data exchange between any two or more devices, in particular, computing devices capable of receiving (receiving) and / or store data and transmit (send) data as described in the framework of the present invention.

На ФИГ. 2 показан один из вариантов связи между узлами сети, в частности, показан вариант связи одного из узлов сети 205 с другими узлами сети (210), причем узел сети 205 осуществляет передачу данных на другие узлы сети (210).In FIG. 2 shows one of the communication options between network nodes, in particular, shows a communication option of one of the network nodes 205 with other network nodes (210), and the network node 205 transmits data to other network nodes (210).

Как показано на ФИГ. 2 узел сети 205 осуществляет передачу данных, по крайней мере, на один другой узел сети 210, причем передаваемыми данными являются данные, полученные от модуля сбора данных 102, или, полученные от других узлов сети, или сгенерированные одним из узлов сети, например, узлом сети 205, причем такие сгенерированные данные могут быть сгенерированы, например, модулем генерирования данных (303, ФИГ. 3), что более подробно описано далее.As shown in FIG. 2, the network node 205 transmits data to at least one other network node 210, the data being transmitted being data received from the data acquisition module 102, or received from other network nodes, or generated by one of the network nodes, for example, a node network 205, and such generated data can be generated, for example, by a data generation module (303, FIG. 3), which is described in more detail below.

Узел сети 205 может передавать данные, по крайней мере, на один другой узел сети 210 и принимать (получать) данные, по крайней мере, от одного другого узла сети 210, способного осуществлять, по крайней мере, передачу данных, в частности, по крайней мере, от одного другого узла сети. Каждый из узлов сети 210 может передавать данные, по крайней мере, на один другой узел сети, например, на узел сети 205. Таким образом, каждый из узлов сети (205, 210) является одновременно передающим узлом (передающим устройством, передающей стороной) и принимающим узлом (принимающим устройством, принимающей стороной), т.е. приемо-передающим узлом сети (приемо-передающим устройством) и может принимать данные, по крайней мере, от одного узла сети и передавать данные, по крайней мере, на один другой узел сети. В некоторых вариантах осуществления изобретения узел сети (205, 210) может быть настроен (пользователем) только на передачу данных или только на прием данных, в частности, в зависимости от требуемого функционала такого узла сети (205, 210). Узел сети (205, 210), только передающий данные, в любой момент может быть перенастроен еще и на прием данных, а узел сети (205, 210), только принимающий данные, в любой момент может быть перенастроен еще и на передачу данных.The network node 205 can transmit data to at least one other network node 210 and receive (receive) data from at least one other network node 210, capable of at least transmitting data, in particular at least at least from one other host. Each of the nodes of the network 210 can transmit data to at least one other network node, for example, to the network node 205. Thus, each of the network nodes (205, 210) is simultaneously a transmitting node (transmitting device, transmitting side) and the receiving node (receiving device, receiving side), i.e. transceiver network node (transceiver device) and can receive data from at least one network node and transmit data to at least one other network node. In some embodiments of the invention, the network node (205, 210) can be configured (by the user) only to transmit data or only to receive data, in particular, depending on the required functionality of such a network node (205, 210). A network node (205, 210), only transmitting data, at any time can be reconfigured to receive data, and a network node (205, 210), only receiving data, at any time can be reconfigured also to transmit data.

Узлы сети функционируют каждый со своим (собственным) заданным тактом - собственным тактом работы узла сети (собственным тактом устройства). Значение упомянутого собственного такта узла сети задается, в частности, настраивается, пользователем (оператором, программистом и т.д.) с использованием программного обеспечения, установленного на узле сети (205, 210), или с использованием программного обеспечения, установленного на устройстве, подключаемом к такому узлу сети (205, 210), или с использованием программного обеспечения, установленного на другом узле сети и т.д. Значение собственного такта узла сети может составлять от несколько миллисекунд до минут. Так, например, для узла сети 205 задается собственный такт узла сети, а для каждого из других узлов сети (210) задается свой собственный такт узла сети. Так, например, для узла сети 205 может быть задан собственный такт узла сети, равный, например, 50 миллисекундам, а для каждого из других узлов сети (210) может быть задан собственный такт узла сети, равный, например, 25 миллисекундам, 30 миллисекундам, 100 миллисекундам и т.д.The nodes of the network operate each with its own (own) predetermined cycle - its own cycle of operation of the network node (its own cycle of the device). The value of the said own cycle of the network node is set, in particular, it is configured by the user (operator, programmer, etc.) using software installed on the network node (205, 210), or using software installed on the device connected to such a network node (205, 210), or using software installed on another network node, etc. The value of the host’s own clock cycle can be from a few milliseconds to minutes. So, for example, for the host 205 own network clock is set, and for each of the other network nodes (210) its own clock network is set. So, for example, for the host 205 can be set own clock cycle of the network node, equal to, for example, 50 milliseconds, and for each of the other nodes of the network can be set own clock cycle of the network node, equal to, for example, 25 milliseconds, 30 milliseconds , 100 milliseconds, etc.

Собственный такт работы узла сети определяется свойствами объекта управления, в частности, его инерционностью. Так, динамика объекта управления задает собственный такт работы узла сети (такт реального времени). Если объект управления - медленный, то значение собственного такта узла сети - высокое (большое), если объект управления - быстрый, то значение собственного такта узла сети - низкое (маленькое), т.е. значение собственного такта узла сети, связанного с медленным объектом управления, больше собственного такта узла сети, связанного с быстрым объектом управления. Если один узел связан с несколькими объектами управления, то на узле сети задается (автоматически или пользователем) наименьший собственный такт реального времени, соответствующий самому быстрому объекту управления.The proper clock cycle of a network node is determined by the properties of the control object, in particular, its inertia. So, the dynamics of the control object sets its own clock cycle of the network node (real-time clock cycle). If the control object is slow, then the value of the host’s own clock cycle is high (large), if the control object is fast, then the value of the host’s clock cycle is low (small), i.e. the value of the node’s own clock associated with the slow control object is greater than the node clock’s own clock associated with the fast control object. If one node is connected to several control objects, then the smallest real-time clock cycle corresponding to the fastest control object is set (automatically or by the user) on the network node.

Значение собственного такта работы узла сети (такт функционирования узла сети) больше значения такта операционной системы, установленной на узле сети.The value of the own clock of the host (the clock of the host) is greater than the clock of the operating system installed on the host.

Так, в частности, собственный такт узла сети является периодом повторения операций (не связанных с передачей данных) узлом сети и в частности определяет частоту (в частности, периодичность), с которой узел сети осуществляет формирование (генерирование и т.д.) данных (данных реального времени) или опрашивает модуль сбора данных 102 (отправляет запрос на получение данных от модуля сбора данных 102) и получает данные реального времени, например, с датчиков, в том числе, например, с использованием модуля сбора данных (модуля сбора данных с датчиков) 102, как описано далее. Также, собственный такт узла сети определяет частоту передачи управляющих команд (управляющих воздействий) на объекты управления, в частности, на исполнительные устройства, связанные с такими объектами управления. На узле сети может быть задано - значения от каких датчиков, переданные в модуль сбора данных 102, будут получены узлом сети от модуля сбора данных 102. Так, например, может быть задано получение значений, регистрируемых определенным набором датчиков, например, относящихся к одному типу датчиков (датчиков температуры, датчиков давления и т.д.), или может быть задано получение не всех значений, регистрируемых датчиками, например, получать значения с первого по десятое, и т.д. Упомянутый модуль сбора данных 102 является устройством обмена информацией, в том числе устройством сетевого обмена (УСО). Модуль сбора данных 102 может включать коммуникационный модуль (модуль связи) или быть связанным с коммуникационным модулем, с использованием которого осуществляется обмен данными между модулем сбора данных 102 и узлом сети, например, узлом сети 205.So, in particular, the own cycle of the network node is the repetition period of operations (not related to data transmission) by the network node and, in particular, determines the frequency (in particular, periodicity) with which the network node generates (generates, etc.) data ( real-time data) or polls the data acquisition module 102 (sends a request for data from the data acquisition module 102) and receives real-time data, for example, from sensors, including, for example, using the data collection module (data collection module from sensors ) 10 2 as described below. Also, the own cycle of the network node determines the frequency of transmission of control commands (control actions) to control objects, in particular, to executive devices associated with such control objects. At the network node, it can be set — the values from which sensors transmitted to the data acquisition module 102 will be received by the network node from the data acquisition module 102. For example, it can be set to obtain values recorded by a specific set of sensors, for example, of the same type sensors (temperature sensors, pressure sensors, etc.), or not all values recorded by sensors can be set, for example, to receive values from the first to tenth, etc. Said data acquisition module 102 is an information exchange device, including a network exchange device (ODR). The data acquisition module 102 may include a communication module (communication module) or be associated with a communication module using which data is exchanged between the data acquisition module 102 and a network node, for example, a network node 205.

Также на узле сети задается (настраивается), например, пользователем, значение такта передачи данных реального времени (такт передачи данных реального времени узла сети), в частности, определяющего частоту, периодичность, с которой осуществляется передача данных узлом сети, например, узлом сети (205), на один или несколько узлов сети (210). Передача данных реального времени узлом сети осуществляется в конце каждого такта передачи данных реального времени узла сети. Передача данных реального времени осуществляется в такт, кратный собственному такту работы узла сети (313). Так, например, если значение собственного такта работы узла сети равно 100 миллисекундам, то значение такта передачи данных реального времени узла сети может быть задано равным 200 миллисекундам, 300 миллисекунда, 1 секунде и т.д. Так, например, значение такта передачи данных реального времени узла сети, например, узла сети 205, может быть задано равным 100 миллисекунд, т.е. каждые 100 миллисекунд узел сети 205 будет отправлять (передавать) данные реального времени, по крайней мере, на один другой узел сети (210) один раз в 100 миллисекунд (или начинать передачу данных реального времени на такие другие узлы сети).Also, at the network node, for example, the user sets (configures) the value of the real-time data transmission cycle (the real-time data transmission cycle of the network node), in particular, which determines the frequency and frequency at which data is transmitted by the network node, for example, the network node ( 205), to one or more network nodes (210). The real-time data transmission by the network node is carried out at the end of each cycle of the real-time data transmission of the network node. Real-time data transmission is carried out in a multiple of the intrinsic clock cycle of a network node (313). So, for example, if the value of the intrinsic clock cycle of a host is 100 milliseconds, then the value of the clock transmission rate of real-time data of a host can be set to 200 milliseconds, 300 milliseconds, 1 second, etc. So, for example, the value of the real-time data transmission cycle of a network node, for example, a network node 205, can be set to 100 milliseconds, i.e. every 100 milliseconds, the host 205 will send (transmit) real-time data to at least one other network node (210) once every 100 milliseconds (or start transmitting real-time data to such other network nodes).

Если узлу сети 210 необходимо передавать данные реального времени, т.е. если, по крайней мере, один из узлов сети (или все узлы сети) 210 также может передавать данные (как узел сети 205), то на узле сети 210 также задается такт передачи данных реального времени узла сети, с которым такой узел сети (210) будет осуществлять передачу данных реального времени с заданным тактом передачи данных реального времени узла сети, по крайней мере, на один другой узел сети, например, на узел сети 205, или любой другой узел сети.If the network node 210 needs to transmit real-time data, i.e. if at least one of the network nodes (or all network nodes) 210 can also transmit data (such as network node 205), then the network node 210 also sets the clock cycle of real-time data transmission of the network node with which such a network node (210 ) will transmit real-time data with a given clock cycle of real-time data transmission of a network node to at least one other network node, for example, to a network node 205, or any other network node.

Значение такта передачи данных реального времени узла сети может быть кратно, в том числе равно, значению собственного такта узла сети. В случае, если значение такта передачи данных реального времени узла сети ошибочно задано пользователем при настройке узла сети меньшим значения собственного такта узла сети, то узел сети автоматически (с использованием программного модуля или программно-аппаратного модуля узла сети) повышает значение такта передачи данных реального времени узла сети до значения, равного значению собственного такта узла сети.The value of the clock cycle of the real-time data transmission of a network node can be a multiple of, including equal to, the value of its own cycle of a network node. If the value of the real-time data transfer cycle of the network node is erroneously set by the user when the network node is set to less than the value of the network's own cycle, the network node automatically (using the software module or the hardware-software module of the network node) increases the value of the real-time data transmission cycle host to a value equal to the value of the own cycle of the host.

На ФИГ. 3 показан примерный вариант узла сети, обменивающегося данными с другим узлом сети. Узел сети 313 передает данные, по крайней мере, на один другой узел сети, например, на узел сети 373 в режиме передачи данных реального времени и в режиме передачи данных архивов данных, причем узел сети 313 передает данные реального времени в двух режимах (подрежимах): в режиме передачи данных реального времени в полном объеме и в режиме передачи только изменившихся данных реального времени (передача по изменениям, передача данных по изменениям).In FIG. 3 shows an exemplary embodiment of a network node communicating with another network node. The network node 313 transmits data to at least one other network node, for example, to the network node 373 in the real-time data transmission mode and in the data archive data transmission mode, the network node 313 transmitting real-time data in two modes (sub-modes) : in real-time data transmission mode in full and in the transmission mode of only changed real-time data (transmission of changes, data transmission of changes).

Под полным объемом данных понимается объем данных, содержащий значения, сохраненные в БД данных реального времени 323 узла сети 313, причем могут быть заданы (пользователем) на узле сети 313 - какие из значений такого полного объема данных передавать узлом сети 313, по крайней мере, на один другой узел сети. Так, например, может быть задана передача одного или нескольких значений (значений параметров), а также передача одного или нескольких диапазонов (интервалов) значений, которые будут переданы на другой узел сети 373 узлом сети 313. В случае, когда значения хранятся в БД данных реального времени 323 узла сети 313, то могут быть заданы номера, содержащие значения (значения переменных, параметров), которые (значения) будут переданы узлом сети 313 на другой узел сети 373. Так, например, могут быть заданы для передачи значения, содержащиеся с первого элемента БД данных реального времени 323 по сотый элемент БД данных реального времени 323 и т.д. При передаче данных в режиме только изменившихся данных также могут быть заданы на узле сети 313 - какие из значений данных передавать узлом сети 313, по крайней мере, на один другой узел сети, причем если указанные ячейки БД данных реального времени 323 не содержат изменившиеся данные (или не содержат данные, т.е. пусты), то содержимое (значения или их отсутствие) таких элементов БД данных реального времени 323 не будет передано на другой узел сети (например, на узел сети 373), как описано в рамках настоящего изобретения.Under the full amount of data is meant the amount of data containing the values stored in the real-time data database 323 of the network node 313, and can be set (by the user) on the network node 313 - which of the values of such a total amount of data to transmit to the network node 313, at least to one other network node. So, for example, the transmission of one or more values (parameter values) can be specified, as well as the transmission of one or more ranges (intervals) of values that will be transmitted to another network node 373 by network node 313. In the case when the values are stored in a data database of real time 323 of the network node 313, then numbers containing values (values of variables, parameters) that (values) will be transmitted by the network node 313 to another network node 373 can be set. For example, the values contained in first element Real-time data DB 323 for the umpteenth element data DB 323 real-time, etc. When data transfer in the mode of only changed data can also be set on the network node 313 - which of the data values should be transmitted by the network node 313 to at least one other network node, and if the indicated cells of the real-time data 323 database do not contain the changed data ( or do not contain data, i.e. are empty), then the content (values or their absence) of such elements of the real-time data database 323 will not be transferred to another network node (for example, to a network node 373), as described in the framework of the present invention.

Узел сети 313 может принимать данные реального времени (в режиме передачи данных реального времени), которые передает узел сети 373, и данные архивов реального времени (в режиме передачи данных архивов данных), которые передает узел сети 373. Передаваемые узлом сети 373 данные реального времени получаются узлом сети 313 и сохраняются в базу данных реального времени узла сети 313, а переданные узлом сети 373 и полученные узлом сети 313 данные архивов данных сохраняются в базу данных полученных архивов данных 353 узла сети 313.The network node 313 can receive real-time data (in the real-time data transfer mode) that the network node 373 transmits and the real-time archive data (in the data archive data transfer mode) that the network node transmits 373. The real-time data transmitted by the network node 373 are received by the network node 313 and stored in the real-time database of the network node 313, and data of the data archives transmitted by the node 373 and received by the network node 313 are stored in the database of received data archives 353 of the network node 313.

Узел сети 313 содержит базу данных (БД) данных реального времени 323, в которую узлом сохраняются данные реального времени, полученные каждый собственный такт узла сети 313, по крайней мере, от одного модуля сбора данных 102 или модуля генерирования данных 303. Так, модуль сбора данных (или группа модулей сбора данных, в частности, несколько модулей сбора данных) передает данные реального времени на узел сети 313, которые записываются узлом в БД данных реального времени (БД РВ) 323, второй модуль сбора данных (или группа модулей сбора данных) передает данные реального времени также на узел сети 313, которые записываются узлом сети 313, например, модулем хранения обработки данных (или модулем хранения данных), в ту же БД РВ 323 и так далее.The network node 313 contains a database (DB) of real-time data 323, in which the node stores the real-time data received each own cycle of the network node 313 from at least one data collection module 102 or data generation module 303. Thus, the collection module data (or a group of data collection modules, in particular, several data collection modules) transmits real-time data to a network node 313, which are recorded by the node in a real-time data database (RV database) 323, a second data collection module (or a group of data collection modules) passes dan real-time data also to the network node 313, which are recorded by the network node 313, for example, by the data processing storage module (or the data storage module), in the same DB RV 323, and so on.

Узел сети 313 содержит также базу данных архивов данных (база данных архивов данных реального времени) 333, в которую осуществляется запись архивов данных (архивов данных реального времени, трендов), содержащих данные реального времени, полученные и/или сгенерированные и т.д. узлом сети 313 и сжатые (запакованные, заархивированные) за несколько собственных тактов узла сети 313, как более подробно описано далее. В такую базу данных архивов данных 333 узлом сети 313 сохраняются данные реального времени, полученные за несколько собственных тактов узла сети 313, по крайней мере, от одного модуля сбора данных 102 или модуля генерирования данных 303.The host 313 also contains a database of data archives (database of real-time data archives) 333, into which data archives (real-time data archives, trends) containing real-time data received and / or generated, etc. are recorded. network node 313 and compressed (packed, archived) for several own clock cycles of network node 313, as described in more detail below. In such a database of data archives 333, the network node 313 stores real-time data obtained for several own clock cycles of the network node 313 from at least one data acquisition module 102 or data generation module 303.

Данные реального времени, полученные, например, от модуля сбора данных 102, от, по крайней мере, одного другого узла сети или сгенерированные (сформированные и т.д.) узлом сети 313 за каждый собственный такт узла сети, сохраняются узлом сети 313 каждый собственный такт узла, в частности, в конце каждого собственного такта узла сети, в БД данных реального времени 323 узла сети 313. Сохраненные в БД данных реального времени (БД РВ) 323 узла сети 313 данные реального времени за предыдущий собственный такт узла сети 313, в частности, в конце предыдущего собственного такта узла сети, перезаписываются данными реального времени, полученными за последний собственный такт узла сети 313, причем в БД РВ 323 сохраняются данные реального времени, полученные за предыдущий собственный такт узла сети 313. В частном случае, БД данных реального времени (323) является кольцевым буфером (циклическим буфером), длина которого, в частности, количество элементов, задается (например, пользователем, в частности, оператором, разработчиком программного обеспечения узла сети и т.д.) на узле сети или удаленно. Упомянутым элементом кольцевого буфера БД данных реального времени 323 является набор значений, полученных на узле сети 313 и сохраненных (записанных) в такую БД РВ за один собственный такт узла сети (узла сети 313). Так, например, элементом кольцевого буфера является строка таблицы базы данных, содержащая ячейки, в которых хранятся значения переменных, полученные от модуля сбора данных (102), от других узлов сети или генерируемые модулем генерирования данных (303). В частном случае, длина кольцевого буфера задается на узле сети (пользователем или автоматически узлом сети) равной двум (2) элементам. В частном случае, данные (значения, полученные от модуля сбора данных 102, других узлов сети и/или модуля генерирования данных 303) реального времени, сохраненные в ячейках одной строки таблицы БД данных реального времени 323 узла сети 313, копируются в ячейки другой строки (расположенной под верхней или над верхней строкой) таблицы БД РВ 323 узла сети 313, и данные реального времени, сохраненные в ячейках верхней строки таблицы БД РВ 323 узла сети 313, перезаписываются данными реального времени, полученными за последний собственный такт узла сети 313. Таким образом, сохраненные данные реального времени за предыдущий собственный такт узла сети 313 перезаписываются сохраняемыми данными реального времени, полученными в текущий собственный такт узла сети 313. БД РВ узла сети 313 хранится в оперативном запоминающем устройстве (ОЗУ) узла сети, в частности, для обработки, сохранения в базу данных архивов данных и для передачи (в такт передачи данных реального времени узла сети 313) на узел сети 373, как описано в рамках настоящего изобретения.Real-time data received, for example, from the data acquisition module 102, from at least one other network node or generated (generated, etc.) by the network node 313 for each own cycle of the network node, is stored by the network node 313 each own the node cycle, in particular, at the end of each own cycle of the network node, in the real-time data database 323 of the network node 313. The real-time data stored in the real-time data database (RV database) 323 of the network node 313 for the previous own cycle of the network node 313, in in particular, at the end of the previous property of a network node’s clock cycle, are overwritten with real-time data received for the last clock cycle of the network node 313, and in the RV 323 database, the real-time data received for the previous clock cycle of the network node 313. is stored. In the particular case, the real-time data database (323) is a circular buffer (cyclic buffer), the length of which, in particular, the number of elements, is set (for example, by a user, in particular, an operator, a software developer of a network node, etc.) on a network node or remotely. The mentioned element of the ring buffer of the real-time data database 323 is a set of values received at the network node 313 and stored (recorded) in such a RV database for one own clock cycle of the network node (network node 313). So, for example, a ring buffer element is a row in a database table containing cells that store the values of variables received from the data acquisition module (102), from other network nodes, or generated by the data generation module (303). In the particular case, the length of the ring buffer is set at the network node (by the user or automatically by the network node) to two (2) elements. In the particular case, the real-time data (values received from the data acquisition module 102, other network nodes and / or the data generation module 303) stored in the cells of one row of the table of the real-time data database 323 of the network node 313 are copied to the cells of another row ( located below the top or top row) of the DB RV 323 table of the network node 313, and the real-time data stored in the cells of the top row of the DB RV 323 table of the network node 313 are overwritten with the real-time data received for the last proper clock cycle of the network node 313. So Thus, the saved real-time data for the previous own clock of the network node 313 is overwritten with the saved real-time data received in the current own clock of the network node 313. The database RV of the network node 313 is stored in the random access memory (RAM) of the network node, in particular, for processing saving to a database of data archives and for transferring (in real-time data transmission cycle of the network node 313) to the network node 373, as described in the framework of the present invention.

Данные реального времени, полученные (или сформированные, сгенерированные и т.д.) узлом сети 313 за каждый собственный такт работы узла сети 313, сохраняются узлом сети 313 каждый собственный такт узла сети 313 и с заданной периодичностью, например, раз в десять собственных тактов работы узла сети 313 сжимаются и сохраняются в долговременной памяти узла 313 и передаются в базу данных архивов данных 333 узла сети 313. База данных архивов данных 333 узла сети 313 хранится в постоянном хранилище данных (например, на устройстве долговременной памяти, в частности, накопителе на жестком магнитном диске или флэш-памяти). Так, данные, характеризующие объект или объекты управления, получаемые, например, от измерительных преобразователей датчиков параметров объекта прямо или путем перерасчета измеренных величин, в том числе рассчитанных управляющих воздействий, а также данные ручного ввода, в том числе команды управления объектом управления и коэффициенты расчетных алгоритмов, располагаются в оперативной памяти локального вычислительного устройства в виде массива кольцевых буферов глубиной не менее, чем два значения - текущее и предыдущее, обновляемые каждый такт.Массив располагается в общей (разделяемой) оперативной памяти вычислительного устройства, чем обеспечивается его доступность для компонентов вычислительного процесса устройства. Синхронизация данных при доступе к массиву обеспечивается последовательным исполнением компонентов вычислительного процесса без программных прерываний. Вышеописанные данные, изменившиеся с предыдущего такта, записываются на устройство долговременной памяти, например, накопитель на жестком магнитном диске или флэш-память. Кроме того, с периодом один раз в несколько десятков тактов, например, раз в сто тактов, происходит запись всех данных на этом такте. Кроме вышеописанных данных на устройство долговременной памяти, например, накопитель на жестком магнитном диске или флэш-память, записываются данные, введенные вручную или рассчитанные на основе архивных данных реального времени, представляющие собой плановые показатели на будущее время, если таковые имеются. Если это задано конфигурированием, при наступлении времени значения планового показателя, оно записывается в текущее значение одного или нескольких элементов массива текущих данных в разделяемой памяти, описанного выше. Вышеописанные данные, изменившиеся с предыдущего такта, накапливаются в массиве в оперативной памяти, который на такте, на котором, как указано выше, записываются все данные, подвергается упаковке, сжатию, например, с помощью алгоритма LZA, и затем записываются на устройство долговременной памяти, например, накопитель на жестком магнитном диске или флэш-память. Таким образом, на вычислительном устройстве (в частности, узле вычислительной сети) создается локальная база данных реального времени, содержащая текущие и архивные данные реального времени. Так, в частности, данные реального времени, полученные узлом сети 313 за каждый собственный такт узла сети 313, сжимаются с использованием одного из известных алгоритмов сжатия данных. Как было сказано выше, данные могут быть заархивированы перед сохранением в базу данных архивов данных 333 узла сети 313. Сжатие (в частности, архивация) данных может осуществляться средствами (например, программным обеспечением) узла сети 313, например, средствами системы управления базы данных архивов данных 333.Real-time data received (or generated, generated, etc.) by the network node 313 for each own clock cycle of the network node 313 is stored by the network node 313 each own clock cycle of the network node 313 and with a given frequency, for example, every ten own clock cycles the operations of the host 313 are compressed and stored in the long-term memory of the host 313 and transferred to the database of data archives 333 of the host 313. The database of data archives 333 of the host 313 is stored in a permanent data storage (for example, on a long-term memory device, in particular and a hard disk drive or flash memory). So, the data characterizing the object or objects of control obtained, for example, from measuring transducers of sensors of the parameters of the object directly or by recalculating the measured values, including the calculated control actions, as well as the data of manual input, including the command to control the object of control and the calculated coefficients algorithms are located in the RAM of the local computing device in the form of an array of ring buffers with a depth of not less than two values - the current and previous, updated to Each clock cycle. The array is located in the shared (shared) RAM of the computing device, which ensures its availability for the components of the computing process of the device. Data synchronization when accessing the array is ensured by the sequential execution of the components of the computing process without software interruptions. The above data that has changed from the previous measure is recorded on a non-volatile memory device, for example, a hard disk drive or flash memory. In addition, with a period of once every several tens of measures, for example, once every hundred measures, all data is recorded on this measure. In addition to the above data, a non-volatile memory device, such as a hard disk drive or flash memory, also records manually entered data or calculated on the basis of real-time archive data, which are planned targets for the future, if any. If this is specified by the configuration, when the time of the value of the planned indicator comes, it is written into the current value of one or more elements of the array of current data in the shared memory described above. The above data that has changed from the previous clock cycle is accumulated in an array in RAM, which, on the clock bar, where, as indicated above, all data is recorded, is compressed, compressed, for example, using the LZA algorithm, and then written to the long-term memory device, for example, a hard disk drive or flash memory. Thus, on the computing device (in particular, the node of the computer network), a local real-time database is created containing the current and archived real-time data. So, in particular, real-time data received by the network node 313 for each own cycle of the network node 313 is compressed using one of the known data compression algorithms. As mentioned above, the data can be archived before being stored in the data archive database 333 of the network node 313. Compression (in particular, archiving) of the data can be carried out by means (for example, software) of the network node 313, for example, by means of the archive database management system data 333.

Упомянутым постоянным хранилищем данных может являться накопитель на жестких магнитных дисках (НЖМД/HDD, англ. hard (magnetic) disk drive) или твердотельный накопитель (SSD, англ. solid-state drive), или гибридный жесткий диск (SSHD, англ. solid-state hybrid drive), или флэш-память и/или любое другое устройство, позволяющее осуществлять, по крайней мере, запись на устройство, чтение с устройства и/или хранение данных на устройстве. Данные в хранилищах данных сохраняются преимущественно в двоичном формате, совпадающем или близком к формату данных в базах текущих данных реального времени.Mentioned permanent data storage can be a hard disk drive (HDD), or a solid-state drive (SSD, English solid-state drive), or a hybrid hard drive (SSHD, English solid- state hybrid drive), or flash memory and / or any other device that allows at least writing to the device, reading from the device and / or storing data on the device. Data in data warehouses are stored primarily in binary format, matching or close to the data format in the real-time current databases.

База данных, в частности, БД данных реального времени (323; 460, ФИГ. 4) узла сети, база данных архивов данных (333; 470, ФИГ. 4) узла сети, база данных полученных архивов данных (353; 480, ФИГ. 4) узла сети и любая другая база данных, описанная в рамках настоящего изобретения, может хранить данные в виде, по крайней мере, одного массива, таблицы или набора связанных или не связанных между собой массивов (причем массивы данных могут являться векторами или матрицами данных), таблиц базы данных, и любых других известных форматах. Описываемая в настоящем изобретении, по крайней мере, одна база данных (например, БД данных реального времени или, в частном случае, база данных архивов данных) является базой данных реального времени (БДРВ, БД РВ), т.е. является базой данных, обработка данных в которой осуществляется с жестким (заданным) тактом реального времени, для чего данные хранятся во временном хранилище данных, в частности, в ОЗУ, узла сети преимущественно в двоичном формате, как наиболее удобном для обработки.A database, in particular, a real-time data database (323; 460, FIG. 4) of a network node, a database of data archives (333; 470, FIG. 4) of a network node, a database of received data archives (353; 480, FIG. 4) a network node and any other database described in the framework of the present invention, can store data in the form of at least one array, table or set of connected or unrelated arrays (and the data arrays can be vectors or data matrices) , database tables, and any other known formats. The at least one database described in the present invention (for example, a real-time data database or, in a particular case, a data archive database) is a real-time database (BDW, RV DB), i.e. is a database, the data processing in which is carried out with a hard (set) real-time clock, for which the data is stored in a temporary data warehouse, in particular in RAM, of a network node, mainly in binary format, as the most convenient for processing.

Как было сказано выше, узел сети 313 может осуществлять передачу данных реального времени в двух режимах (подрежимах): в режиме передачи данных реального времени в полном объеме и в режиме передачи только изменившихся данных реального времени.As mentioned above, the network node 313 can transmit real-time data in two modes (sub-modes): in the mode of transmitting real-time data in full and in the mode of transmitting only changed real-time data.

На ФИГ. 4 показан вариант передачи данных с одного узла сети на другой узел сети предложенной системы.In FIG. 4 shows a variant of data transmission from one network node to another network node of the proposed system.

Если задано конфигурированием узла (вычислительной) сети, данные последнего, текущего такта из массивов, описанных выше, могут передаваться в сеть каждый такт или реже. Данные могут передаваться все или выбранные по перечню, в том числе заданному перечислением или диапазоном номеров (с одного заданного номера в массиве по другой заданный номер в массиве). Такие данные могут передаваться в полном объеме или только изменившиеся с предыдущего такта. При передаче изменившихся данных могут также раз с периодом в несколько десятков тактов передаваться все указные к передачи данные. При этом период передачи данных может не совпадать с периодом записи всех данных в постоянную память, как описано выше.If specified by the configuration of the node (computing) network, the data of the last, current clock from the arrays described above, can be transmitted to the network every clock or less. Data can be transmitted all or selected by the list, including the specified listing or range of numbers (from one given number in the array to another specified number in the array). Such data can be transferred in full or only changed from the previous measure. When transmitting changed data, all data indicated for transmission can also be transmitted once with a period of several tens of clock cycles. In this case, the data transmission period may not coincide with the period of recording all data in read-only memory, as described above.

Передача текущих данных, описанных выше, осуществляется пакетами протоколов нижнего уровня, обеспечивающих передачу без подтверждения и без образования канала связи, например, UDP стека TCP/IP или IPX стека IPX/SPX. Пакет может быть широковещательным, мультивещательным или с указанием конкретного адреса приемного узла сети, однако всегда указывается обобщающий признак, например, номер порта UDP стека TCP/IP или сокет IPX стека IPX/SPX. Такой признак задает виртуальный массив - распределенную базу данных, подобный массиву текущих данных - базе данных - на вычислительном устройстве. В передаваемом пакете обязательно передаются номера параметров (адреса) в распределенной базе данных указанного в пакете признака, содержащихся в пакете текущих данных. Переданные пакеты могут приниматься узлом сети, на котором конфигурированием задан прием пакетов, имеющих указанный признак (номер порта или сокета, например). Для этого признака на принимающем узле сети указывается также соответствие номеров (адресов) данных в виртуальной базе номерам (адресам) в базе текущих данных принимающего узла сети (принимающего вычислительного устройства), в соответствии с которыми данные из принятого пакте помещаются в массив текущих данных. При необходимости конфигурированием может быть также задан фильтр адресов узлов сети, от которых могут приниматься пакеты. Таким образом создается распределенная (облачная) база текущих данных реального времени своя для каждого признака, которых может быть несколько. На узле сети может быть сконфигурирована передача и прием пакетов по одному или нескольким признакам (портам или сокетам). Таким образом создается сводная распределенная (облачная) база текущих данных реального времени, включающая все распределенные (облачные) базы текущих данных реального времени отдельных признаков, которых может быть несколько.Transmission of the current data described above is carried out by packets of lower level protocols that provide transmission without confirmation and without forming a communication channel, for example, the UDP TCP / IP stack or IPX IPX / SPX stack. The packet can be broadcast, multicast, or with a specific address of the receiving network node, however, a generalizing attribute is always indicated, for example, the UDP port number of the TCP / IP stack or the IPX socket of the IPX / SPX stack. Such a feature defines a virtual array — a distributed database, similar to an array of current data — a database — on a computing device. In the transmitted packet, the parameter numbers (addresses) in the distributed database of the characteristic indicated in the packet contained in the current data packet are necessarily transmitted. The transmitted packets can be received by a host on the network, on which the reception of packets having the indicated attribute (port or socket number, for example) is specified by configuration. For this feature, the correspondence of data numbers (addresses) in the virtual database with the numbers (addresses) in the current database of the receiving network node (receiving computing device) is also indicated on the receiving network node, according to which the data from the received packet is placed in the current data array. If necessary, a filter can also be set to filter addresses of network nodes from which packets can be received. Thus, a distributed (cloud) database of current real-time data is created for each feature, of which there can be several. At a network node, packet transmission and reception can be configured according to one or more criteria (ports or sockets). Thus, a consolidated distributed (cloud) real-time current database is created, including all distributed (cloud) real-time current databases of individual features, of which there can be several.

Если задано конфигурированием узла сети, сжатые архивированные данные из оперативной памяти кроме записи на устройство долговременной памяти на том же такте передаются по сети пакетами протоколов нижнего уровня, обеспечивающих передачу без подтверждения и без образования канала связи, например, UDP стека TCP/IP или IPX стека IPX/SPX. В пределах периода передача сжатых архивных данных повторяется не менее одного раза. Вместе со сжатыми архивными данными в первом пакте передаются сведения о присутствующих на узле сети сжатых данных с момента начала их записи на этом узле сети. Если задано конфигурированием узла сети, пакеты со сжатыми архивированными данными другого узла сети принимаются узлом сети и помещаются на устройство долговременной памяти, например, накопитель на жестком магнитном диске или флэш-память, в раздел или каталог, отведенный конфигурированием под данные передающего узла сети. Одновременно с приемом сжатых данных, периодически посылаемых с передающего узла сети, на принимающем узле сети анализируется (узлом сети) пришедшая с ними информация о наличии сжатых архивных данных на передающем узле сети и сравнивается с имеющимися на принимающем узле сети, и, если обнаруживается недостающие, принимающий узел посылает пакет UDP на посылающий узел со списком недостающих сжатых архивированных данных. В ответ посылающий узел наряду с периодически посылаемыми сжатыми архивными данными на принимающий узел, с которого пришел запрос, досылает UDP-пакеты с запрошенными недостающими данными, равномерно распределенные по нескольким периодам придачи, чтобы не перегрузить принимающий узел. В первом пакете такой передачи передается таблица распределения пакетов с недостающим данными по периодам передачи. После окончания последнего периода, указанного в этой таблице, на принимающем узле сети производится проверка полноты сжатых архивированных данных и, при их неполноте по сравнению с передающим узлом сети, опять выдается запрос на передающий узел об их досылки. На узле сети может быть сконфигурирована передача пакетов сжатых архивных данных на несколько узлов сети и прием сжатых архивных данных от нескольких узлов сети. Таким образом создается распределенная база архивных данных реального времени.If specified by the host configuration, compressed archived data from the main memory, in addition to writing to the long-term memory device on the same clock cycle, is transmitted over the network by packets of lower-level protocols that provide transmission without confirmation and without forming a communication channel, for example, the UDP TCP / IP stack or IPX stack IPX / SPX. Within the period, the transmission of compressed archive data is repeated at least once. Along with compressed archive data, the first packet transmits information about the compressed data present on the network node from the moment it began to be recorded on this network node. If specified by the configuration of the network node, packets with compressed archived data of another network node are received by the network node and placed on a non-volatile memory device, for example, a hard disk drive or flash memory, in a partition or directory allocated for configuration under the data of the transmitting network node. Simultaneously with the reception of compressed data periodically sent from the transmitting network node, the information on the presence of compressed archive data at the transmitting network node is analyzed at the receiving network node (node) and compared with the information available at the receiving network node, and if missing data is detected, the receiving node sends a UDP packet to the sending node with a list of missing compressed archived data. In response, the sending node, along with periodically sent compressed archive data to the receiving node from which the request came, sends UDP packets with the requested missing data, evenly distributed over several periods of transmission, so as not to overload the receiving node. In the first packet of such a transmission, a packet distribution table with missing data by transmission periods is transmitted. After the end of the last period indicated in this table, the completeness of compressed archived data is checked at the receiving network node and, when they are incomplete compared to the transmitting network node, a request is sent to the transmitting node for sending them again. At a network node, transmission of compressed archived data packets to several network nodes and reception of compressed archived data from several network nodes can be configured. Thus, a distributed database of real-time archive data is created.

При передаче данных реального времени в режиме передачи данных реального времени в полном объеме все данные реального времени, полученные узлом сети 313 за собственный такт узла сети 313 и сохраненные в БД данных реального времени 323 узла сети 313, передаются на узел сети 373 в такт передачи данных реального времени узла сети 313.When transferring real-time data in real-time data transfer mode in full, all real-time data received by the network node 313 for the own cycle of the network node 313 and stored in the real-time data database 323 of the network node 313 are transmitted to the network node 373 in a data transmission cycle real-time host network 313.

В режиме передачи данных реального времени в полном объеме данные реального времени, полученные узлом сети 313 за последний собственный такт узла сети и сохраненные (в этот же собственный такт узла сети 313) в БД данных реального времени 323 узла сети 313, передаются на узел сети 373 узлом сети из БД данных реального времени узла сети 313 в конце каждого такта передачи данных реального времени узла сети 313, совпадающего или кратно большего собственного такта узла сети 313. Таким образом, узел сети 313 в такт передачи данных узла сети 313 осуществляет чтение значения данных реального времени (массива данных реального времени) из БД данных реального времени 323 узла сети 313 и осуществляет их передачу, по крайней мере, на один узел сети, например, 373. Принятые данные реального времени в полном объеме сохраняются узлом сети 373 в БД данных реального времени узла сети 373 и далее обрабатываются узлом сети 373.In real-time data transfer mode, the real-time data received by the network node 313 for the last own cycle of the network node and stored (in the same own cycle of the network node 313) in the real-time data database 323 of the network node 313 are transmitted to the network node 373 by the network node from the real-time data database of the network node 313 at the end of each clock cycle of the real-time data of the network node 313 that matches or is a multiple of the own clock cycle of the network node 313. Thus, the network node 313 reads to the data cycle of the network node 313 e values of real-time data (real-time data array) from the real-time data database 323 of the network node 313 and transfers them to at least one network node, for example, 373. The received real-time data is fully stored by the network node 373 in The real-time data database of the network node 373 and further processed by the network node 373.

Для передачи данных реального времени в полном объеме последнего собственного такта узла сети 313, сохраненных в БД данных реального времени 323 узла сети 313, узел сети 313 формирует набор данных для передачи узлу сети 373. Такой набор данных реального времени включает все данные реального времени из БД данных реального времени 323 узла сети 313, то есть массив данных за такт узла сети 313, в конце которого осуществляется передача.To transfer real-time data in full, the last own cycle of the network node 313, stored in the real-time data database 323 of the network node 313, the network node 313 generates a data set for transmission to the network node 373. Such a real-time data set includes all real-time data from the database real-time data 323 of the network node 313, that is, an array of data per cycle of the network node 313, at the end of which transmission is performed.

Как было сказано выше, узел сети 313 может передавать, по крайней мере, на один другой узел сети (например, узел сети 373) данные реального времени в режиме передачи только изменившихся с последнего собственного такта узла сети 313 данных реального времени. Для передачи данных реального времени в режиме передачи только изменившихся данных, сохраненных в БД данных реального времени 323 узла сети 313, узел сети 313 формирует набор данных, содержащих изменившиеся данные, (массив изменившихся данных) для передачи на узел сети 373.As mentioned above, the network node 313 can transmit at least one other network node (for example, the network node 373) real-time data in the transmission mode only changed from the last own cycle of the network node 313 real-time data. To transmit real-time data in the transmission mode of only changed data stored in the real-time data database 323 of the network node 313, the network node 313 generates a data set containing the changed data (an array of changed data) for transmission to the network node 373.

Передаваемый в текущий такт передачи данных реального времени узлом сети 313 набор данных только изменившихся данных реального времени содержит сохраненные в БД данных реального времени 323 данные, которые были получены (и/или сгенерированы) узлом сети 313 в последний собственный такт узла сети 313, содержащие значения, которые изменились по сравнению с предыдущим собственным тактом узла сети 313.The data set of only the changed real-time data transmitted to the current real-time data transfer cycle by the network node 313 contains data stored in the real-time data database 323, which were received (and / or generated) by the network node 313 in the last proper cycle of the network node 313, containing values that have changed compared to the previous own cycle of the host network 313.

В частном случае, упомянутый передаваемый набор данных, формируемый узлом сети 313 и содержащий только изменившиеся данные, может содержать сохраненные в БД данных реального времени 323 узла сети 313 данные, которые изменились с последнего такта передачи данных реального времени узла сети.In the particular case, said transmitted data set, generated by the network node 313 and containing only the changed data, may contain data stored in the real-time data database 323 of the network node 313, which has changed since the last clock cycle of the real-time data transmission of the network node.

Для формирования набора изменившихся данных реального времени (набора только изменившихся данных реального времени) узел сети 313 обрабатывает, в частности, анализирует данные реального времени, сохраненные в БД данных реального времени 323 узла сети 313, посредством сравнения сохраненных данных, полученных (сформированных и т.д.) передающим устройством за последний собственный такт передающего устройства с данными реального времени, сохраненными в БД данных реального времени 323, полученными (или сгенерированными) узлом сети 313 за предыдущий (предшествующий последнему собственному такту узла сети 313) собственный такт узла сети 313. Набор изменившихся данных реального времени, являющийся результатом упомянутого сравнения данных, передается узлом сети 313, по крайней мере, на один другой узел сети, например, узел сети 373 в такт передачи данных реального времени узла сети 313. Передача только изменившихся данных (только изменившихся данных реального времени) осуществляется с собственным тактом работы узла сети (313). Такт передачи всех значений может осуществляться реже, но с тактом, кратным собственному такту узла сети (313). Так, например, если значение собственного такта работы узла сети равно 100 миллисекундам, то значение такта передачи всех данных реального времени узла сети может быть задано равным 200 миллисекундам, 300 миллисекундам, 1 секунде и т.д.To form a set of changed real-time data (a set of only changed real-time data), the network node 313 processes, in particular, analyzes the real-time data stored in the real-time data database 323 of the network node 313 by comparing the stored data received (generated, etc.). e.) by the transmitting device for the last proper clock cycle of the transmitting device with the real-time data stored in the real-time data database 323 received (or generated) by the network node 313 from the previous (previous to the last own cycle of the network node 313) the own cycle of the network node 313. The set of changed real-time data resulting from the above comparison of data is transmitted by the network node 313 to at least one other network node, for example, the network node 373 in the transmission cycle real-time data of the host 313. The transmission of only changed data (only changed real-time data) is carried out with the own clock of the host (313). The transmission cycle of all values can be performed less frequently, but with a cycle that is a multiple of the own cycle of the network node (313). So, for example, if the value of the intrinsic clock cycle of a host is 100 milliseconds, then the transmission rate of all the real-time data of the host can be set to 200 milliseconds, 300 milliseconds, 1 second, etc.

В БД архивов данных 333 сохраняются только изменившиеся за такт данные, при этом раз в десятки или сотни тактов сохраняются все данные в конец тактаIn the database of data archives 333, only data that has changed per cycle is stored, and every ten or hundreds of cycles, all data is saved at the end of the cycle

При сохранении узлом сети 313 данных реального времени в БД данных реального времени 323 данные, сохраненные за предыдущий собственный такт узла сети 313, копируются в БД данных реального времени 323 (создается копия данных реального времени за предыдущий собственный такт узла сети 313), а значения данных, с которых была сделана упомянутая копия данных, переписываются изменившимися данными, полученными за последний собственный такт узла сети 313.When the host 313 saves real-time data in the real-time data database 323, the data stored for the previous own clock of the host 313 is copied to the real-time data database 323 (a copy of the real-time data for the previous own clock of the host 313 is created), and the data values , from which the mentioned copy of the data was made, are overwritten by the changed data received for the last own cycle of the network node 313.

Если в БД данных реального времени 323 не содержится сохраненных значений для предыдущего собственного такта узла сети 313, то может быть записано значение (или символ и т.д.), соответствующее отсутствию таких отсутствующих значений, либо если значения сохраняются в ячейках базы данных, то такая ячейка базы данных может оставаться пустой (не заполненной).If the real-time data database 323 does not contain stored values for the previous own cycle of the network node 313, then a value (or symbol, etc.) corresponding to the absence of such missing values can be written, or if the values are stored in the database cells, such a database cell may remain empty (empty).

В режиме передачи только изменившихся данных реального времени сформированные наборы изменившихся данных передаются на узел сети 373 узлом сети из БД данных реального времени 323 узла сети 313 в конце собственного такта узла сети 313.In the transmission mode of only changed real-time data, the generated sets of changed data are transmitted to the network node 373 by the network node from the real-time data database 323 of the network node 313 at the end of the own cycle of the network node 313.

Переданные узлом сети 313 с использованием коммуникационного модуля 363 (и полученные с использованием коммуникационного модуля 485 узлом сети 373 в буфер приема данных узла сети 373) изменившиеся данные реального времени в виде набора данных сохраняются узлом сети 373 из буфера приема данных узла сети 373 в БД данных реального времени узла сети 373 и далее обрабатываются узлом сети 373.The transmitted real-time data transmitted by the network node 313 using the communication module 363 (and received using the communication module 485 by the network node 373 to the data receiving buffer of the network node 373) as a data set is saved by the network node 373 from the data receiving buffer of the network node 373 to the data database real-time host network 373 and then processed by host 373.

Передача данных в режиме передачи только изменившихся данных снижает нагрузку на сеть (компьютерную сеть), а также на буферы приема данных и на узлы сети принимающей стороны, в частности, на центральные процессоры узлов сети, а также интерфейсы, шины и т.д. узлов сети принимающей стороны, а также приводит к снижению необходимого количества места, требуемого для хранения данных на устройствах хранения (данных) узлов сети принимающей стороны, в частности, в связи с тем, что передается узлами сети и принимается узлами сети меньшее количество данных, однако, в частном случае, может снижать надежность доставки данных. При этом введение дополнительно передачи в полном объеме со значительно большим тактом позволяет повысить надежность доставки данных без существенного повышения нагрузки на сетевое оборудование, в частности обеспечивает получение актуальных данных для вновь подключаемых к сети узлов. Однако оптимальная комбинация всех возможных режимов сетевого обмена выбирается исходя из конкретных условий и задач описываемой системы.Data transmission in the transmission mode of only changed data reduces the load on the network (computer network), as well as on the data reception buffers and on the host network nodes, in particular, on the central processors of the network nodes, as well as interfaces, buses, etc. host network nodes, and also leads to a decrease in the required amount of space required for storing data on storage devices (data) of host network nodes, in particular, due to the fact that less data is transmitted by network nodes and received by network nodes, however , in a particular case, may reduce the reliability of data delivery. At the same time, the introduction of additional full-time transmission with a significantly larger clock cycle makes it possible to increase the reliability of data delivery without significantly increasing the load on network equipment, in particular, it provides up-to-date data for newly connected nodes to the network. However, the optimal combination of all possible network exchange modes is selected based on the specific conditions and tasks of the described system.

То есть при передаче данных в режиме передачи только изменившихся данных реального времени узел сети 313 в такт контрольной передачи данных реального времени узла сети 313 передает все данные реального времени в полном объеме (в частности, данные реального времени выбранного диапазона значений), т.е. содержащие, например, набор данных реального времени в полном объеме, полученные узлом сети 313 от модуля сбора данных 102 или сгенерированные модулем генерирования данных 303 за последний собственный такт узла сети 313, а не только изменившиеся данные реального времени, по крайней мере, на один узел сети, например, узел сети 373. Значение (величина) такта контрольной передачи данных узла сети 313 задается на узле 313 и значительно (например, в несколько раз, в несколько десятков раз, несколько сот раз) превышает значение такта передачи изменившихся данных реального времени узла сети 313, причем такт контрольной передачи данных узла сети 313 может быть меньше, равен или больше значения такта передачи архивов данных узла сети 313. Так, например, если для узла сети 313 задан собственный такт узла сети 313 (задано значение собственного такта узла сети 313), равный, например, 50 миллисекундам, соответственно, такт передачи изменившихся данных реального времени узла сети 313 равен также 50 миллисекундам, и такт передачи архивов данных узла сети 313 задан равным 20 секундам, то такт контрольной передачи данных узла сети 313 может быть задан равным, например, 500 миллисекундам или 5 секундам. Значения, содержащиеся в наборе данных, передаваемых в полном объеме при контрольной передаче данных, сохраняются узлом сети 373 в базу данных реального времени узла сети 373.That is, when transmitting data in the transmission mode of only changed real-time data, the network node 313, in time with the control transmission of real-time data of the network node 313, transmits all real-time data in full (in particular, real-time data of a selected range of values), i.e. containing, for example, a complete set of real-time data received by the network node 313 from the data acquisition module 102 or generated by the data generation module 303 for the last own cycle of the network node 313, and not only the changed real-time data by at least one node network, for example, network node 373. The value (value) of the data transfer control cycle of the network node 313 is set on the node 313 and significantly (for example, several times, several tens of times, several hundred times) exceeds the value of the transmission cycle of the changed real time of the host 313, and the clock transmission of the data of the host 313 may be less, equal to or greater than the transmission clock of the data archives of the host 313. So, for example, if the host clock 313 has its own clock cycle (the value of its own the host cycle 313), for example, equal to 50 milliseconds, respectively, the transmission cycle of the changed real-time data of the host 313 is also 50 milliseconds, and the transmission cycle of the data archives of the network node 313 is set to 20 seconds, then the control transmission data cycle the host 313 may be set to, for example, 500 milliseconds or 5 seconds. The values contained in the set of data transmitted in full during the control data transfer are stored by the network node 373 in the real-time database of the network node 373.

В частном случае, перед первой передачей набора изменившихся данных узлом сети 313 может быть передан набор данных реального времени, передаваемый в режиме передачи данных реального времени в полном объеме, а также может быть передан архив данных.In the particular case, before the first transmission of the changed data set by the network node 313, the real-time data set transmitted in full in real-time data transmission mode can be transmitted, and the data archive can also be transmitted.

При передаче данных в режиме только изменившихся данных набор данных в полном объеме передается узлом сети 313 на другой узел сети для того, чтобы такой другой узел сети получил не только изменившиеся данные, содержащиеся в полученном таких другим узлом сети 373 наборе изменившихся данных, но и не изменившиеся данные, например, если такой другой узел сети был добавлено (например, пользователем) в описываемую систему в процессе работы системы. Так, например, по истечении определенного времени после запуска системы (узла сети 313, узла сети 373, по крайней мере, одного модуля сбора данных 102 и т.д.), например, через 5 минут, 10 минут, 1 час и т.д., в систему может быть добавлен новый другой узел сети, на который узлом сети 313 передаются только изменившиеся данные реального времени (и опционально архивы данных) в режиме передачи только изменившихся данных (в режиме передачи данных по изменениям). После добавления нового узла сети в описываемую систему (после установления связи (соединения), в частности, после подключения такого другого узла сети к другим узлам сети, а также модулям сбора данных и т.д., например, после подключения такого узла сети к компьютерной сети, такой как, например, локальная вычислительная сеть (ЛВС)) такой другой узел сети получает только изменившиеся данные реального времени, а не изменившиеся данные реального времени не передаются на такой другой узел сети, так что в БД реального времени такого другого узла сети не содержатся значения всех переменных, значения которых регистрируются связанным с узлом сети 313 модулем сбора данных 102 или модулем генерирования данных 303 и которые передаются узлом сети 313 на узел сети 373. Для того чтобы для упомянутых переменных в БД данных реального времени содержались все значения должно пройти достаточно большое количество времени, величина которого зависит от того, когда именно изменятся все упомянутые значения, т.е. когда обновятся все значения в БД данных реального времени. Чтобы этого избежать узлом сети осуществляется контрольная передача набора данных реального времени (передача данных в режиме контрольной передачи данных), например, один раз в десять секунд, т.е. в такт передачи изменившихся данных, значение которого в частном случае равно такту передачи данных реального времени, причем такт передачи изменившихся данных равен собственному такту работы узла сети (передающей стороны).When transmitting data in the only changed data mode, the data set is completely transmitted by the network node 313 to another network node so that such another network node not only receives the changed data contained in the set of changed data received by such other network node 373, but also Changed data, for example, if such another network node was added (for example, by the user) to the described system during the operation of the system. So, for example, after a certain time after starting the system (network node 313, network node 373, at least one data acquisition module 102, etc.), for example, after 5 minutes, 10 minutes, 1 hour, etc. e., a new other network node can be added to the system to which only changed real-time data (and optional data archives) are transmitted by network node 313 in the transmission mode of only changed data (in the transmission of data on changes). After adding a new network node to the described system (after establishing a connection (connection), in particular, after connecting such another network node to other network nodes, as well as data acquisition modules, etc., for example, after connecting such a network node to a computer network, such as, for example, a local area network (LAN), such another network node receives only changed real-time data, and not changed real-time data is not transmitted to such another network node, so in a real-time database of such another node with It does not contain the values of all variables whose values are recorded by the data acquisition module 102 or data generation module 303 connected to the network node 313 and which are transmitted by the network node 313 to the network node 373. In order for the variables mentioned in the real-time data base to contain all values pass a sufficiently large amount of time, the magnitude of which depends on when exactly all the mentioned values change, i.e. when all values in the real-time data database are updated. To avoid this, the network node performs control transmission of a real-time data set (data transmission in the control data transmission mode), for example, once every ten seconds, i.e. to the cycle of transmission of changed data, the value of which in a particular case is equal to the cycle of transmission of real-time data, and the cycle of transmission of changed data is equal to the own cycle of the network node (transmitting side).

Также, упомянутый набор данных реального времени (в режиме передачи данных в полном объеме или в режиме передачи только изменившихся данных, в том числе в режиме контрольной передачи данных), передаваемый одним узлом сети 313 на другой узел сети 373, может содержать статус проверки достоверности данных, а также время порождения передаваемых данных (штамп времени, временную метку, от англ. timestamp), причем временем порождения данных является момент времени, в который были сгенерированы узлом сети 313 данные реального времени или момент времени, в который были получены данные реального времени узлом сети 313, например, от модуля сбора данных 102. Также, упомянутый набор данных, передаваемый одним узлом сети (313), по крайней мере, на один другой узел сети (373), может содержать значение таймаута (тайм-аута, от англ. timeout), т.е. времени, в течение которого другой узел сети 373 будет считать переданные данные валидными, а после истечения которого считать переданные данные невалидными, в частности, устаревшими.Also, the said real-time data set (in the data transmission mode in full or in the transmission mode of only changed data, including the control data transmission mode) transmitted by one network node 313 to another network node 373 may contain data validation status , as well as the time of generation of the transmitted data (time stamp, time stamp, from the English timestamp), and the time of generation of the data is the point in time at which the real-time data or the point in time was generated by the network node 313, in which received real-time data by the network node 313, for example, from the data acquisition module 102. Also, the said data set transmitted by one network node (313) to at least one other network node (373) may contain a timeout value ( timeout, from English timeout), i.e. the time during which another node in the network 373 will consider the transmitted data to be valid, and after which the transferred data will be considered invalid, in particular, outdated.

На принимающем узле сети 373 пришедший в пакте с данными таймаут используется для проверки их достоверности, то есть если значения данных, входящих в принятый пакет, не обновляются с момента его прихода в течение времени таймаута, то они считаются недостоверными до следующего их обновления.At the receiving network node 373, the timeout that came in the data packet is used to verify its authenticity, that is, if the values of the data included in the received packet are not updated from the moment it arrives during the timeout, then they are considered invalid until the next update.

Передаваемые наборы данных (в полном объеме или только изменившиеся) реального времени перед передачей узлом сети 313 на узел сети 373 поступают в базу текущих данных и обрабатываются аналогично данным базы текущих данных 323 узла 313.The transmitted real-time data sets (in full or only changed) before being transmitted by the network node 313 to the network node 373 enter the current database and are processed similarly to the data of the current database 323 of the node 313.

Для такта передачи данных реального времени (в полном объеме или только изменившихся данных) узла сети 313, в частности, набора данных реального времени, на узле сети 313 может быть задано отношение времени передачи данных реального времени узла сети 313 к такту передачи данных реального времени узла сети 313, которое позволяет настраивать на узле сети 313 время, в течение которого осуществляется передача данных реального времени узлом сети 313, по крайней мере, на один узел сети 373. Таким образом, в процессе передачи данных узлом сети 313 осуществляется «размазывание» передаваемых пакетов данных по времени передачи, так что последний передаваемый пакет данных будет передан не раньше, чем истечет время передачи данных. Так, например, если значение такта передачи данных реального времени узла сети 313 задано равным 100 миллисекундам и отношение времени передачи данных реального времени к такту передачи данных реального времени узла сети 313 задано равным 75 процентам, то узел сети 313 каждые 100 миллисекунд (каждый такт передачи данных реального времени) будет передавать данные соответствующего признака (порта или сокета) в течение 75 миллисекунд.For the cycle of real-time data transmission (in full or only changed data) of the network node 313, in particular, the real-time data set, the ratio of the real-time data transmission time of the network node 313 to the real-time data transmission cycle of the node can be set on the network node 313 network 313, which allows you to configure the time on the network node 313 during which real-time data is transmitted by the network node 313 to at least one network node 373. Thus, in the process of data transmission by the network node 313, There is a “smearing” of the transmitted data packets by the transmission time, so that the last transmitted data packet will not be transmitted before the data transmission time has elapsed. So, for example, if the value of the real-time data transmission clock of the network node 313 is set equal to 100 milliseconds and the ratio of the real-time data transmission clock to the real-time data transmission clock of the network node 313 is set to 75 percent, then the network node 313 is every 100 milliseconds (each transmission cycle real-time data) will transmit data of the corresponding attribute (port or socket) for 75 milliseconds.

Набор данных (содержащий все или только изменившиеся данные реального времени) реального времени, а также описанный в рамках настоящего изобретения архив данных, может быть передан узлом сети 313, по крайней мере, одним сетевым пакетом данных (определенным образом оформленным сегментом данных), например, UDP/IP-пакетом, IPX-пакетом и т.д. Задание отношения времени передачи данных реального времени узла сети 313 к такту передачи данных реального времени узла сети 313 позволяет распределять передачу набора данных реального времени по всему диапазону времени, отведенному узлу сети 313 на передачу данных реального времени (например, 75 миллисекунд из примера выше), т.е. осуществляется «размазывание» пакетов по времени, отведенному на каждый такт передачи данных реального времени узла сети 313, так что данные реального времени (набор данных реального времени) передаются узлом сети 313 на узел сети 373 (более) равномерно, что позволяет избежать переполнения буфера приема данных (в которые передаются наборы данных, которые далее из буфера приема данных сохраняются, по крайней мере, в одну базу данных узла сети 373, как описано в рамках настоящего изобретения) узла сети 373 и промежуточного сетевого оборудования (например, маршрутизаторов, шлюзов, серверов и т.д.). Буфер приема данных может являться буфером приема данных коммуникационного модуля (коммуникационного модуля 485 узла сети 373, коммуникационного модуля 363 узла сети 313), связанного с узлом сети (с использованием проводного соединения или беспроводного соединения), или, являющегося частью узла сети, или может являться частью области памяти оперативного запоминающего устройства или постоянного запоминающего устройства (например, накопителя на жестких магнитных дисках, флеш-памяти и т.д.) узла сети и, в частности, являться частью операционной системы узла сети.A real-time data set (containing all or only changed real-time data), as well as a data archive described in the framework of the present invention, can be transmitted by a network node 313 with at least one network data packet (in a certain way designed data segment), for example, UDP / IP packet, IPX packet, etc. Setting the ratio of the real-time data transmission time of the network node 313 to the real-time data transmission cycle of the network node 313 allows you to distribute the transmission of the real-time data set over the entire time range allocated to the network node 313 for real-time data transmission (for example, 75 milliseconds from the example above), those. packets are “smeared” by the time allotted for each real-time data transmission cycle of the network node 313, so that the real-time data (real-time data set) is transmitted by the network node 313 to the network node 373 (more) uniformly, which avoids overflow of the receive buffer data (to which data sets are transmitted, which are then stored from the data reception buffer in at least one database of the network node 373, as described in the framework of the present invention) of the network node 373 and intermediate network equipment (e.g. example, routers, gateways, servers, etc.). The data reception buffer may be a data reception buffer of a communication module (communication module 485 of the network node 373, communication module 363 of the network node 313) connected to the network node (using a wired connection or wireless connection), or which is part of the network node, or it may be part of the memory area of random access memory or read-only memory (for example, a hard disk drive, flash memory, etc.) of a network node and, in particular, be part of an operating room with host system systems.

Перед передачей набора данных реального времени (включающем также дополнительные данные, в том числе служебные данные, метаданные и т.д.), в частности, сетевыми пакетами данных узлом сети 313 может быть дополнительно передан специальный синхропакет (пакет синхронизации). Упомянутыми дополнительными данными может являться такт передачи данных реального времени узла сети 313, собственный такт узла сети 313, установленное на узле сети 313 время, таймаут(ы) и т.д., а также другие параметры и настройки узла сети 313, модулей узла сети 313, в частности, как описано в рамках настоящего изобретения. Упомянутый синхропакет содержит информацию о следующих параметрах: текущем времени узла сети 313 (системном времени), количестве пакетов с данными, которые будут переданы узлом сети 313 вслед за таким синхропакетом, период времени, в течение которого будет осуществлена полная передача данных (всех пакетов с данными) и задержке времени между передачей такого синхропакета и передачей первого пакета с данными. Упомянутые параметры задаются (пользователем) на узле сети 313. В частном случае, узел сети 373 приостанавливает выполнение операций (функций), не относящихся к получению данных реального времени (например, приостанавливает передачу данных, опрос подключенных к нему модулей и т.д.) на время (период времени), в течение которого будет осуществлена полная передача данных (всех пакетов данных), указанное в синхропакете. На узле сети 373 может быть включен или отключен фильтр синхропакетов, определяющий необходимость узлом сети 373 обрабатывать синхропакет, отправленный узлом сети 313 на узел сети 373. Если фильтр синхропакетов включен, то узел сети 373 будет игнорировать синхропакет, принятый (полученный) от узла сети 313, причем упомянутые пакеты будут приниматься узлом сети 373.Before transmitting the real-time data set (including also additional data, including overhead data, metadata, etc.), in particular, network packets 313 may additionally transmit a special sync packet (synchronization packet). Mentioned additional data may be a real-time data transmission cycle of a network node 313, own cycle of a network node 313, time set on a network node 313, timeout (s), etc., as well as other parameters and settings of the network node 313, modules of the network node 313, in particular as described in the framework of the present invention. The mentioned sync packet contains information on the following parameters: the current time of the network node 313 (system time), the number of data packets that will be transmitted by the network node 313 after such a sync packet, the period of time during which the complete transmission of data (all data packets ) and the time delay between the transmission of such a sync packet and the transmission of the first data packet. The mentioned parameters are set (by the user) on the network node 313. In the particular case, the network node 373 suspends the execution of operations (functions) that are not related to the receipt of real-time data (for example, it suspends the transmission of data, interrogation of modules connected to it, etc.) for the time (period of time) during which the complete transmission of data (all data packets) will be carried out, indicated in the sync packet. At the network node 373, the sync packet filter can be enabled or disabled, which determines the need for the network node 373 to process the sync packet sent by the network node 313 to the network node 373. If the sync packet filter is enabled, the network node 373 will ignore the sync packet received (received) from the network node 313 wherein said packets will be received by the network node 373.

Переданное в синхропакте время может использоваться для синхронизации времени узлов сети. Для этого на узле сети 313 задается передача данных в режиме широковещания хотя бы для одного параметра по определенному порту или сокету, а на синхронизируемых узлах сети - такой порт или сокет открывается на прием. После начала передачи данных узлом сети 313 время на синхронизируемых узлах сети будет соответствовать времени на узле сети 313 (совпадать с временем на узле сети 313), но в частном случае время на синхронизируемых узлах сети может отличаться на несколько миллисекунд.The time transmitted in the sync pact can be used to synchronize the time of network nodes. For this purpose, data transmission in broadcast mode for at least one parameter on a specific port or socket is specified on the network node 313, and such a port or socket is opened for reception on synchronized network nodes. After the start of data transmission by the host 313, the time on the synchronized network nodes will correspond to the time on the host 313 (coincide with the time on the host 313), but in the particular case, the time on the synchronized network nodes may differ by a few milliseconds.

Также, в дополнение к передаче данных реального времени узлом сети 313 может осуществляться передача данных в режиме передачи архивов данных за определенный период времени, равный периоду, с которым осуществляется их сжатие при архивировании. Узел 313 осуществляет одновременно с записью в долговременную память заархивированных в ОЗУ данных другим узлам в сети в соответствии с заданной конфигурацией.Also, in addition to real-time data transmission by the network node 313, data can be transmitted in the data archive transmission mode for a certain period of time equal to the period with which they are compressed during archiving. The node 313 performs simultaneously with the recording in the long-term memory of the data archived in RAM to other nodes in the network in accordance with the specified configuration.

Также, первый пакте с архивом данных, передаваемый узлом сети 313 на узел сети 373, содержит информацию о содержании архива данных реального времени 333 узла 313. Принимающий узел (373) сравнивает полученную и информацию о содержании архива узла 313 с имеющимися у него архивными данными с узла 313 и, при их недостаче по сравнению с полученной в пакете информацией, посылает на узел 313 пакет с запросом на посылку недостающих данных. Далее, узел сети 313 осуществляет передачу архивов данных, согласно информации (в частности, идентификаторам) о не полученных узлом сети 373 архивах данных, содержащейся в переданном узлом сети 373 на узел 313 запросе, причем передаваться архивы данных узлом сети 313 могут, как описано в рамках настоящего изобретения, в том числе, с передачей повторных (копий) архивов данных на узел сети 373.Also, the first data archive packet transmitted by the network node 313 to the network node 373 contains information about the contents of the real-time data archive 333 of node 313. The receiving node (373) compares the received and information about the contents of the archive of node 313 with the archive data it has with node 313 and, if they are lacking in comparison with the information received in the packet, sends to the node 313 a packet with a request to send the missing data. Further, the network node 313 transmits data archives, according to information (in particular, identifiers) about the data archives not received by the network node 373 contained in the request sent by the network node 373, and data archives can be transmitted by the network node 313, as described in within the framework of the present invention, including the transfer of repeated (copies) of data archives to a network node 373.

Передаваемый узлом сети 313 архив данных из базы данных архивов данных 333 узла сети 313 может быть передан несколькими архивами (подархивами, субархивами), в том числе в формате многотомного архива, т.е. узел сети 313 может создать из одного архива данных несколько архивов данных (совокупность которых содержит данные, идентичные данным исходного архива данных), причем размер подархивов может быть задан на узле сети 313.The data archive transmitted by the network node 313 from the data archive database 333 of the network node 313 can be transferred by several archives (gifts, subarchives), including in the multi-volume archive format, i.e. the network node 313 can create several data archives from one data archive (the totality of which contains data identical to the data of the original data archive), and the size of the gifts can be set on the network node 313.

Передаваемый узлом сети 313 архив данных (или подархивы данных) может быть передан узлом сети 313, по крайней мере, одним сетевым пакетом данных.The data archive (or data present) transmitted by the network node 313 can be transmitted by the network node 313 with at least one network data packet.

Узел сети 313 передает, по крайней мере, на один узел сети 373 архив данных в такт передачи архивов данных узла сети 313, в частности, передает основной архив данных (первый архив данных такта передачи архивов данных), после чего осуществляет передачу этого же архива данных, в частности осуществляет повторную передачу (копии) архива данных (повторный архив данных) на узел сети 373 (или несколько узлов сети). В частном случае, на узел сети 373 узлом сети 313 может быть отправлено два повторных архива данных, что, в частности, достаточно для получения узлом сети 373 хотя бы одного архива данных (основного или повторного).The network node 313 transmits, at least to one network node 373, a data archive to the cycle of transmitting data archives of the network node 313, in particular, transfers the main data archive (the first data archive of the transmission cycle of the data archives), after which it transfers the same data archive In particular, it carries out a retransmission (copy) of a data archive (repeated data archive) to a network node 373 (or several network nodes). In the particular case, two repeated data archives can be sent to the network node 373 by the network node 313, which, in particular, is sufficient to receive at least one data archive (main or repeated) by the network node 373.

При получении узлом сети 373, по крайней мере, одного архива данных, т.е. архива данных, переданного в такт передачи архивов данных узла сети 313 или одного из повторных архивов данных, узел сети 373 игнорирует остальные архивы данных, в частности, основной архив данных и/или повторные архивы данных, являющиеся копией основного архива данных, в частности, не обрабатывает их, что снижает нагрузку на центральный процессор узла сети 373, а также, в частном случае, не приводит к переполнению буфера приема данных узла сети 373.Upon receipt by the network node 373 of at least one data archive, i.e. of a data archive transferred to the cycle of transferring data archives of the network node 313 or one of the repeated data archives, the network node 373 ignores the remaining data archives, in particular, the main data archive and / or repeated data archives, which are a copy of the main data archive, in particular, processes them, which reduces the load on the central processor of the network node 373, and also, in the particular case, does not lead to overflow of the data reception buffer of the network node 373.

Как описано в рамках настоящего изобретения, передача данных (архивов данных, а также наборов данных реального времени в полном объеме или изменившихся данных, включая контрольную передачу данных реального времени) узлами сети может осуществляться в режиме широковещания (широковещательного канала, от англ. broadcasting) или в режиме направленной передачи данных. В режиме широковещания передача данных осуществляется, по крайней мере, одним узлом сети, например, узлом сети (205, ФИГ. 2), сразу на несколько других узлов сети (210, ФИГ. 2), а также на тот же узел сети (205, ФИГ. 2). В режиме направленной передачи данных передача данных осуществляется одним узлом сети, например, узлом сети (205, ФИГ. 2), по крайней мере, на один другой узел сети (201, ФИГ. 2), а также на тот же узел сети (205, ФИГ. 2).As described in the framework of the present invention, the transmission of data (data archives, as well as real-time data sets in full or changed data, including real-time control data transmission) by network nodes can be carried out in broadcast mode (broadcast channel, from the English broadcasting) or in directional data transfer mode. In broadcast mode, data is transmitted by at least one network node, for example, a network node (205, FIG. 2), immediately to several other network nodes (210, FIG. 2), as well as to the same network node (205 FIG. 2). In the directional data transmission mode, data is transmitted by one network node, for example, a network node (205, FIG. 2), to at least one other network node (201, FIG. 2), as well as to the same network node (205 FIG. 2).

Передача данных (наборов данных реального времени и архивов данных) может осуществляться с использованием протокола IPX (от англ. internetwork packet exchange - межсетевой обмен пакетами) или протокола UDP/IP (от англ. User Datagram Protocol - протокол пользовательских датаграмм, IP - от англ. Internet Protocol - дословно межсетевой протокол, маршрутизируемый протокол сетевого уровня стека TCP/IP), один из которых выбирается (пользователем) на узле сети 313 (и на принимающей стороне, узлах сети, на которые передаются данные узлом сети 313, например, на узле сети 373).Data (real-time datasets and data archives) can be transmitted using the IPX protocol (from the English internetwork packet exchange) or the UDP / IP protocol (from the English User Datagram Protocol - the protocol of user datagrams, IP - from the English Internet Protocol - literally, the Internet Protocol, the routed network protocol of the TCP / IP stack), one of which is selected (by the user) on the network node 313 (and on the receiving side, network nodes to which data is transmitted by the network node 313, for example, on the node network 373).

На узле сети 313 задается, по крайней мере, один адрес назначения (основной адрес сети), в частности, например, в случае UDP/IP - IP-адрес(а) узла сети, на который передаются данные, или в случае IPX указывается сеть назначения (получения) и узел (узлы) сети, на который передаются данные.At least one destination address (main network address) is specified on the network node 313, in particular, for example, in the case of UDP / IP, the IP address (a) of the network node to which the data is transmitted, or in the case of IPX, the network is indicated destination (receipt) and node (s) of the network to which data is transmitted.

Так, при указании адреса назначения могут быть указаны следующие значения IP-адресов для UDP/IP:So, when specifying the destination address, the following IP address values for UDP / IP can be specified:

- 198.10.10.11 (или 198.20.30.111, или 198.15.31.211 и т.д.) - передать данные узлу сети по адресу 198.10.10.11 (узлу сети с IP-адресом 198.10.10.11 (198.20.30.111, 198.15.31.211 и т.д.), т.е. осуществляется направленная передача данных такому узлу сети;- 198.10.10.11 (or 198.20.30.111, or 198.15.31.3111, etc.) - transfer data to a network node at the address 198.10.10.11 (network node with an IP address 198.10.10.11 (198.20.30.111, 198.15.31.211, etc.) .d.), i.e., directional data transmission to such a network node is carried out;

- последний октет IP-адреса может быть указан равным «255», например, для IP-адреса может быть указано значение «198.10.10.255» (или «198.20.30.255», или «198.15.31.255» и т.д.) - передать данные всем узлам сети, IP-адрес которых имеет вид «198.10.10.*» (или «198.20.30.* », или «198.15.31.* » и т.д.), где значение «*« лежит в диапазоне от «1» до «254», т.е. такой IP-адрес является широковещательным IP-адресом, т.е. осуществляется широковещательная передача данных (режим широковещания);- the last octet of the IP address can be set equal to "255", for example, for the IP address the value "198.10.10.255" (or "198.20.30.255", or "198.15.31.255", etc.) can be indicated - transmit data to all network nodes whose IP address is of the form “198.10.10. *” (or “198.20.30. *”, or “198.15.31. *”, etc.), where the value “*” lies in the range from “1” to “254”, i.e. such an IP address is a broadcast IP address, i.e. broadcast data is being transmitted (broadcast mode);

- «198.10.255.255» (или «198.15.255.255», или «198.35.255.255») - передать данные всем узлам сети, адрес которых имеет вид «198.10.*.* », т.е. осуществляется широковещательная передача данных;- “198.10.255.255” (or “198.15.255.255”, or “198.35.255.255”) - transmit data to all network nodes whose address is of the form “198.10. *. *”, I.e. broadcast data is being transmitted;

- «127.0.0.1» - передавать данные на этот же узел сети.- “127.0.0.1” - transmit data to the same network node.

Для IPX на узле сети задается сеть назначения и узел (узлы) сети, на который передаются данные. Если сеть назначения не указана («00000000»), то наборы данных (в виде пакетов данных) передаются узлом сети 313 в локальный сегмент сети. Если в качестве адреса назначения указывается «FFFFFFFFFFFF», наборы данных (в виде пакетов данных) предназначаются всем узлам сети данного сегмента (которому принадлежит узел сети 313).For IPX at the network node, the destination network and the network node (s) to which data is transmitted are specified. If the destination network is not specified ("00000000"), then the data sets (in the form of data packets) are transmitted by the network node 313 to the local network segment. If “FFFFFFFFFFFF” is specified as the destination address, the data sets (in the form of data packets) are intended for all network nodes of this segment (to which the network node 313 belongs).

Кроме упомянутых адресов сети (основных адресов сети, адресов назначения) на узлах сети передающей стороны могут быть заданы дополнительные (резервные) адреса сети, по которым узлами сети передающей стороны будут переданы данные одновременно с передачей данных по основному адресу, что является эффективным средством резервирования передачи данных. В случае задания в качестве резервных для основного адреса передачи, данные будут продублированы соответствующее количество раз, что, в частности, используется в рамках настоящего изобретения для предотвращения потерь данных (в частности, наборов данных или пакетов данных наборов данных) на неустойчивых линиях связи. Также дополнительные (резервные) адреса сети задаются для передачи данных, когда данные не могут быть переданы в режиме широковещания или если узлы сети, на которые необходимо передать данные, находятся в сети (компьютерной сети) отличной от сети, которой принадлежит узел сети передающей стороны, или если узлы сети принадлежат разным сетям, в том числе, если одна из сетей, которой принадлежит, по крайней мере, один узел принимающей стороны, отлична от сети узла сети передающей стороны.In addition to the mentioned network addresses (main network addresses, destination addresses), additional (backup) network addresses can be set at the nodes of the network of the transmitting side, through which the nodes of the network of the transmitting side will transmit data simultaneously with data transmission to the main address, which is an effective means of reservation of transmission data. If specified as backup for the primary transmission address, the data will be duplicated an appropriate number of times, which, in particular, is used in the framework of the present invention to prevent data loss (in particular, data sets or data packets of data sets) on unstable communication lines. Also, additional (reserve) network addresses are set for data transmission when data cannot be transmitted in broadcast mode or if the nodes of the network to which data is to be transmitted are on a network (computer network) other than the network to which the transmitting side network node belongs, or if the nodes of the network belong to different networks, including if one of the networks to which at least one node of the receiving side belongs is different from the network of the node of the network of the transmitting side.

На узле сети 313 задаются порты в случае UDP (или сокеты в случае IPX), на которые будет осуществляться передача данных (наборов данных реального времени и архивов данных). Так, для каждого передаваемого набора данных или архива данных могут быть заданы порты, на которые будут отправлены узлом сети 313 такие наборы данных или архивы данных.On host 313, ports are specified in the case of UDP (or sockets in the case of IPX) to which data will be transferred (real-time data sets and data archives). So, for each transmitted data set or data archive, ports can be specified to which such data sets or data archives will be sent by network node 313.

Номера портов в случае UDP (или сокетов в случае IPX), на которые отправляются наборы данных или архивы данных, всегда присутствуют в стандартных заголовках UDP (IPX) пакетов данных, содержащих наборы данных или архивы данных, которые передаются передающей стороной, например, узлом сети 313, на принимающую сторону (по крайней мере, на один узел сети).The port numbers in the case of UDP (or sockets in the case of IPX) to which data sets or data archives are sent are always present in the standard UDP (IPX) headers of data packets containing data sets or data archives that are transmitted by the transmitting side, for example, a network node 313, on the receiving side (at least one network node).

На принимающей стороне, по крайней мере, на одном узле сети, получающем данные (реального времени или архивы данных), задаются порты (или сокеты), от которых ожидаются пакеты с данными принимающей стороной и соответствие номеров в сетевой виртуальной базе данных реального времени базе данных реального времени на принимающей машине. Таким образом, узлы сети принимающей стороны могут принимать только те данные, которые необходимо получить (и, в частности, обработать), без необходимости получать все данные, что снижает нагрузку на буферы приема данных (в частности, не требует записи в них полученных данных) и на узлы сети принимающей стороны, в частности, на центральные процессоры узлов сети, а также на интерфейсы, шины и т.д. узлов сети принимающей стороны, а также приводит к снижению места на устройствах хранения узлов сети принимающей стороны.On the receiving side, at least on one network node receiving data (real-time or data archives), the ports (or sockets) are set, from which packets with data are expected by the receiving side and the correspondence of numbers in the virtual network real-time database to the database real time on the host machine. Thus, the host network nodes can only receive data that needs to be received (and, in particular, processed), without the need to receive all the data, which reduces the load on the data reception buffers (in particular, it does not require recording the received data in them) and to host nodes of the host, in particular, to the central processors of the host nodes, as well as to interfaces, buses, etc. host network nodes, and also leads to a decrease in storage space on host devices of host nodes.

Передаваемые узлом сети 313 данные (реального времени в полном объеме или только изменившиеся и/или данные архивов), в частности в виде наборов данных или архивов данных передаются на узел сети 373 в упомянутый выше буфер приема данных узла сети 373. Далее из буфера приема данных (буфер приема) узла сети 373 полученные от узла сети 313 данные реального времени сохраняются узлом сети 373 в БД данных реального времени узла сети 373, а полученные узлом сети 373 архивы данных сохраняются в базу данных полученных архивов данных 480 узла сети 373. Размер буфера приема данных узла сети (например, узла сети 373 или узла сети 313) является размером буфера, зарезервированного для временного хранения принимаемых данных от одного и более узлов сети (например, узла сети 313), причем размер буфера приема данных каждого из узлов сети задается пользователем на соответствующем узле или удаленно. Буфер приема данных может быть реализован, по крайней мере, одним (промежуточным) хранилищем данных, например, по крайней мере, одной областью памяти оперативного запоминающего устройства узла сети. Буфер приема данных может состоять, по крайней мере, из двух буферов приема данных, например, буфера приема данных реального времени узла сети (например, узла сети 373) и буфера приема данных архивов данных узла сети (например, узла сети 373). В частном случае, данные реального времени могут передаваться узлом сети 313 на узел сети 373 и помещаться средствами узла сети 373 в буфер приема данных реального времени узла сети 373, а данные архивов данных могут передаваться узлом сети 313 на узел сети 373 и помещаться средствами узла сети 373 в буфер приема данных архивов данных узла сети 373. Полученные узлом сети 373 данные реального времени из буфера приема данных реального времени сохраняются узлом сети в БД данных реального времени узла сети 373, а полученные узлом сети 373 данные архива данных сохраняются узлом сети в базу данных полученных архивов данных 480 узла сети 373. Вышеописанные буферы могут организовываться средствами сетевого обмена операционной системы, например, Windows или Linux, размер которого может быть задан по умолчанию и, при необходимости, изменяться пользователем.The data transmitted by the network node 313 (in real time in full or only changed and / or archive data), in particular in the form of data sets or data archives, are transmitted to the network node 373 to the above data reception buffer of the network node 373. Further, from the data reception buffer (receive buffer) of the network node 373, the real-time data received from the network node 313 are stored by the network node 373 in the real-time data database of the network node 373, and the data archives received by the network node 373 are stored in the database of received data archives 480 of the network node 373. The buffer size is the data node of the network node (for example, node 373 or node 313) is the size of the buffer reserved for temporary storage of received data from one or more nodes of the network (for example, node 313), and the size of the data reception buffer of each of the network nodes is set by the user on the appropriate node or remotely. The data reception buffer may be implemented by at least one (intermediate) data storage, for example, by at least one memory area of the network storage device. The data reception buffer may consist of at least two data reception buffers, for example, a real-time data reception buffer of a network node (eg, network node 373) and a data reception buffer of data from the network node archives (eg, network node 373). In the particular case, real-time data can be transmitted by network node 313 to network node 373 and placed by means of network node 373 into the real-time data reception buffer of network node 373, and data archive data can be transmitted by network node 313 to network node 373 and placed by network node means 373 to the data reception buffer of the host data archive data 373. The real-time data received by the host 373 from the real-time data reception buffer is stored by the host in the real-time data database of the network node 373, and the data archive data received by the host 373 from network node stored in the database data files received 480 of the node 373. The above buffers may be organized by means of a network operating system of exchange, for example, Windows or Linux, which size can be set by default, and the user to change if necessary.

Размер упомянутого сетевого пакета данных, в частности, максимальный размер сетевого пакета данных, может быть задан (на одном из узлов сети), например, пользователем, причем максимальный размер сетевого пакета данных задается в соответствии с максимальным размером, поддерживаемым оборудованием на маршруте передачи данных, так что для передачи большого количества данных максимальный размер сетевого пакета данных устанавливается максимально возможным.The size of said network data packet, in particular, the maximum size of a network data packet, can be set (on one of the network nodes), for example, by a user, and the maximum size of a network data packet is set in accordance with the maximum size supported by the equipment on the data transmission route, so that to transfer a large amount of data, the maximum size of the network data packet is set to the maximum possible.

На ФИГ. 5 показан примерный вариант описываемой системы с подключенными к узлу сети исполнительными устройствами.In FIG. 5 shows an exemplary embodiment of the described system with actuators connected to a network node.

Как было сказано выше, значения, сохраненные в базу данных реального времени и в базу данных полученных архивов данных 480 узла сети 373 обрабатываются узлом сети 373.As mentioned above, the values stored in the real-time database and in the database of the received data archives 480 of the network node 373 are processed by the network node 373.

Описываемый способ и система предоставляют возможность (например, пользователю) осуществлять контроль состояния, просмотр значений (измерений), удаленное управление устройствами, в частности, по крайней мере, одним исполнительным устройством (управляющим устройством, устройством управления и т.д.) 505. Упомянутые контроль и управление осуществляются с помощью, по крайней мере, одного исполнительного устройства 505, в том числе посредством взаимодействия пользователя с упомянутыми узлами сети, например, задание значений, настройка и т.д. Упомянутые контроль и управление осуществляются исполнительным устройством 505 посредством использования в таких исполнительных устройствах (505), по крайней мере, одной (управляющей) микросхемы, микрокомпьютера, микропроцессора или любого другого модуля, связанного, по крайней мере, с одним узлом сети, и осуществляющим регистрирование данных и/или позволяющим осуществлять управление связанными с таким модулем устройствами, осуществлять задание значений для таких устройств и т.д.The described method and system provide an opportunity (for example, to a user) to monitor status, view values (measurements), remotely control devices, in particular, at least one executive device (control device, control device, etc.) 505. Mentioned monitoring and control are carried out using at least one actuating device 505, including through user interaction with said network nodes, for example, setting values, setting, etc. The aforementioned monitoring and control is carried out by the actuator 505 by using at least one (control) microcircuit, microcomputer, microprocessor or any other module associated with at least one network node in such actuators (505) and registering data and / or allowing the management of devices associated with such a module, the setting of values for such devices, etc.

В процессе обработки данных узел сети, например, узел сети 373, формирует управляющие команды (или управляющие программы, инструкции, значения и т.д.) для исполнительных устройств (505) объектов управления и передает их, по крайней мере, на одно исполнительное устройство, связанное с узлом сети 373 или являющееся частью узла сети 373, или, по крайней мере, на один другой узел сети, например, на узел сети 313, с целью дальнейшей передачи узлом сети 313 управляющих команд на связанное (в том числе через модуль сбора данных) с узлом сети 313 исполнительное устройство 505. Сформированные управляющие команды используются для управления объектами управления, чтобы объекты управления поддерживались в пределах необходимых (заданных) параметров, в частности, в том режиме, в котором должен функционировать каждый из объектов управления.During data processing, a network node, for example, network node 373, generates control commands (or control programs, instructions, values, etc.) for actuators (505) of control objects and transmits them to at least one actuator associated with the network node 373 or which is part of the network node 373, or at least one other network node, for example, the network node 313, for the purpose of further transmission of the control commands to the network node 313 to the connected one (including via the collection module data) with a network node 313 executive oystvo 505. The generated control commands used to control the control object to control objects maintained within a required (predetermined) parameters, in particular, in the mode in which each function must control objects.

Управляющие команды позволяют управлять исполнительными устройствами (505), например, включать или отключать такое исполнительное устройство, изменять значения, заданные на таком исполнительном устройстве и т.д., например, вентилятор, включать или отключать нагревательный элемент, открыть или закрыть клапан и т.д.Control commands allow you to control actuators (505), for example, enable or disable such an actuator, change the values specified on such an actuator, etc., for example, a fan, enable or disable a heating element, open or close a valve, etc. d.

Результатом обработки узлом сети 373 полученных и сохраненных в БД данных (реального времени и/или архивов данных) является, по крайней мере, выработка команд для управления исполнительными устройствами (505), в том числе, после обработки, по крайней мере, одним узлом сети, например, после приведения управляющих команд к формату, пригодному для подачи на вход исполнительного устройства (505) или пригодному для подачи на вход, по крайней мере, одного модуля, являющегося частью исполнительного устройства 505 или связанного с ним, или после обработки исполнительным устройством. Таким образом, узел сети 373 с использованием, по крайней мере, одного алгоритма, реализуемого программным обеспечением (программой), установленным на узле сети 373 вырабатывает управляющие команды (в том числе последовательности управляющих команд) для исполнительного устройства 505.The result of processing by the network node 373 of the data received and stored in the database (real-time and / or data archives) is at least the generation of commands for controlling executive devices (505), including after processing by at least one network node for example, after converting the control commands to a format suitable for applying to the input of the actuator (505) or suitable for applying to the input of at least one module that is part of the actuator 505 or associated with it, or after processing executive device. Thus, the network node 373 using at least one algorithm implemented by the software (program) installed on the network node 373 generates control commands (including sequences of control commands) for the actuator 505.

На ФИГ. 6 показан примерный вариант назначения номеров соответствия данных, сохраненных на передающем узле сети, в виртуальной базе данных и на принимающем узле сети.In FIG. Figure 6 shows an exemplary embodiment for assigning correspondence numbers of data stored on a sending network node, in a virtual database, and on a receiving network node.

При передаче данных узлом сети 313 номера параметров (переменных), значения которых сохранены в БД данных реального времени 323 (и которые будут переданы в составе наборов данных реального времени и архивы данных), преобразуются узлом сети 313 в сетевые номера параметров (номера в виртуальной базе данных, виртуальные номера параметров в виртуальной базе данных), которые добавляются к значениям параметров, передаваемым, по крайней мере, на один другой узел сети, например, на узел сети 373. Номер параметра (данных реального времени) на передающем узле сети, значение которого сохраняется в БД данных реального времени (323), определяет местоположение (в частности, позицию) такого значения, сохраненного в упомянутой базе данных. Номер параметра (данных) в виртуальной базе данных (сетевой номер параметра, виртуальный идентификатор) определяет местоположение значения, сохраненного в передаваемом пакетами наборе данных реального времени (или, в частном случае, архиве данных), в частности, в базе данных, содержащей упомянутые передаваемые данные, причем в такой базе данных (сетевой базе данных, виртуальной базе данных) хранятся значения параметров, передаваемые на другие узлы сети. На каждом узле сети номера параметров в виртуальной базе данных преобразуются в номера параметров (данных) в базе данных принимающего узла сети, значения которых сохраняются в базы данных реального времени соответствующих узлов сети. Так, например, группа параметров с номерами параметров, значения которых (номеров) сохранены в БД данных реального времени 313 и равны, например, «1» и «2» соответственно (т.е. в частном случае, значение первого параметра сохранено в первой ячейке таблицы БД данных реального времени, а значение второго параметра - во второй ячейке такой таблицы), преобразуются в номера параметров виртуальной базы данных, например, «3» и «4», и записываются в пакет данных, передаваемый в вычислительную сеть, по крайней мере, на один узел сети, например, узел сети 373. Далее при получении такого пакета данных узел сети 373 преобразует номера параметров «3» и «4» виртуальной базы данных в номера параметров (данных) принимающего узла сети, например, «1» и «255» соответственно. Также, по крайней мере, один другой узел, отличный от узла 373, который получил отправленный в вычислительную сеть пакет данных, преобразует сетевые номера параметров виртуальной базы данных «3» и «4» в номера параметров принимающего узла сети, например, «5» и «4» соответственно. Преобразование номеров параметров передающей стороны (передающего узла сети) в номера параметров виртуальной базы данных осуществляется передающим наборы данных узлом сети (или, по крайней одним модулем такого узла сети или связанным с ним модулем) с использованием таблицы соответствия (связи) номеров параметров передающей стороны с номерами параметров виртуальной базы данных, примерный вариант которой показан на ФИГ. 7 (707, таблица соответствия номеров параметров передающего узла сети 626 номерам параметром виртуальной базы данных 636). При формировании наборов данных, передаваемых пакетами данных, узел сети 313 осуществляет чтение номеров параметров из БД данных реального времени 323 узла сети 313 и осуществляет их поиск в таблице соответствия 707 (ФИГ. 7), после чего осуществляет чтение соответствующих им номеров параметров виртуальной БД в этой же таблице 707 (ФИГ. 7), после чего добавляет их в передаваемые пакеты данных. Обратное преобразование номеров параметров виртуальной базы данных в номера параметров принимающего узла сети 646 осуществляется получающим пакеты данных узлом сети (или, по крайней одним модулем такого узла сети или связанным с ним модулем), например, узлом сети 373, с использованием таблицы соответствия (808, ФИГ. 808) номеров параметров виртуальной БД 636 номерам параметров принимающего узла сети 646, примерный вариант которой показан на ФИГ. 8.When data is transmitted by the host 313, the numbers of parameters (variables) whose values are stored in the real-time data database 323 (and which will be transferred as part of the real-time data sets and data archives) are converted by the host 313 into the network numbers of the parameters (numbers in the virtual database data, virtual parameter numbers in the virtual database), which are added to the parameter values transmitted to at least one other network node, for example, to the network node 373. Parameter number (real-time data) on the transmitting node e network, whose value is stored in the real time data database (323) determines a location (in particular the position) of the value stored in said database. The parameter (data) number in the virtual database (network parameter number, virtual identifier) determines the location of the value stored in the real-time data set transmitted by the packets (or, in the particular case, the data archive), in particular, in the database containing the transmitted data, moreover, in such a database (network database, virtual database) the parameter values are transmitted to other network nodes. At each network node, the parameter numbers in the virtual database are converted into parameter (data) numbers in the database of the receiving network node, the values of which are stored in the real-time database of the corresponding network nodes. So, for example, a group of parameters with parameter numbers whose values (numbers) are stored in the real-time data database 313 and are equal, for example, “1” and “2”, respectively (ie, in the particular case, the value of the first parameter is stored in the first a cell of the table of the real-time data database, and the value of the second parameter in the second cell of such a table) is converted to the virtual database parameter numbers, for example, “3” and “4”, and written to the data packet transmitted to the computer network, at least at least one host, for example, host 373. alley on receipt of the packet data network node 373 converts the parameter numbers "3" and "4" virtual database parameter numbers (data) of the receiving network node, e.g., "1" and "255" respectively. Also, at least one other node, different from node 373, which received a data packet sent to the computer network, converts the network parameter numbers of the virtual database “3” and “4” into the parameter numbers of the receiving network node, for example, “5” and "4" respectively. Conversion of the parameter numbers of the transmitting side (transmitting network node) to the virtual database parameter numbers is performed by the transmitting data sets by the network node (or at least one module of such a network node or an associated module) using the correspondence (communication) table of the transmitting side parameter numbers with the parameter numbers of the virtual database, an example of which is shown in FIG. 7 (707, table of correspondence of parameter numbers of the transmitting network node 626 to parameter numbers of the virtual database 636). When forming the data sets transmitted by the data packets, the network node 313 reads the parameter numbers from the real-time data database 323 of the network node 313 and searches for them in the correspondence table 707 (FIG. 7), after which it reads the numbers of the virtual database parameters corresponding to them in the same table 707 (FIG. 7), after which it adds them to the transmitted data packets. The inverse transformation of the virtual database parameter numbers into the parameter numbers of the receiving network node 646 is carried out by the receiving network packet (or, at least, by one module of such a network node or an associated module), for example, by the network node 373, using the correspondence table (808, FIG. 808) of the virtual database parameter numbers 636 and the parameter numbers of the receiving network node 646, an exemplary embodiment of which is shown in FIG. 8.

В процессе формирования узлом сети 313 пакетов, содержащих наборы данных реального времени (включая наборы данных реального времени в полном объеме, наборы только изменившихся данных реального времени, в том числе при контрольной передаче данных) узлом сети 313 осуществляется преобразование номеров параметров данных, передаваемых узлами сети пакетами (656) данных на другие узлы сети. В частности, осуществляется присвоение номеров параметров виртуальной базы данных 636 для значений из БД данных реального времени 323, причем каждый номер параметров виртуальной базы данных 636 соответствует номеру параметров передающего узла сети 626 для значения, хранящегося в БД данных реального времени 323, как показано на ФИГ. 7.In the process of forming by a node of a network 313 packets containing real-time data sets (including full-time real-time data sets, sets of only changed real-time data, including during control data transfer), the network node 313 converts the data parameter numbers transmitted by the network nodes packets (656) of data to other network nodes. In particular, parameter numbers of the virtual database 636 are assigned for values from the real-time data database 323, each parameter number of the virtual database 636 corresponds to the parameter number of the transmitting network node 626 for the value stored in the real-time data database 323, as shown in FIG. . 7.

Claims (44)

1. Способ организации хранения данных на узлах сети с передачей данных между узлами сети с предсказуемой загрузкой узлов сети для систем реального времени, в котором:1. A method of organizing data storage on network nodes with data transfer between network nodes with predictable loading of network nodes for real-time systems, in which: - на каждом вычислительном устройстве, связанном, по крайней мере, с одним объектом управления, задают такт работы вычислительного устройства, равный периодичности получения данных от объекта управления;- on each computing device associated with at least one control object, the clock cycle of the computing device is set equal to the frequency of receiving data from the control object; - получают, по крайней мере, на одном объекте управления набор данных реального времени, содержащий измеренные величины от измерительных преобразователей датчиков параметров объекта управления, и/или рассчитанные на их основе величины, включая побитно упакованные в отдельный байт – байт статуса - результаты проверки достоверности измеренных или рассчитанных величин и сравнения их с порогами – уставками, и/или величины, введенные вручную, и/или полученные другим способом, и передают такой набор полученных данных, по крайней мере, на одно вычислительное устройство;- receive, at least on one control object, a real-time data set containing the measured values from the measuring transducers of the sensors of the parameters of the control object, and / or the values calculated on their basis, including bitwise packed into a separate byte - status byte - the results of the verification of the measured or calculated values and comparing them with thresholds - settings, and / or manually entered values and / or obtained in another way, and transmit such a set of received data to at least one computing device; - каждый такт работы вычислительного устройства сохраняют на вычислительном устройстве полученный набор данных в разделяемой оперативной памяти вычислительного устройства в массиве кольцевых буферов, причем массив кольцевых буферов содержит, по крайней мере, два набора значений, где первый набор значений содержит набор данных, полученный вычислительным устройством за последний такт работы вычислительного устройства, а второй набор значений содержит набор данных, полученных вычислительным устройством за предпоследний такт работы вычислительного устройства, причем данные в массиве кольцевых буферов обновляются вычислительным устройством каждый такт работы вычислительного устройства;- each clock cycle of the computing device stores on the computing device the obtained data set in the shared RAM of the computing device in an array of ring buffers, the array of ring buffers containing at least two sets of values, where the first set of values contains the data set received by the computing device for the last clock of the computing device, and the second set of values contains the data set received by the computing device for the penultimate clock a computing device, the data in an array of ring buffers being updated by the computing device every cycle of the computing device; - сохраняют на устройстве долговременной памяти изменившиеся с предыдущего такта работы вычислительного устройства данные, содержащиеся в полученном наборе данных, причем с периодом один раз в несколько десятков тактов работы вычислительного устройства сохраняют все данные на конец такта работы вычислительного устройства, а также сохраняют данные ручного ввода оператора и/или данные, рассчитанные на основе архивных данных реального времени, сохраненных в оперативной памяти вычислительного устройства и на устройстве долговременной памяти, включающие плановые показатели на будущее время;- save on the long-term memory device the data contained in the obtained data set, changed from the previous clock of the computing device, and with a period of several tens of clocks of the computing device, save all the data at the end of the clock of the computing device, and also save manual operator input data and / or data calculated on the basis of real-time archive data stored in the RAM of the computing device and on the long-term device memory, including planned indicators for the future; - упомянутые выше данные, изменившиеся с предыдущего такта работы вычислительного устройства, накапливаются в массиве кольцевых буферов в оперативной памяти вычислительного устройства, который на такте работы вычислительного устройства, на котором сохраняются все данные и, включая их, сжимаются с использованием одного из известных алгоритмов сжатия данных, включая, но не ограничиваясь, алгоритмы архивирования данных, и сохраняются на устройство долговременной памяти;- the data mentioned above, which have changed from the previous clock of the computing device, are accumulated in an array of ring buffers in the RAM of the computing device, which, at the clock of the computing device, which stores all the data and, including them, are compressed using one of the known data compression algorithms , including, but not limited to, data archiving algorithms, and are stored on a long-term memory device; - по крайней мере, одно вычислительное устройство связано, по крайней мере, с одним другим вычислительным устройством, причем такие вычислительные устройства объединены в вычислительную сеть и являются узлами сети;- at least one computing device is associated with at least one other computing device, and such computing devices are combined into a computer network and are network nodes; - данные реального времени последнего такта работы вычислительного устройства передаются в вычислительную сеть вычислительным устройством из массивов кольцевых буферов каждый такт работы вычислительного устройства или реже, причем упомянутые данные передаются все или выбранные по перечню, в том числе заданному перечислением или диапазоном номеров в массиве, и такие данные передаются в полном объеме или только изменившиеся с предыдущего такта работы вычислительного устройства, причем при передаче изменившихся данных такт передачи равен такту работы вычислительного устройства, а также при передаче изменившихся данных один раз с периодом в несколько десятков тактов работы вычислительного устройства, если задано при конфигурировании, передаются все указанные к передаче данные, где передача текущих данных осуществляется пакетами протоколов нижнего уровня, обеспечивающих передачу без подтверждения и без образования канала связи, причем пакет является широковещательным, мультивещательным или с указанием конкретного адреса приемного узла сети и указывается один из обобщающих признаков: номер порта UDP стека TCP/IP или сокет IPX стека IPX/SPX, причем такой признак задает виртуальный массив кольцевых буферов и в передаваемом пакете передаются адреса в виртуальный массив кольцевых буферов содержащихся в пакете текущих данных, причем переданные пакеты принимаются узлом сети, на котором конфигурированием задан прием пакетов, имеющих указанный обобщающий признак, причем для такого обобщающего признака на принимающем узле сети указывается также соответствие адреса данных в виртуальной базе адресам в базе текущих данных принимающего узла, в соответствии с которыми данные из принятого пакета записываются в массив кольцевых буферов текущих данных принимающего узла;- real-time data of the last clock cycle of the computing device is transmitted to the computer network by the computing device from arrays of ring buffers every clock cycle of the computing device or less, the data is transmitted all or selected from the list, including a given listing or a range of numbers in the array, and such data is transmitted in full or only changed from the previous clock of the computing device, and when transmitting changed data, the transmission clock p veins of the clock of the computing device, as well as when transferring changed data once with a period of several tens of clocks of the computing device, if specified during configuration, all the data specified for transmission is transmitted, where the current data is transmitted by low-level protocol packets that provide transmission without confirmation and without the formation of a communication channel, moreover, the packet is broadcast, multicast, or with a specific address of the receiving network node and one of common signs: UDP port number of the TCP / IP stack or IPX socket of the IPX / SPX stack, and this sign defines a virtual array of ring buffers and addresses in the transmitted packet are transferred to a virtual array of ring buffers contained in the current data packet, and the transmitted packets are received by the network node, on which the reception of packets having the specified generalizing attribute is set by configuration, and for such a generalizing characteristic, the correspondence of the data address in the virtual database with the addresses in the base is also indicated on the receiving network node their data receiving node, in accordance with which the data from the received packet are written to the ring buffer array current data receiving node; - данные реального времени, изменившиеся с предыдущего такта работы вычислительного устройства, которые были накоплены в массиве кольцевых буферов в оперативной памяти и сжаты с использованием одного из известных алгоритмов сжатия данных, после чего сохранены на устройстве долговременной памяти, также на том же такте передаются в вычислительную сеть пакетами протоколов нижнего уровня, обеспечивающих передачу без подтверждения и без образования канала связи, UDP стека TCP/IP или IPX стека IPX/SPX, причем в пределах периода передача сжатых данных повторяется не менее одного раза и вместе с упомянутыми сжатыми данными в первом такте передаются данные о присутствующих на узле сжатых данных с момента их записи на таком узле сети;- real-time data that has changed from the previous clock of the computing device, which were accumulated in an array of ring buffers in RAM and compressed using one of the known data compression algorithms, and then stored on a long-term memory device, are also transferred to the computing clock the network is a packet of lower level protocols that provide transmission without confirmation and without the formation of a communication channel, UDP TCP / IP stack or IPX IPX / SPX stack, and within the period of transmission of compressed data is repeated at least once and together with the said compressed data in the first cycle, data is transmitted on the compressed data present on the node from the moment it was recorded on such a network node; - переданные в вычислительную сеть пакеты со сжатыми архивированными данными другого узла сети принимаются узлом сети и сохраняются на устройство долговременной памяти в раздел или каталог, заданный конфигурированием узла сети под данные передающего узла сети; - packets transmitted to the computer network with compressed archived data of another network node are received by the network node and stored on the long-term memory device in a section or directory specified by configuring the network node for the data of the transmitting network node; - одновременно с приемом сжатых данных, периодически посылаемых с передающего узла сети, принимающим узлом сети анализируется полученная с такими данными информация о наличии сжатых архивных данных на передающем узле сети, и узлом сети сравнивается с сохраненными на принимающем узле сети, и при обнаружении недостающих данных принимающий узел сети посылает UDP-пакет на посылающий узел сети со списком недостающих сжатых архивированных данных, и в ответ посылающий узел сети наряду с периодически посылаемыми сжатыми архивными данными на принимающий узел сети, с которого пришел запрос, досылает UDP-пакеты с запрошенными недостающими данными, равномерно распределённые по нескольким периодам передачи, причем в первом пакете такой передачи передается таблица распределения пакетов с недостающими данными по периодам передачи и после окончания последнего периода, указанного в упомянутой таблице, принимающим узлом сети осуществляется проверка полноты сжатых архивированных данных и, при их неполноте по сравнению с передающим узлом сети, принимающим узлом сети выдается повторный запрос на передающий узел сети о досылке данных.- simultaneously with the reception of compressed data periodically sent from the transmitting network node, the receiving network node analyzes the information received with such data on the presence of compressed archive data at the transmitting network node, and the network node compares it with the data stored on the receiving network node, and if missing data is detected, the receiving the host sends a UDP packet to the sending host with a list of missing compressed archived data, and in response, the sending host along with periodically sent compressed archive data at the receiving network node from which the request arrives sends UDP packets with the requested missing data, evenly distributed over several transmission periods, and in the first packet of such transmission, a packet distribution table with the missing data by transmission periods and after the end of the last period specified in the aforementioned is transmitted the table receiving the host network checks the completeness of the compressed archived data and, if they are incomplete in comparison with the transmitting host network, the receiving host network is issued again a request to the sending network node for sending data. 2. Способ по п. 1, характеризующийся тем, что такт работы вычислительного устройства определяется инерционностью одного или нескольких объектов управления, связанных с вычислительным устройством, при этом такт работы вычислительного устройства задается оператором или автоматически вычислительным устройством в три-четыре раза меньше постоянной времени объекта управления, имеющего наименьшую инерционность.2. The method according to p. 1, characterized in that the cycle of the computing device is determined by the inertia of one or more control objects associated with the computing device, while the cycle of the computing device is set by the operator or automatically by the computing device three to four times less than the time constant of the object management having the least inertia. 3. Способ по п. 1, характеризующийся тем, что устройством долговременного хранения является накопитель на жёстком магнитном диске или флэш-память.3. The method according to p. 1, characterized in that the long-term storage device is a hard disk drive or flash memory. 4. Способ по п. 1, характеризующийся тем, что вычислительное устройство или объект управления получает данные от измерительных преобразователей датчиков параметров объекта путем перерасчета измеренных величин, включая рассчитанные управляющие воздействия, с использованием коэффициентов расчетных алгоритмов для данных, содержащихся в наборах данных.4. The method according to claim 1, characterized in that the computing device or control object receives data from the measuring transducers of the object parameter sensors by recalculating the measured values, including the calculated control actions, using the coefficients of the calculation algorithms for the data contained in the data sets. 5. Способ по п. 1, характеризующийся тем, что вычислительное устройство сравнивает данные в полученном наборе данных за последний такт работы вычислительного устройства с сохраненными данными за предыдущий такт работы вычислительного устройства для определения изменившихся данных с предыдущего такта работы вычислительного устройства.5. The method according to p. 1, characterized in that the computing device compares the data in the obtained data set for the last cycle of the computing device with the stored data for the previous cycle of the computing device to determine the changed data from the previous cycle of the computing device. 6. Способ по п. 1, характеризующийся тем, что объект управления передает на вычислительное устройство только изменившиеся данные с предыдущего такта работы вычислительного устройства.6. The method according to p. 1, characterized in that the control object transmits to the computing device only the changed data from the previous clock of the computing device. 7. Способ по п. 1, характеризующийся тем, что при наступлении времени значения планового показателя, оно записывается в текущее значение одного или нескольких элементов массива текущих данных в разделяемой памяти.7. The method according to p. 1, characterized in that when the time of the value of the planned indicator, it is recorded in the current value of one or more elements of the array of current data in shared memory. 8. Способ по п. 1, характеризующийся тем, что данные реального времени передаются в вычислительную сеть, по крайней мере, на одно вычислительное устройство, являющееся узлом сети вычислительной сети, если задано конфигурированием узла сети.8. The method according to p. 1, characterized in that the real-time data is transmitted to the computer network, at least one computing device, which is the network node of the computer network, if specified by the configuration of the network node. 9. Способ по п. 1, характеризующийся тем, что конфигурированием с использованием списка задается фильтр адресов узлов, от которых принимаются пакеты принимающим узлом, причем пакеты принимаются только от узлов, указанных в данном списке, чем повышается безопасность системы о возможности несанкционированного или ошибочного воздействия.9. The method according to claim 1, characterized in that the configuration using the list sets the address filter of nodes from which packets are received by the receiving node, and packets are received only from the nodes specified in this list, which increases the security of the system about the possibility of unauthorized or erroneous exposure . 10. Способ по п. 1, характеризующийся тем, что на узле сети сконфигурирована передача и прием пакетов по одному или нескольким обобщающим признакам.10. The method according to p. 1, characterized in that the network node is configured to transmit and receive packets according to one or more general characteristics. 11. Способ по п. 1, характеризующийся тем, что вычислительное устройство сравнивает полученные данные с сохраненными данными для определения изменившихся данных или вычислительное устройство получает изменившиеся данные с объекта управления, причем устройство управления определяет изменившиеся данные.11. The method according to p. 1, characterized in that the computing device compares the received data with the stored data to determine the changed data or the computing device receives the changed data from the control object, and the control device determines the changed data. 12. Способ по п. 1, характеризующийся тем, что данные реального времени, изменившиеся с предыдущего такта работы вычислительного устройства, которые были накоплены в массиве кольцевых буферов в оперативной памяти и сжаты с использованием одного из известных алгоритмов сжатия данных, после чего сохранены на устройстве долговременной памяти, также на том же такте передаются в вычислительную сеть пакетами протоколов нижнего уровня, если задано конфигурированием узла сети.12. The method according to p. 1, characterized in that the real-time data that has changed from the previous clock of the computing device, which were accumulated in an array of ring buffers in RAM and compressed using one of the known data compression algorithms, and then stored on the device long-term memory, also on the same clock cycle are transmitted to the computer network by lower-level protocol packets, if specified by the host configuration. 13. Способ по п. 1, характеризующийся тем, что на узле сети сконфигурирована передача пакетов сжатых архивных данных на несколько узлов сети и прием сжатых архивных данных от нескольких узлов сети. 13. The method according to p. 1, characterized in that the network node is configured to transmit compressed archive data packets to several network nodes and receive compressed archive data from several network nodes. 14. Система для организации хранения данных на узлах сети с передачей данных между узлами сети с предсказуемой загрузкой узлов сети для систем реального времени, которая включает:14. A system for organizing data storage at network nodes with data transfer between network nodes with predictable loading of network nodes for real-time systems, which includes: - вычислительные устройства, связанные с объектами управления, причем на каждом вычислительном устройстве задают такт работы такого вычислительного устройства, не больший периодичности получения данных от каждого из объектов управления, причем вычислительные устройства объединены в вычислительную сеть и являются узлами такой вычислительной сети;- computing devices associated with control objects, moreover, on each computing device, the clock cycle of such a computing device is set, not more than the frequency of receiving data from each of the control objects, moreover, the computing devices are combined into a computer network and are nodes of such a computer network; - объекты управления, на которых получают наборы данных реального времени, содержащие измеренные величины от измерительных преобразователей датчиков параметров объекта управления и передают такой набор полученных данных на вычислительные устройства;- control objects, which receive real-time data sets containing measured values from measuring transducers of sensors of the parameters of the control object and transmit such a set of received data to computing devices; - разделяемую оперативную память для каждого из вычислительных устройств, в которую для каждого вычислительного устройства каждый такт работы вычислительного устройства сохраняют в массиве кольцевых буферов, причем массив кольцевых буферов содержит, по крайней мере, два набора значений, где первый набор значений содержит набор данных, полученный вычислительным устройством за последний такт работы вычислительного устройства, а второй набор значений содержит набор данных, полученных вычислительным устройством за предпоследний такт работы вычислительного устройства, причем данные в массиве кольцевых буферов обновляются вычислительным устройством каждый такт работы вычислительного устройства, а также там сохраняются данные ручного ввода оператора, причем данные ручного ввода включают команды управления объектом управления и коэффициенты расчетных алгоритмов для данных, содержащихся в наборах данных;- a shared RAM for each of the computing devices, in which for each computing device each clock of the computing device is stored in an array of ring buffers, the array of ring buffers containing at least two sets of values, where the first set of values contains the data set obtained the computing device for the last cycle of the computing device, and the second set of values contains the set of data received by the computing device for the penultimate cycle bots of the computing device, the data in the array of ring buffers being updated by the computing device every cycle of the computing device, and manual operator input data is also stored there, and the manual input data includes control commands for the control object and coefficients of the calculation algorithms for the data contained in the data sets; - устройство долговременной памяти для каждого вычислительного устройства, в которой сохраняют изменившиеся с предыдущего такта работы вычислительного устройства данные, содержащиеся в полученном наборе данных, причем с периодом один раз в несколько десятков тактов работы вычислительного устройства сохраняют все данные за такт работы вычислительного устройства, а также сохраняют данные ручного ввода оператора и/или данные, рассчитанные на основе архивных данных реального времени, сохраненных в оперативной памяти вычислительного устройства и на устройстве долговременной памяти, включающие плановые показатели на будущее время, а также на устройстве долговременной памяти сохраняются упомянутые выше данные, изменившиеся с предыдущего такта работы вычислительного устройства, накапливаются в массиве кольцевых буферов в оперативной памяти вычислительного устройства, который на такте работы вычислительного устройства, на котором сохраняются все данные, сжимается с использованием одного из известных алгоритмов сжатия данных, включая, но не ограничиваясь, алгоритмы архивирования данных;- a long-term memory device for each computing device in which the data contained in the obtained data set, which has changed from the previous clock cycle of the computing device, is stored, and with a period of several tens of clock cycles of the computing device, all data is saved for the clock cycle of the computing device, and save manual operator input data and / or data calculated on the basis of real-time archive data stored in the RAM of the computing device on the long-term memory device, including planned indicators for the future, as well as on the long-term memory device, the data mentioned above, which have changed from the previous clock of the computing device, are stored in the array of ring buffers in the RAM of the computing device, which at the clock of the computing device , on which all data is stored, is compressed using one of the known data compression algorithms, including, but not limited to, a data archiving; - коммуникационный модуль, выделенный аппаратно или только программно, осуществляющий передачу данных реального времени последнего такта работы вычислительного устройства в вычислительную сеть из массивов кольцевых буферов каждый такт работы вычислительного устройства или реже, причем упомянутые данные передаются все или выбранные по перечню, в том числе заданному перечислением или диапазоном номеров в массиве, и такие данные передаются в полном объеме или только изменившиеся с предыдущего такта работы вычислительного устройства, причем при передаче изменившихся данных такт передачи равен такту работы вычислительного устройства, также при передаче изменившихся данных, если это задано конфигурированием, один раз с периодом в несколько десятков тактов работы вычислительного устройства передаются все указанные к передаче данные, где передача текущих данных осуществляется пакетами протоколов нижнего уровня, обеспечивающих передачу без подтверждения и без образования канала связи, причем пакет является широковещательным, мультивещательным или с указанием конкретного адреса приемного узла сети и указывается один из обобщающих признаков: номер порта UDP стека TCP/IP или сокет IPX стека IPX/SPX, причем такой признак задает виртуальный массив кольцевых буферов и в передаваемом пакете передаются адреса в виртуальном массиве кольцевых буферов содержащихся в пакете текущих данных, причем переданные пакеты принимаются узлом сети, на котором конфигурированием задан прием пакетов, имеющих указанный обобщающий признак, причем для такого обобщающего признака на принимающем узле сети указывается также соответствие адреса данных в виртуальной базе адресам в базе текущих данных принимающего узла, в соответствии с которыми данные из принятого пакета записываются в массив кольцевых буферов текущих данных принимающего узла и данные реального времени, изменившиеся с предыдущего такта работы вычислительного устройства, которые были накоплены в массиве кольцевых буферов в оперативной памяти и сжаты с использованием одного из известных алгоритмов сжатия данных, после чего сохранены на устройстве долговременной памяти, также на том же такте передаются в вычислительную сеть пакетами протоколов нижнего уровня, обеспечивающих передачу без подтверждения и без образования канала связи, UDP стека TCP/IP или IPX стека IPX/SPX, причем в пределах периода передача сжатых данных повторяется не менее одного раза и в месте с упомянутыми сжатыми данными в первом такте передаются данные о присутствующих на узле сжатых данных с момента их записи на таком узле сети; и - a communication module, selected hardware or software only, that transfers real-time data of the last clock cycle of the computing device to the computer network from arrays of ring buffers every clock cycle of the computing device or less often, the data mentioned is transmitted all or selected from the list, including the one specified or a range of numbers in the array, and such data is transmitted in full or only changed from the previous clock of the computing device, p Moreover, when transferring changed data, the transfer cycle is equal to the operating time of the computing device, also when transmitting changed data, if specified by the configuration, all data specified for transmission is transmitted once with a period of several tens of cycles of operation of the computing device, where the current data is transmitted by the lower protocol protocols level, providing transmission without confirmation and without the formation of a communication channel, moreover, the packet is broadcast, multicast or specifying one of the generalizing signs: the UDP port number of the TCP / IP stack or the IPX socket of the IPX / SPX stack, and this sign defines a virtual array of ring buffers and the transmitted packet contains addresses in a virtual array of ring buffers contained in the packet of current data, moreover, the transmitted packets are received by the network node, on which the configuration is set to receive packets having the specified generalizing attribute, and for such a generalizing characteristic, the corresponding node is also indicated on the receiving network node the data addresses in the virtual database are the addresses in the current database of the receiving node, according to which the data from the received packet are written into the array of ring buffers of the current data of the receiving node and the real-time data that have changed from the previous clock cycle of the computing device that were accumulated in the ring array buffers in RAM and compressed using one of the well-known data compression algorithms, after which they are stored on a long-term memory device, also transmitted on the same clock I’m sent to the computer network with packets of lower level protocols that ensure the transfer without confirmation and without the formation of a communication channel, the UDP TCP / IP stack or IPX IPX / SPX stack, and within the period, the transmission of compressed data is repeated at least once and in place with the mentioned compressed data in the first clock, data on the compressed data present on the node is transmitted from the moment it was recorded on such a network node; and - переданные в вычислительную сеть пакеты со сжатыми архивированными данными другого узла сети принимаются узлом сети и сохраняются на устройство долговременной памяти в раздел или каталог, заданный конфигурированием узла сети под данные передающего узла сети; где- packets transmitted to the computer network with compressed archived data of another network node are received by the network node and stored on the long-term memory device in a section or directory specified by configuring the network node for the data of the transmitting network node; Where - одновременно с приемом сжатых данных, периодически посылаемых коммуникационным модулем с передающего узла сети, принимающим узлом сети анализируется полученная коммуникационным модулем с такими данными информация о наличии сжатых архивных данных на передающем узле сети и узлом сети сравнивается с сохраненными на принимающем узле сети, и при обнаружении недостающих данных принимающий узел сети посылает UDP-пакет на посылающий узел сети со списком недостающих сжатых архивированных данных, и в ответ посылающий узел сети наряду с периодически посылаемыми сжатыми архивными данными на принимающий узел сети, с которого пришел запрос, досылает UDP-пакеты с запрошенными недостающими данными, равномерно распределённые по нескольким периодам передачи, причем в первом пакете такой передачи передается таблица распределения пакетов с недостающим данными по периодам передачи, и после окончания последнего периода, указанного в упомянутой таблице, принимающим узлом сети осуществляется проверка полноты сжатых архивированных данных и, при их неполноте по сравнению с передающим узлом сети, принимающим узлом сети выдается повторный запрос на передающий узел сети о досылке данных.- simultaneously with the reception of compressed data periodically sent by the communication module from the transmitting network node, the receiving network node, the information received by the communication module with such data on the availability of compressed archive data at the transmitting network node and the network node is compared with that stored on the receiving network node, and upon detection the missing host sends a UDP packet to the sending host with a list of missing compressed archived data, and in response the sending host along with the period by manually sending compressed archive data to the receiving network node from which the request came, it sends UDP packets with the requested missing data, evenly distributed over several transmission periods, and the packet distribution table with the missing data by transmission periods is transmitted in the first packet of such transmission, and after the end of the last period indicated in the table, the receiving network node checks the completeness of the compressed archived data and, if incomplete, in comparison with the transmitting node th network node receiving the network issued a second request to the transmitting node of the data dosylka. 15. Система по п. 14, которая содержит связанные с объектами управления модули сбора данных, которые передают наборы данных реального времени от измерительных преобразователей датчиков параметров объекта управления на объекты управления.15. The system of claim 14, which comprises data acquisition modules that transmit real-time data sets from the measuring transducers of the sensors of the parameters of the control object to the control objects. 16. Система по п. 14, в которой такт работы вычислительного устройства определяется инерционностью одного или нескольких объектов управления, связанных с вычислительным устройством, при этом такт работы вычислительного устройства задается оператором или автоматически вычислительным устройством в три-четыре раза меньше постоянной времени объекта управления, имеющего наименьшую инерционность. 16. The system according to p. 14, in which the cycle of the computing device is determined by the inertia of one or more control objects associated with the computing device, while the cycle of the computing device is set by the operator or automatically by the computing device is three to four times less than the time constant of the control object, having the least inertia. 17. Система по п. 14, в которой устройством долговременного хранения является накопитель на жёстком магнитном диске или флэш-память.17. The system of claim 14, wherein the long-term storage device is a hard disk drive or flash memory. 18. Система по п. 14, в которой вычислительное устройство или объект управления получает данные от измерительных преобразователей датчиков параметров объекта управления путем перерасчета измеренных величин, включая рассчитанные управляющие воздействия, с использованием коэффициентов расчетных алгоритмов для данных, содержащихся в наборах данных.18. The system of claim 14, wherein the computing device or control object receives data from the measuring transducers of the parameters of the control object by recalculating the measured values, including the calculated control actions, using the coefficients of the calculation algorithms for the data contained in the data sets. 19. Система по п. 14, в которой вычислительное устройство сравнивает данные в полученном наборе данных за последний такт работы вычислительного устройства с сохраненными данными за предыдущий такт работы вычислительного устройства для определения изменившихся данных с предыдущего такта работы вычислительного устройства.19. The system of claim 14, wherein the computing device compares the data in the obtained data set for the last clock of the computing device with the stored data for the previous clock of the computing device to determine the changed data from the previous clock of the computing device. 20. Система по п. 14, в которой объект управления передает на вычислительное устройство только изменившиеся данные с предыдущего такта работы вычислительного устройства.20. The system according to p. 14, in which the control object transfers to the computing device only the changed data from the previous clock of the computing device. 21. Система по п. 14, в которой при наступлении времени значения планового показателя, оно записывается в текущее значение одного или нескольких элементов массива текущих данных в разделяемой памяти.21. The system according to p. 14, in which when the time of the value of the planned indicator, it is recorded in the current value of one or more elements of the array of current data in shared memory. 22. Система по п. 14, в которой данные реального времени передаются в вычислительную сеть, по крайней мере, на одно вычислительное устройство, являющееся узлом сети вычислительной сети, если задано конфигурированием узла сети.22. The system according to p. 14, in which real-time data is transmitted to the computer network, at least one computing device, which is the network node of the computer network, if specified by the configuration of the network node. 23. Система по п. 14, в которой конфигурированием задается фильтр адресов узлов, от которых принимаются пакеты принимающим узлом.23. The system of claim 14, wherein the filter sets the address filter of the nodes from which packets are received by the receiving node. 24. Система по п. 14, в которой на узле сети сконфигурирована передача и прием пакетов по одному или нескольким обобщающим признакам.24. The system of claim 14, wherein the transmission and reception of packets is configured on the network node according to one or more general characteristics. 25. Система по п. 14, в которой вычислительное устройство сравнивает полученные данные с сохраненными данными для определения изменившихся данных или вычислительное устройство получает изменившиеся данные с объекта управления, причем устройство управления определяет изменившиеся данные.25. The system of claim 14, wherein the computing device compares the received data with the stored data to determine the changed data, or the computing device receives the changed data from the control object, wherein the control device determines the changed data. 26. Система по п. 14, в которой данные реального времени, изменившиеся с предыдущего такта работы вычислительного устройства, которые были накоплены в массиве кольцевых буферов в оперативной памяти и сжаты с использованием одного из известных алгоритмов сжатия данных, после чего сохранены на устройстве долговременной памяти, также на том же такте передаются в вычислительную сеть пакетами протоколов нижнего уровня, если задано конфигурированием узла сети.26. The system of claim 14, wherein the real-time data that has changed from the previous clock of the computing device, which was accumulated in an array of ring buffers in RAM and compressed using one of the known data compression algorithms, is then stored on a long-term memory device are also transmitted on the same clock to the computer network by the lower-level protocol packets, if specified by the configuration of the network node. 27. Система по п. 14, в которой на узле сети сконфигурирована передача пакетов сжатых архивных данных на несколько узлов сети и прием сжатых архивных данных от нескольких узлов сети.27. The system of claim 14, wherein the packet is configured to transmit compressed archive data packets to multiple network nodes and receive compressed archive data from multiple network nodes.
RU2019118670A 2019-06-17 2019-06-17 Method of organizing data storage on network nodes with data transmission between network nodes with predictable loading of network nodes for real-time systems RU2707675C1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2019118670A RU2707675C1 (en) 2019-06-17 2019-06-17 Method of organizing data storage on network nodes with data transmission between network nodes with predictable loading of network nodes for real-time systems

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2019118670A RU2707675C1 (en) 2019-06-17 2019-06-17 Method of organizing data storage on network nodes with data transmission between network nodes with predictable loading of network nodes for real-time systems

Publications (1)

Publication Number Publication Date
RU2707675C1 true RU2707675C1 (en) 2019-11-28

Family

ID=68836244

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2019118670A RU2707675C1 (en) 2019-06-17 2019-06-17 Method of organizing data storage on network nodes with data transmission between network nodes with predictable loading of network nodes for real-time systems

Country Status (1)

Country Link
RU (1) RU2707675C1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2783474C1 (en) * 2022-02-16 2022-11-14 Общество с ограниченной ответственностью "УМИКОН" Method for forming a data transmission network of an automated process control system

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7283474B1 (en) * 1999-06-04 2007-10-16 Nokia Corporation Packet data transmission control
US20080071748A1 (en) * 2006-09-18 2008-03-20 Infobright Inc. Method and system for storing, organizing and processing data in a relational database
RU2383952C2 (en) * 2004-02-12 2010-03-10 Ирдето Эксесс Б.В. Method and system for external data storage
RU2469482C2 (en) * 2007-11-30 2012-12-10 Нокиа Сименс Нетуоркс Ой Method and system for data transfer in data transfer network
RU2621628C1 (en) * 2016-03-29 2017-06-06 Общество с ограниченной ответственностью "Научно-технический центр РЕЛЭКС" Way of the linked data storage arrangement

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7283474B1 (en) * 1999-06-04 2007-10-16 Nokia Corporation Packet data transmission control
RU2383952C2 (en) * 2004-02-12 2010-03-10 Ирдето Эксесс Б.В. Method and system for external data storage
US20080071748A1 (en) * 2006-09-18 2008-03-20 Infobright Inc. Method and system for storing, organizing and processing data in a relational database
RU2469482C2 (en) * 2007-11-30 2012-12-10 Нокиа Сименс Нетуоркс Ой Method and system for data transfer in data transfer network
RU2621628C1 (en) * 2016-03-29 2017-06-06 Общество с ограниченной ответственностью "Научно-технический центр РЕЛЭКС" Way of the linked data storage arrangement

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2783474C1 (en) * 2022-02-16 2022-11-14 Общество с ограниченной ответственностью "УМИКОН" Method for forming a data transmission network of an automated process control system

Similar Documents

Publication Publication Date Title
US9628384B2 (en) Adaptive industrial network
JP3989969B2 (en) Communication system for client-server data processing system
US7827261B1 (en) System and method for device management
EP3223165B1 (en) File processing method, system and server-clustered system for cloud storage
JP5548829B2 (en) Computer system, data management method, and data management program
US20110271275A1 (en) Software distribution management method of computer system and computer system for software distribution management
US11249663B2 (en) I/O request processing method and device
JP2006504187A5 (en)
KR20070114740A (en) Packet structure and packet transmission method of network control protocol
US9137780B1 (en) Synchronizing multicast data distribution on a computing device
KR20170121911A (en) Method and apparatus for updating firmware on IoT device using P2P
US10284672B2 (en) Network interface
RU2707675C1 (en) Method of organizing data storage on network nodes with data transmission between network nodes with predictable loading of network nodes for real-time systems
US7725591B2 (en) Detecting a timeout of elements in an element processing system
CN114281524A (en) Intelligent cable service processing system management method and device
CN104205730A (en) Network element data access method, device and network management system
KR101610048B1 (en) Method, apparatus and computer program for managing repository of software defined network controller
US11537634B2 (en) Methods for hierarchical propagation in tree structures and devices thereof
JP2017184195A (en) Communication management device, communication management method and program
KR100343231B1 (en) Cluster file system and mapping method thereof
JP6868536B2 (en) Data collection device and data collection system
TWI731592B (en) Cross-protocols control apparatus with apparatus-restoring function and method of restoring apparatus for cross-protocols thereof
CN116743860B (en) Wind tunnel field real-time data distributed multi-line Cheng Caiji architecture
CN110881008B (en) Method for synchronously forwarding database
CN113965623B (en) Industrial control network data acquisition system based on mobile agent