見出し画像

#16 AIを使って、音楽を奏でてみよう!

”わからないと感じる、カオスを楽しめ”をモットーに、「え、なにこれ!」の体験を産み、「次もしたい!」の学びを残す
科学実験教室シコウサクゴLAB
今日のテーマは、大学研究で実際に使用される技術を使用した「
AIを使って、音楽を奏でる実験」になります!
ーーーーーーーーーーーーーーーーーーーーーー

|どんな科学教育教室?

今回は、熊本大学の研究室の後援のもと、大学の研究室内で実際に体験型の生殖工学ワークショップを実施しました!
実施内容:「オーディオ作製→ChatGPTを利用した作曲プログラミング⇒Arudinoでの読み込み⇒オーディオから音楽を流す」
場所:トランポリンスタジオRafit

本番ぎりぎりまで、TAの大学院生が準備をしています!

|子供達はどんな様子だった?

はじめに講義で、デジタル機器から音楽が流れる仕組みを学んでいきます。

スマホでワンクリックから音が流れるまで、どういう仕組みになっているのか?どうして、音は保存できるのか?を図でイメージつけていきます。

次に、実際音がどうながれるか、簡易のオーディオを自作して、音をパソコンから流してみます。

みんな、音が鳴ったとき、「うわっ!」の驚いた顔をしていました笑

次は、AIの仕組みとプログラミングを学んでいきます。今回使用するのはChatGPT3.5。

説明は、AI大好きお兄さんこと、ショー君。AIで試した、画像生成を使って、説明してきます!

講義を聞いた後は、とりあえずやって試してみよう!ということで、事前に準備されたプロンプトを利用してGPTに指示を出して、プログラムを書いていきます。そして、Arudinoに書き込んで、実際に流してみると…

音楽を作曲できました!

てことで、次は自分で作曲。

「好きなキーワードを3つ入れて、Arudino用のプログラムを書きだす」といった指示を自分たちで入力。▼こんな感じのプロンプト▼

Arduinoと圧電スピーカーで音楽を流します。 好きなキーワードを3つ入れるので、音楽を作成し、Arduinoプログラムを生成してください。キーワード:爆発、出会い、鬼ちゃん

すると、下のようのコードが!

#define NOTE_C4 262
#define NOTE_D4 294
#define NOTE_E4 330
#define NOTE_F4 349
#define NOTE_G4 392
#define NOTE_A4 440
#define NOTE_B4 494
#define NOTE_C5 523
#define NOTE_REST 0
int melody[] = {
  NOTE_C4, NOTE_E4, NOTE_G4, NOTE_C4, NOTE_E4, NOTE_G4, NOTE_C4, NOTE_E4, NOTE_G4,
  NOTE_C4, NOTE_E4, NOTE_G4, NOTE_C4, NOTE_E4, NOTE_G4, NOTE_C4, NOTE_E4, NOTE_G4,
  NOTE_C4, NOTE_E4, NOTE_G4, NOTE_C4, NOTE_E4, NOTE_G4, NOTE_C4, NOTE_E4, NOTE_G4,
  NOTE_C4, NOTE_E4, NOTE_G4, NOTE_C4, NOTE_E4, NOTE_G4, NOTE_REST, NOTE_G4, NOTE_A4, 
  NOTE_A4, NOTE_G4, NOTE_F4, NOTE_E4, NOTE_D4, NOTE_D4, NOTE_REST, NOTE_C4, NOTE_D4, 
  NOTE_D4, NOTE_C4, NOTE_D4, NOTE_E4, NOTE_E4, NOTE_E4, NOTE_F4, NOTE_G4, NOTE_G4, 
  NOTE_REST, NOTE_E4, NOTE_G4, NOTE_C5, NOTE_C5, NOTE_B4, NOTE_A4, NOTE_A4, NOTE_REST
};
int noteDurations[] = {
  8, 8, 8, 8, 8, 8, 8, 8, 8,
  8, 8, 8, 8, 8, 8, 8, 8, 8,
  8, 8, 8, 8, 8, 8, 8, 8, 8,
  8, 8, 8, 8, 8, 8, 8, 8, 8,
  4, 4, 4, 4, 4, 4, 4, 4, 4,
  4, 4, 4, 4, 4, 4, 4, 4, 4,
  4, 4, 4, 4, 4, 4, 4, 4, 4
};
void setup() {
  // 圧電スピーカーを接続するピンを設定
  pinMode(9, OUTPUT);
}
void loop() {
  // 曲を演奏
  for (int i = 0; i < sizeof(melody) / sizeof(melody[0]); i++) {
    int noteDuration = 1000 / noteDurations[i];
    tone(9, melody[i], noteDuration);
    int pauseBetweenNotes = noteDuration * 1.30;
    delay(pauseBetweenNotes);
    noTone(9);
  }
  delay(2000); // 次の演奏までの待機時間(2秒)
}
以上です。

これをArudinoにコピペして、音楽を流してみます!

コンパイルすると、自分で作曲した音楽が!


その後は、GPTを使って、自分たちの好きなように速度や曲調を変化させていきます!

1時間半もモクモクと…(アシスタントいらんやん笑)

学びが早い子には、アシスタントからMiisionを与えて、難しいことにも挑戦

「みんな、PCほとんど触ったことないん??」って思うくらい、パソコンを使いこなしていました。

最後はみんなで記念写真(カメラマンの自分、写り忘れました…泣)。
10年後、みんなどんな成長があるかな!

昨年からのリピーターの皆様も、はじめての参加者も。

2年間以上継続的に来てくれる子もいて、みんなの成長をみれるのも幸せです!

|シコウサクゴLABの科学実験教室って?

シコウサクゴLABが運営する科学実験教室には、小中学生を中心とし、科学が好きな子、新しいことに挑戦したい子、学校は合わないけど友達と勉強したい子、などなど様々な背景を持った生徒が毎回参加しています!
この科学実験教室は、「科学って面白い!」って感じてもらうことはもちろんのこと、実験を通して、「学ぶ楽しさ」「自分の手で動かて知る面白さ」「この世界にはたくさんの新しいモノがあること」を感じてもらうことも目的としています。
科学実験を通して、好奇心を探求したい皆様、心よりお待ちしております。

Let’s enjoy science!!
BY リュウ先生

\ホームページ/

\インスタグラム見てね!🔬/

公式インスタグラム
https://www.instagram.com/shikousakugo.lab

\他の実験レポート/


この記事が気に入ったらサポートをしてみませんか?