IchigoJam+サーボモーターで鉄琴を叩いて、おなじみの学校チャイム(ウェストミンスター・チャイム)を奏でてみました。
動画はこちら。
※(11/7)改良版の動画に差し替え。
鉄琴は、市販の鉄琴工作キットを使いました。
大きな基板(ベニヤ板)が付いていて、まさに改造工作のためにあるような品です(^_^)

- メディア:
- この商品を含むブログを見る

マレット(バチ)は2本付いていますが、今回は4本欲しかったので、追加で別の品を2本購入しました。

SUZUKI スズキ サウンドブロック用マレット ヘッド硬度 硬 SBP-01H
- 出版社/メーカー: SUZUKI(スズキ)
- メディア: エレクトロニクス
- この商品を含むブログ (1件) を見る
なおヘッドが「硬い」品にしないと、鉄琴を叩いた時に綺麗に響きません。
マレットは棒を短く切って、サーボモーターSG92Rにアロンアルファで接着。機構全体を、近所のホームセンターで買ったコルクブロックに載せています。
なお、サーボモーター機構はいろいろ試行錯誤しました。
当初はカムロボなどでよく使われる小型のSG90にしたのですが、マレットの重さでトルクが足りず、動かして止めた時にハンチング(ブルブル振動して止まらない)を起こしてしまいました。
トルクが大きいSG92Rに変えた所、だいぶ軽減したのですが、それでもハンチングは止まらず。
そこで、マレットのホームポジションを真上方向に変えて、真上から100°ほど叩き下ろして、すぐに真上へ戻すようにしました。真上で止めるとハンチングが起きません。
これだとテンポの速い曲は演奏できないのですが、今回はスローなチャイムなので問題なし。
機構を変えて、スプリングで支えたマレットをサーボで弾くなどすると、もっと安定して叩けるかもしれません。
※(11/7)改良版
サーボモーターの動きのばらつきを吸収するため、マレットの柄を途中で切断して、スプリングでつなぎました。だいぶ安定して鉄琴を叩けるようになりました。
スプリングは、ホームセンターで買った8mm径の引きバネです。本当は7mm径があれば、一番マレットの柄に合いそうでしたが…。
IchigoJamとサーボモーターの間は、子どもの工作も想定してブレッドボードとジャンプワイヤで配線。
電源はIoT用モバイルバッテリ「cheero Canvas」を使いました。

cheero cheero CANVAS 3200mAh IoT対応 モバイルバッテリ
- 出版社/メーカー: cheero
- 発売日: 2016/02/23
- メディア: エレクトロニクス
- この商品を含むブログ (1件) を見る
ベニヤ板に色を塗ったりしてカスタマイズ工作もできるので、子ども向けの工作企画にいかがでしょうか。
プログラムリスト
※(11/7)改良版のプログラムに差し替え。
- プログラムを起動すると、マレットがウォームアップ動作をします。しばらく動かしてサーボモーターを暖めないと、叩く動作が安定しません。IchigoJamのボタンを長押しすると止まります。
- もう一度ボタンを押すと、チャイムを演奏します。演奏終了後にボタンを押すと、再度演奏します。
10 '*Chime V2 20 CLV:VIDEO 0:LED 1 30 'Home Pos,Strike Pos,Strike Wait (Mallet 2-5) 40 LET [90],50,146,11,50,158,12,54,166,12,54,164,12 50 M=12 60 'Melody (Mallet 2-5, 0=Rest) 70 LET [0],3,5,4,2,0,0,3,4,5,3,0,0,5,3,4,2,0,0,2,4,5,3,0,0 80 L=23 90 'Warm Up 100 @WARMUP 110 FOR P=2 TO 5 120 GSB @P0 130 NEXT 140 IF !BTN() GOTO @WARMUP 150 'Home Reset 160 @RESET 170 FOR P=2 TO 5 180 H=[84+P*3] 190 PWM P,H 200 NEXT 210 IF BTN() CONT 220 WAIT 60 230 LED 0 240 'Play Loop 250 @LOOP 260 IF !BTN() CONT 270 LED 1 280 P=2:GSB @P0 290 FOR I=0 TO L 300 P=[I] 310 IF P GSB @PING ELSE WAIT M 320 WAIT 30 330 NEXT 340 LED 0 350 GOTO @LOOP 360 @PING 370 H=[84+P*3] 380 S=[85+P*3] 390 W=[86+P*3] 400 PWM P,S:WAIT W:PWM P,H 410 RTN 420 @P0 430 PWM P,100:WAIT M 440 PWM P,50:WAIT M 450 RTN
OUT2〜5の4本のPWM出力で、4個のサーボモーターを動かしています。
出力が4本なので、今回は4音階のチャイムを作ることにしたのですが、IchigoJamを2台にして相互に通信しながら動かせば、8音階全て演奏できるかもしれません。
40行で、4個のサーボモーターのホームポジション・叩くポジション・WAITを初期設定しています。これは各モーターの個体差やマレットの工作具合によるので、実際に動かしてみて調整する必要があります。
70行はチャイムの音階データです。OUTポート番号(2〜5)で指定しています。0は休符です。
- GBAD GABG BGAD DABG
- ソシラレ ソラシソ シソラレ レラシソ
今回は鉄琴の高い音を出したかったので、マレット位置を高めの音階にしました。実際の学校チャイムは、これより一音階低い「ファラソド〜」の所が多いかもしれません。
本格的なディナーチャイムを使えばもっと綺麗な音が出そうですが、かなり高価なので子ども向け工作にはちょっと…(^_^;)

- 出版社/メーカー: ゼンオン
- メディア: エレクトロニクス
- クリック: 6回
- この商品を含むブログ (1件) を見る