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

2019年11月19日

このサイトのラズベリーパイ(Raspberry Pi Zero WH)を使った電子工作で使用しているものを中心に、いろいろな電子部品とその使い方を紹介します。

raspi-prepare2

前回の記事、ラズベリーパイ(Raspberry Pi Zero WH)を使って電子工作をするときに準備する機材についての記事も合わせてみてください。

ブレッドボード

はんだ付けをしなくても、穴にパーツを挿すだけで配線できてしまうすごいボードです。

ブレッドボード

おすすめはこの3つです

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

国産で有名なのが、こちらのサンハヤトのブレッドボードです。

品質がいいので、不良品かも? 断線してるかも? などと心配しないで回路が組めるのがいいですね。

不良品の場合に返品するのも面倒ですし、予算に余裕があればこちらがおすすめです。

外国製のブレッドボード

こちらは、国産のものより安いのですが、品質はちょっと……。

当たりはずれも大きいので、もしかしたら断線してるかも? とチェックしながら、配線した方がよさそうです。

はじめはこちらを使っていましたが、途中から接触不良に……。結局、上のサンハヤトのブレッドボードを買いなおしました。

ミニブレッドボード

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

色がかわいいです。

ブレッドボード内の配線

ブレッドボードは、下の写真のオレンジの線のように、内部でつながっています。

それを踏まえて、電子部品やジャンパーワイヤーを挿して配線していきます。

ブレッドボード内の配線

ジャンパーワイヤー

ジャンパーワイヤを使って、ラズベリーパイ(Raspberry Pi Zero WH)とブレッドボードの配線をします。
ジャンパーワイヤ

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

ジャンパーワイヤは、Amazonでオスーメス・オスーオス・メスーメスのセットを購入しました。20cmなので、ちょうどいい長さですし、色がかわいいです。

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

短いジャンパーワイヤー線のセットもあります。

いろいろな長さがセットになっていて、ブレッドボード上で配線するのに便利です。

LED

LED(発光ダイオード)は、豆電球のように電流を流すと光ります。

LEDLEDの端子には+側アノード(長い端子)と-側カソード(短い端子)があります。

電源につなぐ時は、アノード側に電源のプラス側をつなぎます。

色や大きさもいろいろありますし、抵抗を内蔵したものもあります。

赤色LED(3mm)

どの色のLEDでもOKなんですが、たとえば本サイトでは、秋月電子通商で1個10円で購入した3mmの赤色LEDを使っています。

赤いLED

RGBフルカラーLED(5mm)

7色に光る5mmのフルカラーLEDもきれいです。

秋月電子通商で1個50円で購入しました。

フルカラーLED

中に赤・緑・青の3つのLEDが入っていて、この3色を混ぜることでフルカラーを表現します。

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

光の三原色

 

フルカラーLEDには、アノードコモンカソードコモンの2種類があります。

この製品はマイナス側の端子が共通になっているカソードコモンなので、ソース電流(吐き出し)接続とします。

ソース電流とシンク電流

フルカラーLEDの接続方法には以下があります。

カソードコモンの場合、LEDをソース電流(吐き出し)接続とし、GPIOをHIGHにすることで点灯させます。

アノードコモンの場合、LEDをシンク電流(吸い込み)接続とし、GPIOをLOWにすることで点灯させます。

ソース電流型 GPIO→抵抗→LED→GND GPIOがHIGHでLED点灯
シンク電流型 電源 →抵抗→LED→GPIO GPIOがLOWでLED点灯

 

LED光拡散キャップ(5mm)

LEDに光拡散キャップをつけてあげると、光がやさしくきれいに見えます。

秋月電子通商で1個30円でした。

LED光拡散キャップ

LEDの端子をカット

LEDの端子は結構長いので、そのまま使うとさわっちゃいけない場所がさわっちゃったりして、ショートする可能性があって危険です。

そこで、ちょうどいい長さになるようニッパ等でカットします。

そのとき、どちらが+側か分かるように少しだけ長さを変えてカットするなど、区別がつくようにしておきます。

LEDをカット

カーボン抵抗器

LEDなどの電子部品に流れる電流を調節するため、カーボン抵抗を使用します。

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

特に+や-はありません。こちらもLEDと同様、長すぎる端子はカットして使用します。

このサイトでは、秋月電子通商で100本入りで100円で購入した抵抗を使用しています。

抵抗

Left Caption
まあちゃん
なんか模様がついてる!
Right Caption
ままあちゃん
この線で、抵抗の大きさが分かるよ
早見表が紹介されてるね

 

ただ、1つの抵抗値(たとえば330Ω)の抵抗を100本も使いきれないので、何種類も買うと割高になってしまいます。

こちらのようなセットを買ったほうがよかったなと思っています。

温湿度センサ DHT11 

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

秋月電子通商で、300円で購入しました。

DHT11

下から4本のピンが出ています。

その構成は、左から
 ① VDD(3.3V~5.5Vの電圧を供給する)
 ② DATA(データ 4.7kΩのプルアップ抵抗が必要)
 ③ NC(Non-Connected = 非接続) 
 ④ GND(グラウンドにつなぐ)
となっています。

DHT11のピン構成

プルアップ抵抗とは

信号入力がHIGHでもLOWでもない不安定な状態になると、誤動作を起こす可能性があります。

それを防ぐために使われるのが、プルアップ抵抗です。

例えば、下の図のような回路の場合、スイッチをONにすると信号入力はGNDとつながっているのでLOW(0V)になり問題ありません。

でも、スイッチをOFFにすると信号入力はどこにもつながっていないので、何Vか分からない不定な状態になってしまいます。

プルアップ抵抗1

そこで、下の図のように電源(+3.3V)とつなぎプルアップ抵抗を追加します。

今度は、スイッチがOFFでも信号入力は電源(+3.3V)と接続しているので、HIGH(3.3V)に引き上げられ(プルアップ)、不定ではなくなります。

プルアップ抵抗2

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

プルアップ抵抗には、10kΩの抵抗が使われることが多いようです。

ちなみに、GND側に入れた以下のような抵抗をプルダウン抵抗といいます。

スイッチがONのときは、信号入力はHIGH(3.3V)になり問題ありません。

スイッチがOFFのとき、信号入力はLOW(0V)に引き下ろされ(プルダウン)、不定になるのを防いでいます。

プルダウン抵抗

7セグメントLED

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

秋月電子通商で120円で購入しました。

7セグメントLED

 

7つのバーとDPの8つのLEDを点灯させることで数字を表現します。

7セグメントLED

例えば、数字の3を表示する場合、ABCDGを点灯させます。

7セグメントLEDで3を表示

ピンの配列はこのようになっています。6番のピンはとんでいてありません。

7セグメントLEDのピン配列

中の配線は、このようになっています。

7セグメントLEDの配線

このまま表示すると、3桁とも同じ数字が表示されてしまいます。

そこで、1桁ずつ違う数字を表示し、それを高速に繰り返すことによって、目の残像現象で3桁の数字が表示されているように見せることができます(ダイナミック点灯)。

 

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

今回使用している7セグメントLEDはアノードコモンなので、LEDをシンク電流(吸い込み)接続とし、GPIOをLOWにすることでLEDが点灯させます。

ソース電流とシンク電流については、こちらを参照してください。

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

74HC14は、インバーター(HIGH → LOW、LOW → HIGH に変える回路)が6個入っていIC(集積回路)です。

74HC14を通すことで、信号が逆転してしまうものの、ADコンバーターを使うより高速にアナログ信号をデジタル信号に変換することができます。

秋月電子通商で40円で購入しました。

74HC14

シュミットトリガとは、ギザギザしたアナログ信号をきれいなデジタル信号にしてくれものです。

シュミットトリガ

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

74HC14 ピン接続図詳細はデータシートを参照してください。

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

ADコンバータ MCP3002

ADコンバータは、アナログ信号をデジタル信号に変換してくれるICです。

秋月電子通商で160円で購入しました。

ラズベリーパイ(Raspberry Pi Zero WH)はデジタル信号のみ入力することができるので、アナログ信号を入力したいときに使用します。

mcp3002

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

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

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

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

 

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

mcp3002のピン配列

 

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

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

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

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

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

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

8ビットシフトレジスタのイメージ1

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

8ビットシフトレジスタのイメージ2

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

秋月電子通商で40円で購入しました。

74HC595

ピン配列はこちらです。

74HC595のピン配列

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

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

モータードライバー TA7291P

モータードライバーは、モーターの回転する方向を変えたり回転速度を制御することができるICです。

また、大きな電流が必要なモーターにラズベリーパイ以外の乾電池やモバイルバッテリーなど外部から給電できることもメリットです。

秋月電子通商で、2個300円で購入しました。

モータードライバ

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

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

まとめ

日常生活では出会わないような電子部品たちも、かわいい色のものがあったり、説明を読んでみると興味深かったり、楽しいものがたくさんあります。

これらを使って、簡単な工作から少しずつ試していきたいと思います。

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

 

Posted by ままあちゃん