Functional Mock-up Interface (FMI) — становящийся всё более популярным стандарт — был быстро принят промышленностью. Он является независимым стандартом и даёт возможность обмениваться моделями между различными средами. Мы представили экспорт FMI в SystemModeler версии 4.0. Экспорт моделей в формате Functional Mock-up Unit (FMU) имеет различные приложения. Прежде всего FMU может использоваться в других средах и языках программирования. FMU так же защищает Вашу интеллектуальную собственность, компилируя код модели в двоичный файл, что может быть полезно при обмене моделями с клиентами и коллегами. Мы рады сообщить, что Версия 4.1 SystemModeler поддерживает теперь и импорт FMI.

Use subsystems from other tools in FMI import


Импорт FMI позволяет использовать подсистемы из других сред в процессе моделирования в SystemModeler и Wolfram Language. Можно исследовать импортированные модели в SystemModeler, меняя параметры и наблюдая результаты, выполнять пост-обработку и визуализацию результатов моделирования из импортированных моделей с помощью Wolfram Language. С автоматическими отчётами и облачными технологиями распространение результатов и анализ результатов моделирования становятся простыми задачами.

Давайте посмотрим, что из себя представляет импорт и использование FMU. Перетащите элемент в SystemModeler и следуйте инструкциям в диалоговых окнах, чтобы импортировать модель в class browser. Вот как выглядит импорт модели, экспортированной из Simulink с использованием FMI Toolbox от Modelon:

Imported model exported from Simulink, with the FMI Toolbox from Modelon


Теперь этот элемент доступен в SystemModeler и мы можем соединять его с другими компонентами. В данном случае это модель круиз-контроля. Мы соединяем её с моделью машины чтобы посмотреть, как он может управлять скоростью автомобиля.

Functional Mock-up Unit inside SystemModeler connected to cruise control in a car


Далее мы можем произвести параметризацию в Wolfram Language для анализа отклонений при задании различных скоростей. Эти графики показывают отклонения скорости для машины, когда она спускается с горки:

Speed deviations in car going downhill


Другой способ визуализировать данные — функция DensityPlot, которая будет показывать относительное отклонение скорости от требуемой.

DensityPlot showing the relative speed deviation from the reference speed


График показывает, что круиз-контроль работает лучше всего на плоскости и небольших подъёмах. Эта область закрашена зелёным — этому цвету соответствует отклонение скорости менее, чем на один процент. Если ехать со скоростью 40 км/ч под углом в два градуса, то отклонение будет в этой области. Красным областям соответствует отклонение скорости на более чем 5%. Если ехать со скоростью 30 км/ч под углом в три градуса, то отклонение будет в этой области.

Импорт и экспорт FMI встроены в SystemModeler и не требуют каких-то дополнительных покупок или специальных надстроек. С FMI — модели, созданные экспертами в своих областях, могут быть представлены широкому кругу потребителей, которые будут их использовать для каких-то своих задач в области моделирования и анализа. Тут есть пример того, как экспортировать модель из SystemModeler для использования в других средах.

Комментарии (0)