Pull to refresh

Comments 32

Александр, я так полагаю Вы решили на хабре свою статью из ВК выложить для лучшей индексации поисковиками. Спасибо большое за Вашу работу. Кондрашки действительно отличный преподаватель, базовый двухдневный курс у него позволил лучше понять WinCC OA.
Жаль только, что сейчас набегут ИТ-шники и начнут критиковать использование SCADA-систем и предлагать что-то вроде этого.
Обычно промышленные предприятия не сильно заморачиваются за поддержку ПО, которое сделал на коленке работник, а потом кусают локти, когда этот работник увольняется.
К счастью большинство уже перешло на общепромышленные решения в части верхнего уровня АСУ ТП.
Да, коллега, все верно. Я счел необходимым немного расширить охват своих заметок. Кроме того, хабр удобнее с точки зрения демонстрации программного кода прямо в тексте, а не скриншотами.

Я не разделяю Ваших опасений относительно «набегут и накритикуют». Если почитать комментации к предлагаемой статье, то там не видно восторгов, зато есть замечания разной степени ехидности касательно применения «настоящих» скада-систем.

Есть общепризнанный инструментарий для создания операторских систем в промышленности, это факт. Однако, ни законом, ни обществом не запрещено и не порицается брать любую среду разработки (особо сильные могут обойтись средствами vi и make) и «писать свою скаду».
главный вопрос к WinCC OA — зачем? (если есть обычная WinCC)
в чем ее отличие от обычной WinCC?
чем она лучше/хуже обычной WinCC?
в каких случаях следует применять WinCC OA?
в чем заключается открытость ее архитектуры (относительно обычной WinCC)?
Вы с WinCC Unified, очевидно, путааете
В меру своих убогих знаний постараюсь сформулировать отличия кратко. Под «обычной WinCC» буду предполагать классическую версию 7.

Общая идеалогия. 7 — монолитная, ОА — модульная, основанная на менеджерах, общающихся на TCP. В ОА рассматривается и лицензируется система, а не набор хостов. Ничто не помешает даже однопользовательскую систему разнести на три физических хоста (1 — EV и драйверы, 2 — ui, 3 — архивы), при этом набор купленных компонент не меняется. На практике так, вряд ли, кто-то будет делать, но, тем не менее.

Можно написать абсолютно любой менеджер или драйвер и интегрировать в свою систему.

Кроссплатформенность. ОА, кроме винды, крутится еще на трех дистрах пингвина, причем, в рамках системы хосты могут быть на разных ОС.

Наличие «катастрофоустойчивого» резервирования. Применяется на пара резервных серверов, а две таких пары, то есть 2х2

Возможность построение распределенных систем. В самом простом случае пара строчек в конфиге, и две никак не связанные до этого системы, теперь имеют единую базу точек данных. Причем, как я понял, обмен между dist-менеджерами построен на принципах телемеханических протоколов и весьма похож на IEC104.

Система фактически написана сама на себе. Это если грубо. Тот же модуль para является панелью «системного» (что-то вроде include) проекта, и его можно спокойно изменить/модифицировать.

Возможность менять систему на лету и не только «ручными средствами» конфигурирования. Скриптами можно и добавлять точки данных, и изменять конфигурацию на лету, и создавать/добавлять панели.

Область применения? А исходя из здравого смысла и дальнейших планов на развитие. Если в АСУ ТП находится пара-тройка S7-1511, и она всю жизнь будет в stand alone режиме, то тут в WinCC Professional может оказать много, можно и Advanced обойтись.

А если речь идет про управление магистральных нефтепроводов или любую другую распределенную системы в пару миллионов внешних сигналов, то это совсем другое дело.

Общая идеалогия. 7 — монолитная,
ОА — модульная, основанная на менеджерах, общающихся на TCP.

В обычной «сервер алармов», «сервер трендов», «сервер сбора данных», «визуализация», «сервер скриптов» (есть же окошко настроек, в котором указываешь какие части запускать при старте Runtime) — не модульно?

В ОА рассматривается и лицензируется система, а не набор хостов.

А именно что: экраны, процессоры, узлы, теги ввода\вывода, устройства?
разве в обычной WinCC лицензируется «набор хостов»?

Можно написать абсолютно любой менеджер или драйвер и интегрировать в свою систему.

На чем?
В чем?

Вообще вопрос то был простой примитвный… приземленный: обычная WinCC плохо проворачивает свои же Сишные скрипты (успела… не успела… что не успела — пропустила и так сойдет (на раз в секундовом SWITCH_CASE проверяли), VB не проверяли, может там лучше) — как со скриптами у WinCC OA?

Есть ли какое средство отладки скриптов чуть более удобное, чем printf в консоль в обычной WinCC?

Библиотечный графический объект в обычной WinCC (типа один раз слепил объект насоса из круга с анимацией цветом, числовым полем, текстовая надпись, привязка всплывающего окошка с параметрами/настройками насоса, а потом раскидал десяток экземпляров по мнемосхемам и привязал только меняющуюся часть у тегов (типа TagPrefix, но чтоб можно было замещаемые части в любой части имени тега вставлять и любое количество раз, типа как в Citect у джинов)) и если надо исправить, то меняешь библиотечный, а экземпляры подхватывают изменения автоматом — есть подобное в WinCC OA?

Комментарии к тегам в WinCC OA осилили добавить?

Аналоговые алармы в WinCC OA так же дико как в обычной WinCC добавляются?

В WInCC OA можно квитировать аларм из скрипта (или еще как, но в дисплее алармов, а ткнув в картинку технологического объекта с этим алармом ) зная только имя тега, к которому привязан аларм?

WinCC OA можно заставить экспортировать алармы/тренды в стороннюю БД?

Импорт/экспорт тегов делается также через пришлепку к MS Excel, которая запросто сотрет все 200 строк, которые только что вставили (потому что то ли много за раз то ли опечатку в имени тега увидел) и вешает венду и рисует белыми квадратами?
Коллега, Вы обратили внимание, что эта заметка называется «Часть 1»?
Вопросов, тем не менее, задали уже на 15 частей вперед. Материал переносится сюда не сразу, постепенно ответы будут.
Если не терпится, то vk.com/@akcount, там гораздо больше.
Можно написать абсолютно любой менеджер или драйвер и интегрировать в свою систему.
На чем?
В чем?

Есть два варианта:
  • на С++, используя предоставляемый вендором пакет библиотек. Так можно писать свои библиотеки и графические элементы, которые система видит как родные. (само ядро WinCC OA на Qt написано)
  • на C# писать своё приложение с доступом к базе реального времени через API, но там надо лицензию докупать на использование API

Вообще вопрос то был простой примитвный… приземленный: обычная WinCC плохо проворачивает свои же Сишные скрипты (успела… не успела… что не успела — пропустила и так сойдет (на раз в секундовом SWITCH_CASE проверяли), VB не проверяли, может там лучше) — как со скриптами у WinCC OA?

В основе WinCC OA лежит событийная модель, а все скрипты, которые работают с тегами, делают это по подписке. То есть, если событие сгенерировано, оно будет обработано.
Есть ли какое средство отладки скриптов чуть более удобное, чем printf в консоль в обычной WinCC?

Есть дебаггер, но, честно признаюсь, пока не осилил. В консоль как-то проще.
В версии 3.17 добавили фреймворк для тестирования, так что теоретически можно заморочиться и автотесты к скриптам прикрутить.
Библиотечный графический объект в обычной WinCC (типа один раз слепил объект насоса из круга с анимацией цветом, числовым полем, текстовая надпись, привязка всплывающего окошка с параметрами/настройками насоса, а потом раскидал десяток экземпляров по мнемосхемам и привязал только меняющуюся часть у тегов (типа TagPrefix, но чтоб можно было замещаемые части в любой части имени тега вставлять и любое количество раз, типа как в Citect у джинов)) и если надо исправить, то меняешь библиотечный, а экземпляры подхватывают изменения автоматом — есть подобное в WinCC OA?
Комментарии к тегам в WinCC OA осилили добавить?
Аналоговые алармы в WinCC OA так же дико как в обычной WinCC добавляются?
В WInCC OA можно квитировать аларм из скрипта (или еще как, но в дисплее алармов, а ткнув в картинку технологического объекта с этим алармом ) зная только имя тега, к которому привязан аларм?
WinCC OA можно заставить экспортировать алармы/тренды в стороннюю БД?

И к модели данных и к модели графики есть полный доступ из скриптов.
Из скриптов можно создавать и удалять теги, создавать и удалять графические компоненты на экране, писать в файлы, реляционные базы данных, делать post и get запросы. Проще сказать, чего нельзя. Нельзя импортировать .Net библиотеки, wpf контролы и activeX компоненты (если сильно хочется, надо на С++ писать).
Библиотечные графические элементы есть.
Настраивается и кастомизируется в свойствах тега всё, что только можно себе представить.
звучит как песня…
осталось заказчиков типа Газпрома или Транснефти на WinCC OA перевести…
Из-за названия продукта складывается впечатление, что это та же WinCC, только в профиль. На самом деле WinCC OA — это отдельный продукт с другой архитектурой. Сам Сименс позиционирует его как нечто среднее между языками программирования типа C++ и SCADA системами типа WinCC. Соответственно, порог вхождения для работы с ней повыше будет, чем для того же WinCC или InTouch, зато и возможностей для реализации чего-нибудь нестандартного гораздо больше.

Интересная скада, гибкая, с поддержкой многопоточности (в отличие от классической wincc) многие вещи работают из коробки (snmp например), но купить ее в российском Сименсе — это квест, который полностью отбивает всё желание её использовать.

Потому что это разработка не Сименс, это PVSS, купленная вместе с фирмой в 2007г.

До сих пор не интегрирована в SIOS (единый портал ТП для АСУТП Сименса), тех.поддержка вроде тут (у отдельной фирмы?)

Документацию в открытом доступе я не нашел, хотя особо и не старался. Такая вот OPEN…

Вот купить по идее, не проблема, в департаменте A&D, IA&DT, тьфу DFPD =)

Собственно, прежде чем связываться, я бы советовал очень хорошо понимать дальнейшие пути действий.

Купить проблема, если приобретаете не под конкретный проект, а для того чтобы оценить потенциал программного продукта, протестировать в связке со своим оборудованием. Несколько месяцев общения как с официальными дилерами, так и самим Сименсом не принесли результатов.
С документацией действительно проблема, но особых проблем с настройкой не возникло.
А связались с этим продуктом в основном из-за кроссплатформенности, классическая wincc под виндой уже не проходит по требованиям ИБ.

классическая wincc под виндой уже не проходит по требованиям ИБ.
Хм. У всех проходит, у вас не проходит. Ну да ладно, СЗЗБ.
Потому что WinCC OA де-факто это не коробочный продукт, а проектный.
В Европе почему-то вполне себе коробочный.
И вообще закупать кота в мешке не протестировав продукт в «боевых» условиях — это на большого любителя.
П.С. К счастью, для меня тема общения с Сименсом уже не актуальна.
В Европах коробочно он продается партнерскими компаниями, которые его до коробочной версии специально допилили, например тот же Cleverdist. До версии 3.17 его даже не было в Industry Mall.
Никто не мешает вам зарегестрироваться на портале WinCC OA и скачать демо-версию и документацию.
  1. Не надо мне рассказывать как он продается в Европе, прошёл через это, купил, потестил, всё ок.
  2. Никто не мешает, Вы правы, более того, я там зарегистрирован и весь доступный контент у меня есть, проблема в том, что демо версий недостаточно для полноценного тестирования продукта. 61850, например, в демке не работает.
    П.С. Думаю нет смысла в продолжении диалога, я лишь описал проблемы, с которыми столкнулся я и с которыми, соответственно, могут столкнуться другие люди.
А что не так с документацией? При установке дистрибутива вместе с ним ставится полный комплект документации, где описаны вещи от состава тестового проекта и системных требований до нюансов конфигурации и разработки API.
Другое дело, что русскоязычная часть перевода отстаёт, при разработке лучше руководствоваться английской версией (или немецкой, перевод идёт параллельно), но это уже мелочи.
У остальных продуктов документация доступна на сайте SIOS. Это называется открытый доступ.

Или можно где скачать официально дистрибутив с докой вместе?
Потому что это разработка не Сименс, это PVSS, купленная вместе с фирмой в 2007г.
До сих пор не интегрирована в SIOS (единый портал ТП для АСУТП Сименса),

Интеграция в Сименс ещё идёт, с выходом версии 3.17 появились заказные номера и в каталог решений Сименса она попала. До этого заказать и купить действительно был тот ещё квест. Сейчас сильно проще.

тех.поддержка вроде тут (у отдельной фирмы?)

Это как раз та самая ETM, которая разработчик системы. У продукта недавно появился официальный сайт SIMATIC WinCC Open Architecture Portal, правда, там в разделе загрузок больше маркетинговые презентации.
Или можно где скачать официально дистрибутив с докой вместе?
Мы у регионального представительства Сименса брали, они охотно делятся.
ну и killer feature WinCC (в связке с ПЛК Siemens) — метка времени аларма от ПЛК (алармы генераться в ПЛК спец. блоками) — в WinCC OA она есть?
Есть драйвера для связи с ПЛК Сименс (S7 и S7Plus).
Из документации:
С помощью алармов S7 системы WinCC OA можно инициировать запуск и квитировать в WinCC OA алармы, которые до сих пор существовали только в ПЛК. Т.е., квитированием в WinCC OA алармы также квитируются и в ПЛК.

Лично этот функционал не пробовал, так что подробнее прокомментировать не могу.
Судя по мануалу и настройкам драйвера S7plus — есть.

Опписание, о чем идет речь, не помешало бы. Не все знают, что такое WinCC. Первая часть все-таки

В вводной части статьи ссылка на презентацию приведена.
Sign up to leave a comment.

Articles