УСТРОЙСТВО И СПОСОБЫ СОЗДАНИЯ МАРШРУТОВ ОБСЛУЖИВАНИЯ ВНУТРИ СИСТЕМЫ УПРАВЛЕНИЯ ТЕХНОЛОГИЧЕСКИМИ ПРОЦЕССАМИ
DEVICE AND METHODS OF FORMING MAINTENANCE ROUTES IN PROCESS CONTROL SYSTEM

ОБЛАСТЬ ТЕХНОЛОГИИ
[0001] Настоящее изобретение главным образом связано с системой управления технологическими процессами на заводах и, реже, с динамическим формированием и обновлением маршрута обслуживания в системе управления технологическими процессами, имеющей беспроводную сеть, которая основана на сетевой топологии.
УРОВЕНЬ ТЕХНИКИ
[0002] Система управления технологическими процессами широко используется на фабриках и/или заводах, в которых осуществляется управление технологическими процессами (например, химическое производство, системы управления электростанциями и тому подобное). Система управления технологическими процессами также используется при добыче и переработке природных ресурсов, например бурении и обслуживании газовых месторождений и тому подобном. Фактически, все производственные процессы, процессы переработки природных ресурсов и так далее могут быть автоматизированы с помощью приложений одной или более систем управления технологическими процессами. Считается, что система управления технологическими процессами наиболее часто используется на предприятиях сельского хозяйства.
[0003] При типовом использовании на предприятиях химической и нефтеперерабатывающей промышленности система управления технологическими процессами содержит, как правило, один или более централизованный или распределенный технологический контроллер, подключенный через коммуникационные каналы по меньшей мере к одному узлу рабочей станции, или одному или более устройству управления производственным процессом, или измерительному устройству, например периферийному устройству, через аналоговую или цифровую шину, либо их комбинацию. Периферийные устройства, к примеру, клапана, позиционеры клапанов, переключатели, трансмиттеры и датчики (например, температуры, давления и датчики расхода) выполняют различные функции, связанные с процессами, например открытие и закрытие клапанов, и измерение производственных параметров. Устройство управления производственным процессом принимает сигналы, связанные с процессами измерения или различными процессами, связанными с периферийными устройствами, и/или другую информацию, имеющую отношение к периферийным устройствам, используя эту информацию для определения управляющих процедур, а затем посылает сигналы, отправляющиеся через одну или более шин к периферийным устройствам для управления производственными процессами. Информация от периферийных устройств и контроллеров доступна, как правило, одному или более приложениям, выполняемых на рабочей станции оператора и позволяет оператору выполнять нужные функции, касающиеся производственных процессов, например просмотр текущего состояния процессов, изменением оператором различных параметров и так далее.
[0004] Различные устройства, участвующие в технологическом процессе, могут быть соединены в физические и/или логические группы для создания логических процессов, например контура управления. Аналогично, контуры управления могут быть связаны с другими контурами управления и/или устройствами для создания субъединиц. Субъединицы могут быть соединены с другими субъединицами для создания единиц, которые в свою очередь могут быть соединены с другими единицами для создания зоны. Производственные процессы обычно содержат связанные зоны и бизнес-структуры, которые в свою очередь обычно содержат производственные процессы, связанные между собой. В результате производственные процессы содержат многоуровневую иерархию, имеющую связанные активы, а хозяйствующие объекты содержат связанные производственные процессы. Другими словами, активы, связанные с производственными процессами, или сами по себе производственные процессы могут быть сгруппированы вместе с активами на высоком уровне.
[0005] Способы реализации систем управления технологическими процессами развивались в течение многих лет. Более старые поколения систем управления технологическими процессами реализовывались с использованием специализированного оборудования и постоянного проводного соединения.
[0006] Тем не менее, современные системы управления технологическими процессами реализованы с использованием сильно распределенной сети рабочих станций, интеллектуальных контроллеров, периферийных смарт-устройств и тому подобного, некоторые или все из которых выполняют часть общей стратегии или плана построения управления. В частности, наиболее современные системы управления технологическими процессами содержат периферийные смарт-устройства и другие компоненты устройств управления, коммуникативно связанные друг с другом и/или с одним или более контроллерами управления через одну или более цифровую шину. В дополнение к периферийным смарт-устройствам, современные системы управления технологическими процессами также содержат аналоговые периферийные устройства, к примеру устройства, потребляющие 4-20 миллиампер (мА) при напряжении 0-10 вольт постоянного тока, и тому подобное, которые обычно напрямую подключены к контроллерам, в отличие от общей цифровой шины данных.
[0007] В обычных промышленных или перерабатывающих предприятиях распределенные системы управления используются для управления большинством технологических процессов, выполняемых на производстве. Предприятие может иметь центральную комнату управления, которая имеет компьютерную систему с системой ввода/вывода для пользователя, дисковую систему ввода/вывода и другие периферийные устройства, известные в компьютерной среде, с одним или более устройствами управления и подсистемами ввода/вывода, подключенными коммуникативно к центральной комнате управления. Дополнительно, одно или более периферийных устройств, как правило, подключены к подсистеме ввода/вывода и к устройствам управления для реализации функций управления и измерений внутри предприятия. Кроме того, подсистема ввода/вывода содержит множество портов ввода/вывода, подключенных к различным периферийным устройствам, использующимся по всему заводу, при этом периферийные устройства содержат различные типы аналитического оборудования, полупроводниковых датчиков давления, емкостных датчиков давления, резистивных температурных датчиков, термопар, тензометров, концевых выключателей, переключателей, весов, преобразователей, клапанных позиционеров, клапанных контроллеров, приводных механизмов, реле, световых индикаторов или любых других устройств, обычно используемых на заводах.
[0008] В данном контексте термин "периферийное устройство" охватывает такие устройства, а также любые другие устройства, выполняющие определенные функции в системе управления. В других случаях периферийные устройства содержат, к примеру, устройства ввода (например, датчики, которые формируют сигналы состояния, определяющие параметры устройств управления, к примеру температуру, давление, расход и тому подобное), а также исполнительные и приводные устройства, выполняющие действия в ответ на команды, полученные от контроллеров и/или других периферийных устройств.
[0009] Обычно аналоговые периферийные устройства подключены к контроллеру с помощью двухжильной витой пары цепи электрического тока, каждое из устройств подключено к контроллеру с помощью одиночной двухжильной витой пары. Аналоговые периферийные устройства способны реагировать и принимать электрический сигнал в указанном диапазоне. В обычной конфигурации, как правило, необходимо, чтобы разность напряжений приблизительно равнялась 20-25 вольт между двумя проводами пары, а сила тока в цепи равнялась 4-20 мА. Аналоговые периферийные устройства, которые передают сигнал в комнату управления, модулируют ток, протекающий через электрическую цепь, при этом сила тока должна быть пропорциональна измеряемому параметру.
[0010] Аналоговые периферийные устройства, которые выполняют действия за счет команд комнаты управления, управляются за счет величины силы тока, протекающей в цепи, где сила тока модулируется портом ввода/вывода системы управления вводом/выводом, которая, в свою очередь, управляется контроллером. Обычные двухпроводные аналоговые устройства имеют набор активных электронных компонентов, получающих до 40 милливатт мощности от цепи электрического тока. Аналоговые периферийные устройства, которые потребляют большую мощность, подключаются к контроллеру с помощью четырех проводов, два из которых подают питание на устройство. Такие устройства известны как четырехпроводные устройства, и они не ограничены по мощности, как двухпроводные устройства.
[0011] Дискретные периферийные устройства способны принимать или передавать двоичный сигнал. Обычно дискретные периферийные устройства работают при напряжении сигнала 24 вольт (либо постоянного, либо переменного тока) при напряжении 110 или 240 вольт переменного тока или 5 вольт постоянного тока. Конечно, дискретные периферийные устройства могут быть разработаны для определенных электрических спецификаций, необходимых для отдельной среды управления. Дискретные периферийные устройства ввода просто переключаются в положение поддержания или разрыва связи с контроллером, тогда как дискретные периферийные устройства вывода выполняют действия в зависимости от наличия или отсутствия сигнала от контроллера.
[0012] Исторически, более привычные периферийные устройства имеют один вход или один выход, который напрямую связан с основной функцией, выполняемой периферийным устройством. Например, единственной функцией, реализуемой обычным резистивным температурным датчиком, является передача данных о температуре за счет модуляции электрического тока, протекающего через двухпроводную витую пару, тогда как единственной функцией, реализуемой обычным аналоговым позиционером клапана, является установка клапана в положение полного открытия и полного закрытия в зависимости от величины тока, протекающего через двухпроводную витую пару.
[0013] Позднее у периферийных устройств, являющихся частью гибридных систем, появилась возможность накладывать цифровые данные на электрическую цепь, используемую для передачи аналогового сигнала. Одним из примеров такой гибридной системы, известной в среде управления, является протокол связи HART (магистральный адресуемый дистанционный преобразователь). Система HART использует величину тока в электрической цепи для отправки аналогового управляющего сигнала или для приема обнаруживаемого регулируемого процесса (как и в традиционных системах), а также накладывает цифровой несущий сигнал на сигнал электрической цепи. Протокол HART позволяет использовать стандарт частотной модуляции Bell 202 для наложения цифровых сигналов на низком уровне поверх аналогового сигнала 4-20 мА. Это позволяет организовать двунаправленную связь и обеспечивает возможность двухстороннего обмена дополнительной информацией между регулируемыми процессами и интеллектуальными периферийными инструментами. Протокол HART обеспечивает постоянную скорость передачи сигнала 1200 бит/с при силе тока 4-20 мА и позволяет приложению узла (ведущего устройства) получать два или более цифровых сигнала в секунду от периферийных устройств. Так как цифровой сигнал частотной модуляции имеет постоянную фазу, то он не создает помех для аналогового сигнала 4-20 мА.
[0014] Частотно модулируемый сигнал имеет достаточно малую скорость распространения, поэтому обеспечивает обновление вторичных регулируемых процессов или других параметров с частотой приблизительно 2-3 раза в секунду. Как правило, цифровой несущий сигнал используется для оправки вторичной или диагностической информации и не используется для реализации функций первичного управления периферийными устройствами. Примерами информации, передаваемой с помощью цифрового несущего сигнала, являются: вторичные регулируемые процессы, диагностическая информация (в том числе диагностика датчиков, диагностика устройств, диагностика электросети и диагностика процессов), рабочая температура, температура датчиков, калибровочная информация, идентификационные номера устройств, конструкционные материалы, настройки и программная информация и тому подобное. Соответственно, одиночное гибридное периферийное устройство может иметь множество входных и выходных параметров и может реализовать множество функций.
[0015] Позднее был утвержден новый протокол управления Американского общества контрольно-измерительных приборов (ISA). Новый протокол обычно называют интерфейсной шиной, он имеет специфичное название SP50, которое является акронимом Подкомитета норм и правил 50. Протокол интерфейсной шины определяет два протокола нижнего уровня. Протокол интерфейсной шины HI передает данные с частотой 31,25 кбит/с и снабжает питанием периферийные устройства, подключенные к сети. Протокол интерфейсной шины Н2 передает данные с частотой 2,5 Мбит/с, однако не обеспечивает питанием периферийные устройства, подключенные к сети, обеспечивая избыточную среду передачи данных. Протокол интерфейсной шины является непатентованным открытым стандартом, и на данный момент является наиболее распространенным промышленным стандартом, что привело к созданию и использованию множества устройств интерфейсной шины на промышленных предприятиях. Так как устройства интерфейсной шины используются в дополнение к другим типам периферийных устройств, например устройств HART 4-20 мА, то для каждого из таких различных типов устройств поддерживается структура взаимодействия через систему ввода/вывода.
[0016] Новейшие интеллектуальные периферийные устройства, которые, как правило, являются по своей природе цифровыми, имеют режимы обслуживания и улучшенные функции, которые недоступны для более старых систем управления. Даже если все компоненты распределенной системы управления поддерживают одинаковый стандарт (например, стандарт интерфейсной шины), оборудование системы управления одного производителя не может получить доступ к вторичным функциям или вторичной информации, предоставляемой периферийными устройствами другого производителя.
[0017] Таким образом, одним из важных аспектов системы управления технологическими процессами является разработка способа, при котором периферийные устройства будут коммуникативно подключены друг к другу, к контроллерам и другим системам или устройствам внутри системы управления технологическими процессами или промышленного предприятия. В общем, различные коммуникационные каналы, линии и пути, позволяющие периферийным устройствам функционировать внутри системы управления технологическими процессами, совместно именуются как коммуникационная сеть ввода/вывода.
[0018] Топология коммуникационной сети и физические подключения или маршруты, используемые для реализации коммуникационной сети ввода/вывода, имеют значительное влияние на устойчивость и целостность обмена данными между периферийными устройствами, особенно, при влиянии на коммуникационную сеть ввода/вывода факторов внешней среды или условий работы системы управления технологическими процессами. Например, многие объекты промышленных систем управления и связанные с ними коммуникационные сети ввода/вывода подвергаются воздействию агрессивной физической среды (например, воздействию высокой, низкой или переменной температурам, вибрациям, агрессивным газам или жидкостям и так далее), сложным электрическим условиям (например, высокому шуму, низкому качеству электрической энергии, переходным напряжениям и так далее) и так далее. В любом случае, факторы внешней среды ставят под угрозу надежность связи между одним или более периферийным устройством, контроллером и так далее. В некоторых случаях такие ненадежные каналы связи снижают эффективность контроля системы управления технологическими процессами или мешают выполнению соответствующих способов управления, что приводит к снижению эффективности и/или рентабельности системы управления технологическими процессами, чрезмерному износу или повреждению оборудования, созданию опасных условий, которые могут привести к порче оборудования, строений, наносить вред окружающей среде или людям.
[0019] С целью минимизации влияния факторов окружающей среды и для обеспечения постоянных каналов связи коммуникационные сети ввода/вывода в системах управления технологическими процессами исторически используют сети с проводными подключениями, где для проводов используется изоляция, защитные экраны и кабельные каналы. Также периферийные устройства внутри таких систем управления технологическими процессами, как правило, коммуникативно подключены к контроллерам, рабочим станциям и другим компонентам системы управления технологическими процессами с использованием многоуровневой топологии и использованием проводных соединений, в которой неинтеллектуальные устройства напрямую подключены к контроллерам, используя аналоговые интерфейсы, например проводные интерфейсы 4-20 мА, 0-10 вольт постоянного тока или платы ввода/вывода. Интеллектуальные устройства, такие как устройства интерфейсной шины, также подключены с использованием цифровой шины данных, которая подключена к контроллерам через интерфейс интеллектуальных периферийных устройств.
[0020] Изначально коммуникационные сети ввода/вывода, основанные на проводных соединениях, обеспечивают надежную сеть ввода/вывода, однако их надежность со временем очень сильно снижается в результате стрессовых воздействий окружающей среды (например, агрессивных газов или жидкостей, вибрации, влажности и так далее). Например, сопротивление контактов проводов коммуникационной сети ввода/вывода увеличивается за счет коррозии, окисления и тому подобного. Кроме того, эффективность изоляции проводов и/или экранирования снижается или полностью нарушается, таким образом создаются условия, при которых электрические помехи или шумы искажают сигналы, передаваемые по проводам коммуникационной сети ввода/вывода. В некоторых случаях нарушение изоляции происходит в результате короткого замыкания, в результате чего полностью разрушаются провода коммуникационных сетей ввода/вывода.
[0021] Кроме того, установка коммуникационных сетей ввода/вывода, основанных на проводных соединениях, требует больших затрат, в частности, в том случае, если такие сети устанавливаются на больших промышленных предприятиях или объектах, которые разбросаны на большой территории, к примеру на заводах по переработке нефти или химических предприятиях, которые имеют площадь в несколько акров земли. Во многих случаях провода коммуникационной сети ввода/вывода прокладываются на очень большие расстояния и/или проходят через, под или вокруг множества структур (например, стен, строений, оборудования и так далее), такая большая протяженность проводов требует больших трудовых ресурсов, материалов и затрат. Дополнительно, такая большая протяженность проводов особенно чувствительна к искажениям сигнала, связанным с емкостным сопротивлением проводников и искажениями электрических сигналов; каждая из этих причин обуславливает ненадежную связь.
[0022] Кроме того, такие коммуникационные сети ввода/вывода, основанные на проводных соединениях, как правило, сложно переконфигурировать при каких-либо изменениях или обновить при необходимости. Добавление нового периферийного устройства обычно требует установки проводов между новым периферийным устройством и контроллером. Модернизация технологических процессов в таком случае может быть очень сложной и требовать больших затрат ввиду большой протяженности проводов и ограниченности пространства, что часто встречается в старых устройствах управления производственным предприятия или систем. Большое количество проводов внутри изоляционных каналов, оборудования и/или различных структур, монтируемых вдоль доступных кабельных каналов, значительно увеличивают сложность модернизации или добавления новых периферийных устройств в существующих системах. Замена существующих периферийных устройств на новые, требующие отличных от существующих технических условий, может представлять определенные трудности в случае, если необходимо установить новое периферийное устройство с другим количеством проводов или характеристиками. Такие модификации обуславливают длительные простои промышленного предприятия.
[0023] Беспроводные коммуникационные сети ввода/вывода используются для облегчения сложностей, связанных с коммуникационными сетями ввода/вывода, основанными на проводных соединениях, а также для снижения стоимости, связанной с установкой датчиков или доводчиков внутри системы управления технологическими процессами. Беспроводные коммуникационные сети ввода/вывода также более предпочтительны для систем управления технологическими процессами и их элементов, чем сложные для доступа коммуникационные сети ввода/вывода, основанные на проводных соединениях.
Например, патент US №7436797, называемый "Беспроводная архитектура и поддержка систем управления технологическими процессами", Shepard и др., запатентованный 14 октября 2008 года, содержащийся в прямой форме в виде ссылки в данном документе, указывает на то, что недорогие беспроводные сетевые ячеистые структуры могут быть развернуты внутри системы управления технологическими процессами как по отдельности, так и в комбинации с соединениями типа точка-точка для создания надежных беспроводных коммуникационных сетей, которые легко настраивать, конфигурировать, изменять и контролировать, таким образом делая коммуникационные сети более надежными, менее дорогостоящими и более безотказными.
[0024] Беспроводные сети ячеистой структуры (или ячеистая сетевая топология) используют множественные узлы, каждый из которых может работать не только в качестве клиента, принимая и отправляя свои собственные данные, но также может выступать в качестве повторителя или передающей станции, распространяющей данные через сеть к другим узлам. Каждый узел подключен к ближайшему узлу и, преимущественно, к множеству ближайших узлов, каждый из которых может быть подключен к дополнительным ближайшим узлам. В результате образуется сеть узлов, которая обеспечивает множество маршрутов взаимодействия одного узла с другими через сеть, таким образом создается недорогая надежная сеть, позволяющая поддерживать подключение или переконфигурацию, даже при повреждении или блокировке маршрутов взаимодействия.
[0025] В беспроводной сети в виде ячеистой структуры каждое устройство (узел) подключается к шлюзу с помощью беспроводного соединения или непрямого соединения через ближайшее устройство. Каждое устройство имеет определенный уровень сигнала, который, как правило, регулируется в зависимости от расстояния между устройством и шлюзом или другим ближайшим устройством. В случае если со шлюзом нет прямого беспроводного соединения, каждое устройство подключается к шлюзу через другое одноранговое устройство, которое имеет подключение к шлюзу или другому устройству. Количество устройств, используемых совместно для подключения узлов к шлюзу, известно как количество транзитных шлюзов по маршруту соединения. Каждое устройство использует маршрут соединения и порядок, в котором выполняются подключения устройство-устройство, именуемый как путь сообщения или маршрутизация.
[0026] Независимо от типа сети, реализованной внутри технологической системы, обслуживающий персонал выполняет задачи обслуживания и калибровки устройств внутри сети. Это означает физическое перемещение внутри технологического процесса от устройства к устройству в соответствии с упорядоченными списками точек остановки для выполнения необходимых действий по сбору данных, обслуживанию и калибровке. Обычно приложения для обслуживания на основании маршрутизации используют определенный процесс организации обслуживания с использованием данных о физическом местоположении устройств и указаниях точек остановки вдоль определенного маршрута. Маршрут содержит упорядоченный список точек остановки, через которые должны пройти инженеры или другой обслуживающий персонал, для выполнения задач, связанных со сбором данных, калибровкой устройств, выполнением обслуживания устройства или выполнением визуальной проверки устройства, тогда как определенный маршрут указан как наиболее эффективный маршрут выполнения данных задач, на основании процессов, сформированных вручную, определяются задачи, которые могут возникнуть по пути следования маршрута. Другими словами, тогда как приложения, основанные на маршрутизации, формируют техническое задание для обслуживающего персонала, маршруты, используемые обслуживающим персоналом, которые сформированы вручную, обычно зависят от физического местоположения устройств и точек остановки. Это не только приводит к неэффективному использованию рабочего времени обслуживающего персонала, в частности, когда количество устройств и точек остановки измеряется десятками или сотнями, но также приводит к тому, что созданный вручную маршрут является неэффективным и неоптимальным и в большей степени недостаточно оптимальным.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
[0027] Уровень сигнала и маршруты коммуникаций внутри беспроводной сети используются для автоматического создания маршрута обслуживания для обслуживающего или другого персонала предприятия, для выполнения калибровки устройства, сбора данных, проверки оборудования или других действий, связанных с обслуживанием, определенных в маршруте обслуживания. Процесс, в результате которого формируется маршрут обслуживания, основан на последовательности вычислений, основанных на удаленности каждого устройства от шлюза и/или относительно ближайших устройств. Удаленность устройства зависит от уровня сигнала между беспроводным шлюзом и/или ближайшими устройствами, а также количества транзитных шлюзов по маршруту связи для данного набора устройств, взаимодействующих в сети. Учитывая, что все устройства взаимодействуют с беспроводным шлюзом либо напрямую, либо через другое устройство, создается упорядоченный список всех устройств с нулевым количеством транзитных шлюзов в их коммуникационном маршруте (то есть напрямую связанных со шлюзом), где устройства упорядочены по уровню сигнала относительно шлюза. Начиная с первого устройства в списке, создается дополнительный упорядоченный список ближайших устройств, напрямую взаимодействующих с первым устройством, и дополнительный упорядоченный список, который добавляется к исходному упорядоченному списку после первого устройства. Данный процесс создания дополнительных упорядоченных списков и добавления их к исходному списку повторяется несколько раз, каждый раз учитывая следующее устройство в добавленном упорядоченном списке после предыдущей итерации до тех пор, пока не будут учтены все устройства. Как только все устройства, взаимодействующие с беспроводным шлюзом напрямую или через другое устройство, будут учтены, то устройства в списке, связанном с точками остановки вдоль маршрута, и порядок устройств в списке, связанном с маршрутом, окажутся среди точек остановки.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[0028] Фигура 1 представляет собой комбинацию блоков и блок-схему распределенной системы управления в соответствии с данным изобретением;
[0029] Фигура 2 представляет собой комбинацию блоков и блок-схему беспроводной коммуникационной сети внутри элементов технологического процесса в соответствии с данным изобретением;
[0030] Фигура 3 представляет собой блок-схему беспроводной коммуникационной среды, в которой беспроводная сеть содержит множество узлов, соответствующих различным периферийным устройствам;
[0031] Фигуры 4A и 4B представляют собой схемы, представленные в табличной форме, беспроводной сети в виде ячеистой структуры и беспроводной топологии узлов типа точка-точка, а также соответствующие ближайшие узлы в порядке удаленности;
[0032] Фигура 5 представляет собой функциональную схему формирования маршрута обслуживания в соответствии с данным изобретением;
[0033] Фигуры 6A-6E иллюстрируют формирование и последовательность создания упорядоченного списка на основании алгоритма, проиллюстрированного на Фигуре 5, где алгоритм выполняет несколько итераций для списка беспроводной сети в виде ячеистой структуры;
[0034] Фигура 7 представляет собой функциональную схему алгоритма, проиллюстрированного на Фигуре 5, создания упорядоченного списка узлов, напрямую взаимодействующих со шлюзом;
[0035] Фигура 8 представляет собой функциональную схему алгоритма, проиллюстрированного на Фигуре 5, интерактивного создания упорядоченного списка узлов, напрямую взаимодействующих с узлом из списка, созданного на основании алгоритма, проиллюстрированного на Фигуре 7, и дополнительного алгоритма, проиллюстрированного на Фигуре 9;
[0036] Фигура 9 представляет собой функциональную схему алгоритма, проиллюстрированного на Фигуре 5, добавления списка, сформированного на основании алгоритма, проиллюстрированного на Фигуре 7 и добавленного на предыдущей итерации, проиллюстрированной на Фигуре 5;
[0037] Фигура 10 представляет собой блок-схему маршрута обслуживания через среду взаимодействия беспроводной сети в виде ячеистой структуры, проиллюстрированной на Фигуре 3, сформированную на основании алгоритма, проиллюстрированного на Фигуре 5;
[0038] Фигуры 11A-11E иллюстрируют формирование и последовательность создания упорядоченного списка на основании алгоритма, проиллюстрированного на Фигуре 5, где алгоритм выполняет несколько итераций для списка беспроводной сети типа точка-точка; и
[0039] Фигура 12 представляет собой блок-схему маршрута обслуживания через среду взаимодействия беспроводной сети типа точка-точка, проиллюстрированной на Фигуре 3, сформированную на основании алгоритма, проиллюстрированного на Фигуре 5;
ДЕТАЛЬНОЕ РАСКРЫТИЕ ИЗОБРЕТЕНИЯ
[0040] Ссылаясь на Фигуру 1, распределенная система управления технологическими процессами 10 содержит одно или более устройство управления 12, подключенное к одной или более главной рабочей станции или компьютеру 14 (который может быть компьютером или рабочей станцией любого типа). Устройство управления 12 также подключено к блоку устройств ввода/вывода 20, 22, каждое из которых, в свою очередь, подключено к одному или более периферийному устройству 25-39. Контроллеры 12, которые исключительно в качестве примера являются контроллерами DeltaV™, продаваемыми компанией Fisher-Rosemount Systems Inc, коммуникативно подключены к основным компьютерам 14, к примеру, через Ethernet подключение 40 или другой канал связи. Аналогично, контроллеры 12 коммуникационно подключены к периферийным устройствам 25-39 используют любое необходимое аппаратное или программное обеспечение, связанное, к примеру, с устройствами стандарта 4-20 мА и/или любыми интеллектуальными коммуникационными протоколами, например протоколом интерфейсной шины или протоколом HART. Общеизвестно, что контроллеры 12 реализованы или управляются алгоритмами устройств управления, сохраненными в них или, в противном случае, связаны и взаимодействуют с устройствами 25-39 для управления процессами любыми необходимыми способами.
[0041] Периферийные устройства 25-39 могут быть устройствами любого типа, например сенсорами, клапанами, передатчиками, позиционерами и так далее, тогда как платы ввода/вывода блоков 20 и 22 могут быть устройствами ввода/вывода любого типа, поддерживающими любые требуемые протоколы связи или протоколы поддержки контроллеров, например протоколы HART, интерфейсная шина, открытая промышленная шина и так далее. В варианте воплощения изобретения, проиллюстрированном на Фигуре 1, периферийные устройства 25-27 являются устройствами стандарта 4-20 мА, которые взаимодействуют через аналоговые линии с платами ввода/вывода 22А. Периферийные устройства 28-31 проиллюстрированы как устройства HART, подключенные к устройствам ввода/вывода 20А, совместимым с протоколом HART. Подобным образом периферийные устройства 32-39 являются интеллектуальными устройствами, например устройствами интерфейсной шины, которые взаимодействуют через цифровую шину 42 или 44 с платами ввода/вывода 20В или 22В, используя, к примеру, протокол связи типа интерфейсная шина. Конечно, периферийные устройства 25-39 и блоки плат ввода/вывода 20 и 22 способны поддерживать любые другие необходимые стандарты или протоколы, помимо стандартов и протоколов 4-20 мА, HART или интерфейсная шина, включая любые стандарты или протоколы, которые будут разработаны в будущем.
[0042] Каждый из контроллеров 12 выполнен с возможностью реализации стратегии управления с использованием так называемых функциональных блоков, где каждый функциональный блок является частью (например, подпрограммой) общего алгоритма управления и работает в сочетании с другими функциональными блоками (через каналы связи) для реализации схемы управления производством внутри системы управления технологическими процессами 10. Функциональные блоки обычно выполняют одну функцию ввода, например, связанную с передатчиком, датчиком или другим устройством измерения, функцию управления, например, связанную с алгоритмом управления, которые выполняют PID-устройства, устройства с нечеткой логикой и так далее, или функцию вывода, которая управляет работой некоторых устройств, например клапанов, для выполнения некоторых физических функций внутри системы управления технологическими процессами 10. Конечно же, существуют гибридные и другие типы функциональных блоков. Наборы таких функциональных блоков называются модулями. Функциональные блоки и модули сохраняются внутри и выполняются самим контроллером 12, которые обычно являются оболочками при использовании функциональных блоков, или связаны с устройствами стандарта 4-20 мА и некоторыми типами интеллектуальных периферийных устройств, или могут быть сохранены и реализованы с помощью самих периферийных устройств, которые могут быть частными случаями устройств интерфейсной шины, тогда как система управления 10, проиллюстрированная на Фигуре 1, описана как использующая алгоритмы управления функциональных блоков, стратегия управления также может быть реализована или разработана с использованием других условных обозначений, например, в виде принципиальной электросхемы, последовательной блок-схемы и тому подобного и с использованием необходимых патентованных или непатентованных языков программирования.
[0043] Более того, существует известный способ, при котором одна или более рабочих станций 14 содержат приложение, реализующее интерфейс пользователя, позволяющее пользователю, например оператору, наладчику, обслуживающему персоналу и так далее, взаимодействовать с сетью устройств управления производственным процессом 10 внутри производственного предприятия. В частности, рабочая станция 14 содержит один или более интерфейсов пользователя, которые запускаются на процессорах рабочих станций 14 для взаимодействия с базой данных, модулями управления или другими алгоритмами внутри контроллера 12 или блоков ввода/вывода 20, 22, с периферийными устройствами 25-39 и модулями внутри этих периферийных устройств и так далее, для получения информации со всего промышленного предприятия, например информации, связанной с состоянием процессов в системе управления технологическими процессами 10. Программный интерфейс пользователя обрабатывает и/или отображает эту собранную информацию на экране устройства, подключенном к одной или более рабочих станций 14. Собранная, обработанная и/или отображаемая информация является информацией о состоянии процессов, сигналы тревоги и предупреждений, генерируемые внутри производственного предприятия, данные об обслуживании и так далее. Аналогично, одно или более приложений сохраняются в виде исполняемых программ в рабочих станциях 14 для выполнения действий по настройке, например создания или настройки модулей, выполняемых внутри производственного предприятия, выполнения действий по управлению работой, например изменения точек установки или других переменных управления внутри производственного предприятия и тому подобного. Конечно, количество и типы алгоритмов не ограничиваются описанными в данном документе, соответственно и другое количество и типы устройств управления могут быть сохранены и реализованы на рабочих станциях 14, при необходимости. Рабочие станции 14 также подключаются, к примеру, через Интернет, Интранет, шину, локальную сеть 40 и так далее к корпоративной WAN -сети, а также к компьютерной системе, позволяющей осуществлять удаленный контроль или взаимодействовать с предприятием 10 из удаленного местоположения.
[0044] Как явно следует из описания Фигуры 1, взаимодействие между основными рабочими станциями 14 и контроллерами 12, а также между контроллерами 12 и периферийными устройствами 25-39 реализовано за счет проводных подключений, содержащих одно или более проводных подключений с использованием стандартов HART, интерфейсной шины или 4-20 мА. Тем не менее, как указано выше, проводные подключения внутри технологического процесса на Фигуре 1 можно заменить или расширить за счет более надежных беспроводных подключений, которые проще устанавливать и настраивать, что позволяет оператору или другому пользователю анализировать или просматривать функциональные возможности беспроводной сети и тому подобное.
[0045] Например, беспроводная сеть может быть развернута повсюду в системе управления технологическими процессами, как раскрыто в патенте US №7436797 и включено в данное описание путем ссылки выше. В результате, некоторые или все устройства ввода/вывода внутри системы управления технологическими процессами, например датчики и доводчики, размещаются и подключаются к системе управления технологическими процессами с использованием проводных технологий, беспроводных технологий или их комбинаций. Например, проводная связь устанавливается между некоторыми контроллерами 12, рабочими станциями 14 и периферийными устройствами 25-31, в свою очередь беспроводное соединение устанавливается между некоторыми другими контроллерами 12, рабочими станциями 14 и периферийными устройствами 32-39. Беспроводные технологии содержат, кроме всего прочего, технологии ZigBee, WiFi, Bluetooth, Ultra Wideband (UWB) и так далее или любые другие беспроводные технологии малого радиуса действия, а также спутниковую, Wi-Max и другие технологии большого радиуса действия. В частности, беспроводные технологии содержат любые коммерческие серийные беспроводные изделия для передачи данных устройств управления. Сетевой протокол реализуется поверх беспроводной топологии или же новые стандарты устройств управления разрабатываются для беспроводного взаимодействия. В одном примере реализуется ячеистая топология, например самовосстанавливающаяся/самоорганизующаяся ячеистая технология.
[0046] Фигура 2 иллюстрирует беспроводную коммуникационную сеть 60, которая используется для обеспечения связи между различными устройствами, проиллюстрированными на Фигуре 1, и, в частности, между контроллерами 12 (или связанными с ними устройствами ввода/вывода 22) на Фигуре 1 и периферийными устройствами 25-39, между контроллерами 12 и главными рабочими станциями 14 или между главными рабочими стациями 14 и периферийными устройствами 25-39 на Фигуре 1. Тем не менее, необходимо понимать, что беспроводная коммуникационная сеть 60 на Фигуре 2 используется для обеспечения связи между любыми другими типами или группами устройств внутри технологического процесса или производственной среды.
[0047] Коммуникационная сеть 60 на Фигуре 2 проиллюстрирована в качестве сети, содержащей множество коммуникационных узлов, которые содержат один или более корневых узлов 62, один или более узлов-повторителей 64, один или более узлов среды 66 (проиллюстрированных на Фигуре 2 как узлы 66а и 66b) и один или более периферийных узлов 68 (проиллюстрированных на Фигуре 2 как узлы 68а, 68b и 68с). В общем смысле узлы беспроводной коммуникационной сети 60 работают как коммуникационная сеть ячеистой структуры, где каждый узел получает информацию, определяет, предназначена ли информация данному узлу, и если нет, то повторяет или транслирует ее дальше вдоль любых других узлов внутри диапазона связи. Как известно, любой узел в сети ячеистой структуры взаимодействует с любым другим узлом в пределах дальности связи внутри сети, и отдельный сигнал связи может проходить через множество узлов перед тем, как достигнуть заданного узла назначения. Дополнительный концептуальный пример сетевой топологии ячеистой структуры описан ниже на примере Фигуры 3 и 4.
[0048] Как проиллюстрировано на Фигуре 2, корневой узел 62 содержит или коммуникативно подключен к рабочей станции или главному компьютеру 70, который, в качестве примера, может быть любым главным компьютером или рабочей станцией 14 на Фигуре 1, тогда как корневой узел 62 проиллюстрирован как подключенный к рабочей станции 70 через проводное подключение по локальной сети 72, вместо этого подключения может быть использован любой канал связи. Корневой узел 62 содержит беспроводное устройство конвертации или связи 74 и беспроводной трансивер 76 для обеспечения эффективного канала связи через сеть 60. В частности, беспроводное устройство конвертации 74 получает сигнал от рабочей станции или главного компьютера 70 и преобразует этот сигнал в сигнал беспроводной связи, который затем отправляется через сеть 60 с помощью элементов передатчика трансивера 76. И наоборот, беспроводное устройство конвертации 74 декодирует сигнал, полученный через элементы приемника трансивера 76 для определения, направлен ли сигнал на корневой узел 62, и, если нет, то дополнительно декодирует сигнал для извлечения беспроводной кодировки и получения исходного сигнала, сформированного отправителем в различных узлах 64, 66 или 68, внутри сети 60.
[0049] Необходимо понимать, что аналогичным образом каждый из других коммуникационных узлов, включая узел-повторитель 64, узел среды 66 и периферийный узел 68, содержит узел обмена данными и беспроводной трансивер (не проиллюстрирован) для кодирования, отправки и декодирования сигналов через беспроводную сеть в виде ячеистой структуры 60. Тогда как различные типы узлов 64, 66 и 68 внутри коммуникационной сети 60 в основном отличаются, каждый из них, как правило, работает на прием беспроводного сигнала, декодирование сигнала для определения узла назначения (или устройства, подключенного к такому узлу вне беспроводной коммуникационной сети 60) и повторение или переотправку сигнала в том случае, если сигнал не предназначен данному узлу и не передавался ранее этим узлом. Таким образом, сигналы отправляются от исходного узла ко всем другим узлам внутри беспроводного диапазона, каждый узел вне диапазона узла назначения переотправляет сигнал всем остальным узлам внутри диапазона данного узла, и процесс повторяется до тех пор, пока сигнал не распространится ко всем узлам внутри диапазона, по меньшей мере к одному другому узлу. Тем не менее, узел-повторитель 64 работает как простой повторитель сигнала внутри коммуникационной сети 60, ретранслируя таким образом сигнал от одного узла через узел-повторитель 64 к следующему узлу 62, 66 или 68. В основном, функцией узла-повторителя 64 является работа в качестве канала связи между двумя различными узлами, чтобы обеспечить передачу сигнала между различными узлами, когда эти узлы находятся вне прямого беспроводного диапазона передачи. Так как узел-повторитель 64 обычно не связан с другими устройствами в узле, узлу-повторителю 64 достаточно просто декодировать полученный сигнал для того, чтобы определить, повторялся ли сигнал ранее с помощью узла-повторителя (говоря другими словами, сигнал, который был отправлен узлом-повторителем ранее и который был просто получен назад на узел-повторитель вследствие реализации функций повторения различных узлов в коммуникационной сети 60). Если узел-повторитель не получал отдельный сигнал ранее, узел-повторитель 64 просто работает как повторитель данного сигнала с помощью переотправки сигнала через трансивер узла-повторителя 64. Следует помнить, тем не менее, что узел-повторитель 64 необязательно должен находиться внутри беспроводной сети в виде ячеистой структуры, так как это обеспечено необходимым количеством других узлов 66, 68 связанных друг с другом для того, чтобы избежать изолированных узлов и/или узких мест. Другими словами, когда узел зависит от отдельного узла или ограниченного количества узлов для маршрутизации сообщений к корневому узлу 62, может возникнуть узкое место в сети (также известное как аппаратное ограничение пропускной способности). Узел-повторитель 64 используется для снижения количества узких мест или риска возникновения узких мест (так как риск возникновения узких мест возможен в случае отказа узлов 66 и 68).
[0050] С другой стороны, каждый из периферийных узлов 68 обычно подключен к одному или более устройств внутри технологического процесса и, говоря в общем, подключен к одному или более устройств, проиллюстрированных как периферийные устройства 80-85 на Фигуре 2. Периферийные устройства 80-85 могут быть периферийными устройствами любого типа, в том числе четырехпроводными устройствами, двухпроводными устройствами, устройствами HART, устройствами интерфейсной шины, устройствами 4-20 мА, интеллектуальными или неинтеллектуальными устройствами и так далее, например устройства 25-39 на Фигуре 1. С целью иллюстрации, периферийные устройства 80-85 на Фигуре 2 проиллюстрированы как периферийные устройства HART, соответствующие стандарту протокола HART. Конечно, устройства 80-85 могут быть устройствами любого типа, например датчиками/передатчиками, клапанами, задвижками и так далее, которые являются периферийными устройствами. Кроме того, устройства 80-85 могут представлять собой нетрадиционные периферийные устройства, например контроллеры 12, устройства ввода/вывода 22А-20 В, рабочие станции 14 или любые другие типы устройств. Необходимо также понимать, что периферийный узел 68 (а также узел 66) интегрируется с устройством, к которому он относится, таким образом создается беспроводное устройство, например, беспроводной контроллер беспроводное устройство ввода/вывода, беспроводная рабочая станция, беспроводное периферийное устройство и так далее.
[0051] В любом случае периферийный узел 68а, 68b, 68с содержит линию передачи сигнала, которая прикреплена к его соответствующему периферийному устройству 80-85 для приема и отправки данных к периферийным устройствам 80-85. Конечно, в данном примере, такая линия передачи сигнала напрямую подключена к устройствам 80-85, устройству HART или к линии стандарта HART, уже подключенной к периферийному устройству 80-85. При желании, периферийное устройство 80-85 может быть подключено к другим устройствам, например устройствам ввода/вывода 20А или 22А на Фигуре 1, или к любому другому устройству с помощью проводного канала связи, дополнительно подключенного к периферийным узлам 68а, 68b, 68с. Дополнительно, как проиллюстрировано на Фигуре 2, любой отдельный узел 68а, 68b, 68с может быть подключен к множеству периферийных узлов (как проиллюстрировано в отношении периферийного узла 68 с, который подключен к четырем различным периферийным устройствам 82-85), и каждый периферийный узел 68а, 68b, 68с работает для передачи сигналов к или от периферийных устройств 80-85, к которым они подключены.
[0052] Для облегчения задач управления работой коммуникационной сети 60 используется узел среды 66. В этом случае узел среды 66а и 66b содержит или коммуникационно подключен к устройству или датчику, выполняющему измерение параметров, например влажности, температуры, давления, количества осадков или любых других параметров окружающей среды, которые могут оказывать влияние на беспроводную связь внутри коммуникационной сети 60. Данная информация используется для анализа и прогнозирования проблем внутри коммуникационной сети, которые могут быть вызваны по меньшей мере частично влиянием окружающей среды. При желании датчики параметров окружающей среды могут быть датчиками любого типа и могут содержать, к примеру, датчики/трансмиттеры HART, датчики 4-20 мА или датчики панели приборов любого дизайна или конфигураций. Конечно, каждый узел среды 66а, 66b содержит один или более датчиков параметров окружающей среды, и различные узлы среды содержат такие же или различные виды или типы датчиков окружающей среды. Аналогично, при желании, один или более узлов 66а, 66b могут содержать устройства измерения электромагнитных шумов для измерения уровня окружающего электромагнитного шума, длина волны которого используется коммуникационной сетью 60 для передачи сигнала. Конечно, если спектр отличается от РЧ спектра, используемого в коммуникационной сети 60, различные типы устройств измерения шума содержатся в одном или более узлов среды 66. Более того, тогда как узлы среды 66 на Фигуре 2 описаны как содержащие устройства измерения параметров окружающей среды или датчики, любые другие узлы 68 содержат такие устройства, чтобы средства анализа могли определить условия окружающей среды в каждом узле для анализа работы коммуникационной сети 60.
[0053] Следует помнить, что Фигура 2 иллюстрирует блок-схему и расположение узлов среды 66а, 66b, относящихся к периферийным узлам 68а-68с, что не предполагает их фактического размещения в данной фактической зоне устройства управления. Скорее, узлы среды 66а, 66b (а также другие узлы среды, которые не проиллюстрированы, или одиночные узлы среды) предполагается размещать поблизости зоны устройства управления в логической или оперативной форме, как проиллюстрировано концептуально на Фигуре 3 и 4.
[0054] Фигура 3 концептуально иллюстрирует сеть 100 с беспроводным шлюзом 102, взаимодействующим с узлами N01-N12, которые связаны с различными периферийными устройствами, например периферийными устройствами 25-39, и контроллерами, например контроллером 12, где шлюз 102 и узлы N01-N12 образуют беспроводную сеть в виде ячеистой структуры. Периферийные устройства и контроллеры, с которыми связаны узлы, как правило, рассматриваются как интеллектуальные измерительные устройства обработки, поддерживающие беспроводную связь. Так как периферийные устройства и контроллеры являются устройствами обработки с поддержкой беспроводной сети, они взаимодействуют с сетью 100, рабочими станциями 104 и серверами 106 через шлюз 102. Таким образом, как и в ситуации с традиционными проводными сетями, устройства обработки с поддержкой беспроводной сети обеспечивают обмен данными между рабочей станцией 104 и сервером 106, и в конфигурации беспроводной ячеистой сети или точка-точка каждое устройство с поддержкой беспроводной сети и действующий контроллер выступает не только в роли клиента, принимающего и отправляющего собственные данные, но и в качестве повторителя или передатчика данных через сеть другому устройству обработки. Таким образом, каждое периферийное устройство или контроллер с поддержкой беспроводной сети является узлом внутри сети 100. Термин "узел", в данном контексте, означает логическое представление физического устройства обработки данных внутри сети 100. Соответственно, необходимо понимать, что тогда, когда термин "узел" используется для описания технологии формирования маршрута обслуживания, данный термин также обозначает устройство обработки данных с поддержкой беспроводной сети, которое физически формирует сеть 100. Таким образом, технология формирования маршрута обслуживания, несмотря на то, что в данном документе она описана со ссылкой на узлы, выполняется с использованием идентификации устройств обработки, например, обозначения устройства или другой идентифицирующей информации, которая однозначно идентифицирует каждое устройство обработки данных внутри сети 100.
[0055] Беспроводной шлюз 102 и узлы N01-N12 взаимодействуют с использованием беспроводного коммуникационного протокола, например протокола WirelessHART (IEC 62591), однако могут быть использованы и любые другие беспроводные протоколы. Протокол WirelessHART - это протокол множественного доступа с разделением каналов по времени и переключением каналов для организации связи внутри беспроводной сети 100. Программное обеспечение для управления сетью реализовано в шлюзе 102 в соответствии с планом взаимодействия между узлами N01-N12 и беспроводным шлюзом 102, определением маршрутов взаимодействия внутри беспроводной сети в виде ячеистой структуры 100. Несмотря на то что Фигура 3 иллюстрирует беспроводную сеть в виде ячеистой структуры 100 только с одним шлюзом 102, возможно использование нескольких шлюзов, при этом они совместно используют программное обеспечение для управления сетью. Аналогично, несмотря на то, что проиллюстрировано только 12 узлов, ячеистая сеть может иметь десятки или даже сотни узлов, которые делают формирование маршрута обслуживания более простым и удобным.
[0056] Сеть в виде ячеистой структуры 100, в свою очередь, подключена к главной рабочей станции или компьютеру 104, например к главной рабочей станции или компьютеру 14, и/или серверам 106 через канал связи 108, проиллюстрированный как подключение по локальной сети, например подключение по локальной сети 40. Шлюз 102 соотносится с корневым узлом 62, как указано выше, и осуществляет взаимодействие ячеистой сети с главной рабочей станцией 14 и/или серверами 106 через подключение по локальной сети 108 с использованием нескольких протоколов, например, описанных выше.
[0057] Там, где беспроводное ячеистое подключение проиллюстрировано в виде пунктирной линии, дополнительно некоторые или все узлы N01-N12 подключены в виде конфигурации точка-точка, как проиллюстрировано сплошной линией на Фигуре 3. Таким образом необходимо понимать, что сеть 100 может иметь альтернативную конфигурацию, например, сеть 100 может быть исключительно беспроводной сетью точка-точка, исключительно сетью в виде ячеистой структуры, сетью с возможностью переключения из режима точка-точка в режим беспроводной сети в виде ячеистой структуры и наоборот или же может быть реализована в виде комбинации беспроводной сети точка-точка и беспроводной сети в виде ячеистой структуры. Примерами переключаемых беспроводных сетей (например, ячеистой сети в сеть точка-точка и наоборот) и комбинации сети точка-точка и ячеистой сети раскрыты в патенте US №7436797, Shepard и другие, ссылка на который была указана выше. Следует дополнительно понимать, что сеть 100 может быть реализована в виде комбинации сетей, основанных на проводных соединениях, например, раскрытых в патенте US №7822802, Chen и другие, озаглавленном "Устройство и способ соединения беспроводных данных при создании системы управления технологическими процессами", и патенте от 26 октября 2010 года, содержимое которого включено в виде ссылки в данный документ.
[0058] Несмотря на то что нет необходимости в представлении расположения узлов N01-N12 относительно их реального расположения в зоне устройства управления, Фигура 3 концептуально иллюстрирует расположение узлов N01-N12 относительно друг друга и относительно беспроводного шлюза 102. Например, в беспроводной сети в виде ячеистой структуры узел N03 находится ближе всего к беспроводному шлюзу 102, узел N01 находится дальше, а узел N02 является самым удаленным от беспроводного шлюза 102. Относительно узла N01 узел 04 является самым близким, узел N02 находится дальше, узел N06 находится еще дальше, а узел 05 является самым удаленным относительно узла N01 и так далее и тому подобное для каждого узла в сети 100. Следует помнить, что эти узлы взаимодействуют напрямую и рассматриваются относительно друг друга. Например, в беспроводной сети точка-точка расположение сетевых узлов N01, N02, и N03 рассматривается относительно беспроводного шлюза 102, однако не относительно друг друга, так как узлы N01-N03 не взаимодействуют напрямую друг с другом. Аналогично, в сетях, основанных на проводных соединениях, расположение сетевых узлов N01, N02 и N03 рассматривается относительно подключения по локальной сети 104, но не относительно друг друга.
[0059] Нулевое количество транзитных шлюзов для беспроводной сети в виде ячеистой структуры, проиллюстрированное на Фигуре 3, показано в табличном виде на Фигуре 4А, и нулевое количество транзитных шлюзов для беспроводной сети точка-точка проиллюстрировано в табличном виде на Фигуре 4В. Список узлов (и соответственно шлюзов) в строках упорядочен в соответствии с физическим расстоянием между узлами (или узлом и шлюзом), внесенными в первый столбец. Тем не менее, нет необходимости в указании маршрута сообщений, проходящих через сеть, в частности, относительно ячеистой сети, где пакеты данных могут проходить к месту назначения по различным маршрутам.
[0060] Ссылаясь на Фигуру 4А, беспроводной шлюз 102 взаимодействует напрямую с узлами N01 через узел N03 и, следовательно, количество транзитных шлюзов между беспроводным шлюзом 102 и любым из N01 через N03 равно нулю. Переходя к следующей строке таблицы на Фигуре 4А, необходимо помнить, что количество транзитных шлюзов между узлом N01 и узлами N02 и N04-N06 также равно нулю, как и для узла N01, проиллюстрированного на Фигуре 3, имеющего прямое взаимодействие со шлюзом 102 и каждым из узлов N02 и N04-N06. Аналогично, каждая оставшаяся строка таблицы на Фигуре 4А демонстрирует нулевое количество транзитных узлов для каждого из узлов N02-N12.
[0061] Ссылаясь на Фигуру 4А, беспроводной шлюз 102 взаимодействует напрямую с узлами N01 через узел N03 таким образом, что количество транзитных шлюзов между беспроводным шлюзом 102 и любым из N01 через N03 снова равно нулю. Во второй строке таблицы на Фигуре 4 В, тем не менее, количество транзитных шлюзов между узлом N01 и другими узлами равно нулю относительно только узлов N04-N06 и шлюза 102, так как узел N01 проиллюстрирован на Фигуре 3 как узел, имеющий прямое соединение со шлюзом 102 и каждым узлом N04-N06, кроме узла N02, в данном примере. К тому же каждая из оставшихся строк таблицы на Фигуре 4 В демонстрирует нулевое количество транзитных шлюзов для каждого узла N02-N12 в беспроводной сети точка-точка.
[0062] Так же, как и периферийные устройства реализованы внутри системы управления технологическими процессами, узлы добавляются к сети, являющейся беспроводной сетью ячеистой структуры или беспроводной сетью точка-точка. Аналогично, периферийные устройства и контроллеры могут быть отключены или удалены из системы управления технологическими процессами, таким образом удаляя узлы из сети. Так как узлы добавляются и удаляются из сети, маршруты коммуникаций могут изменяться. Соответственно, шлюз 102, рабочая станция 104 и/или сервер 106 периодически собирают информацию о сети, используя различные диагностические инструменты для идентификации, определения и/или обновления находящихся там коммуникационных путей/маршрутов.
[0063] Как известно, шлюз 102 собирает информацию о сети 100, включая информацию о каждом узле N01-N12. Например, как упоминалось выше относительно беспроводной сети в виде ячеистой структуры 100, программное обеспечение для управления сетью используется для составления плана коммуникаций и определения коммуникационных маршрутов внутри сети 100. В частности, система управления сетью определяет коммуникационные маршруты для сообщений, передаваемых от шлюза 102 к различным узлам N01-N12 и обратно. Коммуникационные маршруты определяются системой управления сетью с использованием информации, полученной от каждого из узлов N01-N12. При добавлении каждого узла в сеть узел взаимодействует с другими узлами внутри диапазона, определяемого ближайшими узлами (так как другие узлы или шлюзы напрямую взаимодействуют с узлом). Каждый узел измеряет уровень принимаемого сигнала, называемого индикатором уровня принимаемого сигнала (RSSI), который измеряет мощность принимаемого сигнала во время взаимодействия с ближайшим узлом, среди другой статистической информации в отношении их ближайших узлов.
[0064] Информация о каждом ближайшем узле и соответствующем уровне принимаемого сигнала передается в шлюз 102 и используется программным обеспечением для управления сетью. Например, программное обеспечение для управления сетью использует информацию о ближайших узлах и информацию об уровне принимаемого сигнала для определения коммуникационного маршрута входящих и исходящих сообщений. Для каждого коммуникационного маршрута программное обеспечение для управления сетью определяет ближайшие узлы для различных транзитных шлюзов по маршруту следования. Узлы внутри коммуникационного маршрута классифицируются как родительские или дочерние, где родительскими являются устройства, через которые проходит обмен данными с другими устройствами (дочерними по отношению к ним), а дочерними являются устройства, которые обмениваются данными через другие устройства (родительские) в зоне досягаемости сторонних устройств или шлюзов.
[0065] Каждый узел N01-N12 периодически сообщает статистику обмена данными в шлюз 102. Эта статистика используется программным обеспечением для управления сетью с целью определения коммуникационных маршрутов и установки времени доступа для сообщений. Статистика обмена данными содержит идентификатор ближайших узлов, уровня приема сигнала от каждого ближайшего узла, уровня приема сигнала для каждого ближайшего узла, процент успешных обменов данными с ближайшим узлом, количество родительских и дочерних устройств для данного отдельного узла, отношение родительских устройств к дочерним и отношение дочерних устройств к ближайшим узлам, где узел находится внутри диапазона шлюза 102 и где узел напрямую связан со шлюзом 102. Таким образом, за счет использования диагностических инструментов определяется коммуникационный маршрут внутри ячеистой сети.
[0066] Для беспроводной сети точка-точка каждый узел способен собирать и передавать статистику обмена данными шлюза 102, в этом случае шлюз 102 в сети точка-точка реализуется с помощью программного обеспечения для управления сетью, сохраненного в нем. Программное обеспечение для управления сетью получает статистику обмена данными от каждого узла, которая содержит уровень принимаемого сигнала от каждого ближайшего узла, уровень принимаемого сигнала для каждого ближайшего узла, процент успешных обменов данными с каждым ближайшим узлом и так далее. Таким образом, в сети точка-точка коммуникационный маршрут определяется аналогичным образом с помощью диагностических инструментов, например программного обеспечения для управления сетью.
[0067] Дополнительными часто используемыми диагностическими инструментами являются инструменты трассировки, например программы контроля прохождения сигнала по сети, которые определяют маршрут обмена данными в сети и измеряют транзитные задержки передачи сообщений в сети. Общеизвестно, что программы трассировки отправляют последовательность пакетов, требующих ответа, адресованных узлу назначения. Программы трассировки определяют промежуточные узлы, пройденные по коммуникационному маршруту за счет регулирования предписанного времени жизни пакета (TTL) (ограничение транзитных узлов). Значение параметра ограничения транзитных узлов уменьшается в каждом узле по пути коммуникационного маршрута, пакет сбрасывается, когда значение параметра ограничения транзитных узлов достигает нулевого значения и сообщение об ошибке вернется к источнику, указывая, что превышено время ожидания. Значение параметра ограничения транзитных узлов увеличивается для каждого последующего отправленного набора пакетов, где первый набор пакетов имеет значение параметра ограничения транзитных шлюзов, равное 1 с ожиданием того, что он не будет перенаправлен дальше первым узлом. Затем первый узел возвращает сообщение об ошибке обратно источнику. Следующий набор пакетов имеет значение параметра ограничения транзитных узлов, равное 2, таким образом, он не отправляется за пределы второго узла по коммуникационному маршруту, и второй узел передает ответное сообщение об ошибке. Это продолжается до тех пор, пока узел назначения получает пакеты и возвращает ответные сообщения. Программа трассировки использует вернувшееся сообщение для формирования списка узлов, через которые прошел пакет. Величина временной отметки, возвращаемой для каждого узла, является временем задержки (ожидания), которое обычно измеряется в миллисекундах. Таким образом, для сети определяется количество транзитных узлов и время ожидания и, в свою очередь, для сети определяется коммуникационный маршрут.
[0068] Ссылаясь на Фигуру 5, раскрывается алгоритм 200 формирования маршрута обслуживания для создания маршрутов обслуживания внутри технологического процесса. Алгоритм 200 формирования маршрута обслуживания использует информацию, полученную от описанных выше диагностических утилит, например уровень сигнала, количество транзитных шлюзов и время ожидания, для автоматического создания и изменения маршрута обслуживания. Как правило, алгоритм 200 на Фигуре 5 выполняется на серверной части локальной сети 108, например на рабочей станции 104 или сервере 106. Строго говоря, алгоритм 200 формирования маршрута обслуживания реализуется и выполняется в виде инструмента на обслуживающем компьютере. Другими словами, на компьютере, например рабочей станции 104 или сервере 106, отвечающем за действия, связанные с обслуживанием и/или который выполняет приложение, отвечающее за интерфейс, позволяющий обслуживающему персоналу взаимодействовать с сетью устройств управления 10 внутри промышленного предприятия. В одном примере, алгоритм 200 формирования маршрута обслуживания реализован в виде модуля интерфейсного приложения.
[0069] Процесс, с помощью которого создается маршрут обслуживания, основан на последовательности вычислений, связанных с относительной удаленностью узлов, другими словами, извлечения из уровня сигнала и количества транзитных шлюзов, возникающих по коммуникационному маршруту, определенного количества периферийных устройств и контроллеров (узлов). Другими словами, информация об удаленности узлов относительно друг друга собирается из информации о сети без необходимости знать физическое расположение каждого устройства. Например, согласно Фигурам 3 и 4, даже если реальное расстояние между 1) узлом N01 и 2) узлом N02, 04, 05 и N06 неизвестны, тем не менее, можно определить на основании уровня сигнала, что узел N04 является ближайшим к узлу N01 (так как узел N04 имеет больший уровень принимаемого сигнала, чем узлы N05 и N06). Таким образом, хотя и невозможно определить расстояние за счет уровня сигнала, тем не менее, можно определить, какой узел является ближайшим по отношению к другому узлу, следовательно, определить, какое устройство или контроллер является ближайшим по отношению к другому периферийному устройству или контроллеру.
[0070] Следует понимать, что полученный таким образом маршрут обслуживания не следует строго вдоль коммуникационного пути через сеть 100. Достаточно часто и по разным причинам коммуникационный маршрут и маршрут обслуживания не совпадают. Тогда как маршрут обслуживания создается на основании относительной физической удаленности узлов, коммуникационный маршрут, отчасти, основывается на преимуществах диапазона связи (например, радиодиапазона беспроводного устройства) и на основании логических параметров связи, например обхода узких мест. Тем не менее, информация, используемая при определении коммуникационного маршрута, используется и для определения маршрута обслуживания. Кроме того, при последующем описании узлов внутри сети 100 следует понимать, что периферийные устройства и контроллеры являются физическим воплощением узлов и что термин "узлы" и "контроллеры" внутри данного контекста используются для указания периферийных устройств и контроллеров, реализованных в виде устройств и контроллеров, поддерживающих беспроводные соединения.
[0071] Ссылаясь на Фигуру 5, полный список (Список А) всех периферийных устройств и контроллеров, взаимодействующих со шлюзом, напрямую либо не напрямую создан в блоке 202 (см. Фигуру 6А). В общем случае, шлюз 102 и программное обеспечение для управления сетью создают список всех узлов (и, таким образом, всех периферийных устройств и контроллеров), взаимодействующих со шлюзом 102, для того, чтобы идентифицировать, распознать и/или обновить находящийся в нем коммуникационный путь/маршрут. Дополнительно или в виде альтернативы, данный список таким же образом может быть сформирован рабочей станцией 104 и/или сервером 106. Соответственно, создание списка всех периферийных устройств и контроллеров, взаимодействующих со шлюзом 102, выполняется за счет извлечения списка узлов N01-N12, созданного и обслуживаемого шлюзом 102 как часть его регулярной сетевой диагностики. Как минимум, существующая информация о сети 100 может быть извлечена из шлюза 102 для создания списка всех узлов N01-N12 внутри сети.
[0072] Сразу после создания списка всех узлов, взаимодействующих со шлюзом, в блоке 204 создается первичный упорядоченный список (Список В) всех устройств, напрямую взаимодействующих со шлюзом, использующих узлы, перечисленные в Списке А (см. Фигуру 6 В). За счет использования результатов сетевой диагностики известно количество транзитных шлюзов для каждого узла, а также уровень принимаемого сигнала (или другой индикатор уровня сигнала) для каждого устройства по отношению к ближайшему к нему устройству. Точнее говоря, Список В является упорядоченным списком всех узлов (для которых количество транзитных шлюзов равно 0 вдоль их коммуникационного маршрута), упорядоченных по уровню сигнала. Ссылаясь на Фигуру 3 и 4, это будут узлы N03, N01 и N02 в таком порядке, в котором каждый из них имеет количество транзитных шлюзов по отношению к шлюзу 102, равное нулю, и уровень принимаемого сигнала узла N03 является самым сильным по отношению к шлюзу 102, узел N01 является следующим по уровню сигнала и узел N02 имеет самый слабый сигнал.
[0073] Фигура 7 иллюстрирует пример алгоритма 204 для создания упорядоченного списка (Список В) узлов, напрямую взаимодействующих со шлюзом 102 (например, узлы со значением количества транзитных шлюзов, равным 0, от шлюза 102). Используя Список А, созданный в блоке 202 Фигуры 5, алгоритм 204 на Фигуре 7 выбирает эти узлы со значением количества транзитных узлов, равным 0, от шлюза 102 и упорядочивает узлы в Списке В в соответствии с уровнем сигнала беспроводного соединения между каждым узлом в Списке В и беспроводными сетевыми устройствами, выполняющими функции шлюзов, упорядоченными по мере ослабления уровня сигнала. Ссылаясь на Фигуру 7, первый узел в Списке А (например, узел N01) выбирается в блоке 302, в блоке 304 определяется, является ли данный узел взаимодействующим напрямую со шлюзом 102 (то есть является ли количество транзитных шлюзов равным нулю?). Если нет, алгоритм 204 переходит к следующему узлу в Списке А и выполняет такую же процедуру определения в блоке 304.
[0074] Если для данного узла количество транзитных шлюзов относительно шлюза 102 равно нулю, узел добавляется в нижнюю часть Списка В в блоке 308. Если это первый узел, добавленный в Список В, например узел, определенный в блоке 310, то алгоритм 204 выбирает следующий узел из Списка А в блоке 306. Если это второй или последующий узел со значением транзитных шлюзов, равным 0, добавленный в Список В, то алгоритм 204 выполняет упорядочивание списка в соответствии с уровнем сигнала по отношению к шлюзу 102 в блоке 312.
[0075] В списке, упорядоченном по уровню сигнала, уровень сигнала добавляемого узла (за исключением первого узла, добавленного в список) сравнивается с уровнем сигнала предшествующего узла из Списка В в блоке 312. Данная процедура выполняется для каждого узла в Списке В до тех пор, пока добавляемый узел не разместится ниже, чем узел, имеющий самый сильный уровень сигнала. В частности, если уровень сигнала добавляемого узла выше, чем у узла, находящегося в списке выше, добавляемый узел перемещается на верхнее место в Списке В перед узлом с более низким уровнем сигнала в блоке 314. Затем уровень сигнала добавляемого узла сравнивается с уровнем сигнала следующего узла в списке, а именно с узлом, который теперь находится непосредственно перед добавляемым узлом, после его перемещения в списке на одно место вверх. Далее, если уровень сигнала добавляемого узла выше, чем у узла, который находится выше в списке, то добавляемый узел снова перемещается на одну позицию вверх в Списке В перед узлом с более низким уровнем сигнала в блоке 314. Данный процесс выполняется до тех пор, пока в блоке 312 не будет определено, что добавляемый узел имеет уровень сигнала ниже, чем узел, находящийся перед ним в списке, на этом этапе следующий узел из Списка А выбирается в блоке 306 до тех пор, пока в блоке 316 не будет определено, что достигнут конец Списка А, в этом случае управление передается алгоритму 200 формирования маршрута обслуживания на Фигуре 5.
[0076] Результатом выполнения алгоритма 204 на Фигуре 7 является Список В, который содержит список узлов, напрямую взаимодействующих со шлюзом 102. Например, согласно Фигурам 3, 4 и 6А узлами, напрямую взаимодействующими со шлюзом 102, являются узлы N01, N02 и N03. Используя алгоритм 204 на Фигуре 7, первым узлом, выбранным алгоритмом 204, является узел N01, так как было определено, что узел N01 имеет нулевое количество транзитных шлюзов относительно шлюза 102. Добавив первый узел к Списку В, алгоритм 204 выполняет выбор следующего узла из Списка А, а именно - узла N02. Имея данные о том, что для узла N02 количество транзитных шлюзов по отношению к шлюзу 102 равно нулю, узел N02 добавляется в конец Списка В и уровень сигнала узла N02 по отношению к шлюзу 102 сравнивается с уровнем сигнала узла N01. Затем, имея данные о том, что уровень сигнала узла N02 меньше, чем у узла N01, алгоритм 204 выбирает следующий узел из Списка А, а именно - узел N03. Узел N03, имеющий нулевое количество транзитных шлюзов по отношению к шлюзу 102, добавляется в конец Списка В. Уровень сигнала узла N03 сравнивается с уровнем сигнала узла N02, в результате чего определяется, что узел N03 имеет более высокий уровень сигнала по отношению к шлюзу 102, чем узел N02, таким образом он перемещается в Списке В выше узла N02. Впоследствии определяется, что узел N03 также имеет более высокий уровень сигнала, чем узел N01, таким образом, узел N03 перемещается в списке выше узла N01. Затем из Списка А выбираются узлы N04-N12, однако определяется, что каждый из этих узлов имеет количество транзитных шлюзов по отношению к шлюзу 102, равное 1 или более. В результате получается упорядоченный список узлов, напрямую взаимодействующих со шлюзом 102 и согласованных по уровню сигнала, а именно - узлов N03, N01, N02, как проиллюстрировано на Фигуре 6В. Несмотря на то что алгоритм 204 эффективен при создании упорядоченного списка узлов, необходимо понимать, что алгоритм на Фигуре 7 приведен исключительно в качестве примера создания упорядоченного списка узлов, напрямую взаимодействующих со шлюзом 102 и согласованных по уровню сигнала, и для выполнения этих задач могут применяться другие алгоритмы.
[0077] Обратно ссылаясь на Фигуру 5, процесс создания второго упорядоченного списка (Список С) узлов, согласованных по уровню сигнала, многократно повторяется для каждого узла, напрямую взаимодействующего с узлами в Списке В и согласованного по уровню сигнала. Другими словами, для каждого узла в Списке В, созданного в блоке 204, процесс повторяется для любого узла, напрямую взаимодействующего с узлом в Списке В. В частности, первый узел в Списке В (то есть узел N03) выбран в блоке 206 на Фигуре 5. Далее, все узлы, у которых количество транзитных шлюзов равно 0 по отношению к узлу N03 (то есть ближайшие к узлу N03), выбираются из Списка А и согласуются по уровню сигнала в Списке С. Ссылаясь на Фигуры 3, 4 и 6С, это будут узлы N11, N10 и N02 в таком порядке, так как каждый имеет нулевое значение количества транзитных узлов по отношению к узлу N03 и уровень сигнала узла N11 выше по сравнению с узлом N03, уровень сигнала узла N10 является меньшим, а уровень сигнала узла N02 является самым слабым.
[0078] Фигура 8 иллюстрирует блок-схему примера алгоритма 208 для создания упорядоченного списка (Список С) узлов, напрямую взаимодействующих с узлом из списка В (то есть узлов, имеющих значение транзитных шлюзов от узлов, выбранных из Списка В, равное 0). Как будет показано, Фигура 8 иллюстрирует первое обсуждение относительно первого узла из Списка В (узел N03) и в дальнейшем дает пояснения относительно других узлов в Списке В. Используя Список А, созданный в блоке 202 на Фигуре 5, алгоритм 208 на Фигуре 7 выбирает данные узлы с количеством транзитных шлюзов относительно узла N03, равным 0, и упорядочивает узлы в Списке С в соответствии с уровнем сигнала беспроводного соединения между каждым узлом в Списке С и узлом N03, где узлы с более высоким уровнем сигнала находятся в списке перед узлами с более слабым уровнем сигнала. Ссылаясь на Фигуру 8, первый узел в Списке А (то есть узел N01) выбирается в блоке 402 и выполняется определение в блоке 404 относительно того, взаимодействует ли узел напрямую с узлом N03. Если нет, то алгоритм 208 переходит к следующему узлу в Списке А (то есть узел N02) и повторяет аналогичное определение в блоке 404.
[0079] Если для данного узла количество транзитных шлюзов относительно узла N03 равно нулю, узел добавляется в нижнюю часть Списка С в блоке 408. Если это первый узел, добавленный в Список С, например узел, определенный в блоке 410, то алгоритм 208 выбирает следующий узел из Списка А в блоке 406. Если это второй или последующий узел со значением транзитных шлюзов, равным 0, добавленный в Список С, то алгоритм 208 выполняет упорядочивание списка в соответствии с уровнем сигнала по отношению к узлу N03 в блоке 412. На этом шаге узлы N02, N10 и N11 считаются узлами, которые напрямую взаимодействуют с узлом 03.
[0080] В списке, упорядоченном по уровню сигнала, уровень сигнала добавляемого узла (за исключением первого узла, добавленного в список) сравнивается с уровнем сигнала предшествующего узла из Списка С в блоке 412. Данная процедура выполняется для каждого узла в Списке С до тех пор, пока добавляемый узел не разместится ниже, чем узел, имеющий самый сильный уровень сигнала. В частности, если уровень сигнала добавляемого узла выше, чем у узла, находящегося в списке выше, добавляемый узел перемещается на верхнее место в Списке С перед узлом с более низким уровнем сигнала в блоке 414. Например, на данном шаге узел N02 является первым узлом, добавленным в Список С, так как он был первым выбран из Списка А как имеющий количество транзитных шлюзов, по отношению к узлу N03, равное 0. Узел N10 является следующим узлом, добавляемым к Списку С.
[0081] Затем уровень сигнала добавляемого узла сравнивается с уровнем сигнала следующего узла в списке, а именно с узлом, который теперь находится непосредственно перед добавляемым узлом после его перемещения в списке на одно место вверх. Далее, если уровень сигнала добавляемого узла выше, чем у узла, который находится выше в списке, то добавляемый узел снова перемещается на одну позицию вверх в Списке С перед узлом с более низким уровнем сигнала в блоке 414. Например, уровень сигнала узла N10 относительно узла N03 сравнивается с уровнем сигнала узла N02, и если определяется, что узел N10 имеет более высокий уровень сигнала, то он перемещается на позицию перед узлом N02 в Списке С. Таким образом, Список С состоит из узлов N10, N02 в таком порядке. Данный процесс выполняется до тех пор, пока в блоке 412 не будет определено, что добавляемый узел имеет уровень сигнала ниже, чем узел, находящийся перед ним в списке, на этом этапе следующий узел из Списка А выбирается в блоке 406 до тех пор, пока в блоке 416 не будет определено, что достигнут конец Списка А, в этом случае управление передается алгоритму 200 формирования маршрута обслуживания на Фигуре 5. Например, узел N11 является следующим узлом, выбранным из Списка А, который напрямую взаимодействует с узлом N03 из Списка В. Узел 11 добавляется в конец Списка С и его уровень сигнала сравнивается с уровнем сигнала узла N02 (как непосредственно предшествующим узлом в Списке С). Узел N11 имеет более высокий уровень сигнала, чем узел N02, таким образом он перемещается в списке на позицию перед узлом N02. Затем выполняется сравнение уровней сигнала между узлами N11 и N10, в результате чего узел N11 перемещается вверх Списка С перед узлом N10. Результатом выполнения алгоритма 208 на Фигуре 8 является Список С, который содержит узлы, напрямую взаимодействующие с узлом N03 и упорядоченные в соответствии с уровнем сигнала по отношению к узлу N03, а именно узлы N11, N10, N02, как проиллюстрировано на Фигуре 6С. Несмотря на то что алгоритм 208 эффективен при создании упорядоченного списка узлов, необходимо понимать, что алгоритм на Фигуре 8 приведен исключительно в качестве примера создания упорядоченного списка узлов, напрямую взаимодействующих с узлами из Списка В, упорядоченными в соответствии с уровнем сигнала, и для выполнения этих задач могут применяться другие алгоритмы.
[0082] Ссылаясь на Фигуру 5, упорядоченный список узлов в Списке С присоединен к Списку В в блоке 210 после узла из Списка В, с которым узлы из Списка С взаимодействуют напрямую. В продолжении примера выше, список узлов N11, N10 и N02 присоединен к Списку В после узла N03, как показано на Фигуре 6D. Говоря точнее, узлы N11 и N10 присоединены к Списку В после узла N03, а узел N02 перемещен вверх в Списке В перед узлом N01, несмотря на то, что узел N01 ранее находился перед узлом N02 (см. Фигуру 6 В). Это произошло потому, что узел N02 уже находился в Списке В.
[0083] Фигура 9 иллюстрирует алгоритм 210 для присоединения Списка В к Списку С после выбранного узла из Списка В. Для примера выше процесс начинается с первого узла в Списке В, выбранном в блоке 206 на Фигуре 5, а именно узла N03, однако, как объясняется более подробно, применяется ко всем узлам, выбираемым впоследствии из списка В в блоке 214 на Фигуре 5. Ссылаясь на Фигуру 9, первый узел из Списка С выбран с помощью алгоритма в блоке 502, которым, в настоящем примере, является узел N11. Во избежание внесения в список узла несколько раз (как в случае с узлом N02, так как он уже был в Списке В) алгоритм 210 выполняет добавление узлов из Списка С и заново упорядочивает узлы в Списке В, чтобы обеспечить наибольшую эффективность формирования физического маршрута обслуживания между узлами. Таким образом, в блоке 504 алгоритм 210 определяет, присутствует ли выбранный узел из Списка С выше узла из Списка В, выбранного алгоритмом формирования маршрута обслуживания 200 на Фигуре 5. Если это так, то узел из Списка С удаляется или не присоединяется к Списку В, а алгоритм 210 выполняет выбор следующего узла из Списка С в блоке 506 и выполняет определение в блоке 504.
[0084] Если узел, выбранный из Списка С, не указан в списке выше узла, выбранного из Списка В, то алгоритм в блоке 508 определяет, находится ли уже выбранный из Списка С узел в Списке В (как в случае с узлом N02). Если узел уже присутствует в Списке В, то узел перемещается вверх в списке в соответствии с порядком узлов, установленным в Списке С в блоке 510. В противном случае узел присоединяется из Списка С в Список В в соответствии с порядком узлов в Списке С, установленным в блоке 512. Это процесс повторяется для каждого узла в Списке С до тех пор, пока не будет определено в блоке 514, что достигнут конец Списка С.
[0085] В контексте примера, описанного в данном документе, алгоритм 210 первым выбирает узел N11 из Списка С. Так как узел N11 не присутствует в списке перед узлом N03 (узел, выбранный из Списка В при формировании маршрута обслуживания алгоритмом 200 на Фигуре 5) и не присутствует в Списке В, то узел N11 добавляется после узла N03. Следующим узлом в Списке С является узел N10, который также не присутствует в списке перед узлом N03 и не присутствует в Списке В соответственно, он добавляется после узла N11 в порядке, установленном в Списке С. Последним узлом, выбранным из Списка С, является узел N02, который не присутствует в списке перед узлом N03, но присутствует в Списке В. Таким образом он перемещается вверх в Списке В в соответствии с порядком, установленным в Списке С, а именно после узла N10. Таким образом, используя в качестве индикатора уровень сигнала, формируется Список В в порядке удаленности от шлюза, начиная с узла N03 и следуя в такой последовательности: N11, N10, N02 и N01, как проиллюстрировано на Фигуре 6D.
[0086] Как обсуждалось ранее, процесс создания упорядоченных списков (Список С) узлов, расположенных в соответствии с уровнем сигнала, повторяется несколько раз для каждого узла, напрямую взаимодействующего с узлами в Списке В, и расположенных в соответствии с уровнем сигнала. Когда выбран каждый узел из Списка В и Список В присоединен к ближайшим узлам, напрямую взаимодействующим с узлом, выбранным из Списка В, выбранный узел из Списка В может считаться последним из Списка А. Другими словами, его не нужно учитывать при последующих итерациях присоединения Списка В (как показано в виде пунктирной линии, которой обведен узел N03 на Фигуре 6С). Таким образом, когда закончатся все узлы из Списка А, Список А считается оконченным в блоке 212. В противном случае алгоритм 200 формирования маршрута обслуживания на Фигуре 5 выбирает следующий узел из Списка В в блоке 214, которым, в приведенных выше примерах, будет узел N11, и повторяет процедуру создания упорядоченного Списка С узлов из Списка А, напрямую взаимодействующих с узлом, выбранным из Списка В, и упорядоченных в соответствии с уровнем сигнала по отношению к узлу, выбранному из Списка В. Узел Списка С снова присоединяется к Списку В, как рассмотрено выше, до тех пор, пока не закончатся все узлы в списке. В качестве альтернативного варианта исчерпания Списка А алгоритм 200 формирования маршрута обслуживания на Фигуре 5 следит за списком узлов в Списке В до тех пор, пока не определит, что больше нет узлов для добавления в Список В.
[0087] В продолжение приведенного выше примера, узел N11, выбранный в блоке 214, и ближайшие узлы к узлу N11 упорядочены в соответствии с уровнем сигнала в блоке 208. В результате формируется Список С с узлами N10 и N03. При присоединении к Списку В в блоке 210 узел N10 уже присутствует в Списке В сразу же после узла N11, и, соответственно, он уже не перемещается вверх в дальнейшем. Узел N03 уже присутствует в списке перед узлом N11 и он также не перемещается. Полученный Список В выглядит следующим образом: N03, N11, N10, N02, N01.
[0088] Следующим узлом в Списке В является узел N10, который имеет Список С ближайших узлов N11, N08, N03, N02 и N12 в соотвтетсвии с уровнем сигнала. При присоединении к Списку В узел N11 уже расположен перед узлом N10, таким образом он не перемещается. Узел N08 не находится перед узлом N11, а также не присутствует в Списке В, таким образом, он добавляется в Список В после узла N10. Узел N03 уже расположен перед узлом N10 в Списке В и не перемещается. Узел N02 уже присутствует в Списке В и остается на месте, после узла N08, в соответствии с порядком, установленным в Списке С для выбранного узла N10. Затем узел N12 добавляется после узла N02N также в соответствии с порядком, установленным в Списке С для выбранного узла N10. Затем, в результате присоединения, список В имеет вид: N03, N11, N10, N08, N02, N12, N01.
[0089] При следующей итерации следующим узлом в Списке В является узел N08, который имеет Список С ближайших узлов N02, N07, N10 и N09 в соответствии с уровнем сигнала. Затем, при присоединении к Списку В, узел N02 уже присутствует в Списке В и остается на месте после узла N08 в соответствии с порядком, установленным в Списке С для выбранного узла N08. Узел 07 добавляется в Список В после узла N02 также в соответствии с порядком, установленным в Списке С, узел N10 уже присутствует в списке перед узлом N08 и остается на месте, а узел N09 добавляется в Список В после узла N07, в соответствии с порядком, установленным в Списке С. В результате присоединенный список В имеет вид: N03, N11, N10, N08, N02, N07, N09, N12, N01.
[0090] При следующей итерации, следующим узлом в Списке В является узел N02, который имеет Список С ближайших узлов N08, N01, N10, N07, N03 в соответствии с уровнем сигнала. При присоединении к Списку В узел N08 уже присутствует в списке перед узлом N02 в Списке В и остается на месте. Узел N01 уже присутствует в Списке В и перемещается вперед перед узлом N02 в соответствии с порядком, установленным в Списке С. Узел N10 уже присутствует в списке перед узлом N02 и остается на месте. Узел N07 уже присутствует в Списке В и остается после узла N01 в соответствии с порядком, установленным в Списке С. Узел N03 уже присутствует в списке перед узлом N02 и остается на месте. В результате, присоединенный Список В выглядит следующим образом: N03, N11, N10, N08, N02, N01, N07, N09, N12.
[0091] При следующей итерации, следующим узлом в Списке В является узел N01, который имеет Список С ближайших узлов N04, N02, N06 и N05 в соответствии с уровнем сигнала. Узел N04 добавляется в Список В после узла N01 в соответствии с порядком, установленным в Списке С. Узел N02 уже присутствует в Списке В перед узлом N01. Узлы N06 и N05 добавляются в Список В после узла N04 в соответствии с порядком, установленным в Списке С. В результате присоединенный Список В выглядит следующим образом: N03, N11, N10, N08, N02, N01, N04, N06, N05, N07, N09, N12.
[0092] Следующим узлом в Списке В является узел N04, который имеет Список С ближайших узлов N05, N01 и N06 в соответствии с уровнем сигнала. Каждый узел N05, N01 и N06 уже присутствует в Списке В, при этом узел N01 уже находится перед узлом N04. Узел N05 перемещается перед узлом N06 на основании порядка, установленного для Списка С. В результате присоединенный Список В выглядит следующим образом: N03, N11, N10, N08, N02, N01, N04, N05, N06, N07, N09, N12.
[0093] Следующая итерация не приведет к каким-либо изменениям в присоединенном Списке В. Соответственно, при выполнении последующих итераций алгоритмом 200 на Фигуре 5 формирования маршрута обслуживания для узлов N05, N06, N07, N09 и N12 Список А будет исчерпан, и окончательный вариант Списка В будет выглядеть следующим образом: N03, N11, N10, N08, N02, N01, N04, N05, N06, N07, N09, N12, как проиллюстрировано на Фигуре 6Е. Такой окончательный вариант Списка В будет выдан как наиболее эффективный маршрут обслуживания среди узлов, и, следовательно, среди периферийных устройств и контроллеров, связанных с каждым узлом, где порядок следования узлов в Списке В является порядком маршрута обслуживания, и расположение каждого соответствующего периферийного устройства или контроллера соответствует точкам остановки по маршруту. Таким образом, используя сетевую диагностическую информацию, например количество транзитных шлюзов, для определения ближайших узлов и уровня сигнала ближайших узлов в качестве индикатора удаленности, формируется маршрут обслуживания для обслуживающего персонала при физическом передвижении по технологическому процессу с целью выполнения различного вида обслуживания и калибровки, как определено в маршруте обслуживания.
[0094] С маршрутом обслуживания можно выполнять различные модификации или находить различные его применения. Например, тогда как алгоритм 200 формирования маршрута обслуживания на Фигуре 5 представляет собой оптимальный маршрут через технологический процесс (или по меньшей мере через периферийные устройства и контроллеры сети 100), обслуживающий персонал может изменить маршрут при необходимости, например, в случае необходимости более быстрого обслуживания определенных периферийных устройств или контроллеров по сравнению с остальными устройствами. В другом примере, маршрут обслуживания может быть изменен для удаления узлов, которые соответствуют периферийным устройствам и/или контроллерам, которые не требуют обслуживания или калибровки.
[0095] Как минимум маршрут обслуживания отображается на схеме технологического процесса на экране монитора, например экране монитора рабочей станции 104 или экране мобильного устройства, например смартфона, планшета, КПК или любого другого мобильного устройства, оснащенного дисплеем. В частности, когда каждый узел связан с периферийным устройством или контроллером и расположение периферийного устройства или контроллера известно, периферийные устройства и контроллеры отображаются на схеме технологического процесса. Например, в патентной заявке US III №2009/0265635, Citrano, озаглавленной как "Способ организации визуального дизайна и организации беспроводной сети в виде ячеистой структуры в физическом пространстве", внесенной в реестр 27 февраля 2009 года и опубликованной 22 октября 2009 года, содержимое которой приводится в виде ссылки в настоящем документе, раскрываются инструменты визуализации, которые содержат устройства, оснащенные дисплеем, позволяющие отображать сеть в виде ячеистой структуры относительно физического пространства, занимаемого сетью. Инструменты получают графическое представление физического пространства, занимаемого сетью, масштабируют информацию, устанавливая масштаб принимаемого изображения, информацию о расположении, определяющую физическое расположение каждого устройства внутри физического пространства, занимаемого сетью. На основании этих входных данных инструменты визуализации отображают схему размещения беспроводной сети в виде ячеистой структуры относительно физического пространства, занимаемого беспроводной сетью в виде ячеистой структуры. Используя эти инструменты, маршрут обслуживания, сформированный с помощью алгоритма 200 формирования маршрута обслуживания, налагается на отображение схемы размещения ячеистой сети с отображение стрелок, указывающих направление маршрута от узла к узлу и, следовательно, от устройства к устройству, как концептуально проиллюстрировано на Фигуре 10.
[0096] Кроме того, маршрут обслуживания, сформированный алгоритмом 200 формирования маршрута обслуживания, обновляется на основе добавляемых или удаляемых из сети 100 периферийных устройств или контроллеров (и, следовательно, узлов). Например, есть сформированный маршрут, к которому добавляется новый узел N13 к сети 100, имеющий ближайшие узлы N08, N10, N12, N09, которые упорядочены по уровню сигнала. Вместо того чтобы выполнять процедуру для каждого узла внутри сети, количество которых измеряется десятками или даже сотнями, процедура выполняется только для вновь добавляемого узла и его ближайших узлов. Другими словами, Список А, имеющий ближайшие узлы N08, N10, N12 и N09, будет создан в таком виде: N08, N09, N10, N12 и N13. Имея уже созданный маршрут обслуживания, определенный как Список В выше, блоки 202-206 могут быть пропущены, так как они предусмотрены, главным образом, для инициализации Списка В.
[0097] Как следует понимать, добавление нового узла в сеть 100 изменяет оптимальный маршрут для обслуживания, так как новый узел N13 теперь расположен ближе к существующим узлам, чем предыдущие ближайшие узлы. Например, узел N13 теперь является ближайшим узлом узла N08, тогда как ранее ближайшим узлом для узла N08 был узел 02. Аналогично, узел N13 теперь стал вторым ближайшим узлом для узла N10, тогда как ранее ближайшим узлом был узел N08. Для того чтобы упорядочить узлы в оптимальном порядке для маршрута обслуживания на основании их удаленности, процедура повторяется для каждого узла в Списке В, который напрямую взаимодействует с новым узлом N13, а именно для узлов N08, N09, N10 и N12. Таким образом, начиная с узла N10 (так как узел N10 является первым в Списке В среди узлов N08, N09, N10 и N12 (см. Фигуру 6Е)), Список С создается для всех ближайших узлов по отношению к узлу N10 в порядке, определяемом уровнем сигнала, который теперь содержит новый узел N13 (то есть N11, N13, N08, N03, N02, N12). Затем Список С присоединяется к Списку В, как описано выше, таким образом добавляя новый узел N13 в Список В. Затем процедура повторяется для узлов N08, N09, N10 и N12, а также для узла N13 для окончательного формирования Списка В создания модифицированного маршрута обслуживания.
[0098] При удалении устройства или контроллера (и, следовательно, узла) из сети 100 узел также удаляется из Списка В и аналогичная процедура выполняется для узлов, которые являются ближайшими к удаляемому узлу. Таким образом, не выполняя алгоритм 200 формирования маршрута обслуживания для всех узлов в сети 100, существующий маршрут изменяется за счет только тех узлов, которые зависят от добавляемого или удаляемого узла.
[0099] Тогда как приведенный выше пример относился к беспроводной сети в виде ячеистой структуры на Фигуре 3, на которой показан нарушенный канал связи, алгоритм 200 формирования маршрута обслуживания аналогичным образом применяется для беспроводной сети точка-точка, например для указанной сплошной линией на Фигуре 3. Например, используя алгоритм 200 формирования маршрута обслуживания, создается Список А в блоке 202 (Фигура 11А) аналогично проиллюстрированному на Фигуре 6А. Используя алгоритм на Фигуре 7 для создания упорядоченного списка (Список В) узлов, напрямую взаимодействующих со шлюзом 102 в блоке 204, создается Список В (Фигура 11В) узлов с количеством транзитных шлюзов от шлюза 102, равным 0 (то есть узлы N03, N01, N02), и упорядоченных в зависимости от уровня сигнала по отношению к шлюзу 102, аналогично тому, как проиллюстрировано на Фигуре 6 В.
[00100] Выбирая первый узел из Списка В (то есть узел N03) в блоке 206, алгоритм 200 формирования маршрута обслуживания создает упорядоченный Список С (Фигура 11С) узлов с количеством транзитных узлов по отношению к выбранному из Списка В узлу, равным 0 (то есть по отношению к узлу N03), и упорядочивает их в зависимости от уровня сигнала по отношению к выбранному узлу из Списка В в блоке 208, используя алгоритм на Фигуре 8 для создания упорядоченного списка (Список С) узлов, напрямую взаимодействующих с узлом из Списка В. Тем не менее, в отличие от Списка С для выбранного узла N03 из Списка В, как в примере выше для сети в виде ячеистой структуры (см. Фигуру 6С), список не содержит узел N02, так как в примере сети точка-точка на Фигуре 3 только узлы N10 и N11 являются ближайшими по отношению к узлу 03. Таким образом, Список С для выбранного узла N03 содержит узлы N11, N10 в порядке, определяемом уровнем сигнала.
[00101] В блоке 210 Список С для выбранного узла N03 присоединяется к Списку В в соответствии с алгоритмом 210 присоединения Списка В к Списку С после выбора узла из Списка В, что обуславливает создание Списка В, проиллюстрированного на Фигуре 11D. Узел N02 остается в Списке В после исходного создания упорядоченного Списка В, однако, в отличие от Фигуры 6D, остается позади узла N01. Соответственно, алгоритм 200 формирования маршрута обслуживания определяет, учтен ли каждый узел в блоке 212, и выбирает следующий узел из Списка В в блоке 214 при необходимости.
[00102] В продолжение настоящего примера, следующим узлом в Списке В теперь является узел N11, который имеет ближайшие узлы N03 и N12. Используя процедуру на Фигуре 8 в блоке 208, Список С для выбранного узла N11 из Списка В состоит из узлов N03 и N12 в порядке, определяемом уровнем сигнала. Используя процедуру на Фигуре 9 в блоке 210, Список С добавляется к Списку В после узла N11, где узел N03 уже находится перед узлом N11, а узел N12 находится после узла N11. Окончательный вариант присоединенного упорядоченного Списка В выглядит следующим образом: N03, N11, N12, N10, N01, N02.
[00103] Как и в примере выше с сетью в виде ячеистой структуры, алгоритм 200 формирования маршрута обслуживания повторяет блоки 208, 210, 212 и 214 для узлов в сети точка-точка. Тем не менее, окончательный упорядоченный список отличается от списка для беспроводной сети в виде ячеистой структуры. Например, как только Список В добавлен для выбранного узла N11, следующим узлом в Списке В будет узел N12, который имеет только один ближайший узел - узел N11. Учитывая, что узел N11 уже находится в списке перед узлом N12, алгоритм 200 перемещается вперед к узлу N10 без присоединения Списка В после прохождения шагов 208 и 210 алгоритма. Узел 10 имеет два ближайших узла, узлы N03 и N11, которые оба находятся в списке перед узлом N10. После данного шага узел N01, выбираемый из Списка В, имеет ближайшие узлы N04, N05 и N06, в результате Список С состоит из узлов N04, N06, N05, а присоединенный Список В состоит из узлов N03, N11, N12, N10, N01, N04, N06, N05, N02. В связи с тем, что каждый из узлов N04, N05 и N06 имеет только один ближайший узел - N01, а также в связи с тем, что узел N01 находится в Списке В перед указанными узлами, окончательная итерация для узлов N04, N06, N05 (в том порядке, в каком они были выбраны из Списка В) не приведет к изменению порядка узлов в Списке В. Соответственно, узел N02 обуславливает добавление узлов N08 и N07 в Список В в таком порядке. При следующей итерации узел N09 добавляется к Списку В после узла N08. Узел N07 не имеет ближайших узлов, которые бы находились в Списке В перед ним. Таким образом, Список А является исчерпанным, а окончательный вид Списка В выглядит следующим образом: N03, N11, N12, N10, N01, N04, N06, N05, N02, N08, N09, N07 (как проиллюстрировано на Фигуре 11Е).
[00104] Как описано выше, Список В выводится в качестве порядка выполнения маршрута обслуживания для устройств, связанных с узлами. Этот список обновляется за счет узлов, которые добавляются или удаляются из сети точка-точка, как описано выше для беспроводная сети в виде ячеистой структуры, и может налагаться на схему размещения сети точка-точка вместе со стрелками, указывающими порядок прохождения маршрута от узла к узлу и, следовательно, от устройства к устройству, как проиллюстрировано на Фигуре 12. Тем не менее, следует отметить, что этот список не представляет собой оптимальный маршрут через сеть.
[00105] В частности, в сравнении с маршрутом, проиллюстрированным на Фигуре 10, который представляет собой более оптимальный, если не самый оптимальный, маршрут, проиллюстрированный на Фигуре 12, представляет собой менее оптимальный маршрут с точки зрения расстояния, которое необходимо пройти обслуживающему персоналу, даже несмотря на то, что узлы (и устройства) физически расположены одинаково в обоих случаях. Например, отрезок маршрута от узла N11 к узлу N12 проходит, главным образом, в обход узла N10, а отрезок маршрута от узла N10 к узлу N01 проходит в обход узла N02. Кроме того, отрезок маршрута от узла N05 к узлу N02 пересекает отрезок маршрута от узла N04 к узлу N06. Короче говоря, маршрут, выводимый алгоритмом 200 формирования маршрута обслуживания, для беспроводной сети точка-точка не является наиболее оптимальным маршрутом. Таким образом, так же, как и в случае, когда обслуживающий персонал может изменить маршрут при необходимости, например в случае необходимости более быстрого обслуживания определенных периферийных устройств или контроллеров по сравнению с остальными устройствами, или для удаления узлов, которые соответствуют периферийным устройствам и/или контроллерам, которые не требуют обслуживания или калибровки, маршрут, выводимый алгоритмом 200 формирования маршрута обслуживания, для беспроводной сети точка-точка пересматривается и настраивается обслуживающим персоналом для построения более оптимального маршрута. Тем не менее, в свою очередь, хотя в этом случае маршрут формируется вручную, алгоритм 200 формирования маршрута обслуживания используется как минимум для автоматического формирования маршрута обслуживания для любой из сетей, беспроводной сети в виде ячеистой структуры или сети точка-точка, или же комбинации этих сетей, он также используется для формирования исходного списка упорядоченных точек остановки, используемого обслуживающим персоналом для физического прохождения через производственное предприятие и выполнения различных задач, например таких, как сбор данных, калибровка устройств, выполнение визуального осмотра оборудования и так далее.
[00106] Несмотря на то что в предшествующем тексте детально изложено описание множества вариантов воплощения изобретения, следует понимать, что объем изобретения, определенный в контексте формулы изобретения, изложен в конце данного патента. Детальное описание рассматривается исключительно в качестве примера и не описывает всех возможных вариантов воплощения изобретения, так как описание всех возможных вариантов воплощения изобретения является нецелесообразным и невозможным. Может быть реализовано множество альтернативных вариантов воплощения изобретения с использованием любых существующих технологий или технологий, которые будут разработаны после заполнения даты настоящего патента, которые будут приносить дополнительные дивиденды в объеме прав, определенных настоящим изобретением.
[00107] Несмотря на то что способ формирования маршрута обслуживания описан в виде алгоритма, реализованного на рабочей станции или сервере, он также может быть реализован в виде аппаратного обеспечения, встроенной программы и так далее, а также может быть реализован с помощью других процессоров, в том числе и мультипроцессорных систем. Таким образом, элементы, описанные в данном документе, реализованы в обычных многозадачных ЦПУ или специально разработанном аппаратном обеспечении или встроенной программе, например, в специализированных микросхемах или других проводных устройствах, по желанию. При реализации в виде программного обеспечения алгоритм сохраняется в любой машиночитаемой памяти, например на магнитном диске, лазерном диске или любом другом носителе, в оперативной памяти или постоянной памяти компьютера или процессора, в любой базе данных и тому подобном.
[00108] Таким образом, могут быть реализованы множественные модификации и варианты способов и структур, описанных в данном документе, без отступления от сущности и объема настоящего изобретения. Соответственно, необходимо понимать, что способы и инструменты, описанные в данном документе, приводятся исключительно в качестве иллюстраций и не ограничивают объем данного изобретения.