ぽんず製造所

御アクセスありがとうございます。閲覧にあたりましては「コンテンツについて」の内容をご理解いただいた上でお楽しみください。また、当ブログの内容はあくまで趣味で行ったものであり、学術的ではないことをご了承ください。

2015/05

MIDIインタラプタを作りたい

このまえテスラコイルで演奏ができたのはいいけど、MIDIインタラプタが金魚氏のものを使っていたので自分で作ってみたいなぁ......
っていうわけでそのへんも作ってみようと思う。前もちょっとやってみたけど今回は実用的(?)に使えるものを作ってみたい
MIDIインタラプタとは送られてきたMIDI信号をその音階の周波数に変換、矩形波パルスを出力するものです。


マイコンは前から使ってみたかったPIC24という16bitマイコンにしました。使ってみたかっただけ。
あと16bitだからちょっと複雑なことできるかな~とか思ってます

1431252824211

初めてのPIC24なのでうまく扱えるか不安...
今回は小さい方の14ピンパッケの「PIC24F08KL200」を使います。


まず開発環境を整えることから始まって
定番のLチカをさせてみます。適当にググって出てきたプログラムとかを参考にしました。

んで書き込んでみると

...

...

書き込めない...
なんでやねんと思いながらもいじっていくと、ライター(PICerFT)の設定が原因でした。拡張ICSPで書き込もうとしてたのですがKLシリーズは拡張ICSPに対応してないらしいです。
ただのICSPにして書き込んでみると...



動いてくれました
ん~でもMCLRピンを入力としてもなんか設定できないので色々調べてみるとPICerFTはどうやらそこのコンフィギュレーション書き込めないっぽいです。仕方ないのでMCLRピンのまま使います。


で、PIC24の練習として「音階表示器」をやってみようとしたのですが

「めうちゃんは音階表示器をやりたいんだね」
「やりたいめう」
「でもそのためにはLEDを12個つけるからピンは12本必要。ダイナミック点灯にしても7本。他に電源系や入力・出力などがあって14ピンマイコンじゃピンが足りないね」
「たりないめう...」
「そこで『チャーリープレクシング』という点灯方式を使う」
「使うめう」
「すると12個のLEDを点灯するのに4本で済む!」
「やっためう!すごいめう!!!」
※当時はめうネタが流行っていた

こんな感じで使用ピン数を削減。
実際には12個以上のLEDを点灯させたいので5本になります。
チャーリープレクシングはn^2-n個(n=ピン数)のLEDが点灯できるので5本で最大20個まで点灯できますね。

ちなみにこんな回路です。LEDを逆向きにつないだり工夫されています。

無題

欠点は1つずつしか点灯できないので少し暗くなっちゃうことです。まぁ高輝度LEDを使って大きめの電流流してあげれば普通につきます。あと制御がチョットめんどくさいことかな?


適当にプログラム作って書き込んでみたら動きました。
昔作ったチャーリープレクシングモジュールを接続しています。

1432128492210



動かすことができたので本番のインタラプタを作ってみようと思います。
ついでにさっきの音階表示器の機能も合体させちゃおうと思います。
まぁPIC18Fで作った時のをコピペしてちょっと書き換えるだけなんですけどね。

コピペしただけだけどであっさり動く



それと出力を2chにしてテスラ2重奏もできるようにしました。


もしテスラコイルのノイズなどでマイコンが暴走した場合、出力がHになりっぱなしになってしまい最悪テスラが燃えます。
この事態を防ぐためと、パルス幅の制御=放電距離の制御用に、ロジックICでパルス制御回路を設けました。
パルス幅の制御はマイコンにやらせてもいいけど、処理が追いつかなさそうなのでついでにロジックにやらせることにしました。
タイマーIC555を使うのが主流のようですが、今回は74HC123を使います。555タイプより小型化できるし2回路入っているしちょうどいい。

回路

midi123

マイコンからは10usのパルスが出力(アクティブロー)されるだけですがボリュームを回すことで大体3.3~330us(もうちょっと多いかも)の間でパルス幅を制御できます。
上の回路では次のパルスと重なって1つのパルスとなってしまいますが、下の回路ならば重ならずに出力することができます。
というわけで破壊防止・パルス幅制御回路は完成。


インタラプタとして最低限はうごいたけどボタン(と言うか切り替えスイッチ)が足りない。

「めうちゃんはスイッチを追加したいんだね」
「したいめう」
「でも残り3ピンしかない。全部つかっても3つしかスイッチは付けられない」
「ちょっと足りないめう...」
「そこで『分圧ADC式』(勝手に命名)という点灯方式を使う」
「使うめう」
「するとADCピン一本で(理論上)いくらでもスイッチが付けられる!
「やっためう!すごいめう!!!」

こんな感じで使用ピン数を削減。
回路ではこんな感じ

Untitled

どれかのスイッチが閉じた時、上の抵抗としたの抵抗で分圧された電圧が出てきます。
この電圧をADCで読んでどのスイッチが閉じたのかを判断します。
すべての抵抗を違う値にすれば同時押しにも対応できます。
「いくらでも」と言いましたが実際はADCの分解能や誤差、ノイズ等でズレるので余裕を持ってスイッチは4つまでにしました。 

実際にこの方式で読んでみましたが意外と使えます。


ちょっと長めの記事になったけどこれでインタラプタはほぼ完成です。
ピンが足りないンヒィ!!とか騒いでたけど回路の工夫で最終的に2本も余らすことが出来ました。しかもチャーリープレクシングはまだ余力があるのでLEDを追加できます。
チャーリープレクシングと分圧ADCはオススメです。

このインタラプタの基板はプリント基板で作りたいと思います。いつになるかわからんけど。

テスラコイルで演奏した

そういえば2ヶ月位前にElecrowに発注してた基板が届きました。
10枚発注にもかかわらず11枚入ってました。Elecrowは多く入ってるという評判があるので実はコレちょっと期待してたり
弾速計キットV2.0の基板です。

1429610333892
CIMG0343

NT京都で販売するつもりでしたが、Elecrow側のトラブルが合ったらしくてNTまでに日本に届かなくて結局販売できませんでした。
10x10cmで発注したけど5x7cmしか使わずもったいなかったのでHaido氏の基板も一緒に乗っけて発注しました。
Vカットはできない(できるけど高い?)らしいのでHaido氏が基板をカット、その後に自分のところに送っていただきました。

↓日本到着直後はこんなかんじだったらしい
CBP31wUUQAEFsta

コネクタ類が足りなくてあと少しで完成って所ですが配線ミスもなくしっかり動いてるようです。よかった。

1429623143949

弾速計キットV2.0は後々販売する予定です。



さて、テスラコイルで演奏するときはPCとテスラを絶縁しないとPCがフリーズしたりしてまともに演奏できません。
そのため光ファイバーケーブルとかで絶縁する必要があるのですが、よくあるテスラ回路だと光コネクタ(受光側)を改造する必要があります。
結構前にテスラ演奏用に光コネクタを購入してたけど改造がめんどくさくてやってませんでした。
いい加減演奏したかったのでようやく光コネクタの受光部を改造しました。
一般的なインタラプタの信号ではDTが低すぎたりするとインタラプタの信号ではなく「1」が出力されてしまいます。
具体的な改造方法は中の素子を取り出して普通のフォトトランジスタに交換するだけです。あとはカレントミラー回路やバッファとか通して整形すれば正確なインタラプラ信号が取得できます。

CIMG0345

左が送光コネクタ、右が改造済み受光コネクタです。送光側は改造する必要はありません。
フォトトランジスタを光ファイバーの位置ピッタリに合わせる必要があるので結構大変でした。こんな改造しなくても済む回路も考案中...
まぁこれで光ファイバーで送れるようになりました。

そういえばフィードバックをアンテナ→CTに変更しました。


改造も終わったんで久々にテスラコイルを引っ張り出してきて演奏してみよう....と思ったけどアホなミスして素子を飛ばしました
500Vの素子も少なくなってきたので倍電圧整流(282V)から全波整流(141V)に変更して200Vの素子で動かせるようにしましたが...

これフルブリ282Vの時の放電なんですが141Vだとコレの半分だよ

DSC_0294

さすがにしょぼいので"141Vでもコイル巻取り長くらい放電できるコイル"を目標に新しくコイルを巻いてみました(放電するとは言ってない)
VU75パイプに0.08mmUEWを1200回くらい巻いてみました。太めのコイルなのは共振周波数を落とすのが目的。ちなみに前のコイルはVU40で同じくらい巻いたので変わったのは太さだけです。
 
CIMG0344
あっ後ろの漫画はえっちなやつじゃないです


試しに放電させたわけですが数cmしか放電しない...

太い2次コイルの特徴を活かして思い切って1次コイルを2次コイルの中に入れてみました。

CIMG0346
CIMG0347

すると
 
CD-zfM6UgAIwC8n

コイル巻き取り長と同じくらい放電しました。
いやインダクタンスや1次の高さも変わってるし中に入れたから大きく放電したのかはわからないけど。
てかカンパントロイドとか頭悪そう(コナミ)


うまく行ったので演奏させてみます。

RED ZONE



ちなみに昔の放電はこんなんだった。
比べると安定度も放電長も良くなったと思う 。




"ビリビリ"中学生にちなんでonly my railgun



いい感じだと思う。あとはケース?にまとめられたらいいかも。
YouTube
Youtubeチャンネルです。実験動画等上げています。よろしければチャンネル登録お願いします。なお、当チャンネルは収益化していません。
最新コメント