レンズ交換式モジュール「High Quality Camera」にシャッターボタンと通知LEDを取り付ける:名刺サイズの超小型PC「ラズパイ」で遊ぶ(第23回)(2/2 ページ)
小さなマイクロコンピュータ「Raspberry Pi」(通称ラズパイ)で作る、自分だけのガジェット。前回に引き続き、Raspberry Pi公式のカメラとして本格的な撮影が楽しめる「Raspberry Pi High Quality Camera」を紹介。今回はよりデジカメっぽい使い方を紹介します。
ボタンを押したらLEDが点灯してシャッターを切る
さて、大詰めまでやってきました。ボタンを押したらLEDが点灯して、シャッターが切れるというプログラムに取り掛かります。配線は先ほどのタクトスイッチ+LEDと同じで、プログラムの内容を少し変えます。ただし基本的にはこれまで組んできたプログラムの位置を少し変えるだけなので、どのような動作になっているのかは分かりやすいかもしれません。プログラムは以下のようになります。
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import RPi.GPIO as GPIO
import subprocess
import datetime
import time
LEDPIN = 10 # LEDは10番
BUTTON = 12 # シャッターボタンは12番
GPIO.setmode(GPIO.BOARD) # ピン番号で配線
GPIO.setup(LEDPIN, GPIO.OUT)
GPIO.setup(BUTTON, GPIO.IN)
def shoot(BUTTON):
GPIO.output(LEDPIN, GPIO.HIGH)
time.sleep(0.5)
GPIO.output(LEDPIN, GPIO.LOW)
now = datetime.datetime.now()
DATE = now.strftime('%Y%m%d_%H%M%S')
savephoto="/home/pi/Pictures/"+ DATE +".jpg"
subprocess.call(["raspistill", "-o" ,savephoto])
GPIO.add_event_detect(BUTTON, GPIO.RISING, callback = shoot, bouncetime = 100)
try:
while True:
time.sleep(1)
except KeyboardInterrupt:
print('\nStop!\n') # Ctrl+Cで中断
GPIO.cleanup()
このプログラムをこれまでと同様にnanoなどで記述し、「shoot_led.py」のようにファイル名を決めて保存しましょう。
このプログラムですが、ボタンを押したときの動作を「shoot」で定義し、「GPIO.add_event_detect」はGPIOエッジ検出コールバック関数といい、ボタンが押されたときに「shoot」の内容を実行させるものです。「bouncetime」は、連続して動作することで不安定になる「チャタリング」を防止するため、イベントを検出すると指定するミリ秒、ここでは100ミリ秒(0.1秒)は次のイベントを起こさないようにしています。
保存したら以下のように入力して実行してみましょう。
$ python shoot_led.py
ボタンを押したらシャッターが切れ、LEDが点灯したでしょうか。画像は先ほどと同様にホームディレクトリの「Pictures」に保存されています。
ここまで2回にわたりHQカメラの使い方についてご紹介してきました。ラズパイとボタンを箱のようなものに組み込んでモバイルバッテリーで動作させれば、デジカメのような使い方ができるかもしれません。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
本格的な撮影が楽しめる公式カメラモジュール「Raspberry Pi High Quality Camera」を試す
小さなマイクロコンピュータ「Raspberry Pi」(通称ラズパイ)で作る、自分だけのガジェット。Raspberry Pi公式のカメラとして本格的な撮影が楽しめる「Raspberry Pi High Quality Camera」を紹介します。
ラズパイで新型コロナウイルス解析に参加する 〜Ubuntu Serverの構築編〜
小さなマイクロコンピュータ「Raspberry Pi」(通称ラズパイ)で作る、自分だけのガジェット。今回はラズパイで。
ラズパイでスマートスピーカーを作る 「アレクサ!あしたの天気は?」 〜ソフトウェア準備編〜
小さなマイクロコンピュータ「Raspberry Pi」(通称ラズパイ)で作る、自分だけのガジェット。今回は米Amazonが開発したAIアシスタント「Alexa」をラズパイで使えるようにしてみます。
これが“らずキャン△”だ! キャンプ場で役立つ「気温・湿度・気圧センサー」の作り方
小さなマイクロコンピュータ「Raspberry Pi」(通称ラズパイ)で作る、自分だけのガジェット。まずはキャンプ場で気温、湿度、気圧を測れるデバイスを作ってみます。
ラズパイで「YouTube」と「Amazon プライムビデオ」を見る
小さなマイクロコンピュータ「Raspberry Pi」(通称ラズパイ)で作る、自分だけのガジェット。音楽や動画のメディアサーバ化するために入れたOS「OSMC」で、YouTubeやAmazon プライムビデオなどを楽しんでみましょう。
ラズパイで自宅ファイルサーバを作る
小さなマイクロコンピュータ「Raspberry Pi」(通称ラズパイ)で作る、自分だけのガジェット。ネット経由でアクセスできる自宅ファイルサーバをラズパイで構築してみます。
ラズパイで動体検知対応の監視カメラを作る
小さなマイクロコンピュータ「Raspberry Pi」(通称ラズパイ)で作る、自分だけのガジェット。ラズパイで動くソフト「motion」を使うと、カメラの前で何かが動いた瞬間に静止画や動画を撮影して記録できます。今回はラズパイで監視カメラを作ってみます。