Simulink® является графическим моделированием и средой симуляции для динамических систем. Можно создать блок-схемы, где блоки представляют части системы:
Блок может представлять физический компонент, маленькую систему или функцию; отношение ввода/вывода полностью характеризует блок. Рассмотрите эти примеры:
Кран заполняет блок: Вода входит в блок в определенной скорости потока жидкости, и блок становится более тяжелым. Здесь, блок представляет блок со скоростью потока жидкости как ее вход и ее вес как вывод.
Вы используете мегафон, чтобы сделать вашу речь услышанной: Звук, произведенный в одном конце мегафона, усилен в другом конце. Мегафон является блоком, вход является звуковой волной в своем источнике, и вывод является звуковой волной, когда вы слышите его.
Вы продвигаете корзину, и она перемещается: Здесь корзина может быть блоком, сила, которую вы прикладываете, является входом, и положением корзины является вывод.
Определение блока только вместе с его вводами и выводами, и эта задача относится к цели модели. Например, скорость корзины может быть естественным выбором как выводом, если цель моделирования не включает свое местоположение.
Simulink обеспечивает библиотеки блоков, которые являются наборами блоков, сгруппированных функциональностью. Например, чтобы смоделировать мегафон, который просто умножает его вход на константу, вы использовали бы блок Gain от библиотеки Math Operations.
Звуковая волна входит в мегафон как его вход, и более громкая версия той же волны выходит как его вывод.
">" знаки обозначают вводы и выводы блока и могут быть соединены с другими блоками.
Можно соединить блоки с другими блоками, чтобы представлять более комплексную функциональность и системы формы. Аудиоплеер, например, превращает цифровой файл в звук: цифровое представление читается из устройства хранения данных, интерпретировано математически и превращено в звук физически. Программное обеспечение, которое обрабатывает цифровой файл, чтобы вычислить звуковую форму волны, может быть одним блоком; динамик, который берет форму волны и превращает ее в звук, может быть другим блоком. Компонент, который генерирует вход, является также блоком самостоятельно.
Чтобы смоделировать вход синусоиды к мегафону в Simulink, вы включали бы источник Синусоиды:
Первичная функция Simulink должна моделировать поведение компонентов системы в зависимости от времени. В ее самой простой форме эта задача включает хранение часов, определение порядка, в котором блоки должны быть моделированы, и распространение выходных параметров, вычисленных в блок-схеме, к следующему блоку. Рассмотрите мегафон. На каждом временном шаге Simulink должен вычислить значение синусоиды, распространить его к мегафону, и затем вычислить значение его вывода.
На каждом временном шаге каждый блок вычисляет свои выходные параметры из его входных параметров. Если все сигналы в схеме вычисляются в установленный срок шаг, Simulink определяет следующий временной шаг (на основе настройки модели и числовых алгоритмов решателя) и совершенствует часы симуляции. Затем каждый блок вычисляет их вывод для этого нового временного шага.
В симуляции время прогрессирует по-другому по сравнению с действительными часами. Каждый временной шаг занимает столько времени, сколько это берет, чтобы закончить вычисления для того временного шага, представляет ли тот временной шаг часть секунды или нескольких лет.
Часто, эффект входного параметра компонента на его выходе не мгновенен. Например, включение нагревателя не приводит к немедленному изменению температуры. Скорее это действие предоставляет входной параметр дифференциальному уравнению, и история температуры (состояние) также является фактором. Когда симуляция требует решения дифференциального или разностного уравнения, Simulink использует память и числовые решатели, чтобы вычислить значения состояния для временного шага.
Simulink обрабатывает данные в трех категориях:
Сигналы — вводы и выводы Блока, вычисленные во время симуляции
Состояния — Внутренние значения, представляя динамику блока, вычисленного во время симуляции
Параметры — Значения, которые влияют на поведение блока, управляемые пользователем
На каждом временном шаге Simulink вычисляет новые значения для сигналов и состояний. В отличие от этого, вы задаете параметры, когда вы создаете модель и можете иногда изменять их, в то время как симуляция запускается.