問題タブ [data-acquisition]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - ファイルに非常に多くの値を書き込むためのより良い方法 Python (デバイスのメモリ不足)
Python でのファイル出力について質問があります。3 つのセンサーから値を読み取るソフトウェアを設計していました。各センサーは 1 秒間に 100 個の値を読み取り、各プロセス間でそれらをファイルに出力する必要があります。
以下は、ファイルに書き込むコードです。
したがって、ファイルの結果は次のようになります
ただし、測定時間が 8000 秒を超えるとソフトウェアが停止します。私が使用しているデバイスは古いものなので、デバイスが処理しなければならないデータが非常に多いためだと思います。(コンピュータがNI DAQデバイスに接続されているため、デバイスを変更できません。)
上記のコードを変更するための多くの代替方法を見つけようとしましたが、見つかりませんでした。この問題で私を助けることができる人はいますか??
c# - NI USB-6363を使用してC#でCI周波数を読み取る
上に添付されているのは、デバイスから周波数データを読み取るために過去に使用した LabVIEW コードです。また、通常、プロパティ ノードと while ループの間で Start Task VI を使用します。
これをC#でコーディングしようとしています。これまでのところ、デバイス USB-6363 でアナログ出力とアナログ入力を正常にコーディングできました (したがって、C# を使用してデバイスからデータを正常に読み書きできることがわかっています)。
また、マルチメーター (投稿の下部にある Grainger リンク) を使用して、周波数データ (写真でデバイスが設定されているオレンジ色の Hz モード) を読み取りました。
ただし、私の C# コードでは、周波数データの読み取りに問題があるようです。私のC#コードが添付されています。このプログラムを実行しようとすると、次のエラーが発生します。これは、「MeasDigFreqBuffCont_ExtClk_ArmStart.2013」というサンプル プログラムを使用したときに発生するエラーと同じです。私が示しているコードはタスクを作成しているだけです。プログラムの後半で別のセクションでコードを呼び出しているため、エラーが発生しています。
- - - - - - - - - - - - - - - - - - - - - - - - - 始めるエラーコード - - - - - - - - - - - - - - - - - - - - - - - - -
{Error=-200077 Message="要求された値は、このプロパティでサポートされている値ではありません。別のプロパティと競合するため、プロパティ値が無効である可能性があります。\n\nプロパティ: NationalInstruments.DAQmx.CIChannel.FrequencyDivisor\n要求された値: 1\ n有効な値: 4 ~ 4294967295\nチャンネル名: デジタル周波数\n\nタスク名: _unnamedTask<0>\n\nステータス コード: -200077"}
- - - - - - - - - - - - - - - - - - - - - - - - - 終わりエラーコード - - - - - - - - - - - - - - - - - - - - - - - - --
サンプル プログラムでは、サンプル クロック ソース (デバイスからの PFI チャネル) を要求します。ただし、LabVIEW コードではこれを要求しません。この例は、私がやろうとしていることよりも詳細ですか?
Fluke (R) Fluke-115 Compact - 基本機能 デジタル マルチメーター、温度 14° ~ 122°F。範囲
c++ - タイミングの問題: シリアル ポートへの QT 書き込みとその後の読み取り
ラボのアプリケーション用に LabVIEW を置き換える Qt データ取得 GUI を作成しています。
GUI のプッシュボタンでデータをシリアル ポート (マイクロコントローラー) に書き込み、データの取得が完了するのを待ち (マイクロコントローラーがこれを行います)、保存、プロットなどのためにシリアル ポート経由でデータを取得します。 .
次の void は、着信シリアル データをチェックします。シリアル バッファ内のバイト数を出力します。
ここで、プログラムを実行すると、ボタンをクリックすると、最初のクリックで「0」が表示されます。2 回目のクリックで、利用可能な正しいバイト数が表示されます。
次にプッシュボタンをクリックするまで、受信シリアルデータを利用できないようです。どうしてこれなの?
参考までに、シリアルポートのプロパティは次のとおりです。
2016 年 11 月 14 日更新
他の人の提案に従って、次のコードは適切に機能し、プッシュボタンを押すとすぐにデータを読み取ります。readyRead 信号を readData に接続しました。
blockSignals の使用に注意してください。そのため、すでに実行中の DAQ を開始することはできません。
python - DAQ接続のベストプラクティス
DAQ を構成して通信するためのベスト プラクティスは何ですか? DAQ を一度構成してから、回線を開いたままにして必要なときに通信するほうがよいですか、それとも、通信する必要があるたびに接続を開いて構成し、閉じる方がよいですか? 速度よりも安定性を重視しています。いずれかの方法で作業することの利点は何ですか?
システム仕様: NI USB-6000 DAQ、3 つのアナログチャンネルを読み取る PyDaqMx を備えた Python 3。
spring-mvc - spring mvcのデータ取得レイヤーと構造とは
私はデバイスからデータを受信するための webapp を持っています。また、データ取得レイヤーがオープン ソースの MQ ベースの配信メカニズムで動作する必要があるという次の仕様を持つ顧客からの要件があります。a) データ取得レイヤーは、プラットフォームに依存せず、Linux または Windows などのオペレーティング システムで実行できる必要があり、Java Gdk6) で開発する必要があります。
データ取得レイヤーとは何かわかりません
別の別のプロジェクトに実装する必要がありますか?私のアプリケーションはSpring MVCで開発されています
構造を理解するのを手伝ってください。どのように実装すればよいですか
python - Keithley 2410 および PyVISA - VI_ERROR_TMO: 操作が完了する前にタイムアウトが発生しました
x86_64 Linux マシン (CentOS 7) で Python 経由で Keithley 2410 を制御しようとしています。Python 2.7.5、NI-VISA 16、および PyVISA 1.8 を使用しています。Keithley は RS232-to-USB ケーブルを介してコンピュータに接続され、RS232 通信用に設定されています (パラメータ: baud 57600、ビット 8、パリティなし、ターミネータ、flow-ctrl なし)。Keithley にクエリを実行しようとすると、次のようなタイムアウト エラーが発生します。