BEEP-0009で作ったプログラムをベースに、演奏速度を簡単に変えられるように音符の再生時間を変数を使って動かすプログラムを作ってみましょう。変数は今回のように自由に好きな名前に変更して使用することができます。BEEP-0009をまだ見ていない方は下記URLから閲覧することが可能です。ぜひ併せてご覧ください。

◆BEEP-0009

https://qumcum.com/contents/scratch-beep-0009/

https://youtu.be/nj84RKJ_r4k

プログラムのダウンロード

動画の画質が悪い場合は画質の設定を変更してください。<<設定の変え方はこちら>>

操作方法

  • BEEP-0009からの続きです。(BEEP-0009のプログラミングは上記URLからダウンロードする事が可能です。)
  • ファイルメニューの「コンピューターから読み込む」をクリックし、BEEP-0009のプログラムを読み込みます。
  • ではBEEP-0009のプログラムをベースに使って「変数」を使っていきましょう。
  • 「変数」を右クリックし「変数名を変更」をクリックします。変数には好きな名前を付ける事ができます。ここでは目的に沿った名前をつけたいので「速度」と言う変数名にします。
  • 「速度を1にする」コマンドを使用します。コマンド名の通り、変数「速度」に1を代入し、速度=1にすると言うコマンドです。
  • 次に音を鳴らす演奏時間が2秒の部分を「○+○」に置き換え、「○+2」としておきます。
  • そして「1」の部分を全て変数「速度」に置き換えます。先ほどの「○+2」も「速度+2」とします。
  • 全て置き換える事が出来たら実行してみましょう。速度には「1」が入っているのでBEEP-0009の時と同じようにチューリップの歌が流れます。
  • それでは「速度を1にする」を「速度を0.5にする」と編集し実行してみましょう。チューリップの歌が速くなりました。
  • 「速度を0.1にする」ともっと速くなります。
  • 音のブロック全てを編集することなく変数の値を1箇所変えるだけで全ての音の長さが変わります。このように何度も使用しているような値は変数に入れてあげる事で簡単に演奏速度を変える事が出来るようになります。

    • このプログラムは、クムクム、クムクムPRO、クムクムW、3Dロボットすべてで同じ動きをします。
    • 画面の3Dロボットで動きを確かめた後は、実際にロボットにBluetooth接続しましょう。
    • そのまま3Dとおなじプログラムが実際のロボットで動くことが確認できます。

    BEEP音について

    クムクムには単音を使って効果音の鳴らしたりドレミ音階を使って音楽を鳴らしたりすることができます。
    クムクムでは音の高さをドレミという音階で指定するのではなく0~65534Hzまでの周波数で、音の長さを秒0秒~99秒で指定します。
    音は、空気の振動によって人間の鼓膜に伝えられます。
    その空気の振動の一定時間内に起こる振動を周波数とよびHz(ヘルツ)という単位で表します。
    周波数の小さいと低い音、大きいと高い音を表します。
    人に聞こえる音などは個人差や再生装置によって異なりますが、クムクムのプログラムでは周波数は0~65535Hzまで、長さは0~99秒まで0.1秒単位で指定できます。
    音の大きさは胸の部分のボリュームを精密ドライバーで回します。
    ※音の長さはスクラッチからロボットまでの通信時間などによって正確には動作しません。
    ※Arduino Cプログラミングでは通信が発生しないため0.01秒などの細かい時間の変化で動作させることが可能です。

    QumcumのBEEP音

    スクラッチのコマンドをクリックすると、パソコンのBluetoothを通じてクムクムロボットへ命令が飛ばされます。

    命令は、周波数と発音秒数で、その命令をクムクムは受けて自分のCPUから矩形波を発生し、オーディオアンプを通してスピーカーに伝えます。
    スクラッチから送り出されてクムクムに届くまでの時間と、届いてからCPUが受け取るまでの時間、CPUが受け取ってから矩形波をコントロールするまでの時間がかかるため、ロボットが直接CPUをコントロールする時間より長くかかってしまいます。

    CPUにロボットを直接コントロールするプログラムを埋め込めるArduinoなどのC言語では、パソコンから送り出したり電波を読み込んだりする時間が必要ないため、もっと早く細かい速度で音のON/OFFを切りかえることができます。

    ※スクラッチで作った曲の演奏がどうしてもちゃんと演奏できなかったり、タイミングがずれたりするのはこのためです。
    ※また、音を鳴らしながらLEDを光らせたりすると、音を鳴らす命令と光らす命令が順に送り出されるため思ったようり遅いタイミングで鳴ったり光ったりしてしまいます。

    デジタル信号を音に

    BEEP音はCPUの1本の脚からデジタル信号で出力されるパルスをオーディオアンプで増幅してスピーカに伝えて鳴らします。
    CPUから出力されるデジタル信号はとても小さな電力なのでそのまま大きなスピーカーの布を揺らすことはできません。
    そのため、オーディオアンプという回路を使い、小さな信号を大きな信号に変えてスピーカーにつないで音として鳴らしています。
    オーディオアンプを使わずに直接CPUの電力で鳴らすために圧電ブザーという部品を使用することもできますが、クムクムでは大きな音を鳴らしたいのであえてオーディオアンプを使っています。

    BEEPが使われている装置・部品など

    家電製品(テレビ、リモコン、炊飯器、洗濯機…)などで操作をしたときにピーとなる音など

    プログラミング用スクラッチの起動

    1. ホームページよりスクラッチWEBを選択します
      ※ブラウザは必ずMicrosoftEdgかGoogleChromeを使用します。
      ※FireFoxやサファリでは正しく動作しません。
    2. スクラッチ画面が開いたら、左下の拡張機能追加をクリックします。
    3. エクステンション一覧からクムクムWEB-BASICを選択してクリックします。
    4. クムクム画面が自動で開いたら3Dロボットが表示するまでまちます。
      ※3D画面が開いたらロボットはコマンド通り動きます。
      ※表示後はプログラムを作りスクリプトを実行すると画面の中のロボットがプログラム通り動きます。

    リアルロボットでの動作方法

    3Dで動いたプログラムをクムクムロボットに転送してロボットでも動かしてみましょう。

    1. リアルロボットを使用する場合、3Dロボット画面の左上<Robot>ボタンをクリックし、ロボット一覧画面を表示します。
    2. ロボット一覧画面からお使いのロボット番号を選択し、画面下のペア設定をクリックします。
      ※ロボット番号が表示されない場合は、使用しているパソコンにBluetooth機能がないか、Bluetooth機能が正しく動作していない可能性があります。
      ※ブラウザーはGoogleのChromeかMicrosoftのEdgeでしか動作しません。(FirefoxやSafariではBluetooth機能などが使用できません)
    3. リアルロボットに使用する電池は、必ずニッケル水素充電電池を使ってください。
      ※アルカリ乾電池では正しく動作しません。
      ※また万が一動作しても、通信などで電力を多く消費するため正しくコマンドを受信できなかったり予想がつかない動きをすることがあり、けがの原因となります。
    4. 通信中にパソコンとクムクムロボットの接続が切れた場合は、電池の充電残量が足りない場合があります。
      ※すぐに充電残量のある電池と交換してください。

    ◆クムクムロボット公式サイトのマニュアル
    https://qumcum.com/wp-content/uploads/2022/08/start_scratch.pdf

    ◆Scratch(スクラッチ)で動く3Dロボット「3D-WEBクムクム」β版
    https://personal.qumcum.com/home3d/robo-real/

    ◆クムクムロボット(アマゾンQumcumストア)
    https://www.amazon.co.jp/stores/Qumcum/page/FFCFA57A-F592-49A0-9F23-3D90514E5E61?ref_=ast_bln

    ◆Youtubeにはたくさんの動画を載せています
    https://www.youtube.com/@qumcum/

    BEEP-0009で作ったプログラムをベースに、演奏速度を簡単に変えられるように音符の再生時間を変数を使って動かすプログラムを作ってみましょう。変数は今回のように自由に好きな名前に変更して使用することができます。BEEP-0009をまだ見ていない方は下記URLから閲覧することが可能です。ぜひ併せてご覧ください。

    ◆BEEP-0009

    https://qumcum.com/contents/scratch-beep-0009/

    https://youtu.be/nj84RKJ_r4k

    プログラムのダウンロード

    動画の画質が悪い場合は画質の設定を変更してください。<<設定の変え方はこちら>>

    操作方法

    • BEEP-0009からの続きです。(BEEP-0009のプログラミングは上記URLからダウンロードする事が可能です。)
    • ファイルメニューの「コンピューターから読み込む」をクリックし、BEEP-0009のプログラムを読み込みます。
    • ではBEEP-0009のプログラムをベースに使って「変数」を使っていきましょう。
    • 「変数」を右クリックし「変数名を変更」をクリックします。変数には好きな名前を付ける事ができます。ここでは目的に沿った名前をつけたいので「速度」と言う変数名にします。
    • 「速度を1にする」コマンドを使用します。コマンド名の通り、変数「速度」に1を代入し、速度=1にすると言うコマンドです。
    • 次に音を鳴らす演奏時間が2秒の部分を「○+○」に置き換え、「○+2」としておきます。
    • そして「1」の部分を全て変数「速度」に置き換えます。先ほどの「○+2」も「速度+2」とします。
    • 全て置き換える事が出来たら実行してみましょう。速度には「1」が入っているのでBEEP-0009の時と同じようにチューリップの歌が流れます。
    • それでは「速度を1にする」を「速度を0.5にする」と編集し実行してみましょう。チューリップの歌が速くなりました。
    • 「速度を0.1にする」ともっと速くなります。
    • 音のブロック全てを編集することなく変数の値を1箇所変えるだけで全ての音の長さが変わります。このように何度も使用しているような値は変数に入れてあげる事で簡単に演奏速度を変える事が出来るようになります。

      • このプログラムは、クムクム、クムクムPRO、クムクムW、3Dロボットすべてで同じ動きをします。
      • 画面の3Dロボットで動きを確かめた後は、実際にロボットにBluetooth接続しましょう。
      • そのまま3Dとおなじプログラムが実際のロボットで動くことが確認できます。

      BEEP音について

      クムクムには単音を使って効果音の鳴らしたりドレミ音階を使って音楽を鳴らしたりすることができます。
      クムクムでは音の高さをドレミという音階で指定するのではなく0~65534Hzまでの周波数で、音の長さを秒0秒~99秒で指定します。
      音は、空気の振動によって人間の鼓膜に伝えられます。
      その空気の振動の一定時間内に起こる振動を周波数とよびHz(ヘルツ)という単位で表します。
      周波数の小さいと低い音、大きいと高い音を表します。
      人に聞こえる音などは個人差や再生装置によって異なりますが、クムクムのプログラムでは周波数は0~65535Hzまで、長さは0~99秒まで0.1秒単位で指定できます。
      音の大きさは胸の部分のボリュームを精密ドライバーで回します。
      ※音の長さはスクラッチからロボットまでの通信時間などによって正確には動作しません。
      ※Arduino Cプログラミングでは通信が発生しないため0.01秒などの細かい時間の変化で動作させることが可能です。

      QumcumのBEEP音

      スクラッチのコマンドをクリックすると、パソコンのBluetoothを通じてクムクムロボットへ命令が飛ばされます。

      命令は、周波数と発音秒数で、その命令をクムクムは受けて自分のCPUから矩形波を発生し、オーディオアンプを通してスピーカーに伝えます。
      スクラッチから送り出されてクムクムに届くまでの時間と、届いてからCPUが受け取るまでの時間、CPUが受け取ってから矩形波をコントロールするまでの時間がかかるため、ロボットが直接CPUをコントロールする時間より長くかかってしまいます。

      CPUにロボットを直接コントロールするプログラムを埋め込めるArduinoなどのC言語では、パソコンから送り出したり電波を読み込んだりする時間が必要ないため、もっと早く細かい速度で音のON/OFFを切りかえることができます。

      ※スクラッチで作った曲の演奏がどうしてもちゃんと演奏できなかったり、タイミングがずれたりするのはこのためです。
      ※また、音を鳴らしながらLEDを光らせたりすると、音を鳴らす命令と光らす命令が順に送り出されるため思ったようり遅いタイミングで鳴ったり光ったりしてしまいます。

      デジタル信号を音に

      BEEP音はCPUの1本の脚からデジタル信号で出力されるパルスをオーディオアンプで増幅してスピーカに伝えて鳴らします。
      CPUから出力されるデジタル信号はとても小さな電力なのでそのまま大きなスピーカーの布を揺らすことはできません。
      そのため、オーディオアンプという回路を使い、小さな信号を大きな信号に変えてスピーカーにつないで音として鳴らしています。
      オーディオアンプを使わずに直接CPUの電力で鳴らすために圧電ブザーという部品を使用することもできますが、クムクムでは大きな音を鳴らしたいのであえてオーディオアンプを使っています。

      BEEPが使われている装置・部品など

      家電製品(テレビ、リモコン、炊飯器、洗濯機…)などで操作をしたときにピーとなる音など

      プログラミング用スクラッチの起動

      1. ホームページよりスクラッチWEBを選択します
        ※ブラウザは必ずMicrosoftEdgかGoogleChromeを使用します。
        ※FireFoxやサファリでは正しく動作しません。
      2. スクラッチ画面が開いたら、左下の拡張機能追加をクリックします。
      3. エクステンション一覧からクムクムWEB-BASICを選択してクリックします。
      4. クムクム画面が自動で開いたら3Dロボットが表示するまでまちます。
        ※3D画面が開いたらロボットはコマンド通り動きます。
        ※表示後はプログラムを作りスクリプトを実行すると画面の中のロボットがプログラム通り動きます。

      リアルロボットでの動作方法

      3Dで動いたプログラムをクムクムロボットに転送してロボットでも動かしてみましょう。

      1. リアルロボットを使用する場合、3Dロボット画面の左上<Robot>ボタンをクリックし、ロボット一覧画面を表示します。
      2. ロボット一覧画面からお使いのロボット番号を選択し、画面下のペア設定をクリックします。
        ※ロボット番号が表示されない場合は、使用しているパソコンにBluetooth機能がないか、Bluetooth機能が正しく動作していない可能性があります。
        ※ブラウザーはGoogleのChromeかMicrosoftのEdgeでしか動作しません。(FirefoxやSafariではBluetooth機能などが使用できません)
      3. リアルロボットに使用する電池は、必ずニッケル水素充電電池を使ってください。
        ※アルカリ乾電池では正しく動作しません。
        ※また万が一動作しても、通信などで電力を多く消費するため正しくコマンドを受信できなかったり予想がつかない動きをすることがあり、けがの原因となります。
      4. 通信中にパソコンとクムクムロボットの接続が切れた場合は、電池の充電残量が足りない場合があります。
        ※すぐに充電残量のある電池と交換してください。

      ◆クムクムロボット公式サイトのマニュアル
      https://qumcum.com/wp-content/uploads/2022/08/start_scratch.pdf

      ◆Scratch(スクラッチ)で動く3Dロボット「3D-WEBクムクム」β版
      https://personal.qumcum.com/home3d/robo-real/

      ◆クムクムロボット(アマゾンQumcumストア)
      https://www.amazon.co.jp/stores/Qumcum/page/FFCFA57A-F592-49A0-9F23-3D90514E5E61?ref_=ast_bln

      ◆Youtubeにはたくさんの動画を載せています
      https://www.youtube.com/@qumcum/