среда, 31 марта 2010 г.

Ститьи: Сбор и анализ информации в формуле 1

Во время заездов автомобили формула 1 передают в боксы огромное количество информации используя спутниковую связь. Скорость передачи 500kB в секунду уже давно стала нормой. Так как же команды собирают, передают и обрабатывают такой поток информации?
В 2006 году ФИА, в рамках программы по уменьшению расходов, предложила производителям электроники разработать стандартный блок управления электроникой автомобиля(ECU), который будет установлен на всех болидах в 2008, 2009, 2010 годах. Победил проект, представленный McLaren и Microsoft.
ECU обеспечивает сбор данных телеметрии их передачу на центральный сервер баз данных (ATLAS) в боксах, анализирует и перераспределяет информацию на клиентские средства, по выбору команды (McLaren и Microsoft предлагают командам инструменты для анализа информации как в реальном времени, так и для ее последующей обработки).

ECU контролирует работу двигателя, КПП и собирает информацию с более чем 100 датчиков, расположенных на каждой машине. Производительность системы от 100 килобайт до 0,5 мегабайт с секунду, за гонку она способна собрать до 1 гигабайта информации с одного автомобиля. Кроме того, если какие либо данные не могут передаваться, например из-за ограничения пропускной способности, по возвращении в боксы автомобиля они выгружаются из него и автоматически заполняют пробелы на сервере.
Для доступа к информации, на серверах используется реляционная база, а сама информация хранится в специально разработанных файлах, позволяющих увеличить скорость работы с ними. Благодаря этому загрузка информации для анализа проходит мгновенно.
"Для работы в рамках гонки командам необходим быстрый доступ ко всем данным, как текущим, так и к прошлым".
Говорит Питер ван Луны, управляющий директор McLaren Electronic Systems.
"Команды генерируют большое количество информации из аэродинамических труб и систем моделирования. Мы были способны предоставлять отличные данные в режиме реального времени, но нам необходимо было разработать единую систему хранения и доступа ко всей информации, для более эффективного анализа в отношении спектра переменных, связанных с подвеской, коробкой передач, клиренсом, шинами, настройками двигателя."
Решением стала функция FILESTREAM используемая в базе данных Microsoft SQL Server. FILESTREAM объединяет SQL Server Database Engine и NT File System (NTFS). Компонент SQL Server Database Engine используется для создания реляционных баз данных для оперативной обработки транзакций или оперативной аналитической обработки данных. NTFS - формат файлов, позволяющий увеличить скорость загрузки информации из них в программы для обработки и анализа.
Обобщая приведенную выше информацию можно построить следующую последовательность сбора и обработки информации:
ECU. Блок, расположенный в автомобиле. Он собирает информацию с датчиков, зашифровывает ее и передает в боксы.
ATLAS Server. Расшифровывает данные, полученные от ECU и распределяет между программным обеспечением ATLAS, используемым командой (ATLAS Client).
ATLAS Client. Предоставляет, в режиме реального времени, отображение данных с соответствующей графикой. ATLAS Client работает на Windows XP или Windows
Vista.
ATLAS Database. Используется для хранения и поиска информации используя функцию FILESTREAM для более быстрого доступа к ней.
Пример вывода данных телеметрии в реальном времени:


При перепечатке материала не забывайте ставить ссылку на мой блог: Технические новости формулы 1

Комментариев нет:

Отправить комментарий