Проблемы с организацией информационного обмена в Simulink Real Time
15.07.2020
Требуется помощь по решению проблем с организацией информационного обмена по интерфейсу ГОСТ Р 52070-2003 (MIL STD 1553) в Simulink Real Time. Подробности во вложенном файле.
Требуется помощь по решению проблем с организацией информационного обмена по интерфейсу ГОСТ Р 52070-2003 (MIL STD 1553) в Simulink Real Time. Подробности во вложенном файле.
Комментарии
Андрей, добрый день
Как я понимаю, вы используете блоки Scope для записи сообщений в рабочее пространство MATLAB. Модель при этом вы, видимо, запускаете в режиме External Mode. Я бы проверил настройки блоков Scope и настройки записи данных в режиме External Mode, а также настройки записи данных в самой модели. Там может быть много подводных камней - в идеале надо получить от вас модель.
Но, чтобы не мучаться со всем этим, лучшей практикой для записи данных при работе с Simulink Real-Time является использование Simulation Data Inspector (SDI). Вы просто помечаете нужный сигнал для записи (Log Signal Data), и он автоматически доступен в SDI прямо во время работы модели в External Mode и после завершения работы модели. Из SDI любые сигналы легко сохранить в рабочее пространство MATLAB для дальнейшего анализа.
В этом видео всё объясняется: https://www.youtube.com/watch?v=u58gk-wn9Q8
Ну и, конечно, куда же без документации: https://docs.exponenta.ru/R2020a/xpc/ug/inspect-signals-in-external-mode-using-simulation-data-inspector.html
Михаил, здравствуйте.
Я ппопробовал применить инструмент Simulation Data Inspector к простой модели, для начала. До этого у меня не было практики его использования. Что из этого вышло - в прилагаемом файле со скриншотами и подробностями.
Андрей, добрый день
Скорее всего, в настройках модели не выбрана опция Data Logging -> "Send Logged Workspace Data to Data Inspector".
Проще всего взять конфигурацию из готовой модели из демок - например, xpcosc.
Если вопросы будут продолжаться, то прошу вас о двух вещах:
1) Укажите версию Simulink.
2) Пишите текст и картинки используя редактор на сайте. Это позволит другим пользователям искать подобные проблемы. Ворд, тем более еще и упакованный в rar, это уже что-то злое :)
Михаил, добрый день!
Возможно в своём предыдущем сообщении Вы имели ввиду опцию "ModelConfigurationParameters->Data Import/Export -> SaveOptions -> Record logged workspace data in Simulation Data Inspector" в настройках модели? Если нет, то подскажите пожалуйста, где найти опцию, которую Вы рекомендуете установить. Я не смог найти в настройках модели раздел "DataLogging" и, соответственно, "Send Logged Workspace Data to Data Inspector". Под настройками модели я подразумеваю меню "ModelConfigurationParameters". Наша версия Simulink - 8.5.
Михаил, здравствуйте!
В дополнение к предыдущему вопросу. В тестовой модели я установил опцию "ModelConfigurationParameters->Data Import/Export -> SaveOptions -> Record logged workspace data in Simulation Data Inspector". По умолчанию она была отключена. Однако её установка не привела к тому, что данные стали сохраняться. Всё, что изменилось - это внешний вид иконки Simulation Data Inspector. Он стал таким, как на прикреплённом изображении, с маленьким красным кружком в правом нижнем углу.
Также в контекстном меню для выбранного сигнала я пробовал установить опцию Properties->Logging and accessibility->Log signal data, но это тоже не помогло.
Андрей, добрый день
Возможность записи сигналов Simulink Real-Time в Simulation Data Inspector появилась в R2016a (https://www.mathworks.com/help/releases/R2016a/xpc/release-notes.html). Я не ожидал, что у вас настолько старый релиз Simulink 8.5 (R2015a).
Возвращаясь к вашему изначальному вопросу, есть два варианта действий.
Первый вариант, предпочтительный - обновиться до актуального релиза.
Второй вариант - как я и написал в первом сообщении - "Я бы проверил настройки блоков Scope и настройки записи данных в режиме External Mode, а также настройки записи данных в самой модели. Там может быть много подводных камней - в идеале надо получить от вас модель.". Но, с учетом такого старого релиза, модель не имеет смысла - мы не сможем воспроизвести проблему на своей стороне. То есть надо приехать к вам.
К сожалению, оба варианта выходят за рамки обсуждения на этом ресурсе. Надо переходить в плоскость отношений между вашей компанией и ЦИТМ Экспонента.
Михаил, добрый день! В нашей версии Matlab (R2015a) и нашей модели настройки блока Scope выглядят так:
По сути, это всё, что есть, по крайней мере в разделе History. Непонятно, как эти настройки и настройки из разделов General и Style могут повлиять на решение описанной проблемы.
Также я был бы очень признателен, если бы Вы сочли возможным конкретизировать, какие именно настройки режима External Mode и настройки записи данных в модели вы рекомендуете проверить в своём предыдущем ответе.
Самостоятельно я пытался изменять параметр "Code Generation -> Simulink Real-Time Options -> Signal logging data buffer size in doubles". Это не помогло.