秋葉原

偶然

なぜかid:hogelogと会う。

僕は年に4回くらいしかいかないけど、これで出会うってのはよっぽどid:hogelogがたくさん秋葉に来るか、神様のいたずらだろう。

なんか水曜日から木金土と偶然/必然にid:hogelogに会っている気がする。不思議不思議

買い物

僕はUさんからおつかいを頼まれていたので、そういうものも購入(何か便利そうなもの に関しては、このときには気づかず。後から気づいたものはたくさんあったのに、また買おう

僕は本当に、数日V850で遊んで、その基板を壊すくらいの経験しかなかったので、masa-uに頼りっぱなし。今回作るものは「ブレッドボードを用いたarduino」らしい。

arduinoってなーに?」 状態だが、割と安くで面白いことができるらしいので、任せることにした。

頭脳部分はmasa-uがまとめ買いしてくれたので、僕たちは個人個人であると面白そうな部品を買う。

たくさんのスイッチや、液晶ディスプレイ?、ボリューム、スピーカ、アンプ用IC(masa-uに言われた)などなど。

僕とid:nishiohirokazuは「何か音の出るもの」という目標だったのでほぼ同じものを購入。

メロディICと呼ばれるものが1個しかなかったので早い者勝ちでid:nishiohirokazuのものになった。僕は、それを使わない方法で音を鳴らすことを決意した(V850で基盤が壊れて実践できなかったので、もう一度やりたかった)

僕はテスターを持っていなかったのでテキトーにテスターを購入。1000円くらいのアナログのテスター。デジタルを薦められたが研究室でUさんから借りたのもアナログだったし、理科で使ったのもアナログだったので、慣れてる気がしたのでアナログにした。

観察

arduinoというものを知らないし、観察する。

  • 今回のarduinoの回路は「Arduino NG Diecimila」というもの互換らしい
  • 心臓部分はAVRの「ATmega168」という名前のチップ 名前くらいは聞いたことがある。
  • USBシリアル変換という少し高い(1000円くらい)の基板をからATmega168に電源やら、データの送受信線が出ている。
  • ATmega168の汎用IOポートを利用しとりあえずテスト用にLEDが刺さっている
  • 細かいことは良くわからない。

プログラミング

ArduinoのプログラムはCのようなJavaのようなSyntaxの言語、UIはProsessingのものとそっくり。プログラミングはそれなりにできる(はず)。ということで

LEDを光らせる

とても簡単。digitalWriteなどで、HIGHにしてやると光った。点滅も簡単。

音を鳴らす

アンプIC(lm386?)というものを買ったは良いが良くわからん、とmasa-uに聞いたら「データシート見れ」みたいに言われたのでGoogle先生に聞いてみる。

ネット上の利用例とデータシートを見比べながら、ほぼ同じ作業をしていid:nishiohirokazuと確認。

データシートにはちゃんとアプリケーション例なる物が載っており、それを写すことにする。

抵抗や、コンデンサの類はmasa-uに借りた。

0/1の高速振動を与えてやると音が鳴った!!

そしてこのArdunioはPWMを自動で制御してくれる仕組みがあるらしいので、そっちも試してみた。

音が鳴って、いくつかの音が切りかえれることを確認した。

改良

音程が変えれるといってもすごく飛び飛びの値で(CPU周波数の-2^n?)全然音階にはならない。

そこでサンプルを探しているとArduinoIDEの持っているサンプルにMelodyというまんまそれっぽいものを発見。

とりあえずざっとコードを見て、出力を適切に設定し、実行すると、音楽が鳴り始めた!(テンション↑)

しかもこのMelodyというサンプルは音程の制御などが、mmlっぽく「cdefg」などとかけるモノで、本当に至れり尽くせりという感じだった。

で、初期の作戦目標である「てってってー」を鳴らした。

夕食

(時系列は怪しい)
そうめんとid:nyaxt特製のおかず。みんなちゃんとした料理ができてすごいねぇ。 おいしくいただきました。

それからアルコールを少し摂取したり、アニメを見たりのんびりとすごす

印象に残ったもの

ボリューム

ボリュームと呼ばれるひねって抵抗値を変化させるものを利用して、PWMの周期を変えて、ギュイーンみたいな音を鳴らそうとした。

配線には手間取ったが(ブレッドボードだから半田付けとか不要なのにねぇw)付いてしまえば後はプログラミングだけ!しかも使い慣れたCやJavaライク!!

ということで、ギュイーン完成。

このあたりで、僕は紙に式を書いたりして、PWMのおさらいをしていた。

ピアノ

masa-uの電子ピアノがあったのでずうずうしくも借りて弾いてみることにした。(こっそり)

  • 鍵盤が広い!
  • 鍵盤が重い!(普通です)
  • 打鍵に段階がある!(普通です)(押す強さで音が変わる)
  • 鍵盤が多い!(普段は鍵盤が足りない曲もOK!

!!再び工作
間に少し昼寝を挟んだりしながら再び工作を始める

改良とか

和音

昔のファミコン見たくピロピロピローっと和音を鳴らすことにした。和音というかトレモロ。昔Palmで和音を鳴らすときに同じようなことをしたのを思いだした。

つまみで調整

ボリュームはねじるタイプのもののほかに、スライドさせるものも購入していた。ということで、2つの音をPWMで出しながら、その周波数をそれぞれ変化できるようにしてみた。

気持ち悪いw

Melody改

二和音対応のMelodyを作ってみた。テストは「かえるのうた」。輪唱させてみた。

楽器化

演奏はこのくらいにして、楽器にすることにした。

かえるの歌を構成する音程がボタンを押すと次々なるようにして、ユーザはリズムを刻むだけでかえるの歌が弾けるというものだ。 これはすぐできた。

能楽器化

ちゃんと8音がなるようにすれば、汎用的な楽器になるということで、スライドボリューム(っていうのかな?)を使ってトロンボーンのように音程を調整できるようにした。

「トロンボタン」という名前にしよう

弾くのはかなり技術を要するが、これで一応単純な曲なら演奏できるようになった。

自分を磨く

面白かったので、それでいろんな曲を演奏しようと試みていた。なかなか難しかったw

まとめ

  • Arduinoっぽいものをつくった。
  • ブレッドボードは初心者にはGood!
    • 半田付けは疲れるし時間がかかる。(慣れろという話もありますが)
  • Arduinoは簡単!
    • 特に動き始めると後は、高級なプログラム言語がつかえるので
  • 音を選んだのは正解だった
    • 変なことをしても一応何か鳴る
  • 詳しい人が隣にいる状況でのHW工作はとても心強いし、ためになる
    • 今回はmasa-uにお世話になりっぱなしでした。ありがとうございます。
  • 同じような初心者が近くにいる
    • 励ましあったりお互いに教えあって進めることができた。

またやろう!