パラダイス

瀬川商店 第42回:MIDIコン・バカ一代②

2025.08.15

先週の終わりに沼落ちしたと書きましたが、その理由はArduinoを見つけたことと、3Dプリンターが500ドル前後で購入できる時代になったのがきっかけでした。

Arduino UNOというイタリア製のマイコンが発売されたのは2005年なんです。その当時の僕は電子工作には関心がなかったので全く知りませんでした。先週書いた通り僕がArduino Unoの存在に気がついて、プログラミングを始めたのは2015年なんです。

マイコンボードArduinoの製品例(出典 Wikimedia Commons)

ざっとArduinoの概要を説明すると、Arduinoのプログラミングで使う言語は、C++(シープラスプラス)という本格的な言語がベースになっています。しか〜し、Arduinoでは、C++の複雑な部分を意識しなくても済むように、特別な「お作法」が用意されています。そのため、一般的に「Arduino言語」と呼ばれます。その最大の特徴が、すべてのプログラムがたった2つのブロックで構成されていることです。

1)void setup() { … }

「最初に一度だけやること」 を書く場所です。電源が入った時や、リセットボタンが押された時に一度だけ実行されます。機器の初期設定などをここで行います。

2)void loop() { … }

「電源が切れるまで、ずっと繰り返すこと」 を書く場所です。setup()の実行が終わると、このloop()の中身が何度も何度も、高速で実行され続けます。

まるで料理のレシピのようで、setup()が「材料と下準備」のセクション、loop()が「調理手順」のセクションだと捉えれば(強引だけどねw)そんなに難しくはないってわけです。ただ僕も最初は「voidって何だよ(−_−;)」とは思いましたよ(笑)

他にも、例えば、LEDを光らせるために、本来はCPUの内部にある「レジスタ」という複雑なものを直接操作する必要があるんだけど、しかしArduinoなら、

digitalWrite(13, HIGH);

という「魔法の言葉(関数)」を一行書くだけです。これは「13番ピンに電気を流して!」という意味の、人間にも割と分かりやすいんですよ。複雑な電気的な処理を簡単な言葉に置き換えてくれているのが、Arduinoが敷居を低くしてくれている理由ですね。

ちなみに、皆んなが大好きな「関数」ですけど、英語ではFunctionと呼びます。関数という漢字を当てはめた人に恨みはないけど、昔から関数ではなくてもっと僕でも認知しやすいFunctionに近い漢字にしてくれていれば、数学がもっと好きになったかも、、、ね。

そして、ライブラリと呼ばれる世界中の秀才・天才が開発して無料で公開しているLibraryがあります。これがあるから、今回のMIDIコントローラーもお手軽に制作できるってわけです。このLibraryをインストールすることでMIDI関係のプログラミングはかなり簡単に分かりやすくできるようになります。

そして夏休みの自由研究&工作、題して「自作MIDIコントローラーを作ろう!」という流れで説明して行こうと思います。

最終的には3本のフェーダーか、ボリュームノブにMIDI CCを自由にアサインして自分の環境に合うコントローラーを作ってみよう〜!というわけで早速必要な材料をリストアップしてみます。

※自身の経験に基づいて記載をしています。パーツ購入/組立てや自作機の利用で生じるいかなるトラブルも責任は負いかねます。自己責任ということを踏まえてお読みくださいませ。

工作・プログラミング要素など難しい部分があるかもしれません。「つまずく場面がでてきたら自分で調べて試してみる…」という作業も必要になることと思いますので、予めご了承ください。


1)Arduino Pro Micro

FORIOT 3個 Pro Micro At-mega32U4モジュール Type C

これはアマゾンでも買えるし、実はこのマイコン自作系キーボードでも人気なので、秋葉原の遊舎工房でも購入できます。USB端子がMicro Bの筐体と、USB Cの筐体があるので、購入する時は気をつけてください。


2)フェーダー用のスライダーボリューム B10KΩ

(これは45mmトラベル)

https://akizukidenshi.com/catalog/g/g109238

もしくは、同じくB10kΩ(これは30mmトラベル)

https://www.sengoku.co.jp/mod/sgk_cart/detail.php?code=3ADI-76JX



3)スライドボリューム用のノブ

https://akizukidenshi.com/catalog/g/g109246



4)リード線

Arduino Pro Microとフェーダー抵抗を繋ぐ線ですね。半田付けする前にテストしたい人はブレッドボードと以下のようなブレッドボードに使うジャンパーワイヤがあると便利です。ブレッドボードから、パーツを繋ぐオスーメスのジャンパーワイヤーと、ブレッドボード上で配線するためのオスーオスがあると良いです。それから、今回使うスライド抵抗や、ボリュームノブとブレッドボードを接続するには、みの虫クリップとジャンパーワイヤが付いになっているものもあると便利です。

https://akizukidenshi.com/catalog/g/g109830

https://akizukidenshi.com/catalog/g/g108933

https://akizukidenshi.com/catalog/g/g108916



5)ブレッドボード

ブレッドボードはこんなのです。これは半田付けせずにパーツを仮組してプログラムの検証ができるので、できればあった方がいいですね。

https://akizukidenshi.com/catalog/g/g100315


それから、最終的には半田付けするので、半田ごてが必要です。きっと友達か誰かしら持ってるのでは?


パーツに関して少し解説すると、秋葉原って昔は電気の街だったんだけど最近は意外とそうでもないんですよね。パーツ専門店も減ったしね。初心者は店頭で、スライダーボリュームとそれ用のノブのサイズを確認した上で購入した方がマッチベターです。スライダーボリュームのノブもサイズが意外と種類があるので、見た目で購入するとあらら?合わないじゃん?っていう事があります(汗)スライドボリュームとノブがセットで売ってるものがアマゾンにもあったりします。

フェーダーのトラベル、ストローク長ですが僕が好んで使っているのは30mmです。これはもう好みですね。僕はブラスや弦のsfzのオートメーションもフェーダーで書く事が多いのですが、トラベルが長いと指先だけで一発で上手くオートメーション書けないんですよね。できるだけ手首を動かさずにオートメーション書きたい派なんで(笑)。ちょうど原稿を書いている8月中旬のタイミングだとトラベル30mmのパーツが手に入りにくいようなので、来週からの記事はトラベル45mmを使って書いていきます。プログラミングにはトラベル長は関係ないので、とにかくノブのサイズが合うスライドボリュームをゲットしてください。

今回、フェーダーではなくて普通のボリュームポッドを使用してコントローラー作りたい方もいると思います。そういう人も最初はB10KΩを買ってください。このBというのはボリュームのカーブの事ですが、最初はBの方がよいと思います。これも結局好みだし、プログラミングでマッピングすればこのカーブすら好みのカーブを描くように調整できます、、、が、僕も過去に色々試したんですが、結局耳でサウンドを確認しながらオートメーションを書くので少々マッピングしたところで、書いたオートメーションにはあまり影響ないんですよね。でも最初はBカーブの方が良いと思います。因みにArduino Pro Microはデジタルピンをアナログ値(ボリューム等のデジタルじゃない入力値の事)の読み取りに使う事もできるので、追加のパーツなしで合計9個のノブやフェーダーを増設しようと思えばできます。

Arduino Pro Microを入手できたら、Arduinoのサイトから、Arduino IDEというアプリをダウンロードしてください。これは無料のアプリです(下のスナップショットのページからダウンロードできます)。インストールに関しては難しいことはないですが、YouTubeにもArduino IDEのインストールのチュートリアルはたくさんあるので、検索してください。

Arduinoサイト

来週は揃ったパーツを使ってプログラミングして行きましょう!

瀬川英史(瀬川商店)
劇伴の作曲家やってます。Netflix「シティーハンター」アニメ「烏は主を選ばない」等。シンセは危険物取扱者の甲種レベルの知識あり(多分)。
記事内に掲載されている価格は 2025年8月15日 時点での価格となります
パラダイスの新着記事