Digital I/O

cancel
Showing results for 
Search instead for 
Did you mean: 

NI-USB6361でのデジタル出力

NI-USB6361でデジタル出力をしたいのですが思ったとおり行きません。

質問点は下記の通りです。

・OnBoard Clockとはどこにあるクロックなのでしょうか?NI-USB6361についているのでしょうか?

・デジタル出力の定義で1チャンネル→複数サンプル→波形を定義しました。データのところに入力するのは

デジタル値とdtの値のようですが、dtを変更しても出力のサンプリングレートは変わらず

DAQmxタイミングのサンプルレートの値を変えるとサンプルレートが変わりました。

dtの値をもって出力するようにすることはできないのでしょうか?

予想していたのはサンプルレートは高くしてサンプル数も多くして、デジタル波形に

dtを書き込めば分解能はdtになると思ったのですがそのような定義はできないのでしょうか?

 

お手数ですがご教示お願いいたします。

 

0 Kudos
Message 1 of 5
(4,188 Views)

オンボードクロックは内蔵されているものっていう認識でいいと思いますよ。

 

今使っている関数とかプログラムの内容が分からないのと、どんな波形を出力したいのかいまいちぴんときていないのでもうちょっと情報をもらえるとうれしいです。

 

とりあえずデジタル出力ってことなのでTTLパルスと仮定して話を進めるとカウンタ出力が近いのかも。

カウンタ出力のサンプルVIはサンプルファインダにありますよ。もしくはDAQアシスタントで自分でつくるのもいいかもしれないですね。

 

あとLabVIEWにおいて分解能とdtは同じではないというのが私の認識です。

dtは確かに時間とか周波数を意味しますけど、分解能ときくと機器側が検出できる信号の変化の最小値というイメージがあります。

0 Kudos
Message 2 of 5
(4,166 Views)

ご回答ありがとうございます。

 

オンボードクロックはNI-USB6361に内蔵されているものをつかっているのですね。

パソコンベースだったら狂うかもしれないと思ったので安心しました。

 

やりたいことは下記の通りです。

2つの出力ポートを用いて2つの電磁弁を制御します。

 2つの電磁弁は同時にオンすることはなく相互に動作します。

例としてあげると下記のようになります。0,1はオフ、オンを示します。

1単位5msとします。つまり100msの例を示しています。

 ch0  0000001110 0000001110

ch1  0111000000 0111000000

 上の例のように同時にオンすることなくデューティー比も若干オンが短くなっています。

 

カウンタ出力も考えたのですが2つの出力に対して同期しながらっていうプログラムが思いつきませんでした。

1つの出力の場合だったらデューティも決めることができて便利だと思ったのですが

同期できたとしても2つの出力となると2つのカウンタを使用するのでしょうか?

 

dTの話ですが下記のプログラムを見てください。

データのところでdTを変えたのですが出力されるパルスは変化がありませんでした。

それよりもサンプルレートを変えるほうが出力波形の形が変化しました。

デジタル書き込みではdTのパラメータは変更しても変化しないようです。

ではデジタル書き込みにおけるdTのパラメータはどのように使うのかよろしければ教えていただけないでしょうか?

 

ご回答ありがとうございました。

とりあえずはやりたいことはできそうな感じですが今後の為ご教示お願いいたします。

 

labview.jpg

0 Kudos
Message 3 of 5
(4,156 Views)

こんにちは。


 

カウンタ出力も考えたのですが2つの出力に対して同期しながらっていうプログラムが思いつきませんでした。

1つの出力の場合だったらデューティも決めることができて便利だと思ったのですが

同期できたとしても2つの出力となると2つのカウンタを使用するのでしょうか?


その通りです。カウンタの機能はタイミングやトリガの細かな設定が必要な時に使うものです。
二つの出力の開始と終了のタイミングが同じであればデジタル出力の方で十分なのかなと思います。

dTの話ですが下記のプログラムを見てください。

データのところでdTを変えたのですが出力されるパルスは変化がありませんでした。

それよりもサンプルレートを変えるほうが出力波形の形が変化しました。

デジタル書き込みではdTのパラメータは変更しても変化しないようです。

ではデジタル書き込みにおけるdTのパラメータはどのように使うのかよろしければ教えていただけないでしょうか?

 


アナログ出力であればサンプルクロックを構成するタイミングの関数で、波形データを使用すると設定して、
波形データのdt を変えることでサンプルレートを変えることができます。
ただなぜかデジタル出力には対応してないので、タイミングの関数でサンプルレートを直接変更する必要があります。
LabVIEW の関数の多くは色々なデータタイプが直接接続できる様になっているので便利ですが、
波形データタイプのdt の様に各データタイプの要素をきちんと取り扱ってない場合もありますので気を付けてください。

 そしてK.Koideさんも指摘していましたが、サンプルファインダにデジタル出力やカウンタ出力のサンプルがあるので
 最初のうちはそちらを参考にすることをお勧めします。

 

なお、余談ですが、現在投稿されているフォーラムが英語のものですので、日本語で投稿されるのでしたら日本語のフォーラムで投稿することをお勧めします。

もちろん海外のユーザーの方が数は多いので、より多くの人に投稿を見てもらうのであれば英語のフォーラムのほうがいいのですが。

0 Kudos
Message 4 of 5
(4,093 Views)

ご回答ありがとうございました。

 

回答内容で納得できました。

初めてなもので英語サイトに投稿したのですが

日本語サイトがあるのですね。

 

今後はそちらで質問します。

 

ありがとうございました。

0 Kudos
Message 5 of 5
(4,082 Views)