任意の信号波形の作成方法が分からない
이전 댓글 표시
Simulinkで計算した値をマイコンに送信したいと考えており、ツールボックス(Desktop Real-Time)を使用してデータ通信をさせようとしています。
ツールボックスのoutputブロックを使用してデジタル信号を出力するのですが、出力する波形の作成方法が分かりません。
通信方式はUARTを考えており、通信プロトコルに合わせて、波形を作成しようとしています。
任意の波形を作る方法をご教授頂きたいです。
답변 (1개)
Toshinobu Shintai
2022년 4월 11일
1 개 추천
댓글 수: 4
takaaki yamada
2022년 4월 11일
Toshinobu Shintai
2022년 4월 11일
Signal Editorは、現在のフォルダーなどに保存したmatファイルを参照する形で実行されますので、ワークスペースの値を自動的にmatファイルに書き出す処理を別途作成することで、運用できるかと思います。
以下のコマンドは、以前に私が作成したエクセルファイルのデータを自動的にSignal Editor用のmatファイルに変換するスクリプトなのですが、以下を参考に、Simulinkモデルの実行前にスクリプトでmatファイルを更新する仕組みを構築してみてはいかがでしょうか。
参考までに、エクセルファイル「input_data.xlsx」も添付しています。
%%
signal_data_raw = readtable('input_data.xlsx', ...
'VariableNamingRule', 'preserve');
ts_obj = cell(1, size(signal_data_raw.Variables, 2) - 1);
for i = 1:numel(ts_obj)
ts_obj{1, i} = timeseries(signal_data_raw(:,i+1).Variables, ...
signal_data_raw(:,1).Variables, ...
'Name', signal_data_raw.Properties.VariableNames{i+1});
end
%%
signal_dataset = Simulink.SimulationData.Dataset;
for i = 1:numel(ts_obj)
signal_dataset = signal_dataset.addElement(ts_obj{i});
end
%%
save_file_name = 'auto_inport_data.mat';
save(save_file_name, 'signal_dataset');
takaaki yamada
2022년 4월 14일
편집: takaaki yamada
2022년 4월 14일
Toshinobu Shintai
2022년 4월 14일
ハードウェア機器とどのように通信するかは、扱っている製品の種類などによって変わってくるかと思います。シンプルなアナログ、デジタル入出力だけでなく、シリアル通信、CAN通信、TCP/IPなどもあるかと思います。
通信プロトコルなどは自作する場合もあるかと思いますが、私もそこまで深く存じておりません。
카테고리
도움말 센터 및 File Exchange에서 Target Computer Setup에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!