CMOSイメージセンサーでカメラを作ってみようかと

4月新年度になって、リタイア生活の身には、あまり変化が無いといいたいところだが、退職して2年が経過したので、元の会社の健康保険をはなれて、国民健康保険に入ることになった。様々なことで、もとの会社とつながりはあるのだが、大きな変化と言えるだろうか。

先日手がけた、スペクトル観測は、天気が悪いのとグレーティングがあまり良くないようであまり進んでいない。もう少しこのシステムでの限界を見極めてから、どうするか考える。

なにか新しいことを、ということで、いろいろな勉強も兼ねて、CMOSイメージセンサーでカメラを作ってみることにした。秋葉原のAitendoでCMOSのChipが格安で売り出されていることに触発された。まずは、PCに画像を取り込んで表示する、というのを目標に、写真のようにパーツを集めた。左から、CMOSイメージセンサ、制御マイコンのSTM32Discovery、USBインターフェイス

イメージ 1

このイメージセンサーChip は、MicronのMT9M001でカラー1280x1024pixelとなっている。
10BitのA/Dコンバーターを内蔵しているので、アナログ回路を作る必要が無く、基本的にはデジタルデータの転送だけと考えてよい。Aitendoから、イメージセンサーwith基板 というKitを購入した。半田付けがちょっと難しいが、道具もそろえた。

制御はマイコンはとりあえず、STM32Discoveryを使うことにする。実際に完成したカメラを使うことを考えると、LPC1114FN28 あたりが格安で実装しやすそうではあるが、IOのPIN配置が良くないのと、いろいろな機能を実験したいので、手馴れたSTM32Discoveryを使うことにした。

最後は、PCへの取り込みのUSBインターフェイスで同じく Aitendoから、半額セールとのことで、CP2013ボードを購入した。このChipは、UARTシリアルインターフェイスのほかに4BitのGPIOもあるので色々と使えそうだ。
手持ちの機器がRS-232インターフェイスやプリンタポートなどを使ったものが多く、いずれはUSBに移行しなければならないだろうと思っている。そのための技術の習得も兼ねている。

STM32Discovery のボードは、以前にスライディングルーフコントローラを作ったとき、誤ってDebug 用のST-LINK PINをIOに割り当ててしまい、開発環境からはアクセスできなくなってしまっていた。このことをBLOGに書いたら、Flash loader demonstration を使ってみたら、というコメントがあった。今回、USBのインターフェイスを入手したので、やってみた。

イメージ 2
ボードのJumperを取り外して、ST-LINKと切り離し、USBインターフェイスからでPCとSTM32のUART1を接続して、Demo プログラムを書き込んで復旧させることができた。
これで、IAR開発環境とST-LINKでの接続ができるようになり、効率が良くなる。幸先が良い。