01-10-2019 01:38 AM
myRIO-1900を2台使って計測を行っています。myRIO同士はジャンパー線でつないでデータのやり取りをしています。myRIO-1900をそれぞれ接続したパソコンの実行ボタンを同時に押すことで時間を合わしています。それでは人為的誤差が生じてしまうので正確な同期を取りたいです。パソコンのLabviewのバージョンは共に15.0です。プログラムのクロック周波数と測定開始までの待ち時間は同じにしています。
よろしくお願い致します。
01-15-2019 11:06 PM
myRIOの同期方法としては、
- FPGAによる同期
- ネットワークプロトコルによる同期
があります。
FPGAの場合は、FPGAクロックを一方が生成し、もう一方に渡す方法があります。
Generating Multiple Clocks on NI FPGA
ネットワークプロトコルについてはNTPを使うなどが考えられます。
Synchronize Linux Real Time Targets with Network Time Protocol (NTP) Server
01-22-2019 04:21 AM
2つの方法のうちFPGAのクロックを作成する方法を試しています。クロックを作成し任意のピンに出力するプログラムはできて動作したのですが、クロックを受け取る方法がいまいち分かりません。LabVIEW FPGAに外部IPをインポートのCLIPを必ず使う必要があるのでしょうか。使う場合simple_and.vhdが必要になると思うのですがどこに添付されているか分かりません。
お手数かけますがご教授くださいますようお願い致します。
01-22-2019 07:02 AM
CLIPまでは必要ないと思っていました。
myRIO Aからクロック信号を生成しDOラインから出力します。
myRIO BはそれをDIラインで受け取ります。
myRIO Aは自身で生成したクロック信号で動作し、
myRIO BはDIラインのクロック信号 ( = myRIO Aのクロック信号)で動作します。
これで同期はある程度取れると思います。
myRIO Aのクロック信号生成には、whileループとシフトレジスタを使用し、
以前のブール値を指定したレートで反転させてはどうでしょう。