学校で使うならArduino、ESP32、Raspberry Pi Picoのどれ?ボードの選び方
学校ではArduino、ESP32、Raspberry Pi Picoのどれを選ぶべきでしょうか。授業の目標、学年、学校のパソコンへのインストール、予算ごとの判断表と、段階的な1年間の計画を紹介します。
学校で使うならArduino、ESP32、Raspberry Pi Picoのどれかという問いへの短い答えはこうです。ほとんどの学校はArduino Unoから始めるのがおすすめです。授業の目標にモノのインターネット(IoT)、つまりWi-Fiでデータを送ったりスマホから操作したりする機器が含まれるなら、2段階目としてESP32を加えます。すでにPythonを教えている学校なら、2枚目のボードはRaspberry Pi Picoにしましょう。1年間を1種類のボードで通そうとするのではなく、段階で考えます。1学期は5 Vで動き、ミスに強く、資料も豊富なUnoで電子工作とプログラミングの基礎を固め、2学期は同じプロジェクトを目標に合った2枚目のボードで作り直して発展させます。
この記事は個人向けの購入ガイドではありません。1人でどのボードを買うかは「どのArduinoを買えばいい?」と「ArduinoとESP32の違いは?」で取り上げました。それぞれのボードについては「ESP32とは?」と「Raspberry Pi Picoとは?」で詳しく紹介しています。ここでは学校の視点からこの問いを考えます。生徒24人、8グループ、管理者権限が必要なパソコン、40〜45分の授業、そして何年も使い続ける備品でいっぱいの棚。まず技術的な判断表、次に授業の目標と学年ごとのおすすめ、インストールの違い、そして1年間の計画例を紹介します。

学校での選び方が個人の選び方と違うのはなぜ?
自宅で1枚のボードを買う人にとって、大事なのは「このボードで何が作れるか?」です。学校ではこの問いが「このボードで24人の生徒が、同じ授業時間に、同時に、できるだけトラブルなく何を学べるか?」に変わります。ポートが見つからなくても、自宅なら5分のロスで済みます。教室で8グループのうち3グループがポートを見つけられなければ、その授業は終わりです。だからこそ学校では、メガヘルツやキロバイトは二の次になります。大事なのは次のような問いです。インストールは何ステップか、配線を間違えたらボードが壊れるか、センサーを直接つなげられるか、そして先生がすぐに使える教材を見つけられるか。
もう一つは期間です。学校のボードはふつう1年ではなく数年使われ、毎年新しいクラスが同じ棚を開けます。そのため選ぶ基準は「どのボードが高性能か?」ではなく、「どの順番でボードを使えば生徒が次のステップに進めるか?」です。Unoで身につけたプログラムの考え方は、ESP32では同じ言語で、Picoでは同じ概念で続いていきます。段階的な計画の強みはここにあります。1年間を1種類のボードで通すこともできますが、その場合は最初の数週間が必要以上に難しくなるか、無線通信や2つ目の言語といった重要なステップに触れないまま生徒が1年を終えることになります。
判断表:学校ではUno、ESP32、Picoはどう違う?
下の表は、学校で実際に差が出る基準でボードを比べたものです。ESP32の列は、学校で最もよく使われている30ピンのESP32 DevKit(ESP32-WROOM-32モジュール搭載)です。Picoの列はRaspberry Pi Picoとその無線版のPico Wを対象にしています。Unoの列は定番のUno R3についてです。Uno R4との違いは「Arduino Uno R4」の記事で紹介しています。
| 基準 | Arduino Uno (R3) | ESP32 (DevKit) | Raspberry Pi Pico |
|---|---|---|---|
| 動作電圧(ピン) | 5 V。ピンは5 Vの信号を出力でき、受け付けることもできる | 3.3 V。ピンは5 V非対応 | 3.3 V。ピンは5 V非対応 |
| プログラミング言語 | Arduino C++(ブロックで読むこともできる) | 主にArduino C++。MicroPythonも動く | 主にMicroPython。Arduino C++でもプログラムできる |
| インストールの手軽さ | いちばん簡単:Arduino IDEを入れ、ボードとポートを選んで書き込むだけ | 中程度:IDEに別途ESP32のボードパッケージが必要、一部のボードは書き込み時にBOOTボタンが必要 | 簡単:Thonnyを入れ、ボードにMicroPythonを一度書き込む |
| Wi-Fi / Bluetooth | なし(Uno R4 WiFiにはある) | Wi-Fi(2.4 GHz)、Bluetooth ClassicとBLE | なし。Pico WにはWi-FiとBluetoothがある |
| ミスへの強さ | 高い:5 Vで余裕が大きく、推奨値のピンあたり20 mAで抵抗付きのLEDを無理なく駆動できる | 中程度:5 Vの信号でピンが壊れる。GPIO0、2、12、15などの起動用ピン(ストラッピングピン)につないだ回路で書き込みができなくなることがある | 中程度:5 Vの信号でピンが壊れる。ソフトウェア面ではBOOTSELでいつでも復旧できる |
| センサーとの相性 | ほとんどの5 Vモジュールを直接つなげる(HC-SR04、リレーモジュール、5 VのLCD) | 3.3 Vのセンサーは直接つなげる。5 V出力のモジュールには分圧回路かレベル変換モジュールが必要 | ESP32と同じ。アナログ入力は3本だけ(GP26〜GP28) |
| アナログ読み取り | 6ピン、10ビット(0〜1023) | 多数のピン、12ビット。Wi-Fi使用中はADC2のピンを読み取れない | 3ピン、12ビット(MicroPythonのread_u16では0〜65535) |
| 教材の多さ | 最も多い:長年学校で使われ、多くの言語で教材が豊富 | 多い、特にIoTやスマートホーム関連 | 増えている。MicroPythonのドキュメントは充実しているが、すぐ使える授業教材は少なめ |
| 学校のパソコンへのインストール | Arduino IDE。純正品はドライバ不要、CH340搭載の互換品はドライバが必要な場合がある | Arduino IDE+数百MBのボードパッケージ+USBチップに応じたCP210xまたはCH340のドライバ | Thonny。Windows 10/11、macOS、Linuxでは別途ドライバ不要 |
| ボードの価格の目安 | 純正のUnoは3つの中で最も高い。Unoの互換品はもっと安い | たいてい安い | たいていいちばん安い |
特に注目したいのは、動作電圧とミスへの強さの2行です。Unoのピンは5 Vで動くので、市販のセンサーモジュールの多くを直接つなげられ、生徒が配線を間違えても、たいていは回路が動かないだけで済みます。ESP32とPicoのピンは3.3 Vです。これらのピンに5 Vの信号が入ると、ピンやボードが壊れることがあります。1人の生徒にとっては小さな違いですが、8グループのクラスでは予備ボードの予算に直接響きます。価格の行だけで決めるのも避けましょう。ブレッドボード、ジャンパーワイヤー、センサー、予備を加えた総額の中で、ボードの価格はわずかな割合にすぎません。
授業の目標ごとに選ぶならどのボード?
ボードを選ぶ前に、授業の終わりに生徒が何をできるようになってほしいかを1文で書き出してみましょう。「LEDに抵抗が必要な理由を測定して説明できる」と「温度のデータをスマホで見られる」では、必要なボードが違います。下の表のスタート用プロジェクトはすべてBlueGraysで無料で、回路図、部品リスト、コード付きで開けます。
| 授業の目標 | 最初のボード | 理由 | 無料のスタート用プロジェクト |
|---|---|---|---|
| 電子工作の基礎(電流、電圧、抵抗、LED) | Arduino Uno | 5 Vの回路では測定値が計算と一致しやすく、ミスでボードが壊れることもめったにない | LEDの点滅、信号機 |
| アルゴリズムとC++ | Arduino Uno、次にESP32 | 同じ言語、同じIDE。Unoで学んだsetup()、loop()、if、forがそのままESP32で使える | ボタンでLEDの点灯・消灯を切り替え |
| Pythonでのプログラミング | Raspberry Pi Pico | パソコンで学んだPythonの知識をボードに生かせる。Thonnyに入力した1行の結果が、コンパイルを待たずにわかる | Raspberry Pi Picoで外付けLEDを点灯(GP14+ブレッドボード) |
| モノのインターネット(IoT) | ESP32(代わりにPico Wも可) | Wi-FiとBluetoothを内蔵。ESP32のプロジェクトもArduino C++なので、1学期の知識が無駄にならない | ESP32 Wi-Fi STA接続(LCDディスプレイ付き) |
| ロボット(モーター、サーボ、距離) | Arduino Uno。無線操作ならESP32 | モータードライバのボードや5 Vモジュールの多くはUnoを前提に設計されている。スマホで操作する車を作るならESP32 | HC-SR04で距離を測定(シリアルモニタ表示) |
| 理科の実験とデータの記録 | Arduino Uno | センサーとシリアルモニタがあれば十分。DHT11のような5 Vモジュールを直接つなげる | DHT11で温度と湿度を測定 |
表の中で特に誤解されやすいのは、PythonとIoTの2行です。Pythonを教えるためにPicoを選ぶということは、生徒がパソコンで書いたforループやif文を、同じ構文のままLEDに使えるということです。Thonnyのシェルに1行入力するだけで、ボードのLEDがすぐに点灯します。IoTでのESP32の強みは、Wi-Fiを内蔵していることだけではありません。ESP32のプロジェクトはUnoと同じArduino C++で書かれています。1学期に学んだpinMode()、digitalRead()、if文は2学期にもそのまま使え、生徒が新しく学ぶのはWi-Fiへの接続とWebページの配信だけです。Pico WもWi-Fiに接続できます。学校の目標がPythonとIoTの両方なら、Pico W 1枚で両方をカバーできます。
学年ごとのおすすめ
年齢だけで決まるわけではありません。同じ年齢の2つのクラスでも、一方はブロックプログラミングの経験があり、もう一方は情報の授業を受けたことがないかもしれません。それでも、授業時間の長さ、キーボードやファイルの扱いへの慣れ、学校の時間割は、学年によってはっきり変わります。下の表はその違いをまとめたものです。「次のステップ」の列は、同じ年度内に限らず、生徒の準備ができたときに進むステップを示しています。
| 学年 | 最初のボード | 次のステップ | 注意点 |
|---|---|---|---|
| 中学校(およそ11〜14歳) | Arduino Uno | 同じ年度内にボードを替える必要はない。クラブや選択授業でESP32を使ってスマホから操作 | プログラムはブロックで読み、本物のコードは用意したものを書き込む。授業のうち10分をインストールに取られないようにする |
| 高校(普通科) | Arduino Uno(1学期) | Pythonの授業があればPico、なければESP32(2学期) | ボードの切り替えを新しい単元としてではなく、知っているプロジェクトを新しいボードで作り直すものとして示す |
| 専門高校(電気・電子、情報) | Arduino Unoとテスター | ESP32でIoT。レベル変換や電源の計算も授業のテーマになる | 3.3 Vと5 Vの違いは、説明するのではなく生徒に測定させて教える |
| 大人向けの講座 | 講座の目標に合わせて選んだ1種類のボード | ホームオートメーションをやりたいグループは最初からESP32、Pythonを知っているグループはPico | 短い講座では2種類のボードのインストールに時間を使わない |
中学校でブロックから始めるとプログラムは読みやすくなりますが、ボード選びは変わりません。BlueGraysでブロック対応のプロジェクトの多くはArduinoのプロジェクトで、ブロックはプログラムを読むためのものです。ボードには常にプロジェクトの本物のコードを書き込みます。ブロックとC++、MicroPythonの対応を並べて見たい場合は、「ブロックからC++への対応表」を見てください。高校や職業教育では、2種類のボードを知ること自体が成果になります。同じセンサーを5 Vと3.3 Vのボードで動かした生徒は、二度と電圧のレベルを軽く見なくなります。大人向けの講座では、参加者の多くがはっきりした目標を持って来ます。最初の授業で「何を作りたいですか?」と聞いてボードを選ぶほうが、全員に同じ道を歩かせるより効果的です。
学校のパソコンへのインストール:ドライバ、ボードパッケージ、Thonny、管理者権限
学校でのボード選びの隠れたコストはインストールです。自宅なら一度で済むインストールを、学校では生徒用パソコン8台と先生用パソコン1台で繰り返すことになります。しかも多くの学校では、ソフトウェアをインストールできるのはICT担当者だけです。3つのボードのインストールの負担ははっきり違います。
| ステップ | Arduino Uno | ESP32 | Raspberry Pi Pico |
|---|---|---|---|
| ソフトウェア | Arduino IDE 2 | Arduino IDE 2 | Thonny(専用のPythonが付属) |
| 追加のパッケージ | 不要、Unoのサポートは最初から入っている | ボードマネージャからesp32 by Espressif Systems、数百MB | MicroPythonのUF2ファイルをボードに一度書き込む |
| USBドライバ | 純正品は不要。CH340搭載の互換品は必要な場合がある | ボードのチップに応じてCP210x、CH340、CH9102 | 不要 |
| 管理者権限 | IDEとドライバのインストールにたいてい必要 | IDEとドライバに必要。ボードパッケージはユーザーのフォルダに入る | ドライバがないので負担は軽め。Thonnyはユーザーアカウントにインストールできることが多い |
| 最初の書き込みでよくあるトラブル | ポートの選び間違い、充電専用ケーブル | ポートが出ない、「Failed to connect」(接続失敗、BOOTボタン)、コンパイルが長い | Thonnyでインタプリタを選んでいない、MicroPythonが入っていないボード |
ESP32のボードパッケージには、学校でよくトラブルの原因になる点があります。パッケージはパソコン全体ではなく、ログインしているユーザーのフォルダにインストールされます。生徒が共通のアカウントでログインするなら問題ありませんが、一人ひとりが自分のアカウントを使う場合は、アカウントごとにパッケージが再ダウンロードされます。再起動のたびに初期状態に戻るパソコンでは、翌日にはインストールが消えてしまいます。その場合は、ICT担当者に保護されたイメージへパッケージを追加してもらいましょう。PicoではMicroPythonがボード自体に入っているので、この問題はありません。ボードを一度準備すれば、1年間どのパソコンにつないでもThonnyが認識します。
ICT担当者に相談するときは、はっきりしたリストを持っていきましょう。「Arduinoを入れてください」と頼むのではなく、次の項目を渡します。1学期の前にUnoの項目を、2学期の前にESP32またはPicoの項目を伝えるとよいでしょう。
- Arduino IDE 2のデスクトップ版を、生徒用パソコン8台と先生用パソコン1台に。
- Unoの互換品やESP32のUSBチップに応じて、CH340、CP210x、CH9102のいずれかのドライバ。チップは注文したボードが届いたらボード上で確認します。
- ESP32を使う場合:ボードマネージャからesp32 by Espressif Systemsのパッケージと、授業で使うライブラリ。生徒用アカウントでも見えるようにする必要があります。
- Picoを使う場合:Thonny。USBストレージをブロックするポリシーがあると、PicoがBOOTSELモードで表示するRPI-RP2ドライブも表示されません。学期の初めに自分のパソコンで、ボードにMicroPythonを一度書き込んでおきましょう。
- 生徒用アカウントでUSBシリアルポートへのアクセスが制限されていないこと。
- インストール後、生徒用アカウントで10分間のテスト:ボードをつなぎ、ポートを選び、スケッチ例を書き込む。
段階的な計画:1年間の例
週2コマの授業があり、クラスは24人、生徒は3人ずつ8グループで作業するとします。各学期のうち約14週間を実習に使えると仮定しましょう。1学期は全員がUnoで同じ基礎を固めます。2学期は学校の目標に応じて、A(ESP32、IoT)かB(Pico、Python)のどちらかのコースを選びます。どちらのコースも、あえてなじみのあるプロジェクトから始めます。生徒は1学期の最初のプロジェクトを新しいボードで作り直し、違いを自分の目で確かめます。表のプロジェクトはすべて無料です。
| 学期と週 | ボード | テーマ | 無料のプロジェクト |
|---|---|---|---|
| 1学期、1〜3週目 | Uno | プログラムとは何か、デジタル出力、タイミング | LEDの点滅、信号機 |
| 1学期、4〜6週目 | Uno | 入力、条件分岐、状態の保持 | ボタンでLEDの点灯・消灯を切り替え |
| 1学期、7〜9週目 | Uno | アナログセンサー、しきい値 | LDRで作る常夜灯 |
| 1学期、10〜14週目 | Uno | 距離と環境の測定、シリアルモニタ、ミニプロジェクト | HC-SR04で距離を測定(シリアルモニタ表示)、DHT11で温度と湿度を測定 |
| 2学期Aコース、1〜3週目 | ESP32 | 同じLEDとボタンをESP32で、3.3 Vの違い、ボードパッケージ | ESP32でLEDを点滅 |
| 2学期Aコース、4〜8週目 | ESP32 | センサーとLCD、Wi-Fiへの接続 | ESP32 DHT22温湿度計(LCDディスプレイ付き)、ESP32 Wi-Fi STA接続(LCDディスプレイ付き) |
| 2学期Aコース、9〜14週目 | ESP32 | スマホからアクセスできるWebページ、IoTの最終プロジェクト | ESP32非同期Webサーバー(LCDにIPアドレスを表示) |
| 2学期Bコース、1〜4週目 | Pico | Pythonの構文、LED、信号機 | Raspberry Pi Picoで外付けLEDを点灯(GP14+ブレッドボード)、Raspberry Pi Picoで信号機(3個のLEDを順に点灯、GP11/GP12/GP13) |
| 2学期Bコース、5〜14週目 | Pico | 距離、音、ボタンの配列、最終プロジェクト | Raspberry Pi Picoの駐車センサー(HC-SR04+LED3個+ブザー)、Raspberry Pi Picoのボタンピアノ(ボタン5個+ブザー+メロディー録音) |
2学期の最初の週は、新しいテーマを教えないようにしましょう。なじみのあるLEDのプロジェクトを新しいボードで作らせ、生徒には「何が変わった?」とだけ聞きます。ピン番号、3.3 V、ESP32でのボードパッケージの選択、Picoではコードがpythonになること。これらが答えで、自分で見つけた違いを生徒は忘れません。Aコースの最初の授業は「ESP32の初回授業の計画」で分単位に、その後は「8週間のESP32 IoT単元」で週ごとに用意しました。Bコースには「6週間のPicoとMicroPythonの授業計画」がそのまま使えます。
段階的な計画は予算も分けてくれます。1年目はUnoのキットだけに投資します。2枚目のボードはそのキットのLED、抵抗、ボタン、LDR、センサーと一緒に使えるので、ほとんどの場合はボード、ケーブル、いくつかの追加部品だけで済みます。「学校にArduinoラボをつくる」では、実演用にESP32とPicoを数枚用意することを提案しました。クラス全員が2枚目のボードに移るなら、ボードの数は実演用の枚数ではなくグループの数で数えましょう。8グループと予備1枚分の、第2段階のリストです。
- Aコース:グループごとにESP32 DevKitを1枚、クラスで9枚。ボードのUSBポートに合うデータ通信用ケーブルを9本。ほとんどのESP32 DevKitはブレッドボード1枚をほぼ覆ってしまいます。ブレッドボード2枚を横に並べてつなぎ、真ん中にボードを載せると配線が楽になります。
- Bコース:グループごとにRaspberry Pi Pico HまたはPico WH(ピンヘッダーはんだ付け済み)を1枚、クラスで9枚。micro USBのデータ通信用ケーブルを9本。ヘッダーなしのPicoを買う場合は、9枚分のはんだ付けの時間を別に確保する必要があります。
- 両コース共通:5 VのHC-SR04を使うなら、グループごとに1 kΩと2 kΩの抵抗を1本ずつ、クラスでそれぞれ9本。または3.3 Vで動くバージョンのセンサー。
- 無線を使う週:学校のネットワークの代わりに、2.4 GHzで電波を出すスマホのテザリングか別のルーター(AコースとPico Wを使うBコース)。

学校がボードを選ぶときによくある5つの失敗
- IoTの目標がないのにIoT向けのボードを買う:ESP32は高性能なので、1年目から全員分のESP32を買いたくなります。しかしWi-Fiを使わないなら、生徒は何の見返りもなく3.3 Vの制約と追加のインストール手順に付き合うことになります。
- 同じ授業でボードを混ぜる:4グループがUno、4グループがPicoで作業すると、2つの授業を同時に進めることになります。ボードの切り替えは学期や単元の区切りで行いましょう。レベル差のあるクラスでは、ボードではなく課題の難しさで差をつけます。
- PicoとPico Wを混同する:Wi-FiがあるのはW付きのバージョンだけです。無線の単元を予定しているなら、注文時にWを確認しましょう。Pythonの入門なら無印のPicoで十分です。
- 充電専用ケーブルで授業に臨む:充電専用のUSBケーブルはボードに電源を供給しますが、ポートは表示されません。生徒は長い時間ドライバの問題を探すことになります。学期の初めにケーブルを1本ずつボードで試し、データ通信用ケーブルに印を付けておきましょう。
- 互換品を純正品と同じだと思い込む:Unoの互換品やESP32の互換品は学校の予算には合理的ですが、USBチップが違うことがあり、ドライバが必要になる場合があります。まとめて注文する前に、サンプルのボードを学校のパソコンで、生徒用アカウントを使って試してください。
BlueGraysでの3つのボードの扱い
BlueGraysではプロジェクトが3つのプラットフォームに分かれていて、その分け方は段階的な計画に合っています。Arduino向けは110件以上、ESP32向けは約50件、Raspberry Pi Pico向けは30件以上です。そのうち60件は完全に無料で、内訳はArduinoが20件、ESP32が20件、Picoが20件です。無料のプロジェクトでは回路図、部品リスト、コード、コードを理解のセクションを利用できます。上の計画表のプロジェクトはすべてこの中から選びました。ArduinoとESP32のプロジェクトのコードはArduino C++、PicoのプロジェクトのコードはMicroPythonです。発見 › プロジェクトの絞り込みでプラットフォームと料金区分を選ぶと、授業のボードに合った無料プロジェクトを一覧で見られます。
- プロジェクトさがし:2つ目の質問は「どのボードを持っていますか?」で、選択肢はArduino Uno / Nano、ESP32、Raspberry Pi Pico、「まだ持っていません」です。生徒は持っているボードを選ぶとおすすめが表示され、結果画面のまずは無料で練習のおすすめで、同じ部品で始められる無料のプロジェクトがわかります。詳しくは「プロジェクトさがし」の記事で。
- コードガイド:学ぶセクションのコードガイドにはArduino C++とMicroPythonの2つのコースがあり、それぞれ18枚のカードがあります。各カードの例には「ブロック・Arduino・MicroPython」のタブがあるので、Bコースの生徒は同じ命令のC++版とPython版を並べて見られます。カードの一覧はコードガイドの記事にあります。
- 今日のクイズ:問題のプログラミング言語の設定は「両方」、Arduino、MicroPythonから選べます。Bコースのクラスは2学期にMicroPythonの問題に切り替えられます。
- 一緒に作りましょう:ガイドモードの3.コードを書き込むのステップはボードによって変わります。ArduinoとESP32のプロジェクトではArduino IDEの「ツール」メニューからボードとポートを選び、PicoのプロジェクトではThonnyでMicroPythonのインタプリタを選びます。最初の授業でこのステップをプロジェクターで一緒に確認すると、インストールに関する質問が減ります。
- プレミアムと教育者向けパッケージ:プレミアムはアカウントに紐づいていて、3つのプラットフォームすべてのプロジェクトのロックが解除されます。2学期にESP32やPicoへ移るときに、生徒が別に何かを購入する必要はありません。クラス全員分については、プロフィール > 教育者向けパッケージにある、自動更新されない5個パックと10個パックの仕組みを「授業向けのまとめ買いプレミアムコード」で解説しました。
決める前に答えておきたい6つの質問:教科会に持っていこう
- 授業の終わりに、生徒は何ができるようになるべきですか?回路を説明すること、コードを書くこと、データをネットワークに送ること?
- 学校でPythonやC++を教えていますか?教えているなら、どの学年ですか?
- 何グループで作業し、予備のボードを何枚確保しますか?
- パソコンにソフトウェアをインストールする権限は誰にあり、インストールにはどれくらいかかりますか?
- 手持ちのセンサーは5 Vですか、3.3 Vですか?2枚目のボードに合いますか?
- 学校のネットワークは機器の接続を許可していますか?それともテザリングが必要ですか?
最初の2つの質問の答えがはっきりしていれば、ボードはおのずと決まります。電子工作の基礎とアルゴリズムならUno、通信ならESP32、PythonならPicoです。決める前に、この計画の無料プロジェクトをBlueGraysアプリで回路図とコード付きで開き、ひと晩かけて目を通してみてください。どのコースがクラスに合うかを知るいちばんの近道です。
よくある質問
学校ではArduinoとRaspberry Pi Picoのどちらを教えるべきですか?
電子工作の基礎とプログラミングの考え方を学ぶなら、Arduino Unoから始めるほうが安全です。5 Vで動き、ほとんどのセンサーを直接つなげられ、教材も豊富です。学校でPythonを教えているなら、Picoは2枚目のボードとしてよく合います。どちらか1つを選ぶより、学期ごとに2つのボードを順番に使うほうが、たいていはうまくいきます。
ESP32は初心者には難しいですか?
コーディングの面は難しくありません。ESP32もArduino IDEで同じC++を使ってプログラムします。難しいのはインストール(追加のボードパッケージ、USBドライバ、ときにはBOOTボタン)と3.3 Vの制約です。そのため学校では、生徒がUnoで基本的な回路を組めるようになってからESP32を導入するほうがスムーズです。
Raspberry Pi PicoとRaspberry Piは同じものですか?
違います。Raspberry PiはOSを動かす小さなコンピューターです。Picoは、Arduinoと同じように1つのプログラムを動かすマイコンボードです。Picoにはディスプレイやキーボードをつなぎません。USBでパソコンにつなぎ、ThonnyからMicroPythonでプログラムします。
学校のパソコンにArduino IDEをインストールするには管理者権限が必要ですか?
ほとんどの学校では、ソフトウェアやUSBドライバのインストールに管理者権限が必要なので、ICT担当者と計画を立てましょう。さらにESP32のボードパッケージはログインしているユーザーのフォルダに入るので、生徒用アカウントでのテストが欠かせません。Picoは別途ドライバが不要なので負担が軽くなります。
学校で買うならPicoとPico Wのどちらですか?
Pythonと電子工作の基礎だけを教えるならPicoで十分です。Wi-FiやBluetoothを使う単元を予定しているならPico Wを買いましょう。授業ではどちらも同じ方法でプログラムします。そのままブレッドボードに挿せるように、ヘッダーがはんだ付け済みのPico HまたはPico WHを選んでください。
1クラスに何枚のボードが必要ですか?
24人のクラスを3人ずつのグループに分けると8グループになり、予備1枚を含めて9枚あれば十分です。2人1組にするなら、12グループと予備1〜2枚で計算しましょう。2枚目のボードに移るときも同じ数え方です。ラボの実演用に買った数枚では、クラス全員の切り替えには足りません。
この記事を読んだ後に作れるプロジェクト
全プロジェクトを見る
LEDの点滅
電子工作の第一歩は、1個のLEDを点けたり消したりすることです。Arduinoで短い間隔で点灯と消灯を繰り返すと、LEDが素早く点滅します。ボードが光を制御する仕組みを最もシンプルな形で確かめ、これから取り組むプロジェクトの基礎を身につけます。

信号機
毎日道路で見かける信号機の小さな模型です。赤が2秒点灯し、黄が一瞬点灯した後、緑が2秒点灯します。その後、再び黄を経て赤に戻り、この動作を繰り返します。3個のLEDを順番に点けたり消したりしながら、タイミングの組み立て方を学びます。

LDRで作る常夜灯
暗くなると自動で点灯し、朝になると消灯する小さな常夜灯です。光センサーが部屋の明るさを測定し、Arduinoが十分に暗くなったらLEDを点灯させ、明るくなったら消灯させます。街灯が夕方になると自動で点灯する仕組みも理解できます。

HC-SR04で距離を測定(シリアルモニタ表示)
HC-SR04センサーは、コウモリが暗闇で道を見つけるのと同じ仕組みで動作します。人には聞こえない音を出し、その反響を捉えて前方の物体までの距離を測ります。Arduinoは0.5秒ごとに距離をセンチメートル単位でコンピューターの画面に表示し、3〜100センチメートルの測定値を示します。駐車センサーや障害物を避けるロボットなどのプロジェクトの基礎になります。

ESP32でLEDを点滅
ESP32のGPIO出力の基本を学びます。デジタルピンからLEDを点灯・消灯させて、点滅させます。Arduino UNOの定番のLED点滅プロジェクトのESP32版です。Arduino環境で使う基本的な点滅コマンドは同じですが、ESP32のピン配置と3.3 VのGPIO電圧レベルはArduino UNOとは異なります。

ESP32 DHT22温湿度計(LCDディスプレイ付き)
DHT22センサーで周囲の温度と湿度を測定し、16x2 I2C LCDにリアルタイムで表示するプロジェクトです。Adafruit DHTライブラリを使い、1本の信号線を使うプロトコルでセンサーからデータを読み取ります。IoT気象観測装置やスマートホームの自動化、温室の環境監視システムの基礎となります。ESP32のGPIO 4ピンを介してDHT22と通信します。

Raspberry Pi Picoで外付けLEDを点灯(ブレッドボード)
Picoの内蔵LEDの次は、ブレッドボードに外付けLEDを接続し、GP14ピンで制御します。このプロジェクトでは、Picoの汎用GPIOピンを出力として使う方法、LEDの極性(長い足=アノード/+、短い足=カソード/−)、電流制限抵抗(220Ω)が必要な理由を学びます。抵抗を入れないと、LEDに過大な電流が流れて壊れることがあります。回路はとても簡単です。Pico GP14 → 220Ω抵抗 → LED(+)→ LED(−)→ Pico GND。Wokwiでシミュレーションできます。

Raspberry Pi Picoで信号機(3個のLEDを順に点灯)
赤・黄・緑のLEDで本物の信号機を再現する、Picoシリーズ初の3個のLEDを使うプロジェクトです!緑が4秒間「進め」、黄が1.5秒間「準備」、赤が3秒間「止まれ」、赤と黄が1秒間「発進準備」を示します(ヨーロッパの信号機のパターン)。関数の定義(def all_off())、状態機械の仕組み(順序)、複数のGPIOの同期を学びます。回路はとても簡単です。GP11(緑)、GP12(黄)、GP13(赤)に3個のLEDを接続し、それぞれに220Ωの電流制限抵抗を使います。
ほかの記事
BlueGraysアプリ
この回路をスマホでステップごとに作る
回路図、コード、部品リストを1つの画面で確認できます。Arduino、ESP32、Picoのプロジェクトを200件以上用意しています。

