デジカメ製作
今回は今までとは少し違った話を書こうと思う。
正直なところ、ここでプログラミング関連の話を書くつもりはなかった。あくまで釣りとカメラと日々の雑観などを書こうと思っていた。理由はとても単純で検索エンジンのノイズとなってしまう可能性が高いためだ。
プログラミングをしていてよく検索エンジンを使うのだが出てくる情報でまともに使える情報というものがあまりに少ない。知りたい情報を書いたページに辿り着くのにとても時間がかかる。そういうわけで割とうんざりしていて自分でも技術関係の記事を書く気が失せてしまっていた。これは完全に検索エンジン側の問題だと思うので改善が望まれる。
さて、今回は「カメラ」の製作という”こじつけ”でこの記事を書こうと思う。
人間インプットが続くとアウトプットしたい要求、というものが高まるようで、今回はその限界値を超えてしまったようだ。この記事がノイズとなってしまったら申し訳ない。
カメラのベースに選んだのはこちらのイベント builderscon tokyo 2018 で uzulla さんが発表された電子名札にすることにした。
電子名札ガジェットの詳細はこちらから。
https://blog.builderscon.io/entry/general-ticket-announcement
なぜこれをベースに選んだかというと、自分でケースなどを実装するスキルがなく、とりあえず外に持ち出せるものが欲しい、という要求にマッチしたからだ。しかも撮影した画像の確認に電子ペーパーが使える。
raspi zero と 32G の SD カード、オフィシャルのケースにカメラモジュール v2 を固定する。 raspi zero は この記事を書いている時点ではスイッチサイエンスのオンラインショップから648円で購入することができる。
この raspi zero は Wi-Fi も Bluetooth も無い。そして1人につき1つまでしか購入することができないため注意が必要だ。
このオフィシャルケースは背面に GPIO のピンを出せるようになっているので raspi zero の裏面(表裏があるのかはわからないが zero WH とは逆方向)にピンが出るように半田付けをして固定する。
バニラ基盤に各モジュール用の配線のハンダ付けを行う。今回は電子ペーパー、タクトスイッチ x 2、RTC モジュールの4つを実装することにした。
タクトスイッチにはプルダウン抵抗を入れてあるのだが、実装した後に raspi の SoC にはプルアップとプルダウン抵抗が内蔵されていることに気が付いた。この抵抗を入れなかったらもう少し実装することができたなと少し反省した。
こちらは RTC モジュール。結構大きいので邪魔ではあるがこの raspi zero はネットワークに繋がらない( PC や Mac 経由ではつなぐことができる)ため RTC モジュールから得た時間を設定する必要がある。
コネクトした様子。
背面からタクトスイッチが見える。これをシャッターにする。
ソフトウェアは Python で実装する。電子ペーパーがポートレートなので picamera で撮影したランドスケープの画像を Pillow を使って左右をトリミングして画面サイズに合わせている。
ひとまず実装ができたので次回は外に持ち出して実際に撮影してみることにした。