SWD Software Ltd. - официальный дистрибьютор QNX на территории России и стран бывшего СССР Операционная система реального времени QNX
Инструменты для создания надёжных встраиваемых систем и
интеллектуальных устройств любой сложности
QNX Software Systems - разработчик встраиваемой операционной системы QNX
  Стандартная версия

Только зеленый свет! Вместе с системой управления дорожным движением корпорации Delcan водители не увидят красного света

Ричард Чилински (Richard Chylinski), корпорация Delcan

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

Расположенная в Торонто (Канада) корпорация Delcan – компания, занимающаяся инженерными разработками, планированием и управлением проектами , разрабатывает и применяет интеллектуальные транспортные системы наподобие той, что была описана выше. Наша версия, городская система управления дорожным движением (UTCS – Urban Traffic Control System) – это система управления дорожным движением на базе ПК, обеспечивающая централизованное наблюдение за дорогами и перекрестками и оптимизацию автомобильного потока в нескольких крупных городах.

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

Итоговый результат?

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

Теперь мы разработали систему управления дорожным движением, которая превзошла все предыдущие версии. В Ванкувере (Британская Колумбия, Канада) мы применили приложение на основе технологии QNX, которое объединяет 1200 контроллеров светофоров – оборудование, которое координирует сигналы светофоров, сигналы пешеходных светофоров и т.д. – на централизованном сервере. Чтобы справляться с более загруженными дорогами и приспособиться к более масштабным применениям в будущем, мы разработали улучшенную архитектуру и компоненты для UTCS, которые позволят ей увеличиваться в масштабах для управления дорожными системами крупнейших многомиллионных городов.

Улучшенная архитектура

Коммуникационные серверы

Для увеличения производительности и максимизации конфигурационных параметров и параметров расширения, система UTCS может быть распределена по нескольким уровням или аппаратным слоям. Наиболее близкий к "уровню дороги" слой состоит из коммуникационных серверов, которые соединяются через соответствующие линии с 1200 контроллерами светофоров по всему городу. Работая на базе QNX, коммуникационные серверы управляют и записывают огромные массивы входных/выходных данных и трафик сообщений, включая все сигналы на всех перекрестках. В Ванкувере используется лишь три коммуникационных сервера, но система рассчитана на обеспечение до 50 серверов.

С регулярными интервалами коммуникационные серверы посылают информацию об активности для обновления данных центрального сервера на базе QNX, который является хранилищем данных в реальном времени и центром управления всей системы. Также передаются сигналы тревоги и другие оповещения о критических ситуациях. На центральном сервере содержится логика использования, относящаяся к сигналам тревоги и управлению событиями, а также алгоритмы управления откликом на трафик, которые позволяют системе самостоятельно подстраиваться под изменяющиеся условия дорожного движения. Центральный сервер также служит хранилищем, из которого операторы могут извлекать информацию о системных событиях и о положениях на дорогах.

Технологии QNX – это наш выбор для системных компонентов, таких как центральный или коммуникационные серверы, которые требуют помехоустойчивой производительности в реальном времени,. Однако, было бы логично, если бы приложение на рабочей установке оператора работало на клиентской "стандартной настольной платформе", вместе со стандартными офисными приложениями на ПК оператора. По этой причине рабочие установки оператора работают на базе ОС Windows NT. Через эти ПК операторы могут получать доступ к центральному серверу, чтобы создавать отчеты и контролировать все функции системы UTCS. Мы разработали систему, изначально настроенную на работу с 10-ю рабочими установками операторов, но реально их количество не ограничено.

Введение в СУБД Velocis

В более ранних версиях системы мы использовали базу данных с индексно-последовательным методом доступа. Однако, Velocis со своей клиент-серверной архитектурой и поддержкой стандарта Open Database Connectivity (ODBC) лучше всего подходит для многоуровневых моделей новой системы. СУБД Velocis расположена на центральном сервере и к ней можно получить доступ, как с коммуникационного сервера (для записи информации в базу данных), так и с рабочей установки оператора. Velocis также отлично подошла к операционной системе QNX, так как функции СУБД позволяют ей справляться с обширным трафиком сообщений приложения. В особенности, Velocis поддерживает два API: промышленный стандарт – язык SQL и патентованную библиотеку функций С, которая управляет записями на более низком (и более быстром) уровне, нежели высокоуровневый SQL. Используя SQL, мы снизили время разработки – важное достижение с учетом нашего плотного расписания.

Библиотека функций С – средство, которое мы держим в резерве, для будущих усовершенствований системы. В зависимости от требований к производительности, в будущем может стать актуальным использовать более низкоуровневый интерфейс для управления задачами в реальном времени, такими как занесение постоянного потока данных в БД, или использовать SQL для задач с меньшими требованиями к производительности, таких как составление отчетов базы данных. Velocis является уникальной системой среди клиентсерверных систем управления базами данных, так как она поддерживает применение обоих интерфейсов для доступа к одной БД. Velocis также поддерживает различные платформы и множество протоколов, что является критическим при разработке систем (см. ниже).

Межплатформенная связь

При работе с UTCS перед нами встал вопрос о поддержке связи между совершенно различными платформами: QNX и Windows NT. К счастью, уникальные возможности связи Velocis и QNX позволили быстро решить эту проблему.

Во-первых, Velocis поддерживает стандарт ODBC, который определяет интерфейс для приложения, запущенного в Windows, для связи с любым источником данных, имеющим драйвер ODBC (в данном случае база данных Velocis работает на базе QNX).

Во-вторых, и Velocis и QNX поддерживают множество протоколов связи, что позволяет использовать протокол TCP/IP для связи между центральным сервером QNX и рабочими установками операторов, одновременно используя протокол QNX FLEET для передачи сообщений в реальном времени между коммуникационными серверами и центральным сервером. (Для других критических компонентов, обменивающихся сообщениями, например, между контроллерами светофоров и коммуникационными серверами мы разработали сверхлегкий протокол под названием TRAP (Traffic Application Protocol)).

Объекты управления распределенными данными

Наши инженеры создали повторно используемый объект для кэширования и распределение данных в реальном времени по различным узлам системы. Связь между процессами объекта основана на запросах (сообщениях) System V, использующих передачу сообщений QNX, и применяется в качестве средства управления памятью. На рабочих установках операторов на базе Windows NT мы заменили передачу сообщений QNX каналами с именами Win 32. Обычно развертывание происходит на коммуникационном сервере, где конкретные данные должны временно храниться до передачи их в БДх Velocis на центральном сервере. Данный механизм напоминает базу данных, но основное отличие состоит в том, что когда Velocis работает с постоянной информацией, данные на распределенных объектах никогда не сохраняются на диск.

Ключевое достоинство данного компонента – его прозрачность для разработчиков систем. Он прячет географическое распределение системных компонент таким образом, что для программистов все процессы представляются как будто они запущены на одном ПК.

Четкое расписание

Мы начали работу над системой UTCS в начале 1999 года, а развертывание произвели уже осенью того же года. Мы знали, что сможем уложиться в столь короткие сроки, так как до этого уже применяли QNX для создания структур связи. В процессе разработок мы еще более были впечатлены поддержкой операционной системой QNX асинхронного управления в реальном времени. Асинхронное управление является критическим фактором в приложениях, как данное, где есть много маленьких программ, запущенных одновременно и сообщающих различных драйверам "что делать". Производительность в реальном времени очень важна, так как приложение должно справляться с управлением большим количеством каналов связи – всего около 70 – каждый из которых управляет 30-ю перекрестками.

QNX и Velocis, эффективно использующие вычислительные ресурсы, и распределенная природа системы UTCS позволяют нашим клиентам экономить деньги на оборудовании. Например, центральный сервер, коммуникационные серверы и рабочие установки операторов работают на ПК класса Pentium. Так как обработка связей распределена между тремя серверами, то минимальная требуемая мощность будет равняться скромным 32Мб ОЗУ при 500Мб на жестком диске. Центральный процессор требует ПК Pentium с минимум 128Мб ОЗУ и 6Гб на жестком диске.

Освещая путь

Новая система намного опережает старую систему управления дорожным движением в Ванкувере, которая работала на базе Perkin-Elmer mini и достигла пределов своей масштабируемости. Новое приложение сделает возможными автоматизацию и ускорение многих функций управления. Например, на старой системе дорожным инженерам приходилось загружать новые планы координации по времени по отдельности для каждого контроллера светофора. С новой системой вся загрузка может быть выполнена при помощи одной групповой операции. К тому же система уходит от режима управления через каждую секунду, при котором контроллеры сигналов полагались на непрерывное взаимодействие с центральным компьютером. Благодаря усовершенствованиям технологии на перекрестках стало доступно больше процессорных мощностей. В результате, контроллеры могут работать независимо друг от друга и иметь полную функциональность, даже если они отключатся на некоторое время от центрального сервера.

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

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

Источник: http://qnx.com/company/customer_stories/ss_164_2.html