|
Программная платформа контроллера управления информационным табло
Заказчик
Производитель светодиодных информационных и рекламных табло большого и сверхбольшого размера.
Задача
Создать программную платформу для управления электронным табло высокого разрешения и качества цвета. Кроме того, платформа должна поддерживать в качестве устройства вывода LCD дисплеи с большой диагональю. В состав ПО должен входить эмулятор табло с функцией предварительного просмотра. Необходимо реализовать возможность работы со слоями и видео, а также обеспечить масштабируемость платформы за счет применения ОС Linux.
Решение
Аппаратная платформа
В качестве аппаратной платформой может использоваться любой x86 ПК с рекомендуемым объёмом оперативной памяти от 128 Мб и частотой процессора от 256 МГц, а также видеокартой, поддерживающей framebuffer или DGA (Direct Graphic Access). Аппаратные возможности должны быть достаточными для установки ОС SUSE Linux 10.2.
В качестве устройства вывода могут использоваться как обычный LCD монитор, так и светодиодное табло, подключаемые к стандартному видеовыходу ПК.
Программное обеспечение
Операционной системой, обеспечивающей работу ПО, является SUSE Linux10.2. ОС устанавливается в минимальном достаточном для проекта виде: средства компиляции (gcc) и поддержка режима framebuffer. В пакет прикладного ПО входит специальный инсталлятор, который производит установку необходимых программных библиотек из дистрибутива ОС, а также конфигурирует модули проекта под конкретный компьютер.
ПО позволяет работать с различными разрешениями информационного табло и поддерживает различные цветовые режимы изображения (параметр bpp – bits per pixel).
Интерфейс оператора реализован с применением современных Web-технологий. Под управлением SUSE Linux 10.2 работает Web-сервер, который обеспечивает взаимодействие пользователя через графический Web-интерфейс с внутренними функциями визуализатора.
Основными функциями программного обеспечения являются:
- управление экраном через Web-интерфейс и вывод информации на электронное табло;
- конфигурация контроллера и установка параметров экрана: разрешение светодиодной ячейки, количество ячеек по горизонтали и вертикали, параметр bpp (bits per pixel);
- разделение прав доступа на группы пользователей (например, оператор, администратор, инженер);
- формирование расписания выхода рекламных и информационных объявлений;
- выполнение более 20 эффектов вывода информации на электронное табло (например, бегущая строка, изменение скорости движения, различные эффекты появления, установка пауз, регулировка яркости);
- поддержка стандартных TrueType (TTF) шрифтов;
- вывод графической информации в формате BMP;
- вывод высококачественного видеоизображения на табло;
- вывод информации на различные слои (добавление, задание размеров, активация слоев может осуществляться "на лету");
- вывод графической информации на поверхность слоя;
- тестирование корректности отображения информации через встроенный эмулятор табло;
- наличие специального установочного файла, конфигурирующего ОС и инсталлирующего прикладное ПО.
Слои вывода, количество которых ограничивается только вычислительной мощностью ПК, могут различаться по размеру и перекрывать друг друга. Поддерживается прозрачность слоев. Для компоновки слоев в результирующий кадр разработан менеджер слоев.
Для компоновки изображений используется библиотека SDL.
Для вывода видео задействуется Mplayer, к которому разработан plug-in вывода, переводящий кадр в формат SDL surface.
Эмулятор представляет собой ActiveX-компонент, позволяющий воспроизвести визуализацию в окне браузера MS Internet Explorer. Он отображает содержимое всех слоёв и визуализирует текстовые объекты и изображения, расположенные на этих слоях. В интерфейс эмулятора входит полоса прокрутки, позволяющая "перемотать" предпросмотр вперед или назад, т.е. начать визуализацию с некоторого конкретного кадра. Также имеется возможность с помощью кнопки "pause/start" устанавливать воспроизведение на паузу и возобновлять его.
Преимущества и характеристики
Переносимость программного кода на другие аппаратные платформы и отсутствие лицензируемых решений, за которые необходимо платить отчисления, обеспечены применением ОС Linux и использованием ANSI C при программировании. Универсальная поддержка LCD дисплеев и светодиодных табло. Web-интерфейс позволяет работать с табло через интернет-браузер с любого ПК (мобильного устройства), при этом не требуется установка дополнительного ПО.
| Технологии |
Linux, SDL, COM, ActiveX |
| Языки программирования |
C, С++, PHP, Javascript |
| Интерфейсы |
Ethernet, Linux framebuffer |
| Средства разработки |
IDE KDevelop, GNU Toolchain (gcc, gdb), MS Visual Studio |
| Средства управления проектом |
dotProject, MSProject, CVS |
| Трудозатраты |
140 человеко-дней |
| Срок выполнения проекта |
9 месяцев |
|
|
|