« 2008年10月12日 - 2008年10月18日 | トップページ | 2008年10月26日 - 2008年11月1日 »

2008年10月19日 - 2008年10月25日の1件の記事

2008年10月21日 (火)

リズムキャプチャー完成

アナログ回路が納得できない(10/14/08)
 アナログ部の回路が確定しないので、リズムキャプチャーの実装は、アートワークが完成したのにどうも実行に移す意欲がわかない。というのも半田付けしてしまえば、ブレッドボードのように気楽にあとから変えるわけには行かないからだ。大型機システム同様、途中の仕様変更は手間が増えるだけで良いことは何ひとつない。それで実装をためらっている。

 気になっているのは2段目のACアンプの0V(AC)からの立ち上がりのクリップである。オシロがなければ、何も分からず先に進んでいると思うのだが、なまじ波形を見てしまうと一目瞭然なだけに、このまま回路を確定するのに抵抗がある。764

 本来の目的はリズム音の把握である。少々歪もうが、最大音でクリップしようが関係ないのだが、そこはそれ、気になるとそれにこだわって先に進めない性格である。ブレッドボード上で色々調べる。まず、クリップの起きる場所はAC的には0V付近で、いわゆるオペアンプのオフセット電圧(入力が違っても出力にあらわれない部分)が疑われる。しかし、それでクリップが起きているのなら、初段のアンプから起きなければならないが、初段には全くクリップがなく、2段目だけに起きているのでこれが原因とは考えられない。

 ACの反転増幅回路なので入力は初段の出力をカプリングコンデンサーで受けている。入力は直流的には浮いた(無限大の抵抗)状態である。トラ技のアナログ特集などの記事を読むと、オペアンプの入力をオープンにするのはいけなく、何らかの電流が流れないといけないらしい。10KΩ程度の抵抗を信号入力とグランドの間に入れてみた。全く増幅しなくなった。理屈から言えば、ゲインが減るだけのはずだが0とはどういうことだ。うーむ、アナログは難しい。

 次に、1MΩの抵抗を入れてみた。今度はちゃんと増幅をするが、クリップされた状態は全く変わらない。オペアンプを完全に理解しているわけではないのでウェブや雑誌の記事を参考に切り貼りのようなことをやってみるがどうもうまくいかない。今度は、2段目の出力に負荷抵抗を入れてみた。おや、クリップされる位置が変わった。今まで0Vだったのが、少しマイナス側に移動した。

 勢い込んで、半分の5KΩにしてみた。もっと下がった。2KΩにしたところ、マイナス側の出力値を越えたらしく。クリップはなくなった。やった。しかし、何故こうなったのか理屈の上で説明がつかない。どうも対症療法のような気がして、すっきりしない。

 次の日、次段の検波回路の出力を調整しようと(全波整流の波形を揃えるため)、抵抗値をかえていたときのことである。ふと、オシロを見ると、前段の出力のクリップが復活しているのを発見した。何だ、何だ。次段の定数の変更でおかしくなるなんて聞いたことがないぞ。そんな事なんてあるのか。

 念のため、カプリングコンデンサーをはずし、昨日つけた負荷抵抗もはずして前の状態にして実験してみた。うわあ、ほんとだ。2段目のオペアンプのクリップは全くなくなり、綺麗なサインウェーブになっている。コンデンサーをつなぐとクリップが出る。間違いない。後段(検波回路)の影響で前段がおかしくなっている。困った。アンプだけでも良く分からないのに、検波回路はもっとわからない。このあいだ雑誌の回路図にない入力側の抵抗を入れてやっと全波整流が出来た回路である。エレキジャックの記事の回路図を参考にしたが、この回路はナショセミのデータシート(LMC6482)に出ていた回路と全く同じだった。そこにも必要だった抵抗はない。

 どうも、2段目の出力につけた負荷抵抗と、検波回路の入力Rcapに入れた抵抗が異なると、クリップが出るようだ。インピーダンスマッチングのような関係でもあるのかもしれない。しかし、今のところ5mV入力で、1V(RMS)近くの検波出力が問題なく出る。マイクから相当離れていてもきれいに音響パルスを拾ってくれる。実用上はもう何も問題ない。この前のトランジスタアンプと同様、こればっかりやっているわけにはいかない。そろそろ引き時のようだ。これ以上の追求は諦めてアナログ回路を確定することにした。

表示パネルができた(10/16/08)
 久しぶりに秋葉原に行き、これまで足らなかった部品を買ってきた。今まで基板とブレッドボード向けの部品ばかりで、パネルやケースにネジで固定する類のスイッチやLEDのストックがない。ビスも丸ねじでなく、パネル用に皿ネジにしたい。マイクはLCDの固定ビスを利用して基板の切れ端に固定しケースにつける予定だ。

 この日は珍しく秋月に寄らず、ネジは西川、部品は千石で買いそろえた。ガード下のラジオデパートなどの方が種類が多そうだが、概して価格は割高だし、気兼ねなく部品を取って物色できない。まあ、気が小さいもので、商品を手に取ると買わないで店を出ることが出来ないだけなのだけど、千石はその心配をする必要がないので気が楽だ。

 必要な部品が揃ったので、いよいよ本格的な工作に入る。こういうこともあろうかと以前、昔懐かしいリーマ(ボリュームやスイッチなどの大き目の穴を小さな穴から広げる工具)を手に入れてある。手始めにマイクの穴から明け始めた。しかし、6角形のリーマの形に穴が広がって丸くならない。そうこうするうちにマイクと現物あわせをしたらあけすぎてしまっていることに気づく。

 やれやれ大失敗である。1mm以上の隙間が出来てしまっている。削りすぎは取り返しがつかないので注意していたが、ついにやってしまった。ケースそのものは¥1000しないが、失敗したことに腹が立っている。しばらく作業が手につかなかった。

 まわりをゴムパッキンか何かでつめることにして、気を取り直して工作を進める。それ以外の工作は順調で、何とか全部の部品の取り付けが終わった。マイクの大きすぎた穴もそれほど気にならない。後付の論理だけど、ケースから伝わる音を拾わないだけ良いかもしれないと失敗を合理化している。皿ネジのおかげで仕上がりが少しプロっぽい。というより何十年か前の計測器の表示パネルを思わせる。それが何故かを考えて思い当たった。770rhythm

 今の電気製品にはネジがないのだ。ネジは大量生産のときの生産性向上の敵なのである。表示パネルにネジが見えると言うのは、製造工程に無駄があるという証拠になる。レトロな感じがしたのは、ネジが6つもパネルについているからなのに違いない。確か西川には、黒の皿ネジも売っていたはずだ。ネジを黒にして目立たないようにするとまた印象が変わるかもしれない。

 これで残る作業は、基板に部品を半田付けするだけになった。kumanさんがやっておられるように少しづつ配線しては、テストして行く。この方法は実に合理的で心配がない。デジタル部を基板上に配線していく。もう何十回も配線しているのでデジタル部はアートワークを良く見ないでも結線が出来るほどだ。ISPピンをつけ、例のUSB-SPIブリッジで動作を確認する。これはchaNさんからの贈り物だ。動作を確認した。これでデジタル部は問題ない。いや、みなさんのおかげで進行が早い。ありがたいことである。

実装に手間取っている(10/20/08)
 2日ほどかけて40×55ミリの小さなユニバーサル基板に、オペアンプ2つとTiny861を組み込んだ。アナログはCR部品が多く面倒だけれど工夫の余地がそれだけあって、久しぶりの半田付けが楽しい。しかし、今回はくだらないミスを連発して冷や汗を何度もかいた。なかでも一番ひどかったのは、USB-SPIブリッジで(VccをUSBから供給)動いたので、気楽に電池駆動に切り替えたときのことである。773r

 5秒ほど入れて全く動かないので、電源を切り、MCUチップを持ってみたら、ほんのり暖かい。MCUは余程のことでない限り発熱することはない。もしやと思ったら電源を逆に配線していた。頭から血が引いていく。基板が混んで、VccラインとGNDラインを基板の上にジャンパーしたときにうっかり逆にしてしまったようだ。

 祈る気持ちで、配線を修正し電源を入れなおす。おお、Tiny861は何事もなかったようにAVRspに反応する。一発で昇天したRTCなどに比べると結構我慢してくれるようだ。助かった。

 表示パネルの配線も終わり、いよいよアナログも含めた全体のテストに入る。これが久しぶりの実装で見落としが多く難航した。特に今度は14ピンのコネクタを通じてLCDとMCUがつながっている。LCDをビジーフラグ待ちにしたためにLCDが動かないと先に進まないプログラムの構造になっている。プログラムを直せば良いのだが、ブレッドボードで動いた状況を変更してさらに不確定要素を増やすことはやりたくない。これまではUARTがデバッグの強力な武器だったのだが、LCDが動くまでこれが使えないのは痛かった。これは対策を考えておかないとこの先が大変だ。772r

 アナログも最初は全く動かなかった。まあ、今度はオシロがあるのでトラブルシューティングはそう困らない。シグナルジェネレータで入力を入れ、ひとつづつ確かめていく。結局、2箇所で半田不良が見つかった。UEW線は絶縁が丈夫に出来ているのか、半田で完全に固定されているように肉眼では見える(かなり力を入れて引っ張ってもとれない)のだが、実は導通していないときがある。気をつけないといけない。

 デジタルの方はLCDは制御線のコネクタでのピンアサイン間違いで、それを直したら、完全に動いた。アナログは何とか動き始めたが、懸念されたとおりデジタル回路に近接したため、ブレッドボードのときよりノイズが多い。クロックから、タイマの割込みなどデジタルの動作のすべてが手に取るように盛大にノイズに乗っている。始め発振を疑ったり、電源に大容量のパスコンを入れたり、色々回路に手を加えたが大きな変化はない。771r

 そこで、丹念に最初からオシロで信号を調べて行った。何のことはない、初段のアンプの入力から、既にかなりのノイズを拾っている。アンプのゲインは数百倍(今のところ220倍)ある。出力段でピークで150mV程度のノイズになるのは当たり前と言えば当たり前の話である。ただ、不思議なことにマイクのコードを動かしてもノイズレベルは全く変わらない(本来なら大きく変わっておかしくないのだが)。

 そもそもオシロのプローブには、動作状態でない回路にあてるだけで50mVを越えるノイズが出てくる。アースのワニ口クリップをどこに接続するかでも大きさが変わる。本当に回路上にこれだけのノイズが出ているかは、もっと厳密な環境を作らないと何ともいえない。デジタルのノイズを減らそうにもユニバーサル基板では何も出来ない。パスコンも効果がなかった。

 幸い、ADコンバータへの出力はコメントのおかげで高出力になりLPFを簡略化したためピークで2V以上の出力が得られている。ADCの基準電圧を1.1Vから2.56Vに上げ閾値を大きくすることで、相対的にノイズレベルを下げ、ブレッドボードと同じ性能を確保することができた。

悔しいけれど効果絶大な取り外しキット(10/21/08)
 遂にリズムキャプチャー実装版が完成した。まだUARTが不調(デバッグ用なので実装版では不要)なのが気がかりだが、ブレッドボード上の試作版と全く同じ機能を持つ実装版である。構想を具体化し始めて、ほぼ2ヶ月。アナログの世界に迷い込み、とうとうオシロまで買ってしまって、やや暴走気味だったが、やっとのことで収束したようである。

 まあ、リズムキャプチャーという機械そのものに大きな意味があるわけではない。用途は、メトロノームの較正とか、ボートレースのオールピッチの確認とか、等間隔な掛け声の練習なんかが考えられるくらいで、世間から見れば、正(まさ)しく「ひとりよがり」の機械そのものである。

 しかし、この機械を作る過程で沢山のものを知り、様々な知識と経験を得た収穫は大きい。念願のオシロも手に入れたし、オペアンプについても少々詳しくなった(何しろ参考書を3冊も買ってしまった)。世界が広がったことを実感してとても充実感がある。そのなかで、ささやかだけれど面白い経験をしたのが、サンハヤトの表面実装部品取り外しキット(SMD-21)である。774

 このあいだ93C46の取り外しに苦労したり、モジュラージャックの取り外しでもう少しでパタンを切ってしまいそうになったときに見つけた簡単な取り外し工具の一つなのだが、特殊半田とフラックスだけで定価が¥5000近くするので、何だか馬鹿馬鹿しくて買う気がしなかった。しかし、今度のアナログの回路を部品を捨てずに取り替える必要にせまられ、昨日たまたま糸半田が切れたので秋葉に寄った際、つい買ってしまった。秋葉の店(小林電機 ラジオデパート1F)が送料を入れた通販より安かったことをたまたまウェブで発見したこともある(¥4505)。

 表面実装部品ではないが、試しに3ヶ所のCRをはずすのに使ってみた。普通なら、ひとつのランドの半田を溶かし、溶けている間に急いでペンチでリード線を曲げてはずし、これを繰り返していくのだが、こいつはそんな必要がない。説明の指示通り、特殊フラックスを注射器からはずす場所に塗り(説明は赤いキャップをはずせとあるがついているのは青いキャップで混乱する)、半田ごてで特殊半田をそこに盛るだけである。

 この半田は融点が58°という低温なので、こてで複数箇所を溶かしても、他のところがまだ溶けたままになっている。チョン付けした部品ならこの段階でポロリと落ちる。曲げてつけたリード線もペンチで曲げる余裕がある。こいつはすごい。高くて悔しいけれど(キットのケースの中はほとんどスポンジで中に細い半田とフラックス注射器が入っているだけ)、効果は絶大だ。あっという間に電解コンデンサーひとつと抵抗2つを回収した。

 注意することはただひとつ。溶かした半田は必ず吸い取り線か何かでしっかり取り除くことである。この半田が残っているとそこのランドの半田付けは極めてもろくなり簡単にとれてしまう。まあ冷えたときに半田の色が変わる(白く、表面が荒れた状態)ので残っているかはすぐわかる。Rcapdigital

 なにはともあれ、リズムキャプチャープロジェクトは最終の段階を迎え、がた老AVR研究所は次のプロジェクトの企画に入ることになる。お約束のソースコードと回路図を公開させていただく。回路図は、結局、水魚堂さんのCADソフトを利用させてもらった。この場を借りて感謝を申し上げたい。言うまでもないことだが、公開する回路図やソースコードは完全なものではなく、これによって起きる結果については何の保証も出来ないことをお断りしておく。

ここにAVRStudioのプロジェクトファイルの形でソースコードを置きます。なかに既に掲載した回路図も含まれています。また、XatoiのライブラリはchaNさんのソースを使わせていただきました。ありがとうございました。

「RhythmCap861.lzh」をダウンロード


 

| | コメント (5) | トラックバック (0)

« 2008年10月12日 - 2008年10月18日 | トップページ | 2008年10月26日 - 2008年11月1日 »