アナログ入力をプロッ​トするときのエラーを​無くす方法

9 次查看(过去 30 天)
horizon
horizon 2019-4-24
评论: horizon 2019-4-24
直流安定化電源から3Vの電流を流して、MATLABでプロットしようとしています。
現在、MATLABのドキュメントAcquire Data Using NI Devicesを参考にしながらプロットするためのコードを書いて実行したのですが、以下のエラーを修正する方法がわからず困っています。アドバイスをいただきたいです。
構造体の内容が非構造体配列オブジェクトから参照されています。
エラー:programname(line13)
disp(time.data);
timeの値は「16000x1 double」で、中身を確認したところ
0
1.2500e-04
2.5000e-04
...
0.0011
0.0013
...
1.9999(最後)
となっていました。
実行中のプログラム
s = daq.createSession('ni');
ch = addAnalogInputChannel(s,'Dev1', 'ai1', 'Voltage');
s.Rate = 8000;
data = s.inputSingleScan;
disp(data)
s.DurationInSeconds = 2;
[data,time] = s.startForeground;
plot(time,data);
disp(time.data);
xlabel('Time (secs)');
ylabel('Voltage')

采纳的回答

Shunichi Kusano
Shunichi Kusano 2019-4-24
timeが構造体ではないようですが、time.dataですとtimeが構造体であることが前提のコードになってしまっています。そのためのエラーではないでしょうか。
dispコマンドはデータを表示する関数で処理結果に影響はしないので、コメントアウトしてしまうか、
disp(time)
disp(data)
のように2つに分けるかだと思います。
  1 个评论
horizon
horizon 2019-4-24
ありがとうございます。
こちら解決いたしました。

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 MATLAB 的更多信息

产品


版本

R2017b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!