ハロー・ワールド!おもちゃ大好きエンジニアの大之助( @daivoy_x)です!
子供向けプログラミング教材で有名なMicrosoft MakeCodeをご存知でしょうか?
「Microsoft MakeCode」はビジュアルプログラミングやテキストプログラミング(JavaScriptとPython)ができる教育向けのプログラミングソフトです。
今回はその中でも、「micro:bit」というマイクロコンピューター(マイコン)をプログラミングできるバージョンの「Microsoft MakeCode for micro:bit」を紹介します。
教育向けに作られていて初心者にもわかりやすいですし、細かいプログラミングもできるのでプログラミング学習におすすめですよ。
というわけで本記事では「Microsoft MakeCode for micro:bit」とはなにか?から、使い方や作れるプログラムについてエンジニア目線で紹介していきます!
- 完全無料
- シミュレーション機能が便利
- ブロック↔テキストを瞬時に変換可能
- デバッグがしやすい
- 高度なプログラミングが可能
- 色々なロボットに使われている
- 関数の使い方が少しわかりにくい
- プログラムの編集画面を分割不可
- チュートリアルは英語のみ
MakeCodeとは?MakeCodeの基本情報
「Microsoft MakeCode for micro:bit」とは教育向けマイクロコンピューター(マイコン)の「micro:bit」をプログラミングするための統合開発環境です。
商品名 | Microsoft MakeCode for micro:bit |
メーカー | Microsoft Corp. |
ブランド | Microsoft MakeCode |
希望小売価格(税込) | 無料 |
対象年齢 | 記載なし |
可能な基本処理 | 順次/分岐/反復 |
教材 | チュートリアルあり |
デバイス | パソコン | 【オフライン】Windows 【オンライン】Windows/macOS/Chrome OS |
タブレット | 【オフライン】Android/iOS 【オンライン】Android/iOS(※書き込み不可) |
|
スマホ | 【オフライン】Android/iOS 【オンライン】Android/iOS(※書き込み不可) |
|
ブラウザ | Google Chrome/Microsoft Edge/Firefox/Safari | |
インターネット接続 | 初回のみ必須。以降はオンライン/オフライン可 | |
プログラミング方法 | ・ビジュアルプログラミング(ブロックを組み立てるタイプ) ・テキストプログラミング |
|
プログラミングソフト | ・Microsoft MakeCode for micro:bit ・micro:bit |
|
プログラミング言語 | ・ビジュアル:オリジナル ・テキスト:JavaScript/Python |
|
作れるプログラム | micro:bitのプログラム |
この教材でできること
できることは下記のような「micro:bitを動かすためのプログラミング」です。
- LEDを点灯させる
- マイクで騒音を検知する
- 温度センサーを使って温度計を作る
- 接続したモーターを動かす
しかも、このソフトにはシミュレーション機能があるので、micro:bitを持ってなくても十分にプログラミング学習ができますよ。
この教材で遊ぶときの環境
この教材で遊ぶときはWEBブラウザを使ってオンラインでプログラミングする方法とデバイスにアプリをダウンロードしてオフラインでプログラミングする方法があります。
▼オフライン:アプリをダウンロードして遊ぶ場合
▼オンライン:公式サイトにアクセスして遊ぶ場合
MakeCodeの使い方
早速、どんな感じでプログラム作るのか紹介しますね。
画面構成~画面の見方を知ろう!~
まず、画面構成はこんな感じで、3つのエリアに分かれています。
中央にはプログラムを作るための「命令ブロック」があります。この命令ブロックをつなげてプログラムを作ります。
右側が「編集」エリアです。ここにブロックを置いてプログラムを作ります。
左側には「シミュレーション」エリアがあります。作ったプログラムの動作を確認することができます。
micro:bitについているボタンもシミュレーションで再現できます。
MakeCodeのデメリット
私が感じたデメリットは次のとおりです。
- 関数の使い方が少しわかりにくい
- 編集画面を分けることができない
- チュートリアルは英語のみ
- 日本語に対応していない命令ブロックがある
詳しく解説します。
関数の使い方が少しわかりにくい
関数(オリジナルの命令ブロック)を作る機能がありますが、その使い方が少しわかりにくかったですし、チュートリアルも見つけられませんでした。
関数の使い方はこちらの記事で詳しく解説しています。あわせてご覧ください。(編集中です。)
編集画面を分けることができない
プログラムは1つの編集画面で作ります。
なので、プログラムが複雑になると一つの編集画面にたくさんの命令ブロックが並びます。
プログラムが複雑になればなるほどわかりにくくなって、不具合を混入させる確率が高まるのはデメリットですね~。
チュートリアルは英語のみ
先程も紹介しましたが、チュートリアルが英語のみなのはちょっと残念ですね。
ただ、図やアニメーションをみていると何となく分かるのでそんなに問題は無いかもです。
日本語に対応していない命令ブロックがある
一部の命令ブロックは日本語に対応していません。
MakeCodeのメリット
私がエンジニア目線でいいなと思ったところは次のとおりです。
- チュートリアルが豊富
- シミュレーション機能が便利
- ブロック↔テキストを瞬時に変換可能
- デバッグがしやすい
- 高度なプログラミングが可能
- 色々なプログラミングおもちゃに使われている
それぞれ解説します。
チュートリアルが豊富
チュートリアル(使い方説明)が豊富なのもうれしい点です。
シミュレーション機能が便利
シミュレーション機能があるのは素晴らしいです。
それにプログラムを作ったらその場で反映されるので動作を確認しながらプログラミング学習ができるのはいいですよ。
ブロック↔テキストを瞬時に変換可能
ビジュアル(ブロック)プログラミングとテキスト(JavaScript/Python)プログラミングを瞬時に切り替えることができます。
切り替えるには上部中央の切り替えボタンをクリックします。
拡大するとこんな感じです。[JavaScript]をクリックすると、
JavaScriptに切り替わりました!
そして、[Python]をクリックすると、
Pythonに切り替わります!
デバッグがしやすい
デバッグをするために変数をリアルタイムで表示したり、ステップ実行ができて便利です!
デバッグをするには[デバッグモードの切り替え]をクリックします。
すると中央に[→Step]と書かれたボタンや変数が表示されます。
この[→Step]ボタンはプログラムを1行ずつ実行するボタンです。そして、変数欄には実行しているプログラムの変数の変化がリアルタイムで表示されます。
[→Step]をクリックする度にプログラムを1行ずつ実行(ステップ実行)できるので、どこまでは想定通りの動作で、どこからは想定とは違う動作なのか確認できます。
変数もステップ実行する度に変わるので、不具合が見つけやすいです。
高度なプログラミングが可能
micro:bitに接続したモーターやセンサーを動かすために少し高度なプログラミングができます。
シリアル通信を使えばmicro:bitのセンサー値などをパソコン(PC)に送信して表示することもできます。
色々なプログラミングおもちゃに使われている
今回のソフトでプログラミングするmicro:bitはマイクロコンピューター(マイコン)なので、色々なロボットに搭載してロボットを動かすことができます。
micro:bitのボタンを押してLEDを表示させるだけでも楽しめますが、ロボットを制御するためのプログラムを作るのは楽しいので、プログラミング学習のモチベーションも上がっていいですよ。
micro:bitを使うロボット
では、具体的にmicro:bitを使うロボットを紹介します。
例えば、以前レビューした「マイコンロボット工作セット (クローラータイプ)」があります。
関連「マイコンロボット工作セット(クローラータイプ)」の詳細レビューはこちら
ロボットを動かす手順は次のとおりです。
- Microsoft MakeCode for micro:bitでロボット用のプログラムを作る
- 作ったプログラムをmicro:bitに書き込む
- micro:bitをロボットに搭載する
- ロボットの電源をONにする
Scratchの様にPC上で動作するゲームやアニメーションを作るのもいいですが、実際に目の前で動くロボットを作るのも楽しいですよ。
MakeCodeをおすすめできる人
「Microsoft MakeCode for micro:bit」はプログラミング初心者だけど長期的にプログラミングを学習したいお子さんににおすすめです。
micro:bitを持っていなくてもシミュレーションだけで十分にプログラミングの学習になります。
まとめ:MakeCodeでプログラミングを始めよう!
本記事は「Microsoft MakeCode for micro:bit」をエンジニア目線で紹介しました。
micro:bitは子供向けプログラミング教材なので色々な機能が手軽に使えるように作られているのが素晴らしいです!しかも無料で!
下記にmicro:bitの使い方をまとめているので、あわせてご覧ください。
これからの時代、プログラミングは必須スキルです。ぜひ、お子さんが子供の頃からプログラミングを体験させてあげてくださいね。
- 完全無料
- シミュレーション機能が便利
- ブロック↔テキストを瞬時に変換可能
- デバッグがしやすい
- 高度なプログラミングが可能
- 色々なロボットに使われている
- 関数の使い方が少しわかりにくい
- プログラムの編集画面を分割不可
- チュートリアルは英語のみ
▼おすすめプログラミングおもちゃまとめ(年齢別)