Этот пример показывает, как один из инженеров, которые работали на Лунном модуле Apollo цифровая команда проектировщиков автопилота, сделает его с помощью Simulink®, если бы это было доступно в 1 961.
Разработка автопилота в Simulink взяла только часть времени, которое потребовалось для первоначального проекта автопилота Лунного модуля Apollo. Схема Stateflow® в модели задает логику, которая реализует плоский фазой алгоритм управления, описанный в статье, соединенной ниже. В зависимости от которой области схемы выполняется Лунный модуль, схема Stateflow будет или в Fire_region или в Coast_region. Обратите внимание, что переходы между этими различными областями зависят от определенных параметров. Схема Stateflow определяет, вычисляет ли к переходу к другому состоянию и затем который струи реакции стрелять.
Откройте модель aero_dap3dof
и запустите моделирование.
Рисунок 1: находящийся в Simulink дизайн лунного модуля цифровой автопилот
Создание цифрового автопилота было грандиозной задачей в 1 961, потому что было очень мало промышленной инфраструктуры для него - все об этом было в процессе того, чтобы быть изобретенным. Вот выборка из статьи Summer 1999 News & Notes:
"Одна причина, почему [машинный код автопилота] был столь комплексным, состояла в том, что количество струй, которые могли использоваться, чтобы управлять вращениями вокруг экспериментальных осей, было большим. Решение было принято, чтобы изменить оси, которыми автопилот управлял к "струйным осям". Это внесло разительное изменение в количестве строк кода и в способности программировать автопилот в существующем компьютере. Без этого улучшения было бы невозможно иметь использование автопилота только 2 000 слов устройства хранения данных. Урок этого изменения - то, что, когда инженерам дают возможность закодировать компьютер с системой, они разрабатывают, они могут часто изменять дизайн, чтобы значительно улучшить код. Это изменения, которые никогда не предлагали бы программисты, поскольку они только кодируют то, что было написано в спецификации кода. Но с MATLAB®, Simulink и Stateflow, инженер-конструктор может также быть тем, который кодирует дизайн (использующий Simulink® Coder™), и разрыв между разработчиком и кодером уменьшается."