
Raspberry Pi を利用し Python で電子工作
2021.12.20
Python で電子工作に挑戦!
最近、機械学習や Webアプリ開発など様々な場面で登場している『Python』。
今回は Python を使用して電子工作に挑戦したいと思います。
電子工作と言われても、よく分からない、興味ないと思ったそこのあなた!
例えばですが、こんな事が出来ます。
電子工作でできること
- 自宅の庭に置いて人が通ると検知する防犯ブザー
- ボタンを押すとランダムで言葉を喋るロボット
- 土の中の水分量を判断して、植木鉢の水やりを自動カ
電子工作をすることで、PC の画面を飛び出して、様々なものを作ることが出来るのです!
今回、はじめの一歩ということで、電子工作の中でも基本の「基」である、LED点灯(通称「Lチカ」)に挑戦してみます。
Raspberry Pi(ラズベリーパイ)とは
電子工作を始めるにあたり、「Raspberry Pi」を利用します。
小さなシングルボードコンピュータで、非常に低コストで使えるため、電子工作の場では定番アイテムです。
本体価格の安さはもちろん、電気代も通常のPCと比べて格段に安いです。
(使い方にもよりますが、高くても月200~300円程です)
そんな Raspberry Pi は、通称「ラズパイ」と呼ばれています。
Raspberry Pi を基盤に Python で電子工作
今回は、このラズパイを基盤として、Python を使用しながら電子工作を実施していきます。
ラズパイには何種類かモデルはありますが、機能自体は、どれもほぼ同じです。
予算等に合わせ、好きなモデルをご用意ください。
準備するもの
今回は、点灯用のLEDと併せて、以下を使用しています。
LED やブレッドボード等は、Raspberry Pi の電子工作キット等の名前で、まとめて販売しています。
【使用するもの一覧】
・Raspberry Pi (Raspberry Pi 3 Model B)※SDカードもお忘れなく
・ブレッドボード
・赤色LED
・ジャンパワイヤ(オス-オス:2本、メス-メス:2本)
・抵抗(220Ω)
・キーボード(最初のみ)
・マウス(最初のみ)
・モニタ(最初のみ)
Raspberry Pi の初期設定
では、早速動かしてみたい…
ところですが、見ての通りラズパイには、モニタやマウス等がありません。
初期設定時には、これらがないと何も出来ません。
ラズパイには、USB / HDMI 端子がついているので、繋いでいきましょう。
※一度初期設定をすれば、SSH( Secure Shell:セキュアシェル)でラズパイにログインするので、モニタ等の接続は不要になります。
OSのインストール
また、ラズパイには OS が入っておりません。
まずは、以下サイトより OS をダウンロードして、SDカードに入れていきます。
囲み枠【NOOBS】
https://www.raspberrypi.org/downloads/
2種類ありますが、「NOOBS(ヌーブス)」を選択して、ダウンロードしてください。
PC から SSH を操作可能にする
OS インストール後は、自分の PC から SSH で操作出来るようにします。
※毎回、モニタやマウスを接続するのが苦ではない方は、この設定は飛ばして頂いて構いません。
まずは、SSH を enable にしましょう。
1 | sudo raspi-config |
このあたりは、通常の Linuxサーバと同様ですね。
アドレスは、各自の環境に合わせた値で設定してください。
1 2 3 4 | interface wlan0 static ip_address=192.168.1.10/24 static routers=192.168.1.1 static domain_name_servers=192.168.1.1 |
ここまでで、SSH接続が完了出来たはずです。
ログイン確認
ラズパイに接続したモニタ、マウス、キーボードは引っこ抜いて、自前の PC からログイン確認してみましょう!
今回は、CLI( command line interface:コマンドラインインタフェース)での操作になります。
リモートから、GUI でも操作したいといった場合、VNC( Virtual Network Computing:ヴァーチャル・ネットワーク・コンピューティング)を使うことで可能になります。
この手順は、また別の機会にご紹介出来ればと思います。
LED点灯の実行
では、初期設定も終わったところで、早速 LED点灯を実施してみます。
今回は、難しいことは置いておき、とにかく LEDを点灯させるので、以下のように繋ぎます。
モジュールのインストール
まずは、モジュールをインストールします。
1 | $ sudo pip install rpi.gpio |
LED点灯用のファイル
続いて、LED点灯用に、以下のファイルを作成します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | # led.py # -*- coding: utf-8 -*- import RPi.GPIO as GPIO from time import sleep GPIO.setmode(GPIO,BCM) GPIO.setup(17,GPIO.OUT) try: while True: GPIO.output(17.GPIO.HIGH) sleep(0,5) GPIO.output(17.GPIO.LOW) sleep(0,5) except KeyboardInterrupt: pass GPIO.cleanup() |
ファイルを実行
作成出来たら、ファイルを実行すると LED が点灯します。
1 | $ python led.py |
さいごに
いかがでしたでしょうか。
ただ、LED がついただけなのですが、これを自分のプログラミングコードで制御したと思うと、ちょっと嬉しくなりますよね!
とは言え、本当に点灯させただけですので、次回以降は、もう少し発展して、電子工作を進めていきたいと思います。
こちらの記事もオススメ!
書いた人はこんな人

- 「好きなことを仕事にするエンジニア集団」の(株)ライトコードです!
ライトコードは、福岡、東京、大阪の3拠点で事業展開するIT企業です。
現在は、国内を代表する大手IT企業を取引先にもち、ITシステムの受託事業が中心。
いずれも直取引で、月間PV数1億を超えるWebサービスのシステム開発・運営、インフラの構築・運用に携わっています。
システム開発依頼・お見積もりは大歓迎!
また、WEBエンジニアとモバイルエンジニアも積極採用中です!
ご応募をお待ちしております!
ITエンタメ2022.07.06高水準言語『FORTRAN』を開発したジョン・バッカス氏
ITエンタメ2022.06.22IntelliJ IDEAとkotlinを送り出したJetBrains創業物語
ITエンタメ2022.06.15【アタリ創業者】スティーブ・ジョブズを雇った男「ノーラン・ブッシュネル」
ITエンタメ2022.06.13プログラミングに飽きてPHPを開発したラスマス・ラードフ