ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

回路屋同盟コミュの水晶振動器の使い方について

  • mixiチェック
  • このエントリーをはてなブックマークに追加
こんにちわ,かわむと申します.
ただ今,大学院のロボットの研究でカメラOV7670をFPGAを使って画像データを取り出す作業を行っているのですが,カメラに与えるクロックで困ったことが発生したので質問させていただきます.

具体的な問題は,カメラに与えるクロックに水晶振動機↓
http://akizukidenshi.com/catalog/g/gP-03939/
を使っているのですが,その水晶振動器が正しく動作しないようなのです.
参考資料を見ると,Vcc, GND, OUT, OE or ST の4つの端子しかなく,
電源をつないだらOUTから所定の周波数が出力されるというだけの単純な構造のはずなのですが,何故が参考資料で記されている電圧の範囲で波形が出力されません(周波数は合っています)

参考資料の電圧:    HレベルVcc(5V)-0.4=4.4V(Min), Lレベル0.4V(Max)
観測した実際の出力: Hレベル3V, Lレベル2V

何か参考資料に記載されている正しい電圧範囲を出力するのにしなければならないことがあるのでしょうか?
私はアナログ回路に関して全く初心者で,何が悪いのか目星もつけられない状況です.
ちなみに,この値を観測した水晶振動器が壊れているのかと思い,同じものを他に2つ試したのですが結果は全く同じでした.
水晶真相器を使った事のある方どうかご教授お願いします.

コメント(46)

写真を見る限り、1番ピン(OE/ST)はオープンになっているようだけど?
きゃ〜、間違えた。
オープンでいいんですね。失礼しました。

#5の
>>OE端子はウィークプルダウンと書いてあります。
のところも間違えました。この一文、無視して下さい。

念のため、1番ピンを電源に繋いでみて下さい。
それでも変わらなければ、出力端子が壊れているような気がします。
写真の奥のLED表示は電圧と電流を表示しているのでしょうか?
電流が0.01Aなら少ないようです。max28mAと規格表に書いてありますね。
5Vを加えて壊れた?
48MHzですよね。ブレッドボードでやっていいレベルじゃないと思うのですが。
ベタアース基板にきちんと配線しないとこんな波形になると思います。
1V程度しか振幅がないのは、オシロに入るまでがロウパスフィルターに
なっているんじゃないでしょうか。
オシロのプローブはパッシブプローブでしたらFETプローブにしてみて下さい。
プローブのGND側もミノムシクリップのついた長い線のはだめです。
そっか、48MHzでしたね。
オシロスコープの帯域はいかほどですか? 50MHzとかでは?
中央の M10.0ns って10nSでサンプリングしてるって意味ではないですか?
方形波の48MHzを観察してるなら基本波しか見れないのでこれで良いのでは。

矩形だから奇数次の高調波なので、基本波と3次と5次くらいあれば
なんとなく矩形に見えるはず。
オシロの帯域って1G位欲しいと思う。
>138Bさん、
サンプリング周期と帯域は異なるものです。まともなデジタル
オシロは帯域の数倍以上でサンプリングしてます。サンプリン
グ周期が10nsなのはそれでいいと思います。

もし帯域が50MHzなら48MHzだとほぼ-3dB落ちることになり、
実際より振幅が少なく観測されます。写真の波形がほぼ正弦波に
見えることからも、おそらくそうではないかと。
写真をよく見ると、プローブが×1になってますね。
ダメじゃん。×10で観測して下さい。

>かつぼん さん

10nsが悪いって言ってるのではなくって、10nsだと48MHzの基本波が見えるだけじゃんと言う意味なんですが、あれ?
出力波形の期待値って方形波?、正弦波?
私は方形波なのかと思って書いていたのですが
トップで紹介された製品のPDFには立上がり/立下り時間、max3nsと書いてあるから方形波じゃないかな?
って、サンプリングだから帯域とは関係ないですね、たしかに。

まあ、言いたかったのは帯域100MHzのオシロでは方形波には見えないよってことです。
あ、10nsはサンプリング周期じゃなくてX軸の1divですね、きっと。
管面の横幅全部が100nsなので、48MHz(周期20.8ns)の山が5つ見えて
ます。

うちの岩通ブリンゴ(帯域100MHz)だと、「10ns 500MS/s」って
表示されます。

まあ、それはおいといて、たぶんパッシブプローブで1:1だと
プローブの帯域がせいぜい10MHzとかだと思います。

出力は方形波(のはず)ですね。
私の研究室では,回路を解析する人は私以外にほぼおらず機材も整っていないのでFETプローブという物もありません・・・
ひとまずプローブを ×10にした状態の写真をアップします。
ひとつ気になるのですが,×10にしたことでLレベルの値が0Vを切ってしまっているのですがこれは正しく波形の観測が出来ているのでしょうか?
よく見れば画面に帯域200MHzと書いてありますね。
てことは、基本波と3次高調波の2つしか見えないのだから、方形波に見えなくて良いです。
そもそも、プローブのキャリブレートはしてるのかしら?
FETプローブがなければ仕方ないですし、オシロのスペックからしてみなさんが書かれているように48MHzの方形波をきちんと表示させるのは無理なようです。
もし、50MHzくらいまで出せるファンクションジェネレーターがありましたら、方形波出力にしてオシロで波形を観測してみてください。
周波数を低い方から上げていくと、方形波がだんだん写真のような波形になっていくのがわかると思います。
プローブをx10に設定したら、オシロの方もx10に設定してください。このオシロは自動設定ではないようです。
なお付属のプローブをx1で使用した場合の帯域幅は6MHzのようです。
x10でも48MHzでしたら、写真のような接続の仕方ではなく、プローブに付属のGNDのアダプタを使います。
プローブの先を外すと針が出てきますが、プローブの付属品で、この針がさせるようなコネクタみたいなのがあると思います。
GNDのレベルが写真からはわかりにくいのですが、-側に波形が振れているって事でしたら、アンダーシュートが出ているのだと思います。
これはインピーダンスの整合が取れていないからです。

補足しときます。
方形波のフーリエ変換はなにかで調べてもらうとして、
帯域200MHzのオシロで見た48MHzの方形波は
5次以上は帯域外
1次と3次の合成だと添付のグラフみたいになります。

ここで、仮定はプローブが帯域まで対応していること
200MHzの帯域のオシロを200MHzまで一定のゲインがあってそこでストンと落ちている実際にはあり得ない特性を想定していることです。

帯域200MHzのオシロと言った場合、200MHzでアンプのゲインが-3dB落ちる
(だったんだね)ところだそうです。

ドナーズパパ さんも書かれていますが、確認してみると良いと思います。
50MHzの方形波の出せるファンクションジェネレーターっておいそれとあるわけじゃ無いだろうから、SIN波でよい(sinなら比較的ある)ので
周波数を下から上げていってみると、振幅がだんだん小さくなっていくのが観察できるはずです。
横軸を周波数、縦軸を振幅でプロットしてみると(このとき周波数軸はLOG)
オシロの特性が見えます。
色々助言して頂いて本当に感謝しているのですが,少し私が議論したい話とずれてきてしまっているので確認しますと,

・振幅が参考資料と比較し,仕様を満たしていないがこれはオシロスコープの調整(もしくは性能)に問題があるためなのか?

・もし,実際に発振器の振幅が足りないとしてどのような方法を取って振幅を仕様を満たす範囲に変換するのが良いのでしょうか?(簡単なレベルコンバータの作り方?)

が現在質問したい内容です.

はじめにカメラのクロックとして用いると書きましたが,この発振器をカメラに繋いだところ,中途半端に動作してしまうため,電圧のHとLのレベルを適正にしなければならないのです.

どうかご教授お願いいたします.
>・振幅が参考資料と比較し,仕様を満たしていないが

見る手段を持ち合わせていないだけで、仕様は満たしていると思います。

>この発振器をカメラに繋いだところ,中途半端に動作してしまうため

中途半端とは?

>電圧のHとLのレベルを適正にしなければならないのです.

この根拠はなんですか?

接続した基盤のパターンとかの写真が無いですか?
48MHz扱うのに写真のブレッドボードなんてことは無いですよね?
波形に関しては測定方法と環境に問題があるという事で間違いないようです。

クロックのレベル合わせ?
レベル変換ICというより、クロックドライバーというICがありますので、これを使います。

クロックをカメラ、FPGAとどのように回しているのか気になります。
不具合は波形がおかしいだけなのか、FPGAで正常にデーターが取り込めないのか。
動作確認なので、FPGAで取り込んでだと思いますが、セットアップ、ホールド条件は満たしていますか。

やはり全体の写真が欲しいです。

辛口で書かせてもらいます。

自分の技術レベルと研究で必要な技術レベルが合っていないようです。
強力な協力者を探すか、完成されたハードウエアを利用するとかしないと
続けるのは難しいと思われます。
趣味でやっているわけではないので、教授に相談してみるのが良いでしょう。

回路技術と測定技術はセットです。
測定できないのは回路の理解ができていないことです。
本気で電子回路を勉強したいのであれば、理論的な勉強と、良い師匠を見つけることですよ。
スレッドのかなり早い段階で、出力レベル不足しているわけではないと
回答が出て、最初の質問は完結しています。
だから、話は何で見ることができなかったのかって方向に向かっていたのですが、
なのに、もう一度質問の趣旨をまとめて同じ質問を繰り返してます。

本当は違う質問がしたいんではないの?
カメラがうまく動かないのはなぜっていうのが質問なのに、
先に自分で水晶発振器の不具合って結論を決めているから
こんな質問になったんじゃないのかな?

さて、そんなことは置いておいて

入力はCMOS受けでVIH=0.7*VDD、VIL=0.3*VDDなんですね。
HREF
VSYNC
PCLK
はどうなってますか?
クロックは反射とかおこしてないか確認しましたか?
パタ!さん>

1)使用した発振器の型名
 EPSON 48.0000 B 2PC A07 1H という型番

2)電源電圧およびその供給方法
 電源3.3V バッテリー(LiFe)をもとにシリーズレギュレータで高圧

3)負荷となるカメラモジュールの仕様
 OV7670(http://www.aitendo.co.jp/product/1784)

いずれにせよ、10MHzを超える発振回路をブレッドボードで組んで動作確認というのは、原理的にありえないことですから
>無知な自分はそのことすら知りませんでした・・ ここで質問して,教えて頂いて本当に良かったと思います.
元機械科の自分にとって,電気電子系の常識は分からない事だらけなのでここで色々な人に指摘されること一つ一つが大変ありがたいです。

アナログ回路を知らない云々という話はともかく、電子回路の基礎の教科書(工業高校のテキストなどで十分です)をご確認になるのは、将来に向けて無駄な話ではないと思います。
>回路に関しては,今回の事で興味が高まってきていますので2月に提出の大学院の修論が提出でき次第勉強したいと思います
>・振幅が参考資料と比較し,仕様を満たしていないが

見る手段を持ち合わせていないだけで、仕様は満たしていると思います。

→見る手段が現状で無いのでひとまず議論を保留します・・


>この発振器をカメラに繋いだところ,中途半端に動作してしまうため

中途半端とは?

→すみません,言葉が足りませんでした。
中途半端に動作してしまうのはカメラで,具体的にいうと
カメラからの信号出力

ピクセル更新クロック: 入力したクロックと少し位相がずれただけのような波形を観測(異常)
                                  ↑
               ちなみに今回質問する前までは正常に動作,観測が出来ていました

水平同期信号: 正常な動作

フレーム更新信号: 正常な動作

8ビットパラレルデータ信号: ノイズだらけで良く分からないものを観測
                             ↑
             ちなみに今回質問する前までは正常に動作,観測が出来ていました    

>電圧のHとLのレベルを適正にしなければならないのです.

この根拠はなんですか?

→カメラの認識するLレベル,Hレベルに発振器の出力を合わせてあげなければカメラが動作できないからです

接続した基盤のパターンとかの写真が無いですか?
48MHz扱うのに写真のブレッドボードなんてことは無いですよね?
→一つ前の返答コメントの通り,ブレッドボードで行う物でないと知らず写真のような構成で実験観測していました・・・ すみません.
ドナーズパパさん>

クロックのレベル合わせ?
レベル変換ICというより、クロックドライバーというICがありますので、これを使います。
→選定,入手に難がないか調べて検討してみます

クロックをカメラ、FPGAとどのように回しているのか気になります。
→今回議論している発振器が基板から延び(10cmほどの配線)カメラにつながっています
FPGAはカメラが生成したクロックをやはり10cm程の配線を介して別の基板につながっています

不具合は波形がおかしいだけなのか、FPGAで正常にデーターが取り込めないのか。
動作確認なので、FPGAで取り込んでだと思いますが、セットアップ、ホールド条件は満たしていますか。
→具体的な状況は1つ前の回答コメントで述べたように、
正常に動作,観測できていたカメラの出力信号群の一部がおかしな挙動をし始めたので,元を辿っていくと発振器の波形がおかしいのではないかとことになりこの場で質問をしたという譲許言うになります.

やはり全体の写真が欲しいです。
後ほどアップしたいと思います.
かわむさん>

OV7670で検索すると、実際に使っている方の記事が見つかり、写真も載っていますので参考にされてみたらいかがでしょうか。

また、今の環境では正しい波形の観測は残念ながら絶望的ですので、とりあえず極力配線を短くする方向で試されたらどうでしょう。
48MHzのパラレル信号は、実際に基板を作る場合もインピーダンス指定したり、反射しないように終端したり、等長配線にしたりと気を使います。

考え方を変えて、FPGAに供給したクロックをFPGAからカメラに供給してみるのもありかもしれません。
(筋としてはカメラからFPGAで合っています。)

画像データー、SYNC信号をFPGAに取り込む時は必ずI/O部分のレジスタで一度叩いて下さい。
FPGAは何を使っているのか判りませんが、内蔵のPLLでクロックの位相を合わせ込む方法もあります。
こんにちは。

私はOV7670を使用して25MHzのクロックで動作させています。aitendoの15cmくらいのケーブルで接続したら動作しませんでした。
http://marsee101.blog19.fc2.com/blog-entry-1549.html

配線にアルミフォイルを巻いたら、少し安定しましたが、完全に画像が取れるわけではありませんでした。
http://marsee101.blog19.fc2.com/blog-entry-1552.html

基板を作ったら動作しました。
http://marsee101.blog19.fc2.com/blog-entry-1600.html

現在はプリント基板作って動作させています。
http://marsee101.blog19.fc2.com/blog-entry-1949.html

48MHzでOV7670を動作させるということですが、60fpsの必要があるのでしょうか?30fpsで良いならば24MHzで動作させることをお勧めします。それでも基板に実装したほうが良いと思います。

それでは、アナログは奥が深いので、デジタルとは別の知識(でも、デジタルも高速になるとアナログと同じだと思いますが)が必要だと思いますが、頑張って下さい。
hazeziさん>

辛口で書かせてもらいます。

自分の技術レベルと研究で必要な技術レベルが合っていないようです。
強力な協力者を探すか、完成されたハードウエアを利用するとかしないと
続けるのは難しいと思われます。
趣味でやっているわけではないので、教授に相談してみるのが良いでしょう。
→ご指摘ありがとうございます.hazeziさんの言うとおり技術のレベルが大きく足りていないことは重々承知しているところです.
 教授は私と同じく機械科の人間のためFPGAに関する議論をすることは難しいです(教授は10数年前の学生時に開発した経験がある程度らしい).協力者を探すことは,現状難しいとは思いますがやれるだけやってみたいと思います.


回路技術と測定技術はセットです。
測定できないのは回路の理解ができていないことです。
→もはや格言ですね。貴重なご指摘ありがとうございます!

本気で電子回路を勉強したいのであれば、理論的な勉強と、良い師匠を見つけることですよ。
→最近何においても良いメンターを見つけることが重要ではないかという気がします.
ただ,技術系において師匠になりえそうな人が身近いないばかりか,何か質問したり議論する相手自体が少ないのように思います.
来年から社会人になり研究開発を行う仕事に就く予定なので,会社の中で議論ができたり知識の教授をしてもらえる人を見つけたいと思います.
私の置かれている状況について説明したいと思います.
私は現在研究室にてこのロボットの実機を作っています↓
http://www.kikulab.it-chiba.ac.jp/evolution/sinka.html
リンクのページに実機の写真が写っていますが,過去のもので現在は存在しておらず完全に新規で実機を製作しています(ちなみにこのロボットはラインCCDセンサをカメラの代わりに搭載しています)

また現在行っている作業は写真のような流れで,?,?,?を行っています.

FPGAにカメラからのデータを保存したい
        ↓
しかし保存できたか確認する方法が無い
        ↓
実験用のOpenCVを使ったウィンドウズフォームアプリケーションにデータを送ってPCのモニタに画像を表示することで確認することに
        ↓
FPGAからmbed(マイコンボード)を介してシリアル通信でPCにデータを転送する部分を現在製作中

実は,FPGAのプログラムはまだ組めていません.というのも先に表示する部分を製作しなければならないのですが,mbed→PCの部分で少々問題が起きて作業が停滞しているからです(先に表示部を完成させなければFPGAが正しい動作をしているかわからないためFPGAのプログラムは後回しにされていた)

ちなみにFPGAはマルツで購入した
http://www.marutsu.co.jp/shohin_65176/
を使用しています
33>かわむ さん

>ピクセル更新クロック: 入力したクロックと少し位相がずれただけのような波形を観測(異常)
>                                  ↑
>               ちなみに今回質問する前までは正常に動作,観測が出来ていました

どういうものを正常と言っているのか情報が不足してます。
PCLKはどんな波形が出れば正常なのですか?(周波数とか電圧とか位相とか・・・)

HRESとVSYNCは正常とのことですが、
HRESもVSYNCもPCLKも48MHzのCLKから作成されているようですので、
CLKがおかしくなった場合に、
PCLKだけ異常になるのがおかしいと考えなかったのですか?

想像でコメント始めると、またあらぬ方向に行くかもしれません。
必要な情報は最初に提示した方が早く望む議論に向かうと思うのですが、いかがですか。

そうそう、CLKの入力にダンピング抵抗いれてみたり、終端抵抗いれてみたりしたら変化ないですか?
ご指摘ありがとうございます.
確かに人に伝えるとき,自分が当たり前だと思い込んでいる事を無意識に省いてしまったりすることがあります.
これは,望む議論ができないばかりか質問する相手に対しても失礼なことだと思うので以降十分注意したいと思います.

観測の状況ですが,カメラに供給する発振器の周波数を落とすことでカメラから出力される信号は全て正常な波形が観測できるようになりました (実はデータシートの最低周波数が10MHzに対して1MHzで動作しています. ひとまず手持ちでが48MHzしかないので今日24MHzの水晶発振器を購入します)

正常な波形: データシートに示されているような方形波,電圧のレベル
前回述べた異常な波形: 正弦波や決まった形のないノイズのような波形,電圧のレベルもL,Hともにデータシートの値に対してL:高い,H:低い

ひとまずカメラがデータシートに示されているもと同じ挙動をしている事が観測できたのでFPGAのプログラムに入ってみたいと思います.

ちなみに今回の作業の目的はFPGA(ALTERA製 EP1C3T100C8N )でカメラ(OV7670)から30fpsで画像を取得し,2値化して,白画素の有無を1bitデータでマイコン(mbed)に渡すというものです

ちなみに私はマイコンを少しいじることができる程度の能力しかないのでFPGAのverilogのプログラム開発に早くも苦戦していますw
こんにちは。

1ビットデータでしたら、輝度信号(Y)だけ取れば良いと思います。初期状態では、HREFの立ち上がりからUYVYと来るので、2番目4番目...のデータを取れば、Yだけ分離できます。後はスレッショルドレベルを決めれば1ビット画像になると思います。
ちょっと引っかかっているのですが、周波数落して波形が見れたというのは、
オシロとプローブの帯域検証ですよね。
前は見れていて、今は見れなくなったってことは未解決。

>実は,FPGAのプログラムはまだ組めていません.

あれ? で、全体像が分からない。
カメラのコントロールビットはどうやって設定しているのでしょうか?
結局、私には謎だらけです。

まあ、解決したみたいだから良いけど。
なんかもやもやして気持ち悪いな〜
138B>
今後参照した人になるべく役に立つようにこの後も何か質問されれば答えます.

>カメラのコントロールビットはどうやって設定しているのでしょうか?
I2cに関しては,mbedからレジスタの書き換えをしています.
(もともとmbedのみでカメラの画像を処理しようとしていたためです)

ログインすると、残り12件のコメントが見れるよ

mixiユーザー
ログインしてコメントしよう!

回路屋同盟 更新情報

回路屋同盟のメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。

人気コミュニティランキング