12-11-2022 11:08 PM
既出の質問でしたらすいません。
USB-6229を用いてセンサの電圧をサンプルプログラムの「アナログ電圧ー連続入力」を利用して計測したいと考えております。
このままだと波形データのみなので何とか改良して瞬時の値と30秒間の平均電圧、またセンサの電圧の値に対して単位変換(単位校正)ができるようにしたいのですが何か解決法はありますでしょうか?
バージョンは2021で使用デバイスはUSB-6229、センサ類は圧力センサと超音波流量計を想定しています。
12-12-2022 06:34 AM
方法はいくつか考えられます。例えば、
・波形データタイプから電圧値配列を取り出す。またはDAQmx読み取り関数で2D DBL配列を指定する。
・電圧値読み取ってから変換する。または物理値として読み取るようタスクを構成する。
・細切れに読み取って30秒分加算してから総数で割る。または一度に30秒分のデータを読み取って計算する。
など、やりたいことによっていくつか選択肢があります。
そいでもって、質問は以下です。
・ データは30秒間読み取って終了すればいいですか?それとも連続して30秒平均を更新し続けたいですか?
・ 単位変換は読み取り後に行えばいいですか?それとも物理値として読み取り波形を観測したいですか?
・ 波形を表示し続けたいですか?その場合一度に30秒分の波形を観測したいですか?
12-18-2022 06:32 PM
ご返信ありがとうございます。
質問に対しての回答ですが、
⑴30秒間の平均を取得し続けたいです。
⑵単位変換を行った状態で計測をしたいと考えております。
⑶波形としても推移等を見たいので表示し続けたいです。
以上になります。この場合どういった回路を構成すればよろしいでしょうか?
12-18-2022 08:48 PM
MAXでスケール>>NI-DAQmxスケールで右クリックして、新規DAQmxスケールを作成してください。たとえば、線形で100倍、オフセットなしにすると以下のようになります。(名前は適当に)
VIではカスタムスケールを使用する設定にします。入力範囲をスケール後の単位で入れるのを忘れないでください。
平均化処理は文章で説明するのが難しいのでVIを書いちゃいました。30秒毎に1個のデータをプロットします。LabVIEW2019のVIです。
12-19-2022 12:23 AM
ご返信ありがとうございます。
とても詳細な説明とviをありがとうございます。
2点質問がございます。
⑴単位変換を読み取り後にする場合はどのようになるのでしょうか?
⑵平均化したデータを表としてまとめたい(テキストデータ等になればいい)のですが何か良い案はありますでしょうか?
すいませんがよろしくお願いします。
12-19-2022 06:50 AM
波形データを演算してやれはいいです。線形なら関数があります。
基本的に数値演算関数は波形データ中の配列だけに作用しますが、複雑な演算をさせたい場合はY成分だけ取り出して演算し、必要なら波形データタイプに戻せます。
データをテキストの表形式で保存するには「区切られたスプレッドシートに書き込む」VIが簡単です。書き込み頻度が低いのでVIをそのまま使って(都度ファイルオープン-クローズ)も問題ないでしょう。
添付VIは経過時間データ追加して書き込むようにしてみました。