ラズベリーパイでGPIOを使おう:LEDやセンサーをPythonで操作する方法


前へ⇒ Pythonモジュール入門:プログラムの機能を拡張する便利な部品

※当サイトは、アフィリエイトプログラムを利用して商品を紹介しています。

ラズベリーパイ(Raspberry Pi)は、小さなコンピュータですが GPIO(General Purpose Input/Output) というピンを使うことで、LEDやセンサー、モーターなどの電子部品を直接制御できます。

しかし、GPIOピンにはそれぞれ役割があり、正しく理解して使わないと誤作動や故障の原因になります。GPIOピンの役割や配置、Pythonでの基本的な操作方法を紹介します。

GPIOとは?

GPIOとは、汎用入出力ピンのことで、ラズベリーパイの基板の端にずらっと並んでいる金属ピンのことです。

  • Input(入力):ボタンやセンサーの信号を受け取る
  • Output(出力):LEDを光らせたりモーターを回したりする

簡単にいうと「電子部品とラズパイをつなぐ窓口」です。

GPIOピンの本数と並び方

40ピンのGPIOヘッダーが搭載されています。

  • 電源用のピン(3.3V、5V)
  • GND(グラウンド)
  • 特殊な通信ピン(I²C, SPI, UART)

これらが混在しているので、正しいピンを使うことが重要です。

Raspberry Pi 5 GPIOピン配置(40ピンヘッダー)

(写真の右上がGPIOの(2)番ピン)

 3.3V  (1) (2)  5V
 GPIO2 (3) (4)  5V
 GPIO3 (5) (6)  GND
 GPIO4 (7) (8)  GPIO14
  GND  (9) (10) GPIO15
 GPIO17(11)(12) GPIO18
 GPIO27(13)(14) GND
 GPIO22(15)(16) GPIO23
 3.3V  (17)(18) GPIO24
 GPIO10(19)(20) GND
 GPIO9 (21)(22) GPIO25
 GPIO11(23)(24) GPIO8
  GND  (25)(26) GPIO7
 ID_SD (27)(28) ID_SC
 GPIO5 (29)(30) GND
 GPIO6 (31)(32) GPIO12
 GPIO13(33)(34) GND
 GPIO19(35)(36) GPIO16
 GPIO26(37)(38) GPIO20
  GND  (39)(40) GPIO21

GPIOを使うときに必要な道具:ブレッドボードとジャンパーワイヤー

GPIOをラズベリーパイ本体に直接電子部品を差し込んで使うのは危険です。そこで便利なのが ブレッドボードジャンパーワイヤー です。

これらを使うことで、安全かつ簡単に電子回路を組むことができます。

ブレッドボードとは?

ハンダ付けをせずに電子部品を差し込んで回路を組める板のことです。初心者が電子工作を始めるときの必需品です。

特徴

  • 穴がたくさん空いていて、部品やワイヤーを差し込むだけで電気的に接続できる
  • 何度でもやり直しができる
  • 配線の構造を目で見て確認できるので分かりやすい

ラズパイでLEDやセンサーを使うときは、このブレッドボードに部品を差し込み、ジャンパーワイヤーでGPIOとつなぎます。

[PR]ブレッドボード

【400穴・2枚セット】ブレッドボード 84mm×56mm×9mm ミニサイズ BREADBOARD はんだ付け不要

価格:1000円
(2025/9/11 11:30時点)
感想(2件)

ジャンパーワイヤーとは?

ラズパイのGPIOピンとブレッドボードをつなぐケーブルです。色や長さがいろいろあり、配線を見やすくするために色分けして使うのが一般的です。

種類

  • オス-オス:ブレッドボード同士をつなぐ
  • オス-メス:ラズパイのGPIOピンとブレッドボードをつなぐ(よく使う)
  • メス-メス:センサーやモジュール同士をつなぐ

初心者はまず オス-メスのジャンパーワイヤー をセットで持っておくと便利です。また「ブレッドボード + ジャンパーワイヤーセット」を買えばすぐに電子工作を始められます。

LED点灯プログラムを試す前に、まずはブレッドボードとジャンパーワイヤーで安全な配線環境を整えましょう!

[PR]ジャンパーワイヤー

【お手頃40本】ジャンパー ワイヤー ブレッドボード 用 【メス-オス】 20cm 40本束

価格:480円
(2025/9/11 11:42時点)
感想(2件)

[PR]ブレッドボード + ジャンパーワイヤー セット

uxcell ブレッドボードキット 830,400ポイント 無はんだブレッドボード M/Fジャンパー線付き プロトシールド分配接続ブロック用 1セット

価格:1797円
(2025/9/11 11:47時点)
感想(0件)

PythonでGPIOを操作する基本

ラズベリーパイでは、Pythonを使ってGPIOを簡単に操作できます。特に初心者には、gpiozeroモジュールを使う方法が分かりやすくおすすめです。

PythonでGPIOを使うには、まずプログラムの冒頭で import を行います。

① モジュール全体を読み込む場合

import gpiozero
import signal

led = gpiozero.LED(17)
button = gpiozero.Button(2)

led.on()
signal.pause()   # プログラムを終了しないで待機する

メリットは「どのモジュールのクラスか分かりやすい」こと。
デメリットは「毎回 gpiozero. を書く必要がある」こと。

② 必要なクラスだけを読み込む場合

from gpiozero import LED, Button
import signal

led = LED(17)
button = Button(2)

led.on()
signal.pause()

シンプルに LED(17) と書けるので初心者向きです。
公式ドキュメントでもこちらの書き方がよく使われています。

③ LEDを光らせるだけの最小コード

「まずはLEDを光らせてみたい!」という場合は、これだけでもOKです。

from gpiozero import LED
import time

led = LED(17)
led.on()           # LEDを点灯
time.sleep(5)      # 5秒間つけっぱなし
led.off()          # 消灯

まずはLEDを点灯させるところから始めて、慣れてきたらボタンやセンサーに挑戦してみましょう!

次回は、防犯・災害対策に!Raspberry Piで作るセンサー連動自動撮影カメラシステムです。

イケオジ流!ラズベリーパイ(Raspberry Pi)一覧はこちら

ラズベリーパイを始めるならこれ!本体・モニター・センサー類の商品リスト

(旧twitter) 今日のイケオジ 

イケオジのキング・オブ・アスリートへの道はこちら

ゲオ:[PR]ゲオあれこれレンタルはカメラや家電製品、スマホやPCなどのレンタルサービスです。ネットで注文、自宅までお届け。返却はお近くのコンビニから出すだけだから楽チン。失敗したくないものもレンタルでお試し。かんたん&スピーディーにレンタル! 買うよりも経済的! 24時間お申し込み受付・高級・人気家電多数・万一の故障も安心。

HUAWEIスマートウォッチ:[PR]HUAWEI(ファーウェイジャパン)公式サイト。2022年度スマートウォッチ市場日本国内シェア2位!進化系スマートウォッチはすべてここに集結。

スマートウォッチ:[PR]日々の運動や日常生活における活動量、睡眠などを可視化することで、自分の身体の状態がわかり、より健康な生活へ変わることができます。アスリートをサポートするハイエンドモデルから、健康管理のためのライトモデルまでラインナップ。

スマートリング:[PR]VISAのタッチ決済対応のプリペイド式のリングです。専用のアプリを使ってチャージをすることで、日々の決済時にご利用いただけます。

ガジェットの断捨離&買い替えが可能なECサイト:[PR]Tremart(トレマート)は、iPhone・iPad・Apple WatchなどのApple製品をはじめ、ゲーム機やカメラなどのガジェットを「下取り購入」という形で手軽に売却(=下取り)・購入できるECプラットフォームです。下取り品は新しい商品が届いた箱に詰めて返送するだけ。

モバイルバッテリー・イヤホン・ガジェット:[PR]モバイルバッテリーを中心としたスマートフォンアクセサリーを製造・販売。「シンプルで扱いやすく、お客様のお財布に優しい良品」をモットー に、日々改善を重ねながら、製品開発に取り組んでおります。

さあ、勇気を出してイケオジブログをシェアしよう!


コメントを残す

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

CAPTCHA


PAGE TOP