Tibbo aggregate что это
О компании
Компания Tibbo Systems — ведущий российский разработчик программного обеспечения для систем управления и мониторинга. Мы оказываем услуги по внедрению, сопровождению и доработке ПО и программно-аппаратных комплексов, созданных на базе платформы Tibbo AggreGate. Основанная в 2001 году, Tibbo Systems занимается разработкой как самой IoT-платформы AggreGate, так и производных продуктов для различных вертикальных рынков. Основа штата компании — профессиональные разработчики ПО и инженеры по ИТ-инфраструктурам, АСУ ТП и автоматизации зданий, системам физической безопасности и другим областям Интернета вещей.
Компания Tibbo Technology — производитель программируемых встраиваемых модулей и контроллеров для систем автоматизации. Предложенная нами модульная система управления Tibbo Project System (TPS), представляющая из себя конструктор на основе миниатюрных модулей ввода-вывода Tibbits, получила широкую огласку благодаря гибкости архитектуры и привлекательному внешнему виду. Последний заработал компании награду на конкурсе дизайна RedDot.
Головной офис Tibbo Technology находится в Тайбэе (Тайвань). Одним из принципов компании является размещение производства исключительно на Тайване, что обеспечивает высокое и постоянное качество сборки.
В партнерскую сеть Tibbo входят дистрибуторы, OEM-производители и системные интеграторы из более чем 50 стран мира.
ТЕХНОЛОГИИ, ИНЖИНИРИНГ, ИННОВАЦИИ
Измеритель диаметра, измеритель эксцентриситета, автоматизация, ГИС, моделирование, разработка программного обеспечения и электроники, БИМ
Tibbo AggreGate – российская интеграционная платформа для промышленного Интернета вещей
Итак, цифровая платформа – это прежде всего нижнеуровневый программный продукт, на который наслаиваются другие решения, в том числе MES, SCADA, ERP. Платформа предполагает единую архитектуру и глобальность, и промышленное производство – лишь малая часть того, что способна охватить цифровая платформа. Энергетика, умные города, здравоохранение, телекоммуникации, транспорт и логистика, госуслуги, сельское хозяйство, финансы и страхование – только представьте, что всем этим можно управлять и пользоваться на основе одного универсального программного продукта. «Tibbo AggreGate» – российская интеграционная платформа для Интернета вещей, созданная компанией «Tibbo Systems».
На базе платформы можно собирать и анализировать огромные массивы данных, прогнозировать различные сценарии развития, используя принципы искусственного интеллекта, а также писать программные продукты верхнего уровня. Генеральный директор «Tibbo Systems» Виктор Поляков в интервью «Умпро» рассказал о программных продуктах компании и ожиданиях от развития цифры в российской экономике.
Не только оптимизация работы станков
– Пожалуйста, расскажите подробнее о вашем продукте – платформе Tibbo AggreGate. Какие российские промышленные компании строят на ее основе свои бизнес-процессы? И какой получают эффект?
– На самом деле рассматривать цифровую платформу только в рамках промышленного производства, машиностроения, в отрыве от других сфер применения – не совсем правильно. У нас, к примеру, есть солидный заказчик – крупный агрохолдинг «Русагро», один из лидеров по выращиванию и переработке сахарной свеклы. «Tibbo Systems» построила для него полный цикл проектов, начиная с полевых работ – выращивание, сбор и хранение урожая, и заканчивая оптимизацией процессов переработки урожая. В данный момент мы реализуем подобные комплексные проекты для крупнейших компаний в сферах промышленности, энергетики, телекоммуникаций, нефтегазовой и авиакосмической отрасли. Наша задача здесь – внедрить продукт, который будет иметь весьма косвенное отношение к производству в конкретных подразделениях корпорации. С АСУТП и АСУД, установленных на различных объектах, мы будем получать и обрабатывать некоторое количество выбранных «тегов». Будем их нормализовать, то есть приводить к единой форме, отвечать за надежную транспортировку, хранение в новом типе облачной архитектуры Data Lake. И уже потом, на федеральной площадке, далеко от производств, находящихся в разных в регионах, мы запустим алгоритмы машинного обучения.
Сегодня российская промышленность и ее кураторы еще не до конца разобрались в том, что такое IoT-платформа в промышленности. Поэтому нас и других вендоров, так или иначе связанных с производством и внедрением цифровых решений, пригласили на совещание в департамент станкостроения и инвестиционного машиностроения Минпромторга РФ. И в ходе обсуждения его повестки мы убедились, что платформа для Интернета вещей воспринимается многими как продукт, функции и возможности которого ограничиваются оптимизацией работы станков. Есть множество решений, в том числе российских, по мониторингу оборудования, повышению его производительности, но их нельзя называть платформами, это лишь обычные отраслевые продукты. Платформа «Tibbo AggreGate» совершенно иная по своему потенциалу, возможностям, идеологии. «Tibbo AggreGate» – нижнеуровневая инфраструктура, позволяющая решать разные задачи и в рамках машиностроительного предприятия и не только.
Конкретно станками с ЧПУ и производственными линиями на их основе занимается наш турецкий партнер EnAutomation.
На основе платформы «Tibbo AggreGate» он написал ряд программных продуктов для крупнейшего эксплуатанта станков и роботов «Fanuc» в Турции – компании «Tezmaksan». Соответственно от каждого успешного внедрения их софта мы получаем прибыль. Вообще, подобная практика у нас распространена, например, известная московская инжиниринговая компания использовала платформу «Tibbo AggreGate» в качестве основы для системы управления SMT-линиями, то есть линиями поверхностного монтажа печатных плат. А итальянский партнер создал на основе нашей платформы MES-систему для повышения эффективности упаковочных линий. Это всего лишь несколько примеров использования «Tibbo AggreGate» в качестве основы для узких утилитарных решений в промышленности.
Но смысл в том, что завтра концепции управления предприятиями, да и целыми отраслями существенно изменятся. Так вот, функционал «Tibbo AggreGate» выходит далеко за пределы Интернета вещей, платформа создана для цифровых производств будущего. И потому мы рассчитываем на ее востребованность у крупнейших отечественных высокотехнологичных корпораций, таких, как, например, ОАК или Северсталь.
Кроме того, наша платформа замещает импортные аналоги, например, дорогостоящий американский продукт OSIsoft «PI System». Эту платформу активно используют нефтегазовые, энергетические и производственные компании. Сейчас «Tibbo Systems» строит технологическую шину для компании «Транснефтьэнерго» в рамках реализации аналогичного по сути проекта. Ее использование позволяет передавать, хранить и анализировать информацию с сотен станций и десятков региональных управлений на облачном сервисе. Представьте: более 1 млн. метрик технологических процессов и ИТ оборудования, из которых экономическое значение представляет лишь небольшая часть, и именно эти теги затем доставляются в облако. К слову, заказчики из нефтегазового сегмента у нас одни из самых активных. Только со структурами Газпрома у компании «Tibbo Systems» как минимум десяток точек соприкосновения.
На полях «Топ-20» рейтинга
– Вы внедрили платформу «Tibbo AggreGate» в структуру предприятия, а что дальше?
– Далее заменяем локальные системы управления и мониторинга, если архитектура платформы и условных приложений – подконтрольного софта не синхронизируется. Если платформа и подконтрольные программы «подружились», то можно оставить старый софт, у тех же станков «Fanuc» есть прекрасная управляющая программа, но мы должны встать над ней, чтобы полностью контролировать процесс. Опять же «Tibbo AggreGate» – главный босс (Manager of Managers), который на кросс-системном уровне управляет и мониторит не датчики, не исполнительные механизмы, а MES, SCADA, ERP, системы мониторинга и управления ИТ-инфраструктурой, системы СМИС, СКУД и т.д. Конечно, все данные необходимо сохранять, и при этом они сильно отличаются по структуре: временные ряды, топологии сетей или однолинейных схем, ресурсно-сервисные модели и т.д. В этом вся суть. И если разобраться, то, кроме заумных терминов, в нашей платформе нет ничего относящегося к конкретной задаче по станкам, транспорту и всему остальному. Основной принцип «Tibbo AggreGate» – универсализм нижнеуровневой системы. Собрать данные можно локальными устройствами, но проанализировать те же временные ряды, выявить аномалии (погрешности, флуктуации) и, наконец, предсказать будущее можно только на основе платформы.
In-memory база данных «Tibbo AggreGate» позволяет смотреть данные в различных разрезах и, соответственно, применять алгоритмы машинного обучения. Например, при анализе турбоагрегата по десяти ключевым параметрам можно определить, что начинает развиваться негативный техпроцесс, способный привести к аварии. Ведь трагедия на Саяно-Шушенской ГЭС – наглядный пример, подтверждающий, что большой сложной системе необходима цифровая платформа. Высококвалифицированные операторы круглосуточно смотрели на мнемосхемы, но в итоге не смогли однозначно идентифицировать патологический процесс. Потому что отклонения по каждой конкретной цифре не были критичными. А при комплексном анализе показателей техногенную катастрофу удалось бы предотвратить.
– На тот момент времени в России уже были системы мониторинга ГЭС?
– Их и сейчас почти нет. Проблема еще и в том, что на многих ГЭС турбины мощностью от 50 МВт – сплошь импортные. Они произведены компаниями «Siemens», «Mitsubishi Heavy Industries», «General Electric», находятся на внешнем управлении и скиды-вают телеметрические данные на иностранные площадки. Но тут основная проблема даже не в сборе информации, а в контроле. Можно вспомнить слова некоторых пессимистически настроенных экспертов об уничтожении российской экономики с помощью нажатия нескольких кнопок. Сценарий маловероятный, но теоретически вывести из строя работающие на наших площадках импортные станки, турбины и другое умное оборудование для тех же зарубежных производителей вполне возможно. В связи с этим энергетические компании пытаются запустить процесс по переводу турбин на местное управление и предсказательное ТО. Они обращались к нам по поводу платформы, но опять же, управляющую программу к импортным турбоагрегатам никто в стране написать не может, во многом из-за того, что российские турбины такого уровня попросту не производятся.
– Софт верхнего и нижнего уровня, платформа и утилитарная система. Неспециалисту легко запутаться в причинно-следственных связях…
– Все можно объяснить на простых примерах. В смартфонах есть операционная система «IOS» или «Android», но этого недостаточно для полноценной работы: нужны приложения. Так вот «Tibbo AggreGate» – операционная система для цифровых предприятий, на которую сверху устанавливаются приложения. Повторюсь, приложения для ГЭС в России никто не пишет, но подобные программы есть у наших зарубежных партнеров. Наш партнер берет платформу «Tibbo AggreGate» бесплатно, создает свое локальное ИТ-приложение, и мы получаем прибыль от каждой успешной инсталляции. Все по аналогии с приложениями для «Android» на Google Play.
– Назовите основных конкурентов платформы Tibbo AggreGate. Чем они сильны?
– Мы уже говорили о том, что существует некий терминологический диссонанс в трактовке отраслевых решений и действительно цифровых платформ. Тот же АИС «Диспетчер» некоторые называют платформой для умного производства, но опять же это не тяжелый нижнеуровневый софт, а прекрасное конкретное коробочное решение, подходящее для дискретного производства (станкостроения, машиностроения и т.д.). Непрерывное, например, химическое производство с бесконечными трубопроводами и резервуарами этой системе, скорее всего, не по профилю. Дискретное производство очень сильно отличается от непрерывного, а если взять область автоматизации зданий, или, к примеру, ритейл, то там задачи цифровизации совершенно иные, там другие протоколы. И мы на своей платформе должны стараться решать разные задачи, иначе какая эта цифровая платформа! По своим возможностям «Tibbo AggreGate» конкурирует на равных с такими известными брендами, как «Predix» от GE и «ThingWorx» от РТС. А если нашу платформу развернуть в облаке, то ее функционал и возможности схожи с «IBM Watson», «Google Cloud Platform», «Microsoft Azure IoT», «Amazon IoT Services». Можно сказать без преувеличения, что по уровню технологий мы не уступаем компаниям из топ-20 рейтинга платформ для Интернета вещей. Однако на мировом рынке российских ИТ-производителей не ждут с распростертыми объятиями, явно ощущается предвзятое к нам отношение.
– Может ли ваша компания предоставить не платформу целиком, а конкретные отраслевые решения?
– Да, такие решения есть. Они созданы нами самостоятельно и сов-местно с партнерами. «AggreGate Network Manager» – система управления ИТ-инфраструктурами, предназначенная для комплексного мониторинга сетей, центров обработки данных (ЦОД), трафика, производительности, маршрутизаторов, серверов, приложений и сервисов, а также различных датчиков. Система конкурирует на рынке с продуктами компаний «НР», «Microsoft» и «IBM». Автоматизацию производственных процессов на предприятии можно выстроить с помощью «AggreGate SCADA/HMI». Драйверы для большинства стандартных протоколов, таких, как Modbus и OPC, позволяют подключать контроллеры и устройства тысяч различных производителей. Управление ситуациями и инцидентами, автоматизация зданий, система физического контроля доступа в здание, учет рабочего времени работников предприятий, считывание показаний счетчиков и т.д. В общем, решений для вертикальных рынков верхнеуровневого софта у «Tibbo Systems» предостаточно. И разумеется, мы ведем разработки новых локальных продуктов на основе нашей платформы.
– Кто является партнерами «Tibbo Systems»?
– Наших российских и зарубежных партнеров можно условно разделить на несколько категорий. Федеральные и региональные системные интеграторы, реализующие сложные проекты, например, «Крок» и «Inline Group». Инжиниринговые компании, занимающиеся автоматизацией производств и инфраструктурными проектами. Партнеры из телекоммуникационного рынка, специализирующиеся на создании облачных сервисов. Также можно выделить ОЕМ компании – производителей систем мониторинга, использующих наш софт при упаковке своего продукта. Нашими партнерами можно назвать даже банки и сотовых операторов. На одном мебельном заводе «Tibbo Systems» налаживает систему мониторинга залоговых активов, т.е. показывает банку, как эксплуатируются станки, переданные предприятию в лизинг.
IoT: об особенностях внутривидовой борьбы
– Как, на ваш взгляд, будет развиваться рынок IoT платформ в будущем?
– Через 20-30 лет на всех предприятиях будет установлена единая платформа. Зоопарк из суперсложных систем невозможен. Взгляните на рынок операционных систем для компьютеров и смартфонов: «Linux», «Windows», «IOS», «Android» – и все. Современная операционная система слишком сложна и зависима от экосистемы высококлас-сных специалистов. Рано или поздно все разработчики уходят туда, где им удобнее, сытнее. Абсолютно по тем же сценариям развиваются и цифровые платформы. Скорее всего, на рынке останутся «IBM», «Google», «Microsoft» и несколько вендоров поменьше. ИТ развиваются так быстро, что в скором времени большинство людей на планете не смогут понимать даже элементарных принципов работы новых устройств и алгоритмов. К сожалению, не всем даны эрудиция и возможность получить профильное образование. Это как изу-чать труды о теории относительности: прочитал умную статью, кажется, все понял, но уже через несколько минут приходит осознание того, что удержать в голове основной пласт информации не получается.
Мы сами прекрасно понимаем, что «Tibbo Systems» развивается самостоятельно до определенного размера. Далее – фондовые рынки, IPO: банкротимся или выживаем и превращаемся в серьезного мирового игрока. Можно, конечно, работать только в России в узких сегментах, но опять же, не хочется зарывать такую платформу, как «Tibbo AggreGate», в землю. Ведь на ее разработку ушли годы.
– Вы упомянули о предвзятом отношении зарубежных компаний к российскому ИТ-бизнесу. Неужели отечественные вендоры не смогут превратиться в глобального игрока без иностранного покровительства и ребрендинга?
– Печальный опыт показывает, что компаниям с российской штаб-квартирой приходится очень сложно на мировых рынках. Например, Австрия, Швейцария активно привлекают специалистов ИТ-индустрии под свое крыло. Им вполне хватает 3% от прибыли «IBM», «Google», и других фирм, чтобы кормить всю страну. Сначала альпийцы активно зазывали банки, а теперь привлекают хайтек.
– Если оставить за скобками внешнеэкономическую номенклатуру и говорить про перспективы ИТ компаний в России: насколько плодородна для них наша почва?
– На начальных стадиях создать компанию легко. В этом отношении у России колоссальный потенциал, в том числе в интеллектуальном плане. Возникают интересные идеи, перерастающие потом в стартапы. Народ учится коммерциализации своих ноу- хау. Но есть планка в 2% от мирового ВВП, после достижения которой каждая российская компания должна решать: оставаться здесь и бороться за Индию и Иран или замахнуться на мировой рынок. Мне проще, потому что еще в 2002 году я написал свой первый код на английском языке и начал сотрудничать с партнерами из Тайваня. Если хочешь бороться за мировой рынок, начинай делать все на английском: от программ, до документации и маркетинга. Но опять же, нельзя забывать пресловутый политический фактор. Правда, некоторые ИТ-компании научились маскироваться под иностранцев и продавать свои разработки через онлайн-сервисы. С одной стороны, подобные примеры радуют и вдохновляют, но в целом не позволяют России заявить о себе на мировом рынке. Нетрудно построить «Google» в Сингапуре, Англии, США, Швейцарии. А вот в России…
– Так что нужно для создания русского «Google»?
– Главное – дружелюбие. Чтобы инвесторы воспринимали страну комфортной для себя. Посмотрите на Сингапур – государство в несколько квадратных километров. Но туда столько вкладывают, что на эти деньги всю поверхность страны можно выложить золотом, включая дно бассейнов.
Автор: Павел Кириллов
Источник: http://www.umpro.ru/
Понравилась статья? Тогда поддержите нас, поделитесь с друзьями и заглядывайте по рекламным ссылкам!
Отрасли
Организации в различных отраслях ежедневно пользуются продуктами на основе AggreGate, чтобы упростить ИТ-задачи, сократить расходы и автоматизировать бизнес.
AggreGate соединяет ваши интеллектуальные устройства с предприятием, самостоятельно решая огромное количество задач по управлению и визуализации, часто заменяя инструменты бизнес-аналитики. И, конечно, он предоставляет актуальные данные до и во время их обработки.
Неважно, какой бизнес вы представляете, IoT-платформа AggreGate нацелена на повышение удовлетворённости конечных клиентов и предоставление разнообразных преимуществ.
Платформа AggreGate и другие продукты на её основе предлагают комплексные решения для различных вертикальных рынков:
Сельское хозяйство
Мониторинг автотранспорта и сельскохозяйственной спецтехники, управление технологическими процессами, сортировкой, хранением и переработкой сырья
Финансы и страхование
Мониторинг и управление корпоративной ИТ-инфраструктурой и приложениями масштаба предприятия
Государственные органы
Зонтичный ситуационный центр для сервисов электронного правительства и ИТ-инфраструктуры государственных органов
Здравоохранение и социальная сфера
Удалённое обслуживание медицинского оборудования, автоматизация ИТ и управление соответствием стандартам
Поставщики управляемых услуг
Управление центрами обработки данных и визуализация сложных бизнес-сервисов
Производство
Промышленная автоматизация для таких отраслей промышленности, как автомобилестроение, еда и напитки, упаковка и других специализированных производств
Производители оборудования
Ребрендирование продукта по мониторингу и управлению устройствами с быстрым выходом на рынок
Нефтегазовая отрасль
От централизованного контроля нефтехимического завода до удаленной телеметрии оборудования насосно-компрессорной станции
Фармацевтика и биотехнологии
Промышленная автоматизация и управление технологическими процессами нового поколения
Энергетика
SCADA для производства и распределения электроэнергии, в том числе электрических, ветряных и солнечных сетей
Оптовая и розничная торговля
Управление ИТ-инфраструктурой и централизованная автоматизация склада из единого центра управления
Умные города
Управление интеллектуальными системами в масштабах города. Автоматизация муниципальных зданий и сооружений, включая управление электроэнергией, освещением, кондиционированием и отоплением, физической и пожарной безопасностью, IT-инфраструктурой
Телекоммуникации
Мониторинг и управление сетевым трафиком, WAN-каналами, VoIP, IPTV, 4G/LTE, 5G, радио / беспроводными сетями, состоянием центра управления, оборудованием ИБП и многим другим
Транспорт и логистика
Облачное управление автопарком, интегрированное с мониторингом бизнес-услуг
Коммунальные компании
Контроль водоочистки, удаленный мониторинг оборудования, а также автоматическое считывание счётчиков
Концепция Tibbo AggreGate – платформы для Интернета вещей
Развитие Интернет быстро достигает уровня, когда он «просто есть». Нам все чаще не приходится задумываться, как именно мы сейчас подключены к сети, кто наш оператор связи, и, тем более, как подключение организовано технически. Повсеместное проникновение беспроводных сетей и постепенное распространение IPv6 позволяет тысячам простых устройств и датчиков беспрерывно общаться друг с другом и отправлять свои данные «в облако». Быстрое усложнение инфраструктуры привело к замене термина «Машина-к-машине» (Machine-to-Machine, M2M) на более актуальный термин «Интернет вещей» (Internet of things, IoT).
Формируя что-то вроде распределенного интеллекта, устройства Интернета вещей тем не менее нуждаются в централизованном управлении, в системе или сервисе для их настройки, хранения и интерпретации собранных данных. Являясь центральным «мозгом» инфраструктуры облака устройств, система управления также пополняет машинные базы знаний подключенных устройств и обновляет их программное обеспечение.
Операторы изучают агрегированные по группам устройств и временным периодам данные, визуализируя их в различных разрезах. Эти же данные передаются для более детального анализа в различные системы класса Business Intelligence. Любопытно, что даже если речь идет об персональных устройствах (например, фитнес-трекерах), мало какой оператор облачного сервиса отказывает себе в возможности проведения анонимного анализа статистики использования и использования собранных данных для дальнейшего совершенствования устройств и сервисов.
Разработка устройств для Интернета вещей постоянно упрощается и становится все дешевле, позволяя небольшим компаниям входить на этот рынок. Осознавая необходимость создания управляющей системы, многие компании недооценивают сложность ее разработки, не принимают во внимание необходимость использования промышленных серверных технологий (таких как кластеризация для обеспечения отказоустойчивости или мульти-серверная распределенная архитектура). Часто разработка начинается собственными силами, “in house”. Успех выпущенных IoT устройств на рынке приводит к быстрому росту числа пользователей, создавая не решаемые быстро проблемы с масштабированием сервиса и обеспечением его производительности.
Опасаясь дальнейших проблем и не имея возможности быстро создать отдел разработки серверного ПО, IoT-операторы часто отдают разработку центральной системы на аутсорсинг, концентрируясь на самих устройствах. Но и это не решает проблемы – сторонние разработчики точно так же начинают создание системы с нуля и не имеют достаточных ресурсов и времени для внедрения в ее основу серьезных технологий.
Наша платформа AggreGate родилась в 2002-м году. В те годы мы активно занимались производством конвертеров Serial-over-IP, и нам нужен был некий центральный сервер, передающий данные между конвертерами, спрятанными за файрволлами или NAT и не имеющими возможности пообщаться напрямую. Первая версия продукта называлась LinkServer, была написана на C++ и доступна только как сервис. LinkServer просто прокачивал через себя потоки данных без какой-либо обработки.
Немного позднее наши конвертеры превратились в свободно-программируемые контроллеры. Они стали «понимать» проходящие через них данные и возникло логичное желание научить центральный сервер тому же самому. Примерно в это же время мы осознали, что 90 процентов работы по созданию системы мониторинга и управления устройствами для любой отрасли являются «изобретением велосипеда», и лишь небольшое количество усилий тратится на уникальные для конкретного бизнеса задачи.
В 2004-м году система была портирована на Java с этого момента развивалась как «фреймворк для управления устройствами». Несколько лет мы двигались практически вслепую, не до конца понимая, что именно хотим получить в результате. К великому счастью нам удалось избежать монозаказчиков, не уйти «с головой» в какую-то определенную индустрию и сохранить универсальность системы.
Сейчас платформа применяется в разных областях, таких как удаленный мониторинг и обслуживание, управление ИТ-инфраструктурами и мониторинг сетей, СКАДА и автоматизация технологических процессов, контроль физического доступа, автоматизация зданий, управление транспортным парком, управление торговыми и платежными автоматами, мониторинг сенсорных сетей, подсчет посетителей и автомобилей, централизованное управление событиями и инцидентами, управление рекламными и информационными панелями и управление мобильными устройствами.
Основные задачи платформы
Образно говоря, AggreGate – это конструктор «Лего» для быстрого создания интерфейсов к облаку устройств. Позволяя архитекторам IoT-решения больше концентрироваться на оборудовании и «бизнес –логике», она решает инфраструктурные задач:
Объединение систем
Являясь универсальной, платформа помогает объединять различные системы мониторинга и управления. Это позволяет избежать лишних точек интеграции и снизить количество интеграционных сценариев. Например, объединенная система мониторинга имеет единственную точку интеграции с системой Service Desk/ITSM/Maintenance Management для доставки инцидентов (тревог), а также единую интеграцию с системой Inventory/Asset Management для получения информации об имеющихся физических активах и степени их влияния на бизнес-сервисы.
Организация ролевого доступа позволяет в таких случаях обеспечить разным департаментам индивидуальные сценарии использования системы и уникальность операторского интерфейса.
Архитектура платформы
Основными компонентами платформы являются:
Сервер заведует чтением данных из устройств и записью изменений, этот процесс называется двухсторонней синхронизацией. На стороне сервера создается так называемый снимок устройства содержащий копии последних значений метрик устройства и изменения, произведенные операторами и системными модулями и не записанные в устройство из-за отсутствия связи. Изменения конфигурации доставляются в устройства по принципу первой возможности, позволяя производить групповые изменения конфигурации устройств не дожидаясь их одновременного появления онлайн.
Сервер также обеспечивает прием и обслуживание входящих соединений устройств, не имеющих статических «белых» IP адресов. Эта возможность является важной для IoT платформы.
Данные и события устройств становятся частью единой модели данных. В рамках этой модели, каждое устройство представлено так называемым контекстом, являющимся частью иерархической структуры контекстов. Каждый контекст включает формализованные элементы данных трех типов: переменные (свойства, настройки, атрибуты), функции (методы, операции), и события (оповещения). Контекст также содержит метаданные, описывающие все имеющиеся элементы. Таким образом, все данные и метаданные контекста полностью сосредоточены внутри него самого. Эта технология называется нормализацией устройств. Нормализованная презентация различных типов устройств создается драйверами устройств и агентами.
Можно провести параллели с объектно-ориентированным программированием, где объекты также предоставляют свойства, методы и события. Свойства – это внутренние переменные устройства, методы – это операции, которые оно может выполнять, а события – это способ устройства оповестить сервер об изменениях внутренних данных или внешней среды.
Практически каждое устройство может быть описано набором свойств, методов и событий. Например, дистанционно-контролируемый резервуар для воды может иметь свойство “уровень воды”, а также методы “открыть задвижку” и “закрыть задвижку” для контроля поступления жидкости. Интеллектуальный резервуар может также генерировать оповещения, например “практически пустой”, “практически полный”, и “переполнение”. Мы разработали более ста драйверов коммуникационных протоколов на Java и идея нормализации доказала свою состоятельность. Более того, многие современные «универсальные» протоколы (такие как OPC UA, JMX или WMI) используют очень похожие модели данных.
Все контексты сервера располагаются в иерархической структуре под названием контекстное дерево. Несмотря на то, что контексты соответствуют разным объектам (устройствам, пользователям, отчетам, тревогам и т.д.), все они имеют общий интерфейс и могут взаимодействовать внутри контекстного дерева сервера, обеспечивая высокий уровень гибкости. Тот же принцип позволяет различным серверам взаимодействовать друг с другом в рамках распределенной инсталляции.
Каждое подключенное устройство позволяет операторам производить прямую настройку (чтение и редактирование конфигурации устройства), прямое управление (ручное форсирование выполнения устройством различных операций) и прямой мониторинг (просмотр поступающих от устройства событий в логе в режиме псевдо-реального времени).
События и изменения значений метрик устройств сохраняются в хранилище сервера. В зависимости от задачи системы это может быть хранилище различных типов. Например, в случае микро-сервера работающего внутри Raspberry Pi используется простейшее файловое хранилище, а центральный сервер большой распределенной инсталляции может использовать кластер NoSQL-баз Apache Cassandra, обеспечивая сохранение десятков тысяч событий в секунду из прореженного оригинального потока в несколько сотен тысяч событий в секунду.
Тем не менее, в большинстве случаев в качестве хранилища используется обычная реляционная база данных. Использование ORM-прослойки (Hibernate) обеспечивает совместимость с MySQL, Oracle, Microsoft SQL Server, PostgreSQL и другими СУБД.
Получаемые из устройств данные и события влияют на жизненный цикл «активных» объектов сервера, позволяя ему реагировать на изменения внешней среды. К числу активных объектов относятся:
Активные объекты могут добавлять в единую модель данных новые типы переменных, функций и событий, обеспечивать отправку в хранилище изменений пользовательских переменных и событий, а также вызывать в автоматизированном режиме операции устройств и других объектов.
Для создания форм ввода данных, таблиц, динамических карт, графиков и мнемосхем существуют виджеты. Их можно объединять в инструментальные панели, как глобальные, показывающие состояние всей инфраструктуры и опирающиеся на агрегированные KPI, так и «объектовые», отображающие состояние одного устройства или компонента инфраструктуры.
Виджеты и шаблоны отчетов редактируются в специализированных визуальных редакторах, являющихся частью платформы и тесно интегрированных в ее экосистему. Редактор виджетов позволяет строить сложные интерфейсы состоящие из множества вложенных панелей-контейнеров с располагающимися в них визуальными компонентами. В дополнение к абсолютному позиционированию, типичному для используемых в SCADA-системах редакторах, можно использовать сеточную раскладку, знакомую всем, кто сталкивался с редактированием таблиц внутри HTML-страничек. Сеточная раскладка позволяет создавать формы ввода данных и таблицы, аккуратно масштабируемые под любой размер экрана.
В результате, операторский интерфейс первой или второй линии, разработанный визуально при помощи инструментария для визуализации данных, состоит из инструментальных панелей с виджетами, формами, таблицами, диаграммами, отчетами, мнемосхемами и навигацией между ними.
Редактор интерфейсов позволяет использовать десятки готовых компонентов, таких как надписи, текстовые поля, кнопки, чекбоксы, слайдеры и спиннеры, списки, селекторы даты/времени, шкалы и указатели. Есть и более сложные компоненты, такие как деревья, видео-окна, динамические векторные SVG изображения, географические карты на основе Google Maps/Bing/Yandex/OpenStreetMap. Список типов поддерживаемых диаграмм включает как классические типа графиков, так и различные статистические графики, диаграммы Ганта, и графики в полярных координатах.
Все нарисованные в редакторе виджеты работают в веб-версии интерфейса, в том числе в браузерах без поддержки Java, т.е. на мобильных устройствах. Требуется лишь поддержка HTML5 и JavaScript.
Свойства серверных объектов (устройств, моделей, тревог) и компонентов пользовательского интерфейса соединяются друг с другом при помощи привязок, определяющих когда и откуда нужно взять данные, каким образом их обработать, и куда поместить результат. Обрабатывая данные, привязки используют язык выражений и язык запросов.
Привязка, использующая выражение, похожа на формулу в Microsoft Excel. Формула берет данные из нескольких ячеек, применяет к ним математические операции или различные функции по обработке данных, и кладет результат в текущую ячейку. Выражение также является формулой, описывающей откуда нужно взять данные и какие преобразования нужно к ним применить.
Язык запросов очень похож на обычный SQL. Он также позволяет объединять данные из различных таблиц в одну, применяя к ним фильтрацию, сортировку, группировку, и т.д. Отличие встроенного языка запросов от классического SQL в том, что вместо обычных таблиц источниками данных выступают виртуальные таблицы, формируемые «на лету» из различных данных единой модели. Любой запрос также автоматически учитывает права доступа выполняющего его оператора или системного объекта, что выгодно отличает его от прямого SQL запроса к базе данных сервера.
Для решения наиболее сложных задач по обработке данных можно написать скрипт на Java или даже отдельный плагин. Однако каждый написанный кем-то из партнеров скрипт для обработки данных является для нас тревожным звоночком – зачем нужна платформа, если все равно требуется классическая разработка, да еще и вне привычной среды (такой как Eclipse или Idea)?
Отдельно хочется рассказать про техническое устройство распределенной архитектуры. В рамках этой концепции настраиваются пиринговые отношения между серверами таким образом, что один сервер («поставщик») присоединяет часть своей единой модели данных к другому серверу («потребителю»). Это позволяет объектам сервера-потребителя взаимодействовать с объектами сервера-поставщика наравне со своими собственными. Количество связей одного сервера не ограничено, причем он может одновременно выступать поставщиком и потребителем по отношению к своим соседям.
Распределенная архитектура позволяет решать многие задачи больших систем:
Этот пост — наш дебют на хабре. В следующих статьях мы планируем рассказать побольше о внутреннем устройстве платформы, наших собственных решениях, созданных на ее основе, а также нашем представлении о том, как «тяжелый PCшный софт» будет пробираться внутрь встраиваемых систем и устройств Интернета вещей.