Чтобы сказать, нужно ли для модели сохранение, посмотрите на строку заголовка в Редакторе Simulink®. Если для модели в иерархии модели нужно сохранение, звездочка появляется в строке заголовка (известный как грязный флаг: *).
Чтобы определить программно, нужно ли для модели сохранение, используйте параметр модели Dirty
. Например:
if strcmp(get_param(gcs,'Dirty'),'on') save_system; end
Чтобы сохранить модель впервые, в Редакторе Simulink, на вкладке Simulation, нажимают Save. Обеспечьте местоположение и имя для файла модели. Для требований имени смотрите Имена модели.
Сохранить ранее сохраненную модель:
Чтобы заменить содержимое файла, в Редакторе Simulink, на вкладке Simulation, нажимают Save.
Чтобы сохранить топ-модель с новым именем или местоположением, или измениться от MDL до формата SLX, в Редакторе Simulink, на вкладке Simulation, выбирают Save> Save As.
Для получения дополнительной информации о формате SLX, см. Модели Обновления к SLX.
Чтобы сохранить модель, на которую ссылаются, с новым именем, местоположение или формат, открывает его, когда топ-модель, затем на вкладке Simulation, выбирает Save> Save As.
Чтобы сохранить топ-модель в формате, совместимом с более ранней версией, на вкладке Simulation, выбирают Save> Previous Version. Смотрите Экспорт Модель к Предыдущей Версии Simulink.
Имена файлов модели должны начаться с буквы и могут содержать буквы, числа и символы нижнего подчеркивания. Имя файла не должно быть:
Ключевое слово языка (например, if
для
конец
)
Зарезервированное имя: 'simulink'
\sl
, 'sf'
Команда MATLAB
Общее количество символов в имени модели не должно быть больше определенного максимума, обычно 63 символа. Чтобы узнать, больше ли максимум для вашей системы 63 символов, используйте namelengthmax
MATLAB команда.
Чтобы изучить, как MATLAB определяет который функцию вызвать, когда вы задаете имя модели, смотрите Порядок приоритета функций (MATLAB).
Simulink сохраняет модель (блок-схема) и свойства блока в файле модели.
Если вы имеете кого-либо пред - или постсохраняете функции, они выполняются в этом порядке:
Весь блок PreSaveFcn
стандартные программы коллбэка выполняются сначала, затем модель PreSaveFcn
стандартная программа коллбэка выполняется.
Simulink записывает файл модели.
Весь блок PostSaveFcn
стандартные программы коллбэка выполняются, затем модель PostSaveFcn
выполняется.
Во время процесса сохранения Simulink обеспечивает временную резервную копию (названный
) для восстановления в случае ошибки. Если ошибка происходит во время сохранения или во время какого-либо коллбэка во время процесса сохранения, Simulink:modelname
.bak
Восстанавливает исходный файл
Записи любое содержимое, сохраненное перед ошибкой, произошли в файле с именем modelname
.err
Выдает ошибку сообщение
При сохранении модели, загруженной из файла SLX, должен все еще присутствовать исходный файл SLX. Simulink выполняет инкрементную загрузку и сохранение файлов SLX, поэтому если исходный файл отсутствует в разовом сохранении, Simulink предупреждает, что это не может восстановить файл полностью.
Simulink сохраняет новые модели и библиотеки в формате SLX по умолчанию с расширением файла .slx
. SLX является сжатым пакетом, который соответствует стандарту функциональной совместимости Open Packaging Conventions (OPC). SLX хранит информацию модели с помощью Unicode® UTF-8 в XML и других международных форматах. Модели Saving Simulink в формате SLX:
Обычно уменьшает размер файла по сравнению с MDL. Сокращение размера файла между MDL и SLX варьируется в зависимости от модели.
Решает некоторые задачи в предыдущих релизах с загрузкой и сохранением файлы MDL, содержащие корейские и китайские символы.
Включает инкрементную загрузку и сохранение. Simulink оптимизирует производительность и использование памяти путем загрузки только требуемых частей модели и сохранения только измененных частей модели.
Можно задать формат файла для сохранения новых моделей и библиотек с Форматом файла настройки Simulink для новых моделей и библиотек.
Если вы обновляете файл MDL до формата файла SLX, файл содержит ту же информацию как файл MDL, и у вас всегда есть резервный файл. Вся функциональность и API, которые в настоящее время существуют для работы с моделями, такими как get_param
и set_param
команды, также доступны при использовании формата файла SLX. Если вы обновляете файл MDL до формата файла SLX, не меняя имя модели или местоположение, то Simulink создает резервный файл путем переименования MDL (если перезаписываемый).
Если вы сохранили существующий файл MDL путем нажатия на Save на вкладке Simulation, Simulink уважает текущий формат файла и сохраняет модель в формате MDL.
Сохранить существующий файл MDL в формате файла SLX:
На вкладке Simulation выберите Save> Save As.
Оставьте Save as type по умолчанию как SLX и нажмите Save.
Simulink сохраняет ваша модель в формате SLX и создает резервный файл путем переименования MDL (если перезаписываемый) к mymodel.mdl.
, например, releasename
mymodel.mdl.R2010b
.
В качестве альтернативы используйте save_system
:
save_system mymodel mymodel.slx
mymodel.slx
, и если существующий файл mymodel.mdl
перезаписываемо, это переименовано в mymodel.mdl. releasename
.Файлы SLX более приоритетны по сравнению с файлами MDL, поэтому если и существовать с тем же именем и вы не задаете расширение файла, вы загружаете файл SLX.
Проекты Simulink могут помочь вам переместить файлы на SLX. Для примера смотрите, Преобразуют от MDL до SLX в Истории Версии Проекта и Заповедника.
Если вы используете инструменты управления из независимого источника, несомненно, укажут расширение файла модели .slx
как формат двоичного файла. Если вы не делаете, эти сторонние программы могут повредить файлы SLX, когда вы представляете их.
Операции с Возможными Вопросами совместимости при использовании SLX | Что происходит | Действие |
---|---|---|
Трудно закодированные ссылки на имена файлов с дополнительным .mdl . | Скрипты не могут найти или модели процессов сохраненный с новым расширением файла .slx . | Заставьте свой код работать с обоими .mdl и .slx расширение. Используйте функции как which и what вместо имен файлов. |
Инструменты управления из независимого источника, которые принимают текстовый формат по умолчанию. | Двоичный формат файлов SLX может заставить сторонние программы повреждать файлы, когда вы представляете их. | Укажите .slx как формат двоичного файла с независимым источником управляют инструментами. Также рекомендуемый для .mdl файлы. Смотрите Регистрируют Файлы Модели с Инструментами Системы контроля версий. |
Изменение кодировки символов. | Улучшены некоторые случаи, например, SLX решает некоторые задачи в предыдущих релизах с загрузкой и сохранением файлы MDL, содержащие корейские и китайские символы. Однако совместное использование моделей между различными локалями остается проблематичным. | Смотрите файлы SLX и кодировки символов. |
Формат содержимого в MDL и файлах SLX подвержен изменениям. Чтобы работать с данными модели, используйте зарегистрированные API (такие как get_param
, find_system
, и Simulink.MDLInfo
.
Когда вы сохраняете модель, текущая кодировка символов используется, чтобы закодировать текст, сохраненный в файле модели. С файлами MDL это может привести к повреждению модели, если вы сохраняете модель, исходное кодирование которой отличается от текущего кодирования.
Если вы изменяете кодировку символов, возможно ввести символы, которые не могут быть представлены в текущем кодировании. Если это верно, модель сохранена как model
.mdl.err
, где model
имя модели, оставляя исходный файл модели без изменений. Simulink также отображает сообщение об ошибке, которое задает номер строки и номер столбца первого символа, который не может быть представлен.
Восстановиться с этой ошибки, также:
Сохраните модель в формате SLX (см., Сохраняют Модели в Формате файла SLX).
Найдите и удалите символы один за другим.
Используйте текстовый редактор, чтобы найти символ в .err
файл в положении, заданном сообщением об ошибке сохранения.
Найдите и удалите соответствующий символ в открытой модели и повторно сохраните модель.
Повторите этот процесс, пока вы не сможете сохранить модель без ошибки.
Возможно, что исходное кодирование вашей модели может представлять все текстовые изменения, внесенные в текущем сеансе, хотя неправильно. Например, предположите, что вы открываете модель, исходное кодирование которой на сеансе, текущее кодирование которого является B. Далее предположите, что вы редактируете модель, чтобы включать символ, который имеет различную кодировку в A и B, и затем сохраните модель. Если, кроме того, кодирование для x в B совпадет с кодированием для y в A, и если вы вставите x в модель, в то время как B в действительности, сохраните модель, и затем вновь откройте модель с в действительности, то программное обеспечение Simulink отобразит x как y. Чтобы предупредить вас к возможности таких повреждений, предупреждающее сообщение появляется каждый раз, когда вы сохраняете модель, по которой текущее и исходное кодирование отличаются, но исходное кодирование может закодировать, возможно неправильно, все символы, чтобы быть сохраненным в файле модели.
Модели Saving Simulink в формате SLX обычно уменьшают размер файла и решают некоторые задачи в предыдущих релизах с загрузкой и сохранением файлы MDL, содержащие корейские и китайские символы.
Факторы для выбора формата файла модели:
Используйте SLX, если вы загружаете и сохраняете модели с корейскими или китайскими символами
Используйте SLX, если вы извлекли бы выгоду из сжатого файла модели
Используете ли вы SLX или MDL, Simulink может обнаружить и предупредить, если модели содержат символы, неподдержанные в текущей локали. Для SLX можно использовать Model Advisor, чтобы помочь вам, видеть модель Check для внешних символов.
Можно экспортировать (сохраняют) модель, созданную с последней версией программного обеспечения Simulink в формате, используемом более ранней версией. Например, чтобы совместно использовать модель с коллегами, у которых только есть доступ к предыдущей версии продукта Simulink.
Экспортировать модель в более раннем формате:
В Редакторе Simulink, на вкладке Simulation, нажимают Save. Это сохраняет копию в последней версии Simulink. Этот шаг избегает проблем совместимости.
В Редакторе Simulink, на вкладке Simulation, выбирают Save> Previous Version.
В диалоговом окне Export to Previous Version, из списка Save as type, выбирают предыдущую версию, в которую можно экспортировать модель. Список поддерживает 7 лет предыдущих релизов.
Нажмите Save.
Когда вы экспортируете модель в формат предыдущей версии, модель сохранена в более раннем формате, независимо от того, содержит ли модель блоки и функции, которые были введены после той версии. Если модель действительно содержит блоки или использует функции, которые датируют более раннюю версию более поздним числом, сила модели не дают правильные результаты, когда вы запускаете его в более ранней версии программного обеспечения Simulink. Кроме того, Simulink преобразует блоки, которые датируют более раннюю версию более поздним числом в желтые пустые блоки Subsystem маскированные. Например, если вы используете save_system
экспортировать модель в Релиз R2007b и модель содержит блоки Polynomial, Simulink преобразует блоки Polynomial в желтые пустые блоки Subsystem маскированные. Simulink также удаляет любую неподдерживаемую функциональность из модели. Смотрите save_system
.
Можно открыть модель, созданную в более ранней версии Simulink и экспорта что модель к различной более ранней версии. Чтобы предотвратить проблемы совместимости, используйте следующую процедуру, если необходимо сохранить модель от одной более ранней версии до другой более ранней версии.
Используйте текущую версию Simulink, чтобы открыть модель, созданную с более ранней версией.
Прежде чем вы внесете любые изменения, сохраните модель в текущей версии путем нажатия на Save на вкладке Simulation.
После сохранения модели в текущей версии можно изменить и повторно сохранить его по мере необходимости.
Сохраните модель в более ранней версии Simulink. На вкладке Simulation выберите Save> Previous Version.
Запустите более раннюю версию Simulink и используйте ее, чтобы открыть модель, которую вы экспортировали в ту более раннюю версию.
Сохраните модель в более ранней версии.
Можно теперь использовать модель в более ранней версии Simulink, как вы могли, если это было создано в той версии.
См. также настройки Simulink, которые могут помочь вам работать с моделями от более ранних версий: