NI製品ディスカッション

キャンセル
次の結果を表示 
次の代わりに検索 
もしかして: 

仮想COMを用いてシリアル通信をしてデータ送受信を行っています。(visa関数使用)今現在、接続数可変でソフトを作りたいのですが何か良い方法はありますか?

仮想COMを用いてシリアル通信をしてデータ送受信を行っています。(visa関数使用)

 今現在、接続数可変でソフトを作りたいのですが何か良い方法はありますか?

0 件の賞賛
メッセージ1/4
4,420件の閲覧回数

こんにちは。

 

方法は接続数の数と、シリアル通信を通して実現する処理によって変わると思います。

 

接続数が1-3 ぐらいであれば通信用のループやサブVIを別々に作って、必要に応じてケースストラクチャなどで呼んでもいいとおもいます。

 

接続数は増えるけれども、すべての接続がまったく同じ処理で順番に通信を行うのであれば、配列などを使用して一つのループなどにまとめていいかもしれません。

 

接続数が本当にわからない状態ですべて並列処理などであれば、似たような通信をグループにまとめてサブVI に変えた後にサブ VI を動的に呼ぶ、

もしくはオブジェクト指向でプログラムを書くという方法があるかと。

メッセージ2/4
4,385件の閲覧回数

 お返事有難うございます。

最小が1本最大が21本です。

21もできるのかは、不明ですが・・・

 

0 件の賞賛
メッセージ3/4
4,380件の閲覧回数

私もdoradorachanさんの意見に賛成です。

再入実行を可能にしたサブVIを作るか、配列で纏めてForループ内で自動指標付けを使用して一つ一つ処理する方法がスマートかと・・・

 

LabVIEWクラスを使う方法も考えましたが、私には敷居が高くて説明できませんでしたごめんなさい

Certified LabVIEW Developer
There are only two ways to tell somebody thanks: Kudos and Marked Solutions

GCentral
0 件の賞賛
メッセージ4/4
4,247件の閲覧回数