•  

    Новостная рассылка

    Подпишитесь и получайте самые свежие новости.
    Подписаться на новостную рассылку
    • Главная
    • >
    • Истории успеха
    • >
    • Korean Air ускоряет разработку и верификацию программного обеспечения для управления БПЛА с помощью модельно-ориентированного проектирования

    Korean Air ускоряет разработку и верификацию программного обеспечения для управления БПЛА с помощью модельно-ориентированного проектирования

    22 мая 2017 года

    Задача

    Разработка и верификация программного обеспечения для управления беспилотными летательными аппаратами.


    Решение

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


    Результаты

    100% ошибок времени выполнения в рукописном коде идентифицированы и устранены.

    Затраты на разработку сократились на 60%.

    Дорогие летные испытания сведены к минимуму.

    «Повторное использование моделей и возможности повышения производительности, представленные в MATLAB и Simulink, позволяют сэкономить время и снизить затраты. По нашим оценкам, при использовании модельно-ориентированного проектирования достижима экономия времени более чем на 50% по сравнению с ручным кодированием, а преимущества этой методологии с ростом сложности проекта только увеличиваются».

    Jungho Moon, Korean Air


    UAV.jpg

    Беспилотный летательный аппарат Korean Air.



    Инженеры, разрабатывающие программное обеспечение для контроля полётов и систем управления для беспилотных летательных аппаратов (БПЛА), верифицируют программное обеспечение на протяжении всего процесса разработки с использованием различных методов, включая моделирование, модульные тесты, формальные тесты и моделирование в режиме реального времени (HIL). В фирме Korean Air инженерные группы ускоряют эти этапы проверки, а также разработку программного обеспечения в целом с помощью модельно-ориентированного проектирования.

    «Модельно-ориентированное проектирование позволило нашей команде построить процесс, который можно использовать при разработке нескольких платформ БПЛА. Этот процесс включает в себя моделирование и симуляцию всей системы, автоматическую генерацию производственного кода и проверку того, что как сгенерированный, так и написанный от руки код не содержит ошибок времени выполнения», - говорит Jungho Moon, старший системный инженер по системам управления полетом Korean Air. «В результате мы устранили потенциально критические ошибки на ранней стадии разработки, увеличили эффективность и снизили затраты на разработку».

    Задача

    Ранее инженеры Korean Air вручную писали программное обеспечение для управления БПЛА. Компания выявила несколько недостатков этого подхода, особенно в тех случаях, когда одна система управления полетом предназначалась для нескольких платформ БПЛА. Во-первых, алгоритмы, которые разрабатывала команда, были слишком сложными, чтобы программировать их на C вручную. Во-вторых, нужно было быстро реагировать как на изменения аппаратного обеспечения, так и смену версий управляющей программы. В-третьих, ручные проверки кода и модульные тесты требовали слишком много времени и усилий.

    Чтобы уложиться в жёсткие сроки летных испытаний и сертификации, Korean Air вынуждены были сократить время разработки, прибегая к многочисленным симуляциям на моделях, автоматически генерируя код и автоматически верифицируя как сгенерированный, так и написанный от руки код.


    Решение

    Korean Air разработала новое программное обеспечение для управления полетом БПЛА, используя модельно-ориентированное проектирование.

    На ранних этапах разработки инженеры разработали модель в среде Simulink® для уточнения и проверки требований верхнего уровня.

    Инженеры разработали динамическую модель БПЛА, в том числе динамику шасси для имитации автоматического взлета и посадки, с Aerospace Blockset ™. Позднее они использовали System Identification Toolbox ™ для подбора параметров динамической модели и проверки производительности.

    Команда разработала закон управления полетом, используя Robust Control Toolbox ™ и Control System Toolbox ™ для расчета оптимальных коэффициентов регулирования.

    Система управления полетом, включая автоматическую подсистему управления посадкой, была смоделирована в Simulink и Stateflow®.

    Имея на руках результаты симуляций в машинном времени, а также собранные позднее данные о реальных полётах, инженеры проанализировали то и другое с помощью инструментов MATLAB®.

    Используя Simulink Verification and Validation ™, инженеры проводили регулярные проверки, чтобы убедиться, что модель соответствует стандартам моделирования компании (на основе рекомендаций MAAB) и на 100% покрывается тестами по метрике MC/DC.

    Было сгенерировано более 45000 исходных строк кода из моделей с помощью Embedded Coder®. Этот C-код был интегрирован с рукописным кодом аппаратных драйверов, после чего были проведены повторные проверки по метрике MC/DC.

    Используя Polyspace Code Prover ™, команда разработчиков проверила весь код на наличие ошибок времени выполнения, найдя некоторые ошибки в рукописном коде, которые впоследствии были исправлены. Ошибок время выполнения в сгенерированном коде найдено не было.

    Команда провела моделирование в режиме реального времени с помощью Simulink Real-Time ™. Модель HIL, которая содержит более 11 000 блоков в подмоделях управления полетом и подсистемах динамики полета, была повторно использована для создания тренажера обучения оператора для БПЛА.

    Инженеры Korean Air предоставили органам по сертификации отчеты о покрытии MC/DC, полученные с помощью отчетов Simulink Verification and Validation, а также отчетов, созданных Polyspace Code Prover.

    Korean Air завершили разработку в срок, и БПЛА получил сертификацию летной годности от корейского правительства.

    Результаты

    100% ошибок времени выполнения в рукописном коде найдены и устранены. «Polyspace Code Prover имеет решающее значение для разработки безопасного программного обеспечения и устранения критических ошибок, которые могут возникнуть в полете», - говорит Мун. «В нашем рукописном коде Polyspace обнаружил множество ошибок деления на ноль и переполнения, и, с другой стороны, доказал отсутствие ошибок времени выполнения в коде, сгенерированном с помощью Embedded Coder».

    Затраты на разработку сократились на 60%. «Программное обеспечение, которое мы разработали с помощью MATLAB и Simulink, более функционально и лучше покрыто тестами, чем проекты, которые мы кодировали вручную», - говорит Мун. «Повторное использование модели, генерация кода и сокращение времени тестирования с помощью модельно-ориентированного проектирования сократили время разработки на 60%».

    Дорогие летные испытания сведены к минимуму. «Один летный тест может стоить более 10 тысяч долларов», - говорит Мун. «При использовании модельно-ориентированного проектирования мы знаем, что если мы будем правильно моделировать, то БПЛА будет летать правильно. Например, производительность и функции автопилота можно протестировать с помощью всего лишь одной трети от того числа летных испытаний, которые требовались ранее». 


    Сферы применения

    Отрасли

    Модельно-ориентированное проектирование

    Технические расчеты