「PIC AVR 工作室」サイトの日記的なブログです。
サイトに挙げなかった他愛ないことを日記的に書き残してます。
PIC AVR 工作室 ブログ



FFTのライブラリのテストするために、ADCから入力させる
適当なデータが欲しいってことで何を使うか考えていた
んだけど、秋月のDDSキット買うか、秋月でファンクション
ジェネレータの専用IC買って組むか、自分で作ろうか…

色々考えていたんだけど、昨日触れたChaNさんの自作DDS
http://elm-chan.org/works/asg/report_j.html
のお話を読んでみたら、なんとなく自作に挑戦してみる
方向に流れつつあるような無いような。


とりあえずChaNさんのページを読んでみて、仕組みは
およそわかった感じ。問題は精度なのかな。
赤道儀みたいに水晶1クロック単位で正確なことを
求められるわけじゃなく、小数点第何位までの精度
っていうレベルで設計するみたい。

そうそう。このへんが知りたかったところ。ある程度の
正確な精度が出せれば、微小な累積誤差は見ないことに
するっていう考え方なんだな…。わかった。


読んでみて理解した処理方法を。

正弦波1波形分のデータをテーブル化しておいて、
一定周期で割り込み掛けてそれを角速度ωずつ
位相を進めながらそのテーブルから読み出して
アナログ出力する…と。
で、この角速度ωは周波数ごとの固定値を計算で出して
おいて使用する…。

角速度ωとその積数である角度θはある程度の精度が
出せる小数値(固定小数点で表した値)を使って計算
させるみたい。

2進数の固定小数点の足し算なら簡単だから、あとは
スペックとのせめぎあい。

適当なMEGAシリーズのAVRと適当なD/Aコンバータ使えば
そこそこの精度と機能はできそうな予感。


ChaNさんのDDSは正弦波だけじゃなく、色んな波形データ
をSDカードから都度入力して使える汎用性があるんだけど、
オイラはそこまでの機能は求めず、プログラムメモリ上に
正弦波テーブルを置く程度で充分。必要があれば定数
テーブルだけ焼きなおしてリアセンブルすればいいし。

なんか、いきなり見えてきた感。
秋月のD/A変換ICと絡めれば、凄く少ない部品でできちゃう
んじゃね?とか。
http://akizukidenshi.com/catalog/g/gI-02090/

精度は12ビットもありゃ充分だろうし、SPIクロックも
20Mhzまで出るから、あとは電源回路ノイズさえ気にすれば
そこそこのができそう。

あまり凝らずサクッと作っちゃって、FFTを進めたいところ。
機能アップするにしても後日暇なときにでもいいでしょう。

ポイントはどのくらいの精度にするかってあたりかな。
処理速度と精度の関係性。
あとは、D/AコンバータICの出力周期に伴うノイズを
アナログフィルタで除去したり…。

まずはそのあたりをキチッと設計してみるか。



コメント ( 0 )
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする




AVRのアセンブラ用FFTライブラリの実機テストをどんな
風にやるかでお悩み中。

DDSのキットが結構高かったのでアレだったんだけど、
秋月にはもう少し安いファンクションジェネレータ
のキットが有った。
http://akizukidenshi.com/catalog/g/gK-03080/

…けど売り切れ中。ただし、このキットで使っている
IC単体ならなんと400円。
http://akizukidenshi.com/catalog/g/gI-02896/

回路図も使い方も公開されているみたいだから、
IC買って来て自分で組んじゃう手があるよな…。
(万能基板であまり大きな回路組むのは好きじゃ
 ないけど…)

でもまぁICが400円に周辺部品が1千円程度
とみても、大した金額にはならないだろう…

周波数がデジタルで制御できないって言うのがアレ
だけど、まぁ何だかんだでUSBオシロがあるから
使うのはそれほど難儀じゃぁないでしょう。
候補の一つ。


理想は、PCからシリアル経由で波形や周波数のコマンド
を送るとそれに応じた波形を出力してくれるという代物。

ある程度スペックを制限しちゃえば、AVRでもある程度
道具として使える程度のモノは作れるかもしれないんだ
けど、どっちが楽なのか…だな。
ちょこっとプログラム組んで既存のテストボード+αで
お茶を濁すのと、専用のアナログIC使って万能基板で
苦労するか…。

どっちがいいかな?


東電の格付け、Baa1に。
http://headlines.yahoo.co.jp/hl?a=20110401-00000711-reu-bus_all.view-000

なんと!
http://headlines.yahoo.co.jp/hl?a=20110402-00000980-reu-bus_all
ポルトガル国債より上なの?びっくり!


もう一つ驚き。
http://headlines.yahoo.co.jp/hl?a=20110331-00000561-san-bus_all
ハギワラシスコムが再生法適用申請。オイラ結構愛用
してたんだけどな。安くて高信頼で。うーーん。


(追記)
ChaNさんのサイトにDDSを作っちゃおうという記事があった。
http://elm-chan.org/works/asg/report_j.html
…実物が欲しい…。

とりあえず、オイラっぽいパチモノを作るという前提に立って、
どんな計算式とどんな処理で行ったら良いのかはこのページを
参考にさせていただこうという作戦。

所詮オイラが自前で使うだけだから、8ビット精度程度で
オーディオ帯域をそれとなくカバーできている感じなら
よしとしてしまおうか…。

DAC回路をどうするかだな。



コメント ( 0 )
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする