Simulink Real-Time позволяет создавать приложения реального времени из моделей Simulink и запускать их на выделенном целевом компьютере, подключенном к физической системе. Он поддерживает симуляцию и тестирование в режиме реального времени, включая быстрое прототипирование алгоритмов управления, прототипирование систем ЦОС и машинного зрения и полунатурное моделирование (HIL).
С помощью Simulink Real-Time вы можете расширить свои модели Simulink блоками драйверов, автоматически создавать приложения реального времени, управлять записью сигналов и выполнять интерактивные или автоматические запуски на выделенном целевом компьютере, оснащенном ядром реального времени, многоядерным процессором и интерфейсами ввода-вывода с поддержкой протоколов и ПЛИС.
Типичная среда для приложений реального времени, построенных с использованием Simulink Real-Time, состоит из компьютера разработки, целевого компьютера и физической системы, также называемой тестируемым оборудованием.
На компьютере разработчика работает Simulink Real-Time, компилятор C, а также необходимые продукты MATLAB, MATLAB Coder, Simulink и Simulink Coder.
Процессор целевого компьютера работает под управлением ядра Simulink Real-Time с микросекундным разрешением и поддержкой параллельного выполнения. Компьютер разработки подключается к целевому компьютеру с помощью прямой (локальная сеть точка-точка) или косвенной (LAN или WAN коммутируемой сети) связи Ethernet с помощью протокола TCP/IP. Вы подключаете аппаратные интерфейсы ввода-вывода целевого компьютера к физической системе (тестируемому оборудованию).
После настройки этой среды можно создавать приложения реального времени из моделей Simulink на компьютере разработчика и загружать приложения реального времени в целевой компьютер по каналу Ethernet. После загрузки этого приложения вы можете:
Для симуляции и тестирования в реальном времени используется Simulink Real-Time с выделенной целевой компьютерной системой с процессором и оборудованием для ввода-вывода и поддержки протоколов.
Симулятор предоставляет готовые к использованию конфигурации, из которых вы можете выбрать целевую машину реального времени и модули ввода-вывода, которые отвечают вашим требованиям к производительности и интерфейсам ввода-вывода и протоколам.
Симулятор предлагает разнообразие форм-факторов и интерфейсов ввода-вывода, протоколов и модулей ПЛИС для настольного, лабораторного и полевого применения.
Целевая компьютерная система завершена и готова к подключению к вашему компьютеру разработки. Она поставляется полностью собранной и содержит в комплекте следующее:
Модель Simulink является основой приложения реального времени, создаваемого с помощью Simulink Real-Time. Модель может содержать любой блок из библиотеки Simulink, для которого Simulink Coder может генерировать C-код, блоки из таких продуктов, как Stateflow, Simscape и других тулбоксов, а также код пользователя или сторонний код в виде блоков S-function.
Перед началом процесса сборки для приложения реального времени в модели Simulink выбирается решатель с фиксированным шагом и выбирается Simulink Real-Time в качестве целевой среды. Затем вы расширяете модель Simulink блоками драйверов из библиотеки блоков Simulink Real-Time или библиотеки блоков, поставляемой с каждым целевым компьютером. Затем вы соединяете сигналами блоки драйверов и другие блоки в вашей модели. Затем вы инициируете сборку приложения реального времени. Процесс сборки автоматически загружает сгенерированное приложение реального времени по каналу Ethernet в целевой компьютер.
Simulink Real-Time показывает состояние загруженного приложения в режиме реального времени с помощью целевого дисплея с высоким разрешением. Вы можете отслеживать запущенное приложение в реальном времени и просматривать как мгновенные значения сигналов, так и сигналы во времени.
Simulink Real-Time предоставляет два способа управления приложением реального времени на целевом компьютере. Simulink Real-Time Explorer позволяет задавать и управлять целевым компьютером, загружать приложения реального времени и управлять приложениями реального времени, включая запуск, остановку или изменение шага расчета, а также отображать данные о состоянии этих запусков.
Кроме того, вы можете использовать функции MATLAB и объекты в Simulink Real-Time для управления приложениями реального времени через командную строку MATLAB или в скриптах и файлах MATLAB. Для получения доступа к целевому компьютеру и контроля приложений реального времени извне среды MATLAB, вы можете использовать C API или .NET API.
Вы можете использовать Simulink Real-Time Explorer для настройки параметров и отображения или записи интересующих вас сигналов. Этот инструментарий во время выполнения не требует перестроения приложения реального времени из модели Simulink.
Вы можете настраивать скалярные, векторные или матричные параметры и просматривать значения сигналов в виде чисел или во времени с помощью осциллографов Simulink Real-Time Explorer. Можно определить настраиваемые параметры или сигналы для наблюдения, перемещаясь по иерархии модели или через предварительно настроенные группы сигналов.
Simulink Real-Time Explorer позволяет проектировать и запускать графические панели приборов. Вы выбираете графические элементы, такие как ручки, ползунки, угловые циферблаты и датчики на панели инструментов и перетаскиваете их на панели. Вы устанавливаете связи между каждым инструментом и приложением реального времени, перетаскивая параметры и сигналы из окна иерархии моделей на графические элементы управления и дисплеи панели инструментов. При запуске приборной панели она непрерывно взаимодействует с приложением в реальном времени и обновляет связанные параметры и сигналы.
Кроме того, вы можете настроить приложение реального времени с помощью командной строки MATLAB, интерактивно или программно из сценариев или функций MATLAB. Вы можете использовать функции MATLAB и объекты Simulink Real-Time (для приложений MATLAB) или C и .NET API (для внешних исполняемых программ).
Simulink Real-Time поддерживает режим Simulink External Mode, позволяя вам управлять приложением реального времени непосредственно из модели Simulink, из которой было построено приложение реального времени.
Можно создавать высокопроизводительные приложения реального времени с помощью параллельного выполнения. Параллельное выполнение позволяет запускать больше кода в течение указанного шага расчета. Оно использует возможности параллельного выполнения Simulink, кода, генерируемого Simulink Coder, ядра Simulink Real-Time и многоядерного целевого оборудования.
Simulink Real-Time поддерживает возможности параллельного выполнения Simulink, такие как многозадачное выполнение многочастотных систем и параллельное моделирование задач.
Приложения реального времени, созданные на основе многочастотных моделей Simulink, включают параллельный безопасный код и могут выполняться в многоядерной системе для повышения производительности. Для более точного управления можно разбить модель на разделы с помощью моделей-ссылок и сопоставить эти разделы задачам в созданном коде. Это сопоставление и полученный код позволяют разделить подсистемы, работающие на одной частоте, на разные задачи.
При помощи Simulink Real-Time код, сгенерированный и скомпилированный для приложения реального времени, автоматически распределяется между ядрами процессора, доступными в целевой компьютерной системе.
Ядро Simulink Real-Time, выполняющее приложение реального времени, использует аппаратные ресурсы, предоставляемые целевой компьютерной системой, включая многоядерный процессор, расширенный контроллер прерываний и чипсет, а также общую многоуровневую обработку кэша.
Вы можете оборудовать целевую систему модулями ПЛИС, устанавливаемыми в слоты расширения. С Simulink Real-Time вы можете использовать возможности ПЛИС для запуска HDL-кода в качестве аппаратного обеспечения и возможности HDL Coder для генерации HDL-кода из моделей Simulink. Эта комбинация позволяет использовать подключаемые модули ПЛИС в целевых компьютерных системах в качестве дополнительного ресурса для параллельного выполнения.
Simulink Real-Time поддерживает использование нескольких целевых компьютеров, подключенных к компьютеру разработки через сетевой коммутатор Ethernet. Каждый целевой компьютер может выполнять отдельное приложение реального времени, созданное из отдельной модели Simulink. Схемы передачи данных и синхронизации определяются в моделях Simulink с помощью блоков драйверов интерфейса ввода-вывода и протоколов, представляющих целевое оборудование, например общую память, UDP в реальном времени, CAN, EtherCAT и FlexRay.
Simulink Real-Time позволяет создавать автономные приложения реального времени для постоянной установки на целевом компьютере. В результате вы можете использовать Simulink Real-Time на этапе проектирования и на этапе развёртывания вашего проекта.
На начальном этапе проектирования ваш компьютер разработки обычно постоянно подключен к целевому компьютеру по каналу Ethernet для обеспечения непрерывного создания, загрузки и инструментирования приложений реального времени. Хотя эта настройка обеспечивает гибкость и позволяет быстро выполнять итерации, она требует наличия компьютера разработки под управлением MATLAB.
Позже вы можете создать автономное приложение реального времени со встроенным ядром Simulink Real-Time. Когда целевой компьютер включается, приложение реального времени запускается автоматически, обеспечивая постоянную работу симулятора HIL и развертывание приложения реального времени.
В автономном режиме, целевой дисплей обеспечивает визуальную обратную связь о состоянии запущенных приложений в реальном времени, включая отображение настроенных сигналов.
Вы можете подключить свой компьютер разработки к целевой компьютерной системе в любое время, чтобы контролировать и измерять запущенное приложение реального времени. Отключение компьютера разработки не влияет на работу приложения реального времени.