PWM信号ってどんな音がするんだろう?

慶應義塾大学ロボット技術研究会その1Advent Calendar 2018

慶應義塾大学ロボット技術研究会その2Advent Calendar 2018 

はじめに

こんちは。1年のrivermscです。ロ技研に入ったもののロボットよりオーディオ系に興味が出始めロボットとは関係ないことやってます。(と言いつつ今月23日のロボカップジュニアに出場します。おしりに火がついてます。はい。)

さて、今日は電装班ならだれでも思う「PWM信号ってどんな音がするんだろう?」という疑問に答えていこうと思います。

PWMはモーターの制御だけじゃない

ロボットを作る場合PWMはもっぱらモーターの速度制御に使われます。ですが、PWMの用途はそれだけじゃないんです。ちょっくらWikipediaを見てみると用途の項目に「アナログシンセサイザー」,「音源チップ」と書いてあります!そうです。音楽にも使えちゃうわけです。アナログシンセではパルス波の音に厚みを持たせるために使われています。ですから「PWM信号ってどんな音がするんだろう?」という疑問はアナログシンセが開発された当初から解決しているのです。この記事の目的はすでに達成されていました。残りは余談です。

矩形波をつくろう

本当はPWM信号発生回路を作りたかったのですが、ぼくの脳みそではその回路が理解できなかったので矩形波発生回路をつくりました。[あぁ~PWMの音ぉ」とかやりたかったです。無念。

作り方ですが矩形波発生回路でググればわかりやすいサイトがいくつか出てきます。ぼくが説明するよりそのサイトを見た方がわかりやすい(というかほぼコピペになる)ので、そこらへんは割愛します。短波系発生回路の理解には物理学Cの内容が活躍します。

矩形波発生回路が作れたら、あとはその矩形波を音に変換すれば矩形波の音が聞けます。矩形波のような単純な音なら圧電スピーカーで充分です。あとは音量調節用にオペアンプ反転増幅回路をつけると楽器らしくなります。それと今回はハイパスフィルタ、ローパスフィルタを付けました。ゆがんだミョーンという音が出せるようになります。アナログシンセっぽくなります。

 

回路図はこんな感じです。矩形波2

抵抗、コンデンサの値はそれぞれ

  • R1,R2,R3・・・・2.2kΩ
  • R4,R9     ・・・・100kΩ(可変)
  • R5,R6     ・・・・20kΩ(可変)
  • R7,R8     ・・・・1kΩ
  • C1,C2,C3・・・・0.1μF

ちなみに矩形波の周波数fは  f=0.7215/(C1R4)  で決定します。R4を可変抵抗にすれば音の高さを変えられるようになるわけです。ローパスフィルタ、ハイパスフィルタのカットオフ周波数はどちらも  1/(2πRC)で決定します。またオペアンプ反転増幅回路については、マイナス電圧の-R9/R7倍が出力電圧になります。 R8はプラス側とマイナス側に流れる電流の差を打ち消すためのものであり、その抵抗値はR7とR9の並列抵抗の値ぐらいが望ましいです。

完成品はこんな感じ。

動画を乗せようと思っていましたが、WordPressのプランをアップグレードしないといけないらしいので諦めます。(youtubeにあげるのも面倒ですし)あんまりおいしい音じゃないです。

さいごに

本当は、音楽のストリーミングサービスについて書こうと思ってました。が、ここで書くことではないと気付いてしまったのでこんな誰得な記事が出来上がりました。ただ、巷にはNoise Toysなる楽器があるらしく(タワレコを散歩してたら見つけました。)案外誰得ではないようで嬉しくなってます。

おまけ

この記事書いた後に気づいたんですけど、PWMの音はArduinoと圧電スピーカーつなげば簡単に聞ける気がします。プログラム書き込んで曲の演奏もできなくはなさそう。(それこそ誰得

 

 

 

広告

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト /  変更 )

Google フォト

Google アカウントを使ってコメントしています。 ログアウト /  変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト /  変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト /  変更 )

%s と連携中