Raspberry Pi(ラズパイ)のGPIOピンとは?初心者に向けて丁寧に解説!

Raspberry Pi(ラズパイ)には、GPIOというピンがあります。電子工作をする上で欠かせないGPIOですが、見た目がトゲトゲしく初心者は使い方を理解するのは大変だと思います。

そこで、この記事では

 

「電子工作用にラズパイを買ったけど、まだ活用法が分からないな…」

「どうやったらラズパイでモノは動くのだろう?」

という疑問がある方に

この記事で分かること
  • ラズパイのGPIOでできること
  • GPIOを使うときの注意点
  • GPIOの使い方

について、分かりやすく解説していきます!

GPIOとは?

上図に示すように、GPIOピンはラズパイの端にあるトゲトゲした突起のことです。

このGPIOピンは汎用入出力ポートとも呼ばれています。名前の通り、入力と出力ができるポートです。

具体的には

  • センサからの信号を受信する(入力)
  • スイッチのON/OFFの信号を受信する(入力)
  • LEDを点灯させる信号を送信する(出力)
  • モータを動かす信号を送信する(出力)

などができます。

センサーやモーターなどを扱うときに必須となるピンとなります。

各GPIOピンの役割

一見どのピンも同じように見えますが、実際は1本1本役割が決まっています。それぞれの役割について解説していこうと思います。

上図のように、ピンの種類は大きく分けて三種類です。

  • 電源(3.3 Vと5.5 Vの二種)
  • GND(グランド)
  • GPIO

電源が必要な機器のために5 Vと3.3 Vの電源が用意されています。このピンには常に電圧がかかっています。

GND(グランド)は乾電池の-極と同じ役割を担っています。ですので、電源とGNDを繋ぐと乾電池と同じように扱えます。

下図は豆電球をラズパイと乾電池で点灯させたときのイメージです。ラズパイの電源とGNDを使っているので、乾電池と同じように扱えています。

ピンの大部分を占めるのがGPIOピンです。プログラム上でONとOFFが切り替えられ、入力と出力の制御も可能です。

たとえば

  • 電流を流したり止めたりしてLEDを点滅させる(出力モード)
  • スイッチが入ったことを感知する(入力モード)
  • 電圧を読み取って回路をチェックする(入力モード)

などができます。

出力モードは、自分の好きなタイミングで電流を流せる乾電池のようなものです。また、入力モードは電圧を読み取ることができます。

GPIOピンの中には特殊な機能をもつピンも存在しています。特殊なピンは外部のセンサーのようなモジュールと接続できます。

モジュールとは拡張キットのようなもので、接続するだけで機能を増やすことができます。たとえば、カメラのないパソコンにUSBカメラを繋いで写真を撮れるようにしたとします。この場合、本来のPCでは撮れなかった写真が撮れるようになったわけなので、USBカメラはモジュールと言えるでしょう。

モジュールをGPIOで接続することで、ラズパイに温度を計る機能やGPS情報を取得する機能を追加できます。

GPIOを使うときの注意点

電子工作でもっとも気をつけるべきなのはショートです。

ショートとは、回路に過剰な電流が流れる現象のことをいいます。ショートは電子部品や電源が壊れる原因になるだけでなく、実験者が火傷などの怪我をするケースにもなるので注意が必要です。

GPIOも扱いをうっかり間違えるとショートすることがあります。ケースを挙げて解説しますので、実際に回路を組むときはケースに該当しないかチェックしてください。

電源とGNDを直結するケース

導線は抵抗がないため、電源の+と-を直結すると過剰な電流が流れます。すなわちショートです。

わざわざ上図のような直結する回路を作ることはないでしょう。しかしラズパイの電源を入れたまま回路を製作していると、たまたま直結される場合があります。回路を作るときは必ずラズパイの電源を落としましょう。

GNDとGPIOを直結するケース

GPIOの入力モードは、回路に電圧がかかっているのか確かめることができます。入力モードであればGNDと直結しても問題ありません。GPIOはGNDの電圧を読み取るだけです。

しかし、うっかり出力モードにしてしまうとショートします。GPIOピンからの電流が一気にGNDに流れ込むからです。

対策として、すべてのGPIOピンを1度入力モードにした上で、必要なGPIOピンのみを出力モードに切り替える方法があります。

GPIO同士を繋ぐケース

GPIOピンが両方とも入力モードであればショートは発生しません。しかし、どちらか一方が出力モードになると他方に電流が流れ込みます。

注意点のまとめ

図では分かりやすいように簡単な配線にしましたが、現実ではブレッドボードを使用して複雑な回路になります。回路が複雑であればあるほどミスが発生しやすくなるものです。

ショートさせる意思がなくても、うっかりミスでショートさせるケースもありえます。細心の注意を払いましょう!!

GPIOの使い方

電子工作をするときは、ブレッドボードで回路を組むのが一般的です。GPIOはラズパイでの電子工作の基本なので、ブレッドボードに挿せないとお話になりません。

しかしラズパイのGPIOピンは針が短いので、ブレッドボードに直接挿すことはできません。そこでジャンパー線を使えば実現可能です。

ジャンパー線には3種類あります。

  • オスーオス ジャンパー線(両端が尖っている)
  • オスーメス ジャンパー線(一方が尖っていて、他方が凹んでいる)
  • メスーメス ジャンパー線(両端が凹んでいる)

オスというのは、ジャンパー線の先端が凸であることを意味しています。ブレッドボードなどの穴が開いたところに挿し込むことができます。

メスというのは、ジャンパー線の先端が凹であることを意味しています。GPIOピンなどの針が飛び出たところに挿し込むことができます。

オスーメス ジャンパー線
ラズパイとブレッドボードを繋いだ様子

ラズパイのGPIOピンとブレッドボードを繋ぐには、オスーメスジャンパー線を使います。メスをGPIOに挿し込んで、オスをブレッドボードの穴に挿し込みます。そうすることで、ブレッドボード上の回路をGPIOで制御することができます。

ジャンパー線は様々なシーンで使います。3種類とも持っておくと安心でしょう。


まとめ

以上がGPIOについての解説でした。

GPIOはプログラムで細かい動きを制御できるので、電子工作では必須です。ラズパイでの制御でもっとも基本的な部分となります。

ショートのことを頭の片隅に入れたまま忘れずに、電子工作を楽しみましょう!!

1 COMMENT

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です