Pull to refresh

Comments 185

Впечатлен обоими, и автором текста и автором софта.
Пробовал пару лет назад.

С одной стороны — «круто», да ещё и под linux!..
С другой — всяческие «но» перевешивают :( Тут тебе и пресловутый «порог вхождения» (мне «даже» в TraceMode было проще въехать, после visio-подобных SCADA, чем-то они схожи, кстати), и некоторая «бедность» графики — как-то получилось долго и медленно начинать.

Вывод: автор софта «ваще монстр», автор текста — герой, топик — в закладки _НО_ пока только на случапй хобби/избытка времени :(

ЗЫ: на данный момент «любимая» СКАДА — новое поделие от Шнейдера. Тоже есть групповая привязка, привязка по названиям точек и т.п. Не без глюков, но подкупает графическая часть — то, что раньше называлось TAC Vista — шустро и javascript для всяких извратов на странице, да и блок-схемы в FBD для инженеров проще, чем в коде разбираться ))
>> Пробовал пару лет назад.

Не-не-не… для openscada пару лет — это очень много… вы посмотрите ChangeLog… там чуть ли не каждый день… «улучшено… исправлен… пересмотрено...»

>> С одной стороны — «круто», да ещё и под linux!..
Не то слово: весь вопрос только в том куда «влезет» openscada, т.е. вопрос к железке с линуксом — чтоб там собралась openscada — вы видели примеры «запихивания» ее в LinPac и Segnetics SMH 2Gi? Все упирается в железку, на которой можо проверить/собрать. Например, контора Prosoft Techology делает разные модули для ПЛК Rockwell и Schneider (модули с модбасом, свободнопрограммируемые на Си под ДОС, корректоры газа — всего это у роквел и шнайдер нет) и есть у них модуль для ControlLogix с Linux на борту — Linux Development Module for ControlLogix MVI56E-LDM image / Так вот — хотим получать алармы с меткой времени ПЛК (как у WinCC +STEP7), но для openSCADA на АРМе, а если openSCADA «залезет» в этот модуль, то возможно.
Влезет или нет:
CPU = 400MHz ARM9 G20

Operating System = Linux (kernel 2.6.22)

Linux Distribution = Timesys

System Memory = 64MB SDRAM

Flash Memory = 256MB NAND Flash

Compact Flash = 16GB max supported (not provided)
+ LDMdevKit — Linux Development Module — не известно что в нем…
В программе ПЛК передаем нужные теги в модуль с линукс, там openscada + ваш пользовательский (возможно модбасо-подобый) протокол (который поставляет зачения тегов с меткой времени) и на стороее АРМа пользовательский протокол «разматываем». Если сами не осилите — у Ромы оооочеь демократичные цены. Так что я даже боюсь представить, что он может за 500 тыр сделать… Может даже на Windows портировать :)

>> С другой — всяческие «но» перевешивают :( Тут тебе и пресловутый «порог вхождения» (мне «даже» в TraceMode было проще въехать, после visio-подобных SCADA, чем-то они схожи, кстати), и некоторая «бедность» графики — как-то получилось долго и медленно начинать.

1) порог вхождение и пр. — это все ерунда. Просто от лени, хочется чтоб «все само». первое, что я сделал — засыпал ромин форум вопросами «а как это… а где то...». На что Рома сказал: перестаньте задавать глупые вопросы, ато буду отвечать только на платной основе. Дальше он еще подерзил, я ответил ему соответственно и был забанен. Вот после этого я засел за чтение мануалов и все стал проверять поочередно — линия, поле ввода, анимация, архивы, тренды, пользователи и т.д. Через месяц я разобрался (с теми модулями, с которыми работал — за ВСЩТ или OPC_UA ничего не скажу) и теперь мне уже противно объяснять новичкам-наладчикам что и где в openscada — это же очевидно! (конечно очевидно, когда повторил 50 раз :) ). Скажу так: в WinCC порог вхождения не ниже (это если нормальная навигация с TagPrefix и код на их Си). C Windows на Linux тоже «высок порог вхождения». Про ошибки WinCC я уже показывал картинки. Подвесить веду до того, что только хардварный резет поможет — такого я даже представить не мог у Excel, если что не встало ровно — проще переставить WinCC, чем докопатьсся в чем дело, дистрибутив WinCC весит 6 гигов (там что mkv внутри ???), первый вопрос у техподдержки к вам — Windows русский? да, тогда до свидания… у вас более 512 трендов в архив? — извольте еще заплатить, не смогла запустить модбас — ну и гуляйте…
А у Ромы если работает, то работает. Обнаружили багу? Воспроизвели не один раз? Один пост на форум и если это именн ошибка ее весьма быстро исправят. Как SCADA ооооочень гибкая… Пока еще не проверяли резервирование сервера. Клиент-сервер работает. WEB морда — по-умолчанию есть. Работает. Даже разработка через WEB возможна! Правдо коряво выглядит, но ведь работает!
Отчеты — вы их у WinCC видели? Формально они есть, но они деревянные (не гибкие в смысле). Тег в отчете — только тег, никаких формул. Единственный более-менее нормальный способ вывести данные в табличном виде — создать временный CSV файл и уже его передать в отчет. В RSView32 отчетов нет вообще. У Citect тоже шляпа. Проще сбацать файл RTF или HTML и уже его показать на странице. У Ромы все (почти, а если на CPP умеете, то точно все) в ваших руках.
Единствеое, чего не хватает у Ромы — алармов классических — но как я показал мы и это осилили.
Так что я очень надеюсь на расширение комьюнити пользователей
>> мне «даже» в TraceMode было проще въехать
в 2011 году был на двухнедельном курсе у них — были записки в блокноте, что у них отсутствует из того, что нам надо, сейчас записи не нашел, но по памяти: нет клиент-сера, нет совместной разработки проекта несколькими разработчиками.
На курсах ТМ несколько раз падала (вроде даже в BSOD). Импорт/экспорт тегов — на курсах была самая последняя версия, в учебнике — предыдущая. Я повторил по учебнику действия по экспорту тегов — результата ноль. Показал преподавателю курсов, он повторил — не работает «Странно… не работает… ну учебник по предыдущей версии писали — там все работает… а у вас тут на курсах самый-самый альфа-релиз»

>> на данный момент «любимая» СКАДА — новое поделие от Шнейдера
тут я ожидал песню Citect :) думаю ну щас… мы только этим летом на 7.3 перешли… до этого на 7.0 сидели, а вы мне про 7.4 хотите спеть :)
Про TAC только слышал…
Когда «развлекался» (не забываем, пару лет назад ;) ) пробовал собирать её в какой-то убунте (кажется таки с Гномом) на celeron c 256RAM — вполне шустро шуршала. Дома есть Cubietruck — вернусь из отпуска, возможно, попробую собрать под него ради интереса. 64М памяти глядятся грустновато, Vision, думаю, точно не влезет… Да и смысл запихивать всё это в «железку» из практики не очевиден. Разве что те самые алармы копить, пока серверная часть недоступна…

Вопрос о лени «отметаем, как несущественный © Выбегайло» — тут скорее вопрос времени на изучение противоречит желанию менеджера продать «вчера» и со всеми вкусняшками. Потому и пользуемся тем, что «все само». Ибо если денег мало, то «не интересно», а если «более-менее» — тогда «давай быстрей! Наляпай готовых картинок из библиотеки, заведи алармы и тренды — и в путь!»

>>>тут я ожидал песню Citect :)
Не-не-не! WinCC меня «удачно минула», а курса по 4-му Desigo, у которого «внутре» как раз Citect, хватило… Одни «90 шагов по установке XWorks и Desigo» чего только стоят — чуть не так накатил обновление винды — начинай сначала :))

>>>Про TAC только слышал…
Нынешний визуализатор использует внутри почти SVG — соответственно графика вполне себе векторная, заодно можно менять или создавать «на лету» содержимое картинки — весьма схоже с динамическим HTML и со «стандартными» методами JavaScript для работы с DOM и примитивами типа строк/чисел/дат…
У openSCADA сразу и везде векторная графика — Citect до сих пор ее не осилит даже в разработке, WinCC только в разработке позволяет приблизить/уменьшить мнемосхему, Wonderware InTouch… не дай бег ты открыл мнемосхему редактировать на мониторе с меньшим разрешением, чем у этой мнемосхемы… капец мнемосхеме…
Алармы у Citect нормальные: и дискретные, и расширенные, и аналоговые. У WinCC аналоговые — это убожище… даже описать трудно… это надо видеть… В openscada раз мы сами их реализовали — крутим как хотим…

Забыл я как-то в сишном коде WinCC переменой текстовой память выделить с сразу в ее стал писать… запускаю WinCC в Runtime… доходит она до запуска Script Server… и виснет… остаовить нельзя — потому что она еще е запустилась… и продолжить оа тоже не может… убиваем через Диспетчер задач, опять запускаем WinCC Explorer — jf же помнит последний проет и его состояние — опять его запускает и опять на Script server виснет… (надо просто другой проект двойным кликом а файле проекта открыть, закрыть его, а потом свой текущий… тогда он уже в рантайм не ломится) — openSCADA же просто ругнется в свой лог с указанием места ошибки и не выполнит скрипт с ошибкой (а все остальное будет работать)
С первых строк поста подумалось — будут лучи поноса в сторону сименса :)

Косяков у WinCC хватает, за новый портал я сам разработчикам лучи посылаю. Надо понимать одну вещь: WinCC идеален, если работает в паре с контроллерами сименс.
Из того, что делаю я: FB в контроллерной программе (практически, ООП: описание класса и его экземпляры). Это блок мотора, клапана, аналогового канала и т.п. Почти что свой самодельный PCS7 :) В самом блоке сразу реализованы алармы. Если случается событие — контроллер шлёт сообщение в скаду с меткой времени. Если клиентов чуть больше одного, квитирование сообщения в одном месте приводит к тому, что оно перестанет мигать во всех прочих местах.
Аналоговые алармы не такие уж и убогие: они есть и работают. Хотя, конфигурировать их реально только через excel. C другой стороны, они там нафиг не нужны. Я ими пользовался только в одном проекте, где пришлось тянуть данные со стороны.
Далее. есть такая штука, как быстрые архивы. Контроллер сам готовит пачку значений с метками времени и асинхронно отправляет в скаду на архивирование.
Связка из прерывания по изменению дискретного входа + продуманная система сообщений даёт, практически, реалтайм для обнаружения даже самых коротких импульсов и записи их в журнал.
И главное достоинство связки контроллера и скады от сименса: если программа написана должным образом, то мы в пару щелчков мышью получаем все необходимые данные в скаде: база тегов, архивы, алармы, тексты. В случае с PCS7 оно ещё создаст экраны в соответствии с деревом, накидает туда все графические элементы. Останется только растащить их по экрану и сделать бэкграунд :) Сделали изменения в проекте, добавили/удалили объекты, изменили структуру какого-либо объекта (а их уже 100+ экземпляров) — вперёд, на повторную компиляцию. Добрый AS-OS Engineering пересоздаст заново всё, что надо.
К слову, даже без использования библиотек PCS7 реально создать связки типа свой блок в контроллере + графический элемент + окно свойств и при компиляции проекта WinCC будет создавать эти объекты, как свои родные.

Короче, хватает у сименса косяков, но они делают серьёзные вещи. У конкурентов я такой тесной интеграции не видел.
Теперь про баги. Да, я лично и многократно завешивал скриптовую машину у WinCC — что Си, что VB. Если проект упал, его надо не через диспетчер задач убивать, а через спецскрипт в самом WinCC — он прибивает все необходимые процессы. Открыть рухнувший проект, чтоб он автоматом не пошёл в рантайм — тоже реально. Но каждый раз забываю, как именно :)
Косяки установки — ну создайте один раз виртуальную машину и вперёд…
И ещё такая штука: WinCC позволяет грузить изменения в проекте с инженерной станции на сервера и операторские станции без остановки рантайма.

А вот во что мне есть кинуть какашкой — это (Vijeo)Citect 7.20. Графический редактор таи явно человеконенавистники придумывали :)
А потом приходит Гена хакер и оказывается что у вашей сименсовской скады дефолтный пароль на базу данных.
И деграет он оттуда все админские пароли. А дельше зависит от целей.
Поставит симулятор в пределах нормы гулять, а в реале выкрутит температуру на полную. Бумс… Кто виноват? Что? Виноват? Почитайте лицензионное соглашение!
Любопытные у вас представления о системах автоматики. Итак, номер ноль: все действия — логируются. Включение/отключение симуляции, изменение уставки, квитирование сообщения. Я вам скажу по секрету, что такой фокус куда проще делается безо всякого Гены хакера: берётся флюк и цепляется вместо датчика по каналу 4..20 мА :) Сломать можно всё.
Дальше. Если этот Гена хакер залез в сеть и получил возможность ковыряться в WinCC — это уже не мои проблемы. Это косяк служб IT и информационной безопасности. У меня есть несколько проектов (на WinCC, кстати) на дочках Нестле и Кока-Колы. Если мне надо какую-то небольшую вещь изменить, я могу зайти через VPN или LogMeIn, но там такие ограничения… В некоторых случаях проще живьём, ножками доехать. А уж сбросить туда файлик, который я у себя переделал и подменить его на месте — нереально. Только отправить по почте местному товарищу с инструкцией, куда его положить и что подменить — если у него корпоративная почта ещё пропустит эту неведому зверушку :)
В теории все так. Но иранские центрифуги с вами не согласны =)
И я как представитель ИБ так же не соглашусь.
Это уже боян с бородой… Практически каждый про этот StuxNet слышал, но я лично (и виртуально) не знаком ни с одним человеком, который бы этот StuxNet видел.

Что вы представитель ИБ, я уже посмотрел :)

Я вам скажу по секрету, что сознательно наделать дел в системах автоматики есть 1000 и один способ, да такой, что информационной безопасности там и рядом не валялось.
А то, что какой-нибудь Гена хакер может наделать делов в WinCC — да, может. С таким же успехом он может наделать дел в управленческом учёте и бюстгалтерии, и что? С высокой вероятностью, там и наделает: как и большинству, эти вещи ему ближе и понятнее :)

А вы, для расширения кругозора, вот что почитайте:
en.wikipedia.org/wiki/Safety_Integrity_Level
. Если что, сименс позволяет строить системы до SIL3 включительно. Адвантык, который вы тут упоминали, не позволяет. SIL4 только одними техническими средствами недостижим, требуются дополнительные меры.

PS относительно безопасности промышленных систем я считал и продолжаю считать, что одна из очень хороших степеней защиты — это использование каналов связи со своей физикой (ProfiBus, DH-485) и максимальная изоляция автоматики от прочих сетей.
Я тоже был на производстве и знаю как плавильщики обманывали контроллер, вставляя резистор последовательно к лампочке.
Это все понятно.

Скептически отношусь к таким параметрам как SIL и к защите через сокрытие алгоритма (и не только я, Брюс Шнайер так же). В данном случае это физическия линия.
Хотите защитить — шифруйте. Протоколы промышленные весьма тупые, там и ломать нечего.

То что вы никогда не видели вируса для скады — это не значит что его нет. И заносятся они, как правило, без участия сети.
Вся веселуха в том что за красивыми словами о безопасности, резервировании и прочих крутых штуках стоит студент-индус со своим говнокодом, который поленился поменять пароли. И вся красота разом сливается в унитаз. Я как безопасник такого простить не могу.
Посмотрите аналитику от Positive Technologies по скадам на предприятиях. Это какой-то лютый ад. И дело не только в сетевой части.

Все что касается диверсий без участия IT — для этого есть специальные отделы на предприятиях.
Ну вот :) Да, я представляю, как обстоит дело с потрохами скад. У всех примерно одинаково паршиво, поэтому я не морочу голову на эту тему :) К SIL скептически относитесь зря — это целый ряд мероприятий — организационных, технических и так далее, направленных на снижение вероятности отказа системы в целом.

Видимо, так же скептически, как я к ИБ :) Но автоматика vs ИБ — это старый холивар, те и другие вполне заслуженно недолюбливают противную сторону :)
Ну да, снижают как могут. Тут разница в подходах.
АСУшники стараются охватить все что можно разумными средствами и добиться максимальной надежности при таком охвате.
Безопасники ищут брешь, способную нивелировать все старания АСУшников.

Мы работаем над одним и тем же, только с разных сторон.
Я предпочту поднять бокал за конструктив и сотрудничество =)
Я, собственно, тоже за конструктив, сотрудничество и дружбу. Но это больше при очных встречах получается…

А при заочных внезапно перестаёт работать то, что работало ещё вчера и иначе, как по матушке, не получается :))))
вы бы для порядку озвучили как этот StuxNet до WinCC вообще добрался…
и тогда мы наверное услышим про фокус с неподписанными драйверами Realtek… и как венда картинки к имени файла показывает… и вообще и что вирус написан под конкретный технологический процесс и конкретную конфигурацию SCADA (не имея проекта на руках только телепат догадается, что уставка оборотов центрифуги это тег с именем "__ABAmCVI_34509_1") и налицо инсайдерская информация… и вдруг окажется, что это венда дырявая… и WinCC на 105 месте по степени своей вины…
Если вы слесарь КИПиА, то никакие пароли вам не нужны :)
Вы совершенно верно меня поняли, коллега :) Как известно, уронить сервер может не только хакер, но и уборщица :)
Более того, не стоит стрелять из пушек по воробьям и усложнять то, что усложнять необязательно. В любой системе есть свои узкие места, и, воздействуя на них, можно сводить автоматику с ума. Например, задрать где-нибудь экран на линии связи (типа Modbus по 485), для надёжности рядом какое-нибудь реле прикрутить и щёлкать им. Нехай все голову ломают, почему связь падает :)

Кстати, следов такие фокусы оставляют куда меньше, чем разные хакерские вмешательства :)
>> Короче, хватает у сименса косяков, но они делают серьёзные вещи. У конкурентов я такой тесной интеграции не видел.
Конкурентами можно считать Centum3000 (Yokogawa), DeltaV (Emerson) — вы ИХ видели (не со стороны, а изнутри)?
Плотно работать не приходилось. Так, заглянул. По отзывам коллег, которые имели дело — такой плотной интеграции между скадой и контроллером, как у сименса, там нет.
пардон, как нет, если это РСУ? там и верх и низ вместе… напримере DeltaV — у вас програмный блок с входами и выходами — под него делается динамка (Dynamo в терминах DeltaV) — и при втыкании экземпляра динамки на страницу привязываешь не конкретные теги, а сразу весь программный блок…
РСУ — это распределённая система управления. То есть, контроллер и удалённый ввод-вывод. Я знаю, что и у Эмерсона есть свои плюшки (краем глаза видел), и у Йококавы (не видел).

Под интеграцией я имел в виду то, что ты делаешь проект в степе, компилируешь с AS-OS Engineering и получаешь в WinCC теги, тексты, алармы из контроллера плюс экраны с навигацией из Plant Hierarchy View и на экранах сразу же фэйсплэйты для каждого объекта (опять же, в соответствии с Plant Hierarchy View), плюс отображение алармов в поле навигации: ты сразу видишь, на каком экране ты получил аларм и одной кнопкой можешь перепрыгнуть к объекту, который вызвал аларм.

Напомню: это всё компиляция в пара кликов и можно стартовать рантайм. Без этого только подготовка базы тегов (самая ненавистная мне операция) займёт пару-тройку дней.
>> а через спецскрипт в самом WinCC — он прибивает все необходимые процессы.
:) мега-полезный VBS скрипт… индусы не осилили допилить скаду, так хоть скрипт вкинули…
правда есть смертельное средство… когда даже этот скрипт не поможет (просто потому, что вся венда виснет в белом цвете и даже не ping не отвечает и по сети shutdown не работает — только hard reset) — в Excel'евской настройке по Ctrl+V вставил чуууть больше строк, чем… хз чем… чем звездами в данный момент позволено…
Забыл я как-то в сишном коде WinCC переменой текстовой память выделить с сразу в ее стал писать… запускаю WinCC в Runtime… доходит она до запуска Script Server… и виснет…

Ну так в WinCC C-скрипт — это даже не С++ (который пост-инкремент и становится ++ только после использования :)), а кондовый и древний ANSI C. А это уж точно чёрная магия. Он с удовольствием позволит программисту прострелить себе ногу сразу в трёх местах :)) Если в проекте написал хоть одну строчку С-скрипта, то проект выпускать в продакшен нельзя до тех пор, пока консоль не будет девственно чиста :)
Дано:
• парочка генераторов по полтора мегаватта;
• место оператора для управления всем этим;
• ПЛК B&R, связь со SCADA по ModbusTCP.
Тянет на измерительную систему. В госреестр вносить будете?
1) «генераторы» — это нечто такое image 20 футовое, вполне автономное, со своей САУ, а наша АСУТП уже дирижирует парком (от 2 до 16) таких штук

2) я только верхний уровень делаю, т.е. SCADA Designer, АРМщик, АРМянин… а есть еще ПЛК, который собственно и дирижирует…

3) там измерений раз-два и обчелся, она именно управляет, т.е. не будем
Так любой проект с количеством каналов более 10 потянет на измерительную систему. И что, каждый регистрировать? ;)

Открою страшную тайну: далеко не каждый канал обязан проходить метрологическую аттестацию. Может даже случиться такое, что в системе с сотнями (и даже тысячами) каналов не аттестуется ни один.

Короче, не путайте метрологию с автоматикой. Они хоть и пересекаются, но не одно и тоже.

Более того, нормальные производители вносят своё оборудование в госреестр, получают СУТ (сертификат утверждения типа). Поэтому получать СУТ на отдельный конструктор из утверждённых средств измерения и не требуется.
И что, каждый регистрировать? ;)
Только если он используется в сфере госрегулирования.
Более того, нормальные производители вносят своё оборудование в госреестр, получают СУТ (сертификат утверждения типа). Поэтому получать СУТ на отдельный конструктор из утверждённых средств измерения и не требуется
Недостаточно иметь внесенные в реестр отдельные датчики и другие СИ, входящие в систему. Система вносится в реестр целиком — как единичный экземпляр. Что в какой-то степени логично, т.к. нет никакой гарантии что сигнал с поверенного датчика пройдя через систему на выходе не будет искажён. Поверьте, я в этом бизнесе (см. профиль), мы уже вносили системы.
То что сплошь и рядом функционируют системы, не внесенные в реестр, вопрос исключительно к вниманию надзорных органов. Правда вносить требуют не все системы — тут уже вопрос к экспертам в этой области, я так сильно не углублялся.

Да, ходят упорные слухи что существующее положение дел может измениться.

PS, на заметку: (сертификат утверждения типа)
Уже несколько лет эта бумажка называется Свидетельством об утверждении типа средств измерений.
Что есть сфера госрегулирования? ;)

Метрологическая аттестация канала требуется в обязательном порядке, если эти данные используются для коммерческого учёта (например, взвешивание конечной продукции).
В некоторых защитах может потребоваться.
Чтобы была гарантия, что сигнал не искажён, метрологи регистрируют не только первичные приборы (датчики), но и вторичные преобразователи (модули аналогового ввода).
То, что отдельные системы регистрируются в госреестре, я в курсе. Даже имел дело с такой системой. Тем не менее, не требуется регистрировать всё подряд (точных критериев я сейчас тоже не помню). Одно из ключевых требований — коммерческий учёт.

PS про свидетельство об утверждении типа я в курсе, по старой памяти обозвал. Сто лет с ними дела не имел :)
Что есть сфера госрегулирования? ;)
Можно на сайте Ростеста, например, ознакомиться.
Чтобы была гарантия, что сигнал не искажён, метрологи регистрируют не только первичные приборы (датчики), но и вторичные преобразователи (модули аналогового ввода).
Сейчас еще и ПО для контроллера фиксируют а потом еще и всю систему целиком испытывают и вносят в госреестр.
Сейчас еще и ПО для контроллера фиксируют

Вот мне это всегда нравилось… Где-то рядом с нотариально заверенными скриншотами :) Один символ в программе поменял и пожалуйста, снова испытывай…
Контраст между вторым и третьим скриншотами просто завораживает.
Жесть какая :) Хоть и плююсь от Iconics в связке с ПО от Элеси, но все же оно лучше. А еще лучше был венгерский D-mon на QNX, чистый, незамутненный Си.
>> Жесть какая :)
Это вы про что?

>> Хоть и плююсь от Iconics в связке с ПО от Элеси, но все же оно лучше.
Какие ваши аргументы? Чем лучше? Лучше чем что?

>> D-mon QNX
Чет не могу найти… подкините ссылочку?
Жесть в том, что это конструктор для развлечения программистов. На икониксе поднять систему с нуля в десятки раз проще и быстрее.
Насчет D-mon — это старая система, времен Diagem, QDiagem от ScadaSys, поэтому я и написал «был». Тоже не смог ничего найти о них в интернете, кроме упоминаний в резюме.

п.с. поторопился, вот — www.scadasys.hu/hu/index.php/en/products/2-uncategorised/76-d-mon-ismerteto-2
>> Жесть в том, что это конструктор для развлечения программистов.
>> На икониксе поднять систему с нуля в десятки раз проще и быстрее.
Это все субъективно и зависит от конкретных знаний конкретного развертывателя… на примере WinCC — пока WinCC в рантайм поднимается у Рому скада с исходников успеет собраться и еще время останется:) я уж не говорю запустится…

Конкретный плюшки Iconics бы назвали…
WinCC поднимается медленно, если MSSQL устройл помойку в рантаймовой базе данных. Стоит сделать shrink и WinCC начинает шевелиться намного быстрее.
image image
Эх… было время…
Во-первых, озвучьте цену иконикса. Хотя бы минимальную для более/менее сложного проекта, это около $5-7 тыс.
Во-вторых, я немного выпал из этой темы, но емнип Iconics == Microsoft Gold (Platinum?) Member, и тех же атомщиков, подсевших местами на эти красивые игрушки, ожидают веселые времена, в свете санкций и возможного перехода на корпоративный линукс
Ну и в-третьих, очень мало скад, которые могут крутиться на ARM платформе. В домашнем роутере, например.
Я знаю одну :)

Аффтор монстр, что один, что второй.
Пару лет назад я с наскоку даже просто запустить не смог.
Респектище.
Полностью с вами согласен, но что такое $5-7кк для автоматизации промышленного процесса? За санкции можно не бояться, не будет их. Ну и придется — перейдем на линукс, не привыкать :)

Про автора согласен полностью.
Разные бывают проекты. Например, пресловутый «умный дом».
Или небольшие системы мониторинга с бюджетом порядка 200-300 т. руб.
Умный дом и небольшой мониторинг не стоит лепить на промышленной скаде. Решений навалом же.
Каждый свой веселопед изобретает. У меня, как у инженера, знакомого с АСУ ТП, типичный переход от настольного программирования к паяльнику с веб-сервером в каждой розетке и статья на хабре по этому поводу вызывает улыбку :)

Собственно, была пара попыток переползти на умный дом с классической автоматики. Как прикинул, что проекты придётся лепить, в сущности, из говна и палок — сразу расхотел :)
Вы как инженер АСУ ТП должны понимать что подобным переклеиванием лейбла дело не решается.
Под видом умных домов нам хотят продать все те же промышленные решения из цехов, только называя их модно.
Реально умные дома никто не делает почти. И это печально =(
Как инженер АСУ ТП я понимаю, что в умном доме (кроме алгоритмов) есть ещё энное количество датчиков и исполнительных механизмов. И вот здесь-то промышленными стандартами близко не пахнет. Равно как и протоколы связи, и прочее… Можно, конечно, попробовать создать свою систему, с преферансом и мамзелями, но стоить будет, как самолёт.
Подождитеподождите.
Как это протоколы не стандартизованы? Очень даже стандартизованы. 802.11 вполне себе стандарт.
Передача сообщений может осуществляться вдоль и поперек станартизованным xmpp.
И стоить это будет гораздо дешевле, зря вы так.
Проблема в том что производители дальше своего носа видеть не хотят. На предприятиях канает такой подход исключительно в силу специфики именно промышленной автоматизации. С подходом «лучше перебдеть чем недобдеть», адским переинженирингом и космическими ценами.
Даже если кто-то что-то и выдает, это не заходит дальше «смотрите, мы придумали умный термостат, мы такие классные, это прорыв! Дайте нам денег...».
Избалованы производители тем что на предприятия можно продать дорого с баснословной накруткой обычные вещи.
Рынок массовый такого никогда не пропустит. Вот и застыло все… На нежелании кооперироваться с использованием уже готовых стандартов и технологий, на нежелании менять ценовую политику.
802.11 вполне стандарт, но вешать ответственные вещи на воздух, который зависит от соседского холодильника и микроволновки, я бы не стал.

Специфика промышленной автоматизации в том, что никто таки не гоняется за последними технологиями. Для управления процессом более, чем достаточно процессоров 15-20 летней давности. Гораздо важнее надёжность. Которая, в целом, повыше — не в последнюю очередь, благодаря большему (в нм) техпроцессу.

Умных термостатов, кстати, развелось, как собак нерезаных. В большинстве случаев — это локальные решения, довольно неудобно интегрируемые.

PS а в чём баснословная накрутка на такие вещи, как 4..20 мА и Pt100? А это, между прочим, очень надёжные каналы.
Да ну полно вам, не зависят они от холодильников. Да и холодильники нынче пошли такие что они плавно регулируют потребление и не кошмарят другие устройства.

Вот я об этом и говорю. требования на производстве совершенно другие. Да и не мне вам рассказывать что большинство подходов — адские рудименты. Еще с тех времен когда кремний был дорогой, а медь дешевая. Вот и тянули все линии к одному контроллеру.

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

Это вы, товарищ, спекулируете. аналог тянуть к контроллеру? Увольте. Я бы никогда такое не запроектировал.
Обязательно и только через цифровой преобразователь. Сама термопара, фактически, стоит копейки. А то к чему вы ее подключите — на несколько порядков выше в цене.
Холодильники разные бывают. Те, от которых зависит — ещё нас переживут :)

Про рудиментарные подходы расскажите, да :) производства, построенные по принципу
кремний был дорогой, а медь дешевая

были построены в те времена, когда это ещё было актуально. Я лично не видел установок младше 20 лет и построенных без распределённой периферии.

Кроме того, я не говорю, что надо всё тянуть непосредственно к контроллеру. Для умного дома самый подходящий вариант — что-либо на базе RS-485. Ethernet плох негарантированным временем доставки.

Вообще, это всё мелочи. Главная проблема «умного дома» в другом. В том, что про него вспоминают, когда закончат чистовую отделку :)

PS когда я писал про технологии 20-летней давности, я не имел в виду
кремний был дорогой, а медь дешевая
.
Я имел в виду, что с такими задачами прекрасно справляются процессоры 20-летней давности малой (по современным меркам) степени интеграции. Это дешевле сам чип, дешевле плата (меньше слоёв разводить), меньше рассеиваемая мощность. Сверхпроизводительность не нужна совершенно. RS-485 тоже, если не ошибаюсь, меня постарше будет — чего не скажешь про гигабитный ethernet. Большим плюсом 485 в этом случае является невысокая требовательность к линии передачи.
Плюсом 485 является еще и то что датчики могут питаться паразитно на линии =)
Но для умного дома самый нормальный вариант — радио. ничего не нужно сверлить или прокладывать.
Это в промышленном помещении можно лоток подвесить и не париться. В доме такой фокус не пройдет.

А тепловыделение у процессоров старых довольно большое. Но для промышленного решения это не проблема. Т.К. по уровню шума, по потреблению требования значительно слабже, нежели для массового рынка.

Ну, собственно, чего мы с вами спорим)
У каждого свое сложившееся видение.
to Klukonin и Muzzy0
вы бы дали определение термину «умный дом» для начала…
смотрели что предлагает Сrestron в данном сегменте? вы подобное на xmpp слепите?
802.11 и 485 — это все не то что транспорт, а просто интерфейс… а протокол то какой(-ие)? modbus?
питание+управление по двум проводам в том же LON или KNX есть и сразу…
для беспровода есть ZigBee — рассматривали?
Собственно, мы с зигби и начали. И почти сразу же уперлись в пропускную способность.
Да, вот таким мы ненасытные.

Смотрел я и Crestron, и других. Это все системы, подразумевающие управление с планшета или иного узла.
Там децентрализацией и не пахнет. Не то это все.
тогда б цели свои озвучили…
децентрализацией пахнет в LON, KNX, UDP…

>> Собственно, мы с зигби и начали. И почти сразу же уперлись в пропускную способность.
EnOcean смотрели?
EnOcean в России незаконен.
И там даже нет такого понятия как пропускная способность. Потому что он шлет какие-то телеграммы.
Как после того что я сказал про зигби вы мне предлагаете эти решения посмотреть…

Децентрализованный домашний вайфай — вот это тема. А все фитюльки с солнечными батареями — пшик.
только потому, что на курсах Beckoff на учебном стенде использовали беспрвоодной датчик температуры EnOcean — т.е. есть беспроводное решение с именем EnOcean, гляньте, может вам подойдет…

а с чего взяли что в России он вне закона? Яндекс показывает не мало контор, предлагающих оборудование и решения на EnOcean…
Там частоты используются, не выходящие в список общедоступных для РФ.
Есть какие-то решения для 900 Mhz, но типа они для америки. И про них толком ничего не написано.
Мало ли что они там предлагают. Решения незаконные и сомнительные.
Радиомосты на юбикути тоже незаконны, но ГРЧЦ закрывает на это глаза. У нас как всегда =)

Нам подходит вайфай. Со временем все перейдут в пятерку а 2.4 как раз останется для устройств типа умного дома. Это перспектива ближайших лет двух. Никому не нужна высокотехнологичная малораспространенная нестандартизованная технология. Даже если она питается от солнечной батареи.
я про EnOcean сказал в контексте домашней автоматизации…
а если вы заваливаете ZigBee траффиком… то это что? 12 этажный 8 подъездный дом? :)
Зигби в пределах квартиры и только для передачи коротких сообщений.

В многоквартирном доме ему не будет житья от соседских точек.
Звук и видео по нему уже не передашь. Даже фоточки нет.
выше я предлагал описать задачу, для которой все это барахло ищется и дать определение термину «умный дом/домашняя автоматизация» чего не последовало… т.о. далее тереть бессмысленно ибо беспредметно…
почему-то вы не спросили про «фоточки» в секции про S-400… он же тоже это не умеет…
т.е. вполне достаточно для телеметрии в пределах квартиры? Собственно, это и требуется. Для звука и видео есть WiFi, а валить в одну кучу телеметрию и мультимедиа, как раз, не стоит.
>> И вот здесь-то промышленными стандартами близко не пахнет.

постойте-ка…
если говорить о EIB/KNX.
… В конце 2003 года технология была утверждена как европейский стандарт EN50090, а в 2006 году — как международный стандарт ISO/IEC 14543.

prooflink
А ещё есть LON и CAN :)

Вопрос в другом: сколько стоят железки с поддержкой это радости и, как следствие, сколько времени их придётся ждать под заказ и в каком количестве установок (в %) это будет присутствовать?

Поэтому столь массовы и популярны решения из говна и палок на коленке…
CAN не на столько дорог) Но вот протоколы под него денег стоят.
Нам, например, пришлось свой разрабатывать. Правда у нас CAN на линии устройств. Контроллер линии по UART(485/232) общается уже другим языком. И выводим сначала в OpenScada (свой модуль), которая крутится на основном контроллере. Оттуда уже куда угодно можно закинуть по OPC-UA.
применительно к умному дому: возможно ли пойти в магазин и в разумные сроки за разумные деньги заказать ящик розеток/выключателей и прочих необходимых элементов с CAN?
Спроса на подобное видимо нет) Вот розеток/выключателей нет.
Ну и у нас система разрабатывалась не под умный дом… Но может там использоваться.
вы удивитесь, но даже в моей маленькой деревне Питер я не нашел простых электроустановочных изделий простецкой турецкой марки типа таких
imageimage
но одной линейки, хотя в каталоге оно все есть… и даже заявленный самый крутой дилер MAKEL на северо-западе сказал «мы поставляем не все что есть в каталоге»…
а вы про шалабушки «умный дом» в магазине…
1) а хоть кто-нибудь производит «необходимые элементы с CAN»?… пруфлинк в студию… тогда пойдем искать магазины…
2) если вам не критично CAN, то, например, вот
image image
image
image
image
imageimageimage imageimage
На чём вся эта прелесть?
вышеприведенное — исключительно для примера… есть и аналоги как технологий, так и вендоров…
первоисточники:
раз
два
три
Санкции — это хороший повод задуматься нашим командирам а какой игле сидит страна в тех секторах, где импортного быть не должно.
Начались запросы типа «До завтра подготовить список отечественных SCADA и ПЛК!», а че их готовить — их нет. Двадцать лет все разваливали, а тут выyь и полож…
Некоторое оборудование для нефтяников перестали поставлять, Транснефти не продают Cisco… и че-то им не хочется отвыкать…
Сомневаюсь что по сетевой части они что-то могут предложить.

А так, если не продают циски — на этот рынок быстренько придут хуавей и прочие.
Переучатся спецы, никуда не денутся.
может и так… если заявленное соотвествует действительноти…

Процессорные модули ТС 507 Р300 ETH E, ТС 507 Р300 ETH I
image
  1. Самопроверка и проверка работоспособности функциональных модулей.
  2. Возможность подключения пульта инженера (ППИ).
  3. Функции резервирования и масштабирования (только с исполняющей системой Elsy-TMA).
  4. Не требует принудительной вентиляции.
  5. Исполнения с расширенным диапазоном рабочих температур от -40 до +60 °С.


если у них еще и плотная интеграция ПЛК с их скадой Infinity…
Да, хоспаде, что значит не хочется отвыкать?
Переучатся на хуавей. Тут достаточно только встать и сказать, а китайцы мигом примчатся и будут очень рады заключить взаимовыгодный контракт. Они столько сил тратят чтобы где-то не пропустить циску, а где-то даже и выдавить. Это очень тяжело. А тут такая удача и прямо в руки =) Это же рынок. Место одного займет другой.
тока некоторые предпочитают Gelenwagen и Q7 и никак не хотят Lifan даже в комплектации лакшари… даже с колонками и усилителем…
Это их проблемы. Погоня за шильдиком сродни религиозному фанатизму. И в гелентвагене ничего хорошего кроме шильдика, вообще-то, и нет.
По цене хуавеи не сильно от циски отличаются. Командный интерфейс аналогичный. Те же модули, все то же.

Если специалисту ставится задача перехода на другое оборудование, а он начинает топать ногами, возмущаться и упоавть на то что он, видите ли, привык уже — таких сразу пинком под зад нужно. Это не спецы.
>> Пару лет назад я с наскоку даже просто запустить не смог.
вот про это я и говорил «высок порог вхождение» — если у вас 5-6 лет опыта с WinCC, Citect, iFIX, InTouch, RSView и т.д., не ожидайте освоить openSCADA за 2 дня…

Какой иконикс ???? Какой ханивел ??? openSCADA это вполне конкретный инструмент для вполне конкретной ниши. Не забывайте, что ее пилит один (!) человек бесплатно. Тот же OPC получить могут только члены OPC Foundation, а вступление платное. Посмотрите его расценки на услуги — разделите $5k-7k на расценку и представьте ЧТО он может запилить :)

Я кстати забыл упомянуть, что для общение openSCADA с openSCADA есть встроенный протокол. Т.е. если у вас в ПЛК с USB image крутится openSCADA, к USB подключен внешний жесткий диск, на него и пишем алармы с мс точностью, на АРМ тоже openSCADA — то связь будет по встроенному протоколу. В даом случае еще картинку а VGA можно выдать.
Параметры ПЛК а картинке:
Процессор: AMD LX800, 32-бит, 500 МГц
Операционная система: Linux ядро 2.6.18
Оперативная память: 1 Гб
Flash-память: 4 Гб
Порт VGA: 1
Кол-во слотов расширения: 7
Последовательный интерфейс: 2xRS232, RS232/RS485, RS485
Число портов Ethernet: 2, 10/100 Base-TX
Число портов USB: 2

для сравнения приведите хотя бы (аж) S-400
Есть, что противопоставить S7-400F/H/FH? ;)

пардон за удар ниже пейджера, но аппаратное резервирование и F-системы поважнее свистелок и перделок. Быстродействие у S7 невысокое, но достаточное для тех задач, где оно применяется.

PS подобную красоту — всё в одном — видел у Beckhoff и Wago. Кстати, и у сименса есть WinAC и набор из MicroBox, WinAC и лицензий на PCS7.
1) откуда здесь вообще WinCC/S7-400 и ее противопоставление всплыло и упорно культивируется ???
2) >> Кстати, и у сименса есть WinAC
SIMATIC WinAC (Windows Automation Center) – это программное обеспечение имитации работы S7-совместимых программируемых контроллеров в среде операционных систем Windows XP Professional, .....
это здесь вообще причем?
3) >> подобную красоту — всё в одном — видел у Beckhoff и Wago
… что за красота? про что речь?
что за красота? про что речь?

Контроллер со встроенным компом на борту, который может сразу PC-совместимую визуализацию крутить. Заказной номер сейчас не помню.
откуда здесь вообще WinCC/S7-400 и ее противопоставление всплыло и упорно культивируется ???

Отсюда:
для сравнения приведите хотя бы (аж) S-400

И не только. Автор сам основательно распекает WinCC, вот и стало «за державу обидно» :)
По поводу сравнения — я таки упомянул S7-400H потому, что у него довольно серьёзно сделано аппаратное резервирование. Вы, коллега, должны понимать, что это куда как важнее более быстрого процессора. там и имеющегося достаточно, чтобы обслуживать техпроцесс.

WinAC в паре с Microbox — это, в принципе, решение, которое предлагает Сименс для желающих засунуть контроллер и Windows в одну коробку.

PS Немного поработал со шнайдеровским Citect — редкостное угробище.
Контроллер со встроенным компом на борту, который может сразу PC-совместимую визуализацию крутить

ахринеть какое нагромождение ерунды… «контроллер со встроенным компом… комп со встроенным контроллером… РС-совместимая визуализация… PC-несовместимая визуализация....»…
простите, кто на ком стоял? (с)

У WAGO есть бошки (например, 750-840) с web-сервером на борту, которые предоставляют доступ к визуализации (нарисованной в разделе CODESYS Visualization ) по IP в любом web-браузере или, если ПЛК имеет порт VGA/DVI на мониторе
image
image
image
image

а вообще вот Web-Visu в CoDeSys
и вот CODESYS HMI — Visualization Software for PCs

собственно, если ПЛК с линуксом и железо тянет openSCADA, то вышепоказанное реализуемо и даже больше…, например, если по USB к ПЛК прицепить HDD и там хранить архивы…
Собственно, примерно эти бошки от WAGO я и имел в виду. Просто я WAGO в руках не держал уже почти 10 лет :) Когда повезёт — ковыряюсь с сименсом (посылая проклятия в их адрес и вынося мозг техподдержке), когда повезёт меньше — со шнайдером и GE, когда совсем не повезёт — всякие Koyo и прочие чудовищные поделки…

Почему предпочитаю сименс — с ним относительно приятно работать (я имею в виду классику S7, а не портал — пока что, это аццкое чудовище) и так получилось, что с его «чёрной магией» я знаком чуть лучше, чем с остальными :)

PS на мой взгляд, хранить архивы на ПЛК — не лучшая идея. Только если буферизовать перед отправкой, в духе AR_SEND у сименса.
Собственно, с вагой и кодесисом я бы и сейчас поигрался с удовольствием, будь железка под руками…

А то иногда попадаются откровенные чудовища вроде Unitronics…
Автор сам основательно распекает WinCC,

автор констатировал факты (подтвердив скриншотами) и ваше отношение к ним никак не влияет на их наличие :)

вот и стало «за державу обидно» :)

… и тут я догадался посмотреть профиль Muzzy0Откуда: Израиль, Хамеркац, Натания
автор основательно ругает WinCC. Прочим (типа Citect), достаётся куда меньше. Хотя, на мой взляд, Citect против WinCC — жалкий ублюдок :)

Независимо от моего отношения, ругани в адрес WinCC количественно больше, чем в адрес всех остальных, вместе взятых ;)
автор основательно ругает WinCC. Прочим (типа Citect), достаётся куда меньше. Хотя, на мой взляд, Citect против WinCC — жалкий ублюдок :)

автор привел факты и то, которые сам наблюдал и смог зафиксировать в момент написания статьи

Независимо от моего отношения, ругани в адрес WinCC количественно больше, чем в адрес всех остальных, вместе взятых ;)

возможно потому, что:
1) сименс преподносится как идеал — с идеала и спрос не как со школярной поделки
2) перед проектом на openSCADA и статьей правил чужой проект на WinCC — воспоминания свежи и скриншоты по ним ярче
3) время — точнее его нехватка, статья-черновик 4е дня писалась, 2 часа в хабре версталась, каждое утверждение снабжается картинкой-подтверждением — и собрать «подобный» материал под Citect и RSView32 (один проект у нас есть на ней в вариации с нахлобучкой для реализации клиент-серверной архитектуры, так уже половина функций выполняется сторонним самописным кодом :) ) моих ресурсов уже нема… (с InTouch сам не работал, от соседа по парте мат слушал)
:))
Вот и получается, что проектов, реализованных на WinCC, больше — проклятий в его адрес тоже больше.

Сименс, само собой, не идеал. Но умеет некоторые вещи, которые другие не умеют.
Вот и получается, что проектов, реализованных на WinCC, больше

где я такое написал?
я написал "перед openSCADA лепил на WinCC — воспоминания свежи" — про количественное соотношение вы придумали…
проектов на WinCC реализовано точно больше, чем на openSCADA :)

Я, собственно, не имею ничего против юниксов и openSCADA. Просто не было практических задач. Со всякими убунтами играюсь иногда на виртуальных машинах, дома сейчас NAS4Free поднимаю (FreeBSD), чуть-чуть ковыряю DD-WRT в роутере в сторону optware (пытаюсь поднять прокси для друзей, для обхода говнореестра) и так далее.

При том, что 15 и более лет назад я писал всем знакомым config.sys и т.п. не думаю, что linux окажется для меня чем-то непостижимым.
Citect против WinCC — жалкий ублюдок :)


вы просто не умете ее готовить…
если вы заядлый вендузятник подобные ощущения у вас вызовет любая другая (возможно кроме ReactOS) ОС…

у Citect (из известного мне) лучшая реализация сущности аналогичной TagPrefix — в Citect это не префикс, а людая часть в имени переменной и не одна — т.е. я могу подстановками склеивать DI_on_QL1 как DI_on_Q?Qtype??Qn?, где при вставке экземпляра динамического объекта я ?Qtype? заменю на L, а ?Qn? на 1. Этот же дин. объект и для QT4 пойдет — ?Qtype? заменю на T, а ?Qn? на 4.

у Citect нормальные шаблоны страниц (можно спокойно рисовать «шапку» и «подвал»), вызов страниц просто по имени типа
PageDisplay("mySuperMainPage");


сравним монстроидальное чудо WinCC
OnClick(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)

где полный путь сквозь все PictureWindow'ы выглядит как
"GENERAL.LEFT_SCREEN:COMMON_CONTAINER.BOTTOM_WND:BOTTOM_MENU"


я уж не говорю про ВыньСиСёвые фейсплеты-недодинамки… динамика к которым прикрчивается только на VBA да еще и таким способом, что за день не разобрался с помощью help'a и сименовского форума — я так понял это для многих несветлый лес…

а PictureWindow — экземпляры которых на странице серые квадратики-прямоугольники и что внутри — хз пока по Ctrl+Click не откроешь его на редактирование…

а ошибки на странице WinCC куда пишет? в спец окошко… которое надо добавить на каждую страницу…
а иногда они пишет туда ошибки, когда не успевает подставить TagPrefix — чуть п-о-м-е-д-л-е-н-н-е-е кони оператор…
у Citect нормальные шаблоны страниц (можно спокойно рисовать «шапку» и «подвал»), вызов страниц просто по имени типа

Нормальные шаблоны — это Genie/Supergenie? Ну первый — ещё куда ни шло. А со вторым разобраться — это чёрная магия похуже си-скрипта в WinCC :) Там подстановки это вынос мозга и скрипты.
В WinCC, чтобы открыть сраницу, можно даже скрипт не писать — сделать прямое присвоение имени картинки, как константу, так и тег. Точно так же tagprefix можно записать.
Шапка/подвал отлично организуются с помощью Split Screen Manager.
а PictureWindow — экземпляры которых на странице серые квадратики-прямоугольники и что внутри — хз пока по Ctrl+Click не откроешь его на редактирование

В шестой версии и Ctrl+Click не было :) А оно, вообще, так необходимо — показывать потроха в процессе разработки? К слову, можно свои кастомные элементы делать, они отображаются.
Что касается хитрых тагпрефиксов, как в Citect — так я не припомню, чтоб они мне пригождались. В WinCC вполне достаточно.
я уж не говорю про ВыньСиСёвые фейсплеты-недодинамки… динамика к которым прикрчивается только на VBA да еще и таким способом, что за день не разобрался с помощью help'a и сименовского форума — я так понял это для многих несветлый лес

Это не лес, а полная шляпа. Я ими не пользуюсь совсем. Вся динамика — через PictureWindow, не обошлось без чёрной магии в виде си-скрипта, глобальных скриптов, ODK и функций из SplitScreen Manager. Некоторые фрагменты я бессовестно позаимствовал из PCS и доработал напильником под свои нужды. Теперь, после разового шаманизЪма, имеем: каждый объект в программе — FB с экземплярным блоком данных. Затем — компиляция проекта, AS-OS Engineering создаёт все теги в виде структур (а если что-то поменял в контроллере — перестраивает всю структуру и пересоздаёт все экземпляры). Оно же создаёт все экраны в соответствии с иерархией, настроенной в степ7, и забрасывает на каждый экран элементы управления для каждого объекта (для которых установлена галка Create BlockIcon), и каждому прописывает имя объекта (тагпрефикс). Для каждого объекта создаёт алармы и архивные теги. Окошки со свойствами объектов на экране можно открывать в количестве более одного. Возможность фильтровать сообщения по конкретному объекту, чтобы показать их в окошке свойств. Опять же, настроить тренд динамически через скрипт реально (в Citect я так и не нашёл, как это сделать. пришлось приготовить для каждого случая файлик с настройками). Всё это за несколько минут и пару кликов мышкой.

В зависимости от проекта, некоторые делаются вручную, но уж точно не создание базы тегов. Если проект на PCS7 — то жизнь ещё больше упрощается за счёт того, что можно не париться со словами статуса — на любое событие создаётся сообщение контроллера (аларм, предупреждение и т.д.) и используются PCS7 элементы управления, которые умеют работать с алармами, как со словом статуса.
Опять же, благодаря тому, что сообщения обрабатываются совместно контроллером и скадой, сообщение достаточно квитировать один раз на одной из рабочих станций — и его не надо будет квитировать на остальных.

А теперь подскажите мне скаду, которая умеет так упрощать разработку? ;) К слову, ковыряние через Excel — это костыль для тех, кто не хочет/не умеет использовать AS-OS Engineering.

Ошибки WinCC пишет в консоль. Её можно бросить на экран (не вижу никакой проблемы убрать её после отладки или засунуть куда-нибудь в плавающее PictureWindow) или открыть консоль отдельно от рантайма (есть такая возможность).

PS Citect для меня отстой потому, что:
основан на DBF — в том числе, графика (а не на SQL)
графический редактор — полный отстой. Невозможно задать координаты вручную, только мышкой таскать. Окно свойств — модальное и прочая куча мелких придирок.
Теги, архивы, алармы и прочее можно редактировать только в Excel.
Отображение трендов — динамическая настройка через скрипты (не работает).
Прикрутить теги от контроллеров сименс — это целая специальная утилита и адский костыль (у меня есть несколько проектов, где исторически сложилось, что контроллер — сименс, а скада — сайтект).
Нормальные шаблоны — это Genie/Supergenie?

не знаете — спросите хотя бы («бы» потому что надо спрашивать встроенную справку и мануал) гугл транслейт — «шаблон == template == דפוס»

Genie — это джин — графический динамический объект — именно ими реализуются краны, клапаны, моторы, насосы, поля ввода/вывода с обработкой и т.д. — dynamo в терминах DeltaV

Supergenie — это страницы с ?1?… ?91? вместо тегов — дабы подставлять одну страницу (которая имеет шаблон/template) под однотипные теги — например страница «Маслосистема» для 20ти одинаковых генераторов, где теги отличаются префиксом/постфиксом (G1_Reactive_Pwr/Reactive_Pwr_G1)

приведение данного ликбеза означает вашу неосведомленность о Citect даже на базовом уровне «Fist Steps»
Спасибо за ликбез :) Так уж сложилось, что на Citect я делал только один небольшой проект и допиливал некоторые расширения ещё в 3.
за это время я успел проклясть графический редактор за его убогость, стыковку с сименсовскими контроллерами и графические тренды. Они несколько отличаются от тех, что были в предыдущих версиях и динамическую их настройку я так и не поборол: трендов было немного, времени разбираться тоже :)

PS У меня до сих пор получалось организовать теги так, что они отличаются только префиксом.
в WinCC у вас и выбора нет :)
PS Citect для меня отстой потому, что:
основан на DBF — в том числе, графика (а не на SQL)
и что такого? какое-то идеологическое предубеждение? MS SQL еще та шляпа… да даже взять Project Duplicator — НЕ РАБОТАЕТ! пока не остановишь службу WinCC MS SQL

графический редактор — полный отстой. Невозможно задать координаты вручную, только мышкой таскать. Окно свойств — модальное и прочая куча мелких придирок.

пиксельная точность позиционирования есть — чего же боле? какие-то элементы рукми накидал, остальные по ним выровнял так или иначе — клавишами < — и -> можно подогнать с точностью до пикселя — не вижу проблемы… настолько, что не не считаю это проблемой… там есть куда посерьезнее вещи…

Теги, архивы, алармы и прочее можно редактировать только в Excel.

не только, можно во встроенных формах :), но табличные данные удобнее редактировать в табличном редакторе, разве нет? я и код в Excele пишу… оч удобно… только успевай склеивать…

Отображение трендов — динамическая настройка через скрипты (не работает).

работает, использую ProcessAnalyst и прекрасно с ним работаю из CiCode — получил его хендл и вперед… к работе со свойствами и методами… равно как я это делаю и в WinCC

Прикрутить теги от контроллеров сименс — это целая специальная утилита и адский костыль
теги прекрасно импортятся из OPC-сервера как и в WinCC… начиная с версии 7.1 (последняя версия 7.4 и + SP1) это основной механизм даже для OFS… XSY файл отменен и не фурычит…
Графический редактор тупо неудобный. Я привык к WinCC, что там любое свойство можно руками задать. Да и чёрт бы с ним, если б в Citect оно всё нормально стрелками двигалось…

У Project Duplicator, собственно, назначение одно: сделать копию проекта для резервированного сервера.

А я с этим ProcessAnalyst как-то не подружился. Открыл help, написал си-код по примеру, не заработало. Немного ещё повозился и бросил, потому что времени уже не оставалось.

Через OPC, может, и ок. Но мне приходилось допиливать не очень новые проекты — вот там это через задницу :)
Графический редактор тупо неудобный. Я привык к WinCC,

этим все и объясняется :)

если б в Citect оно всё нормально стрелками двигалось…

да двигается оно, говорю же…
как? смотрите форум scada.ru ответ давно известен всем кто ищет…

У Project Duplicator, собственно, назначение одно: сделать копию проекта для резервированного сервера.

он ругается (точно уже не скажу как, что-то типа нет доступа) пока службу SQL не остановишь

А я с этим ProcessAnalyst как-то не подружился.

с чем с чем, а сним проблем в этом плане проблем не было, если надо покажу кусок кода, там другой трабл есть — с выгрузкой данных в табличном виде…

Через OPC, может, и ок. Но мне приходилось допиливать не очень новые проекты — вот там это через задницу :)

а! я понял — через драйвер сименса… кстати такой базы драйверов у кого еще можно встретить? без доплат за каждый? и среда разработки бесплатна…
из сторонних драйверов я только snmp делал — там таки даааа… чтобы угадать формат тег-адрес… в раскопки надо ударится… но работает… а! недавно modbus там заводил — мало того, что вместо простого конфигурирования галками с 40000 или с 40001, прямой/обратный порядок байт — они завели разные протоколы MODNET20, MODNET30, MODNET40 и т.д. так еще и хрен узнаешь почему не работает, если не работает!… после modbus openSCADA modbus в Citect явная шляпа…
этим все и объясняется :)

Удобнее, вот и привык ;)
да двигается оно, говорю же…

Так знаю… Выделишь, нажмёшь энтер и двигаешь. Если мышку с объекта не увёл… И гадай каждый раз, оно объект переместит или скопирует :)
с чем с чем, а сним проблем в этом плане проблем не было, если надо покажу кусок кода, там другой трабл есть — с выгрузкой данных в табличном виде…

Вот за это буду весьма признателен :) А в WinCC нет никаких проблем с выгрузкой из тренда ;)
а! я понял — через драйвер сименса… кстати такой базы драйверов у кого еще можно встретить? без доплат за каждый?

Да, через него. По мне, так чем такой корявый драйвер, уж лучше внешний OPC…
А у сименса среда разработки тоже условно-бесплатная :)
Выделишь, нажмёшь энтер и двигаешь. Если мышку с объекта не увёл… И гадай каждый раз, оно объект переместит или скопирует :)

с ENTER — да, чаще копирует, чем двигает, выделяю мышкой и не отпуская двигаю кнопками…
Да, через него. По мне, так чем такой корявый драйвер, уж лучше внешний OPC…

у вас есть выбор! и это прекрасно… хотите через бесплатный драйвер Citect, хотите через платный OPC сервер сименса…
Так не я ж плачу, а заказчик… Для личных, некоммерческих экспериментов в образовательных целях есть EKB Install :)
далеко не каждый зак готов оплатить это барахло… с колонками и усилителем…
Да и чёрт бы с ним, если б в Citect оно всё нормально стрелками двигалось…

вы заметили такую мелочь… а то что текущие алармы отображаются… ну сами знаете что для этого нужно… а то, что компилятор то видит ошибки, то не видит, то что он может видеть ошибки в скрипте, где и строчки то такой нет (по старой памяти залипнет и куку), то что окошко выбора печати для репортов вылетает на сервере, а не на клиенте, где его вызвали и оно нужно… и многое другое…
В зависимости от проекта, некоторые делаются вручную, но уж точно не создание базы тегов.

с учетом, что:
1) мы импортим ПЛК-шные теги из степа
2) вы говорите про степ

откройте тайну Туринской плащаницы откуда степ узнает сколько каких тегов вам надо и с какими именами? (если говорите, что базу не то что руками, а вообще не создаете)
да какая тайна…
У каждой переменной в степе есть атрибуты — если по ней щёлкнуть правой кнопкой и их открыть. Это довольно неплохо документировано в родном хэлпе.
К слову, когда я это увидел первый раз — я тоже выпал в осадок: откуда оно знает, что мне надо?! :)
Весь хэлп переписывать не буду, процитирую самые ключевые параметры:

S7_archive WinCC archive system Process values that are archived at runtime
принимает значения false, shortterm, longterm

S7_m_c CFC, configuration of variables, OCM Identifies whether a parameter can be used with the operator control and monitoring system
true или false, по умолчанию (если отсутствует — false).
Самый ценный атрибут: означает, что надо создать тег в WinCC.

S7_unit CFC, configuration of variables, OCM Identifies a unit
текстовая строка, позволяет задать единицу измерения (WinCC создаёт для этой строки параметр типа TextRef). Без CFC мне не удалось заставить этот параметр работать :(

S7_string_0 CFC, configuration of variables, OCM Operator text «0» for binary values
S7_string_1 CFC, configuration of variables, OCM Operator text «1» for binary values
S7_string_2...25 CFC Operator text for integer values

0, 1 — это тексты для булевых параметров. Например, включено/выключено, ручной/автомат. Тоже textref, работает независимо от CFC.

Атрибуты можно задавать переменным в таблице символов, функциональным блокам, UDT и параметрам функциональных блоков. Последнее — самый цимес. Потому, что эти параметры наследуются всеми экземплярными блоками данных.

для того, чтоб AS-OS Engineering всё это проглотил, надо засунуть проект WinCC в степ (интегрированный проект), настроить все соединения и скомпилировать WinCC.

Логично, что при компиляции будут созданы архивные переменные для объектов, которые имеют атрибут S7_archive и теги для объектов, у которых есть S7_m_c.

Особая фишка функциональных блоков при этом — для них создаются структуры. В которые входят все параметры, которые отмечены атрибутом S7_m_c и все тексты, как textref. Это комментарий к экземпляру, единицы измерения (см. выше), комментарии к булевским переменным. Всё это будет в структуре и доступно в графическом редакторе.

По поводу алармов — ищите Generating Block-Related Messages.

Суть в том, что есть несколько SFB (31, 34, 35, 36, 37) — эти доступны только в S7-400 и SFC 17/18 и 107/108 — они доступны и в 300, и в 400.

Если нам надо, чтоб какой-либо объект генерировал сообщения (алармы, предупреждения, текущие действия и т.д.) — вставляем подходящий блок из перечисленных в свой FB, в свойствах FB настраиваем сообщения и потом, в каждом экземплярном DB поправляем наши тексты (в случае с CFC это получается почти автоматически) — и вуаля, при компиляции у нас появляются алармы — с соответствующими тегами в структуре. Этот тег мы просто назначаем объекту Group Display и сразу видим состояние объекта на экране: всё ок, есть алармы (горит постоянно), есть неквитированные алармы. Если у этого Group Display свойство Relevant имеет значение true, то он участвует в общей иерархии алармов. Иерархия алармов соответствует иерархии картинок в Picture Tree Manager. Чтоб алармы обновились, надо открыть и пересохранить дерево картинок.
Далее, наверху, возле кнопок экранов, будут мигать соответствующие кнопки у Group Display. Если на неё нажать — откроется нужный экран и у вызвавшего аларм элемента будет установлено свойство HighlightBlockIcon.

Короче, как-то так. Статья уже получается, а не комментарий… Могу, кстати, и статью написать, но боюсь, что более опытные (но более ленивые товарищи по части написать) закидают чем-нибудь, а то и вовсе заминусуют.

PS Если разик не полениться и подготовить библиотеку для наиболее часто используемых элементов (аналоговые сигналы, моторы, клапаны и т.д.) — это почти как самодельный PCS7 получится, проверено :)

PS А кто-то тут меня попрекал уровнем First Steps :)
PS А кто-то тут меня попрекал уровнем First Steps :)


приведение данного ликбеза означает вашу неосведомленность о Citect даже на базовом уровне «Fist Steps»


что не так?
Всё так. Забыл тег <шутка></шутка> :)
Далее, наверху, возле кнопок экранов,… Если на неё нажать — откроется нужный экран и у вызвавшего аларм элемента будет установлено свойство HighlightBlockIcon.

экраны настроенные на то, что картинка одна, а TagPrefix меняется — оно это учтет?
Оно открывает не окно свойств, а полностью мнемосхему. У объекта-виновника свойство HighlightBlockIcon устанавливается в true и дальше это уже ваше дело, что предпринять. Можно помигать рамкой, а можно открыть окно свойств.

У библиотечных объектов есть событие на изменение свойства HighlightBlockIcon, у своих тоже полезно его добавить :)
Оно открывает не окно свойств, а полностью мнемосхему.

причем здесь окно свойств ???

я говорю на мнемосхеме теги привязаны без структурных префиксов и я при выборе соотвествующей мнемосхемы в сишном коде подставляю ей нужный TagPrefix и передергиваю свойство visible для этого PictureWindow (чтоб он узнал, что тегпрефик сменился)

встроенный механизм так умеет? или надо создать кучу однотипных мнемосхем где полностью привязать все теги… без расчета на всякие TagPrefix
На мнемосхеме теги всегда указаны явно. Если она не засунута в picturewindow с установленным tagprefix.
вне PictureWindows говорить о TagPrefix нет смысла
естественно у меня контейнер PictureWindow, а в нее я подсовываю разные мнемосхема + скриптом меняю TagPrefix
Собственно, я тут порасписал про интеграцию между степом и WinCC… Именно это я имел в виду, когда говорил, что у других такой глубокой интеграции между контроллером и скадой нет. За такое я готов простить сименсу некоторые косяки :)
К слову, ковыряние через Excel — это костыль для тех, кто не хочет/не умеет использовать AS-OS Engineering.


ну что за хрень… как-так… табличные данные… что теги, что алармы, что тренды… кто-то где-то когда-то создает… как AS-OS Engineering избавляет от создания переменных ???
Это не лес, а полная шляпа. Я ими не пользуюсь совсем. Вся динамика — через PictureWindow

сами же подтверждаете, что фейсплейты — шляпа (а лесом я назвал проце анимации на VBS с созданием внутри фейсплейта переменный дл вывода наружу для прикручивания тегов и т.д.)

PictureWindows работает с TagPrefix (под структурные теги) — т.е. если вы не используете фейсплейты для кранов/клапанов/моторов, то юзаете PictureWindow — а они на странице серые квадраты/прямоугольники — т.е. ваша страница — это скопление серых квадратов/прямоугольников… и вас не смущает… не мешает… ну хз… везет вам…
Так шляпа и есть шляпа, их почти никто и не использует.

На страницу обычно кладут Customized Object — он нормально отображается и сподручнее для миниатюры. А уже по нажатию на него открывается окно свойств и управления.
… Если проект на PCS7 ...

о! уже и PCS7 вылез… :)
Ну да… когда есть толковая библиотека (частично APL, частично самодельная), CFC, SFC, то делать проект — одно удовольствие. Кидаешь кирпичи в CFC, рисуешь связи — и большая часть работы сделана :)
важно учесть — у нас верх и низ разные отделы делают, я верх делаю… и программисты ПЛК под верх никак не подстраиваются… максимум теги в степе в WinCC втягивают… раньше вообще датаблоками адресовались…
У меня на прошлой работе контроллер и скаду тоже разные люди делали… И ничего, договорились между собой, подготовили библиотеку. Контроллерщики вносят какие-то изменения — отдают проект HMI-шнику. Он перекомпилирует WinCC, что надо — правит ручками и готово.
у меня есть несколько проектов, где исторически сложилось, что контроллер — сименс, а скада — сайтект

можете попробовать сименс + openSCADA — со статьей опередите :)…
Я могу всё, что угодно. Но ковыряться ради интереса у меня почти не остаётся времени, а заказчики такого не просят. Да и, собственно, не всегда я влияю на выбор контроллеров и SCADA.
А теперь… ;) К слову, ковыряние через Excel — это костыль для тех, кто не хочет/не умеет использовать AS-OS Engineering.


как интересно купить «костыль»(с) ценой в крыло от боинга… занимаем очередь…
AS-OS Engineering просто импортит из степа теги, связанные с ПЛК СИМЕНСа, и только. А в степе вы их набили… ручками ??? Набивать локальные теги в WinCC вам придется ручками. Теги, получаемые от OPC сервера вы импортите в WinCC ручками. Алармы (учтем, что плкшные вы в степе делаете) для ваших личных скадовских нужд делаете ручками… Отдельная пестня — это аналоговые алармы в WinCC.
Кстати нахлобучка на эксель — это выполнено надстройккой экселя, когда делал аналоговые алармы заметил, что в WinCC есть возможность задать вариант «равно такому-то числу», а в экселе нет такого — техподдержка сказала «ага, нет, надстройка старая, не учтено, ждите када новая выйдет»… спасибо… подброшу вам еще деньжат на крыло от боинга — вы ж такие милые ребята… Думаю открою в VBA редакторе и сам добавлю — хрен там! Запаролено. Нарыл вскрыватель офисных паролей, он показал пароль, ввожу — не канает.… Забил… потом в какой-то момент работы с экселем просто нажал esc (или как там прерывается выполнение VBA скрипта) и вуаля! — VBA код надстройки открыт для редактирования…
как интересно купить «костыль»(с) ценой в крыло от боинга

А вы его покупаете? ;) Чаще всего, покупают только то, что идёт в продакшен, к заказчику. Кроме того, если вам нужны только теги — пользуйтесь бесплатным Tag Import/Export.
AS-OS Engineering просто импортит из степа теги, связанные с ПЛК СИМЕНСа, и только.

Не только. Он импортирует теги, создаёт структуры, импортирует контроллерные алармы и архивные теги. По-моему, немало.
А в степе вы их набили… ручками ???

Во-1, никто и не обещал избавить от задачи создать первоначальную базу тегов ;) Более того, я плохо себе это представляю.
Во-2, если у вас более-менее организована структура программы, то львиная доля тегов придётся на экземплярные DB. А это уже не совсем ручками.
Набивать локальные теги в WinCC вам придется ручками.

Так получается, что у меня почти не возникает потребности во внутренних тегах.
Полтора тега я вполне могу создать ручками.
Отдельная пестня — это аналоговые алармы в WinCC.

Я бы сказал, что прибегать к ним — не самая лучшая практика независимо от WinCC. Только в крайнем случае, если устройство, с которого читаются данные, само этого не умеет.
В связке WinCC и Step7 самый лучший способ организовать пороговый контроль — контроллерные алармы.
Причина даже не в убогости аналоговых алармов, а в том, что пороговый контроль часто важен в целях защиты. Например, насос нельзя пускать при низком уровне в ёмкости, из которой он выкачивает, и надо остановить, если через заданное время он не создал требуемое давление на выходе. А нагреватель надо отключать, если температура достигла определённого порога. И совсем нельзя включать, если этот нагреватель находится в ёмкости, уровень в которой низкий и нагреватель оказывается в воздухе.
Несколько странно в такой связке отдавать текущее значение в скаду, чтоб она выполнила пороговый контроль и сообщила результат контроллеру. А реализовывать часть проверок в контроллере, а часть в скаде? Пожалуй, не буду продолжать :)
потом в какой-то момент работы с экселем просто нажал esc (или как там прерывается выполнение VBA скрипта) и вуаля! — VBA код надстройки открыт для редактирования…

В том, что ёксель дырявый, виноват уж точно не сименс :)
А вы его покупаете? ;)

да, мы чтем уголовный кодекс как завещал известный товарисч…


Чаще всего, покупают только то, что идёт в продакшен, к заказчику.

я купил WinCC как готовый продукт, «костыль» является его частью. Почему ей можно быть костылем?

Кроме того, если вам нужны только теги — пользуйтесь бесплатным Tag Import/Export.

не только…
В том, что ёксель дырявый, виноват уж точно не сименс :)

сименс виноват в кривой реализации механизма редактирования потрохов скады через сторонний табличный редактор… одна онлайн коррекция свежевставленного в нем чего стоит… мало того что это мееедленная тарахтелка (эксель-гифка), так еще и ненужную работу делает — сначала вставляет все что вставили, а потом удаляет как некорректное…

другие производители (например, Citect, RSView32) выбрали другие реализации хоть и под Excel (RSView32 вообще в CSV выгружает, хоть LibreOffice'ом редактируйте)
… Так получается, что у меня почти не возникает потребности во внутренних тегах.
… Полтора тега я вполне могу создать ручками.

пардон, но WinCC не персонально под вас сделали… она позиционируется как инструмент класса SCADA (Supervisory Control и так далее...) и программы других производителей реализует подобный инструментарий… плюс-минус… но такого изврата как аналоговые алармы в WinCC… попробуйте назвать навскидку?… с помощью зала? :)
В связке WinCC и Step7 самый лучший способ организовать пороговый контроль — контроллерные алармы.… Причина даже не в убогости аналоговых алармов, а в том,… Пожалуй, не буду продолжать :)


1) раз вы сами пришли к абсурдности вашего предположения [регистрациия в скаде — результа-команда в плк]… :)… только повторю, что это нужно для собственных нужд в SCADA…
2) раз уж делают механизм зачем такой ушлепочный? ну посмотри что другие делают…
PS Если для кого си-скрипт в WinCC — чёрная магия — есть VBScript с документированной библиотекой объектов. Но он умеет не всё, что умеет си-скрипт.
вы невнимательны
я говорил о VBS для анимации фейсплетов, там нет возможности писать на Си
там ничего другого нет. Они настолько чудовищны, что я ими даже не пользовался. Пришлось поковырять пару раз в чужих проектах, ну и коллеги, что ранее наелись, отговорили :)

Я всю динамику делаю на PictureWindow (в связке с Split Screen Manager) и Customized Object во всех случаях, кроме самых простых I/O Field и Status Display.

По поводу скриптов я имел в виду разницу между VB и Си там, где можно применить оба. Си даёт больше возможностей, а VB роняет скриптовую машину не так больно :)
в связке с Split Screen Manager) и Customized Object во всех случаях,

да хрень все это… только если нормальных вещей не видели, то нравится и не смущает…

как в WinCC задается несколько экранов? первый раз предполагаешь, что просто настройка — мол отзеркаль или изобрази независимый экран на втором мониторе… ан нет… о! это дорога в одну сторону — нажал кнопку — затархтел трактор… что делает… куда делает… кого делает… зачем делает… подкорректировать самому?
и вообще все эти ВыньСиСёвые менеджеры — bullshit
например в Citect два монитора просто в конфигурационном файле ini говоришь что у тя два монитора — то проекта это не касается — Citect самостоятельно отобразит картинки на втором мониторе — на одном открыл однолинейку, на втором тренды… наслаждаешься…

в WinCC мы по-простому для реализации «шапки» и «подвала» с постоянными элементами на каждой странице сделали нагромождение PictureWindow — как матрешка в матрешке… и таким же образом сделали на два монитора… (потому и путь к объекту на экране такой длинный как выше привел) — все просто, понятно кто где и кто чей, легко редактируется…
По ходу дела, вы WinCC готовить не умеете. Заходите в OS Project Editor и там настраиваете и количество, и расположение экранов, и многое другое.

Главный экран — он да, как матрёшка в матрёшке получается. Но навигация по нескольким экранам независимая, плюс начиная с 7 версии можно явно указать, на каком экране открыть нужное окно.

Самому откорректировать тоже не проблема.
поспешил… исправляюсь

не DI_on_Q?Qtype??Qn?, а DI_on_Q%Qtype%%Qn%
в джинах обрамляется процентами, а в суперджинах вопросительными знаками

сам собой незаметно вырос обзор плюсов и минусов конкретных скад… много и в одном месте… с примерами и скриншотами… может кому полезно будет…

пока писал коммент — открыл редактор кода в WinCC… и вот:

image

нажал ОК и дальше как ни в чем не бывало… (бага воспроизводима, проверил)
А я уже неделю сношаюсь с миграцией проекта из WinCC 7 в портал (V13). Не идёт. Сношаю мозги фрицам из техподдержки :)
сдается мне рановато пока portal в продакшн пускать…
а что делать??!

Одного заказчика раскрутили на портал. один экран, на нём около ста моторов и HMI на базе панели Comfort, которая не умеет фэйсплэйты. Я всё проклял…
Хорошо, что почти сдал :)

Другой — заказчик переезжает на Win8, надо мигрировать в свежую версию, как минимум — 7.3.

Ну и не забываем: текущая ценовая политика сименса такова, что он выдавливает 300/400 контроллеры, продвигает 1200/1500. 1500, кстати, неплох. Если б не портал, а классический степ :)

CАС/ЫАС портал пока не умеет, H-контроллеры не поддерживает. Детская игрушка пока :)
я таки упомянул S7-400H потому, что у него довольно серьёзно сделано аппаратное резервирование… это куда как важнее более быстрого процессора

ваша непосредственность обескураживает… даже не знаю в каком контексте вы это приплели…
попробую отгадать:
1) это очень нужно всем и каждому и все себе берут как айфоны — за последние 5 лет и более 50 проектов резервированный ПЛК (S-400) заказали только раз, я уж не говорю сколько это весит (я про обвязку, например, спец.сетвухи в ПК от Сименса) и сколько это стоит… остальные как-то обходятся без резервирование ПЛК, не все даже клиент-сервер для верхнего уровня берут — одного АРМа достаточно…

2) существуют бронированные автомобили, защищенные ноутбуки и телефоны, кевларовые перчатки и т.д. — но 99% автомобилей на дорогах — консервные банки с отлетающими от щелбана пластмассками, телефоны в заднем кармане гнуться, ноутбуки такие же… — значит как-то народ в массе своей и этим обходится…

и да… это все уже смахивает на оффтоп… заметка то про Дядю Федора openSCADA :)
Кевларовые перчатки, 200р/пара :)
image
У меня есть такие.
Когда я больше 10 лет назад работал кипчиком, у меня были спец.перчатки и противогаз: приходилось пару раз менять датчики давления на аццки ядовитой среде :)
Противогаз есть и сейчас (спасибо министерству тыла :)) и есть башмачки с бронированным носком, металлической защитой в подошве и сама подошва масло-бензо-кислото-щёлочестойкая :)
Нам такую обувь нельзя, искронебезопасно )
Вполне себе безопасно… :) Там же металл наружу не торчит :)

Я в таких башмачках больше 100 МВт турбин ввёл в строй :)
даже не знаю в каком контексте вы это приплели

В контексте того, что сравнивается бульдог с носорогом в том духе, что контроллер от сименс — полный отстой по быстродействию, если сравнить с контроллером ХХХ.
Я же считаю, что у сименса быстродействие достаточное, а возможности аппаратного резервирования и полевая шина/периферия, которая заводится с пол-пинка без плавающих глюков куда более серьёзное преимущество, чем избыточное быстродействие.
это очень нужно всем и каждому и все себе берут как айфоны — за последние 5 лет и более 50 проектов резервированный ПЛК (S-400) заказали только раз, я уж не говорю сколько это весит (я про обвязку, например, спец.сетвухи в ПК от Сименса) и сколько это стоит… остальные как-то обходятся без резервирование ПЛК, не все даже клиент-сервер для верхнего уровня берут — одного АРМа достаточно…

Проект проекту рознь. Участвовал я в одном проекте — электростанция на 200 МВт, ОРУ по высокой стороне — 110 кВ. Там мы ставили H-систему. Это достаточно серьёзный объект для аппаратного резервирования? Помимо H-системы, у нас там было ещё несколько контроллеров, все сименс. Кстати, ещё один плюс — удобство коммуникаций между ними. Дальше — резервированный сервер WinCC, 3 клиента и инженерка. И это не единственный наш проект с H-системами. Некоторые делали коллеги и я в них не участвовал.
Спец.сетевухи нужны далеко не в каждом случае. Только с H-системой или при большом количестве соединений.
существуют бронированные автомобили, защищенные ноутбуки и телефоны, кевларовые перчатки и т.д.

Что характерно для ноутбуков — у большинства коллег DELL Latitude. Видишь и сразу понятно: серьёзные люди :) Некоторые очень серьёзные покупают у сименса Field PG :) Правда, последнее время Dell уже не совсем торт…

Насчёт оффтопа — это точно. К слову, я б с удовольствием поковырялся с openSCADA, будь на то время и/или заказ. Всегда интересно поразбираться с чем-то новым.
Что характерно для ноутбуков — у большинства коллег DELL Latitude. Видишь и сразу понятно: серьёзные люди :)


я про такие ноутбуки

image
image

а не про хомячковые латитьюды
image
Видел такие монстры. Хвала Аллаху, я не сталкивался с условиями, где без такого не обойтись.
В моих случаях было более оправданно держать под рукой запасной Latitude. Который, кстати, не такой уж и хомячковый. У меня уже третий Latitude и все три падали с высоты 1м и чуть поболее, все живы. D531 6 лет назад даже купание пережил — после того, как я его полностью раскидал на детали, промыл спиртом и поковырял зубочисткой. До сих пор, кстати, жив — несмотря на мёртвую уже батарейку. Был списан и отдан моей маме :)

Главные его преимущества в том, что ещё до недавних времён он имел 232 порт на борту и слот для PCMCIA (актуально для коммуникационного процессора Profibus 5512) — на хомячеовых ноутах давно забыли, что это. Частично металлический корпус они делают до сих пор, 232 порт (вместе с параллельным) вынесли на подобие дока (Legacy extender), PCMCIA успупил место ExpressCard 54. Недавно вертел в руках новый 5540. По сравнению с моим нынешним 5530 он таки правда похож на хомячка :)
Проект проекту рознь.


т.е. сами это пишете, но понимать отказываетесь… «о! Сименс наш Всемогущий и Великий… на Тебя вся надежда… Спаситель наш пиндостанский....»

1) выше я уже писал, что openSCADA это не Universewide tool, а инструмент для своей, вполне конкретной ниши…

2) я уже приводил примеры аппаратного резервирования у других вендров, в т.ч. и отечественных (РФ), что весьма важно, ибо считаю, что в некоторые сектора экономики нельзя пускать иностранных производителей вообще (желаете танк под управлением WinCE — воля ваша, нам не_нада), а в некоторых нельзя таааак подсаживаться на иностранную иглу как на сименс «сименс так хорошо работает… только с сименсом… только с таким же прекрасным… и распрекрансым… не прячьте ваши денежки по злачным по местам… несите ваши денежки в пиндосский сименс нам....»
сами это пишете, но понимать отказываетесь…

Да ну? Я где-то спорил, что есть проекты маленькие и есть большие? Для больших таки да, надо сименс, эмерсон, йокогава и прочие.
Мелочь можно собрать на любом говне и палках.
Собственно, меня зацепило то, что при примерно одинаковом уровне говнистости наиболее обруган был именно сименс :)
я уже приводил примеры аппаратного резервирования у других вендров, в т.ч. и отечественных (РФ)
Так есть, но работает у всех по-разному. Есть, вообще, системы с трёхкратным аппаратным резервированием — Triconics, например. Я, к слову, его не видел — только слышал.
в некоторые сектора экономики нельзя пускать иностранных производителей вообще

нельзя таааак подсаживаться на иностранную иглу

А кто-то с этим спорит? ;) Лично вы готовы делать автоматику на лампах и бронетранспортёре?
Советская/российская (не буду писать «отечественная», чтобы не быть понятым превратно ;) ) электроника была просрана ещё во времена застоя — когда было принято решение шлифовать интел вместо разработки своего процессора. Нынешние отечественные разработки используют полностью импортную электронику — процессоры, обвязку. 580 давно история, а Эльбрус в серию так и не пошёл.

Чтобы совсем не зависеть от буржуев, надо иметь самостоятельно разработанные процессоры и обвязку, свой техпроцесс и своё производство (это есть сейчас), свою трассировку и производство плат, коннекторов, корпусов — вот это полная независимость от импорта. А если ещё и свои, несовместимые с буржуями протоколы — это ещё один уровень защиты от потенциального противника и ещё один уровень геморроя разработчикам.
Надо свои датчики и исполнительные механизмы, а не всякие там auma. Метран челябинский — и тот давно эмерсон…
Проблема в том, что это колоссальные вложения и гигантские сроки. При чём, вложения вернутся, только если гнать в промышленных количествах гражданскую технику на этой базе — всякие там телевизоры, стиральные машины и прочее.

А лучше (я сейчас крамолу скажу) — задвинуть Солнцеликого туда, где ему и место, прекратить новую холодную волну и самоизоляцию и участвовать в общей кооперации. Сейчас и у буржуев полный описанный цикл никто не делает ни в одиночку, ни без обкатки/заработка на гражданской продукции.
А кто-то с этим спорит? ;) Лично вы готовы делать автоматику на лампах и бронетранспортёре?

1) в открытую то никто не спорит… просто поет пестню про сименс…
2) прям юношеский максимализм какой-то… либо все, либо ничего… вполне хорошо, если ПЛК и SCADA (или даже ПТК в составе ПЛК+SCADA) будут российские… или open source (или GPL)… хотя бы в нефтянке и АЭС…
отечестенные ПЛК есть… и даже несколько… и даже кем-то используются и вполне успешно… то что я их не использую не умоляет их заслуг… и SCADA есть… и вообще это же бизнес… вы сами понимаете… если запретить использовать сименс, то быстро появится спрос на отечественное… нет циски — появится хуайвэй, нету хуайвея — появится мумбавэй и т.д.
есть отечественные производители электронных компонентов… Ангстрем делает процессоры по лицензии, например… тут много не скажу ибо не силен, все со слов товарищей, кто электроникой занимается…
Что характерно для ноутбуков — у большинства коллег DELL Latitude. Видишь и сразу понятно: серьёзные люди :)


про такие ПК/ПЛК я говорил
image
image
image
image
image

с такими параметрами:
— Стойкость к МИП – 4-й класс по ГОСТ Р 51317.4.5-99; EN 61000-4-4, ±4 kV, perf. Criteria A; EN 61000-4-5, ±4 kV, perf. Criteria A.
— Высокозащищенное алюминиевое шасси ATR-типа построено без применения вентиляторов охлаждения и использует естественное конвекционное и кондуктивное охлаждение в соответствии со стандартами MIL-STD-810.
— Герметичный корпус ATR-системы
— эксплуатационной характеристикой изделия является повышенная пыле- влагозащита (IP65).
— оснащенный разъемами, защищенными по классу IP67
— алюминиевый корпус с двойной защитой от ударов и вибрации, и способна выдержать удары до 6g (60 мс) и вибрацию до 2g
— кому-то важно «контроллеры является единственными одобренными Комиссией по ядерному регулированию коммерческими серийными контроллерами для применения на атомных электростанциях класса 1E, с которыми по всему миру работают множество инженеров, сертифицированных TÜV по функциональной безопасности, и в которых реализована запатентованная технология тройного модульного резервирования (TMR).»
— сертифицирована для работы в следующих режимах: 3-2-1-0.
— Независимая сертификация на соответствие требованиям функциональной безопасности, включая уровни полноты безопасности 1-3 согласно стандарту IEC 61508.

этим я уже открыто намекаю, «что важнее» в отрыве от задачи — это ниочЁем… в каждом конкретном случае важнее своё…
кому-то троирование важнее дублирования… «Система, имеющая архитектуру с тройным модульным резервированием, может найти применение в тех случаях, когда по соображениям стоимости клиентам приходилось ограничиваться использованием контроллеров с дуплексной и симплексной архитектурами.»
опять сименс курит в сторонке ???
забыл добавить самое главное :)
— цена (этим параметром ниша сименса очень четко очерчивается)
Контроллер… который может сразу PC-совместимую визуализацию крутить.

несколькими комментами выше такой LinPac и показан с VGA на борту :)
>> Есть, что противопоставить S7-400F/H/FH? ;)

есть что противопоставить SCADA+LINUX+GPL? :)
Еще в студенческие годы я обращал внимание на этот проект.

Тогда, 4 года назад, я не смог преодолеть порог вхождения за 2 недели и сваял курсовой на WinCC.
Потом закрутилось, завертелось и забылось.

О чем сейчас жалею.

Спасибо что напомнили о такой замечательной вещи =)
>> Тогда, 4 года назад, я не смог преодолеть порог вхождения за 2 недели
Порог вхождения вещь сугубо индивидуальная… зависит от общей образованности… некоторые после 7 лет программистом АСУТП не могут папку по сети расшарить и что таrое ping, а некоторые за месяц с S-400 разбираются (включая алармы с контроллера, резервирование контроллера, удаленные модули, чтение по modbus, диагностика модулей)

Так что… демо проект есть… документация есть (как ее много я осознал только когда Руководство оператора к своему проекту писал — у меня то 10 картинок, а у Ромы миллион и маленькая тележка описана)… примеры применения я привел… остается только брать и делать… сначала что-то маленькое и простое…
Как сейчас помню, мне нужно было чем-то генерировать сигнал, так как датчиков у меня не было.
У сименса такая штуковина-генерилка была, а на опенскаде я не смог реализовать нечто подобное.
1) что за штука генерилка? Внутри WinCC или сторонняя программа?
2) у меня в проекте связь по modbusTCP — я на хосте запустил modbus-симулятор, на виртуалке с openscada прицеплся по IP. Можно задать симулятору просто инкремент генерить, можно в конкретный регистр свое число вбить (но тут надо вычислять слово/бит что не удобно), можно на вкладке «Атрибуты» сразу с тегами работать (если они позволяют запись)
3) можно на JavaLikeCalc создать свой симулятор энтропии вселенной — так сделан демо проект AGLKS — там потихонечку все «само собой» шевелится… клапаны открываются, закрываются, аналоги растут/падают, можно самому открыть/закрыть клапаны и наблюдать реакцию системы…
как-то так…
Да, сейчас я мыслю уже на уровне полей протоколов, а на тот момент все было немного иначе))

Если память не изменяет, генерилка была в Step7.
Все графически через выпадающее меню и галочки.
Кодить тогда не умел, да и времени не было.

Пришлось сваять курсач на коленке из того что было и забыть.
Т.е. проблема не в openSCADA, что и требовалось показать ))

Продолжая мысль про моделирование сигналов с объекта:
Например, нам нужна модель станции для нашей АСТП для отладки в офисе до выезда на объект. Берем промышленный ПК, вставляем в него PCI платы ввода/вывода а-ля Diamon
image
или любые из списка поддерживаемых библиотекой Comedi , запихиваем в него openSCADA и на JavaLikeCalc реализуем математическую модель управляемого объекта… Вуа-ля отладка не выходя из офиса.
Siemens нервно курит в сторонке… У Шнайдер подобное можно сварганить в Unity — там есть возможность создавать графические экраны с кнопками и пр.
Да, получается весьма красиво)))
Это уровень уже далеко не студенческого курсача)

Просто надо поднимать курсачи до такого уровня… ))

Тут на хабре была статься как студенты 5курсники украинского универа свой спутник запустили… а тут всего лишь HMI…
Кстати, по поводу контроллеров Siemens.

Они, конечно, работают, но стоят как космолет. На предприятии одном лично адамсы видел. Работают точно так же.

Вот! С этого и надо начинать…
я хочу посмотреть ни того, кто на ADAM построит крупную распределённую систему (минимум, этак на 4000 точек ввода-вывода) с аппаратным резервированием и как этот человек будет спать по ночам :)

Я уже не говорю о том, что MTBF у ADAM и Siemens отличается хоть и не на порядок, но существенно. Да и аналоговые каналы у Advantech в этой серии так себе…
MTBF весьма спекулятивный параметр. Он отражает лишь примерное количество оборудования, которое нужно положить в зип. Соответственно, выигрывает тот у кого по совокупным параметрам получается дешевле. (стоимость оборудования, хранение, замена). Можно все обвесить космолетами от siemens. Внутри они мало чем отличаются. Такие же промышленные запчасти. А спокойно спать вы никогда не будете, даже если на том конце будет суперкрутая техподдержка как у сименсов. Когда у вас ломается, например, контроль температуры отходящих газов и вы перестаете контролировать состояние печи — можете звонить и стадо дрессированных ослов будет вас успокаивать что все хорошо, они обязательно вышлют вам замену, их продукт самый лучший, менеджеры долго будут петь о том какая у них крутая политика «Total integration» пока груз едет к вам супербыстрой доставкой три дня.
А, тем временем, дядя Ваня в цехе будет пытаться крутить аналоговые вентили и «на глазок» управлять процессом. И по сути нет никакой разницы что за шильдик был наклеен на корпус контроллера.
И да, на лабораторном стенде я устраивал сименсам испытания в виде выдергивания флешек, тряски.
То что они такие неубиваемые — это миф.
Все ИМХО, конечно.

Такие дела =)
Спекулятивный, но лучше пока ничего не придумали.
Выигрывает тот, чья система позволяет реализовать требуемое без чрезмерных затрат на разработку. Возвращаясь к сименсу и адвантыку: чей конструктор позволяет, практически, в несколько щелчков мышью построить полностью дублированную систему управления? Дублированный контроллер с безударным переключением, дублированная сеть, дублированный распределённый ввод-вывод?
Сименс угробить — никаких проблем. У меня в отдельном уголке есть целое кладбище сименса, хоть и небольшое :) Сожжённые карты ввода-вывода, интерфейсные модули… Что характерно, в каждом случае «дело было не в бобине». На моей практике случаи выхода сименсовского железа из строя по собственной инициативе крайне редки.

Теперь про «ломается контроль чего-то там». Во-первых, не надо сачковать с диагностикой. Сименс (как и прочие производители равного масштаба) даёт очень богатые возможности для понимания, что с ним происходит: обрыв аналогового канала, перегруз, отказ модуля, отказ периферии… Всё это есть в диагностическом буфере и всё это можно показать оператору в скаде. Соответственно, оператор видит, что у него вышла из строя одна плата, опционально созванивается с инженером-разработчиком, затем дежурный электрик берёт со склада ЗиП и идёт меняет.
Ах, нет ЗиП? В таком случае следует сказать большое спасибо эффективному управленцу. Но уж точно не сименсу и не инженерам-разработчикам ;)
>> я хочу посмотреть ни того, кто на ADAM построит крупную распределённую систему (минимум, этак на 4000 точек ввода-вывода)

почему ADAM ?? почему не ЭЛЕСИ или ОРИОН (тот что от «Система-Сервис») ???
на LON питерская фирма даже секьюрные вещи в продакшн делает link
Потому, что в комментарии, на который я ответил, автор сроавнил сименс и адам :)
очевидно, что либо PLCSIM с контроллерной программой, либо WinCC tag simulator.
я тут постарался припомнить какие фичи у других скад есть — вспомнил только TimeMachine у… уже не вспомню у кого ...(в одном проекте на Citect реализовывали подобное на связке CiCode+Postgres) — это встроенный механизм: в обычном режиме на мнемосхеме отображаются реальные данные с датчиков, в режиме TimeMachine вместо реальных подставляются данные с архива, таким образом можно видеть состояние всей системы в определенный момент в прошлом — внешне выглядит как перемотка назад в видеоплеере… больше фич не вспомнил…

Зато вспомнил epic fail — Wonderware InTouch — там есть графический элемент 7-сегментный индикатор — я посмотрел как он устроен — ужас! — это набор прямоугольничков, свойство visible которых, обрабатывалось скриптом «эта палочка видна, если цифра 1, 3, 5 или 7, а эта — если 6, 8, 0». Например, в WinCC просто свой шрифт добавили. А стоит это ЧудоОбеспечение как чугунный мост…
TimeMachine — у SCADA от General Electric
B&R заявляет поддержку OPC_UA прям в ПЛК "Automation Studio supports OPC UA clients and servers directly on the controller ..." (правда только в 4й студии, у нас 3я) + в openSCADA есть поддержка OPC_UA — осталось только на практике проверить

Кто-нибудь может назвать ПЛК с OPC UA на борту?
По опыту работы могу сказать что система управления у Honeywell — Experion PKS самая «крутая». Во всяком случае по сравнению с сименсом, шнайдером и др.
Народ, а чего такого геройского я сделал?
Или даже так:
Что такого в этой статье, что аж 24 плюса, более 6000 просмотров, почти 150 человек положило в закладки… ?
Вроде не секрет рассказал, свой проект не показал, openSCADA известна давно, есть сайт, есть wiki, есть форум какой-никакой, доступны исходники…
На днях разобрался с snmp в openSCADA, хотел статью об этом написать на хабре, а потом подумал — а что такого в этом snmp, чтоб про него писать…
Потом хотел слепить связку openSCADA + Siemens S-300 и тоже в статью…
Надо ли?
Связка из openSCADA и S7-300 очень интересна, если там связь по ProfiBus/ProfiNet :)
OpenSCADA и связь с контроллерами siemens.

отбросим CIFS и видим
Библиотека Libnodave является реализацией путём реверсинжениринга протоколов MPI, S7, ISO-TSAP и других, которые используются при взаимодействии с контроллерами фирмы Siemens. Библиотекой поддерживаются многие MPI и USB адаптеры, а также ProfiNet. Коммуникационные процессоры фирмы Siemens, на платформах отличных от Windows, библиотекой не поддерживаются. На данном этапе модулем обеспечена поддержка протокола ISO-TSAP(ProfiNet) посредством библиотеки Libnodave. Библиотека Libnodave полностью включена в данный модуль и не требует разрешения зависимостей как при сборке, так и при исполнении.
Зашел на форум скады, обнаружил эту тему. Пусть будет как дополнение.
Sign up to leave a comment.

Articles