01-26-2016 10:15 PM
初めて投稿させていただきます。よろしくお願いします。
Windows7 professionalにLabVIEW2015 32bitをインストールし、cRIOはNI-9024で、NI-9205、NI-9263、NI-9403のAIモジュールを差し込み使用しています。
現在,「LabVIEW FPGAではじめる計測・制御」という本を参考にLabVIEWの学習をしているのですが,その例題3のメモリを使った簡易発振器がどうしてもできなくて困っています。
このプログラムではメモリを用いて正弦波を発生させるという回路で、アナログ出力からオシロスコープへ接続し,波形を観察しています。
波形は出力されるのですが,正弦波が出力されません。デジタル出力から出力させたように方形波になってしますのです。
これはなぜでしょうか。どなたかわかる方がいらっしゃったらご教授お願いします。
下図はfpga.vi、host.vi、正弦波のはずなのに方形波の写真です。
解決済! 解決策の投稿を見る。
01-28-2016 10:08 AM
メモリはどのように初期化されていますか?(正弦波を定義していますか?)
できればお使いのプロジェクト一式を頂けると原因を探りやすいです。
よろしくお願いします。
01-28-2016 07:40 PM
ご回答ありがとうございます。
メモリプロパティで正弦波になるように定義はしていると思うのですが方形波にしかなりません。
また,Express VIを用いた信号発生器でも正弦波がでず方形波になってしまいます。下図はそのVIです。
LabVIEWの設定の問題なのか,cRIOの性能の問題なのか,私にはわかりません。
どうかよろしくお願いします。
1つ目のファイル (例題3.zip) がメモリを使った簡易発振器,2つ目のファイル (SIN波形.zip) がExpress VIを用いた信号発生器です。
01-30-2016 04:46 AM
モジュールへの指示値を固定小数点(FXP)で与えるべきところを符号付16ビット整数(I16)で与えているので、一瞬で振り切れているわけですね。
この状態から一番簡単な修正方法は、モジュールのプロパティから「キャリブレーションモード」を「未処理」にすることです。
ご確認いただけますでしょうか。
01-30-2016 06:25 PM
モジュールのプロパティで未処理にすることで正弦波が出るようになりました。
今まで,なぜできないんだろうとずっと考えてきましたが,解決していただいたおかげでとてもスッキリしました。
本当にありがとうございました。
これからの学習でもとても役に立ちそうです。