SSブログ
-| 2019年12月 |2020年01月 ブログトップ

音を創るということ3(回路編)

■回路図
やっぱり回路図がないと、このブログが成立しないです。Kicadで作りました。
voice_editor.png

Kicadはなかなかのスグレモノと思いました。回路図作成だけの使用ですが、操作がわかりやすくストレスを感じさせないものでした。ただ、ライブラリーがちょっと貧弱なので、ネットで探してkicad専用のデータをダウンロードしました。
キーワードは、Kicad PCB Part Library
このライブラリ・サイトの登録はWindowsを使ってインストールするのですが、インストールの途中から、なぜかlinuxでもアクセスできるようになりました。(よくわからない)
この回路図の注意点としては、

●ロータリーエンコーダ(RE)のマトリクス部分は12回路のうちの1回路のみを描いています。
●REのシンボルは単極双投スイッチのシンボルを使用しています。本来のシンボルでは信号の流れがわかりづらいと思いました。
●実際にはデジトラ(DTD114)を数個使ったのですが、シンボルが見つからなかったので、定番の2SC1815と抵抗で代用しています。
●回路番号はつけていません。(現物から回路図を作るという作業って・・・)
●マイコンのピン番号つけるの忘れた。(前回のを参照願う)

■ロータリーエンコーダ(RE)
昔々、ロータリーエンコーダという名前を聞いて、回転方向も判別できるというパルスが出るしくみはどうなっているのだろうという疑問がありました。その後、実際の部品を見て、なるほどと思いました。それからプログラムで実際に使用することになって、回転方向を判別する方法はすごいと思いました。まあ、詳しい解説は他のところを参考にしてもらったほうがいいと思います。
キーワードは、  インクリメンタル、ロータリーエンコーダー、CCW方向

さて、このREの読み取りタイミングはどのくらいなのでしょうか、意外にネットで調べてもどのくらいで読み取るかが出ていません。プログラムを作る上でたいへん重要な部分なので自分で測定することにしました。手回し(あたりまえ)で、つまみを最速で回した時のタイミングを見ました。RE単体に抵抗をつないで、A相とB相の電圧をみています。
RE_1.png上の波形がA相、下の波形がB相です。


すると、A相がONしているのは5.424msとなりました。
RE_2.pngA相がONして1/4波長後にB相がONするのは2.529ms後となります。

つまり、A相がH→Lに変わってから2.529msまでの間にB相のレベルを読めば回転方向が判別できることになります。(最速と言ってますが、この時間が一般的かどうかは疑問ですけど。)

■PC900V
midi回路で使うフォトカプラというと、定番なのがシャープ製のPC900Vです。最近は面実装部品が主流なので、DIP品をわざわざ使うというのがなくなったようです。そんな状況なのでパーツ屋さんには在庫がないみたい(あっても、やたら高いようです)。そんな時のアリババ頼みということで、探してみると、ありました、10個で200円ほどでした。今後のことを考えて余分に購入しました。これがなくなったらどうするのってことですが、ネットを調べると、入手性のよいフォトカプラを使って、midi入力にされている方がおられました。
キーワードは、汎用フォトカプラ、 midi入力
「MIDI 1.0規格書」の日本語訳注によると、PC900Vを含めていろいろな高速オプトアイソレーターが指定されていますが、そろそろMIDI 2が始まっているので推奨部品も更新されることでしょう。
キーワードは、MIDI 1.0規格書 高速オプトアイソレーター

■基板
標準ピッチ(2.54mm)の115*160サイズ の片面ユニバーサル基板(蛇の目基板ともいいます)を使いました。手作りだと、組み立て上、金属のジャンパー線が交差したほうが都合いいので、両面スルーホールのユニバーサル基板なんかを使うと思い切り泣けます。

■スイッチ
回路図には書いていませんが、Scan_out0の行とScan_out1の行の前半はスイッチです。回路ではRot_in0,2,4,6の入力だけを結線しています。(余った入力は別に使うことができますね)

■コネクタ
REが42個、スイッチが6個もあるのでメンテナンス性を考えて、各素子は日圧のXH3Pコネクタで接続するようにしました。。コネクタ自体の入手性は問題なく、ヤフオクやアリババでも購入可能です。電線にピンをカシメるという作業が本当につらいです。42*3+6*2=138本なので、頭の中の減算カウンターが遅いくらいゆっくりと作動していました。

そろそろ年末の掃除をしなくてはと思いつつ、ジムビームをぐびり。

※このブログで書かれた内容によって生じた損害等の一切の責任を負いかねますので、予めご了承下さい。

nice!(0)  コメント(0) 

音を創るということ2

■マイコン
マイコンを使った電子工作では、このマイコンを選定するというのが一番楽しいです。今回はロータリーエンコーダ(以下、REとします)を42個使います。1個のREには3個の端子があり、そのうち2個の端子はマイコンに接続する必要があります。とすると、42*2=84のポートが必要で、スイッチ6個分も加えると96本のポートとなります。

こういう時はダイナミック駆動入力で処理します。ダイナミック入力の原理については説明なしです。(でも、ネットの情報では、初心者向けのダイナミック多点灯とかダイナミック多入力の情報がないんですよ)。マルチプレクサICなどを使うとポート数の削減は可能ですが、マイコンのみで行きたかったのでできるだけ余分なICは使わないことにしました。回路を設計するのに注意したことを書いておきます。

●他入力の回りこみを防止する
●読み込むタイミング周期(REの読み込みタイミングがシビアそう)
●ポート切り替え時の重なりをしない
●入出力のHigh/Lowレベルを守る

ダイナミック駆動の入力で8本、ポート切り替え出力に12本の計20本、MIDIの入出力に2本が必要なので、全部で計22本のIOポートが必要になります。部品単価、DIPパッケージ(面実装部品はできるだけやめたい)、などを総合的に検討した結果、PIC18F27J53に決めました。このマイコンをすごいと思うのはROMが128Kもあるのです。また、Rimappable Peripheral Pinでモジュール接続ピンを自由に変更できるのも使いやすいと思いました。
キーワードは、18F27J53 Data Sheet
このマイコンのデータシートは英文なので、ちょっとつらい場合は18F97J60などの日本語マニュアルを部分的に参考にしています。

■ポートの割り当て
検討したポート割り当ては下のようになります。ダイナミック駆動の出力はScan_out0〜11で、入力はRot_in0〜7となります。
ポート割り当て_2.png
ここで注意することは、10pinがScan_out5で、9pinがScan_out6になっていることです。(ややこしいけどマイコンの仕様です)








ポートの図を書いたところで回路図がないことに気づきました。ほとんどの資料はメモ用紙になぐり書きをしているので、お見せできるようなものがなかつたのです。そこで、急遽、PCB CADを使って作成することにしました。やっぱりオープンソースの Kicadでしょうか。Linux mintにも対応しているらしいVer5.0.2を使うことにします。
キーワードは、Kicad 5 mint
パソコンCADは使ったことがなかったけど、どんな具合でしょうか?

忙しいけど、コアントロー・サワーでも作って飲んでみよう。


※このブログで書かれた内容によって生じた損害等の一切の責任を負いかねますので、予めご了承下さい。

タグ:MIDI DX7 PIC18F27J53
nice!(0)  コメント(0) 

音を創るということ

昔々、誰かに、すべての音は正弦波で出来ているんだよと聞いたことがあります。へぇ~と思ったけど、すぐに忘れた。

ヤマハがデジタルシンセサイザーDX7を発売した時、このことを思い出しました。でも、それよりも、16音ポリフォニック、61鍵キーボード、MIDIという仕様と、すごい価格の方に驚いたのです。高いけど安いということで、清水の舞台から飛び降りるつもりで(まさしくピッタリの言葉)買いました。

アナログ・シンセサイザーの知識しかなかったので、VCO、VCF、VCAなどというワードをオペレーティングガイドブックで探したのですが見つからず、代わりにアルゴリズム、オペレータ、キャリアというワードが頻繁に出てきました。

取扱説明書類はリンクはしませんが、ヤマハが置いてくれています。
キーワードは、YAMAHA、DX7、取説、オペレーティングガイドブック
このシンセサイザーはちょっと違うなと感じたのは、「弦楽器独特の弦をこする感触を表現する」というフレーズで、そのためにモジュレータを操作して創り出していました。今なら、デジタルサンプリングで表現するのでしょうが、FM音源というベースでやっていることに新しいものを感じたのです。

このパラメータを操作するためのMIDIコントローラを製作しました。イメージはオペレーティングガイドブックの17ページにあるイラストです。つまみはイラストほど多くないですが、市販品では適当なものがないので自作することにしたのです。数回に分けて回路とプログラムを説明することにします。

■MIDIコントローラの仕様
簡単に説明すると、DX7のVOICE パラメータをつまみでリアルタイムで操作できます。MIDIコントローラというよりもボイス エディターと言ったほうがいいかもしれません。

●A5サイズ
演奏をしながら操作できるということを意識すると、ケースの大きさはA4やB5サイズはちょっと大きすぎます。逆に装備するつまみの数からB6サイズでは小さすぎました。
●電源アダプター DC9V
調べたかぎりでは、エフェクターや電子楽器はDC9V入力が多いみたいです。
●VOICEパラメータ入力に対応
取扱説明書のMIDI DATA FORMATを見ると、1音色のバルクデータとして156種類の共通Voiceパラメータがあります。さすがにすべてのパラメータのつまみを用意するのはしんどいので、OP1〜6(p=0〜20がOP6です)の一種類とピッチエンベロープジェネレーター(p=126以降)が操作できるようにしました。
●つまみ 42個 スイッチ6個
つまみは右回転で増、左回転で減となります。パラメータ個々にその範囲内の数値を設定出来るようにしています。たとえば0から99までとすると、99を越えたり、0を下回ることはありません。
スイッチはOP1からOP6を入り切りするためのものです。操作時に編集しているオペレータ以外のオペレータを入り切りする場合が頻繁にあるのでスイッチにしました。
●MIDI端子
MIDI OUT、IN、THRUの3個の端子を用意しています。 INとTHRUは今後の機能拡張用に考えています。   

■レイアウト
DX7のVOICE DATA LISTの配列になるべく合わせています。
一番上の段(行列でいうと一行目)がスイッチで、オペレータ1〜6のひとつを選択しON・OFFを操作します。(実はこの部分には問題がありました)
Layout_of_Panel.png
このレイアウト図はLibreOfficeのDrawで描きました。LibreOfficeはいいですね。無料ですもの。










2行目がLFO関連
3行目、4行目がピッチ・エンベロープ・ジェネレーター
5行目がモジュレーション・センシティビティ
6行目からがオペレータ関連です(カタカナ書くのつらい)
そうそう、4行2列目は空白ですが、メニュー項目を割り当てようとしています。8ビットのデータ構造なので、256種類のメニューが可能です。パラメータの転送なんかを定義しようとしています。
インスタント レタリングでケースに印字すればそれらしくなりますが、透明プラスティック板に印字してオーバーレイ方式にすれば再利用できます(貧乏くさいかな)。

さぁ、I.W.ハーパーを強炭酸で割ったのを飲みますか。


※このブログで書かれた内容によって生じた損害等の一切の責任を負いかねますので、予めご了承下さい。

タグ:DX7 MIDI
nice!(0)  コメント(0) 
共通テーマ:趣味・カルチャー

耳をすまして聴く

■キーボードを分解する
鍵盤が新品のようになったのはいいのですが、肝心の音が出ないのを何とかしないといけません。PC-50はプラスのドライバーがあれば簡単に分解できます。ケースの裏側のビスを数本を取るとパカッと外れます。開けた途端にバネが飛び出るとかはありません。ビスは無くさないように注意。

左側にある100mm角基板のコネクタ類を引っ張って外します。コネクタは何種類もありますが、ピン数が異なっているので、後で差し込む時も心配ありません。でも、静電気だけは注意。何か金属物に事前に触れておきます。

PIC_215419.JPG鍵盤の後側からの画像






鍵盤の後方部分にバネがケースとつながっているので、引っ張りながら外していきます。バネは49本あって、白鍵盤と黒鍵盤でそれぞれ長さが違っています。これはなくすと大変なので注意。バネの取り付け順番はないようです。(鍵盤の構造はうまくできていると思いました)

鍵盤に番号をつけながら(順番間違うとすきまが見苦しいです)すべて外すと、灰色のラバーゴムがついた長ーい基板が現れます。
PIC_211112.JPG






TVのリモコンを分解すると同じような構造を見ることが出来ますが、まったく同じです。このラバーゴムを外すのが一番大変なんです。外してしまうと、もう戻せないのかななんてフッと考えてしまいます。具合悪いことにラバーの周囲には両面テープがかなり強く張り付いていて、分解する気持ちを減少させるようになっています。ラバーは何組にも別れているので、識別の番号を記録しておきましょう。ラバーの尖っている出っ張りが基板の小さな穴に入るのかが本当に不安になりますが、多分、何とかなります。

■鍵盤接点
midi出力が出ないという不良はほとんどの場合、ラバーゴム内側の導通(黒い)部分がへたっているのが原因のようです。でも、分解してはじめてわかるのでは困ります。操作パネルのLEDディスプレイは、電源スイッチをONにすると数字を表示しますが、この時に鍵盤を押さえると、LEDのすみの部分が押し-離しにあわせて点滅します。これが反応しない場合はラバーゴムの導通部分の劣化と判断できます。

修理にはアルミテープを貼る方法と導電部を交換する方法があります。
作業自体は何にも問題はないのですが、鍵盤が黒白あわせて49鍵あります。スイッチが2個なので、49*2=98箇所もあり、相当な人間力を試されると覚悟をお願いします。
●アルミテープによる方法
アルミテープを3mm径で切り、導通部の頭に貼れば作業終了です。接着剤のついたアルミテープを下の画像のような型押し器で星形に切ると作業がはかどります。5mmサイズの星形には重要な意味があり、作業をすればわかると思います。
PIC_123411.JPG近くの100均ショップの調理器具コーナーで扱っていました。星形以外にも猫・犬・おたまじゃくし形などがありますが、使うのはなんでも構いません。
この方法、10万回の打鍵テストには耐えられないようです。アルミテープの接着剤をもっと強力なものにしないと剥がれてしまいます。(貼り直しが非常にめんどうくさい)

●接点導通部の変更
接点の黒い部分のみが劣化しているのだから、その部分だけ変更します。あの部分は何と言う名前かを検索しました。
キーワードは、接点、ゴム、導電
多分、アマゾンとかで引っかかると思います。PIC_123622.JPG
3mm径のもの。探せばもっと小さいものから大きなものまであります。





もっとお安くしたいと考えるとAliExpress(アリババ)にもありそうです。でも英語では何と呼ぶのだろうという疑問が浮かびます。
keyword is     remote   control   conductive   rubber   button
余談になりますが、AliExpressは送料無料のものも多く、中国発送なので消費税がかからないというのが気に入ってます。しかし、電子部品についてはインチ表記なので、注意が必要です。

mm inch
0402 01005
0603 0201
1005 0402
1608 0603
2012 0805
3216 1206
3225 1210
5025 2010
今回の記事には関係ないのですが、ついでながら、例として面実装のチップ抵抗のサイズ表記表をあげておきます。こちらはmmサイズと思っているのに、あちらはinchサイズで解釈するので間違えると大変です。





ラバーゴムの導電端子部分をカッターで切り取り、導電粒子をシリコンゴム用ボンドで接着します。
PIC_160217.JPGこのボンドは100均ショップでは手芸コーナーで扱っているようです。




●基板の方もクリーニング
長い基板には49*2個の、丸にスリットが入ったメッキ接点が印刷されています。この部分の接触不良も十分に考えられますので、アルコールかコンタクトZで導通を改善するといいでしょう。・・・・コンタクトZを馬鹿にしてはいけない。
PIC_214021.JPG








キーワードは、特殊接点復活剤  コンタクトZ

■再度、組み立て
外した順番を逆にして組み立てていきます。ラバーゴムの順番、白鍵黒鍵の順番を間違えないならきれいな状態に組み上がります。・・・という訳には行かないようです。ラバーゴムを基板の穴に入れるのが本当に嫌になります。この時に使う秘密兵器は、ゼムクリップという全長28mmの事務用品です。
PIC_152319.JPGゼムクリップを伸ばして使います。





このゼムクリップの直径は0.8mmですが、ちょうどラバーゴムの穴に合うのです。ラバーゴムの穴にゼムグリップを差し込み、その状態で基板の穴に差し込むという作業になります。最初から力を入れず、徐々に力を加えて行くのがコツです。

■キーボードが復活したら
キーボードが復活したら正常に動作しているかの確認が必要です。パソコンのUSB端子に接続するアダプターはワンコインくらいの値段です。接続する時に、INとOUTの端子を間違わなければ問題はないでしょう。
キーワードは、USB MIDI アダプター
keyword is midi adapter 
さて、音源はどうしましょう。

●パソコン(スマートホン)を音源にする。
フリーのソフトはWindows、Linuxどちらも多数あります。linux ubuntu や mintなどならばRosegardenがおすすめです。
キーワードは、Rosegarden QjackCtl FluidSynth Qsynth
そうそう、DX7クローンのソフトシンセサイザーも忘れてはいけません。
キーワードは、DX7  DEXED  VSTプラグイン
●音源ICを利用する
おすすめはVS1053bというICです。GM1インストゥルメントセットのmidi音源で最大同時発音数は64音もあります。他の仕様も感激するレベルです。秋月電子商会では基板もついて1000円未満です。(他に部品が必要です)
キーワードは、VS1053b 日本語データシート 私家版
これで練習用のシステムが完成しました。

さあ、ひと仕事が終わったので、笑っで酒を飲みに行こう。


※このブログで書かれた内容によって生じた損害等の一切の責任を負いかねますので、予めご了承下さい。

nice!(0)  コメント(0) 
共通テーマ:趣味・カルチャー

キーボードは垂涎のアイテムだった

シンセサイザーを演奏するためには、ピアノを演奏するように鍵盤が弾ければいい。そこで練習用のキーボードを買うことにしました。求めるキーボードの条件(あくまで個人の意見です、誤解なきよう。)は、

●midiキーボードであること。
専用ドライバーがなくても何とかなります。だからWindows7が終了してもLinux mintで使えます。
●ベロシティ入力に対応していること。
ベロシティは弾いた時の二つのスイッチの時間差で見ているようです。強く弾くと時間差が少ないことで判断しています。なので、鍵盤ひとつにスイッチがひとつだと強弱を表現できないのです。
●鍵盤は標準サイズで49鍵あること。
正しい指使いを覚えるには標準サイズの鍵盤がいいのです。
●安価なこと。ジャンク品でも修理できるようなら可。
実はこれが一番重要。高価な物を買って放置すると家族からの冷たい視線は確実です。

ネットで調査すると、ローランド製EDIROLのPC-50という機種が見つかりました。
2005年頃の製品ですが、上の条件にピッタリと適合しました。リンクはしませんがローランドのページに取扱説明書が置いてあります。

キーワードは、ローランド、EDIROL PC-50、カタログ、取扱説明書

この仕様はなかなかのものです。
ヤフオクで割と短期間に手頃な値段で落札できました。
で、届いた梱包をあけてみると流石に値段どおりの物でした。さっそく分解。
PIC_205852.JPG分解してみる






PIC_211132.JPG鍵盤を取り外す







鍵盤は黄ばんでいるし、音が出ない(midi出力していない)。

■鍵盤を実際に白くしてみる。
キーボードの黄変対策についてはネットで調べると、白くする方法がたくさん載っています。

キーワードは、鍵盤、黄変

要は「ワイドハイターEX」の液に鍵盤を浸して、白日の下にさらしておけばいいのだ。
具体的な方法はネットで親切丁寧に解説してくれているので、ここでは割愛。
しかし、疑問がたくさんわいてきます。

●漂白剤をいれる容器はどんなものがよいのか
●ワイドハイターの量はどれくらい必要?
●どれくらい放置しておけばいいの
●酸素系の漂白剤は屋外においても安全なのか、ガスが発生しないか
●使い終わった液はどうすればいいのか
●プラスチック製の鍵盤は劣化しないのか

新聞のチラシを見て、「ワイドハイターEX」の価格を調査する。お店によって、値段がびっくりするくらい差がある。底値と思われる値段でとりあえず5本ほど購入した。
PIC_114000.JPG入れる容器はスーパーの惣菜コーナーとかにある透明パックがよいみたいです。




その後、ソリュブルコーヒーの空き瓶がもっといいことに気づきました。空き瓶にはいろいろな高さのものがあり、瓶の高さが180mmのものを使用しました 増量対応らしいので手に入るかな。
PIC_165523.JPG右の175g入の瓶は160mmでした(ちょっとギリギリ)







割と天気のよい日を選んだのですが、途中くもり空にもなりました。でも、2〜3日あれば白くなっていました。49鍵をいっぺんに浸す必要はありません。ちょっとずつでかまわないのです。結局、液剤は1本あれば十分です。なお、使用した液剤は本来の洗濯に使用できました。容器にはサランラップでフタをしていましたが、別に問題となることはありませんでした。
さて、ひと仕事が終わったのでシャワーでも浴びてこよう。
※このブログで書かれた内容によって生じた損害等の一切の責任を負いかねますので、予めご了承下さい。

タグ:キーボード
nice!(0)  コメント(0) 
共通テーマ:趣味・カルチャー

-|2019年12月 |2020年01月 ブログトップ

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。