11-24-2006 06:32 AM
11-27-2006 01:21 AM
11-27-2006 10:40 PM
12-05-2006 02:57 AM
12-05-2006 04:25 AM
12-06-2006 02:45 AM
12-07-2006 03:46 AM
12-08-2006 05:23 AM
12-10-2006 05:01 AM
ご返信ありがとうございました。もしかしたら、櫻田様に誤解を与えてしまったかもしれません。以前私が述べた『トリガ』というのは、“APFI0”に入力するアナログ信号のトリガではなく、ai0から入力する信号(私の場合sin波状の電圧信号)に対してある閾値を越えたときに検出するトリガのことです。その場合桜田様がご紹介くださった『Analog Comparison Event』というのは関係ないですよね?
もう一度、私が実現したいことを述べさせていただきます。(添付しますviをご覧下さい)
【まず、ai0~ai4の5チャンネルから電圧信号を入力します。私の場合±2Vのサイン波状の電圧信号を用いてます。そして、その電圧データを取り込みながらai0からの入力データに対して、閾値0.5Vを超えたら「立ち上がりを検出した」というトリガを検出し、そのトリガ(合図)をもとにデジタル信号を(port0から)出力する】 です。つまりは、入力信号に対して、設定した値を超えたらデジタル信号を出力するといったことです。
立ち上がりを検出するブロックとしては、「基本レベルトリガ検出」を使用しております。設定する閾値はフロントパネルの「フィードバック閾値」で設定します。
そして、わたしの方で作成したviでテストしまして、次のような結果となりました。
入力信号±2V(周波数100Hz) サンプル数:1 閾値:0.5V において
サンプリングレート:2000Hzのとき、立ち上がり検知からデジタル信号が出力されるまでの遅れ時間:10~20msec
サンプリングレート:1500Hzのとき、立ち上がり検知からデジタル信号が出力されるまでの遅れ時間:6~10msec
サンプリングレート:1000Hzのとき、立ち上がり検知からデジタル信号が出力されるまでの遅れ時間:3~4msec
サンプリングレート:500Hzのとき、立ち上がり検知からデジタル信号が出力されるまでの遅れ時間:4msec
当然、サンプリングレートを少なくすれば遅れは少なくなったのですが、それに伴い取得するデータが不正確なものになってしまいます。サイン波を入力信号としているのに、取得したデータはのこぎり波状のものになってしまいました。2000Hzで取り込めばサイン波を正確に取得できますが遅れが生じます。
現在、私はこの遅れをできるだけ少なくしたいと考えておりますが、どうもうまく行きません。トレードオフの関係でしょうが、プログラムを工夫することで改善できるのではないかと思い、アドバイスをいただけたらと思います。遅れを0msecにするのは無理でしょうがせめて2msec以下には抑えられたら幸いです。そもそも、この遅れは何が原因でしょうか?ソフトウェアでの遅れはありませんでした(確認しました)ので、立ち上がりを検知したあとのハードウェアでの遅れではないかと思っております。改善策をご教授下さいませ。よろしくお願い致します。
12-14-2006 04:43 AM