Чтобы сказать, нужно ли для модели сохранение, посмотрите на строку заголовка в Редакторе Simulink®. Если образцовое сохранение потребностей, звездочка появляется рядом с именем модели в строке заголовка (известный как грязный флаг: *).
Чтобы определить программно, нужно ли для модели сохранение, используйте параметр модели Dirty
. Например:
if strcmp(get_param(gcs,'Dirty'),'on') save_system; end
Чтобы сохранить модель впервые, в Редакторе Simulink, выбирают File> Save. Обеспечьте местоположение и имя для образцового файла. Для требований имени смотрите Имена модели.
Сохранить ранее сохраненную модель:
Чтобы заменить содержимое файла, в Редакторе Simulink, выбирают File> Save.
Чтобы сохранить модель с новым именем или местоположением, или измениться от MDL до формата SLX, в Редакторе Simulink, выбирают File> Save As.
Для получения дополнительной информации о формате SLX, см. Модели Обновления к SLX.
Чтобы сохранить модель в формате, совместимом с более ранней версией, выберите File> Export Model to> Previous Version. Смотрите Экспорт Модель к Предыдущей Версии Simulink.
Образцовые имена файлов должны начаться с буквы и могут содержать буквы, числа и символы нижнего подчеркивания. Имя файла не должно быть:
Ключевое слово языка (например, if
, for
, end
)
Зарезервированное имя: 'simulink'
, 'sl'
, 'sf'
Команда MATLAB
Общее количество символов в имени модели не должно быть больше, чем определенный максимум, обычно 63 символа. Чтобы узнать, больше ли максимум для вашей системы, чем 63 символа, используйте команду namelengthmax
MATLAB.
Копирование и вставляющие блоки, имена которых выполняют числовой приказ (Gain1, Gain2, и так далее) создает имена, которые следуют стандартным соглашениям порядка сортировки для символов ASCII. Этот порядок сортировки может привести к последовательности чисел на именах блока, которую трудно понять. Если схема нумерации важна для вас, назовите свои блоки явным образом таким образом, что копирование и вставка их создают имена, которые выполняют типичный приказ чтения. Для этого используйте начальный нуль в именах блока, например, Gain001, Gain002, и так далее.
Чтобы понять, как 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 с помощью File> Save, Simulink уважает текущий формат файла и сохраняет модель в формате MDL.
Сохранить существующий файл MDL в формате файла SLX:
Выберите File> 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. Для примера смотрите Файлы Модели Обновления к 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 выберите File> Save. Это сохраняет копию в последней версии Simulink. Этот шаг избегает проблем совместимости.
Редактор Simulink, выберите File> Export Model to> Previous Version.
Диалоговое окно Export to Previous Version появляется.
В диалоговом окне, из списка Save as type, выбирают предыдущую версию, в которую можно экспортировать модель. Список поддерживает 7 лет предыдущих релизов.
Нажмите кнопку Save.
Когда вы экспортируете модель в формат предыдущей версии, модель сохранена в более раннем формате, независимо от того, содержит ли модель блоки и функции, которые были введены после той версии. Если модель действительно содержит блоки или использует функции, которые датируют более раннюю версию более поздним числом, сила модели не дают правильные результаты, когда вы запускаете его в более ранней версии программного обеспечения Simulink. Кроме того, Simulink преобразовывает блоки, которые датируют более раннюю версию более поздним числом в желтые пустые блоки Subsystem маскированные. Например, если вы используете save_system
, чтобы экспортировать модель в Релиз R2007b, и модель содержит Полиномиальные блоки, Simulink преобразовывает Полиномиальные блоки в желтые пустые блоки Subsystem маскированные. Simulink также удаляет любую неподдерживаемую функциональность из модели. Смотрите save_system
.
Можно открыть модель, созданную в более ранней версии Simulink и экспорта что модель к различной более ранней версии. Чтобы предотвратить проблемы совместимости, используйте следующую процедуру, если необходимо сохранить модель от одной более ранней версии до другой более ранней версии.
Используйте текущую версию Simulink, чтобы открыть модель, созданную с более ранней версией.
Прежде чем вы внесете любые изменения, сохраните модель в текущей версии путем выбора File> Save.
После сохранения модели в текущей версии можно изменить и повторно сохранить его по мере необходимости.
Сохраните модель в более ранней версии Simulink путем выбора File> Export Model to> Previous Version.
Запустите более раннюю версию Simulink и используйте ее, чтобы открыть модель, которую вы экспортировали в ту более раннюю версию.
Сохраните модель в более ранней версии путем выбора File> Save.
Можно теперь использовать модель в более ранней версии Simulink точно, как вы могли, если это было создано в той версии.
См. также настройки Simulink, которые могут помочь вам работать с моделями от более ранних версий: