Доброго времени суток всем!

Вот и настал очередной этап рассказать о моем проекте и куда в итоге он меня привел. Предыдущие мои публикации по данной теме можно найти в моем профиле. С момента последней публикации прошло 7 лет, за это время произошло очень много всего, как вокруг моей разработки, так и того, чему она стала инициатором. После выпуска 2-й версии системы в 2017-м году, она достаточно успешно показала себя в нескольких крупных внедрениях. Объем поддержки и разработки системы ощутимо вырос и стал достаточно много требовать моего личного времени. Кроме того – меня пригласил один крупный холдинг создать им некую отраслевую скада—систему, поэтому времени на свое хобби, в рамках которого так и продолжал развиваться мой проект, стало не очень много. Поэтому в 2020-м году я объявил в кругах АСУТП, что буду не против дать проекту возможность встать на коммерческие рельсы. Неспешно пошли предложения, и также не спешно шел процесс их обсуждений и анализа продукта заинтересованными сторонами. В конечном итоге, на меня вышла группа ИТ-компаний, которые очень заинтересовались продуктом и возможностью диверсифицировать с его помощью бизнес еще и на рынок АСУТП. Так в июле 2022-го года родилась компания-вендор, в основу которой вошла интеллектуальная база проекта с исходным кодом 2-й версии моей разработки. Я вошел в состав ее учредителей и сейчас занимаю должность технического директора компании. За полтора года была сформирована отличная команда: разработчиков, инженеров и менеджеров. Первоочередной задачей, которая была поставлена перед нами – было создание новой версии скады, которая бы удовлетворяла текущим тенденциям и ситуациям, которые происходили в это самое время. А события, как вы понимаете, в этот период сыпались как из рога изобилия, и с каждым из них мы всей командой все больше понимали, что именно сейчас мы делаем то, что нужно нашему рынку автоматизации и это то, что нужно уже сейчас. Насколько у нас это получилось – теперь можно будет оценить, ведь буквально в начале февраля этого года мы выпустили официальный первый релиз нашего нового продукта: SCADA+ 3.0! И выпущен он уже компанией-вендором, которая теперь специализируется на его разработке, поддержке и сопровождении.

Система стала мультиплатформенной. Причем, под этим понимается не то, что многие вендоры скада заявляют как поддержку различных платформ своим продуктом, когда под каждую платформу они выпускают отдельный продукт, работающий только под эту платформу: отдельные продукты под ОС Winodws и отдельные под ОС Linux. Мультиплатформенность нашей системы означает то, что у нас один и тот же набор бинарников работает под тремя различными ОС: Windows, Linux и MacOS. Нет отдельных модулей и версий под конкретную ОС, одна версия запускается и работает под всеми тремя этими типами ОС. Для разработчиков прикладных проектов это: единая среда разработки, единое ядро и графический движок, который не будет давать неприятных нюансов при использовании разнородных модулей под разными ОС и платформами. А также простой перенос системы и прикладного проекта между этими ОС без специальных процедур конвертации. С некоторыми вендорами отечественных ОС Linux мы даже получили сертификаты соответствия, среди них: ОС Astra Linux, Атлант и РЕД ОС.

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

Рис.01: Мультиоконный интерфейс среды разработчика
Рис.01: Мультиоконный интерфейс среды разработчика
Рис.02: Мультиоконный интерфейс среды разработчика
Рис.02: Мультиоконный интерфейс среды разработчика

Политика распространения продукта сохранила идеологию, которая следует с самой первой версии скады: Среда разработчика – полностью бесплатный продукт, который не имеет ограничений по функционалу и не имеет привязок к рабочему месту разработчика. По сути, это портируемая версия ПО, которую можно использовать на неограниченном количестве рабочих мест, а еще проще – просто держать с собой на флэшке всегда под рукой, ведь сам продукт не имеет инсталляции, просто копируй и работай на любом ПК, с любой ОС из поддерживаемых системой. И максимальная минимизация прайс-листа на исполнительные модули, по сути их только два типа, с градацией по объемам лицензируемых параметров: для рантаймов общего назначения – это количество параметров, а для сетевых рантаймов (в основном предназначенных для организации рабочих мест оперативного персонала) – по количеству этих рабочих мест. Нет делений и опций по функциям и другим категориям, которые зачастую создают очень мудреный квест для конечных пользователей, выбирающих решение под свои задачи. Все функции включены в продукт по-умолчанию, нет необходимости долго собирать пазл из функционала по прайсу, чтобы получить то, что необходимо для решения базовых задач.

Система сохранила идеологию: единый инструмент для задач любых масштабов. Внутренняя архитектура была переработана под работу с информационными структурами от десятка до сотен миллионов параметров. И это потребовало значительных усилий по доработке многих средств работы с деревом проекта таких масштабов без потерь в производительности для разработчика. Это не просто заявление, что мы можем создать проект на несколько миллионов точек ввода/вывода, в нашем случае мы больше акцентируем на том, что наша система даст адекватную производительность при работе с проектом таких объемов без заметной просадки в ней в отличии от проекта на сотню точек ввода-вывода. И этим на практике могут похвастаться не все, большинство ограничиваются только заявлениями, основанными на заложенных в архитектуре индексаторах компонентов, не более. При этом SCADA+ сохраняет вполне адекватные требования к аппаратуре и оперативной памяти для работы с проектами таких масштабов.

Для 3-й версии SCADA+ был разработан новый графический движок, который учитывает мультиплатформенное применение и работу с многомониторными решениями для рабочих мест и организации видеостен в диспетчерских для вывода графической информации в прикладном проекте. Графика прошла очень кропотливую оптимизацию для увеличения скорости ее обновления в реальном времени, по сравнению со 2-й версией производительность по тестам показала увеличение скорости в десятки раз, что отразилось также на времени ее загрузки и занимаемой оперативной памяти в процессе выполнения в рантайме. Сам графический редактор включил в себя много удобств, которые были позаимствованы на основе опыта многих современных векторных редакторов графики и САПР-систем, наиболее распространенных среди пользователей подобных решений. И конечно же функция масштабирования графики как в режиме разработки, так и в исполнительной системе, чтобы адекватно адаптироваться под различные размеры мониторов без модификации экранных форм проекта.

Рис.03: Внешний вид графического редактора мнемосхем в среде разработчика
Рис.03: Внешний вид графического редактора мнемосхем в среде разработчика

Встроенный механизм работы с графическими компонентами – позволяет формировать на базе штатных графических примитивов сложные графические элементы с анимацией и интерактивностью. Правка компонента в библиотеке автоматически может быть применена ко всем его реализациям на всех экранах проекта.

Рис.04: Навигатор компонентов пользовательской графической библиотеки
Рис.04: Навигатор компонентов пользовательской графической библиотеки
Рис.05: Навигатор компонентов пользовательской графической библиотеки
Рис.05: Навигатор компонентов пользовательской графической библиотеки

Кроме компонентов библиотеки поддерживают стили. Стили позволят быстро сменить общий внешний вид проекта через правку этих стилей в библиотеке без кропотливой правки всех графических элементов на всех экранах прикладного проекта.

Переработан WYSIWYG-редактор визуальных алгоритмов FBD. Расширен функционал отладки FBD-программ. Редактор C#-алгоритмов получил возможность подключения NuGet-пакетов.

Рис.06: Внешний вид визуального редактора алгоритмов FBD (Functional Block Diagram)
Рис.06: Внешний вид визуального редактора алгоритмов FBD (Functional Block Diagram)
Рис.07: Внешний вид редактора алгоритмов на языке C#
Рис.07: Внешний вид редактора алгоритмов на языке C#

Основное внимание мы стараемся уделять именно скорости разработки прикладных проектов. Поэтому система получила очень удобные механизмы тиражирования наработок и сохранения их в файлы, из которых удобно формировать библиотеки компонентов проекта по всем уровням – от оборудования до графики и информационных структур. Также мы не забыли и о командной работе над прикладным проектом группой инженеров. Архитектура проекта была серьезно проработана с точки зрения совместимости с профессиональными системами репозиториев. Уже сейчас все наши текущие работы над проектами как внутри компании, так и совместно с интеграторами ведутся с использованием системы Git. Это очень упрощает версионирование проекта, а также слияние результатов труда каждого инженера в единый прикладной проект.

В среду разработки встроен функционал удаленного обновления и управления работой исполнительных модулей. Теперь разработчик прикладного проекта может выполнять все процедуры по обновлению проекта на узлах системы и их рестарта без непосредственного нахождения на этих рабочих местах, прямо из среды разработки по сети Ethernet. А встроенный отладчик в среду разработчика позволяет подключиться в режиме он-лайн к работающим узлам проекта и в непрерывном режиме контролировать и управлять всеми параметрами системы в ручном режиме. Эти функции особенно полезны при работе с ПЛК, которые с недавнего времени поддерживают сквозное программирование прямо из SCADA+. В связи с уходом с нашего рынка импортных решений по программированию ПЛК, эта ниша активно начинает заниматься вендорами отечественных скада-систем. Мы не стали исключением и сейчас активно ведем интеграцию российских ПЛК в нашу скада-систему. В новом релизе уже есть поддержка двух вендоров ПЛК и теперь этот успешный опыт мы продолжаем развивать в отношении других отечественных вендоров, которые решили заручиться поддержкой в нашей SCADA+.  Таким образом наша скада становится по сути готовым инструментом РСУ в руках разработчика прикладного проекта автоматизации и значительно сокращает процесс наладки и сопровождения проекта с распределенной архитектурой.

Рис.08: Панель удаленного управления рантаймами исполнительной системы
Рис.08: Панель удаленного управления рантаймами исполнительной системы
Рис.09: Окно удаленного отладчика, встроенного в среду разработки
Рис.09: Окно удаленного отладчика, встроенного в среду разработки

Очень интересным решением для прикладной разработки будет поддержка комплексного шаблонирования моделей в прикладном проекте SCADA+. Этот механизм позволит прикладному разработчику создавать проект на основе готовых моделей, которые подразумевают готовый элемент проекта, состоящий из экранных форм, алгоритмов, описателей оборудования и протоколов, с которыми эта модель связана, а также всей внутренней обвязкой информационной структуры. Комплексное шаблонирование позволяет использовать уже созданные модели как составные элементы структуры более сложных моделей, то есть - неограниченная вложенность моделей друг в друга. Таким образом, при должной типизации проекта, его построение фактически может быть сведено к построению всей АСУТП предприятия на основе таких моделей от простого к сложному, а внесение изменений в однотипные реализации моделей будет затрагивать только саму модель, а изменения всех ее реализаций в логической инфраструктуре проекта будет применяться автоматически. Это дает колоссальную скорость прикладной разработки, а формирование собственных библиотек таких моделей позволит в дальнейшем также значительно сократить разработку в тех решениях, где применяется похожая модель оборудования, или агрегата. По сути получаем своеобразный Лего-конструктор, где базовые детали создаются в виде моделей, из них могут быть созданы более сложные конструкции, из которых будет в итоге создана финальная структура всей АСУТП.

Рис.10: Комплексное шаблонирование в прикладном проекте на основе моделей объектов и агрегатов
Рис.10: Комплексное шаблонирование в прикладном проекте на основе моделей объектов и агрегатов

Конечно же мы как практикующий вендор оказываем нашим интеграторам поддержку в разработке реальных проектов. В данный момент в работе два крупных проекта по автоматизации ЦОД: один на 500 стоек, а второй на 1200 стоек. Разработка проекта на 500 стоек с подготовкой к испытаниям прямо на объекте, у компании интегратора, заняла всего три недели работы небольшой команды инженеров! Неплохой показатель для системы почти на 100 тысяч параметров. Этим летом в г.Москва был введен в эксплуатацию уже второй ЦОД на базе SCADA+ на 1200 стоек. Примечательно, что этот проект прошел успешную приемку комиссией «Uptime Institute».  Проект уже введен в эксплуатацию и получил очень хороший фидбэк от инженеров по эксплуатации, которые отмечают очень высокую скорость и стабильность работы SCADA+ по сравнении с аналогичными системами на западных брендах скада, с которыми до этого пришлось работать службе эксплуатации на аналогичных объектах ЦОД. Для статистики: в этом проекте сейчас примерно 350.000 параметров, около 18.000 графических экранов и около 1.900 алгоритмов, а также 4.500 устройств по протоколам ModBus и SNMP, и все это обрабатывается одним сервером под управлением нашей SCADA+ 3-й версии. И это пока еще не окончательные цифры, потому как проект вышел на второй этап реализации, который подразумевает почти двухкратное его увеличение. Обратная связь с инженерами, работающими на нашей системе уже сейчас, очень хорошо помогает нам дополнять продукт необходимыми сервисами, а также проверять работу и нагрузку на систему на реальных данных, а не искусственных тестах, которые не всегда дают адекватную картину.

Для желающих вживую увидеть на основные функции системы и работу в ней – мы приглашаем на наши периодические вэбинары. Запись одного из них можно посмотреть по здесь: Romer на RUTUBE: 4 видео – смотреть онлайн и бесплатно (35330645)

А всех желающих опробовать наше новое решение в работе – прошу обращаться через наш сайт www.scadaplus.ru для заказа версии разработчика.

Для программистов наиболее интересным будет наш опыт работы с библиотекой AvaloniaUI, именно она была выбрана для реализации данного проекта и позволила нам достичь всех необходимых нам характеристик. Надо сказать, что было немного боязно переходить на не совсем еще настолько известное решение на тот момент. Но, в целом результат превзошел все наши ожидания и могу сказать, что AvaloniaUI себя очень хорошо показала в работе. Наш продукт стал одним из немногих масштабных программных продуктов на данной бибилиотеке, который достаточно серьезно использует ее возможности, а также очень крупным и высокопроизводительным решением на ее базе. Огромное спасибо ее разработчикам, а также сообществу – мы постоянно были на связи, и вполне оперативно решаем возникающие в процессе разработки вопросы, связанные с ней. Очень рекомендуем это решение для тех, кто ищет именно мультиплатформу и хороший GUI для своих разработок!

Вот так, обычный домашний пет-проект за эти годы вырос в серьезный и успешный коммерческий продукт, благодаря которому, теперь на Российском рынке ПО для автоматизации появился еще один вендор, который вполне успешно составляет конкуренцию не только отечественным брендам, но и вытесняет западные решения, предлагая уникальный, мощный и быстрый инструмент для инженеров! Хобби стало бизнесом, собравшим очень уникальную команду. Надеюсь, что этот пример будет вполне хорошим мотиватором для тех, кто не только мечтает, но и что-то делает, несмотря ни на что, чтобы создать себе свою личную работу мечты.

Спасибо всем за уделяемое моим опусам время, внимание и обратную связь!

Комментарии (25)


  1. freebsdmry
    12.12.2024 09:59

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


  1. CyberexTech
    12.12.2024 09:59

    Круто! Очень круто! Вам очень повезло, что на ваш pet-проект обратили внимание. Обычно подобные проекты так и остаются в статусе "Just for fun", а руководство компании, в которой вы работаете, смотрит на подобные проекты с пренебрежением. Работая ведущим инженером АСУ ТП, я пытался реализовать собственную SCADA, но без поддержки со стороны руководства или иных заинтересованных лиц эта затея просто не имеет смысла.


  1. aborouhin
    12.12.2024 09:59

    И максимальная минимизация прайс-листа на исполнительные модули

    Но сам этот прайс-лист, мы, конечно, на сайт не выложим... :( Если цена у Вас привлекательнее конкурентов - чего стесняться-то? Даже МастерСкада, которая стóит аки чугунный мост (по меркам микробизнеса, конечно), прайс публикует. Даже Ignition, который стóит как комплект чугунных мостов, можно купить онлайн...

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

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


    1. Romer Автор
      12.12.2024 09:59

      Да, к сожалению, сайт пока не поспевает. Как коммерческий продукт, система существует пока меньше года. Прайс открыт и он отправляется вместе с дистрибутивом и прочими материалами.

      Насчет сбора обратной связи - очень неудобно вести бизнес с анонимами. Честно это или нет, мнение субъективное, но, нам интересна обратная связь, а не работа с вакуумом. Не стоит равнять всех по некоторым неудачным опытам со спамом.

      По поводу сравнительных таблиц - есть нюанс: такое никто не делает на широкие массы и есть ряд причин почему. Во-первых - это нечестно относительно конкурентов, потому как данные обзоры обычно могут быть составлены так, что дадут больше плюсов в заинтересованную сторону и вообще не будут отражать реальной картины. По сути, зачастую это маркетинговая уловка, не более. Во-вторых - если ты вендор своего продукта, то в сторонних не являешься абсолютным гуру и не всегда знаешь нюансы этих продуктов, чтобы прописывать то, что не получилось именно у тебя, как достоинство твоей системы. Это зачастую может быть больше твой фейл, а не проблема стороннего решения. А обывательские взгляды поверхностно - извините, это дилетантство. Не очень хочется портить репутацию только потому, что очень хотелось быть лучше. Любой продукт познается в сравнении, и большую часть этого сравнения дает его реальное применение на конкретных объектах, а вот эта практика у нас есть и есть ее реальные примеры, которые мы приводим, но она не наша, а именно наших интеграторов, которые перешли к нам с других скада-систем. Этика - вещь тонкая, и она влияет на репутацию. Проще соблюдать первое, чтобы не потерять навсегда второе. )


      1. aborouhin
        12.12.2024 09:59

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

        Вот есть Ваш конкурент - Simple SCADA. В отличие от той же Мастерскады, вполне в мой микробизнесовый бюджет проходит, документация по всем фичам открыта, на выбор без регистрации две демки (или ограниченная по функциям, или ограниченная по времени), и полный прайс, включая доп. опции. Ну идеально же (если бы оно ещё под Linux не через одно место (Wine :) работало... но это уже не к сайту вопрос, а к самомý продукту).

        А Ваш продукт, если бы я натолкнулся на него до этого поста (кстати, не натолкнулся, хотя целенаправленно искал, так что с поисковой оптимизацией тоже надо что-то поделать), я бы просто пропустил - ни по фичам ничего не понятно, ни по ценам - следующий. Сейчас вот отправил форму на демку, раз уж тут прочитал и даже в дискуссию ввязался :) Хорошо хоть в графе телефон прочерк прокатывает :)

        Я допускаю, что Вам интереснее один раз продать Газпрому, чем тысячу раз мелкому клиенту - таковы текущие реалии, увы. Но тогда честным было бы прямо это обозначить, мол минимальный заказ от N млн.₽, проходите мимо :)


        1. Romer Автор
          12.12.2024 09:59

          Соглашусь, мы сейчас не известны (буквально осенью на ПТА в Новосибирске 99% подходящих к стенду начинали с фразы "Что-то мы про вас ничего не слышали"). И большая часть текущих наших интеграторов по проектам пришла к нам с других систем по одной причине: нам говорили, что они могут такой объем окучить, а реально даже половину не потянули. Не хватает запаса мощности у систем, потому что их проектировали не автоматчики, а программисты. И текущая наша ниша - реально очень высоконагруженные системы, которые раньше могли окучить только западные или европейские бренды, а Российских на такие задачи нет. Реальность такова, что пришло время менять импортное на наше, а аналогов , которые способны - нет. Что поделать, никто у нас не думал о ситуации, которая сейчас сложилась. А я 10 лет почти ходил и говорил, показывал, но все крутили пальцем у виска и уповали на то, что есть Сименс, Шнайдер и другие и куда тебе с ними тягаться.))

          Банальный пример - я могу ответственно заявить, что по сетевому обмену мы уделаем любой западный бренд в десятки раз! И это реальность, которую мы можем показать на полигоне, реальным примером. Все, что заявляется другими системами - так и остается заявлениями, реально они это не тянут, маркетинг свой хлеб отрабатывает, они так и выживали. Например, тот проект ЦОДа, что я упомянул в статье на 1200 стоек и 4500 единиц оборудования у нас заведен на ОДИН сервер и дает динамику в 1.5-2 секунды на все оборудование! А там Modbus и SNMP. А аналогичный проект один в один, но на другом серьезном Российском бренде смог хоть как-то выйти на показатели в 5 раз хуже только когда они разбили эту задачу аж на 9 хостов. Знаем мы это не потому, что сами его испытывали, а потому, что служба эксплуатации и там и там оказалась одна и та же и нам это их инженеры рассказали на своем опыте эксплуатации этих объектов. Но, мы же не будем это в таблицы на сайт вешать.

          А проект на 500 стоек - на Мастерскаде ребята делали 2 года, и смогли запустить только половину. После прихода к нам за 5 дней курсов и 3 недель на объекте они его сдали в эксплуатацию, и сейчас приняли решение, заменить МС на нашу систему на остальных объектах, потому что умеют считать затраты, а не по таблицам функционал сравнивать. У нас за этот год накопилось очень много подобных практических примеров, но их никто не будет оформлять в таблицы и вешать на сайт.

          Поисковой оптимизацией мы занялись недавно, где-то три недели назад.) Да, не до того было, своих задач хватало по текущим проектам. Ничего, вытянем. Именно поэтому - любая обратная связь это то, что идет в улучшение контура управления.)) Классика ТАУ рулит на всех уровнях, а не только технологией.)

          Насчет "микропроектов", дождитесь прайса, который вам пришлют по запросу - возможно он будет вам интересен. Не берусь утверждать за это, но, мы открыты для диалога и текущий прайс - это всего лишь старт для такого диалога. Мы - стараемся быть гибкими, насколько - уже решите сами по результатам оного.


          1. aborouhin
            12.12.2024 09:59

            Рассказы о масштабировании впечатляют, тут искренне рад за Вас. У меня даже в самых оптимистичных сценариях на ближайшую пятилетку больше 1000 тегов не появится. И внедрять систему не интегратору, не штатному асутпшнику и даже не привлеченому спецу, а лично мне как владельцу бизнеса с гуманитарным образованием в перерыве между другими задачами...

            Глянул на "взрослые" системы (мне и зарубежная ОК, чай не госкомпания) - ценник неподъёмный. У более дешёвых то одного нет, то другого (как у той же Simple SCADA с их Wine), то она ещё и страшна как смертный грех (Каскад). Опенсорс глянул прямо вдумчиво, почти всё что нашёл, установил и погонял (FUXA, RapidSCADA, Scada-LTS). Но там надо поседеть, пока все глюки поборешь при почти полном отсутствии документации. Сейчас в стадии "плюнуть на всё и сделать SCADA из Grafana (там внезапно появился canvas, на базе которого можно нарисовать HMI-визуализацию и дёргать REST API) + Node-Red (на базе которого можно реализовать этот REST API)". Но не оставляю надежду, что можно этот гвоздь забить более подходящим микроскопом :)


            1. Romer Автор
              12.12.2024 09:59

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


          1. scada_user
            12.12.2024 09:59

            При правильном подходе в МС проект на 500 типовых стоек можно сделать быстрее чем за 3 недели) Сложность возникает не в количестве, а в зоопарке оборудования. Пока для меня именно МС показатель, другие не рассматриваю, либо очень дорого, либо не все можно реализовать. Мне очень импонирует вектор развития вашего проекта, я считаю его правильным. Прайс не нужен, а вот кусочек видео - режима исполнения боевой системы, хотя бы на 10 тысяч точек было бы очень интересно посмотреть, и все бы вопросы отпали) причем не через толстый клиент, а через браузер)


            1. Romer Автор
              12.12.2024 09:59

              Ну вот у ребят почему-то не получилось, даже не смотря на то, что "зоопарк" оборудования только по двум протоколам был: ModBus и SNMP. И ребята не новички, у них за плечами более 15 лет разработок на ряде скада-систем (как отечественных, так и зарубежных) вполне серьезных проектов и им есть с чем сравнить.

              На проект на 10тыс точек в браузере и я бы хотел посмотреть. Потому что с точки зрения программиста я понимаю, насколько он будет там прожорлив до памяти, процессора и неповоротлив по динамике. Все почему-то уцепились за вэб как за волшебную таблетку, но этот хайп на самом деле таковым вообще не является и с ростом объемов в геометрической прогрессии выжирает ресурсы и просаживается по динамике только в путь.

              Я с Аблиным Ильей по МС общался, когда он 4D только начинал проектировать - говорил ему, что его идея вообще полного отказа от нативного рантайма на клиентах не взлетит, потому что это игрушка для маркетинга, реального применения в промке оно не найдет именно из-за прожорливости и медлительности, плюсом сюда еще и ворох проблем по ИБ можно притянуть на браузер. И что, видим ровно то, о чем я ему и говорил - они покувыркались с вэбом и в итоге взяли рантайм 3-й версии и дописали его под 4-ю, а вэб ушел по сути в опцию.


              1. aborouhin
                12.12.2024 09:59

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

                Зато с веб-доступом я могу хоть на каждом углу развесить копеечные планшеты на Андроиде, запустив на них браузер в режиме киоска с актуальным для этого места дашбордом (печально, правда, когда на каждый такой планшет клиентскую лицензию дороже самого планшета покупать приходится...) И возможность использования неквалифицированным пользователем (условный гастарбайтер, который за компьютером-то в жизни не сидел никогда, но ему на месте на наглядной картинке должно показывать, что где не так и куда бежать проверять/чинить). Ну и доступ с мобильных устройств, куда без этого (на месте-то у нас только тот самый гастарбайтер, если проблема выше его уровня - надо подключаться хоть с Луны). Это всё про реалии малого бизнеса...


                1. Romer Автор
                  12.12.2024 09:59

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


                  1. aborouhin
                    12.12.2024 09:59

                    Ну я не про видеопоток, конечно, а про server-side rendering в устоявшемся смысле этого слова, когда на сервере генерится HTML с минимальной работой JS на клиентской стороне.

                    У Вас вот Avalonia, которую браузеру только в виде WebAssembly можно скормить - а это прямо противоположная история, всё на клиента. А если брать Blazor - то пожалуйста, SSR в нескольких вариантах на выбор.


              1. scada_user
                12.12.2024 09:59

                Я переживал насчет МС, как раз насчет скорости обратной связи клиента визуализации через браузер, потому что знаю, что мгновенная ситуативность очень важна для критической инфраструктуры, и потому что служба эксплуатации очень любит использовать браузер ( вопрос ИБ остается актуален, но как правило это находится в изолированном сегменте). И мои опасения развеялись, когда я сделал проект на 5к точек(да это не 100к точек, но тем не менее), чего нельзя было добиться от именитых проприетарных собратьев МС.

                Еще очень важным моментом для меня является то, что БД рабочего проекта МС сжимается в архиве до 20 метров)


                1. Romer Автор
                  12.12.2024 09:59

                  А как у вас получалось проект на 5к точек в МС сжимать до 20 метров? Нам тут один клиент показывал свой проект по ОВК на MS4D на 3к параметров, у него на диске этот проект занимал 1.5Гига. А ребята, которые ЦОД на 500 стоек делали в MS4D, говорили, что их проект в районе 25Гигабайт занимал. Что-то не получается у меня соотнести эти показатели.


                  1. scada_user
                    12.12.2024 09:59

                    БД рабочего проекта в формате .FBD весит в районе 1,5 Гб, речь про zip архив, БД спокойно сжимается и хранится в облаке в виде архива, а потом в другом месте распаковывается без потерь.

                    Также размер БД очень сильно зависит от правильного подхода при проектировании своих сущностей в проекте и их масштабировании.

                    Так бывает, что создатель не всегда догадывается какого зверя он создал)) например при создании рабочего проекта в ПО Iconics Genesis 64 было выявлено метом «тыка» много вещей - «не баг, а фича», о которых техподдержка даже не догадывалась. МС в этом плане не исключение, есть несколько хитростей о которых узнаешь только когда протыкаешь несколько ночей)


                    1. Romer Автор
                      12.12.2024 09:59

                      Я вот сейчас посмотрел специально проект ЦОДа в нашей скада на 1200 стоек. В нем: 16300 экранных форм, 4500 устройств, 1900 алгоритмов, два сервера в горячем резерве, 5 АРМов. В архиве ZIP он занимает 33Мб, в распакованном виде он занимает 317Мб, причем формат нашего проекта - чистый XML.


                      1. scada_user
                        12.12.2024 09:59

                        Это супер! У меня есть среда разработки scada+, скоро доберутся руки, с удовольствием поизучаю, дружба с гитом уже хороший плюс. Спасибо за обратную связь)


    1. Ailuropoda_M
      12.12.2024 09:59

      ни таблички сравнения с конкурентами

      Вы же понимаете, что это как минимум неэтично, а как максимум грозит юридическими разбирательствами?


      1. aborouhin
        12.12.2024 09:59

        Вот не стал отвечать @Romerна это возражение, т.к. в моём комментарии это был второстепенный вопрос, но поскольку он второй раз поднимается - отвечу.

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

        Ещё лучше, конечно, когда такую табличку составляет некий независимый ресурс на основании объективного сравнения, но применительно к рынку SCADA-систем что-то я ничего даже близкого к всестороннему сравнительному обзору всех основных продуктов не находил, хоть с табличкой, хоть без.


        1. Romer Автор
          12.12.2024 09:59

          Потому и не находили, что чтобы такое составить - нужно досконально владеть всеми продуктами, которые будут в обзоре. Причем знания должны быть именно на уровне вендора, а не обычного инженера, который пару раз сталкивался с продуктом. Что-то я не уверен, что такое вообще существуют в природе.

          На практике такое составляет именно потребитель, когда выбирает для своих задач скаду - он составляет опросный лист, в котором сосредоточен перечень функций, который интересует именно его и этот опросник направляется всем вендорам. Мы часто такие заполняем в запросах от клиентов. Результаты уже объединяет для себя клиент в общую сводную таблицу и проводит анализ и формирует решение по выбору. В такой форме - это этично и юридически грамотно, потому что оценку проводит каждый вендор только своего продукта, а не "левый псевдоспециалист по всем продуктам".


          1. aborouhin
            12.12.2024 09:59

            Это опять что-то на богатом :) Мне со своим бюджетом на систему плюс-минус 50 т.р. точно было бы неэтично доставать вендоров заполнением табличек. Я хочу просто самостоятельно, ни с кем не общаясь, сравнить характеристики/цены, выбрать, заплатить и точно так же ни с кем не общаясь ковыряться дальше. Денег я принесу вендору немного, ну так и затрат на меня никаких.

            P.S. Кстати, Ваша демо с прайсом так и не пришла по сделанной вчера заявке. Ну ладно контакты собираете - Вы что, ещё и вручную заявки рассматривате? Видимо, строгую проверку на право узнать что-то о Вашем продукте я не прошёл :) Ну ОК.


            1. Romer Автор
              12.12.2024 09:59

              Это не на богатом, а на адекватном.

              С заявками на дистрибутив - сами понимаете, Хабраэффект он такой, после публикации пришло много обращений, ведется обработка.


              1. aborouhin
                12.12.2024 09:59

                Мне такой подход, конечно, не понять никогда. Ну хотите собрать базу лидов для CRM - ОК, сделайте скрипт, который контакты в базу заносит и на почту тут же присылает ссылку на демо. Но прямо вручную обрабатывать? Ради чего?

                И что, по Вашему мнению, адекватно? Пока не вырос до масштаба, когда можешь себе позволить выделенного сотрудника, который вот этим всем только и занимается и может хоть неделю таблички рассылать и с вендорами разговоры вести, - крути задвижки вручную и контролируй климат по ртутным термометрам?

                Я понимаю, что структура нашей экономики с дикой централизацией всего, что ещё хоть как-то умудряется выживать, и дикой же долей государственного присутствия, где деньги не свои, что их считать, способствует такому подходу - мол, будем настраиваться на работу с интеграторами, которые работают с закупщиками, которые работают с департаментом АСУ ТП с тремя уровнями начальства... А тем временем тот же Ignition с его немалой долей мирового рынка внезапно выпускает даже бесплатную версию для хоббийного (!) использования (Maker Edition) И её я установил себе примерно через полчаса после того, как узнал про её существование.


                1. Romer Автор
                  12.12.2024 09:59

                  Да, мы пока еще в начальной стадии, когда у нас с людьми работают люди. Когда достигнем "немалой доли мирового рынка" и поток ежедневных обращений будет такой, что с ним люди не будут справляться, тогда будем переводить этот процесс на скрипты. Хабраэффект - явление разовое, это не будничная норма, и большинство тех, кто обратился, это понимают.

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