100均ピアノを多機能キーボードに改造
[2018年10月13日(Sat)]
(追記:完成動画と空中配線、参照リンク先を追加 2018.10.15)
キーボード=3音源。(PIANO、SHEPARD、SIN14)
オルゴール演奏= 子供の歌・日本の歌、各8曲。
世界の歌、6曲。計22曲。(連続演奏モードあり)
+音声再生= 2種類を実装。(曲と同時発声も可)
1)今回のおもちゃ
これはPIC電子オルゴールの技術研修に使えるのではと思い、即買ってしまった。(店頭にあった4個全部)
今回のおもちゃはスイッチ切替により、キーを押すとオルゴール演奏が全8曲流れる。
しかし、演奏曲は単音で各数秒間ずつ、しばらく遊ぶと飽きてしまう。
前面スピーカの音は、音量は十分過ぎるが、やや歪みが多いような気がする。
ピアノモードでは、やはり単音でピアノ音のみ。黒いキーは 飾り で音は出ない。
一番気になる「音程」(特に「シ」の音)は、素人でも「えっ?」となる程。
これは新品のまま、おもちゃ病院 に持ち込みたくなります。(DAISOの方は許容範囲)
2)今回の改造ポイント
今回も、 つつじが丘おもちゃ病院 のブログを参考にしました。
オルゴール演奏の選曲では、福岡県 飯塚こわれたおもちゃの相談所 の先輩ドクターが公開されていた全楽曲試聴ファイルや、音源の違いによる比較試聴サイトなどが分かりやすくて、大いに参考になりました。
(ちなみに、6曲目の「踊るポンポコリン」は、同氏の曲データを実装しました。)
先輩各位には、この場を借りて 感謝申し上げます。
これからも、技術志向のおもちゃドクターの輪を広げていきたい。
3)要件とプロジェクト開発
要件と設計の概要は、つつじが丘おもちゃ病院のブログにあるとおり。
・鍵盤の操作で音階を演奏すること
・数種類の音色のバリエーションを持つこと
・自動演奏曲を持つこと
・数種類の効果音が出せること
・動作中はLEDをチカチカさせること
当方では、(2018.9.15現在の)最新版オルゴールエンジンで動作するように検証したのみ。
開発者のご指導で、SONG_PSの値を「3」に修正し、音程の安定化を確認した。
そんな訳で、今回の一番の改造ポイント、実は「空中配線」である。
以前にも「空中配線」に挑戦したが、PIC周りに部品を集めすぎた点を反省して、今回はPICの足からポリウレタン被覆の配線材でリード線を引き回してみる。
まず、ポリウレタン被覆が熱で溶けるタイミングで予備ハンダ。
まだまだ未熟なコテさばき、猛練習が必要である。
せっかくなので、スピーカ回路に直列に音量制限用の数十オーム抵抗を挿入してみよう。
これで、電池が長持ち、お昼寝タイムのBGMとしても使えるようになるかな?
4)ダウンロード
開発資材は、当方のヤフーBOXにて公開(していたが、2020/04/12 に
グーグルドライブに移動して、公開を継続)している。
なお、これらのプロジェクトは、複製・改変・再配布は自由であることを、あらためて付け加えておく。
簡易改造プロジェクトは「100kin_piano_ver1_18326.X」と「100kin_piano_v1_LF18326.X」の2つ、フル改造プロジェクトは「100kin_piano_ver2_18326.X」です。
注意:音階データやオルゴールエンジンとの整合を確保するため、このプロジェクトロケーション限定でビルドしてください。
5)おもちゃドクター向けの技術情報
SONG_PSは演奏処理プリスケール値です。
愛用の電子オルゴールの演奏処理周期は PWM周期×SONG_PS になります。
と言えばソースコードのコメントのままですので、ToyDr.わたなべ の試作品で実演します。
たった一つの数値を変えただけで、格段に音程が改善できて感激!
まだ理解不足ではありますが、開発者のご指導に、なるほどと感心しました。
音程が安定化するなら、なぜ最初から「SONG_PS=3」にしないのかというと、「音質が悪くなる」ことを考えてのことだと、私なりに理解した次第です。
そういえば、3パートでのオルゴール演奏を実装する場合はピッチベンドを実装しないとか、音声再生の総和を2以下にすることなどの設計条件は、機能要件と音質性能とのバランスが大切なんだなと思い知らされました。
ミニピアノ改造後の完成動画は、→ このページの先頭に載せました。


おもちゃクリニック ゆりかご 「やまのい病院」訪問診療 当クリニック「ゆりかご」は開設3年目ですが、糸魚川市には40年前から別のボランティア団体「糸魚川おもちゃの病院」が精力的に活動を続けており、現在も毎月第4日曜日に青海総合文化会館(きらら青海)にて… [Read More]