【CyberPi・mBlock】マイコンを使ってビートを刻め!CyberPiの接続と音出し

CyberPi本体とBluetoothドングル CyberPi・mBlock

個人的に micro:bit より高校教育に適していると感じている教育用マイコン、makecode社 の CyberPi の接続音の制御を実践しました!

IoTに非常に便利Bluetoothドングル を用いたBluetoothでの接続にも挑戦しています!
最初はなかなか出来ない状態でめげそうでしたが、バッチシ接続できました!
Bluetooth接続に興味がある方はぜひ御覧ください。

 

Scratchと同じ操作感IoTに強みのあるmBlockを用いて制御しています。
拡張ボード、Pocket Shield の説明もしています。

プログラミングIoT初学者でもわかる入門(使い方)の紹介記事でもあります。

CyberPiの接続

CyberPi(サイバーパイ)とPCの接続には以下の2つの方法があります。

  • USBケーブルを使った有線接続
  • Bluetoothドングルを使った無線接続

USBケーブルを使ったPCとの有線接続

USBケーブルは、USB TypeC のものが必要となります。というのも、CyberPi(サイバーパイ)の USB の差込口が TypeC なのです。近年、充電・データ通信ともに TypeC が主流になりつつあるので、個人的には嬉しい仕様です。

CyberPi Go Kit に付属している USBケーブル は TypeA と TypeC を接続するものです。そのため、USB の差込口 が TypeC のみの、MacBook やその他の機器を使われている方は、別途 USBケーブル を用意するか、TypeA から TypeC に変換するアダプタが必要となります。

なお、CyberPi本体の給電もこの TypeC の差込口から行います

Bluetoothドングルを使ったPCとの無線接続

IoT や STEAM教育 を行っていくのであれば、無線化は非常に魅力的です。

CyberPi(サイバーパイ)では、「Bluetoothドングル」を使用することによって、無線化することができます別途購入する必要があります)。

これで、ある程度の距離であれば、自由に作業をすることができるようになります。

なお、電源は CyberPi Go Kit に付属している Pocket Shield がバッテリーの役目を果たしてくれますので、完全に無線化できます。Pocket Shield のバッテリーは、実際の作業内容によりますが4時間前後は持ちます(今後、ソーラーバッテリーとか出てくると IoT・STEAM教育においても面白くなってくるのですけど)。

無線接続の方法

  1. Bluetoothドングル を PC の USBポート に接続
    • Bluetoothドングル は USB TypeA となります。
    • 接続すると、Bluetoothボタン が青色にゆっくり(約1秒間隔)点滅し、「接続待ち」の状態となります。
  2. ペアリング
    • CyberPi に電源が入っている状態で、CyberPi と Bluetoothドングル を近づけて Bluetoothドングル の Bluetoothボタン を押します。
      • このとき、かなり近づけないとペアリングできません(あるふ はこれにハマり、かなり手間取りました…)
    • ペアリング時、Bluetoothボタン が早く青色に点滅します。
    • 「ブー」というビープ音が鳴るとペアリングが完了し、Bluetoothドングル と CyberPi が接続されます。
    • ペアリングが失敗(タイムアウト)した場合には、「ブー」というビープ音が鳴らず、Bluetoothボタン がゆっくりと点滅する「接続待ち」の状態に戻ります。
    • 既にペアリングできている場合、1の状態で「ブー」というビープ音がなり、Bluetoothドングル と CyberPi が接続されます。

mBlockとの接続

気をつけなければならないのが、有線/無線関わらず、PC と CyberPi を接続しただけでは、mBlock で CyberPi を制御することはできません。

mBlock と CyberPi を接続する必要があります。

つまり、

PC <ー> CyberPi と CyberPi <ー> mBlock(ソフトウェア)

という2つの接続が必要ということです。これはどのマイコンでも基本的に同様です。なお、Raspberry Pi に関しては、Raspberry Pi 本体(SDカード等)に OS をインストールし、そこから制御することが多いです。

では、具体的にどうすれば良いかというと、PC と CyberPi が接続されている状態で mBlock画面上左下 の「接続」ボタンを押します。

すると、接続画面が表示されますので、有線/無線に関わらず、「USB」のタブを選択します。

「Bluetoothドングル を使っているのだから Bluetoothタブ ではないの?」と思われる方がいらっしゃるかもしれませんが、Bluetoothドングル が PC の USBポート に接続されている状態ですので、PC から認識できるのは USB となります(少々ややこしいですね…)。

次に、適当な USBポート をドロップダウンリストから選択し、画面中央の「接続」ボタンを押します。選択できる USBポート が複数ある場合には、Bluetoothドングル 以外の USB を抜いて Bluetoothドングル がどのポートか確認してください。ドロップダウンリストに表示されない場合には、PCのドライバ等に問題があるものと思われます。

これで接続完了です!

CyberPiの音の制御

CyberPi(サイバーパイ)には、マイクとスピーカーが内蔵されています。

これらを用いてCyberPiで下記のことができます。

  • しゃべらせる(テンプレートの音声を再生する)
  • 録音・再生する
  • ブザー音を鳴らす
  • 効果音やブザー音でビートを刻む
  • 再生速度を変える
  • 音量を変える

ブロック型のビジュアルプログラミング(Scratch(スクラッチ))で簡単に制御できます(Pythonでの制御も可能)。

しゃべらせる(テンプレートの音声を再生する)

CyberPi には、感情豊かな音声が用意されており、その音声を再生させることができます。

また、「〇〇を再生する」ブロックだけでなく、「〇〇を完了するまで再生する」ブロックがあります。

これは、「再生が完了するまでは次の処理を実行しない」というものなります。時間の制御が必要になる場合に重宝します。

CyberPiのテンプレート音声を再生する2つのブロック
CyberPiのテンプレート音声を再生する2つのブロック

録音・再生する

CyberPi には、テンプレートの音声だけでなく、録音した独自の音声を再生することが可能です。また、テンプレート音声と同様で、「完了するまで再生する」ブロックがあります。

なお、ブロック型のビジュアルプログラミング(Scratch(スクラッチ))においては、残念ながら一つのプログラムに保持できる録音データは一つまでのようです。

ブザー音を鳴らす

音声だけでなく、指定した Hz(周波数)のブザー音を鳴らすことも可能です(ちなみにラの周波数は440Hz)。このブザー音は、鳴らしっぱなしにも秒数を指定して鳴らすこともできます。なお、鳴らしっぱなしにしたものを止めたいときには「すべての音を止める」ブロックを使用します。

効果音やブザー音でビートを刻む

CyberPiが保持している効果音や指定したHzのブザー音でビートを刻むことができます。

具体的には、1秒1拍を基本にして効果音やブザー音をCyberPiから鳴らすことが可能です。

CyberPiでビートを刻む効果音とブザー音のブロック
ビートを刻む効果音とブザー音のブロック

ドラム系のものが揃っているので、この効果音を使えば8ビートぐらいなら簡単にCyberPiで叩くことができそうです(まだ試したことはありませんが)。

なお、「〇の音を△拍再生する」ブロックの〇の数値は、MIDIで音程を表す番号(ノートナンバー)となります。画像の例である60の場合、「ド」となります。〇をクリックすることでピアノの鍵盤が表示されるので、簡単に音楽をプログラムすることが可能です。

再生速度を変える

再生する音の速度を変えることできます。

速さを絶対的に指定することも、今の速さから相対的に速くしたり遅くしたりすることも可能です(おそらく25〜400%の範囲で)。

CyberPiの音の再生速度のブロック(絶対指定と相対指定)
音の再生速度のブロック(絶対指定と相対指定)

再生速度を相対的に遅くしたい場合には、「再生速度を◯%増加する」ブロックで数値をマイナスで設定してください。

音量を変える

再生する音の音量を0〜100%の範囲で変えることができます(デフォルトは30%)。

CyberPiの音量のブロック(絶対指定と相対指定)
音量のブロック(絶対指定と相対指定)

 

コメント

タイトルとURLをコピーしました