日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人工智能 > 循环神经网络 >内容正文

循环神经网络

matlab m 调用mdl,[分享]MATLAB m语言中调用simulink的程序

發布時間:2023/12/10 循环神经网络 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 matlab m 调用mdl,[分享]MATLAB m语言中调用simulink的程序 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

[分享]MATLAB m語言中調用simulink的程序

與前一篇出自同一朋友的博客

MATLAB m語言中調用simulink的程序

1.打開simulink模型的幾種方式

% 打開文件對話框

[FileName, PathName, FilterIndex] = uigetfile({'*.mdl','Model-files (*.mdl)'}, '打開');

if FileName ~= 0

% 加載模型

load_system([PathName, FileName]);

end

% 新建一個模型

new_system('untitled', 'Model');

% 打開一個仿真模型

open_system([PathName, FileName]);

2.獲取當前simulink的文件信息并顯示

% 獲取當前模型名稱

set(handles.ModelNameEdit, 'String', get_param(gcs, 'Name'));

% 獲取當前模型文件名稱即文件路徑

set(handles.SourceFileEdit, 'String', get_param(gcs, 'FileName'));

% 獲取當前模型創建的時間

set(handles.CreatedOnEdit, 'String', get_param(gcs, 'Created'));

% 獲取當前模型最近一次修改的時間

set(handles.LastSaveOnEdit, 'String', get_param(gcs, 'LastModifiedDate'));

% 獲取當前simulink的版本

set(handles.VersionEdit, 'String', get_param(gcs, 'Version'));

%獲取當前模型的版本

set(handles.ModelVersionEdit, 'String', get_param(gcs, 'ModelVersion'));

3.查找當前模型的所有block及對應的所有對話框參數

% 查找當前模型中的所有模塊,為了方便,首先顯示頂層模塊,再顯示其他層

BlocksTop = find_system(get(handles.ModelNameEdit, 'String'), 'SearchDepth', 1, 'Type', 'block');

BlocksAll = find_system(get(handles.ModelNameEdit, 'String'), 'Type', 'block');

AllBlocks = [BlocksTop; setdiff(BlocksAll, BlocksTop)];

% 顯示所有參數,參數名稱以struct的數據結構顯示

ParameterStruct = get_param(Block,'DialogParameters');

% 參數struct結構體的域,得到參數的名稱,以cell的數據結構顯示

Parameters = fieldnames(ParameterStruct);

% 獲取第一個參數的值

ParameterValue = get_param(Block, Parameters{1});

% 獲取參數值類型

ValueStruct = ParameterStruct.(Parameters{1}) ;

ParameterType = ValueStruct.Type;

% 參數值的提示信息

ParameterPrompt = ValueStruct.Prompt;

ParameterEnum = ValueStruct.Enum;

ParameterAttributes = ValueStruct.Attributes;

4.修改某個參數的值

% 獲取編輯框中的修改值

ChangedValue = get(handles.ParameterValueEdit, 'String');

try

% 嘗試保存修改

set_param(Block, Parameter, ChangedValue);

catch

% 修改失敗,彈出提示信息

errordlg([{['無法將', Block, ' 的 ', Parameter, '參數值修改為 ', ChangedValue]}; {'輸入的參數值有誤,請重新輸入!'}], '錯誤', 'on');

% 恢復原來的值

set(handles.ParameterValueEdit, 'String', get_param(Block, Parameter));

end

5.查詢模型中某些特點類型的block

% 查找當前模塊中的subsystem

SubSystems = find_system(gcs, 'Type', 'block');

% 查找所有的Scope

AllScope = find_system(gcs, 'BlockType', 'Scope');

% 查找所有的ToFile

AllToFile = find_system(gcs, 'BlockType', 'ToFile');

% 查找所有的ToWorkSpace

AllToWorkSpace = find_system(gcs, 'BlockType', 'ToWorkspace');

總結

以上是生活随笔為你收集整理的matlab m 调用mdl,[分享]MATLAB m语言中调用simulink的程序的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。