自動演奏 鍵盤ハーモニカ
MIDIで鍵盤ハーモニカを演奏する装置
プロジェクト概要
装置の正面全景。鍵盤の裏側に32基のサーボが並ぶMIDIデータを読み込んで、鍵盤ハーモニカを自動で演奏する装置です。鍵盤を押すのではなく、楽器の裏側から空気弁を紐で引いて発音させます。文化祭の展示として製作し、最後にはテスラコイルとの合奏まで実現しました。
着想の経緯
ロボット研究部の展示は、放置すると専門知識のある人にしか伝わらないものになります。誰にでも伝わり、来場者の足を止める展示を検討した結果、私は音楽を選定しました。機械が楽器を演奏している光景は、説明が無くても興味深さが伝わります。
MIDIデータの編集作業前身として、Python製の自動演奏ソフト「Music2023」を開発していました。独自の楽譜形式で曲を記述すると、それを解釈して波形を合成し、演奏までを実行するソフトです。曲のデータを機械で処理する基礎はここで確立できており、そこから実物の楽器を発音させる方向へ発展させました。
製作した装置
システムのブロック図。Arduino UNO+PCA9685×2で32基のサーボを駆動機構はAutodesk Inventorで設計したサーボの列です。鍵盤を上から押すのではなく、楽器の裏側から空気弁を紐で引いて発音させる構成にしました。表面の鍵盤部分は一切改変していないため、人がそのまま演奏でき、機械との合奏も可能です。サーボを駆動する制御基板も自作で、PCA9685を2枚とATmega328Pで構成しています。ソフト側はMIDIデータを解釈して、どの鍵をいつ押すかという指示に変換します。ただし、肝心のMIDIデータは、演奏したい曲ほど流通していません。そこで、楽譜の画像を読み込ませるとMIDIに変換する画像認識システムも開発しました。楽譜さえ用意できれば、あらゆる曲をこの装置で演奏できます。
楽譜画像の解析。音符を検出してMIDIへ変換する
システムの回路図(PCA9685×2 + ATmega328P)選曲も展示の一部です。Bad Apple!!や千本桜、Night of Nightsといった、広く認知された曲を選定しました。既知の曲を機械が演奏するからこそ、技術の説明が不要になります。
テスラコイルとの合奏
送気ポンプを接続した動作検証最後は、放電音で音階を生成するテスラコイルとの合奏まで実現しました。技術で驚かせた上で楽しませる段階まで実現できたため、ものづくりを開始した当初の気持ちに最も近い作品かもしれません。文化祭の展示と同様に、見る人が楽しめるか否かから逆算して製作しました。