Как я СКАДу писал. Часть шестая

    И снова, здравствуйте!

    Предыдущая (и перед ней) публикация(и) доступны здесь: habrahabr.ru/post/175559

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

    Последний год выдался очень напряженным и богатым на события… Но, обо всем по-порядку.


    1. Автоматизированная система управления электротехническим оборудованием электростанции собственных нужд.
    Объем сигналов: 5500 точек ввода/вывода

    Ссылка на подробную информацию по проекту

    В одной из публикаций уже кратко затрагивал этот проект. Его особенностью стало то, что именно с него в моей скаде появилась подсистема автоматической генерации информационной базы проекта на основе структурированных табличных данных из ТЗ (в основном таблиц сигналов, или перечней параметров).
    Подсистема очень сильно оправдала себя не один раз в последующих внедрениях, и была очень сильно доработана, чтобы обеспечить гибкость адаптации под любые форматы документов ТЗ, которые получает разработчик в качестве исходных данных по проекту.

    Система успешно функционирует уже 2-й год на объекте. В прошлом году прошла успешную сдачу в промышленную эксплуатацию.

    2. АСУ Энергоснабжением технологического объекта
    Объем сигналов: 8500 точек ввода/вывода

    Ссылка на подробную информацию по проекту

    Данный проект, наверное единственный из всех внедрений, который прошел очень серьезную проверку очень серьезной комиссии. Я даже немного горд за такой результат, потому что до меня такую комиссию с подобным решением смогли успешно пройти только две компании: Сименс и Шнайдер, а теперь вот и я. Скромно так…

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

    3. АСУ Энергоснабжением газоперекачивающей станции
    Объем сигналов: 3000 точек ввода/вывода

    Ссылка на подробную информацию по проекту

    Очень похожий проект на предыдущее внедрение. В принципе он и был сделан с оглядкой на него и по успешным результатам предыдущего внедрения.
    Просто ситуация как всегда оказалась банальной: брендовая скада, которую применили изначально на этом объекте, после года танцев с ней была отбракована комиссией еще на этапе попытки сдачи в опытную эксплуатацию по причине того, что чуть ли не на 50% не удовлетворяет требованиям отрасли. После кучи серьезных заседаний по вопросу «что делать?», пришли в итоге ко мне с фразой «Рома, выручай!»… В общем итоге — один мой инженер за 3 месяца на объекте смог с нуля разработать и запустить данный проект, а также сдать его в опытную эксплуатацию вообще без единого замечания комиссии. В одиночку… В этом году (спустя год работы в опытной эксплуатации) система прошла уже приемку комиссией в промышленную эксплуатацию, и опять же без единого замечания. Было очень показательно, особенно в сравнении с результатами по срокам и качеству, которые до этого показал «серьезный» бренд…

    4. АСУ Газопоршневой энергетической установки (2МВт)
    Объем сигналов: 1500 точек ввода/вывода

    Ссылка на подробную информацию по проекту

    Изначально данный проект планировалось делать на InTouch, потому что инженеры до этого работали на этой скаде. Однако, оценив объем работ и сроки, не получалось уложиться в отведенный период. Оценка разработки в InTouch по срокам была минимум 2 месяца работ, а надо было сделать срочно за 1 месяц максимум. Я же утверждал, что в моей скаде этот проект можно разработать гораздо быстрее даже одного месяца, благодаря встроенной функции автоматического формирования информационной базы проекта по ТЗ. Сначала мне не поверили — поэтому пришлось сделать видеоролик, где на примере первого десятка сигналов из ТЗ наглядно показывалось, как это выглядит. После того как видеоролик был просмотрен работа началась с фразы инженеров «Впечатляет».
    Всего два инженера (один на графике, а второй на информационной структуре проекта) справились с задачей в скаде, которую они вообще впервые в глаза увидели, всего за 20 дней (после трех недель разработки был готовый полнофункциональный прототип проекта для испытаний на полигоне).
    Вот сейчас пишу эти сроки, а у меня за спиной идет обсуждение по телефону работ по ПНР на этом объекте с этим проектом. Надеюсь, что скоро он будет сдан в опытную эксплуатацию.

    5. САУ Газотурбинного агрегата (1.5МВт)
    Объем сигналов: 1500 точек ввода/вывода

    Ссылка на подробную информацию по проекту

    Данный проект появился по результатам выставки, которая проходила весной 2013-го года, куда меня пригласила Питерская компания к себе на стенд. В одной из публикаций я уже освещал данное событие. Ко мне на стенд подошли представители компании, которая занимается разработкой систем автоматизации САУ газотурбинных агрегатов для электростанций собственных нужд. Со слов их технического директора — они уже перепробовали множество западных брендов для данного внедрения, но все они оказываются не конкурентными из-за высокой стоимости ПО. Поэтому они решили попробовать выполнить данный проект на моей скаде. Мои цены их вполне устроили. Сейчас мы ведем совместную доработку проекта перед выполнением ПНР на объекте. Все алгоритмы и логика управления агрегатом выполнены в контроллере на нижнем уровне, который работает под управлением системы CoDeSys, моя скада работает на АРМе и по сути является чистым HMI для данного решения. Никаких серьезных алгоритмов управления нет — только регистрация, обработка (архивирование и журналирование событий), управление и графика.

    Итак, серьезный задел по серьезным внедрениям пройден и по многим вопросам система очень «повзрослела». Иногда, когда демонстрирую ее возможности людям, которые занимаются автоматизацией, в отзыв слышу одну и ту же фразу, которая стала уже практически нарицательной для такого рода действ: «Мы даже и не думали, что у тебя все настолько серьезно...»

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

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

    Share post
    AdBlock has stolen the banner, but banners are not teeth — they will be back

    More
    Ads

    Comments 27

      +1
      Жаль, что я раньше не попал на Ваши статьи, особенно про платформонезависимость. А то бы сразу предложил Вам делать программу на Qt… Она компилируется под разные настольные платформы, графика куда лучше реализована, чем в GDI+ (сравнивал сам — небо и земля!), очень хорошие средства для работы с сетью и БД… Короче, сказка!
        +3
        Если я не ошибаюсь, использование Qt — это жестко С++, а у меня C#. До С++ я конкретно не дотягивал еще когда начинал, да и вряд ли уже когда-то дотяну даже сейчас…
          0
          Ну да, это чисто С++.
          Если у Вас есть интерес, то я могу помочь в этой теме. За подробностями пишите, если что, в «личку»
        +2
        Роман! Ты молодец!
          0
          Это действительно круто, недавно перечитывал все ваши предыдущие статьи.
          Как много нужно иметь запаса энтузиазма чтобы довести это дело даже не то что до конца, а еще и продолжать его!)
          Молодец!
            +1
            На всякий случай скажу, ни в коем случае не «тыкая носом», может вам пригодится: сейчас современны тренд в HMI это «максимально серые экраны» без броских, ярких, цветных элементов. Цветность появляется только при необходимости (алярмах и т.д.). Даже со слов операторов — если пялишься в монитор сутками, то от «попугайчатых» интерфейсов сносит крышу и мигалки свистелки уже просто не замечаешь.
            вот для примера, там есть картинка, вставить не получилось…
            www.allitwares.com/featured_articles2-Best-Practices-in-High-Performance-HMI-Design-1030-1.html

            Я тоже рисовал интерфейсы — куча различных цветов и т.д., «красивые картинки». Да, они лучше «продаются» может быть.
            Но на практике, насколько я знаю, все стараются уходить от этого.
              0
              Спасибо за ссылку. Действительно, тема «юзабилити» в разработке систем АСУ — это серьезный камень преткновения. В большинстве случаев «чувство прекрасного» у матерого инженера немного притупляется, очень редко удается сочетать в себе качество художника и разработчика. В своей новой системе я как раз решил сделать основной упор на то, что задачи необходимо разделять и назрела ситуация, когда разработку интерфейса просто необходимо отдавать в руки профессионала — дизайнера. К сожалению, в современных скада-пакетах очень редко имеются возможности объединения результатов работы дизайнера и разработчика системы АСУ без промежуточных танцев с бубном. Тут или картинку получаешь от дизайнера — и сиди ее рисуй заново вручную в скаде на базе штатных примитивов, либо сажать дизайнера за скаду, чтобы он в ее редакторе правил исходный интерфейс. И в том и в другом случае обоих участников воротит от одной мысли, что это придется делать в неродном редакторе, или неподходящими для этого средствами. Поэтому, сейчас активно работаю над тем, чтобы дизайнер и автоматчик могли работать каждый в своей профессиональной среде разработки, однако результат их труда без промежуточных доработок и компиляций можно и должно было переносить между этими средствами напрямую без потерь в функциональности. На сегодня такие возможности появились, чем я сейчас и пытаюсь пользоваться. Возможно в будущем мы будем иметь достаточно прогрессивные интерфейсы управления даже в обычных системах АСУ, которые сейчас видим только в голливудских фильмах (пусть с напыщенным лоском, но не лишенные толики смысла по части адекватности). Как простейший пример такого взаимодействия — я уже делал простенький видеоролик, где мой прототип нового редактора графики взаимодействует напрямую с профессиональной студией MS Blend: www.youtube.com/watch?v=Y-rzbZ6o3ww
              0
              Интересные вопросы вы вызвали во мне и в моих коллегах, конечно)
              Еще раз скажу, очень классно, круто что вы смогли разработать конечный, РАБОТАЮЩИЙ продукт!
              Расскажите, пожалуйста, если захотите:
              1. Как вы «умудрились» ( в хорошем смысле) убедить заказчиков поставить систему, которую знают, в общем-то, небольшое количетсво человек?
              1.1 Которую разработал «один обычный человек»
              2. Заказчики и вы думали над вопросом, а что они будут делать, если вы перестанете заниматься поддержкй\дальнейшим развитием продукта?..
              3. Как так получилось, что вы смогли сделать быстродействующую, отвечающую требованиям заказчика скаду, а ведущие мировые производители, почему-то не могут? Ну всмысле вопрос не почему у вас одного получается, а у мировых производителей с командами и многолетним опытом — нет?))
              Я без сарказма и скрытых смыслов, действительно интересно.
              Спасибо.
                0
                Мне кажется, мировым производителям мешает бюрократия и узкая направленность специалистов. Там шаг вправо шаг влево считается чуть ли не преступлением, да и люди работают исключительно за деньги а не за идею.
                  0
                  Думаю, как только в команде Романа начнут работать люди за деньги, у продукта будет следующий качественный скачок в ново версии. Так уж сложилось, что продукты за деньги пока преобладают. Не холивара ради.
                  +2
                  1,2) Открою страшную тайну — по большей части заказчику глубоко «фиолетово» на чем и как сделана конечная система. Его волнует только одно — система должна обеспечивать в полном объеме и должном качестве решение тех задач, которые были перед ней поставлены в ТЗ, а также обусловлены требованиями отрасли. Поэтому есть такие понятия — как ввод системы в опытную эксплуатацию, а в последствие и перевод в промышленную эксплуатацию. Сроки наработки системы в эти периоды дают представления о стабильности и качестве работы системы, а также выявляют те дефекты, которые в конечном итоге исполнитель обязан устранить. Проверка же на соответствие требованиям и функциональности выполняется в результате приема систем комиссиями из серьезных дяденек-инженеров согласно утвержденным методикам проведения испытаний. Если система проходит проверки, выполняет все требуемые функции в должном объеме и с должным качеством, а также имеет наработку без серьезных претензий со стороны эксплуатации, тогда оснований на то, чтобы она не имела право на применение — нет, разве что эмоциональные, вроде «разработал один обычный человек», но такие моменты не поднимаются и остаются за кадром. Зачем будоражить психику людей тем, чего они пока не всегда готовы принять. :)
                  Вопрос о применении — из перечисленных мной крупных внедрений только в двух случаях исполнитель сам себя поставил в безвыходную ситуацию, из которой я помог ему выбраться, чтобы он не потерял лицо перед заказчиком. Но эти моменты были решены разово, при этом между мной и руководством исполнителя было заключено «джентельменское соглашение», что я не брошу их и доведу все до логического завершения, а они не «обидят» меня по результатам. В остальных случаях заказчики и исполнители вполне осознанно сами шли на таковой риск, явно выбирая именно мою систему.
                  3) Я не утверждал, что я Д`Артаньян среди абсолютно всех скада-систем, я приводил конкретные примеры, где изначальный выбор решения был не совсем адекватно оценен согласно требований. Да, среди большинства отечественных решений, по многим вещам могу дать фору, однако в некоторых моментах и моя система будет в проигрыше для конкретных применений. В данном случае мне удалось выполнить ряд оптимизаций именно под конкретные требования отраслей, которые игнорируются производителями других скада-систем, потому как они считают их несущественными, или необязательными к исполнению. И не надо забывать о критериях, которые являются первоочередными для заказчика — один из них это соотношение цена/набор возможностей. Если при том же наборе возможностей для решения задачи с него просят стоимость детали от космолета, а в другом случае за те же самые возможности предлагают стоимость гораздо адекватную — заказчик (или исполнитель) будет готов попробовать вариант, который дешевле. Причем, смею заметить — в отличии от большинства брендов, моя среда разработчика абсолютно бесплатна, а этот психологический момент, когда ты не теряешь ничего только за то, что решил опробовать решение — вполне заманчивое предложение. У остальных, с их бесплатными демо-версиями, а также условно-бесплатными на малое количество точек — это все равно что на витрине посмотреть, попробовать что-то серьезное сделать все равно нельзя, а если хочешь — будь добр купи, но за результат все равно никто никогда ответственности не несет, также как и не гарантирует возврат денег в случае, если система не подходит.
                    0
                    По всей видимости, ваш рынок будет системы «малой» и пред-средней автоматизации, с небольшими бюджетами и небольшим (относительно) количеством точек ввода-вывода? Вполне.
                  +1
                  Можете написать (хотя бы примерно) сколько процентов занимает код монитора, сколько код редактора и сколько код самого вычислителя?
                    +2
                    В процентном соотношении оценивать пока не пытался. Сегодня попробую выполнить таковую оценку. Если считать в строках текста, то исходник среды разработчика с его модулями, а также исходник исполнительного модуля системы занимает примерно 500 тыс. строк кода. Из них примерно 350тыс. — среда разработки, и около 150тыс. строк — рантайм. Остальную детализацию дам чуть позже.
                      0
                      И еще небольшой вопрос: а как насчет веб-клиента?)
                      Для систем домашней автоматизации практически нет продуктов, предоставлюящих клиентский доступ через «чистый» веб без плагинов и надстроек)
                      Возможно, это было бы дополнительной нишей, нет? Это было бы классно, недорогой, «русский» продукт.
                        +1
                        В текущей версии штатного решения под WEB нет, однако есть возможность прикручивать собственный, или вообще формировать исходный код страницы алгоритмами в самой скаде. У меня один из клиентов самостоятельно создал систему по контролю газотурбинных агрегатов, информация по генерируемым мощностям формируется в виде несложной HTML-странички и доступна при обращении к рантайму через интернет. Здесь я не выкладывал информацию об этом внедрении, но вот некоторые детали:

                        Газотурбинная электростанция на месторождении Жанажол, Актюбинская
                        область, Казахстан. Scada+ отображает генерацию всех семи
                        газотурбинных установок, общую генерацию и среднечасовой расход газа.
                        Системы автоматического управления оборудованием, выполнены на ПЛК
                        австрийской фирмы Berniecker&Rainer.
                        Ссылка на отчет: 88.204.176.10:8081

                        Перейдя по ссылке (только порт обязательно указав) можно в режиме квази-реального времени наблюдать текущие показания (обновляется каждые 5 секунд). Можно сказать это первое внедрение моей скады с функцией web-доступа. Все реализовано штатными средствами скады, ничего дополнительного. Так что, если поработать над этим вопросом, то его можно решить вполне уже сейчас. Просто пока не возникало таких задач, поэтому не особо акцентировался на этом.
                          0
                          Какой механизм доступа к переменным, какая технология?
                            0
                            Штатный алгоритм проекта садится на данный порт как HTML-слушатель, при получении запроса от браузера — формирует в явном виде текст HTML-страницы, данные берет напрямую из переменных проекта, и выдает эту страницу на запрос. Что-то вроде мини вэб-сервера, с динамическим формированием кода страницы.
                        0
                        Приглашаю всех на стенд нашей компании на предстоящей выставке «ПТА-2014», которая состоится с 7 по 9 октября 2014 года в Москве по адресу: ЦВК «Экспоцентр», павильон 5.
                        На стенде будет демонстрироваться система SCADA+. Можно будет пообщаться с разработчиками и задать свои вопросы, а также попробовать систему в работе.
                        www.pta-expo.ru/news/020914.htm

                        Это будет первый выход моей скады на рынок автоматизации как коммерческого продукта и компании, которая будет заниматься ее разработкой, сопровождением и выполнением проектов на ней.
                          0
                          Это неверноятно круто, успехов вам и вашему продукту!
                            0
                            Спасибо!
                            0
                            Срок выставки подошел, состоялась? будут какие-либо фото/видео?
                              0
                              Готово!
                            0
                            Да, выставка сегодня завершилась, общее впечатление — положительное. Были интересные контакты, многие из них нацелены на плодотворную совместную работу, сейчас по обратной реакции будет понятно, как мы стартанули. Каждый день как минимум 2 человека посещали наш стенд со словами «А, мы вас искали и хотели бы увидеть Романа». :) Спасибо всем, кто пришел, за то, что уделили время и проявляете интерес к моей разработке!
                            Сейчас будем делать выводы на основе полученных данных и опыта, чтобы улучшить в части маркетинга, а также конечно же обсудить планы по развитию, на что именно сейчас стоит нам сделать основной упор в разработке и сопровождении продукта.

                            Ну и немного фотографий с «полей»:
                            На стенде мне очень активно помогала моя жена, за что ей огромное спасибо, люблю ее! Прямо «семейный подряд» организовали. :)

                            Начало монтажа:
                            image

                            Натягиваю баннер:
                            image

                            Внешний вид готового стенда:
                            image

                            Немного крупным планом мое «рукоделие» — демо-стенд, демонстрировал работу скады с оборудованием, в качестве сигналов — распечатки мнемосхем с тумблерами, которыми можно было пощелкать и посмотреть как меняется индикация на экранах АРМа:
                            image

                            Наш «семейный подряд» на рабочем месте:
                            image

                            Вручили диплом участника выставки:
                            image

                            0
                            ага, и я там был :-)
                              0
                              Ура!!! Наконец-то прошли все согласования в ПАО «Газпром» по маркетинговым материалом для презентации системы нашего системного интегратора, который успешно провел в 2015 году испытания и внедрил в эксплуатацию систему линейной телемеханики газопровода на базе моей SCADA+!
                              Теперь информацию по этому решению, а также отзывы компании о системе SCADA+ можно прочитать на сайте скады в разделе внедрений: система линейной телемеханики «ЭЛТА-ТМ.2»

                              Only users with full accounts can post comments. Log in, please.