【mBlock・CyberPi】Google Classroom 連携でSTEAM教育を学習管理

ClassroomとmBlockの連携でSTEAM教育を学習管理CyberPi・mBlock

mBlock での Google Classroom との連携を実践してみました!結果として、現在(2021年7月29日)において、筆者の環境ではスムーズに連携できませんでした(一工夫すれば可能)。しかし、手順は確立できていますので参考にしていただけると幸いです。

Makeblock社 の mBlock は、CyberPi の制御を中心にネットワーク連携に強みがあります。また、ブロック型のビジュアルプログラミングだけでなく、Pythonでコーディングすることができるため、高校教育においても活用できるのではないかと個人的には思っています。

ネットワーク連携としては、大きく2つの強みがあります。

  1. IoTやAIブロックがあり、CyberPiを簡単なIoT機器にすることが可能
  2. Google Workspace の Google Classroom と Google スプレッドシート と連携することが可能

1と2のGoogle スプレッドシートとの連携に関しては、これまでの記事や動画で触れてきました。

今回は、また全国的にコロナ禍による緊急事態宣言が広まってきており、需要も見込まれることからGoogle Classroom との連携方法を動画・記事化しようと試みましたが、検証の段階でうまくいかなかったため、その経緯を含め記事化しています。

Google Classroom との連携方法

連携方法は下記の公式サイトを参考にしています。
Guide of Using mBlock and Google Classroom to teach coding at home

流れとしては、

プロジェクト作成 ⇒ プロジェクト公開 ⇒ Google Classroom に提出

といった3STEPとなります。mBlock では、ソースコードのファイル自体をプロジェクトと呼んでいます。

事前準備

本手順では下記の準備が必要となります。1~4は通常の Google Classroom の初期設定となりますので、既にクラスがある場合には、事前準備は5の作業のみとなります。

  1. 教師用のGoogleアカウントの用意
  2. 生徒用のGoogleアカウントの用意
  3. 教師用アカウントを教師としたクラスの作成
  4. 生徒用アカウントで3で作成したクラスに生徒として参加
  5. 作成したクラス上で、教師用アカウントを用いて提出期限を設定した「課題」を作成し、生徒用アカウントに割り当てて配布

※ 提出期限を設定していない、または提出期限が過ぎてしまっている場合にはmBlock上より提出することができません(厳しい仕様です)。

なお、Googleアカウントの作成や Google Classroom の作成・参加、課題の配布方法は本記事では触れませんので、ご存知ない方は(筆者よりも上手に説明している他サイトがたくさんありますので)そちらを参照してください。

mBlock にログイン

デスクトップ版かブラウザ版の mBlock を開き、右上のパンダ?のシルエットのアイコンをクリックします。

mBlockログインアイコン
ログインアイコン

ログイン画面がポップアップしてきますので、mBlock のアカウントを既に所持している方は「Email」と「パスワード」を入力してログインします。所持していない方はログインボタンの下の Google のアイコンである「G」をクリックして、Googleアカウントと連携してログインするか、もしくは「サインアップ」タブより mBlock のアカウントを作成してログインします。

mBlockのログイン画面
ログイン画面

なお、デスクトップ版からだと、現在(2021年7月29日)の筆者の環境では下記の画面が表示され、Googleアカウント連携でのログインができませんでした。 Googleアカウント連携を用いてログインしたい場合(mBlock用のアカウントを作成したくない場合)は、ブラウザ版を使うと良いでしょう。

デスクトップ版からだとGoogleアカウント連携でのログインができない
デスクトップ版からはGoogleアカウント連携でのログインができなかった

画面中央の上部に「ログインしました」と表示されればログインは完了です。

mBlockログイン完了画面
mBlockのログイン完了画面

プロジェクト(ソースコード)の作成・公開

ログインが完了したら、プロジェクトを作成して mBlock のコミュニティに公開します。

プロジェクトを第三者と共有するためには、mBlock のコミュニティに公開しなければなりません。Google Classroom に提出するのは、このプロジェクトを mBlockコミュニティ に登録したページのリンクとなります。なお、現在(2021年7月29日)のところ、Google Workspace などのツールのように「リンクを知っている人に公開」などの限定公開はできないようです(ぜひこの機能を追加して欲しい…)。

ソースコードができたら、任意の名前を付け(画像の例では「悩ましいパンダ」)、「公開」ボタンをクリックします。

ソースコードの作成・名前付け・公開

この時点では、まだ mBlockコミュニティ 上で公開されていません。「公開」ボタンをクリック後、ブラウザで mBlockコミュニティ での公開設定画面が開きます。そこで必要に応じてプログラムの説明を入力し、mBlockコミュニティ のガイドラインの同意にチェックした後、「Share」ボタンをクリックします。

mBlockプロジェクトの公開設定
mBlockプロジェクトの公開設定

Google Classroom への提出

まず、mBlock 画面上部からファイル⇒共有先の順にクリックします。

ファイル、共有先の順にクリック

次に、「Google Classroom」ボタンをクリックします。

Google Classroom をクリックする

提出するクラスと課題を選択するウィンドウがポップアップするので、適切なものを選択し、「次へ」ボタンをクリックします。

提出するクラスと課題を選択する

提出するリンクが正しいことを確認し、「添付」ボタンをクリックします。

提出する課題(リンク)を確認して添付ボタンをクリック

なお、現在(2021年7月29日)スムーズに連携できない原因がこのリンクとなります。詳しくは次項で説明しますので、提出方法について続けます。

Google Classroom の提出画面が開かれるので、「提出」ボタンをクリックします。

提出ボタンをクリック

「提出」をクリックします。

提出をクリック

これで提出完了です。

修正したり再提出したりしたい場合には、一度 Google Classroom 上で「提出を取り消し」してからもう一度 mBlock より提出すればOKです。

再提出したいときはClassroom上で提出を取り消しボタンをクリック

うまくいかない原因と現在の対策

現在(2021年7月29日)、うまくいかない原因は、提出するリンクが mBlock より正確に生成されないためだと思われます

現状だと下記の画像のような空のxmlファイルが表示されてしまいます

Classroomに提出するときのリンク

実際に、プロジェクトを公開したあとのリンクと異なっています

現在生成されるリンク: https://ide.mBlock.cc/share.html?[プロジェクト番号]

正しいリンク?(コミュニティ上): https://ide.mBlock.cc/project/[プロジェクト番号]
正しいリンク?(ソースコード): https://ide.mblock.cc/#/?cloudProjectId= [プロジェクト番号]

上記から、対策としては、上記の正しいと思われるリンクを Google Classroom に手動で提出するという方法が挙げられます。

まとめ

Google Classroom と連携することによって学習管理ができることは非常に魅力的です。しかし、現状だと下記の点が改善点でしょう。

  1. 生成するリンクの修正
  2. 限定公開(リンクを知っている人のみがアクセス可能)機能の追加
  3. デスクトップ版からも Googleアカウント連携でログインできるよう修正
  4. Pythonエディターにおいても Google Classroom との連携を可能にする

4に関して触れていませんでしたが、今のところ Google Classroom と連携できるのはブロックエディターのみです。ブロックエディターでも Python でコーディングすることは可能なのですが、ライブラリを追加することができる Pythonエディター でも Google Classroom と連携できるようになっていって欲しいところです。上記を改善することで Google Colaboratory とも比較されるようにもなってくるのではないしょうか。

現状、単純に Python の学習をするのであれば Google Colaboratory が優れた環境だと感じています。しかし、実際にマイコンを制御したりセンサーでデータを取得して分析したり、STEAM教育を行っていくことを考えると、CyberPi などを制御することができる mBlock は非常に魅力的ではあります。

ぜひ改善して安定度を増していって欲しいです。

 

コメント

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