LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Simulation Interfaceを用いて、SimulinkのソースにADボードからの入力を使う方法について

よろしくおねがいします。
Yosukeです。
 
現在、PCI-6221でアナログ値を入力し、その信号をSimulinkで処理し、
PCI-6703で出力するために、Labview7.1の勉強をしています。
しかし、これまでのディスカッションフォーラムを見せていただいても
その方法がよくわかりません。
 
使っているSimulation Interface toolkitは2.02です。
 
User guideの中にある、Sine_waveの例題を作成し
上記Toolkitによって、自動生成されたブロックダイアログ中の
グラフチャートに出力を送るところへDAQアシスタントを接続しました。
 
そうすると、動作自体はするのですが、ノブを回してAmp等を変更しても
その値が反映されるまでに相当時間遅れがみられます。
 
これを解決するためにどのような方法がありますか?
 
また、hostPC上でリアルタイム動作させる良い方法はあるのでしょうか?
Real timeモジュール(ETS)を使おうとするとネットワーク接続用のIPを求められてしまうので、
困っています。
ホストPCにIPをふり、その値を使えばよいのでしょうか?
(Simulation Interface toolkitを使う際に、ウイルス対策ソフトをアンインストールしているので、
できれば、他の方法を教えていただきたいです)
 
最後に、Simulinkモデルの中にs-functionが含まれているので、できればRTWのビルドを
使わない方法があればぜひ教えていただきたいです。
 
以上よろしくお願いします。
Yosuke
 
0 Kudos
Message 1 of 5
(4,714 Views)

Yosuke 様

今回行われたいことに関していくつか確認させていただけますでしょうか?よろしくお願いします。

まず、PCI-6221でアナログ集録されたデータをPCI-6703でアナログ出力させたいということでよろしいでしょうか?そしたら、PCI-6221のアナログ入力のためにDAQアシスタントを一つ作成し、このDAQアシスタントの出力をPCI-6703用のDAQアシスタントに接続すればいいと思います。なんらかの解析を行う場合、両DAQアシスタントの間に解析の部分を配置することになります。こちらにMATLABの環境がありませんのでご指摘の問題を再現することができませんが、動作が遅いのは、LabVIEWとMATLABの間にやり取りが行われているからである可能性は高いです。また、DAQアシスタント自体もDAQmx関数によって作られていますので少し動作が重いです。通常のDAQmxの関数を使用すれば動作が速くなるかもしれません。

ホストPCでReal Time動作させるにはやはりReal Time モジュールが一番いいですが、その際IPアドレス(DHCPでも可能)が必要になります。よって、PCにアサインされているIPアドレスを指定することになります。

最後の質問に関してですが、RTWのビルド以外の方法についてわかりませんでした。

よろしくお願いします。

0 Kudos
Message 2 of 5
(4,693 Views)
I.Tanvir
お返事ありがとうございます。Yosukeです。
 
おっしゃるとおり、単にデータを集録し、出力するのであったり、なんらかの解析をLabviewで行う分には問題はありません。
しかし、現在、そのなんらかの処理の中に、S-functionを含めたSimulinkを使う必要があります。
その際、Simulation Interface toolkitを使用すると、ブロックダイアログが自動生成されるため、LabviewとSimulinkの連携はよいのですが、
それとデータ集録を同時に行うと、先日投稿させていただいたような症状になってしまいました。
 
I.Tanvir 様に教えていただいたDAQmx関数を使用する方法を試してみるとともに、他の原因をご存知の方にはご指導願いたいと思います。
 
また、RealTimeモジュールでは、ホストPCのIPを指定しても動作するのでしょうか?
その際には、LANケーブルが接続されている必要がありますか?
 
Simulation Interface toolkitを使うために、ウイルス対策ソフトを入れていないので、LANケーブルを差さなくても、IPを指定するだけで動作してくれると助かります。
 
以上よろしくお願いします。
 
0 Kudos
Message 3 of 5
(4,690 Views)
Yosuke
 
Real Timeモジュールは同一のデスクトップPCにインストールされているのでしょうか?あるいは、Real TImeターゲットとして指定されているPCと別にホストPCはありますでしょうか?
もしホストとターゲットPCが違う場合、ホストPCのMAXでターゲットPCをリモートシステムとして認識させ、ホストとは別のIPアドレスを指定しなければなりません。また、この場合、Lan
ケーブルによってホストとターゲットPCの間に通信が行われることになりますので、ケーブルを抜いたら通信が出来なくなります。
 
PCが一台しかなく、RTとWindowsを交互に使用する場合、RTを起動させるときのIPアドレスは自動的にWindowsの場合と同じIPアドレスになると思います。ただし、RTの起動中にLan
ケーブルが接続されている必要があります。
 
一度RTが動き出したあとにケーブルを抜いても既にRT上で実行しているプログラムはそのまま実行し続けますが、ホストPCあるいはネットワーク関連のプログラムで外部との通信が必要な場合、やはりLanケーブルを接続することになります。
 
RTのOS自体はウイルスに感染することはあまりないと思います。
 
よろしくお願いします。
 
0 Kudos
Message 4 of 5
(4,668 Views)
お世話になっています。Yosukeです。
 
Real Timeモジュールは、同一のデスクトップにインストールしています。
 
おそらく、私がReal timeモジュールでできることについて勘違いしていると思います。
 
私が行いないたいことは、実際にシステムを構築しているPCで、
開発システムの動作確認をReal timeで実行したいのですが、
これをおこなうツールはRealTimeモジュールなのでしょうか?
もしくは他のツールがあるのでしょうか?
 
あとは、DAQmx等からの入力をSimulinkに反映させる方法がわかりません。
インターフェースVIをカスタマイズするということはお聞きしたのですが、
具体的にどのようにカスタマイズをするのでしょうか?
 
ご存知の方にぜひご教授願いたいです。
 
以上よろしくお願いします。
Yosuke
0 Kudos
Message 5 of 5
(4,661 Views)