製作物

【PIC】圧電素子を使って2000円で電子マリンバを作ってみた

投稿日:

前回の記事で圧電素子の使い方について紹介したので、今回はその応用編として電子マリンバを作ってみました。

以前ネットで電子マリンバなるものを見つけたとき、めちゃくちゃ欲しいと思ったんですが、ウン十万という値段を見て絶望しました。そこで自分で作ってしまえばいいのでは?という発想に至りこの記事が出来上がりました。

 

前回の記事はこちら

圧電素子とPICマイコンで振動センサー

イメージが湧きやすいように初めに完成品の写真と動画を掲載しておきます。

完成品

動画だと打音がうるさいですが、実際にはそれほどではありません。

音源については暫定版でまだ開発中です。

 

今回は2オクターブ製作しましたが、構造的には同じものを連結する形で更に大きくすることが可能です。

 

主な材料(1オクターブ当たり)

1オクターブ当たりの材料になります。購入の最小単位がそれよりも大きい場合もあるのでご注意ください。

品目 個数 値段 購入場所
MDF 300x400x6 1 \110 ダイソー
スポンジシート 300x300x5 0.5 \220 ホームセンター
ウレタンフォーム 300x300x10 0.5 \200 ホームセンター
タッピングネジM3、スペーサー 4 \60 ホームセンター
圧電素子 12 \75 AliExpress
抵抗 1MΩ 12 \12 秋月電子
PIC16F1579+ICソケット 1 \150 秋月電子
両面ユニバーサル基板D 1 \40 秋月電子
XHコネクタ、ハウジング 2 \30 秋月電子
超小型USBシリアル変換モジュール(1オクターブ目のみ) 1 \600 秋月電子
合計 \900 + 600 (概算) (\600は1オクターブ目のみ)

 

音源部について

今回はシリアル通信で外部に情報を送信してそちらで音を鳴らしますが、矩形波ぐらいだったらPIC自身でならせるので、USBシリアル変換モジュールの代わりにスピーカー等を使っても良いと思います。

矩形波の場合のテスト動画

 

設計図

手書きの超ゆるい設計図を掲載します。イメージだけつかんでください。

①基本構造

設計図-構造

鍵盤はMDFをベースにして、打音を抑えるためにスポンジを貼り、振動が隣の鍵盤に伝わらないようにウレタンを挟んで土台に設置します。

鍵盤と基板の配線は土台の裏で行うことにしました。(裏側の見栄えは気にしてはいけない)

 

②大きさ

設計図ー大きさ

鍵盤と土台のサイズは図のようにしました。(単位:mm)

この大きさにした理由は、保管しやすいように手元にあった靴箱に合わせて設計したためです。

靴箱保管

③通信

1つのキーボードにつきPICが1つあり、複数のキーボードを使用する時には各キーボードとPCを直接繋げるのは非効率です。

そこで、下図のように各キーボードを数珠繋ぎにします。各キーボードは鍵盤が叩かれたことを検知すると、その情報を1つ前のキーボードに送信します。後ろのキーボードから受信した情報はそのまま前に流します。

設計図ー通信

例えるならば、任意の場所から開始できるバケツリレーのような感じですね。このような接続方法はデイジーチェーンと呼ばれるみたいです。

また、電源はPCのUSBから供給し、この線と一緒に配線してしまいます。

 

キーボードの製作

まずはノコギリを使用してMDFから前述の設計図の大きさに合わせて土台と鍵盤を切り出します。鍵盤は12個です。

MDF切り出し

 

続いて、カッターを使用してスポンジシートとウレタンフォームからも鍵盤を切り出します。

スポンジウレタン切り出し

 

続いて、ウレタンフォームと土台に配線を通すための穴をあけます。ウレタンフォームはポンチを使用し、土台はドリルを使用しました。

土台穴あけウレタン穴あけ

 

次に鍵盤を作ります。写真を撮り忘れたのでイラストで説明します。

基本は両面テープで接着しますが、ウレタンフォームには上手くくっつかないので、接着剤を使用しました。最適かどうかは知りませんが、ゴム用のもので上手くくっつきました。

図では省略してますが、圧電素子の配線は先ほど開けた穴に通しておいてください。

鍵盤作り方

これでとりあえずキーボードの部分は完成しました。裏側はこんな感じです。

鍵盤設置完了

 

回路の製作

キーボードが出来たので、次は回路を作っていきます。

といっても回路は非常に簡単です。

Schematic

回路は簡単なんですけど回路図はごちゃごちゃですね…。

やってることは12個のアナログピンをプルダウンして圧電素子に繋げるのと、シリアル通信用のTX/RXを繋いでいるだけです。

完成した基板がこちらです。特に裏面なんかは恥ずかしいので見ないでください//

ちなみにRXとTXは写真じゃ見えにくいかもしれませんがUEWで配線しています。

基板表基板裏

 

配線作業

キーボードと基板が出来たので、最後に配線をします。

まずは共通のGNDを配線してしまいます。スズメッキ線を幹にしてそこに各鍵盤のGNDを接続しました。(雑配線)

配線GND

 

次に基板と圧電素子を繋ぐ線を用意します。基板からの位置によって長さを調節しています。作業のために線は長めに用意しておいた方が良いです。

色の違いに意味はありません。また、写真のように各線に印をつけて判別できるようにしておくと作業が捗ります。

被覆線

 

この線を先程の写真のように基板の裏に接続してから土台の穴に通します。(カオス)

配線作業

 

それぞれ対応する線を接続したら熱収縮チューブやテープで保護します。(やっぱりカオス)

配線完了

配線を覆う板でも付けようかとも思いましたが、メンテナンス性を考えてスポンジテープで足を付けるだけにしました。

 

基板をねじで止めます。8mmのタッピングねじを使えば土台を貫通することなく固定できました。(ちなみにスペーサーは3Dプリンター製です)

基板ねじ止め

 

上の写真は2オクターブ目ですが、1オクターブ目はこのようにUSBシリアル変換モジュールを挿せるようにピンソケットにしてあります。

また、キーボード間を繋ぐ線は百均のUSBケーブルを流用しました。

基板1オクターブ目

 

これでハードウェアは完成です!1オクターブ作るのに1日かかりました…。

 

プログラム

最後にプログラムを紹介します。やってることはとても簡単で、ADCの各チャンネルをポーリングして測定値が閾値を超えてその後下がったら鍵盤が叩かれたと判定して信号を送信するだけです。

シリアル通信ライブラリ

PC側のソフトについては気が向いたら紹介します。

 

最後までご覧いただきありがとうございました。この記事を見て電子マリンバあるいは他の電子楽器を作る参考になれば幸いです。

-製作物

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

1セル1基板のアナログライフゲーム作ってみた vol.1

普段は主に PIC を使って電子工作をしている私ですが、今回はマイコンを使わないでライフゲームを作ってみました。 ライフゲームを知らない人は恐らくこんな記事を読まないと思うので、ライフゲーム自体につい …

USB給電の小型吸煙器を作ってみた

今回はUSB給電で動作する小型の吸煙器を作ってみました。 今まではんだ付けの際はヤニの煙を吸わないように気を付けながら行っていましたが、吸煙器を使うことでとても快適になりました。 もっと早く作ればよか …

オペアンプを使った積分型ADCを作ってみた

トランジスタ技術2022年4月号に掲載されていた積分型ADC (Analog to Digital Converter)の記事を見て、面白そうだったので実際にブレッドボードで作ってみました。 初めに言 …

1セル1基板のアナログライフゲーム作ってみた vol.3

前々回でライフゲーム基板、前回でクロックコントローラーを制作しました。 第3回の今回は関連アイテムを作って完成となります。 前々回、前回をまだご覧になっていない方は是非そちらを先にご覧ください。 1セ …

8x8x2色ドットマトリクスLEDの制御基板を作ってみた

今回は秋月電子で販売されているこちらの 8x8x2色ドットマトリクスLED を4個並べて 16x16x2色 のLEDを制御できる基板を作成しました。   なおこの記事は PCBGOGO にス …