気の向くままに辿るIT/ICT/IoT
webzoit.net
IoT・電子工作

Arduinoで音楽再生『FMmelody』

ウェブ造ホーム前へ次へ
サイト内検索
カスタム検索
Arduinoって?

Arduinoで音楽再生『FMmelody』

Arduinoで音楽再生『FMmelody』

Arduino単体とパッシブブザーや100均スピーカーで『7パターンのきらきら星を奏でるFMmelody』
2018/03/03

 『オルゴールっぽいもの』に続くArduinoでサウンド系第2弾...と言ってもオリジナリティはゼロ。

 Arduinoによる音楽再生にあたりpcm1723氏作『FMmelody』を使わせて頂いた。

 電子工作を初めて昨日で丸1年経って初めてWhat's Arduino?を読んで、書き換えはできないが、SRAMより容量のあるフラッシュメモリにデータを書き込むPROGMEMの存在を知った直後だっただけにタイムリーなスケッチに出会ったものだ。

 FMmelodyがなんとも秀逸だと思ったこと、圧電ブザーでもこんな音が出ることに感動したこと、Arduinoとスピーカーでも聴くことができたこと、Arduino IDE仕様の変更に伴い、一部スケッチやC++ソースファイルなどの修正が必要だったことから書き記しておくことにした。

 あまりに気に入って、これを書いている間も延々再生している。

FMmelody

 このFMmelodyは、アコースティックピアノ、電子ピアノ、金属製打楽器チューブラーベル、マリンバ、ジャズギター、フィンガーベース、スラップベース調と7つのパターンそれぞれの音で『きらきら星』の一節を奏でるというもの。

 必要になるのは、Arduinoボードとパッシブ(圧電)ブザー、ブレッドボードとジャンパワイヤだけ。(もちろん、USBケーブルとPC、Arduino IDEもしくは代替も要るけど。)

 もちろん、ワニグチクリップでつなぐなどしたスピーカーなどなら、当たり前といえば当たり前だが、もっと良い音で聴くことができる。

 試しにアンプもない100均セリアの1個でモノラル、2個でステレオになるスピーカーで再生してみただけでも、ちょっと驚いた。

 フォーンプラグの根元にマイナス、2極や3極などがあるが、手探りして、ピン上の、それ以外のどこかにプラスをつなぐと通電してスピーカーから音が出るってことを、つい最近知ったばかり(DCプラグがセンタープラスだったり、センターマイナスで、それとピン外側で通電するのと似てる)。

ソース・スケッチ修正点

 2018年03月現在、修正点は、スケッチその他でインクルードしている[Wiring.h]を[Arduino.h]に変更することと、スケッチや.cppファイルなど結構な数ある変数修飾子[PROGMEM]が使われている行において[prog_uint8_t]/[prog_uint16_t]型を[uint8_t]/[uint16_t]に変更、その必要はなさそうだが、気になる場合は、本家説明を参考に[PROGMEM]を変数の後ろに移動すること。

 自身は、1つ、2つは個別、その後、Arduino IDEの外で一括置換を使ったものの、Arduino IDEでコンパイルしてみてエラーになるところを順次、修正していけば済むはず。

 UNIX文化も引き継がれているようでスケッチの拡張子は[.ino]じゃなくて(Processingのデフォルト[.pde]のままで)も良さ気なことを知った。(たまにArduinoのスケッチとして.pde付きのものを見かけ、もしかして?とは薄々思ってはいたものの、そのままアップしてみたのは今日が初めて。)

EasyWordMall Arduino UNO R3互換ボード(USBケーブル付属)

EasyWordMall Arduino Pro Mini互換ボード Atmega328 5V 16MHz

Rasbeeオリジナル FT232RL互換 3.3V/5V FTDI/USB/TTL変換アダプタ

KKHMF Arduino Nano Ver 3.0互換ボード ATmega328P CH340G 5V 16MHz

HiLetgo Mini USB Nano V3.0 ATmega328P CH340G 5V 16MHz マイクロコントローラーボード Arduinoと互換 改良版(5個セット)

EasyWordMall パッシブブザー インピーダンス 16Ohm AC 2KHZ 3V 5V 12V 10個

クリップ,SODIAL(R) ワニグチクリップ 黒/赤 計100個

uxcell ワニグチクリップワイヤー ケーブル テストリード 45cm 10個

Rasbee 400穴 ブレッドボード 8.5*5.5cm 1個

HiLetgo 400穴 ブレッドボード 8.5*5.5cm 5個セット

HiLetgo 400穴 ブレッドボード 8.5*5.5cm 10個セット

Rasbee SY-170 ミニブレッドボード カラフルブレッドボード 5個

HiLetgo 金属皮膜抵抗 1/4W 41種類x20=820個

HiLetgo ジャンパーワイヤー(オス-オス) 20cmx40本 5セット

Rasbee ジャンパーワイヤー(オス-オス) 各種長さx65本

HiLetgo 37センサーモジュールアソートキット/Arduino開発スターターキット

備考

 あまりにもタイムリーに生じた耳鳴りだったが...1〜2日で何事もなかったかのように治まった...という記録。

 気のせいだとは思うが...あまりにもタイムリーに耳鳴り...?左耳の聴力に違和感が...。

 あまりに素晴らしかったので、Arduino+圧電ブザーとArduino+100均スピーカーでFMmelodyを繰り返し延々と聴いた、Arduinoを始めてからというもの、常に使っているプチマイク内蔵ELECOM UCAM-C0220FEWHと写真・連写・動画撮影ソフトウェアCheeseで音声込みの動画を撮った、数日前から、気に入って聴いていて、その時も聴いていたIcecast上のJazzチャンネル(Radio JAZZY radiogora.ru)をVLCで聴きつつ、撮った動画を確認すべく、Jazzを停止、VLCで撮った動画を何度か再生、このページに載せるため、YouTubeにアップ、確認で1〜2度再生...確認後、先のJazzチャンネルを再生...、気づいたら耳鳴りのような違和感...というタイミング...。

 ちなみにヘッドホンは使っておらず、圧電ブザー単体、外付け100均スピーカー、ノートPC内蔵スピーカー直で視聴、近所迷惑になるほどの大音量で聴いていたというわけでもなく、作業は15時前後から行なった。

 自身の聴力が、いろいろな音声を聴き分けるには、追いつかなかったのかな...。

[2018/03/04]

 昨夜、周囲も寝静まり、寝ようと思ったら、キーーーーーーーーーーーーーン...耳を塞いでも同じ、やはり、左耳のみだが、これを耳鳴りって言うんだよな...。

 かなり、高い周波数?、それなりの音量で一定の音が鳴り響くため、違和感ありありで、この先ずっとあったら嫌なんてものではないのだが、その割には、気になりながらも眠るには眠れた...途中、一度トイレに起きた際にも、やや音量が下がった?気がしなくもないものの、耳鳴りは治まっていなかったが、やはり、眠ることはできた。

 朝目覚めると生活音や車など周囲の音に紛れて、耳鳴りはあるが、遠い感じ?少し静かになると、やはり、キーーーン...今夜もそうなら、明日、時間をとって耳鼻科にでも行ってみよう...。

[2018/03/05]

 昨夜は、耳鳴りはあるかないか、仮にあったとしても昨日を100としたら1〜3程度?気のせいレベル?、特に何をしたわけでもないが、治った模様。

 やっぱり、聴覚が追いついていなかったのか、ちょっと謎だが、よかった。

ウェブ造ホーム前へ次へ