MATLAB(あるいはSimulink)とProcessingの間でのリアルタイムのデータの渡し方について
7 views (last 30 days)
Show older comments
javaベースのProcessingという言語で現在,あるキーを押すと表示されるプログラムを作成しています。 また,別のあるキーを押すと色を変化させるパラメータ(変数)を設定してます。この色を変える変数に対応したキーの信号をMATLAB(あるいはSimulink)からの信号に置き換えたいのですが,どのような方法で達成されるのでしょうか?
3 Comments
Jiro Doke
on 21 Jul 2017
Edited: Jiro Doke
on 21 Jul 2017
「リアルタイム」というのはつまりMATLABのプログラムが実行している最中に描画させたいということでしょうか。それとも計算させた結果を再生するように描画させるのではだめでしょうか。後者でも良いのなら、計算結果をファイルなどに出力し、そのファイルを描画プルグラムで読み込んで再生するということも考えられます。
ちなみに、Processingに関しては詳しくないのですが、MATLABの強みの一つは(計算はもちろん)可視化です。一つの環境で作られたプログラムのほうが色々な観点から見ても優れているので計算+描画をMATLABでやるというのも一つの手段かと思います。
Accepted Answer
Jiro Doke
on 21 Jul 2017
åŒã˜PC内ã®äºŒã¤ã®ãƒ—ãƒã‚»ã‚¹é€šä¿¡ã 㨠COM ã‚„ TCP/IP ãªã©ãŒè€ƒãˆã‚‰ã‚Œã¾ã™ã€‚ã¾ãŸã€MATLAB ã«ã¯æ§˜ã€…ãªè¨€èªžã‹ã‚‰å‘¼ã¹ã‚‹ã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ã‚§ã‚¤ã‚¹ãŒã‚ã‚Šã¾ã™ã®ã§ã€ã‚‚ã—ã‹ã—ãŸã‚‰ Processing ㌠Java ベースãªã®ã§ã—ãŸã‚‰ Java 用 AP IãŒä½¿ãˆã‚‹ã‹ã‚‚ã—ã‚Œã¾ã›ã‚“。
More Answers (1)
mizuki
on 20 Jul 2017
例えばAを押したら赤、Bを押したら青が表示されるといったように、特定のキーに応じて応答を変えたいというご質問で間違いないでしょうか。
prompt = 'キーを押してください ';
x = input(prompt, 's'); % コマンドからの入力を要求
if( x == 'A' )
plot(rand(1,5), 'r')
elseif( x == 'B' )
plot(rand(1,5), 'b')
end
既に描いた図の色を変える場合は、グラフの "Color" プロパティを変更します。
figure
h = plot(rand(1,5), 'k'); % プロパティリストを取得
prompt = 'キーを押してください ';
x = input(prompt, 's');
if( x == 'A' )
h.Color = 'r';
elseif( x == 'B' )
h.Color = 'b';
end
See Also
Categories
Find more on TCP/IP 通信 in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!