ラズベリーパイ(Raspberry Pi Zero WH)の電子工作で準備する電子部品

Raspberry Pi Zero WHとブレッドボード、ジャンパーワイヤー、LED、抵抗、タクトスイッチなど、電子工作で準備する基本パーツをまとめたアイキャッチ

ラズベリーパイ(Raspberry Pi Zero WH)で電子工作を始めるには、本体や電源ケーブルだけでなく、LEDや抵抗、ブレッドボードなどの電子部品も必要になります。

この記事では、ラズベリーパイで電子工作を試すときに使う電子部品やパーツを、初心者向けに紹介します。

ラズベリーパイ本体、microSDカード、電源ケーブル、ケースなどの機材については、こちらの記事にまとめています。

目次

まず用意したい電子部品

はじめて電子工作を試すなら、まずは次のあたりをそろえておくと進めやすいです。

ブレッドボード、ジャンパーワイヤー、LED、抵抗、タクトスイッチ、RGBフルカラーLEDの6つを電子工作でまず用意したい部品としてまとめた図
  • ブレッドボード
  • ジャンパーワイヤー
  • LED
  • 抵抗
  • タクトスイッチ
  • RGBフルカラーLED

最初からたくさんの部品をそろえる必要はありません。

まずは、LEDを1つ光らせるために必要な部品から始めると、配線やGPIOの使い方を理解しやすいです。

パーツを一つずつ選ぶのが大変な場合は、初心者向けの電子工作キットを使うのも便利です。

ブレッドボード、LED、抵抗、ジャンパーワイヤーなどがまとめて入っているものなら、最初の実験に使いやすいです。

ブレッドボード

ブレッドボードは、はんだ付けをしなくても、穴に電子部品やジャンパーワイヤーを挿すだけで配線できるボードです。

白いブレッドボードの写真

電子工作では、いきなり部品をはんだ付けして固定するのではなく、まずブレッドボード上で動作を確認することが多いです。

配線を間違えても差し替えやすいので、初心者でも試しやすい道具です。

サンハヤトのブレッドボード

ブレッドボードは、品質が安定しているものを選ぶと安心です。

接触不良があると、プログラムや配線が正しくても動かないことがあります。そうなると、原因の切り分けがかなり大変です。

予算に余裕があれば、信頼できるメーカーのブレッドボードを選ぶと、余計なトラブルを減らしやすいです。

価格を抑えたブレッドボード

価格を抑えたブレッドボードもあります。

ただ、ものによっては接触が不安定だったり、内部でうまくつながっていなかったりすることがあります。

安いものを使う場合は、「断線しているかもしれない」「接触が甘いかもしれない」と考えながら確認すると安心です。

はじめはこちらを使っていましたが、途中から接触不良に……。

結局、上のサンハヤトのブレッドボードを買いなおしました。

ミニブレッドボード

もう一つ、小さな工作で便利なのが、このミニブレッドボードです。

小型で扱いやすく、LEDやセンサーを少し試すくらいなら十分使えます。

カラフルなミニブレッドボードとLEDなどの電子部品を並べた写真

机の上でも場所を取りにくいので、ちょっとした確認や小さな回路に向いています。

ブレッドボード内の配線

ブレッドボードは、穴がただ並んでいるだけではありません。

内部では、同じ列や電源ラインがつながっています。

ブレッドボード内部のつながりをオレンジ色の線で示した写真

このつながりを理解しておくと、どこに部品を挿せばよいか、どこにジャンパーワイヤーをつなげばよいかがわかりやすくなります。

ブレッドボードとジャンパーワイヤーの使い方として、電源ライン、横列がつながるエリア、ジャンパーワイヤーでつなぐ基本をまとめた図

ブレッドボードの基本は、次の3つです。

  • 上下の長いラインは、電源やGNDの配線に使う
  • 中央のエリアは、同じ横列の穴が内部でつながっている
  • 部品やラズベリーパイとは、ジャンパーワイヤーで接続する

最初は、短い配線で小さな回路を作ると確認しやすいです。

ジャンパーワイヤー

ジャンパーワイヤーは、ラズベリーパイ、ブレッドボード、電子部品をつなぐための配線です。

赤と黒のジャンパーワイヤーの写真

ラズベリーパイのGPIOピンとブレッドボードをつないだり、ブレッドボード上で部品同士をつないだりするときに使います。

20cmのジャンパーワイヤーセット

ラズベリーパイとブレッドボードをつなぐなら、少し長めのジャンパーワイヤーがあると便利です。

オス-メス、オス-オス、メス-メスのセットがあると、使える場面が増えます。

短いジャンパーワイヤーセット

ブレッドボード上の配線には、短いジャンパーワイヤーも便利です。

長い線ばかりだと、回路がごちゃごちゃして確認しにくくなります。

短い線を使うと、ブレッドボード上の配線がすっきりします。

LED

LED(発光ダイオード)は、電流を流すと光る部品です。

ラズベリーパイの電子工作では、最初に試しやすい部品のひとつです。

赤、黄、白のLEDを並べた写真

プログラムからGPIOを操作してLEDを点灯させると、「プログラムで電子部品を動かしている」ことが目で見てわかります。

LEDのプラスとマイナス

LEDには向きがあります。

長い足がプラス側のアノード、短い足がマイナス側のカソードです。

LEDの長い足がプラス、短い足がマイナスであることと、抵抗を使って安全に光らせる基本を説明した図

基本的には、プラス側から電流を入れて、マイナス側へ流します。

LED本体の平らな面がある側も、マイナス側を見分ける目印になります。

赤色LED

最初に試すなら、赤色LEDなどのシンプルなLEDで十分です。

本サイトでは、秋月電子通商で購入した3mmの赤色LEDを使っています。

赤色LEDの写真

LEDの色やサイズはいろいろありますが、まずは1色のLEDを使って、点灯・消灯を確認するところから始めるとわかりやすいです。

LEDは抵抗とセットで使う

LEDを直接つなぐと、電流が流れすぎてLEDやラズベリーパイを壊してしまう可能性があります。

そのため、LEDを使うときは抵抗も一緒に使うのが基本です。

電流の流れは、たとえば次のようになります。

GPIO → 抵抗 → LED → GND

抵抗を入れることで、LEDに流れる電流を制限できます。

最初は、LEDと抵抗をセットで使うと覚えておくと安心です。

LEDの足をカットする

LEDの足は長いので、そのままだと隣の部品や配線に触れてしまうことがあります。

ショートを防ぐためにも、必要に応じてニッパーでカットします。

ニッパーでLEDの足をカットしている写真

カットするときは、プラス側とマイナス側がわからなくならないように、少しだけ長さを変えておくと見分けやすいです。

抵抗

抵抗は、電流を調整するために使う部品です。

LEDを光らせるときは、電流が流れすぎないように抵抗を入れます。

抵抗にはプラス・マイナスの向きはありません。

こちらもLEDと同様、長すぎる端子はカットして使用します。

抵抗値の見方

抵抗には色の帯が付いていて、この色で抵抗値がわかります。

色の帯を暗記する必要はありません。

うさたん

なんか模様がついてる!

まある

この色の帯で、抵抗の大きさが分かるよ
早見表を見ながら確認すれば大丈夫

さまざまな大きさの抵抗があり、回路によって計算して使い分けます。

最初のうちは、抵抗カラーコードの早見表や計算ツールを見ながら確認すれば大丈夫です。

抵抗は、1種類だけを大量に買うより、いくつかの抵抗値が入ったセットのほうが使いやすいと思います。

タクトスイッチ

タクトスイッチは、押している間だけONになる小さなスイッチです。

ボタンを押したらLEDを光らせる、ボタンを押したらプログラムを動かす、といった入力に使えます。

6mm角4本足、6mm角2本足、12mm角4本足、縦長タイプのタクトスイッチの例と、ブレッドボード上での置き方、押すと回路がつながる仕組みを説明した図

スイッチを使うと、ラズベリーパイに「人が操作した」という入力を送れるようになります。

初心者向けの実験では、LEDと並んでよく使う部品です。

タクトスイッチは、押していないときは回路が切れていて、押している間だけ内部がつながります。

ただし、足の向きやブレッドボードへの挿し方によって、つながり方が変わります。

うまく反応しないときは、プログラムだけでなく、スイッチの向きや配線も確認してみてください。

最初は、ブレッドボードの中央の溝をまたぐように置くと確認しやすいです。

RGBフルカラーLED

RGBフルカラーLEDは、1つのLEDの中に赤・緑・青のLEDチップが入っている部品です。

こちらの写真のLEDは、7色に光る5mmのフルカラーLEDです。

RGBフルカラーLEDの4本の足と、赤・緑・青・共通ピンの位置を示した写真

赤、緑、青の光を組み合わせることで、いろいろな色を表現できます。

こちらは、光の3原色です。

ON・OFFだけでも、赤、緑、青、黄色、水色、マゼンタ、白などを表現できます。

この図のようにON・OFFだけだと7色、中間色も出力できると、多くの色を表現することができます。

three-colors

さらに明るさを細かく調整できると、より多くの色を作れます。

RGBフルカラーLEDで赤、緑、青を組み合わせて黄色、水色、マゼンタ、白などの色を作る仕組みを説明した図

アノードコモンとカソードコモン

フルカラーLEDには、主に次の2種類があります。

  • アノードコモン:プラス側が共通
  • カソードコモン:マイナス側が共通

使うLEDがどちらのタイプかによって、GPIOからの制御方法が変わります。

カソードコモンの場合は、GPIOをHIGHにすると点灯します。
アノードコモンの場合は、GPIOをLOWにすると点灯します。

製品によってピンの並びも違うことがあるため、使う前にデータシートや商品ページを確認すると安心です。

LED光拡散キャップ

LEDに光拡散キャップをつけると、光がやわらかく広がって見えます。

LED光拡散キャップを取り付けたLEDの写真

そのままのLEDは光が一点に強く見えることがありますが、キャップを付けると見た目が少しやさしくなります。

フォトリフレクタ(反射型フォトセンサ)

フォトリフレクタは光の反射を使って、近くにある物の有無や位置などを検知できるセンサーです。

たとえば、ロボットが床の線を読む、物が近づいたことを検知する、といった使い方ができます。

詳しい使い方はこちらの記事で紹介しています。

7セグメントLED

7セグメントLEDは、数字を表示するための部品です。

こちらの写真の小型3桁青色7セグメントLED表示器 7mm高 アノードコモン アノード共通接続 は、きれいな色で数字が表現できる表示器です。

3桁の青色7セグメントLED表示器の写真

7つのバーと小数点用のLEDを組み合わせて、数字を表現します。

7セグメントLEDのA、B、C、D、E、F、G、DPの配置を示した図

たとえば、数字の「3」を表示する場合は、A、B、C、D、Gを点灯させます。

7セグメントLEDで数字の3を表示するときに点灯する部分を赤色で示した図

ピンの配列は、部品によって決まっています(6番のピンはとんでいてありません)。

3桁7セグメントLEDのピン配列を示した図

内部の配線は、次のようになっています。

3桁7セグメントLED内部の配線を示した図

3桁の7セグメントLEDをそのまま表示すると、3桁とも同じ数字が出てしまいます。

そこで、1桁ずつ違う数字を高速に切り替えて表示し、人の目には3桁が同時に表示されているように見せます。

この方法を、ダイナミック点灯といいます。

7セグメントLEDにも、アノードコモンとカソードコモンがあります。

使用する部品に合わせて、点灯条件や配線を確認してください。

6回路シュミットトリガインバータ 74HC14

74HC14は、インバーターが6個入っているICです。

インバーターは、HIGHをLOWに、LOWをHIGHに変える回路です。

そのため、74HC14を通した信号は、入力と出力が反対になります。

この「信号が逆転する」点には注意が必要ですが、ゆらぎのある信号をHIGH/LOWのはっきりしたデジタル信号に整えることができます。

ただし、ADコンバータのようにアナログ値を数値として読み取る部品ではありません。

明るさや距離などの細かい変化を数値として扱いたい場合は、ADコンバータを使います。

74HC14のIC写真

シュミットトリガは、ゆらぎのある信号を、はっきりしたデジタル信号に整えるために使われます。

ゆらぎのあるアナログ信号を、はっきりしたデジタル信号に整えるシュミットトリガの図

センサーの信号が不安定なときや、入力を安定させたいときに役立ちます。

74HC14のピン配列はこちらです。インバーター6個の接続が分かります。

74HC14-pin

詳細はデータシートを参照してください。

ICは向きがあるので、切り欠きや印を確認して差し込みます。

動作が不安定になってしまうときは、しっかり奥までささっているか確認してください。

ADコンバータ MCP3002

ADコンバータは、アナログ信号をデジタル信号に変換するためのICです。

ADコンバータMCP3002の写真

ラズベリーパイのGPIOは、基本的にデジタル信号を扱います。

そのため、明るさや距離など、連続的に変化するアナログ信号を読みたいときは、ADコンバータを使います。

ADコンバータを使うときは、Raspberry PiのSPI通信を利用します。

SPI(Serial Paripheral Interface)とは、少ない信号線で高速にデータの送受信ができる規格です。

ラズベリーパイでSPI通信を利用するには、以下のいずれかの方法でSPIを有効に設定する必要があります。

  • GUIの画面のメニューから[設定]-[Raspberry Pi の設定]-[インターフェイス]タブで有効にする
  • ターミナルで「sudo raspi-config」と入力して表示される設定画面で有効にするリスト

設定方法は環境によって変わることがあるため、実際に作業するときは使っているOSの画面や公式情報も確認してください。

MCP3002のピン配列はこちらです。

MCP3002のピン配列を示した図

各ピンの名前とRaspberry Pi Zero WHへの接続先です。

SPI通信を利用する場合、ラズベリーパイに接続するGPIO番号が決まっています

No.名称接続先
1CS/SHDN チップ・セレクト/CSGPIO8(24) / GPIO7(26)
2CH0アナログ信号入力1
3CH1アナログ信号入力2
4VssGND
5Din データ出力
MOSI Master Out Slave In
GPIO10(19)
6Dout データ入力
MISO Master In Slave Out
GPIO9(21)
7CLK クロック
SCLK Serial CLocK
GPIO11(23)
8Vdd/Vref電源3.3V

8ビットシフトレジスタ 74HC595

8ビットシフトレジスタは、少ないGPIOピンで複数の出力を扱うために使えるICです。

これを利用することでGPIOを節約することができます。

8ビットシフトレジスタ74HC595の写真

シリアルデータ入力をパラレル出力(1つのピンに入力した信号を、8つのピンに出力)することができます。

たとえば、1本道を走ってきた8台の車が、

shift-register

8本のコースの位置について、Go!で一斉に走り出すようなイメージです。

shift-register

ピン配列はこちらです。

74HC595-pin

各ピンの名称と役割です。

1~7, 15QA~QHパラレル出力
8GNDグランド
9QH*直列に74HC595を接続する際に次の74HC595のSER端子に接続
10SRCLR shift register clear  Loのままクロックを送信すると、シフトレジスタの中身が全て0になる
11SRCLKshift register clock  シフトレジスタクロック 
LOWからHIGHになるときに内部シフトレジスタをシフトし、最下位ビットにSERの内容を追加
12RCLKstrage register clock  ラッチクロック ストレージレジスタのクロック信号 内部のシフトレジスタを実際に外の端子に出力
13OEoutput enable  出力の有効化 GNDに接続する
14SERserial input   シリアルデータ入力
16Vcc3.3V電源

使用方法は、出力したい8ビットのデータを上位ビットからSERに入力します。

具体的には、SERにHIGH(1) or LOW(0)を入力し、SRCLKをLOW(0)からHIGH(1)に切り替えることで、1ビットのデータを入力できます。

これを8回繰り返します(8ビットのデータを送信)。

最後にRCLKを LOW(0)からHIGH(1)に切り替えると、1ビットずつQA~QHのピンに出力されます。

74HC595-2

温湿度センサ DHT11

温湿度センサDHT11)は、温度と湿度を同時に測ることができるセンサーです。

青いDHT11温湿度センサーの写真

DHT11には4本のピンがあります。

DHT11のVDD、DATA、NC、GNDのピン構成を示した写真

その構成は、左から

① VDD(3.3V~5.5Vの電圧を供給する)

② DATA(データ 4.7kΩのプルアップ抵抗が必要)

③ NC(Non-Connected = 非接続)

④ GND(グラウンドにつなぐ)

となっています。

プルアップ抵抗とは

信号入力がHIGHでもLOWでもない不安定な状態になると、誤動作の原因になることがあります。

スイッチがOFFのときに信号入力が不定になることを示した図

プルアップ抵抗は、信号を電源側に引き上げて、OFFのときでも状態を安定させるために使います。

プルアップ抵抗を追加して信号入力をHIGHに安定させる図

抵抗を入れずに電源とGNDが直接つながると、ショートしてしまいます。

そのため、プルアップ抵抗を入れて安全に信号を安定させます。

GND側に抵抗を入れて、信号をLOW側に安定させる方法は、プルダウン抵抗といいます。

プルダウン抵抗で信号入力をLOWに安定させる図

モータードライバー TA7291P

※この記事で使っているTA7291Pは、制作当時に使用していたモータードライバーです。

公開から時間が経ったため、現在は入手しづらい場合があります。

これから購入する場合は、現在入手できるモータードライバーの中から、使用するモーターの電圧・電流に合ったものを確認してください。

TA7291Pの代わりに使える候補として、TB6612FNG系やDRV8833系のモジュールもあります。

ただし、ピン配置や制御方法、対応できるモーターの電圧・電流は製品ごとに異なるため、購入前に仕様を確認してください。

モータードライバーは、モーターの回転方向や回転速度を制御するためのICです。

モータードライバーTA7291Pの写真

モーターは、ラズベリーパイのGPIOから直接動かすには大きな電流が必要です。

そのため、モーターを動かすときは、モータードライバーを使って、外部電源からモーターに電力を供給します。

モータードライバーを使うと、

  • モーターを正転させる
  • モーターを逆転させる
  • 回転速度を調整する
  • ラズベリーパイとは別の電源でモーターを動かす

といったことができます。

各ピンの名称と役割です。

TA7291P側Raspberry Pi側
(1)GNDGND(Raspberry Piと外部電源共通)
(2)OUT1モーターの片方に接続
(3)NC非接続
(4)Vref制御電源 (使わない場合、10kΩの抵抗を経由して8ピンに接続)
(5)IN1GPIO (ON or PWM モーター正転)
(6)IN2GPIO (ON or PWM モーター反転)
(7)Vccロジック側電源4.5~20V (外部電源のプラス)
(8)Vsモーター用電源0~20V (外部電源のプラス)
(9)NC非接続
(10)OUT2モータのもう一方に接続

モーターを扱うときは、ラズベリーパイ本体に大きな電流を流さないように注意します。

ラズベリーパイ用カメラモジュール

ラズベリーパイ用のカメラモジュールを使うと、写真や動画を撮影できます。

ロボットに取り付けると、ロボット目線の映像を確認できるようになります。

2592 x 1944ピクセルの静止画像、1080p / 30 fps といった動画撮影をサポート。画像・画質も十分で、接続用のコードも付属されています。

透明のアクリルケースホルダーは、こちらのYoutube動画を参考にしたら、簡単に組み立てられました。

コスパ◎で、とってもおすすめです。

カメラモジュールは、ロボットをスマホから操作する工作でも使用しています。

チェーンプログラムロボット

チェーンプログラムロボットは、プラモデルのように組み立てて動かせるロボットです。

電池を入れて動かします。

タミヤのチェーンプログラムロボット工作セットの箱の写真

付属のグレーのチェーンを組み合わせることで、「前進」、「右カーブ」、「左カーブ」といった動きをプログラムできます。

規則的に小さな穴が開いていて、パーツの組み換えも簡単なので、必要に応じたカスタマイズができます。

このロボットを使って、ラズベリーパイから操作する工作に使っています。

ユニバーサルプレート

ユニバーサルプレートは、ロボットや電子部品を取り付ける土台として使える工作用プレートです。

穴がたくさん開いているので、ねじやパーツを取り付けやすく、工作の幅が広がります。

好きな大きさでカットできるのに丈夫で、接続用のパーツもあるユニバーサルプレートは、簡単に工作ができるのでとても便利です。

上で紹介したチェーンプログラムロボットをカスタマイズするときにも使っています。

こちらの商品は透明なので他のパーツと色が喧嘩しないので、使いやすいです。

タミヤ 特別企画商品 透明 ユニバーサルプレートセット

こちらもおすすめです。

まとめ

ラズベリーパイで電子工作を始めるときは、まず基本の電子部品からそろえると進めやすいです。

最初に用意したいのは、次のような部品です。

  • ブレッドボード
  • ジャンパーワイヤー
  • LED
  • 抵抗
  • タクトスイッチ
  • RGBフルカラーLED

このあたりがあれば、LEDを光らせたり、ボタン入力を試したり、簡単な回路を作ったりできます。

慣れてきたら、センサー、7セグメントLED、ADコンバータ、シフトレジスタ、モータードライバーなどを使うことで、できることが広がっていきます。

電子部品は、最初は少し難しく見えるかもしれません。

でも、1つずつ役割を確認しながら使っていくと、少しずつ回路の意味が見えてきます。

まずは、ブレッドボードにLEDと抵抗を挿して、1つ光らせるところから始めるのがおすすめです。

ラズベリーパイ本体や電源ケーブルなど、電子工作に必要な機材はこちらの記事にまとめています。

次は、Raspberry Pi Zero WHを使えるように初期設定をしていきます。

ラズベリーパイの概要はこちらです。

制作ノート全体はこちらです。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次