СПОСОБ ПРЕДОСТАВЛЕНИЯ ФУНКЦИЙ В ПРОМЫШЛЕННОЙ СИСТЕМЕ АВТОМАТИЗАЦИИ И СИСТЕМА АВТОМАТИЗАЦИИ
METHOD OF PROVIDING FUNCTIONS IN INDUSTRIAL AUTOMATION SYSTEM AND AUTOMATION SYSTEM

Изобретение касается способа предоставления функций в промышленной системе автоматизации. Изобретение касается также компьютерного программного продукта. Кроме того, изобретение касается промышленной системы автоматизации.
Промышленные системы автоматизации служат для контроля, управления и регулирования технических процессов, в частности в области автоматизации производства, процессов и зданий, и обеспечивают возможность эксплуатации устройств управления, сенсоров, машин и промышленного оборудования, которая должна осуществляться по возможности самостоятельно и независимо от вмешательств человека. В связи с постоянно возрастающим значением информационной техники для систем автоматизации, которые включают в себя многочисленные объединенные в сеть блоки управления или, соответственно, вычислительные блоки, способы надежного предоставления распределенных посредством системы автоматизации функций для обеспечения функций контроля, управления и регулирования приобретают все большее значение.
В промышленной системе автоматизации может находить применение множество блоков управления, называемых также ПЛК (программируемый логический контроллер). Каждый блок управления имеет, как правило, интерфейс, через который может осуществляться доступ к данному блоку управления. Через интерфейс может запрашиваться множество различной информации, такой как, напр., текущее состояние блока управления, конфигурационные данные блока управления, системные и пользовательские переменные, диагностическая информация (такая как трассировки, сигналы тревоги, логи…) или резервная копия актуальной конфигурации блока управления. Через интерфейс иногда можно не только просматривать данные, но и получать доступ к ним и изменять их.
Для этого в блоке управления инсталлировано веб-приложение, которое обеспечивает возможность доступа через http или htpps. Для этого, например, в блоке управления могут быть заложены в памяти отдельные веб-страницы, которые обеспечивают возможность привязки к вышеназванным данным и/или состояниям блока управления. Во время работы информация в части блока управления всегда при вызове соответствующей веб-страницы расшифровывается и интегрируется в нее. Затем эта веб-страница переносится на веб-клиент. При этом для каждого запроса со стороны веб-клиента создается веб-страница, которая содержит запрошенные данные.
Проблема этого метода заключается в том, что веб-приложение обладает очень высокой сложностью. Помимо этого, для каждого различного типа блока управления должно предусматриваться соответствующее количество веб-страниц с интегрированными в них данными. Кроме того, недостатком является, что обновление данных на веб-страницах требует повторной загрузки данной веб-страницы. Это осуществляется, в одном случае, автоматически при вызове веб-страницы, например, при навигации по нескольким страницам, когда пользователем явно инициируется новая загрузка. Альтернативно может осуществляться обновление с жесткими интервалами, напр., каждые пять секунд. В результате при этом создается высокая вычислительная нагрузка для веб-приложения. С точки зрения пользователя получается плохое время реакции.
Одностраничным веб-приложением (англ. Single-Page Application, SPA) называется веб-приложение, которое состоит из одного единственного HTML-документа, и содержимое которого динамически догружается. При одностраничном веб-приложении пользователю не нужно больше делать переходы между отдельными веб-страницами. Вместо этого взаимодействия с веб-приложением в оконечном устройстве на стороне клиента приводят к фоновой коммуникации, которая динамически догружает дополнительные составляющие одиночной веб-страницы. При этом данные могут также догружаться через разные проприетарные интерфейсы.
В основе настоящего изобретения лежит задача, создать способ более гибкого предоставления функций в промышленной системе автоматизации, а также предложить надлежащую техническую реализацию этого способа.
Эта задача в соответствии с изобретением решается с помощью способа в соответствии с признаками п.1 формулы изобретения и промышленной системы автоматизации в соответствии с признаками п.11 формулы изобретения. Предпочтительные усовершенствования настоящего изобретения указаны в зависимых пунктах формулы изобретения.
Технического результат согласно настоящему изобретению состоит в обеспечении упрощения и оптимизации навигации и предоставления функций для обеспечения надежного и своевременного контроля, управления и регулирования технических процессов в промышленной системе автоматизации, независимо от типа применяемого блока управления.
Соответственно предлагаемому изобретением способу через веб-приложение блока управления осуществляется доступ к функциям системы автоматизации, которые предоставляются на стороне клиента во время выполнения управляющей программы через одностраничное веб-приложение в виде веб-клиента на пользовательском интерфейсе на стороне клиента. Эти функции предоставляются стандартизированной моделью данных веб-приложения, которая отображает указанный по меньшей мере один блок управления и предоставляемые им данные. Доступ к стандартизированной модели данных осуществляется через родовой интерфейс данных веб-приложения.
Способ делает возможным строгое разделение на статические ресурсы и родовой интерфейс данных. Благодаря этому должен предоставляться только один веб-клиент для разных вариантов блока управления. Если при определенном варианте блока управления нет в распоряжении определенных функциональных возможностей, то они не предлагаются в веб-клиенте для визуализации и выбора.
Другое преимущество получается за счет того, что разработка веб-клиента и разработка веб-приложения могут строго разделяться. Благодаря этому можно оптимизировать веб-приложение с точки зрения оптимальной интеграции данных. Отсюда получаются сокращенные издержки тестирования, так как каждый веб-клиент нуждается в имплементации только по отношению к родовому интерфейсу данных и стандартизированной модели данных, которые могут быть идентичны для всех блоков управления определенного типа блока управления. Вместо применения какого-то конкретного блока управления может, например, использоваться имитатор. В части веб-приложения должны тестироваться только этот интерфейс и доступ к родовой модели данных. Поэтому тестирование может осуществляться независимо от пользовательского интерфейса. Это также дает возможность предоставлять или обновлять веб-приложение и веб-клиент независимо друг от друга. Далее, становится возможной более простая интеграция пользовательских интерфейсов в разные веб-приложения.
После начальной загрузки веб-клиента в веб-приложении возникает меньшая нагрузка по сравнению с уровнем техники, так как выдаются только лишь структуры данных. В частности, не требуется интеграция данных в веб-страницы в веб-приложении. Само приложение выполняется исключительно путем загрузки статических ресурсов.
Ориентированные на пользователя приложения могут реализовываться проще, когда статические ресурсы, которые образуют веб-клиент, закладываются на веб-сервер
По одному из предпочтительных вариантов осуществления модель данных имеет иерархически структурированную архитектуру, имеющую узлы, которые находятся в заданных отношениях друг с другом. Особенно целесообразно, когда модель данных имеет древовидно структурированную архитектуру. Благодаря этому можно особенно просто реализовывать стандартизированную модель данных и получать доступ к ней через родовой интерфейс данных.
По другому целесообразному варианту осуществления определенная информация о блоке управления или каком-либо предоставляемом им данном в модели данных при каждом запросе любого блока управления может быть найдена в иерархической структуре в одном и том же месте. Родовой интерфейс данных позволяет получать доступ к иерархической, предпочтительно древовидно структурированной модели данных. При этом можно осуществлять навигацию по иерархии, чтобы иметь возможность распознавать наличие или отсутствие (отдельных) элементов. В отличие от этого, стандартизированная модель данных отображает состояния и данные блока управления. Определенная информация о блоке управления и предоставленных им данных всегда могут быть найдены в одном и том же месте или, соответственно, по одному и тому же пути. Это облегчает навигацию, независимо от типа применяемого блока управления.
Модель данных по одному из целесообразных вариантов осуществления включает в себя статические данные и/или динамические данные. Статические данные представляют собой, напр., характеризующие блок управления данные, такие как, напр., информация о фирменном программном обеспечении и тому подобное. Динамические данные включают в себя данные состояния, трассировки, сигналы тревоги (в общем: диагностические данные), пользовательские данные или данные процессов (данные измерений).
Целесообразным образом из веб-клиента через интерфейс данных осуществляется доступ к структуре модели данных с целью выделения из модели данных подмножества из надмножества всех функций нескольких различных блоков управления и предоставления на пользовательском интерфейсе на стороне клиента. Другими словами, при этом становится возможен просмотр внутри структуры данных. При этом просмотре или навигации может определяться наличие или отсутствие (отдельных) элементов. В ходе навигации или процесса просмотра могут создаваться или удаляться элементы структуры данных. Альтернативно или дополнительно возможно чтение или описание элементов структуры данных. Далее, может также реализовываться механизм подписки, который позволяет получать уведомления об изменениях определенных элементов модели данных. Далее, может быть разрешена не только навигация в модели данных, но и другие способы считываемого самоописания способностей блока управления.
В этой связи целесообразно, если одностраничное веб-приложение предоставляет на пользовательском интерфейсе на стороне клиента только те данные, которые содержатся в указанном подмножестве. Тем самым гарантируется, что блок управления представляет только те данные, которые он может обрабатывать, исходя из своих способностей. Не допускающая возможность обработки информация либо не отображается, либо, напр., выделяется серым цветом.
Кроме того, целесообразно, если одностраничное веб-приложение загружается и выполняется как статический ресурс веб-приложения или другого приложения или центрального вычислительного устройства веб-клиентом. Мобильное приложение или клиентское приложение может использоваться в качестве альтернативы одностраничному веб-приложению, которая применяется вместо одностраничного веб-приложения, когда веб-клиент выполняется на мобильном устройстве, таком как, напр., планшетный ПК и тому подобное.
Может быть также целесообразно, если выполнение одностраничного веб-приложения осуществляется в станции обслуживания и наблюдения.
Кроме того, предлагается компьютерный продукт, который может загружаться непосредственно во внутреннюю память цифрового вычислительного устройства, в частности вычислительного блока указанного блока управления, и включает в себя участки кода программного обеспечения, с помощью которых выполняются шаги в соответствии с описанным здесь способом, когда этот продукт работает на вычислительном устройстве.
Предлагаемая изобретением промышленная система автоматизации включает в себя по меньшей мере один блок управления и одну станцию обслуживания и наблюдения. Указанный по меньшей мере один блок управления включает в себя по меньшей мере один веб-сервер для предоставления функций автоматизации в виде веб-приложения, причем это веб-приложение включает в себя стандартизированную модель данных, которая отображает указанный по меньшей мере один блок управления и предоставляемые им данные, и родовой интерфейс данных, который позволяет получать доступ к предоставляемым блоком управления данным посредством стандартизированной модели данных. Станция обслуживания и наблюдения включает в себя веб-клиент для выполнения на стороне клиента одностраничного веб-приложения во время выполнения управляющей программы на пользовательском интерфейсе на стороне клиента, при этом веб-клиент включает в себя надмножество всех функций нескольких различных типов блоков управления и через родовой интерфейс данных осуществляет доступ к стандартизированной модели данных.
Предлагаемая изобретением промышленная система автоматизации имеет те же преимущества, которые описывались выше в связи с предлагаемым изобретением способом.
Помимо этого, предлагаемая изобретением промышленная система автоматизации может включать в себя другие признаки, которые обеспечивают возможность осуществления предлагаемого изобретением способа.
Настоящее изобретение поясняется подробнее ниже на одном из примеров осуществления с помощью чертежа. Показано:
фиг.1: схематичное изображение промышленной системы автоматизации для предоставления функций; и
фиг.2: схематичное представление отображения стандартизированной модели данных, используемой в рамках предлагаемого изобретением способа.
Изображенная на фиг.1 промышленная система автоматизации включает в себя, в качестве примера, только один блок 10 управления, который включает в себя веб-сервер 11 для предоставления функций автоматизации в виде веб-приложений. Возможно намного большее количество блоков управления в промышленной системе автоматизации, несмотря на упрощенное изображение на фиг.1. Причем тогда архитектура нескольких блоков управления идентична сделанному здесь описанию. Блок 10 управления через коммуникационную сеть 15 соединен по меньшей мере с одной станцией 20 обслуживания и наблюдения, которая имеет веб-клиент 21 для связи на стороне клиента веб-приложений во время работы на пользовательском интерфейсе 22 на стороне клиента. Пользовательский интерфейс 22 на стороне клиента включает в себя в настоящем примере осуществления веб-браузер. Станция 20 обслуживания и наблюдения может представлять собой стационарное вычислительное устройство или мобильное вычислительное устройство (напр., лэптоп, планшетный ПК и тому подобное).
Веб-клиент обеспечивает возможность выполнения одностраничного веб-приложения (SPA), которое управляет надмножеством (т.н. Superset, англ. расширенное множество) всех функций самых разных типов блоков 10 управления, которые должны быть доступны через интерфейс блока 10 управления в веб-браузере 22.
Веб-сервер 11 включает в себя для этого родовой интерфейс 12, который позволяет получать доступ к иерархической, предпочтительно древовидно структурированной модели 13 данных. Возможное отображение модели 13 данных представлено на фиг.2. Модель 11 данных включает в себя корневой узел N0, в качестве примера, три узла N11-N13 первого уровня иерархии, в качестве примера, шесть узлов N21-N26 второго уровня иерархии и, в качестве примера, девять узлов N31-N39 третьего уровня иерархии. Узлы каждых смежных уровней иерархии, если это предусматривает модель данных, соединены друг с другом краями для установления отношений отдельных узлов друг с другом. С помощью такого, приведенного только в качестве примера структурирования модели данных можно отображать каждый блок 10 управления и предоставляемые им данные. Модель 13 данных, структурированная, как показано на фиг.2, позволяет с помощью родового интерфейса 12 данных осуществлять навигацию по иерархии, чтобы иметь возможность распознавать наличие или отсутствие (отдельных) элементов модели данных. При этом элементы структуры данных могут, напр., создаваться, удаляться, читаться и/или описываться через веб-браузер.
Стандартизированная модель данных отображает каждый блок 10 управления, его состояния и предоставляемые эти блоком управления данные. Определенная информация о блоке управления и предоставляемых им данных может быть найдена всегда в одном и том же узле, который может быть найден по определенному пути.
Веб-сервер 12 предназначен для того, чтобы выдавать статические ресурсы веб-браузеру, а также реализовывать родовой интерфейс и с его помощью обеспечивать возможность доступа к стандартизированной модели 13 данных.
Обновление или повторная загрузка веб-страницы веб-клиента явно не требуется. На веб-сервере 11 блока 10 управления, в отличие от этого, не выполняется никакой код приложения для динамического создания ресурсов.
Веб-клиент 21 представляет собой общие рамки приложения. Веб-клиент 21 для получения содержания и информации каждого блока 10 управления и его актуальных данных исключительно через родовой интерфейс 12 осуществляет доступ к лежащей в основе стандартизированной модели 13 данных. Эта стандартизированная модель 13 данных включает в себя как статическую/неизменную информацию, такую как, напр., информация о блоке 10 управления, серийный номер, тип, версия фирменного программного обеспечения и так далее. Родовая модель 13 данных включает в себя также такую информацию, которая изменяется только вместе с проектированием, такую как, напр., подключенная периферия, топология, в которую был включен блок управления, и так далее. Помимо этого, модель 13 данных включает в себя также динамические данные, такие как, напр., состояние блока управления, или данные, полученные через интерфейс блока управления от периферийных устройств или диагностических буферов, трассировки, сигналы тревоги, системные и пользовательские переменные, таблицы наблюдений и тому подобное.
При навигации по модели 13 данных веб-клиенту 21 обеспечивается возможность регистрации данных, предоставленных веб-севером 11 блоку 10 управления. Если, напр., в стандартизированной модели 13 данных содержатся элементы информации о тревоге, то в веб-клиенте 21 предусматривается внесение сигнала тревоги через меню, и обеспечивается возможность доступа к этому отдельному аспекту.
В то время как веб-клиент 21 может таким образом учитывать больше функциональных возможностей в пользовательском интерфейсе веб-браузера 22, однако открывается только та функциональная возможность, которая имеется в стандартизированной модели 13 данных на конкретном фактически предусмотренном блоке 10 управления. То есть целесообразным образом веб-клиент 21 всегда покрывает все типы блоков 10 управления, для которых он был написан. Однако в зависимости от фактически имеющихся функциональных возможностей блока 10 управления, как описано, визуализируются и открываются для выбора только те функциональные аспекты, которые имеются в стандартизированной модели 13 данных.
Интерфейс данных между веб-клиентом 21 и веб-сервером 11 может быть выполнен по образцу модели доступа OPC-UA. Также стандартизированная модель 13 данных по своей архитектуре тоже может быть выполнена по образцу модели документа OPC-UA-Companion (напр., «OPC-UA for Devices»). Это позволяет при известных обстоятельствах сравнимым образом адресоваться к одной и той же модели по разным путям доступа. Так, например, можно осуществлять доступ из OPC-клиента через интегрированный OPC-сервер, а также из веб-браузера через веб-сервер с HTTP и JSON. Таким образом, составителю приложения, независимо от выбранного пути доступа, известна по меньшей мере лежащая в основе модель адресации и применения.
Пользователь станции 20 обслуживания и наблюдения при раскрытии интерфейса между веб-клиентом 21 и веб-сервером 11, а также применяемой стандартизированной моделью 13 данных может простым образом добираться до информации из блока 10 управления. В частности, вполне возможно составление собственных приложений, которые архивируются в блоке 10 управления как статические ресурсы.
Альтернативно веб-клиенту 21 в качестве клиентского приложения может также применяться, например, мобильное приложение, которое осуществляет доступ на интерфейсе данных к веб-серверу 11 и подчиненной стандартизированной модели 13 данных.