~sound(サウンド)でメロディを鳴らそう~
ロボットでメロディを鳴らすことができたら楽しいよね。sound(サウンド)を使えば、「ブー」や「ピポパ」じゃなく、好きなメロディを演奏(えんそう)させることができます。さっそく、やり方をみてみましょう。
メロディーの出し方
メロディに必要(ひつよう)なものは何だろう?そう、「音の高さ」と「長さ」だよね。音の高さ、つまり音程(おんてい)とその長さを教えれば、ロボットはメロディを鳴らしてくれます。これが、音を出す命令(めいれい)。
robo.sound△“音の高さ”,音の長さ(ミリ秒)
* △は半角スペース
たとえば、『きらきら星』の出だしのぶぶん、「ドドソソララソ~」をプログラムで書くと、次のようになります。
robo.sound "do",250 robo.sound "do",250 robo.sound "so",250 robo.sound "so",250 robo.sound "la",250 robo.sound "la",250 robo.sound "so",500
ヒント:1小節(しょうせつ)を1秒(1000ミリ秒)とすると、四分音符(しぶおんぷ)は250ミリ秒、二分音符は500ミリ秒になります。
ロボットでメロディーを演奏させてみましょう
下のプログラムを入れて「動かす」ボタンをクリックしましょう。COM4のところは、「無線ロボットMI100とパソコンのペアリング」の手順でメモした番号に変えてくださいね。
require "mi100" robo = Mi100.new "COM4" robo.sound "do",250 robo.sound "do",250 robo.sound "so",250 robo.sound "so",250 robo.sound "la",250 robo.sound "la",250 robo.sound "so",500 robo.close
プログラムのせつめい
1行目
ロボットMI100を楽に動かすための命令(めいれい)の集まりを使うことをRuby(ルビー)に教える。
3行目
ロボットに無線(むせん)でつなぐ。そして、roboに命令すれば、ロボットが動くようにする。
5行目から11行目
『きらきら星』の出だしのメロディ、「ドドソソララソ~」を鳴らす。
13行目
ロボットとの無線を切る。
うまく鳴らせたかな?MI100は1オクターブ、ドレミファソラシド(do, re, mi, fa, so, la, si, hdo)の音が出せます。いろいろな曲にちょうせんしてみてくださいね。
おわり