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



今年もキーワードで振り返り。


Raspberry Pi書籍、WebIOPi、ロシアの隕石、
宇宙戦艦ヤマト2199、aitendo FSTN液晶、
納谷悟朗、亀山助清、山内溥、UbuntuとPAE、
AMDFのクロマチックチューナー、イプシロン、
MIDIキーボードシールド、Arduino Galileo、
インテルQuark、ガパオライス、フィリピン、
パラオ、MFT2013、S660、アイソン彗星、
PSoC4 Pioneer Kit、LCRフィルタ、
ノーコン・キッド。


なんとなく、想像してたほどエレウケの手が
進まなかったなぁという印象。もうちょっと
ガンバリマショウ。


今年も、私のサイトにお越しいただいた皆さんと、
私が楽しみにしているサイトの皆さんに感謝。

良いお年を。



コメント ( 0 )




あいかわらず、Arduinoのウクレレ用クロマチック
チューナー。

アナログ周りの回路を、ECM~増幅~LPF~クリップ回路
と、一通り繋いでオシロで眺めてみることに。


ECMは、例によってパナソニックのWM-61Aを使用。
http://akizukidenshi.com/catalog/g/gP-02303/

コイツを20倍に増幅して、音量調整後にさらに20倍。
およそ5Vpp近くまで増幅したところで4000Hz程度の
LPFに掛けて、小信号を目立たせるようにクリップ
を掛けるという流れ。

後半2つはそれなりに動くことが確認できてるので、
前半部分の動きと、それらも組み合わせた全体の
動きがどうなるか。


まずは全段の20倍増幅×20倍増幅の部分。
色々ありつつも、それなりに動くことを確認。

ただ、何かの拍子に、1段目が異常発振して、
数百Hz程度の矩形波(VccとGNDの往復)出力装置
に早変わりしちゃうことが。

ブレッドボードなので、グリグリ弄ってるときに、
入力が瞬断(入力がオープン)になっちゃってる
んだろうと想像。
こればかりはブレッドボードではなんともしがたい。
とりあえず放置。


共鳴胴がない、自作のウクレレを使って、弦のみの
振動をECMで拾って、波形を眺める…

合計のゲインが400倍(50dbくらい)になっちゃう
ので、微妙なノイズも結構大きくなっちゃう。

スイッチングACアダプタで動かすと、電源のリプル
がバリバリ出力に載っちゃう。駄目。

電源にLCRフィルタを使ってリプルをおさえてみる。
うん。それなりに思ったような動作。


さて、ECM入力→5Vpp程度に増幅ができたので、
後続の回路に繋いでみることに。


電源は、先ほどのフィルター通した電源をそのまま
流用。
オシロで眺めてみると、なんだか400Hzくらいにノイズ
が乗っちゃってる感じ。なんだ?

…クリップ回路部分は、5Vpp近い振幅を入力するとき
はゲインが0.5倍くらいなんだけど、小信号時には
10倍近いゲインを掛けてるから、前段とあわせると、
20×20×10=4000倍(約70db)に増幅してることになる
から、電源につけたLCRフィルタでは微妙に残った
リプルが悪さしてるって考えるのが妥当だろうな。

あと、GND~5Vの5Vppで動かしてるのに、振幅が2Vpp
ちょっとしか出てない気がする。どこかで振幅が
削れているような…変な感じ。


気を取り直して、電池(単4電池×2)の3Vで動かして
みる。



トリガー掛けて波形を眺めてみると…
うん。悪くない。



(低いCの音の場合)

弾いた直後はこんな風に倍音がいっぱいって感じ。
その後、百リ秒程度経つと、



こんな感じに倍音成分が減っていく感じ。

クリップ回路が効いてて、振幅自体の落ち方はけっこう
なだらかで狙い通りかな。


なんとなく動くようにはなったので、この後段に、
Arduinoのピッチデテクト処理を繋いでやれば、
クロマチックチューナーの基本的なパーツは完了
ってことになるはず。

上手く拾えるといいんだけどな。


…問題は電源まわり。
電池駆動にはあまりしたくないんだよな。

それと、この後考えている追加の出力処理(MIDI出力)
は、カレントループで5mA程度流す必要が出てくるん
だけど、これがどのくらいノイズとして影響するのか。

この間の、キャラクターLCDバックライトのLEDでも、
電源電圧を揺さぶるほどのノイズ源になってたので
(ちなみに20mA程度)、5mA流すのがどのくらいの
影響になるのか。

ArduinoのPWM(約490Hz)と比べれば、MIDI出力は
周波数帯が全然高いので、あまり心配は要らないの
かもしれないけど…

基本に忠実に、デジタルとアナログの電源は分けるか…


http://hackaday.com/2013/12/28/making-an-arm-powered-midi-synthesizer/
この、LPC1114のMIDI対応アナログシンセ。いいな。
ツマミがいっぱいついてるのはやっぱりいいよな。


スイッチサイエンスで、
http://www.switch-science.com/catalog/1560/
Seeeduino Archも売ってたんだなぁ。2415円は魅力的。
Arduinoで足りないときは、やっぱmbedとかにちょっと
頼りたくなるんだよな。

1個持ってても損は無いと思うんだよな…

http://jksoft.cocolog-nifty.com/blog/2013/12/seeeduino-arch.html
じぇーけーそふとさんのブログを眺めると、どうやら
普通のmbedみたいにUSBメモリ的なデバイスで繋がる
から、普通にプログラムをコピーすれば動く…と。

シールドが3Vなのが、微妙に困るところがあるんだ
けど、値段と使い勝手と処理速度とメモリ量を考えれば、
やっぱ魅力的なボード。



コメント ( 0 )




相変わらず、Arduinoのウクレレ用クロマチック
チューナー。


オペアンプのコンプレッシング回路が期待通りに
動いてくれたし、YINとAMDFによるピッチ検出の
プログラムもそれなりに動いてくれているので、
あとはその周辺を含めて組み合わせるだけ。

というわけで、折角なので例によってサイト上に
まとめを作ろうかと画策中。


サイト上に纏めるとなると、とりあえずマンガで
描きたくなるので、例によってdrawソフトで
グラフをちょこっとずつ描きだしてみる。


いつも思うんだけど、もうちょっと使いやすい
draw系ソフトって、ないのかなぁ。OpenOffice
のDrawは、無料とは思えないアレコレが盛り込ま
れていて、アリガタイんだけど、かゆいところが
いっぱいあるんだよな。

・グリッドのピッチが固定
・曲線を含む図形を描く時の融通の悪さ
・テキストボックスとグリッドの相性
・外部データを使ったグラフの描画ができない

といったあたり。


と思って調べてみたら、グリッドのピッチは、
普通に調整出来るようになってるんだな。
http://bull.sueki.net/articles/openofficedraw/729.html
知らなかった。よく調べないで思い込むのは
良くないな。


曲線を使った「シェイプ」は、予め登録されている
のは再編集できなさそうだし、新たに追加するのも
できなさそう。

微妙に手を加えてから使いたい図形とか、不便なん
だよな。あと、よく使うものとかは登録しておき
たいし…。


外部データでグラフを自動的に描くのとかは、まぁ、
Calcを使ってグラフ描いたのを貼ればいいっていう
のもあるんだけど、いかにもCalcでグラフ描きました
的なフォーマットがイヤだし、あと、テキストボックス
のグリッド合わせで微妙にズレるのとかも、目下
「仕様通り」的な感じ。


曲線の位置指定とか、微妙な位置合わせとか、この手
のは、マクロプログラム書いてチョイチョイで
色々出来るのかも…と思って、ちょっと調べてみた。

うん。Calcだけじゃなく、Drawでもマクロが使える
んだなぁ。
とすれば、マクロを使って、微妙な位置合わせとか、
データを元に自動でグラフを描いたりとか、色々
やろうと思えば出来そうだなぁ。

MS Officeは、helpがそこそこあるし、ネットで
調べ物すれば答えがサクッと見つかるから、マクロ
でゴリゴリやる気が起きるんだけど、OpenOfficeは
ちょっとハードル高いんだよな…


そもそも、アレコレかゆいところに手が届くdraw系
のソフトがあればいいんだけどな。



http://news.mynavi.jp/news/2013/12/24/173/index.html
シャープ。PM2.5のセンサー。へぇ。
PM2.5はともかく、スギ花粉のセンサーとかって、
秋葉原で手に入らないもんかなぁ…


http://www.switch-science.com/catalog/1568/
スイッチサイエンスで、Arch Pro。
mbed用として、1個持っててもいいなぁ。


ちょこっと、CanonのS120について調べてて、
http://wivern.exblog.jp/20954318/
こんなページが!

巨大な水中モーターもビビるけど、その下の
イラストの、水中モーターを使ったイラストに、
さらにビビる。





コメント ( 0 )




昨日のノイズの原因がわかったことを受けて、
試しにPCBEでCタイプ基板に部品を並べて、
入りきるか考えてみる。


まぁ、メインパーツは8ピンのオペアンプ2個だから、
入りきらないとは思えないんだけど、これに電源回路
のLCRフィルタ、1000uFのコンデンサと1000uHの
インダクタ、3.5mmジャック、ECMなどを配置しても、
使いやすい配置にできるかがポイント。

電源のLCRフィルタを省けば全然余裕なんだけど。


配線をそこそこ考慮して部品を置いていってみると…
スペース的にも問題ないみたい。こんな具合。



うん。まぁまぁ。あとは、配線でアナログ信号周り
に悪影響が出ないように考えないとな。


そういえば、ふとアイデアを思いついたときにメモ
をとるツールとして、防水タイプの電子メモみたいの
ってないのかなぁと探してみたんだけど、どうやら
ないみたいだなぁ。

http://www.sharp.co.jp/enote/products/wg-n10/
白黒液晶で、電池長持ちなのはいいんだけど、
防水は無いみたい。あと、ちょっと高いね。

機能的には、電子メモっぽくて色々便利そうで面白い
んだけどな。


firefoxでFLASH使ってるページがこけまくるんだ
けど、どうしたらいいかなぁと。FLASHを無効に
するプラグインとか考えても、youtubeとかの
使い勝手が悪くなっちゃってもいやだしなぁと。

色々探ってみると、
http://jutememo.blogspot.jp/2013/06/firefox-click-to-play-switch.html
「Switch plugins.click_to_play」
「Click-to-Play Manager」
の2つのプラグインを合わせて使う感じがいい
のかな。


http://ednjapan.com/edn/articles/1309/17/news066.html
コイツは、インダクタンスを計るものなの?



コメント ( 0 )




昨日の原因不明だったノイズの件。判明。
http://brown.ap.teacup.com/nekosan0/2126.html


各部分ごとに動かしてみたところ、やっぱり
LCDのバックライトの輝度調整要のPWM信号
がノイズになってたみたい。

LCDシールドを載せたArduino-Uno基板だけを動作
させて、VccとGNDにオシロ当てたら…



こんなノイズがくっきり!矩形波の形で、40~50mV
くらいのノイズ。

んで、これを元に、別のArduinoやオペアンプとかに
5Vを供給すると、デカップリングコンデンサとかの
影響で、490Hzの三角波が出ちゃうってことみたい。
なるほど。

そんなに大電流を流してるのか。LCDのバックライト。
白いバックライトだからなのかなぁ。


というわけで、ひとまずPWMによる調光を止めて、
付けっぱなしに。Arduino-Uno基板上のシリーズ
レギュレータから5Vを作り出し、もう一つの基板
(DDSファンクションジェネレータ)と、オペアンプ
に電源を供給。

  →LCRフィルターを通したり、通さなかったり
   のパターンを織り交ぜて


そしたら、オペアンプとかの電源ラインのAC成分が、

こんなですよ。こんな。

あぁ、ようやくリプルノイズが綺麗に消えた。


もちろん、この電源を元にして、sin波を入力して
クリッピング回路を通った波形は、崩れのない
綺麗な波型になった。シメシメ。これが欲しかった
のだ。


原因がPWMとバックライトにあるとわかった以上、
もしかして、USB給電とか、スイッチングACアダプタ
とかでも、それなりに動くんじゃね?と思って、
試してみることに。

まずは、PCのUSB給電で動かしてみる。

USBから取り出しただけの電源だと、



こんな風に結構なノイズが載ってるんだけど、
これをLCRフィルターに通すと、



イイカンジに綺麗に。まぁ、PC側の処理負荷の変動
で、結構低周波のノイズが載っちゃうんだけど、
まぁ、それはそれ。

とりあえずこれで動かしてみると、小信号入力時まで、
それなりに整った波形が得られることが判明。シメシメ。


次、秋月製スイッチングACアダプタ。LCRフィルタ無し
だとこんな。



それが、フィルターを通すと



こんな具合。まぁまぁイイカンジ。

動かしてみる。気になる小信号時の出力は、



こんな感じで、FFT掛けると、



確かに400Hzのところに信号が出てる…んだけど、
650Hzくらいのところにもなんか出てるな…


このノイズが、許容範囲内かどうかを見極める。

今回はADCは8ビット精度で、Vrefは5V。ということは、
  5V÷256 ≒ 20mV
がサンプリングの分解能。丁度さっきのグラフの
小信号時が分解能ギリギリの波形ってことになる。

実際に扱う波形は、これよりも大きいはずだから、
ノイズよりも充分優位に大きい信号として読み取れる
はずだ。よし。

ちなみに、650Hz付近のノイズの原因はよくわからない
んだけど、まぁ、影響しない程度のノイズなら、放置
してもいいでしょう。


ちなみに、動かしてるところの風景。



左がArduino-UnoとLCDシールド。上はArduino互換基板
で動いているDDS-FGと、それ用のアセンブラプログラム。
ブレッドボードはオペアンプで組んだ4000HzのLPFと
ダイオードのクリッピング回路。


とりあえず、躓いていたところは解決できたので、
この2つのオペアンプだけじゃなく、ECMからの入力を
増幅したり、音量調整したりする部分とかも組み込んだ
回路図を、シールド化してみる方向で考え始める。

久々にPCBEを取り出して、Cタイプ基板サイズの上で
部品を並べていって、Arduinoのシールド形状にもって
いけるかどうかを確認してみよう。

LCRフィルタを載せなければ結構広いんだけど、
LCRフィルタのコンデンサがでかいし、ギター入力用
のジャック(3,5mmmにしちゃっておいて、変換プラグ
を噛ます目論見)も載せないといけないし、結構な
面積がとられちゃうんだよな。

あと、バックライトは、Arduinoに頼らなければ、
490Hzとか低い周波数じゃなく、もっと高い周波数
でPWM調光すれば、フィルタでガンガン削れるん
だけどな。


なんにしても、一歩進んで、ちょっとウレシイ。
とにかく、回路周りはとっとと済ませて、どっちか
といえば、ソフト周りのチューニングに凝りたい
んだよな。



http://www.asahi.com/articles/ASF0TKY201312250055.html
ほう。もう半分に半減してるのか。あれから30年
経ったのか。


http://www.rootprocad.com/
こんなCADソフトがあるんだな。ちょっと試して
みたい。


http://hackaday.com/2013/12/23/the-worlds-first-autonomous-flapping-mav/
ハチドリみたい。



コメント ( 0 )



« 前ページ