10-26-2009 05:54 AM
いつもお世話になっております。
今回、LabVIEWが提供する制御機である「ミックスドシグナルグラフ」を用いたアプリケーションを考えています。
「ミックスドシグナルグラフ」はプロットを複数管理することができるため、
複数のグラフ(チャート)を制御するアプリケーションに最適であり、使用したいと思っております。
フロントパネル編集中においては、「ミックスドシグナルグラフ」上で右クリックし
表示されたメニューからプロットの追加と削除を自由に行うことができますが
VI実行中は右クリックメニューに表示されなくなってしまい、ユーザー的にあまり使い勝手が良くありません。
VI実行中に右クリックメニューもしくは、ブロックダイアグラムからの命令で
自由にプロットの追加・削除を行うことは可能なのでしょうか。
よろしくお願いいたします。
以上です。
10-27-2009 12:06 AM - 編集済み 10-27-2009 12:07 AM
Ryu1 様
平素より弊社製品をご使用いただき誠に有難うございます。
日本ナショナルインスツルメンツ技術部の星と申します。
VIを実行するということは既にプロットするもの(プロット数)が決まっているはずですので、
実行中にプロットを追加する理由を教えていただけないでしょうか。
実行中にプロットを追加できてもどちらの値を反映させるかも選択する必要があるかと思うのですが、
お客様は具体的にどのようなアプリケーションをお考えなのでしょうか。
また、ミックスドシグナルグラフの右クリックのメニューはプロット領域を増やすメニューでプロット数を増やす機能ではございません。
ミックスドシグナルグラフはアナログデータとデジタルデータをプロット領域で分けて表示するグラフですので、
基本的に3つ以上のプロット領域は必要なく、プロット数を増す場合はVI作成中にプロット数分クラスタにバンドルしてミックスドシグナルグラフに入力します。
複数のプロットを表示する場合はミックスドシグナルグラフである必要はなく、波形チャート、波形グラフやXYグラフでも可能です。
プロパティノードを使用して予めプロットしたものを非表示に設定する方法もございますので、
複数プロットの管理のアプリケーションに関連する場合はご覧いただければと思います。
宜しくお願いします。
日本ナショナルインスツルメンツ株式会社
星 大輝
10-27-2009 12:40 AM
日本ナショナルインスツルメンツ株式会社
星 大輝 様
お世話になります。
まずは、先に投稿いたしました記事中の単語の定義が間違っておりましたことをお詫び申し上げます。
星様の仰るとおり、増やしたいのはプロット領域になります。
今回、ユーザーが任意のプロットを任意のプロット領域で表示できるようなGUIを考えております。
その際のプロット数とプロット領域数はユーザーが自由に動的に設定できることを望んでおります。
(プロット数は集録直前にファイル等の入力により決定する予定です。)
また、プロットごとにYスケールを設定したいため、波形チャートや波形グラフなど
複数のYスケールを持つことが不可能な制御器は採用できないと考えておりました。
幸いミックスドシグナルグラフは、元々の機能として複数のプロット領域を定義でき
さらに、プロットをドラッグ&ドロップすることでプロット領域を自由に移動させることができるため
これを使用することで製造コストを抑えられると考え、使用しておりました。
エンドユーザーへはEXE形式で配布する予定ですので、実行中にプロット領域の追加・削除が
行えないかと悩み、こちらへ投稿させて頂きました。
このようなGUI仕様を満たすことは可能でしょうか。
よろしくお願い致します。
※アップロードされておりますファイルは当方のLabVIEWバージョンが8.6のため開くことができませんでした。
お手数でなければ、8.6バージョンのファイルをアップロードして頂けると助かります。
10-27-2009 08:14 AM
Ryu1 様
平素より弊社製品をご使用いただき誠に有難うございます。
日本ナショナルインスツルメンツ技術部の星です。
お客様の状況を分りやすくご説明いただきありがとうございます。
確かにミックスドシグナルグラフはプロットを任意に別のプロット領域に移動できたり、プロット領域を簡単に増やせて便利なのですが、
こちらは編集中のみの機能なので、プロット領域を実行中に増やす場合は恐れ入りますが別の方法を検討する必要がございます。
そこでお客様はプロットの前にはプロット数を決定するので、予め全てのプロットとプロット領域(今回の場合は波形チャート)を用意しておき、
プロパティノードを使用してプロット・プロット領域の表示・非表示の設定を変更できるようにVIを作成するのはいかがでしょうか。
こちらでサンプルを作成しましたので参考までにご参照いただければと思います。
以前はバージョン違いのVIをお送りしてしまって大変失礼いたしました。
今回のサンプルは8.6用のVIでございます。
宜しくお願いします。
日本ナショナルインスツルメンツ株式会社
星 大輝
10-27-2009 09:15 PM
日本ナショナルインスツルメンツ株式会社
星 大輝 様
お世話になります。
ミックスドシグナルグラフのプロット領域が実行中に追加・削除できないことは了解致しました。
波形チャートなどを使用する場合、頂いたサンプルでは表示/非表示を切り替えておりましたが
実行中に制御器を動的に生成することは可能でしょうか。
(VisualC++で言うところの、newをおこなってインスタンスを生成した後、画面上に配置することを指します。)
やはり、実行中にエンドユーザーがいくつのプロット、およびプロット領域を必要とするかわからないため、
できる限り汎用性の高いGUIを実現したいと考えております。
お手数をお掛け致しますが、よろしくお願い致します。
10-28-2009 07:39 AM
Ryu1 様
平素より弊社製品をご使用いただき誠に有難うございます。
日本ナショナルインスツルメンツ技術部の星です。
大変恐縮なのですがミックスドシグナルグラフも含め、
現在ではLabVIEWは実行中に制御器や表示器を増やす機能はサポートされておりません。
よってお客様のアプリケーションをLabVIEWで柔軟性の高いVIを作成するには予め多くのチャート、プロットや制御器などを作成しておき、
プロパティノードで表示・非表示の設定をプログラム的に変更する方法しか思いつきません。
もっと良い方法があるかも知れませんが、私の考える方法では上記が最良策でございます。
お客様がご希望の回答ではなく、大変恐縮なのですがご了承いただければ幸いです。
何か良い方法が見つかりましたらお知らせいたします。
宜しくお願いします。
日本ナショナルインスツルメンツ株式会社
星 大輝
10-29-2009 03:34 AM
日本ナショナルインスツルメンツ株式会社
星 大輝 様
お忙しいところ、ご回答ありがとうございます。
内容に関しまして理解いたしました。
当方でも別のアプローチがないか探してみます。
よろしくお願い致します。