
公式サイトの作例のchibi:bit(micor:bit)をPiカメラモジュールのシャッターとして利用する電子工作を作成してみました

必要なもの
- Piカメラモジュール
- ジャンパーワイヤー(ワニ口-ワニ口)3本(1本でもOK)
- ジャンパーワイヤー(オス-メス)1本
- chibi:bit(micro:bit)
- USBケーブル(USB-A と マイクロUSB-B) データ転送できるタイプ
必要なソフトウェア
chibi:bitをプログラミングする環境が必要です
Pythonで組みたい場合は「mu」、ビジュアルプログラミングなら「JavaScript Blocks Editor」
muのインストール方法
sudo apt-get update sudo apt-get install mu -y
JavaScript Blocks Editorはブラウザ上で実行できます
JavaScript Blocks Editor
接続方法
公式サイトの図です

この図だと、赤と黒のワニ口クリップの先はどこに繋がってるの??と思いますが、これはどこにも接続しません。それぞれを右手、左手で持てば、シャッターが切れる仕組みです。ちなみにchibi:bitの0ピン(赤)とGND(黒)のワニ口クリップはなくてもいいです。その場合は指で直接つまめばOKです
chibi:bitのプログラム
muで以下のプログラムを作成します
from microbit import *
while True:
if pin0.is_touched():
display.scroll("say cheese!")
sleep(500)
pin1.write_digital(1)
sleep(5000)
pin1.write_digital(0)
JavaScript Blocks Editorで作成した同じプログラムです

完成したら、chibi:bitにプログラムを書き込みます
Raspberry Piで動かすプログラム
Python 3(IDLE)にこのプログラムを入力します
from picamera import PiCamera
from gpiozero import Button
from time import sleep
button = Button(4, pull_up = False)
with PiCamera() as camera:
camera.start_preview()
sleep(5)
button.wait_for_press()
camera.capture('selfie.jpg`)
camera.stop_preview()
実行
動作の流れ
- Pythonのプログラムを実行します
- chibi:bitの0ピンにつないでいるワニ口クリックの端を持ちます
- 写真を撮るタイミングで、chibi:bitのGNDについないでいるワニ口クリップの端を持ちます
- chibi:bitに「say cheese!」の文字列がスクロール表示されます
- シャッターが切れて、Pythonプログラムが終了します
では実際に実行です。Pythonプログラムを実行するとカメラが起動して、モニター全体がプレビュー画面になります。ワニ口クリップを両手でつまむと、chibi:bitに「say cheese!」の文字がスクロール表示されました
・・・が、シャッターが切れません。シャッターが切れないと全画面でのプレビューが終わらないため操作ができず、やむなくRaspberry Piの電源を落としました
原因は??
どうやら、chibi:bitをモバイルバッテリーで起動していたのが原因だったようです。Raspberry Piから電源を取るようにしたら、無事シャッターが切れました。
シャッターが切れない場合は全画面プレビューにしていると操作不能になってしまうので、Pythonのプログラムを修正して、プレビュー画面を小さくするようにしました
from picamera import PiCamera
from gpiozero import Button
from time import sleep
button = Button(4, pull_up = False)
with PiCamera() as camera:
camera.resolution = (640, 480)
camera.start_preview(fullscreen=False, window = (600, 300, 640, 480))
sleep(5)
button.wait_for_press()
camera.capture('selfie.jpg')
camera.stop_preview()
このプログラムなら万が一シャッターが切れなくても、操作不能にはなりません。ちなみに撮影された写真はPythonのプログラムと同じディレクトリに保存されます

この 作品 は クリエイティブ・コモンズ 表示 – 継承 4.0 国際 ライセンスの下に提供されています。



