かんたんなプログラミングと工作を組み合わせて、micro:bitを使い倒すコツを紹介する本です。楽しみながらプログラミングの基本を習得して、自分だけのオリジナル作品を作ることができます。
まずは、無料で使用できるMakeCodeエディタによるパズル感覚のプログラミングからはじめましょう。慣れてきたら、JavaScriptを併用した高度なプログラミングや、紙工作による外観の加工と組み合わせて、より複雑な作品作りに挑戦していきます。
【micro:bitとは?】
micro:bitは、世界各国で使用されている教育向けマイコンボードです。その魅力は、「かんたん」かつ「低予算」で、多種多様な電子作品作りや実験ができること。本書でプログラミングと工作の基本と応用を学び、さまざまな実験やインタラクティブなアート作品作りにチャレンジしましょう。
【本書で作れる作品のアピールポイント】
・ 工作に使うパーツは紙がメインです。そのため、加工がとてもかんたんですし、ちょっとした工夫で修復したり補強したりできます(たとえば、雨具の撥水スプレーで塗装すると適度に耐水性が備わるなど。身のまわりのものでひと工夫するとより丈夫になります)。
・ シンプルなデザインなので、自分なりの装飾を施すことで世界にひとつだけのオリジナル作品が作れます(カラフルな塗装やアイロンビーズなどで表面を飾ると、SNSでも注目されるようなかわいい作品になりますよ)。
・ 材料や道具にかかる費用を、できるだけ少額に抑えています(お小遣いレベルで用意できますし、プログラミング教室などでも予算を抑えて実習することができます)。
【本書で使う言語やツール】
・ MakeCodeエディタ(micro:bitの公式エディタ、ダウンロード不要で使えます)
・ ブロックプログラミング
・ JavaScript
・ Processing
・ SonicPi
【本書で使用するプログラム】
以下URLから、本書で使用するプログラムをダウンロードできます。
本書で紹介している手順に従って動かしてみましょう。
https://github.com/mathrax-m/microbit
https://www.ohmsha.co.jp/book/9784274222894/
正誤表やDLデータ等がある場合はこちらに掲載しています
CHAPTER 1 micro:bitとは?
CHAPTER 2 プログラミングと工作のための準備
CHAPTER 3 MakeCodeエディタの使いかた
CHAPTER 4 ブロックで知る機能と基本のプログラミング
CHAPTER 5 シミュレーターの使いかた
CHAPTER 6 ブロックとJavaScriptを組み合わせたプログラミング
CHAPTER 7 関数を使ったプログラミング
CHAPTER 8 デザイン工作
CHAPTER 9 より自由な表現の実践
CHAPTER 10 micro:bitの知ってて得するポイント
はじめに/目次
CHAPTER 1 micro:bitとは?
1.1 micro:bitとは?
1.2 micro:bitの外観と機能
(1)プロセッサ
(2)LED(5×5)
(3)ABボタン
(4)端子
(5)光センサ
(6)加速度センサ
(7)デジタルコンパス
(8)磁力センサ
(9)温度センサ
(10)無線
(11)Bluetooth
(12)マイクロUSBコネクタ
(13)リセットボタン
(14)バッテリーコネクタ
1.3 プログラミングと工作を始める前の注意
・事故を起こさないために―基板がむき出しであることを理解する
・壊さないために(1)―安全な電源電圧を理解する
・壊さないために(2)―端子の傷付きやすさを理解する
CHAPTER 2 プログラミングと工作のための準備
2.1 最低限の準備
2.2 用途に応じた準備
・USBケーブルなしで動作させる
・音を出す
・PCと通信する(シリアル通信)
CHAPTER 3 MakeCodeエディタの使いかた
3.1 MakeCodeエディタへのアクセス
3.2 MakeCodeエディタ画面の説明
3.3 ブロックプログラミングから書き込みまでの体験
LET'S TRY:ボタンを押したらアイコンが変わるアニメーションを作ってみましょう
(1)micro:bitがスタートしたらLEDアイコンを表示する
(2)ボタンAを押したらアイコンが変わるようにする
(3)ボタンB を押したらアイコンが変わるようにする
(4)シミュレーターで動作を確認する
(5)プログラムをmicro:bit本体に書き込む
CHAPTER 4 ブロックで知る機能と基本のプログラミング
4.1 LED
・LEDにアイコンを表示する
・LEDのドットをxとyで指定して光らせる
・LEDに棒グラフを表示する
・LEDの明るさを変える
4.2 ABボタン
・「ボタンが押されたとき」ブロックについて
・ボタンが押された回数を数える
・ボタンが押されたらオン、もう一度押されたらオフにする
・【応用】ボタンの反応をよくする
4.3 音
・音を出す
・周波数で音の高さを指定する
4.4 光センサ
4.5 加速度センサ
・加速度センサ「X, Y, Z」をよく反応させるには
・加速度をLEDの棒グラフで表現する
・加速度が2Gを超えたら音を鳴らす
4.6 磁力センサ
・方位磁石を作る
・磁石を近づけるとLEDで表示するアイコンが変わる
4.7 温度センサ
4.8 マイクロUSBコネクタ
・加速度センサを書き出す
・ボタンが押されていることを書き出す
・複数の情報を書き出す
4.9 無線
・光センサの値を無線で送受信する
CHAPTER 5 シミュレーターの使いかた
5.1 光センサのシミュレーション
5.2 加速度センサのシミュレーション
5.3 デジタルコンパスのシミュレーション
5.4 温度センサのシミュレーション
5.5 タッチセンサのシミュレーション
5.6 シリアル通信のシミュレーション
CHAPTER 6 ブロックとJavaScriptを組み合わせたプログラミング
LET'S TRY:LEDの「点灯時間」を変えてさまざまなリズムのハートのドキドキを作ってみましょう
(1)LEDのハートとスモールハートを交互に表示する〈ブロックモード〉
(2)交互に表示する速度を変える〈ブロックモード〉
(3)交互に表示する速度を変える〈JavaScriptモード〉
(4)ブロックエディタとJavaScriptを使い分けて整える〈ブロックとJavaScriptの併用〉
CHAPTER 7 関数を使ったプログラミング
7.1 単純な関数
7.2 パラメータを渡す関数
7.3 パラメータを返す関数
CHAPTER 8 デザイン工作
8.1 工作の準備
8.2 工作のコツ
・切る
・折る
・貼る
8.3 基本ボックスの工作
(1)電池ボックスを用意する
(2)紙のパーツを用意する
(3)両面テープで紙のパーツを固定する
(4)両面テープで電池ボックスを固定する
あると便利なツール
8.4 厚紙によるパーツ作り
(1)寸法を測って切り出す
(2)パーツを組み立てる
(3)パーツ同士を組み立てる
(4)完成
・あると便利なツール
8.5 足や腕に付ける
8.6 マグネットで貼り付ける
8.7 植木鉢や花壇に差し込む
8.8 タッチ操作のジュークボックス
(1)ネジについて
(2)パーツの寸法と組み立て
(3)パーツ同士の組み立て
(4)micro:bit・ネジ・スピーカーをつなぐ
(5)micro:bitと本体の組み立て
(6)プログラムの書き込み
(7)完成
8.9 持ちやすいコントローラ
(1)パーツの寸法
(2)アルミパーツの準備
(3)アルミパーツの寸法
(4)パーツ同士の組み立て
CHAPTER 9 より自由な表現の実践
9.1 micro:bit+Processingの連携
・連携の準備をする
・Processingとの連携プログラムのポイント
・【応用】Processingで残像効果を付ける
・【応用】micro:bitからより複雑なデータを送信する
・【応用】Processingでなめらかに動かす
・まとめ
9.2 micro:bit+Processing+SonicPiとの連携
・連携の準備をする
・ProcessingとSonicPiを連携する
・micro:bitとProcessingとSonicPiを連携する
9.3 表現の工夫
(1)曲のように聞こえる表現
(2)ウェアラブルに身体を使って演奏する表現
(3)インタラクティブなグラフィック表現
CHAPTER 10 micro:bitの知ってて得するポイント
10.1 ブラウザでワンクリック書き込みができる
・ファームウェアのアップデート
・MakeCodeエディタとペア設定する
・プログラム書き込みの確認
10.2 β版のMakeCodeエディタがある
10.3 iOSやAndroidでもmicro:bitにプログラミングできる
10.4 Androidでもmicro:bitにプログラミングできる
10.5 シリアル通信が少しだけ速くなるプログラムがある
10.6 「マップする」結果の上限と下限は超えることがある
10.7 シリアル通信で簡易的なDMX信号を送ることができる
10.8 拡張機能がたくさんある
10.9 Pythonのプログラム環境もある
・「Mu」を入手する
・「Mu」を起動する
索引