2015年2月17日火曜日

15.02.17 光テルミンの自動演奏


ものづくり仲間が教材用に光センサーで制御するテルミンを開発した。演奏は大変難しいので、上手に演奏する自動演奏装置を作ってみた。


光テルミンは、音量は反射型フォトインタラプタ、音程はCDSをセンサーとして使っている。このセンサーを外部からLEDで駆動して自動演奏させる。以前製作したメロディー貯金箱のシステムを基本に使うが、PWMの出力数や計算精度を上げたほうが良いので、最近開発した16bitのPIC24FJ64GA002のシステムを使うことにした。モータードライバーが2ヶ実装されているので、これでLEDを駆動する。



LEDの明るさの制御はPWMのデューティーの変化で行う。音量の制御はPWMの周波数が聞こえないよう、20KHzのPWMとする。フォトインタラプタは赤外線のLEDを使っているので、自動演奏側も赤外線のLEDを使う。連続点灯だと一定音量で鳴るが、音の切れ目がわからないし、聞いた感じもつまらないので、明るさが減衰していくようにした。減衰速度はテンポと音符の長さで変える。PWMのデューティーの設定値が9bitしかないので、変化時にノイズが聞こえるが、単純な音よりはよしとした。


音程のLEDも20KHzのPWMで駆動する。試しに半音ごとに2^(1/12)ずつPWMのデューティーが変化するようにしてみたが、周囲の明るさの影響で音程の間隔が小さい。いくつか試してみたところ、半音ごとの比が1.13程度でうまく音程が再現できることがわかった。ただし周りの明るさが変化すると音程ごとの周波数が変わってしまうので、再生開始時に基板のボリュームを読み、半音ごとの比を決めて、音程毎のデューティーのテーブルを作ることにした。これで明るさに従って音程を調整することができるようになった。それでも人が動いたりするだけで明るさが変化して音程が崩れてしまうので、再生中はじっとしている必要がある。演奏するメロディーは貯金箱のときに作成したものを使っている。


0 件のコメント:

コメントを投稿