Построение человекомашинных интерфейсов на базе технологии Adobe Flash Инженер отдела сервисов SWD SoftwareЭдуард Белохвостиков
Flash Lite в разработках HMI РазвитыйинструментарийСоздание богатойграфики и анимацииCообществоразработчиковРазработан длявстраиваемых устройств
Почему Adobe Flash? Flash – широкораспространенный стандарт Flash плеер установлен на:99.3% всех интернет-пользователей настольных систем*Более чем 1 миллион графических дизайнеров во всем миреFlash реализует обещание Java«Пишем один раз, используем везде»:Нет проблемы зависимости классовКонтент, разработанный для Веб или ПК, работает во встраиваемых устройствах без необходимости измененияВстраиваемые FlashLite плееры используют меньше памяти и предоставляют быструю отрисовкуFlash – идеал для построенияпользовательского интерфейса:Изначально графическийИспользуется дизайнерами для взаимодействия с пользователями
Adobe Flash во встраиваемых системах Миллиард устройств в 2009 годуболее 400 моделей
Характеристики технологии Adobe Flash В разработке используется“шкала времени”Скорость анимации можнозадавать числом кадров в секундуШкала времениуправляет процессом анимацииДля реализации действий в сценарии используется язык ActionScript 2.0Похож на язык JavaScriptК объектам применяется процесс "сборки мусора"Исполнение реализовано одним потокомКодирование производится в среде RADДействия ассоциируются с событиямиКод может быть "разбросан" по всей модели
Как разрабатывать Flash HMI? Графический способШкала времениСозданная графика и ActionScript смешиваются вместе в традиционныхдля Flash “Шкалах времени”Окончательный .swf генерируется в CS3/4/5Программный способГрафические ресурсысоздаются в Adobe CS3/4/5AS3 выносится в отдельные файлыFlash Develop соединяет графические ресурсы из swf с кодом AS3
Интеграция Flash HMI ОС ASE (Action Script Extentions) – расширения, которые написаны на С++ и представляют Flash классPPS (Persistent Publish/Subscribe) – предоставляет данные Flash класса для QNX без использования бинарного кода
Композитный менеджер HMI Объединение контентаFlash работает как “Менеджер окон”Базируется на стандартахAction Script, OpenGL, OpenVG, OpenKode, HTML, JavaScript, POSIX
Flash Flash Lite 3Аппаратное ускорение OpenVG (на поддерживаемых платформах)Поддержка ActionScript2ОтладкаX-RayFlash/РасширенияБраузер (Webkit)Воспроизведение видео и аудиоСервис публикации подписки (PPS)Доступ к встраиваемой БД (SQLite)прочее….ОСРВ QNXПолный HMI фрэймворкПриложения, виджеты, сервисы...Эталонные приложенияYoutube, аудио и видео плеер, браузер, погода
Flash Lite во встраиваемых системах Adobe Flash Lite 3Оптимизированнаяреализация Flash-плеераСпециализированный для встраиваемых системСистемные требования32-bit, 200MHz380KB размер плеера (без видеокодеков)ОЗУ:Для HMI: 4-6MBДля контента: 2-4MB (исключая видео)Для браузера: 32MBПреимуществаИспользование Web/desktop Flash контента в мобильных устройствах с минимальными усилиямиВекторный тип графики приспосабливается к различным разрешениям экрана без потери качестваВекторная графика позволяет создавать маленькие по размеру файлы контента (по сравнениюс растровой графикой)
Webkit и Мультимедиа WebkitПоддержка HTML5Включая язык для работы с видео, аудио, геолокации и т.д.Использование стандарта Skia для 2D графикиТекущая версия Webkit 525; обновляется до версии 533Улучшены компоненты пользовательского интерфейсаВысокопроизводительное панаромирование и масштабированиеМультимедиаПроигрывание аудио и видеоСинхронизация и управление метаданнымиПоддержка аппаратных кодековВоспроизведение видеофайлов и потокового видео
Архитектура QNX HMI
Persistent Publish Subscribe (PPS) Подписчик и сервер публикацииМогут не знать о существовании друг друга во время компиляцииМожет быть динамически замененМожет иметь отношения: один-к-одному, многие-к-одному, многие-ко-многимМожет не использовать прямые вызовы API; доступн всем языкам, скриптам, оболочкамМожет быть на разных языках, использоваться в виртуальных машинах и “песочницах”Асинхронны друг от другаСервер публикацииМожет настраиваться, как сохранять данныеПубликация “по требованию”Может сохранять данные между перезагрузкамиПодписчикУведомляется при изменении данныхНет непрерывного опроса (блокировка до обновления данных)Может получать уведомления при изменениях в дереве публикаций
Процессорные ресурсы QNX обеспечивает:изоляция приложений и сервисов ОС, посредством механизма сообщенийзащита памяти для безопасности и надежности
Адаптивная декомпозиция Под максимальной загрузкой процессорное время гарантируется разделуДинамическое выделение процессорных ресурсов
QNX CAR
QNX CAR
Smart Energy
Конфигурация оборудования
Smart Energy – программная архитектура
HVAC
HVAC
HVAC
Архитектура демострационного примера HVAC
Спасибо за внимание! Инженер отдела сервисов SWD SoftwareЭдуард Белохвостиков