NI製品ディスカッション

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

csv形式のファイルを使って入力値に対してcsvファイルのMAPの値で出力したい

解決済み
解決策を見る

はじめまして

LabVIEW初心者なのですが、

エクセルで数字の配列

x=1,y=20

x=2,y=45

x=3,y=50...

のようなMAPを作成してcsvファイル形式にして

計測で入力値が任意のxの値になったら出力値はMAPから読み込んでyの値で出力

のようなプログラムを書きたいのですがどのようにすればよいでしょうか。

ご教授お願い致します。

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

dc_owl67さん、はじめまして

 

計測で、とおっしゃっているので、何かハードウェアを使用していることを前提にされていると思いますが、

とりあえずXを指定してMAPの中からそのXに対応するYを抜き出すプログラムを作ってみました。

LabVIEW 2016以降で開けると思います。

 

イメージはこのようなものでしょうか?

すべてをダウンロード
0 件の賞賛
メッセージ2/7
3,989件の閲覧回数

marble_workerさん

返信ありがとうございます。

まさにイメージしていたのはこんな感じです。

 

計測なんですが、もう少し詳しく書かせていただきますと

温度計測をしていて、その計測温度が例えば20℃に対して、MAPから20℃の時は

x=20,y=30とMAPに書いてあったら、20℃の時は30の出力で動作させる

(この場合は例えば扇風機の出力の強さとします)のようなプログラムを作りたいと思っていました。

 

送っていただいたviですと、任意のxのブロック図のところが温度計測の値にして、

yの値をそのまま別のハードウェアに出力するブロック図を作成する流れであっていますでしょうか。

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

dc_owl67さん

 

そうですね、Xの部分は計測した実際の値を入れて、yの値をハードウェアに渡して出力させるというプログラムを書けば動くと思います。

ただ、個人的に気になっているところとしては、MAPに定義していないXの値がきたときにどのようにyを決めるか、ですね。温度計測の精度によるかもしれませんが、ぴったり20℃と測れたりするのでしょうか?

 

X(計測された温度)が○○から××までの範囲ならyは△△、というようなプログラムにしたほうが便利かなと思うのですがいかがでしょうか?

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

marble_workerさん

返信遅くなってしまい申し訳ありません。

 

そうですねおっしゃる通りです。

温度計測の値が小数点第一までの値がでてくるので、丸め込みを応用して

入力値を四捨五入して値をMAPに読み込ませようと考えておりました。

0 件の賞賛
メッセージ5/7
3,786件の閲覧回数
解決策
トピック作成者dc_owl67が受理

横から失礼します。むしろ補間の関数の方がイメージに近いのではないでしょうか?

1D補間サンプル.jpg1D補間サンプルFP.jpg

0 件の賞賛
メッセージ6/7
3,759件の閲覧回数

TAKASUさん

ご教授ありがとうございます。

 

確かに、温度(入力値)を四捨五入するより、きちんと元データの値のまま

MAPに読み込ませて補間させた方がいいですね。

細かいところまでありがとうございます。

皆様方のアドバイスをもとに自分でも理解を深めようと思います。

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