From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.
We appreciate your patience as we improve our online experience.
From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.
We appreciate your patience as we improve our online experience.
06-27-2014 06:07 AM
今回は赤外線センサの値の取得方法に関してお聞きしたく書き込みました.
現在使用を考えているセンサがKEYENCE社のものを考えています.
センサを起動し,値をアンプに読み込ませることはできるのですが,出力の仕方がいまいち分りません.
アンプからの出力の線はあるのですがこれを直接DAQボードに接続しても良いのでしょう??
センサの仕様はこの下記のリンクにあります.
http://www.keyence.co.jp/switch/fiber/fs_n/menu/2486/
用いているDAQボードはUSB-6211です.
まったく分からず困っています.
お教えいただければ助かります.お願いします.
06-29-2014 11:59 PM
Keyenceのセンサですがいろいろ型式があるようで、そのケースにより少し話が変わりますが、
(1) もしセンサが、「モニタ出力」のある FS-N11MN で、その「モニタ出力(1-5V)」を取り込みたいのであれば
そのモニタ出力線(橙)を USB-6211 のアナログ入力チャンネルにつなぎ、
センサのGND(0V、青)を USB-6211 の AIGND につなげば、OKなはずです。1-5Vですので、問題ないと思います。
(2) それ以外のセンサの制御出力(NPN又はPNP)を取り込みたいのであれば
そのままつなげられません。ちょっとした回路を作る必要があります。
そのまま接続すると、基本的には電源電圧や電流許容値の電気的特性が合っていないために、
センサかUSB-6211のいずれかを壊す可能性があります。
制御出力はNPNかPNP形式なので、これは「0Vか12V(~24V)につながった、ただのスイッチ」と
考えれば良いので、それを、うまくUSB-6211に合うようにしてやる必要があります。
基本的には、スイッチがONかOFFかの2状態ということになるので、
USB-6211側は、アナログ入力でもデジタル入力でもどちらでも良いことになります。
(a) センサ出力がNPN形式であれば、電流仕様をかんがみて、概ねこんな感じになると思います。
オープンコレクタは、動かすのに外部電源が必要ですが、センサ側に供給している電源は最低でも12Vで、
これはUSB-6211側にとって高すぎるので、何か適当な電源が必要ですが、こんな時は、USB-6211自身が
持っている「+5V供給端子」が使えます。
適当な、例えば1kΩ程度の抵抗を、+5Vと入力端子の間にいれ、センサとつなぐことで、
NPNトランジスタがONの時は入力がGNDに落ちて0となり(このとき、センサのNPNに5mA流れる)、
NPNトランジスタがOFFの時は入力は抵抗で+5Vとつながっているだけになって、入力は+5Vになります。
アナログ入力で受ければ、0Vと5Vが、デジタル入力で受ければ、Lo/Hiが切り替わって認識されます。
(b) センサの出力がPNP形式であれば、こちらはPNPが電源側につながっているので
GND共通前提で考えると少し面倒ですが、概ねこんな感じになると思います。
他の信号線の兼ね合いで、センサの0VとUSB-6211のGNDを共通にしている、という想定ですが、
センサの電源電圧がUSB-6211から見て高いので、PNPがONになった時に USB-6211 が大丈夫な
電圧にしてやる必要があります。
左のアナログ入力の例では、とりあえず拾えれば良いので、PNPトランジスタに丁度良い電流が流れる範囲で
かつ、USB-6211 に問題ない電圧が作れるよう、抵抗分割します。1kΩと680Ωで分割すれば、12~24Vの
電源電圧に応じて、途中の電圧は4.9~9.7Vの間になり、アナログ入力<10Vに収めることができます。
PNPトランジスタがONの時は、PNPがセンサの電源とつながるので、抵抗分割した途中の電圧が入力され、
PNPトランジスタがOFFの時は、アナログ入力は単に680ΩでGNDとつながっているだけになり、0Vとなります。
デジタル入力の場合も、左のように抵抗分割でうまいこと0Vと5Vに分けても良いですが、
センサの電源電圧依存になってしまうので、右の絵のように、1段トランジスタを入れて USB-6211 自身の
+5Vを電源とする変換回路にすることもできます。トランジスタは小信号用のものならほぼ何でもよく、
トランジスタの左の1kΩは、センサのPNPの許容電流を守りつつトランジスタをONするのに必要な電流を確保するもの、
トランジスタの上の4.7kΩは、トランジスタがONした時にトランジスタに流す電流を決めるものです。
(どちらも、無いと電源とGNDが短絡します)
・・・オープンコレクタのPNPとNPNは、「とりあえずスイッチがそこにある」という感じで、あとは外部回路で
お好きなようにどうぞ、という作り、でもあるので、USB-6211のような機器では、上記のような感じで
電圧入力可能な電気形式に変えてやる必要があるかと思います。
(もし、デジタル入力が、「開放状態でHigh」と認識される場合は、もしかしたら、NPNの場合は右の絵で
1kΩを省いて、NPN出力をDIに接続、GND同士を接続、で動くかも知れませんが・・・TTLコンパチブルとはいえ
昔のデジタルICと電気的にもTTLコンパチブル、というわけではないので、何とも言えません)
07-01-2014 09:52 AM
詳しく書いていただきほんとにありがとうございます.
何も分かっていない状態でしたので大きく進展しました!
出力の形式は確認してみたところNPN信号でした.
なので教えていただいた回路で作成してみようと思います.
もうひとつわからない点があるのですが
もしよければ教えてください.
LabVIEW内でのプログラムなんですが,DAQボードからの出力をグラフに出力させることはできますか?
そしてこの信号をDavisというソフトウェアに出力し,カメラを始動させようとしています.TTL信号で送ることができればよいのですが
かのうでしょうか...?
少しでもアドバイスを頂ければ幸いです.
07-02-2014 07:04 AM
>> LabVIEW内でのプログラムなんですが,DAQボードからの出力をグラフに出力させることはできますか?
勿論、できます。DAQから信号を取り込み、それをチャートやグラフの表示器に描画させるのは、
ある意味LabVIEWの基本でもありますので、LabVIEWに備わっているDAQ関係のサンプルプログラムや
チュートリアル等で、確認できるかと思います。
(当方、versionがとても古いのと、普段DAQは使わないのと、DAQで取り込みたいやり方に応じて
信号ワイヤの扱いも変わってくるので、例示できなくてすみませんが)
>> そしてこの信号をDavisというソフトウェアに出力し,カメラを始動させようとしています.TTL信号で送ることができればよいのですが
USB-6211であれば、デジタル出力がありますから、TTL信号で送ることが可能です。
・・・・可能ですが、「Davisというソフトウェアに出力し」というのは、LabVIEWからPC内でアプリ間
通信みたくしてDavisというソフトウェアにデータを送信し、実際に外部に信号を出すのは
Davisというソフトから(USB-6211ではない)専用インターフェースで出力したいということでしょうか?
普通に、USB-6211のデジタル出力を使って、LabVIEWから直接送信するので済まないかとも
思いますが、DAQで「アナログ入力」したデータであれば、適当な閾値で「それ以上」と「それ以下」で
HiかLoかを決め(数値の比較結果のTrue/Falseがあれば良い)、これを、そのままデジタル出力として
LabVIEWから送り出せばよさそうです。元のDAQのデータが、ある時間幅の複数データの配列
であれば、それらに閾値以上・以下で比較すれば、True/Falseの配列にかわり、その配列を
そのままデジタル出力に出す、といったこともできると思います。
(どのようにデジタル出力を送信するかは、ソフトがどう動作して欲しいかによるので、
ここでは何とも言えませんし、ある程度データがまとまってから、それらをまとめて送信するとすれば
タイムラグが生じるので、速いループで1データ取っては1データデジタル出力し、という
やり方もあるかとは思います)
07-02-2014 09:56 PM
毎回詳しく説明していただきありがとうございます.
本当に助かっています.
出力の件ですが,基本ということで簡単にできそうです.
簡単なことをきいてしまいすいません...
Davisというソフトウェアには,toriggerというものがあって,そこにTTL信号で値を送る
ことで撮影が行われるという仕組みです.
なので,デジタル出力を使ってやってみようと思います.
ひとつだけ,LabVIEWのことではないのですが
NPN信号を直接パソコンにTTL信号として送ることはできないでしょうか??
接続する端子はBNC端子です.センサの出力はNPN出力なので直接つないでしまうと
壊れそうなので...
詳しいか方がいましたら教えていただきたいです.
センサの会社の方は接続に関しては詳しくないらしく......